{"slug":"burn-once-secret-vault-jannioura-workers-dev-20d094","title":"Store a secret (API key, webhook payload, signed URL) encrypted with WebCrypto A","host":"burn-once-secret-vault.jannioura.workers.dev","method":"POST","resource":"https://burn-once-secret-vault.jannioura.workers.dev/","category":"commerce","description":"Store a secret (API key, webhook payload, signed URL) encrypted with WebCrypto AES-256-GCM and share a claim URL that yields the secret exactly once. A Durable Object serializes reads so single-use delivery is race-free, and every burn returns an Ed25519-signed attestation. Creating a vault requires","price_listed":0.01,"price_asked":0.01,"state":"answering","state_label":"Answering","checks_7d":1,"answered_7d":1,"latency_ms_median":261,"reported_calls_30d":6,"reported_payers_30d":1,"networks":["eip155:8453"],"badge":"unverified","paid_checks_7d":0,"paid_ok_7d":0,"example_input":{"body":{"secret":"sk_live_example_api_key","ttl_seconds":3600},"bodyType":"json","method":"POST","type":"http"},"output_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"input":{"additionalProperties":false,"properties":{"body":{"properties":{"max_reads":{"default":1,"description":"How many atomic claim reads are allowed before the vault burns (1 = strictly burn-once).","maximum":100,"minimum":1,"type":"integer"},"passphrase_hint":{"description":"Optional hint shown to the recipient on claim, alongside the decrypted secret.","maxLength":256,"type":"string"},"secret":{"description":"The secret payload to encrypt at rest (UTF-8, max 10KB).","maxLength":10240,"minLength":1,"type":"string"},"ttl_seconds":{"default":3600,"description":"Time-to-live in seconds; unclaimed vaults expire (60s to 7 days).","maximum":604800,"minimum":60,"type":"integer"}},"required":["secret"],"type":"object"},"bodyType":{"enum":["json","form-data","text"],"type":"string"},"method":{"enum":["POST","PUT","PATCH"],"type":"string"},"type":{"const":"http","type":"string"}},"required":["type","method","bodyType","body"],"type":"object"},"output":{"properties":{"example":{"properties":{"burns_after":{"minimum":1,"type":"integer"},"claim_url":{"format":"uri","type":"string"},"expires_at":{"format":"date-time","type":"string"},"receipt_key":{"description":"Location of the public key for verifying burn attestations.","type":"string"},"vault_id":{"pattern":"^vlt_[0-9a-f]{8}$","type":"string"}},"required":["vault_id","claim_url","expires_at","burns_after","receipt_key"],"type":"object"},"type":{"type":"string"}},"required":["type"],"type":"object"}},"required":["input"],"type":"object"},"history":[{"day":"2026-09-24","reachable":true,"status":402,"valid_402":true,"asked_usdc":0.01,"price_match":true,"latency_ms":261,"error":null}],"description_full":"Store a secret (API key, webhook payload, signed URL) encrypted with WebCrypto AES-256-GCM and share a claim URL that yields the secret exactly once. A Durable Object serializes reads so single-use delivery is race-free, and every burn returns an Ed25519-signed attestation. Creating a vault requires x402 payment; the recipient's claim read (GET /v/:vault_id) is free.","last_updated":"2026-09-23T19:16:39.523Z","schemes":["exact"]}