Documentazione API

AI Gateway EU: guida all'API

Tutto quello che serve per integrare i modelli EU nel tuo software: endpoint, autenticazione, esempi pronti da incollare, errori e limiti. Formato OpenAI-compatibile.

https://ai.mspincloud.com/v1

Autenticazione

Ogni richiesta va autenticata con la tua chiave API nell'header Authorization (schema Bearer). La chiave la trovi — e la puoi rigenerare — nel pannello, nella scheda del tuo servizio AI Gateway EU. È un segreto: usala solo lato server, mai nel codice che arriva al browser.

HTTP header
Authorization: Bearer LA_TUA_CHIAVE_DAL_PANNELLO

Parti in 30 secondi

L'endpoint è OpenAI-compatibile: se usi già una libreria OpenAI, cambi base URL e chiave e sei operativo.

cURL
curl https://ai.mspincloud.com/v1/chat/completions \ -H "Authorization: Bearer $MSP_API_KEY" \ -H "Content-Type: application/json" \ -d '{"model": "msp/glm-5.2-eu", "messages": [{"role": "user", "content": "Ciao!"}]}'
Python (openai ≥ 1.0)
from openai import OpenAI client = OpenAI( base_url="https://ai.mspincloud.com/v1", api_key="LA_TUA_CHIAVE_DAL_PANNELLO", ) r = client.chat.completions.create( model="msp/glm-5.2-eu", messages=[{"role": "user", "content": "Ciao!"}], ) print(r.choices[0].message.content)
Node.js (openai ≥ 4)
import OpenAI from "openai"; const client = new OpenAI({ baseURL: "https://ai.mspincloud.com/v1", apiKey: process.env.MSP_API_KEY, }); const r = await client.chat.completions.create({ model: "msp/minimax-m3-eu", messages: [{ role: "user", content: "Ciao!" }], }); console.log(r.choices[0].message.content);

POST /v1/chat/completions

L'endpoint principale: conversazioni e generazione di testo. Stesso formato delle chat completions OpenAI, inclusi system prompt, cronologia messaggi, temperature, max_tokens e streaming (stream: true, risposta in Server-Sent Events). Il modello msp/minicpm-v-eu accetta anche immagini (content di tipo image_url).

Richiesta
{ "model": "msp/glm-5.2-eu", "messages": [ {"role": "system", "content": "Rispondi in italiano."}, {"role": "user", "content": "Presentati in una riga."} ], "max_tokens": 200, "temperature": 0.7 }
Risposta (estratto)
{ "object": "chat.completion", "model": "msp/glm-5.2-eu", "choices": [{ "message": { "role": "assistant", "content": "Sono un modello AI ospitato in Europa..." }, "finish_reason": "stop" }], "usage": {"prompt_tokens": 21, "completion_tokens": 14} }

Il campo usage riporta i token conteggiati: sono gli stessi usati per l'addebito sul credito, ai prezzi del listino nel pannello.

GET /v1/models

