Endpoints
Provider routing en fallbacks
Kies, orden en filter upstream-providers met het provider-object en val automatisch terug op andere modellen met een models-array in je verzoek.
Probeer het in de playgroundVeel modellen worden door meerdere upstream-providers geleverd, elk met een eigen prijs, snelheid en databeleid. Standaard worden requests op prijs en uptime over providers verdeeld en valt het systeem terug op een andere provider wanneer er een faalt. Gebruik het object provider om dit te wijzigen, en models om over verschillende modellen heen terug te vallen.
Het object provider
| Veld | Type | Beschrijving |
|---|---|---|
order | string[] | Providers die eerst, in volgorde, worden geprobeerd, bijv. ["Anthropic", "Amazon Bedrock"]. |
allow_fallbacks | boolean | false voorkomt dat het request naar providers buiten order of only gaat (standaard true). |
only | string[] | Sta alleen deze providers toe. |
ignore | string[] | Gebruik deze providers nooit. |
sort | string | "price", "throughput" of "latency" in plaats van load balancing. |
data_collection | string | "deny" sluit providers uit die prompts mogelijk opslaan of ervoor trainen. "allow" is de standaard. |
require_parameters | boolean | Gebruik alleen providers die elke parameter in je request ondersteunen (bijv. tools, response_format). |
quantizations | string[] | Toegestane precisies, bijv. ["fp8", "bf16"]. |
max_price | object | Bovengrenzen voor de prijs in USD per miljoen tokens, bijv. { "prompt": 1, "completion": 3 }. |
{
"model": "meta-llama/llama-3.3-70b-instruct",
"messages": [{ "role": "user", "content": "Hello" }],
"provider": {
"order": ["Groq", "Fireworks"],
"allow_fallbacks": true,
"data_collection": "deny",
"sort": "throughput"
}
}
De variant :nitro is een snelkoppeling voor sort: "throughput", en :floor voor sort: "price". Zie Model-id's.
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api14.com/api/v1",
apiKey: process.env.API14_API_KEY,
});
const result = await client.chat.completions.create({
"model": "openai/gpt-5-mini",
"messages": [
{
"role": "user",
"content": "Explain vector databases in two sentences."
}
]
});
console.log(result.choices[0].message.content);
Model-fallbacks met models
Geef een lijst van modellen mee. Als het eerste faalt (een storing, rate limit, moderatie- of contextlengtefout), wordt het volgende geprobeerd:
{
"models": ["anthropic/claude-sonnet-4.5", "openai/gpt-5-mini", "google/gemini-2.5-flash"],
"messages": [{ "role": "user", "content": "Summarize this ticket." }]
}
modelis optioneel wanneermodelsis ingesteld. Stuur je beide mee, dan wordtmodeleerst geprobeerd.- Elk model in de lijst moet de gatewaycontroles doorstaan voordat het request wordt verstuurd: het moet bestaan en ingeschakeld zijn, op de modelallowlist van je key staan en in je abonnement zijn inbegrepen. Eén model dat de controles niet doorstaat, wijst het hele request af (
403 model_not_allowed,403 plan_requiredof404 model_not_found). - Je betaalt alleen voor het model dat heeft geantwoord, tegen zijn eigen prijs. Het veld
modelin de response vertelt welk model dat was.
Response
{
"id": "gen-1760000000-route",
"model": "openai/gpt-5-mini",
"provider": "OpenAI",
"choices": [{ "index": 0, "finish_reason": "stop", "message": { "role": "assistant", "content": "..." } }],
"usage": { "prompt_tokens": 140, "completion_tokens": 60, "total_tokens": 200, "cost": 0.000155 }
}
provider toont welke upstream-provider het request heeft afgehandeld. Generatie opzoeken toont de volledige routingdetails.
Fouten
Als geen enkele provider aan je filters voldoet (bijv. only samen met require_parameters), geeft de upstream 404 "No endpoints found" terug. Overige fouten zijn dezelfde als bij Chat completions. Zie Fouten.