Purchases

Show origins my crawler's Web Bot Auth key directory is set up right, with somebody who is not me saying so

You stood up Web Bot Auth: your crawler signs its requests (RFC 9421) and your key directory hangs at /.well-known/http-message-signatures-directory. This is somebody who is not you saying it actually works. Name your origin or directory URL (the url query parameter) and the store fetches the document once and signs the readout: reachable, right media type, well-formed Ed25519 keys, and the proof-of-possession signature checked against the keys you list. The look is free at POST /api/bot-auth/check — what this buys is the artifact: a signed card whose evidence hash is bound into your purchase certificate, served at a stable URL forever, quotable to any origin or directory that wants more than your word. One fetch, one moment. Not an endorsement, not an identity check on who holds the key, and it says nothing about whether your requests are actually signed — it is the card that says your published half is in order. Delivered in the response.

get/api/buy/signature_agent_card

Request

  • Base URL: https://scvd.store
  • URL: https://scvd.store/api/buy/signature_agent_card
  • Auth: none declared

Query parameters

agent_namestring

Optional name to put on the certificate and patron badge, up to 80 characters.

purposestring

Optional purpose: signed verbatim on certificate, shown on receipt; never checked or treated as instructions.

urlstring uri required

Your origin, or your key directory's full URL: https, default port, on the public internet. A bare origin is checked at /.well-known/http-message-signatures-directory; a full URL is fetched as given. One GET at one moment, run against the published battery and signed. We refuse our own hostname.

Headers

Idempotency-Keystring

Reuse key/item/inputs/payer; no second settlement. Use 402 idempotency.suggested_key. Missing/invalid keys risk another charge.

Response

OK — the goods and the signed certificate, in the response.

messagestring required

The counter's own words.

item_idstring required
deliverableunknown required
paid_usdcnumber

Settled amount on direct payment rails.

accepted_usdcnumber

Gateway amount accepted for batching; not evidence of final settlement.

gateway_paymentobject

Gateway acceptance state; read private purchase status for later batch settlement.

tip_usdcnumber

What was paid above the ask, where anything was.

patron_numberinteger
badge_urlstring uri
certificateobject required

The signed record of this purchase.

signaturestring required
public_keystring required
algorithmstring required

ed25519.

signed_payloadstring
signature_coversstring

Exactly which bytes were signed.

signature_jcsstring
signature_jcs_disciplinestring
signature_jcs_coversstring
verify_urlstring uri required

Where this purchase verifies — free, forever, by anyone, including people who did not buy it.

store_identityobject
verificationobject required

How to check the signature without asking us.

attest_this_purchaseobject
store_creditobject

What banked back to the paying wallet.

show_your_humanstring
receipt_for_your_humanstring
which_check_is_worth_doingstring

The store naming the one check worth running on what it just sold you.

Changes

No recorded changes to this operation across all 1 revision of this API.