Authorization: Bearer <inspect-token> when the environment requires an inspect token. This is a dedicated service credential, not a User API OAuth token or Compliance Service API key. The backend permits calls without this credential when no inspect token is configured.
Inspect a passage
POST /api/kyt/passages/inspect
Send JSON with Content-Type: application/json. Use the request generated for your SDK and environment configuration.
Circuit-specific fields and array lengths must match the configured backend and circuit layout. Preserve the SDK-generated request; do not copy values from another transaction. The legacy
decryptedAuditSlots field is ignored for audit validation, screening, and persisted key versions. You do not need to provide decrypted records yourself.
Read the decision
A processed request returns HTTP 201. Inspect the body’sstatus: an HTTP success response can contain a rejected screening decision.
Approved
Pass the authorisation through the transaction flow for which it was issued. Approval does not itself submit or confirm a blockchain transaction.
The registry consumes the passage once at settlement. It accepts either the inline signed authorization or a passage registered on-chain in advance. Use
expiresAtLedger from the response; the registry rejects expired authorizations and enforces its maximum lifetime.
Rejected
Stop the submission flow when the decision is rejected. Retain the decision identifier for support rather than logging proof-related request contents.
Request failures
- Invalid request data can return HTTP 400.
- Missing or incorrect inspect credentials return HTTP 401 when token authentication is enabled.
- The Transfer API preserves non-success HTTP statuses returned by its upstream screening service.
- Failure to reach that service returns HTTP 502.
Read passage metadata
The compliance backend also exposesGET /api/kyt/passages/{passageId} for indexer enrichment. A known passage returns HTTP 200 with passage_id, status, application_ids, slot_app_ids, and slot_key_vers; an unknown passage returns HTTP 404. Slot arrays preserve audit-slot order and can contain null values.
This is not a transaction-status endpoint and does not return decrypted audit records. The Transfer API proxy does not expose this GET route.
See Relayer API for submission and Disclosure policy for transaction visibility settings.