Restituisce i modelli disponibili per la tua chiave: è la fonte di verità per la tua integrazione (l'elenco dipende dal piano e dal catalogo, che si aggiorna nel tempo). Usalo per popolare un selettore modelli o per verificare la disponibilità prima di una chiamata.

cURL
curl https://ai.mspincloud.com/v1/models \ -H "Authorization: Bearer $MSP_API_KEY"

POST /v1/embeddings

Il gateway supporta il formato embeddings OpenAI-compatibile, ma — onestà prima di tutto — al momento non c'è ancora un modello di embedding EU a listino: le richieste falliscono finché non lo pubblichiamo. Quando arriverà lo vedrai comparire in GET /v1/models e nel listino del pannello, senza cambiare codice.

Modelli EU disponibili (17)

Catalogo letto in tempo reale dal gateway: ID da passare esattamente così nel campo model (bottone per copiarli), prezzi finali in euro (EUR) per milione di token, capability dichiarate dal gateway. L'elenco effettivo per la tua chiave è sempre quello di GET /v1/models.

Modello Fornitore Fascia Contesto Input €/1M Output €/1M Capability
DeepSeek V4 Pro (UE) ZDR
msp/deepseek-v4-pro-eu
TensorX EU
Potente €2,10 €4,20
GLM-5.2 (UE) ZDR
msp/glm-5.2-eu
TensorX EU
Potente €1,80 €5,40
Kimi K2.7 Code (UE) ZDR
msp/kimi-k2.7-code-eu
TensorX EU
Bilanciato €1,50 €5,40
Qwen 3.5 397B (UE) ZDR
msp/qwen3.5-397b-eu
Scaleway EU
Bilanciato €0,720 €4,32
MiniMax M3 (UE) ZDR
msp/minimax-m3-eu
TensorX EU
Bilanciato €0,480 €2,40
Mistral Medium 3.5 (UE) ZDR
msp/mistral-medium-eu
Scaleway EU
Economico €1,80 €9,00
DeepSeek V4 Flash (UE) ZDR
msp/deepseek-v4-flash-eu
TensorX EU
Economico €0,180 €0,360
Hermes 4 70B (UE)
msp/hermes-4-70b-eu
Nebius EU
Economico €0,156 €0,480
MiniCPM-V 4.5 (UE, vision)
msp/minicpm-v-eu
Nebius EU
Economico €0,120 €0,360
Vision
Qwen3 30B A3B (UE)
msp/qwen3-30b-eu
Nebius EU
Economico €0,120 €0,360
GPT-OSS 120B (UE) ZDR
msp/gpt-oss-120b-eu
TensorX EU
Economico €0,048 €0,240
glm-5.1-eu
msp/glm-5.1-eu
Nebius EU
da pannello da pannello
glm-5.2-eu-scaleway
msp/glm-5.2-eu-scaleway
Scaleway EU
da pannello da pannello
gpt-5.2-eu
msp/gpt-5.2-eu
OpenAI EU
272k da pannello da pannello
Vision Tools Cache Think JSON
gpt-5.6-sol-eu
msp/gpt-5.6-sol-eu
OpenAI EU
1.05M da pannello da pannello
Vision Tools Cache Think JSON
gpt-5.6-terra-eu
msp/gpt-5.6-terra-eu
OpenAI EU
1.05M da pannello da pannello
Vision Tools Cache Think JSON
gpt-oss-120b-eu-nebius
msp/gpt-oss-120b-eu-nebius
Nebius EU
da pannello da pannello

Alias di instradamento automatico (12)

Passando uno di questi ID il gateway sceglie per te il modello EU adatto al compito: il costo addebitato è quello del modello effettivamente instradato.

Prezzi finali in euro (EUR) per 1 milione di token, già comprensivi del margine di servizio e addebitati sul credito del tuo account; "da pannello" = il prezzo è pubblicato nel listino del pannello. "—" = dato non dichiarato dal gateway. Catalogo aggiornato automaticamente; per la tua chiave fa sempre fede GET /v1/models. Pagina prodotto

Gestione degli errori

Gli errori seguono il formato OpenAI (oggetto error con message, type e code). I casi da gestire:

Codice Significato Cosa fare
400 Richiesta malformata (JSON non valido, campi mancanti). Controlla il corpo della richiesta rispetto agli esempi qui sopra.
401 Chiave mancante, errata o revocata. Verifica l'header Authorization e la chiave nel pannello; se l'hai rigenerata, aggiorna il codice.
403 Modello non incluso nel tuo piano o non consentito per la tua chiave. Scegli un modello tra quelli restituiti da GET /v1/models con la tua chiave.
429 Rate limit superato oppure budget della chiave esaurito. Riprova con backoff esponenziale; se è il budget, ricarica o alza il tetto dal pannello Saldo.
5xx Errore temporaneo del gateway o del provider a monte. Riprova dopo qualche secondo; se persiste, prova un modello alternativo o apri un ticket.

Rate limit e budget

La chiave ha un budget con tetto rigido che si gestisce dal pannello (consumi in tempo reale, ricariche, cap mensile facoltativo, avvisi a soglia). Sono attivi limiti di richieste anti-abuso: per volumi importanti scrivici prima e troviamo la configurazione giusta. In beta il servizio è best-effort, senza SLA garantito.

Buone pratiche

  • Chiave solo lato server (variabile d'ambiente), mai nel frontend.
  • Gestisci 429 con retry e backoff esponenziale.
  • Imposta max_tokens per tenere i costi prevedibili.
  • Non inviare dati personali non necessari: minimizzazione GDPR.

Ti manca solo la chiave.

Attivi gratis in un minuto: paghi solo il consumo a token, dal credito unico.

Termini del servizio · listino completo nel pannello