Chat Completions
The most common RouteMarket API request shape and its RouteMarket-specific extensions.
POST /v1/chat/completions is the main RouteMarket entrypoint for OpenAI-compatible chat requests.
Endpoint
POST https://api.routemarket.ai/v1/chat/completionsMinimal request
curl https://api.routemarket.ai/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $ROUTELAB_API_KEY" \
-d '{
"model": "gpt-5.4",
"messages": [
{ "role": "user", "content": "Say hello from RouteMarket." }
]
}'OpenAI-compatible SDK example
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.ROUTELAB_API_KEY,
baseURL: "https://api.routemarket.ai/v1"
});
const completion = await client.chat.completions.create({
model: "gpt-5.4",
messages: [{ role: "user", content: "Explain RouteMarket in one sentence." }]
});
console.log(completion.choices[0]?.message?.content);RouteMarket extensions
RouteMarket supports extra request fields beyond the basic OpenAI-compatible payload.
provider
Restrict routing to a specific provider.
{
"model": "gpt-5.4",
"provider": "openai"
}route
Target a specific route.
{
"model": "gpt-5.4",
"route": "route_openai_primary"
}routing_preference
Give RouteMarket a routing priority such as:
lowest_pricehighest_reliabilitylowest_latencyofficial_only
{
"model": "gpt-5.4",
"routing_preference": "highest_reliability"
}source_policy
Attach finer-grained constraints to source selection.
{
"model": "gpt-5.4",
"source_policy": {
"exclude_risk_levels": ["high"]
}
}What RouteMarket may return in addition to text
RouteMarket aims to keep usage and source selection visible. A successful response may include:
usageproviderroutepricing
Example response shape:
{
"model": "gpt-5.4",
"provider": "openai",
"route": "route_openai_primary",
"usage": {
"prompt_tokens": 120,
"completion_tokens": 300,
"total_tokens": 420
},
"pricing": {
"currency": "USD",
"cost_amount": "0.00120000",
"sale_amount": "0.00150000"
}
}Next step
If you want to understand how the platform chooses a route behind this endpoint, read Routing.