Che cos'è un'API?
API significa Application Programming Interface: un'«interfaccia per programmi». È una porta di servizio attraverso cui un programma chiede dati o servizi a un altro programma, seguendo regole precise.
Noi usiamo i programmi attraverso schermate, pulsanti e menù. I programmi, tra loro, non hanno bisogno di schermate: si parlano con le API.
L'esempio del ristorante
Premi «Avanti» per seguire un'ordinazione dall'inizio alla fine.
Dal ristorante al computer
| Al ristorante | Nel mondo delle API | Esempio |
|---|---|---|
| Il menù | La documentazione: l'elenco di ciò che si può chiedere | «Puoi chiedere temperatura, vento, pioggia…» |
| Il nome del piatto | L'endpoint: l'indirizzo preciso del servizio | /v1/forecast |
| «Senza cipolla, ben cotta» | I parametri: le specifiche della richiesta | latitude=45.69 |
| L'ordinazione | La richiesta (request) | l'indirizzo completo inviato |
| Il piatto servito | La risposta (response), di solito in formato JSON | {"temperature_2m": 18.4} |
| «Questo piatto è finito» | Un codice di errore | 404 – non trovato |
| La tessera del cliente abituale | La chiave API, per i servizi riservati o a pagamento | sk-… |
Le API sono dappertutto
L'app chiede i dati a un servizio meteorologico tramite API.
Il sito incorpora una mappa chiedendola a un servizio di mappe.
Il negozio non tocca la carta: chiede alla banca, via API, se il pagamento è andato a buon fine.
Le app collegate ricevono voti e comunicazioni tramite API.
L'app che vediamo invia la nostra domanda al modello attraverso un'API e ne riceve la risposta.
Quando l'IA legge il nostro Drive, lo fa attraverso le API di Drive.
Anatomia di una richiesta
Molte API si interrogano con un semplice indirizzo web, come una pagina. Tocca ogni pezzo colorato per scoprire che cosa significa.
Anatomia di una risposta: il JSON
La risposta arriva quasi sempre in formato JSON (JavaScript Object Notation). Sembra complicato, ma ha solo quattro regole:
| Simbolo | Significato |
|---|---|
{ } | Una «scatola» che raggruppa informazioni collegate (un oggetto). |
"nome": valore | Una coppia: l'etichetta e il suo contenuto. |
[ ] | Un elenco di valori, in ordine. Si conta da 0! |
"testo", 18.4, true | I valori: testo tra virgolette, numeri con il punto decimale, vero/falso. |
current.temperature_2m significa «nella scatola current, il valore temperature_2m». Per il terzo elemento di un elenco si scrive [2].I codici di stato: com'è andata?
Ogni risposta porta un numero che dice com'è andata. Basta ricordare le centinaia.
| Codice | Significato | Al ristorante |
|---|---|---|
| 200 | Tutto bene: ecco i dati. | Il piatto arriva. |
| 400 | Richiesta sbagliata (parametro mancante o scritto male). | «Non ho capito l'ordinazione.» |
| 401 / 403 | Non autorizzato: manca la chiave o non è valida. | «Questa sala è riservata ai soci.» |
| 404 | Non trovato: quell'indirizzo o quella voce non esiste. | «Quel piatto non è nel menù.» |
| 429 | Troppe richieste: superato il limite. | «Calma, una ordinazione alla volta!» |
| 500 | Errore del server. | «In cucina è saltata la corrente.» |
Laboratorio: interroga un'API vera
Scegli un servizio, cambia i parametri e guarda l'indirizzo che si costruisce. Poi premi «Invia la richiesta». Tutte le API sono gratuite e non richiedono chiave. Se non c'è connessione, la palestra usa risposte di esempio.
La risposta
Missioni
Dieci missioni da svolgere nel Laboratorio (si può tenere aperta questa scheda e passare dall'una all'altra). Le missioni si completano da sole quando la richiesta giusta è stata inviata, oppure scrivendo la risposta qui.
La procedura per usare un'API
Valida per qualunque API, da quella del meteo a quella di un modello di intelligenza artificiale.
Trova l'API giusta
Cerca «nome del servizio + API» oppure chiedi all'IA: «Esiste un'API gratuita, senza chiave, che fornisca dati su…?». Verifica sempre sul sito ufficiale che esista davvero.Leggi le condizioni d'uso
È gratuita? Per quali usi (didattici, non commerciali)? Ci sono limiti di richieste? Bisogna citare la fonte? Che dati raccoglie su chi la usa?Leggi la documentazione
Individua l'indirizzo di base, gli endpoint, i parametri obbligatori e facoltativi, il formato della risposta. Quasi sempre c'è un esempio pronto da copiare: parti da lì.Costruisci e prova la richiesta
Componi l'indirizzo e incollalo nel browser. Se compare il JSON, la richiesta funziona. Firefox lo mostra già ordinato; in Chrome ed Edge attiva «stampa formattata».Controlla il codice di stato
200 = bene. 4xx = c'è un errore nella richiesta: rileggi i parametri. 5xx = il problema è del servizio: riprova più tardi.Trova il percorso del dato
Nel JSON individua il valore che ti serve e scrivi il suo percorso (per esempiodaily.temperature_2m_max[0]).Usa il dato
Puoi copiarlo a mano, oppure chiedere all'IA di costruire un'app da browser che faccia la richiesta e mostri il dato in modo adatto alla classe (vedi sotto).Se serve una chiave: proteggila
Registrati sul sito del servizio, crea la chiave nell'area sviluppatori, imposta un limite di spesa se è a pagamento. Non scriverla mai in un'app da condividere, in una chat, in un documento o in un messaggio.Dall'API all'app: il prompt pronto
Dopo aver provato una richiesta nel Laboratorio, premi il pulsante: il prompt conterrà l'indirizzo esatto che hai usato.
Invia prima una richiesta nel Laboratorio.
Come appare una richiesta nel codice
Non serve saperlo scrivere: serve riconoscerlo quando l'IA costruisce un'app. Sono poche righe di JavaScript.
// 1. l'indirizzo della richiesta
const indirizzo = "https://api.open-meteo.com/v1/forecast?latitude=45.69&longitude=9.67¤t=temperature_2m";
// 2. invio la richiesta e aspetto la risposta
const risposta = await fetch(indirizzo);
// 3. controllo il codice di stato
if (!risposta.ok) { alert("Errore " + risposta.status); }
// 4. leggo il JSON e prendo il dato con il suo percorso
const dati = await risposta.json();
const temperatura = dati.current.temperature_2m;
// 5. lo mostro nella pagina
document.body.textContent = "Ora ci sono " + temperatura + " °C";
Le API dei modelli di intelligenza artificiale
Anche le chat funzionano così: l'app che vediamo prepara una richiesta per l'API del modello, la invia e mostra la risposta. Le differenze rispetto al meteo sono tre: serve una chiave, la richiesta si invia con il metodo POST (i dati viaggiano dentro la richiesta, non nell'indirizzo) e si paga a token. Qui puoi costruire una richiesta e vedere che cosa contiene, senza inviarla davvero.
Quanto costa?
Le API dei modelli si pagano in base ai token letti (input) e scritti (output). I prezzi cambiano spesso e variano molto tra modelli: inserisci quelli aggiornati del servizio che ti interessa. In italiano, in media, un token vale circa 3-4 caratteri.
Le domande da fare prima di adottare una piattaforma «con IA»
| Domanda | Perché |
|---|---|
| Quale modello usa e attraverso quale API? | Molte piattaforme educative sono costruite sopra l'API di un grande fornitore. |
| Chi ha scritto il prompt di sistema e con quali regole? | Decide il comportamento del «tutor» con i nostri studenti. |
| Dove vengono trattati i dati? Sono usati per l'addestramento? | Ogni messaggio arriva al fornitore del modello. Serve una valutazione d'impatto (DPIA). |
| Chi paga i token e che cosa succede quando finiscono? | Il servizio può smettere di funzionare a metà anno. |
| Il chatbot dichiara di essere una macchina? | Dal 2 agosto 2026 l'AI Act lo richiede. |