# SERP API quick start: la tua prima ricerca in curl, Python e Node.js

> Fai la tua prima ricerca con la SERP API di SerpCrypto: ottieni una chiave, chiama un endpoint e leggi il JSON. Senza KYC, paghi in criptovalute.

- URL: https://serpcrypto.com/it/docs/
- Ultimo aggiornamento: 2026-10-22
- Editore: SerpCrypto (https://serpcrypto.com)

Un endpoint HTTPS, una chiave API, un credito per ogni ricerca andata a buon fine. Questa pagina ti porta da un account vuoto a una pagina di risultati di Google analizzata, poi rimanda al riferimento per tutto il resto.

**Risposta rapida — Come faccio la mia prima richiesta alla SERP API con SerpCrypto?**

Acquista un pack di crediti, copia la chiave API dalla tua dashboard e invia `GET https://serpcrypto.com/api/v1/search?q=your+query` con l'header `Authorization: Bearer YOUR_KEY`. **SerpCrypto** risponde con la pagina dei risultati in JSON e addebita 1 credito solo quando la ricerca va a buon fine. 10.000 ricerche costano 7,50 USD, pagati in criptovalute senza KYC, e i crediti non scadono mai.

## L'API in breve

| Attributo | Valore |
| --- | --- |
| Base URL | `https://serpcrypto.com/api/v1` |
| Ricerca | `GET https://serpcrypto.com/api/v1/search` |
| Crediti | `GET https://serpcrypto.com/api/v1/credits` (gratuita) |
| Autenticazione | Una chiave API nell'header Authorization (Bearer) o nel parametro di query api_key |
| Motori | Google Search, Google News, Google Images, Google Maps (risultati locali), Google Shopping e Bing |
| Fatturazione | 1 credito = 1 richiesta di ricerca andata a buon fine, che restituisce una pagina di risultati su qualsiasi motore supportato. Una richiesta non riuscita non viene addebitata |
| Scadenza dei crediti | I crediti di ricerca prepagati non scadono mai: le ricerche non utilizzate restano sul tuo account finché non le usi |
| Formato | JSON su HTTPS, UTF-8 |

## Come ottengo una chiave API?

Quattro passaggi. Nessun documento d'identità, nessun selfie, nessun documento e nessuna email se non la vuoi.

1. **Apri un account** — Login con numero di account; email facoltativa. Salva il numero di account in un password manager: è il tuo login.
2. **Ricarica in criptovalute** — Invia almeno 25 USD in BTC, USDT, USDC, ETH, SOL, LTC. Il saldo viene accreditato dopo le conferme di rete elencate sulla pagina di pagamento.
3. **Acquista un pack di crediti** — 10.000 ricerche per 7,50 USD bastano a testare tutti i motori. I pack più grandi abbassano la tariffa fino a 0,30 USD/1K ricerche. Vedi i prezzi.
4. **Copia la tua chiave** — La tua chiave API compare nella dashboard appena acquisti un pack di crediti dal tuo saldo in criptovalute confermato. Tienila in una variabile d'ambiente chiamata SERPCRYPTO_API_KEY, mai in un repository di codice.

## Come eseguo la mia prima ricerca con curl?

Esporta la chiave una volta, poi invia una richiesta GET. Il flag `-G` con `--data-urlencode` costruisce la query string e codifica spazi e accenti per te. La risposta è un singolo documento JSON e `jq` lo mantiene leggibile in un terminale.

L'esempio interroga Google, il motore predefinito, per risultati USA in inglese. Cambia `q`, `gl` o `hl` ed eseguilo di nuovo: ogni esecuzione riuscita usa un credito.

*curl + jq: i primi tre risultati organici*

```bash
export SERPCRYPTO_API_KEY="paste-your-key-here"

curl -sG "https://serpcrypto.com/api/v1/search" \
  -H "Authorization: Bearer $SERPCRYPTO_API_KEY" \
  --data-urlencode "q=best espresso grinder" \
  -d gl=us -d hl=en | jq '.organic_results[:3]'
```

## Come eseguo la stessa ricerca in Python?

Usa un qualsiasi client HTTP. Con `requests`, passa i parametri come dizionario e la chiave nell'header. `raise_for_status()` trasforma una risposta di errore, come `401` per una chiave sbagliata, in un'eccezione che puoi intercettare.

*Python 3.9+ con requests*

```python
import os

import requests

API_URL = "https://serpcrypto.com/api/v1/search"
API_KEY = os.environ["SERPCRYPTO_API_KEY"]

response = requests.get(
    API_URL,
    params={"q": "best espresso grinder", "gl": "us", "hl": "en"},
    headers={"Authorization": f"Bearer {API_KEY}"},
    timeout=60,
)
response.raise_for_status()
data = response.json()

print("credits used:", data["search_metadata"]["credits_used"])
for result in data.get("organic_results", [])[:3]:
    print(result["position"], result["title"], result["link"])
```

## E in Node.js?

Node.js 18 e versioni successive includono `fetch`, quindi non serve alcun pacchetto. Salva il file con l'estensione `.mjs` per usare `await` al livello superiore, poi esegui `node first-search.mjs`.

*Node.js 18+ con fetch integrato*

```javascript
// first-search.mjs (Node.js 18 or later: fetch and top-level await are built in)
const API_URL = "https://serpcrypto.com/api/v1/search";
const params = new URLSearchParams({ q: "best espresso grinder", gl: "us", hl: "en" });

const response = await fetch(`${API_URL}?${params}`, {
  headers: { Authorization: `Bearer ${process.env.SERPCRYPTO_API_KEY}` },
});
if (!response.ok) {
  throw new Error(`HTTP ${response.status}: ${await response.text()}`);
}
const data = await response.json();

console.log("credits used:", data.search_metadata.credits_used);
for (const result of (data.organic_results ?? []).slice(0, 3)) {
  console.log(result.position, result.title, result.link);
}
```

## Come faccio a controllare quanti crediti mi restano?

Chiama `GET https://serpcrypto.com/api/v1/credits` con la stessa chiave. È gratis e restituisce tre numeri: crediti rimasti, crediti usati oggi e quante ricerche può eseguire contemporaneamente il tuo account. Ogni account può eseguire un numero fisso di ricerche contemporaneamente; il limite è indicato nella tua dashboard e viene aumentato su richiesta.

*Leggi i tuoi crediti*

```bash
curl -s "https://serpcrypto.com/api/v1/credits" -H "Authorization: Bearer $SERPCRYPTO_API_KEY"
```

*Risposta (valori di esempio)*

```json
{
  "credits_remaining": 84210,
  "credits_used_today": 1290,
  "concurrency_limit": 10
}
```

## Cosa restituisce una ricerca?

Ogni risposta ha la stessa struttura su tutti i motori. `search_metadata` indica se la ricerca è andata a buon fine e quanti crediti ha usato. `search_parameters` ripete le impostazioni applicate, compresi i valori predefiniti. Poi c'è un array o un oggetto per ogni blocco della pagina dei risultati, come `organic_results` o `people_also_ask`.

Un blocco è presente solo quando la pagina lo mostra, quindi leggilo con un valore predefinito. La pagina [formato della risposta](https://serpcrypto.com/it/docs/response/) descrive ogni blocco e ogni campo.

*Struttura di una risposta Google (abbreviata, valori illustrativi)*

```json
{
  "search_metadata": { "id": "srch_7f3a9c2e41b8", "status": "success", "engine": "google", "credits_used": 1 },
  "search_parameters": { "engine": "google", "q": "best espresso grinder", "gl": "us", "hl": "en", "page": 1 },
  "search_information": { "total_results": 18600000, "query_displayed": "best espresso grinder" },
  "organic_results": [ { "position": 1, "title": "…", "link": "https://www.example.com/…", "snippet": "…" } ],
  "people_also_ask": [ { "question": "…", "snippet": "…", "link": "https://www.example.org/…" } ],
  "related_searches": [ { "query": "best espresso grinder under 300" } ],
  "pagination": { "current": 1, "next_page": 2 }
}
```

## Quali parametri userò per primi?

L'elenco completo, con valori predefiniti e valori ammessi, è nella [documentazione API](https://serpcrypto.com/it/docs/search/).

| Parametro | Esempio | Cosa fa |
| --- | --- | --- |
| `q` | `best espresso grinder` | La query, come la digiterebbe una persona. Obbligatorio. |
| `engine` | `google_news` | Quale motore e verticale cercare. Predefinito `google`. |
| `gl` | `de` | Paese dei risultati, due lettere. Predefinito `us`. |
| `hl` | `de` | Lingua dell'interfaccia. Predefinito `en`. |
| `location` | `Austin, Texas, United States` | Un luogo a livello di città per i risultati locali. |
| `device` | `mobile` | Risultati `desktop` (predefinito) o `mobile`. |
| `page` | `2` | Pagina dei risultati, da 1 a 10. Ogni pagina costa un credito. |

## Quanto costa una ricerca e quando è gratis?

1 credito = 1 richiesta di ricerca andata a buon fine, che restituisce una pagina di risultati su qualsiasi motore supportato. Una richiesta non riuscita non viene addebitata. Circa 10 risultati organici per pagina, come Google serve da quando ha smesso di rispettare num=100 a settembre 2025; ogni pagina in più costa un altro credito. Anche una richiesta rifiutata per un parametro errato, una chiave sbagliata, un saldo vuoto o un account occupato è gratis, e lo è pure ogni chiamata all'endpoint dei crediti.

I prezzi vanno da 7,50 USD per 10.000 ricerche a 0,30 USD/1K ricerche sul pack più grande, a ottobre 2026. I crediti di ricerca prepagati non scadono mai: le ricerche non utilizzate restano sul tuo account finché non le usi. La [pagina degli errori](https://serpcrypto.com/it/docs/errors/) elenca ogni codice di errore e il modo giusto per riprovare.

## Dove vado adesso?

- [Documentazione API: GET /search](https://serpcrypto.com/it/docs/search/) — ogni parametro, valore predefinito ed errore
- [Formato della risposta](https://serpcrypto.com/it/docs/response/) — ogni blocco e campo del JSON
- [Località e lingue](https://serpcrypto.com/it/docs/locations/) — gl, hl, location, device
- [Errori e retry](https://serpcrypto.com/it/docs/errors/) — codici, cause, backoff
- [Python](https://serpcrypto.com/it/docs/python/) — richieste, httpx async, esportazione CSV
- [Node.js](https://serpcrypto.com/it/docs/node/) — fetch, un pool di concorrenza, paginazione
- [curl e jq](https://serpcrypto.com/it/docs/curl/) — ricette in una riga
- [Server MCP](https://serpcrypto.com/it/docs/mcp/) — ricerca web in Claude Desktop e Cursor
- [LangChain e LlamaIndex](https://serpcrypto.com/it/docs/langchain/) — uno strumento di ricerca per gli agenti
- [OpenAI function calling](https://serpcrypto.com/it/docs/openai/) — schema dello strumento e ciclo di chiamata

## Domande della guida rapida

### Esiste un SDK ufficiale di SerpCrypto?

No. La documentazione fornisce codice da copiare e incollare per Python, Node.js e curl che chiama direttamente l'endpoint HTTPS, quindi non c'è nessun pacchetto da installare o da tenere aggiornato. Qualsiasi linguaggio con un client HTTP funziona allo stesso modo: una richiesta GET, un header, una risposta JSON.

### Posso mettere la chiave API nell'URL?

Sì. `api_key=YOUR_KEY` funziona come parametro di query, utile per un test veloce nel browser. Nel codice, preferisci l'header `Authorization: Bearer`: gli URL finiscono nei log, nella cronologia del browser e negli screenshot condivisi più spesso degli header.

### Serve il KYC o una carta di credito?

No. SerpCrypto non chiede documenti d'identità, selfie, documenti né carta. Login con numero di account; email facoltativa. Paghi in BTC, USDT, USDC, ETH, SOL, LTC a partire da una ricarica minima di 25 USD.

### Come faccio a testare prima di acquistare un pack grande?

Nessun piano gratuito: prova con il pack più piccolo, pagato dalla ricarica minima; la parte aggiunta solo per raggiungere il minimo è rimborsabile su richiesta entro 30 giorni, in USDT o USDC, se non utilizzata. Il pack più piccolo usa lo stesso endpoint e gli stessi motori di quello più grande, quindi un test con quello ti mostra come sarà la produzione.

---

SerpCrypto: SerpCrypto è un'API SERP per sviluppatori e agenti AI che restituisce i risultati di ricerca di Google e Bing in JSON, con pagamento in criptovalute e senza caricare documenti d'identità. I crediti di ricerca prepagati a partire da 0,30 USD/1K ricerche non scadono mai. Senza KYC — niente documento, niente selfie, niente documenti. Paghi in criptovalute.
