Torna al blog

Per iniziareGuida

Chiave API DeepSeek: cosa incollare dove, e una prima chiamata

Cos'è una chiave API DeepSeek, i tre valori che ogni strumento chiede (chiave, base URL, id del modello) e una prima richiesta funzionante in curl e Python.

Di CheapTokens TeamPubblicato il 5 min di lettura

Copertina: tre valori per una chiamata API DeepSeek — chiave, base URL e id del modello
In questa pagina
  1. Cos'è davvero una chiave API?
  2. Metti la chiave in una variabile d'ambiente
  3. La prima richiesta
  4. Cosa dovresti vedere
  5. Quando non funziona
  6. Dove vanno gli stessi tre valori dopo

Una chiave API DeepSeek è una stringa segreta che dice all'API chi sta inviando la richiesta. Uno strumento però non ha mai bisogno della sola chiave: gli servono tre valori insieme — la chiave, la base URL e l'id del modello. Imposta questi tre e la prima chiamata funziona.

Probabilmente hai cercato questo perché qualche modulo ti sta chiedendo "la tua chiave API DeepSeek": uno script, un plugin dell'editor, un nodo n8n. Bene. Vediamo cosa vuole ogni campo, e poi inviamo una richiesta reale.

Cos'è davvero una chiave API?#

Pensa a una key card d'albergo. Non dice a parole chi sei; apre semplicemente la tua porta e la reception addebita la tua stanza. Una chiave API fa lo stesso lavoro: il server la vede nella richiesta, sa quale account addebitare e lascia passare la chiamata. Perdi la card e chiunque può entrare e addebitare la tua stanza — per questo la chiave va tenuta fuori dal codice e fuori dalle chat. (La storia più lunga è in What is an API key and how to store it safely.)

La documentazione API di DeepSeek (verificata il 4 novembre 2026) mostra la stessa abitudine: la chiave va in una variabile d'ambiente, DEEPSEEK_API_KEY, prima di eseguire qualsiasi esempio, e l'API segue il formato OpenAI — l'SDK OpenAI funziona una volta cambiati api_key e base_url. È tutto qui il trucco, ed è per questo che una chiave non viaggia mai da sola.

Flashcard

I tre valori che ogni strumento chiede

Un dettaglio che manda in confusione: una chiave appartiene al servizio che l'ha emessa. Una chiave CheapTokens va con l'indirizzo CheapTokens, e l'id del modello è quello che CheapTokens elenca. Mescola una chiave di un posto con l'indirizzo di un altro e ottieni un errore di autorizzazione, non una risposta.

I tre valori: chiave, base URL, id del modello
I tre valori che uno strumento necesita per la prima chiamata

Metti la chiave in una variabile d'ambiente#

Crea una chiave nel tuo account CheapTokens (i passaggi sono nella documentazione) e tieni il saldo rifornito così la richiesta ha da cui attingere. Poi memorizza la chiave in una variabile invece di incollarla in un file.

macOS o Linux:

bash
export CHEAPTOKENS_API_KEY='paste-your-key-here'

Windows PowerShell (solo finestra corrente):

powershell
$env:CHEAPTOKENS_API_KEY = 'paste-your-key-here'

La parte paste-your-key-here è un segnaposto; metti la tua chiave reale lì nel tuo terminale e da nessun'altra parte. Perché questo batte una chiave scritta nel codice, e cosa fare se una trapela, è in Store an API key safely: env variable, .gitignore, leak fix.

La prima richiesta#

Diciamo che vuoi solo vederla funzionare: chiedi al modello di spiegare una chiave API in una frase. Stessa richiesta, due modi — scegli la scheda che usi.

Prima richiesta a deepseek-ai/DeepSeek-V4-Flash-0731

curl

bash
curl https://api.cheaptokens.dev/v1/chat/completions \
  -H "Authorization: Bearer $CHEAPTOKENS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek-ai/DeepSeek-V4-Flash-0731",
    "messages": [{"role": "user", "content": "Explain an API key in one sentence."}],
    "max_tokens": 200
  }'

