授权接口
授权接口都通过 Command WS 调用。auth.create_session 匿名可调用,其余方法需要当前连接已有有效 session。
方法
| 方法 | 参数 | 响应 data | 说明 |
|---|---|---|---|
auth.create_session | token: string 必填 | session_token: string,expires_in: number,auth_context: AuthContext | 用 API Key 创建连接绑定会话。 |
auth.get_context | 无 | session_token: string,auth_context: AuthContext | 读取当前连接授权上下文。 |
auth.refresh_session | 无 | session_token,expires_in,auth_context | 刷新当前连接 session。 |
auth.activate_offline | auth_code: string 必填 | session_token,expires_in,auth_context | 用离线设备授权码激活当前机器和会话。 |
auth.destroy_session | 无 | destroyed: boolean | 销毁 session,并清理当前连接下的 stream 和已打开设备。 |
AuthContext
| 字段 | 类型 | 说明 |
|---|---|---|
is_valid | boolean | 授权是否有效。 |
account_type | string | vip、svip、svip_plus、custom、trial、unknown。 |
account_type_code | number | 账号类型数值。 |
auth_scene | string | 授权场景。 |
license_mode | string | online_api_key 或 offline_api_key。 |
entitlement_state | string | 权益状态。 |
machine_code | string | 当前机器码;离线激活时使用。 |
device_scope[] | array | { vid: number, pid: number }。 |
expires_at | number | 到期时间戳,0 表示未设置。 |
capabilities[] | string[] | 当前会话可调用方法。 |
quota_buckets[] | array | 配额桶,包含 bucket、methods、limit、remaining、enforcement。 |
调用受额度限制的方法前,客户端应以服务端返回的 quota_buckets[].limit 和 quota_buckets[].remaining 为准,不应在客户端预设固定额度。
示例
json
{
"request_id": "req-auth-001",
"method": "auth.create_session",
"params": {
"token": "sk-sq-v1-..."
}
}