zergrouter.com / zrouter.io

One routing plane for every agent call.

ZergRouter separates model routing from the main ZergAI app: provider credentials, quotas, usage logs, and compatibility endpoints live in a focused service that Zerg, ZTC, and ZDE can share.

Route preview
OpenAI-compatible request
registry.fly.io/zergrouter:deployment-01KSVF7AMEKVNZ5HGT9V958WM7
curl https://zrouter.io/v1/chat/completions \
  -H "Authorization: Bearer $ZERGROUTER_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "provider": "openai",
    "model": "gpt-5.4-mini",
    "messages": [
      { "role": "user", "content": "ship it" }
    ]
  }'
JWT
short-lived auth
AES
secret storage
SSE
stream passthrough

surface area

Small API, strict ownership.

The public router contract is intentionally narrow. ZergAI handles accounts; ZergRouter handles model traffic and provider operational state.

POSTAnthropic Messages
/v1/messages
POSTOpenAI Chat
/v1/chat/completions
POSTOpenAI Responses
/v1/responses
POSTEmbeddings
/v1/embeddings
GETModel Catalog
/v1/models
POSTZerg legacy chat
/llm/chat

Account auth stays in ZergAI

ZergAI remains the identity authority and mints short-lived router JWTs for workspaces and zerg service tokens.

Secrets live with the router

Workspace provider credentials are encrypted in ZergRouter, with platform environment keys as controlled fallback.

Provider APIs stay compatible

Use OpenAI-compatible, Anthropic-compatible, and legacy Zerg LLM endpoints without changing client ergonomics.

Usage is first-class

Every non-streaming route records model, provider, workspace, source, and token counts for quota and admin visibility.