access
POST /v1/access/impersonation/redeem
Exchange a single-use impersonation ticket for a session token.
אימות
נקודת קצה זו היא ציבורית. היא אינה דורשת שורת פרטי זיהוי ואינה דורשת ארגון – זהו המידע שאתרי השיווק ומנועי התשובות מבוססי ה-AI שלנו קוראים.
נקודת קצה זו אינה דורשת מזהה ארגון. המפתח שלך כבר מזהה את הארגון שאליו הוא שייך, והתגובה מוגבלת אליו בלבד.
נסה זאת
החלף כל דבר בסוגריים זוויתיים בערכים משלך, ואת מציין מיקום המפתח במפתח מלוח הבקרה שלך.
curl -X POST https://api.zinndigital.com/v1/access/impersonation/redeem \
-H "Content-Type: application/json" \
-d '{ "ticket": <string> }'מחובר? קונסולת ה-API בלוח הבקרה שלך מזינה את מזהה הארגון האמיתי שלך ואת המפתח שלך, ומריצה את הבקשה מול ה-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