What a workflow_seal receipt records
A workflow_seal receipt is one AER-1 record (receipt schema version 0.4, hosted profile zambo-hosted-receipt/1) for one call. Read from a real workflow_seal payload, it records:
- Receipt id: a full UUID. The id is the address of the record: the human page is https://zambo.dev/run/ followed by the id.
- Tool: name
workflow_seal, version4.0.0, scopepass_required. - Timestamps: the record creation time, and inside the step list a started_at and a completed_at for the call itself.
- Step status: one step per call, with the tool name and its status. On the first example below the step status is
success. - The saved output: the exact output object the call returned, kept as canonical bytes. The saved output carries workflow_id, workflow_url, status, next and payment_paths. This tool runs at pass_required scope, and its receipts file the call and its status whatever that status is, including a record whose API verification status reads not_verified. A receipt files what happened; it does not tidy the result.
- Output digest: output_hash, the SHA-256 digest of those canonical bytes, with the canonical byte length recorded too (823 bytes on the first example below).
- Caller and provenance: a caller type (
sessionon the first example) and a provenance class ofEXECUTED BY ZAMBO, which states how the record was produced. - Declared side effects: the record declares its side effects,
state_writeon the first example. - Verification status: the API carries a verification_status field for the record. On the first example below, the API reported verification_status
not_verifiedfor a pass_required record, and that status is part of the record: the receipt files the call and its outcome, whatever the outcome is.
Live workflow_seal receipt examples
Each example below is a real workflow_seal receipt. Open one and you see the saved result, when it was saved, and its digest, the same fields described above.
zambo.dev/run/27c92e26-55d5-437e-9176-cc78da91fdd6
Saved: 2026-10-24T18:08:44.832Z
Output SHA-256 digest: sha256:c43c8ff0e5f19043fb7eabb235c67fc20b2fdb4a779d5234ee76ac06429be78d
Checked live on 2026-10-24: this URL returned HTTP 200 with this receipt on the page.
zambo.dev/run/1e7b98c2-f089-4b0f-add2-fa9f3018dfb4
Saved: 2026-10-24T17:09:33.975Z
Output SHA-256 digest: sha256:827a88e04b4eecb0f8e7d5c8b66e11d0e47464656264bc1b02d66d637ae8a297
Checked live on 2026-10-24: this URL returned HTTP 200 with this receipt on the page.
zambo.dev/run/9f954b45-c727-4f12-815a-12fdca53c908
Saved: 2026-10-24T16:09:52.273Z
Output SHA-256 digest: sha256:5fcb10346aef4b6af068cb6a466296bc67bbfbcdd95476a539b246edb896656a
Checked live on 2026-10-24: this URL returned HTTP 200 with this receipt on the page.
How to verify a workflow_seal receipt
- Open zambo.dev/verify/ and paste the receipt link or the receipt id. The checker recomputes the SHA-256 digest over the saved bytes and reports whether the record still matches.
- Or call the API directly:
GET https://zambo.dev/api/v2/receipt/{receipt-id}/verifyreturns the record as JSON, including its output_hash and verification_status. - The format is AER-1, an open IETF Internet-Draft: draft-zambo-aer1-26. Anyone can implement the check; it does not need a Zambo account.
Verification answers one question: is this the record that was saved, byte for byte? It does not answer whether the result inside was right.
Get receipts for your own calls
Add Zambo to your AI once, at zambo.dev/add/, and every tool call after that files a receipt like the ones above. Every account starts with 20 free calls per day, and free calls file receipts too. The background is at AI agent receipts, and more worked examples are indexed at receipt examples by tool.