指南
渠道与供应商路由
用 X-Felo-Channel 把模型固定到指定供应商,并理解默认路由、计费和 fallback 规则。
一个模型可以通过多个上游供应商提供。默认情况下,Felo 会为你选择供应商。当你需要指定供应商时,发送 X-Felo-Channel 请求头,附上一个或多个公开渠道代码。
支持的 endpoint
X-Felo-Channel 在所有 Model API 生成 endpoint 上可用:
| Endpoint | 协议 |
|---|---|
POST /api/v1/chat/completions | OpenAI Chat Completions |
POST /api/v1/responses | OpenAI Responses |
POST /api/v1/messages | Anthropic Messages |
POST /api/v1/images/generations | 图片生成 |
POST /api/v1/videos/generations | 视频生成 |
POST /api/v1/decisions | Decisions |
它不适用于 Data API(/v1/beta)或 Felo APIs(/v2)。
Header 取值
值为有序、逗号分隔的公开渠道代码列表:
X-Felo-Channel: claude-cc
X-Felo-Channel: claude-cc,anthropic
X-Felo-Channel: default公开 Model API 规范中的规则:
- 省略该 header 即使用默认路由。
default仅在单独使用时有效,不要与其他渠道代码组合。- 公开渠道代码来自目录中模型的
channels[].code字段。使用代码,而不是供应商显示名称。 - 只有可运行且已发布的渠道可被路由。
默认路由
当你省略 header,或单独发送 default 时,平台会选择供应商。在钱包模式下,它会按模型的有效公开渠道顺序反向扫描,跳过未发布或不可用的渠道,选择第一个可用渠道的供应商。它可能包含该供应商具有相同上游模型 ID 和服务档位的可用 endpoint。
你不需要发送 X-Felo-Channel: default;省略 header 就是使用默认路由的常规方式。
显式路由
当你发送渠道代码时,平台会按你列出的顺序校验。仅提交第一个渠道的供应商组。不会自动回退到其他供应商。
也就是说,渠道列表是选择,不是重试策略。如果你需要故障转移,请在应用里实现:第一个渠道失败后,用另一个渠道重新发送请求。
旧版供应商 header 不能覆盖 X-Felo-Channel。如果客户端里还有另一个 header 也要求指定供应商,以 X-Felo-Channel 为准。
价格
每个公开渠道公布自己的标准费率和折扣乘数。模型详情页上某个供应商显示的价格就是该渠道的客户价格。你固定的渠道决定适用哪个供应商的费率。
在高用量的工作负载中固定渠道前,请对比模型页上的供应商行,并阅读模型与价格。
查找渠道代码
- 打开模型详情页,找到供应商表格。
- 将供应商对应到它的公开渠道代码。代码是 API 使用的稳定标识。
- 如果直接读取目录,使用
channels[].code,并检查runnable。
例如,claude-haiku-5-5 公布了多个渠道,包括 anthropic(默认)、azure、google-vertex-global 和 claude-cc。claude-cc 行显示自己的折扣,因此固定它会同时改变供应商和费率。
示例
Chat Completions 固定到一个渠道:
curl https://openapi.felo.ai/api/v1/chat/completions \
-H "Authorization: Bearer $FELO_API_KEY" \
-H "Content-Type: application/json" \
-H "X-Felo-Channel: claude-cc" \
-d '{
"model": "claude-haiku-5-5",
"max_tokens": 256,
"messages": [{"role": "user", "content": "Summarize this change in one sentence."}]
}'使用同一渠道的 Anthropic Messages:
curl https://openapi.felo.ai/api/v1/messages \
-H "Authorization: Bearer $FELO_API_KEY" \
-H "Content-Type: application/json" \
-H "X-Felo-Channel: claude-cc" \
-d '{
"model": "claude-haiku-5-5",
"max_tokens": 256,
"messages": [{"role": "user", "content": "Summarize this change in one sentence."}]
}'默认路由,不发送路由 header:
curl https://openapi.felo.ai/api/v1/chat/completions \
-H "Authorization: Bearer $FELO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-haiku-5-5",
"max_tokens": 256,
"messages": [{"role": "user", "content": "Summarize this change in one sentence."}]
}'