Mint an immutable, shareable receipt of a decision
Runs the live decision read for one wallet (or username) and use case, and stores the resulting verdict as an immutable receipt. Every stored field comes from the decision handler at creation time; nothing in a receipt is client-supplied except which wallet and use case to check, so receipts cannot disagree with what the decision endpoint said. A failed decision never produces a receipt.
Receipts dedupe per UTC day: minting the identical decision state
twice on the same day returns the existing receipt with deduped: true
(HTTP 200) instead of creating a new one (HTTP 201). The receipt payload
is the decision data without the volatile coverage block, plus id,
createdAt and a canonical payloadHash.
Costs: the standard guard unit plus one inner decision read and a separate creation budget of 5 receipts per minute.
Authorization
bearerApiKey Optional Kyro API key: Authorization: Bearer kyro_live_.... Anonymous
access (no header) works on every endpoint with a lower rate limit
(20 units/minute per IP vs 120 units/minute per key). Keys are validated
only when the header is present; a malformed, unknown or revoked key is
rejected with 401 INVALID_KEY.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Provide exactly one of wallet or username, plus an optional use case.
Provide exactly one of wallet or username, plus an optional use case.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/api/v1/decision-receipts" \ -H "Content-Type: application/json" \ -d '{ "wallet": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045", "useCase": "payment" }'{ "ok": true, "version": "v1", "data": { "receipt": { "id": "string", "createdAt": "2019-08-24T14:15:22Z", "payloadHash": "string", "wallet": "string", "username": "string", "useCase": "payment", "decision": "allow", "riskLevel": "string", "recommendedLimit": { "amountUsdc": 0, "currency": "string", "basis": "string" }, "reasons": [ { "code": "string", "message": "string" } ], "warnings": [ { "code": "string", "message": "string" } ], "score": 0, "evidence": { "used": [ "string" ], "missing": [ "string" ] }, "freshness": { "cacheStatus": "string", "lastIndexedAt": "2019-08-24T14:15:22Z", "refreshInProgress": true, "refreshRecommended": true }, "scoreModelVersion": "string", "decisionModelVersion": "string" }, "url": "string", "deduped": true }}