Skip to content

Channel Overview ​

What is a channel ​

A channel is one upstream-provider endpoint. Examples:

  • For OpenAI you may have an official channel, an Azure self-hosted channel, a third-party proxy channel.
  • For DeepSeek you may have an official channel and a reseller channel.

Each channel independently stores credentials, base URL, allowed models, and routing weight. When a request comes in, the router picks one channel to forward to.

Why have multiple channels ​

  • Redundancy — one channel fails (out of credit / rate limited / down), traffic auto-routes elsewhere.
  • Cost — cheaper channels first, expensive ones as fallback.
  • Region / compliance — different regions / vendors.
  • Multiple accounts on one Provider — spread quota, reduce risk.

Channel states ​

StateSet byMeaning
EnabledAdminRoutable.
Manually disabledAdminAdmin clicked disable — router skips.
Auto disabledSystemToo many errors / out of credit / timed out — router skips; admin must re-enable.

Auto-disabled is a temporary breaker, not a permanent shutdown. Re-enable it from Admin → Channels or run Channel Test — passing auto-clears the flag.

What lives in a channel ​

The full list lives on Add a Channel. In short:

  • Required: provider type, base URL, API key, allowed models
  • Common: weight / priority, concurrency cap
  • Rare: custom headers, response JSONPath

Field-by-field explanation on Add a Channel.

Which providers are supported ​

Full list on Provider List. Any OpenAI-compatible proxy works as the openai type: set base_url + models, then use model_mapping to fix model names.

Next ​