Python

python
import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ['CHEAPTOKENS_API_KEY'],
    base_url='https://api.cheaptokens.dev/v1',
)

resp = client.chat.completions.create(
    model='deepseek-ai/DeepSeek-V4-Flash-0731',
    messages=[{'role': 'user', 'content': 'Explain an API key in one sentence.'}],
    max_tokens=200,
)

print(resp.choices[0].message.content)
print(resp.usage)

La versione Python richiede pip install openai una volta. Guarda cosa è cambiato rispetto a uno script scritto per l'SDK OpenAI: api_key, base_url e model — gli stessi tre valori. Tutto il resto resta com'era.

La richiesta Python con chiave, base URL e id del modello ciascuno etichettato con un commento
Gli stessi tre valori nell'SDK Python

Cosa dovresti vedere#

La risposta è JSON. Il testo della risposta sta in choices[0].message.content; è quello che lo script Python stampa per primo. Subito accanto c'è un blocco usage con prompt_tokens, completion_tokens e total_tokens — quanti token sono entrati, quanti sono usciti e la somma. Un costo è calcolato da questi due numeri, ed è per questo che vale la pena dargli un'occhiata anche alla prima chiamata (Input vs output tokens spiega la suddivisione).

Per avere un'idea della scala: una chiamata come questa è minuscola. Prendi 30 token in ingresso e 200 in uscita — il tetto max_tokens dell'esempio, quindi la chiamata più costosa che questa richiesta può fare. Costa $0.00002. Mille di queste appaiono così, con OpenRouter accanto per riferimento:

Modello Per richiesta 1000 richieste OpenRouter, 1000 richieste
GLM-5.3-Flash $0.0000086 $0.0086 $0.0176
DeepSeek-V4-Flash $0.00002 $0.0205 $0.0301
MiniMax-M2.7 $0.000032 $0.0315 $0.378

30 token di input e 200 token di output per richiesta. I prezzi per 1M di token sono attuali e cambiano insieme alle nostre tariffe; la colonna OpenRouter mostra i prezzi di riferimento per lo stesso carico di lavoro.

Il modello dietro quell'id è DeepSeek-V4-Flash: una finestra di contesto di 380K token e fino a 32.768 token in una singola risposta. Il prezzo è lo stesso a qualsiasi ora, senza sovrapprezzo nelle ore di punta, e un saldo copre ogni modello. In totale — input e output insieme — viene meno caro di OpenRouter, che è esattamente ciò che mostra la tabella sopra. Altro sul modello: DeepSeek on CheapTokens, prezzi attuali nella pagina dei prezzi.

Quando non funziona#

Quasi ogni fallimento alla prima chiamata è uno dei tre valori sbagliato. Abbina il sintomo al colpevole:

Abbina le coppie

Abbina ogni sintomo alla sua causa

  • 401 UnauthorizedLa chiave manca, è scritta male o appartiene a un servizio diverso
  • "model not found" (il testo dell'errore nomina il modello)L'id del modello non è quello completo: usa deepseek-ai/DeepSeek-V4-Flash-0731
  • Errore di connessione o 404 sull'indirizzo stesso (nessuna parola "model" nell'errore)Un refuso nella base URL, per esempio un /v1 mancante o un dominio diverso

La guida completa a questi errori è in API 401 or 404 error: wrong key, base URL or model id. E se non sei sicuro di quale id usare, chiedilo all'API stessa: List models with GET /v1/models.

Dove vanno gli stessi tre valori dopo#

Il punto di impararli una volta è che sono portabili. Quasi ogni strumento che parla con un'API compatibile OpenAI chiede questi stessi valori in qualche forma: la chiave, l'indirizzo e il modello. In uno script (LangChain, LiteLLM) sono argomenti; in un'app o in un nodo no-code sono campi o impostazioni. Puoi anche provarli senza scrivere codice in Postman. Per lo streaming e le risposte lunghe con questo modello, continua con la DeepSeek-V4-Flash quickstart.

Lista di controllo

Prima di considerarlo fatto