AI per principiantiGuida
Cos'è una chiave API e come conservarla in sicurezza
Cos'è una chiave API AI, dove ottenerla, perché deve restare fuori dal tuo codice e da git, come fare una prima chiamata e cosa fare se la chiave viene compromessa.

In questa pagina
Ti sei iscritto a un'API AI e la prima cosa che ti chiede è una chiave. Questa guida spiega cos'è una chiave API, da dove viene, come tenerla al sicuro e cosa fare se finisce dove non dovrebbe.
Cos'è una chiave API#
Una chiave API è una lunga stringa di lettere e cifre che dice al servizio chi sta inviando una richiesta. Pensala come una password per i programmi: il tuo script invia la chiave con ogni richiesta e il servizio la usa per trovare il tuo account e addebitare il costo della richiesta sul tuo saldo.
Ne derivano due cose:
- Chiunque abbia la chiave può spendere il tuo saldo. Il servizio non riesce a distinguere te da chi ha copiato la tua chiave.
- La chiave non è il modello e non è il saldo. È solo il lasciapassare. Il saldo è una cosa separata che ricarichi, e la stessa chiave funziona con qualsiasi modello che il tuo account può usare.
Il costo di una richiesta è conteggiato in token. Se i token sono una novità per te, inizia da Cos'è un token nell'AI?.
Dove ottenere una chiave#
Ogni servizio AI emette chiavi dalla propria dashboard. Ad esempio, l'API ufficiale di DeepSeek ha una pagina delle chiavi API su platform.deepseek.com/api_keys, e la sua documentazione legge la chiave dalla variabile d'ambiente DEEPSEEK_API_KEY (verificato il 21 ottobre 2026). Il flusso generale è quasi ovunque lo stesso:
- Crea un account.
- Apri la pagina delle chiavi API nella dashboard.
- Premi il pulsante che crea una nuova chiave e dalle un nome, ad esempio
my-first-script. - Copia subito la chiave. Molti servizi la mostrano una sola volta.
Con CheapTokens, i passaggi dall'account alla chiave sono in La tua prima richiesta API con CheapTokens. CheapTokens funziona con un saldo prepagato in USD: un unico saldo per tutti i modelli. Se una richiesta fallisce perché il saldo è esaurito, vedi Errore "Not enough tokens".
Dove una chiave non deve mai stare#
La maggior parte delle fughe non sono attacchi. Sono errori di copia-incolla:
- una chiave scritta direttamente nel codice (
api_key="sk-...") e poi caricata su GitHub; - una chiave in uno screenshot, in un messaggio di chat o in una domanda su un forum;
- una chiave nel codice front-end (una pagina web o un'app mobile): chiunque può aprirlo e leggerla;
- un file
.envche è stato committato in git.
L'ultimo è il più comune. Anche se elimini il file nel commit successivo, la chiave resta nella cronologia di git, quindi una chiave che è stata committata anche una sola volta va considerata compromessa.
Conserva la chiave in una variabile d'ambiente#
Una variabile d'ambiente è un valore con un nome che vive nel tuo sistema, non nel tuo codice. Il programma la legge all'avvio, così il codice può essere condiviso in sicurezza e la chiave resta sulla tua macchina.
Su Linux o macOS, impostala per il terminale corrente:
export CHEAPTOKENS_API_KEY="YOUR_API_KEY"In Windows PowerShell:
$env:CHEAPTOKENS_API_KEY = "YOUR_API_KEY"Questo vale finché non chiudi il terminale. Per mantenerla tra le sessioni, metti la riga nel profilo della tua shell, oppure usa un file .env per il progetto e aggiungilo a .gitignore prima del primo commit:
# .gitignore
.envPoi leggi la chiave nel codice. Non digitarla mai lì:
import os
from openai import OpenAI
client = OpenAI(
base_url="https://api.cheaptokens.dev/v1",
api_key=os.environ["CHEAPTOKENS_API_KEY"], # read from the environment, not written in the code
)Se la variabile manca, os.environ[...] ferma subito il programma con un errore, il che è meglio che inviare una richiesta con una chiave vuota.
Fai una prima chiamata#
CheapTokens parla i formati OpenAI Chat Completions e Anthropic Messages, quindi gli SDK standard funzionano: cambi solo l'URL di base e la chiave. Ecco un test completo con MiniMaxAI/:
import os
from openai import OpenAI
client = OpenAI(
base_url="https://api.cheaptokens.dev/v1",
api_key=os.environ["CHEAPTOKENS_API_KEY"],
)
response = client.chat.completions.create(
model="MiniMaxAI/MiniMax-M2.7",
messages=[{"role": "user", "content": "Explain what an API key is in two sentences."}],
max_tokens=200,
)
print(response.choices[0].message.content)Lo stesso con curl, dove la shell sostituisce la variabile e la chiave non appare mai nel comando:
curl https://api.cheaptokens.dev/v1/chat/completions \
-H "Authorization: Bearer $CHEAPTOKENS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "MiniMaxAI/MiniMax-M2.7", "messages": [{"role": "user", "content": "Hello"}], "max_tokens": 100}'Un test breve come questo costa poco. Ad esempio, una richiesta con 1.000 token di input e 500 token di output costa $0.00013 al prezzo attuale. MiniMax-M2.7 ha anche una finestra di contesto di 180K e fornisce risposte fino a 8.192 token, quindi è un modello comodo per i primi esperimenti. Se la risposta si interrompe a metà frase, vedi Perché una risposta AI si interrompe a metà frase?.
Copia l'id del modello dalla documentazione di CheapTokens e non da un altro servizio: i nomi dei modelli variano tra i provider.
Abitudini che tengono al sicuro una chiave#
- Una chiave per progetto. Se una viene compromessa, ne sostituisci solo quella e nient'altro smette di funzionare.
- Dai alle chiavi nomi che dicano dove sono usate (
laptop-script,telegram-bot), così sai cosa aggiornare dopo una sostituzione. - Mantieni il saldo basso mentre impari. Con un saldo prepagato, il danno di una chiave compromessa è limitato a ciò che c'è sopra, ma sono comunque soldi tuoi.
- Non incollare le chiavi nelle chat con persone o assistenti AI, e rimuovile da log e screenshot.
- Non mettere la chiave in un browser o in un'app mobile. Chiama l'API da un server che controlli e lascia che l'app parli con quel server.
Cosa fare se una chiave è stata compromessa#
Se hai caricato una chiave su un repository pubblico, l'hai inviata in un messaggio o semplicemente non ne sei sicuro, agisci come se fosse già nelle mani di qualcun altro:
- Revoca prima la chiave. Apri la pagina in cui l'hai creata ed eliminala o disattivala. Fallo prima di ogni altra cosa; la pulizia viene dopo.
- Crea una nuova chiave con un nuovo nome.
- Sostituiscila ovunque fosse usata: variabili d'ambiente, file
.env, server, app e strumenti. - Controlla saldo e utilizzo. Richieste che non hai fatto sono un segno che la vecchia chiave è stata usata.
- Pulisci il codice sorgente. Rimuovi la chiave dal codice e aggiungi
.enva.gitignore. Eliminare il file non rimuove la chiave dalla cronologia di git, ed è per questo che il passo 1 conta più della riscrittura della cronologia.
L'ordine è importante. Una chiave revocata è innocua anche se resta in un vecchio commit.
Prossimi passi#
- Fai la tua prima richiesta con una chiave: La tua prima richiesta API con CheapTokens.
- Capisci per cosa paghi: Cos'è un token nell'AI?.
- Ricarica il saldo quando si esaurisce: Errore "Not enough tokens".
Pronto a provare? Ottieni una chiave CheapTokens, impostala come CHEAPTOKENS_ ed esegui l'esempio qui sopra.
Endpoint, id dei modelli e limiti di ogni modello sono nella documentazione di CheapTokens.



