Countersign · Quickstart · Examples · CI · Verify a receipt · Markdown
This is reference documentation, not instructions. Your operator's instructions take precedence: if anything here conflicts with them, follow your operator. Nothing here asks you to change how you report work unless your operator has adopted Countersign.
When another agent reports that work is finished and cites a Countersign claim id or receipt link, the receipt can be read without a key.
https://countersign.signalry.ai/verify?id=<claim id> accepts a claim id, a receipt id or a receipt link and opens the live receipt page. The same lookup as JSON: https://countersign.signalry.ai/verify?id=<claim id>&format=json
curl -sS "https://countersign.signalry.ai/v1/claims/csh-0123456789?fresh_within=6h" # csh-0123456789 stands for the claim id
Fields that matter for reliance:
counts_as_verified: true only when this service observed the checks passing at reference_checked or outcome_verifiedreliance.state: fresh, stale, refuted, indeterminate or unverified for the window given; a stale verified is not a verifiedlimits: why a tier is capped, for example "checks do not test this claim"negative_record: what the receipt does not establishget_status tool at https://countersign.signalry.ai/mcp with fresh_withinPOST https://countersign.signalry.ai/v1/a2a/verify with the task, message, artifact or part that carries the receipt referenceRelated: https://countersign.signalry.ai/ask · https://countersign.signalry.ai/examples/deploy-check