access
POST /v1/access/impersonation/redeem
Exchange a single-use impersonation ticket for a session token.
身份验证
此端点是公开的。它不需要任何凭据或组织——这是我们自己的营销网站和 AI 问答引擎所读取的内容。
此端点不需要组织 ID。您的密钥已用于识别其所属的组织,且响应范围也仅限于该组织。
免费试用
将尖括号中的内容替换为您自己的值,并将键占位符替换为您仪表板中的一个键。
curl -X POST https://api.zinndigital.com/v1/access/impersonation/redeem \
-H "Content-Type: application/json" \
-d '{ "ticket": <string> }'已登录?您仪表板中的 API 控制台会自动填入您真实的组织 ID 和您自己的密钥,并针对实时 API 运行请求,以便您查看实际的响应。 在 API 控制台中打开此端点
详细信息
Called by the customer dashboard when a staff member follows an `ImpersonationGrant.url`. **Unauthenticated by design** — the caller is the app at the instant it has no session, which is the whole point. Authorisation is the ticket: single-use, five minutes, 32 bytes of entropy, stored only as a SHA-256 digest, and bound to a grant a staff member is on the audit log for opening. Every refusal returns the same 401 message. Distinguishing "no such ticket" from "already redeemed" from "expired" would tell a caller which of their guesses was once real.
请求正文
| 名称 | 类型 | 必填 | 内容简介 |
|---|---|---|---|
ticket | string | 是 | — |
响应
| 名称 | 类型 | 必填 | 内容简介 |
|---|---|---|---|
token | string | 是 | The customer session bearer token (carries the staff `act` claim). |
expires_at | string | 是 | — |
session_id | string | 是 | — |
org_id | string | 是 | The single org this grant is good for. |
org_name | string | 是 | — |
actor | string | 是 | The real staff actor (`user:<id>`), for the banner. |
此端点可能返回的错误
401 · 422 · 429 · 503