Meet the agent.
It picks the model.
Choose a routing profile or send agent/auto. The agent weighs only models that are live and able to do what the request needs.

01
Pick a profile
Send agent/auto, or name a profile such as cheap or reasoning.
02
Filter what can answer
Context length, tools, images and JSON output are checked against every live model.
03
Rank and send
What remains is ranked by the profile; the top model gets the request.
Pick the job
Eight plain profiles.
Each profile chooses only from verified live models, and the response always names the model that answered.
Auto
Reads the request and weighs quality, price and speed for it.
Balanced
An even split between answer quality and cost per token.
Cheap
The lowest price that still meets the request's needs.
Fast
Whichever model has answered quickest over the last week.
Best
Top quality first, then price and speed as tie-breakers.
Reasoning
Only models that think step by step before answering.
Code
Models that hold up on real repositories and diffs.
Vision
Only models that accept images alongside text.
Precise when you want it
Named stays named.
Profiles stay open.
Ask for a model by its exact ID and that model answers — never a quiet substitute. A profile may fall back to another model only before any output starts, and the fallback is reported in a response header.
agent/codeverified live
- 1 · candidate rejectedno tool support
- 2 · candidate rejectedcontext too small
- 3 · selectednamed in response
OpenAI-compatible
Change one value.
Keep the endpoint and key. Set the model to a profile; routing_profile is optional.
curl https://api.networkagent.site/v1/chat/completions \
-H "Authorization: Bearer $NETWORK_AGENT_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "agent/auto",
"routing_profile": "balanced",
"messages": [{ "role": "user", "content": "Hello" }]
}'