Protocolli
Synthorai espone tre protocolli di input sullo stesso URL di base. Scegli quello che corrisponde al tuo SDK; il gateway gestisce in modo trasparente la traduzione del protocollo verso il provider upstream.
Matrice dei protocolli
| Endpoint | SDK | Ideale per |
|---|---|---|
POST /v1/chat/completions | OpenAI SDK | Universale — funziona con ogni provider. e.g. gpt-5.4-mini, qwen3.5-flash, gemini-2.5-flash, claude-sonnet-4-6 |
POST /v1/responses | OpenAI SDK (Responses) | Tool use, reasoning, output strutturato. e.g. gpt-5.4, gpt-5.4-mini, gpt-5.3-codex |
POST /v1/messages | Anthropic SDK | Workflow nativi Claude tramite canali Anthropic o Bedrock. e.g. claude-sonnet-4-6, claude-opus-4-1 |
Quale dovrei usare?
- Usi già l'SDK OpenAI? Continua a usarlo.
/v1/chat/completionsè il percorso universale e instrada verso qualsiasi provider configurato. - Usi già l'SDK Anthropic? Punta il suo
baseURLal gateway e chiama/v1/messages. Instrada verso canali Anthropic o Bedrock-Anthropic. - Ti servono tool use, reasoning o output strutturato sui modelli OpenAI? Usa
/v1/responses.
Tutti e tre i protocolli condividono la stessa chiave API, gli stessi rate limit, la stessa fatturazione e la stessa quota. L'unica differenza è la forma di richiesta/risposta — il gateway normalizza tutto internamente.
Endpoint ausiliari
Oltre ai tre protocolli chat, il gateway fa da proxy anche per questi endpoint compatibili OpenAI:
| Parametro | Tipo | Descrizione |
|---|---|---|
POST /v1/embeddings | embedding | Genera embedding vettoriali per il testo. |
POST /v1/images/generations | image | Genera immagini da un prompt testuale. |
POST /v1/audio/transcriptions | audio | Trascrive l'audio in testo (multipart/form-data). |
POST /v1/audio/speech | audio | Converte il testo in audio parlato. |
POST /v1/rerank | rerank | Esegue il rerank dei documenti rispetto a una query. |
Streaming
Ricevi i token della risposta man mano che vengono generati usando Server-Sent Events (SSE).
Abilitare lo streaming
Imposta "stream": true nel corpo della richiesta. La risposta sarà uno stream di eventi data: .
curl https://synthorai.io/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5.4-mini",
"stream": true,
"messages": [{"role": "user", "content": "Count to 5"}]
}' Formato della risposta SSE
data: {"id":"chatcmpl-...","choices":[{"delta":{"content":"1"},"index":0}]}
data: {"id":"chatcmpl-...","choices":[{"delta":{"content":","}}]}
data: {"id":"chatcmpl-...","choices":[{"delta":{"content":"2"}}]}
data: [DONE] Lo stream termina con un evento data: [DONE] . Analizza ogni riga che inizia con data: ed estrai il campo choices[0].delta.content .
Tutti questi modelli — e i loro prezzi per token — sono elencati nella pagina model price comparison.