v2

latestOpenAPI 3.0.3CC BY 4.0 (data endpoints)2026-08-0518322234.1 KB
Voidly Pay

Read an escrow by id

State: open | released | refunded | expired. Plus amount_micro, reason, deadline_at and the lifecycle timestamps (opened_at, released_at, refunded_at) and open_envelope_hash. REDACTED BY DEFAULT: from_did, to_did, memo and refund_actor are omitted for callers who have not proved they are a party. Send x-voidly-proof signed by EITHER party to receive them. Every response carries view: full | redacted, and a redacted one carries a redaction object naming the omitted fields.

get/v1/pay/escrow/{id}

Path parameters

idstring required

Headers

x-voidly-proofstring

Proof of DID control. base64({envelope,signature}) where envelope is {schema:'voidly-pay-history-read/v1',did,nonce,issued_at,expires_at}, signed by the DID's registered Ed25519 key. Max window 5 minutes. Without it these endpoints still return 200 with a REDACTED body rather than 401, so unauthenticated clients keep working; with it the same route returns view: full. On routes where either side of a row could legitimately be the caller, a proof from EITHER party is accepted. Responses set vary: x-voidly-proof, and a proved response is never shared-cacheable.

Response

Escrow