认证
如何在服务端集成里处理 Xenodia API key、Bearer token 和 secret boundary。
Xenodia public API 使用 Bearer token。所有 runtime 调用都应从服务端发起,不要把长期 API key 暴露给浏览器。
Header
Authorization: Bearer YOUR_LONG_TERM_KEYcURL 模板
curl "https://api.xenodia.xyz/v1/models"/v1/models 是 public endpoint,不需要 API key。Chat、image、video 和 task retrieval 需要认证。
curl -X POST "https://api.xenodia.xyz/v1/chat/completions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $XENODIA_API_KEY" \
-d '{"model":"openai/gpt-4o-mini","messages":[{"role":"user","content":"Hello"}]}'Key handling
- 只在服务端环境变量、secret manager 或受控 agent runtime 中存放长期 key。
- 浏览器只应调用你自己的 backend,不应直接持有 Xenodia key。
- 为不同 agent 或 workflow 使用不同 key,便于撤销和审计。
- 轮换 key 时,同时更新 agent runtime 的 skill/env 配置。
常见状态码
| Status | Meaning |
|---|---|
401 | 缺少或无效的 API key。 |
402 | 余额或计费边界不足。 |
403 | 当前账号无权访问资源,例如 task 属于另一个 account。 |
429 | Rate limit 或 quota boundary。 |
生产建议
把 API key、owner wallet、agent wallet 和 channel permission 当成同一个安全边界的一部分。日志里记录 request ID 和 status code,不记录 raw prompt、API key 或私钥。