身份验证

API 密钥、权限范围,以及通过控制台进行管理。

API 密钥

对 AI 类别的所有请求都通过 Authorization 请求头中的 API 密钥进行身份验证:

http
Authorization: Bearer emk_live_xxxxxxxxxxxxxxxxxxxx

密钥始终归属于一个环境(例如“development”、“production”),该环境又归属于一个项目,进而归属于一个组织。前缀用于区分密钥类型:

  • emk_live_... — 生产密钥,调用会实际计费
  • emk_test_... — 测试密钥,为“production”以外的任何环境自动创建
密钥的原始值仅在创建时(POST /v1/environments/{environment_id}/api-keys)显示一次。服务器端仅保存其哈希值——如果您遗失了密钥,请撤销它并创建一个新密钥。

权限范围(Scopes)

创建时,可以将密钥限制在特定类别列表内(scopeschatimagesvisionaudiovideoembeddingstranslationagents)。没有明确设置权限范围的密钥(scopes: [],默认值)可访问所有类别——因此限制访问始终是一个明确的选择。

bash
curl -X POST https://api.ileai.io/v1/environments/{environment_id}/api-keys \
  -H "Authorization: Bearer <jeton de session>" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Cle chat uniquement",
    "scopes": ["chat"]
  }'

对密钥权限范围未授权的类别发出请求将返回 403 insufficient_scope

管理密钥

通过控制台(API 密钥)或通过 API:

bash
# Lister les cles d'un environnement
GET /v1/environments/{environment_id}/api-keys

# Revoquer une cle
DELETE /v1/api-keys/{api_key_id}

账户与团队

API 密钥身份验证用于程序化调用(SDK、直接 HTTP 调用)。控制台本身使用账户会话(邮箱/密码,httpOnly Cookie)——/v1/account/v1/auth/login/v1/orgs/{id}/invitations 等端点不接受 API 密钥,也不适用于程序化调用场景。