API reference Embed
Approve the embedded request with a signed mandate
POST/v1/embed/mandates
As POST /v1/mandates with connection, for the embedded request and the session's user. The mandate's embed.top_origin must be the platform's origin, still registered, and the assertion must be made in this frame under it.
Headers
Content-Typeapplication/jsonRequiredkeelson-embedstringIdempotency-KeystringRequired- 1 to 255 characters. A retry with the same key returns the first answer.
Request body
application/json
payloadSdobjectRequired- The SD-JWT payload with its
_sddigests, as signed. disclosuresarray of stringRequired- Every disclosure of the payload; each digest must resolve.
commitmentstringRequiredC_m; must equal the payload'szk.commitment.saltstring- The salt that opens
C_m; the TEE needs it to issue the mandate. assertionobjectRequired- A WebAuthn or Secure Payment Confirmation assertion, base64url fields.
askAboveMinorinteger
Responses
- 201The mandate; the request is approved
- 401No live embed session, no user, or a bad signature
- 403The passkey is not the user's, or the origin is no longer registered
- 404The request is no longer open
- 409The request was already answered
- 422The mandate is invalid
- 429Too many approvals
- 503Leg A cannot issue the mandate now
201 response
idstringRequiredmandateHashstringRequiredstatestringRequiredACTIVEat once when the mandate allows several merchants: each cart is then held on its own.One ofSIGNEDACTIVEopenMandatestringRequired- The open mandate (L2) the TEE issued; the agent closes it per purchase.