Skip to main content
POST /api/v1/route asks which model should serve a call and executes nothing. Use it when your own code runs the model: local models, your own provider accounts, or a client you cannot repoint. How routers, tiers, Smart routing and Automatic updates decide is on Model routing.

Request

  • Body: { "messages": [...] } or { "task": "summarize this doc" }, plus an optional "session_id" (up to 200 characters) and an optional "model": naming a model decides through that model’s anchored router, exactly as naming it on chat completions does. Bodies cap at 128 KB.

Response

tier values:

Session pinning

Pass your SDK session id as session_id and the session’s first decision sticks: repeat calls return the same model as tier: "pinned" for up to 24 hours, keeping a conversation consistent and prompt caches warm. Changing a router releases stale pins (a pinned model no longer in the config is re-decided).