{"id":"d4dc3dbf-e674-4b3b-898e-13709e334c19","created_at":"2026-08-04T22:03:26.729560+03:00","route":"/v1/research-brief","amount_atomic":"1000000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","network":"eip155:8453","payer":"0x0a7f...F0C3","pay_to":"0xb25cc5f3475eefb6142d4a7b907a758b9652c73d","facilitator":"https://api.cdp.coinbase.com/platform/v2/x402","request_sha256":"0812d00ebcc0b15bbdcbaf58ef2a8e4dd7ee53784e6452fbdc09907aae04febb","response_sha256":"a09812c78b5e3986bb5a986158ad71c075ac2e639e89ac152265a46b1ef7f0c9","response_sig":"95be643cee307b2d3fc1a56d83f43ecb97a6919bfedbc2ef0f710517c1a0943b3bcdbe29c175793969e16a8be924dffe0c86279be5da1fdc34e530a9b32e2c0f","signer_pubkey":"-----BEGIN PUBLIC KEY-----\nMCowBQYDK2VwAyEA89J5xh6OcOGMG4Y+SIpejKbmc82xQ3VEr/9K3yk1Gpk=\n-----END PUBLIC KEY-----\n","ots_b64":null,"status":"settled","verifier_mode":"facilitator","paid":true,"redacted":true,"redaction_note":"payer is truncated and the settlement tx_hash is withheld for unauthenticated callers; the ed25519 signature and content hashes below are complete and independently verifiable without them.","verify":{"response_signature":{"scheme":"ed25519 detached signature over the raw response body bytes","signature_hex":"95be643cee307b2d3fc1a56d83f43ecb97a6919bfedbc2ef0f710517c1a0943b3bcdbe29c175793969e16a8be924dffe0c86279be5da1fdc34e530a9b32e2c0f","signer_pubkey_pem":"-----BEGIN PUBLIC KEY-----\nMCowBQYDK2VwAyEA89J5xh6OcOGMG4Y+SIpejKbmc82xQ3VEr/9K3yk1Gpk=\n-----END PUBLIC KEY-----\n","response_sha256":"a09812c78b5e3986bb5a986158ad71c075ac2e639e89ac152265a46b1ef7f0c9","how":"The response body of the paid job was returned with an X-Agent-Signature header (hex ed25519 signature). Verify it against signer_pubkey_pem over the exact response bytes whose sha256 equals response_sha256. In Python: cryptography.hazmat.primitives.serialization.load_pem_public_key(pem).verify(bytes.fromhex(sig), body)."},"opentimestamps":{"ots_b64":null,"how":"If ots_b64 is present, base64-decode it to proof.ots and run `ots verify` (opentimestamps-client) to confirm the receipt existed at or before its Bitcoin-anchored timestamp. Absent = not yet notarized."},"request_sha256":"0812d00ebcc0b15bbdcbaf58ef2a8e4dd7ee53784e6452fbdc09907aae04febb"}}