Signed receipts for the actions your software takes.
Attestor signs a receipt for the actions your software takes outside the agent loop: webhook deliveries, third-party API calls, content publication, LLM calls, commits and uptime checks. It is for teams that have to show someone outside the company what their systems did. Once it is on, each action leaves an Ed25519-signed receipt that anyone can verify against our public keys, without calling us.
Free plan · 1,000 receipts a month · Verify without an account · Hashes only, never content

When a partner disputes a delivery, an internal log does not answer the question someone outside the company will ask.
— Attestor exists so the answer is a receipt, not your word.
Eight primitives. One signature layer.
Every primitive produces a receipt in the same format. One verification library. One key to publish. One way to settle any question about what happened.
Agent action relay
Your autonomous agent acts. Attestor signs a receipt of what it did, when, and to whom.
Content attestation
Send a hash. Get a signed timestamp. We never see the content. You prove it existed.
Uptime that proves itself
Scheduled checks against your endpoints. Every result is a receipt your customers can verify.
Webhooks that settle disputes
Send through us. Every attempt is signed. "Did you receive it?" becomes a one-line check.
DNS, witnessed
Multi-resolver queries on a schedule. Consensus baked in. Dissent flagged. All signed.
TLS observations on tap
Cert chains, fingerprints, validity windows — captured periodically, signed permanently.
LLM call attestation
Sign the metadata of an LLM call — model, prompt hash, completion hash — without exposing either.
Commits, witnessed
A GitHub Action witnesses every push. Your supply chain gains a third-party signature trail.
From your code to a verifiable receipt in three lines.
The integration is the same shape across all eight primitives. Call the API. Get back a signed receipt. Verify with the public key — forever.
Call the primitive
Hit POST /v1/call, /v1/attest, or any of the eight endpoints with your API key. We forward, monitor, observe, or witness — depending on the primitive.
Receive a signed receipt
We build a JSON receipt of the facts — timestamps, hashes, status codes — and sign it with our Ed25519 key. You get it back synchronously, in the same response.
Verify forever, by anyone
Use @attestor/verify in Node, attestor-verify in Python, or paste the receipt into the public verify page. The public keys are at a stable URL. No callback needed. Ever.
// Call the primitive — get back a signed receipt
const receipt = await fetch('https://agined.com/api/v1/attestor/call', {
method: 'POST',
headers: { 'Authorization': `Bearer ${ATTESTOR_KEY}` },
body: JSON.stringify({
destination: 'https://api.acme.com/refund',
method: 'POST',
body: { order_id: 'ord_4f8a', amount: 2400 },
agent_id: 'billing-bot',
purpose: 'refund_processing'
})
}).then(r => r.json());
// Verify anywhere, anytime, by anyone
import { verify } from '@attestor/verify';
const { valid } = await verify(receipt);
console.log(valid); // → true# Call the primitive — get back a signed receipt
receipt = requests.post(
'https://agined.com/api/v1/attestor/call',
headers={'Authorization': f'Bearer {ATTESTOR_KEY}'},
json={
'destination': 'https://api.acme.com/refund',
'method': 'POST',
'body': {'order_id': 'ord_4f8a', 'amount': 2400},
'agent_id': 'billing-bot',
'purpose': 'refund_processing'
}
).json()
# Verify anywhere, anytime, by anyone
from attestor_verify import verify
valid, _ = verify(receipt)
print(valid) # → True# One call. One signed receipt. Anyone can verify.
curl https://agined.com/api/v1/attestor/call \
-H "Authorization: Bearer $ATTESTOR_KEY" \
-H "Content-Type: application/json" \
-d '{
"destination": "https://api.acme.com/refund",
"method": "POST",
"body": { "order_id": "ord_4f8a", "amount": 2400 },
"agent_id": "billing-bot",
"purpose": "refund_processing"
}'
# Returns a signed JSON receipt + X-Attestor-Receipt header.Who it is for, and what they need to settle.
Teams whose software acts on someone else's behalf, and who are later asked to prove what it did.
Show what an agent called, and what came back.
An agent calls a model and a third-party API for a customer, and the customer later asks what happened. A signed receipt for each call answers with evidence instead of a log you wrote yourself.
Settle a disputed webhook in one lookup.
A partner says a payment webhook never arrived. The delivery receipt shows when it was sent, to which endpoint and what came back, without an internal investigation.
Uptime and certificate evidence a customer can check.
HTTP, DNS and TLS monitors run on a schedule and sign each result. When a customer questions an outage window, the signed results are independent evidence of what was observed.
Prove which commit and model output shipped.
A reviewer asks which commit went into a release and which model output was used in it. Commit and content receipts tie the release to hashes recorded at the time, verifiable by anyone with the public key.
Evidence that stands on its own, not on our word.
A receipt is only useful if the person checking it does not have to trust the company that issued it. Each property below exists for that reader.
Operated outside the audited system.
The attestation service runs separately from the systems it records, so the audit log does not live inside the system being audited. That separation is what makes the output a receipt rather than a log.
Ed25519, public keys, forever.
Receipts verify against published public keys at a stable URL. No call back to us, no login, no dependency. The cryptography outlives the company.
Verify with code you can read.
The receipt format is documented, and the offline verifier, @agined/verifier, is being prepared for publication on npm, so anyone can check a receipt without our service. The relay that issues receipts is proprietary.
We hash what you don't share.
Request bodies, response bodies, headers, prompts, completions — never stored. Only hashes. Receipts prove what happened without leaking what it said.
History the chain itself defends.
Receipts are not editable. Not deletable on demand. Retention is per-plan and applied uniformly. Append-only is enforced at the database layer by SQLite trigger — no support-ticket workflow quietly rewrites the past, because the chain itself rejects rewrites.
Your own key and database.
Enterprise adds an isolated database, custom retention, SAML SSO and a custom MSA. A dedicated signing key is included from Pro+ up.
Three ways to pay
Pick how you pay for Attestor — a fixed plan, pay-as-you-go with the full dashboard, or the lowest metered price over the API. Switch any time from the dashboard.
Fixed monthly plans
Choose a plan per stage of your work. A predictable monthly price, the full dashboard, and every feature in your tier — the simplest way to budget.
- Full dashboard + all tier features
- Predictable monthly cost
- Included usage allowances
See the plans below for each tier's monthly price and included usage.
Metered prices are billed per unit shown, in your display currency. Usage-based includes the full dashboard; API-only is dashboard-light. Live rates and any included allowances are confirmed at checkout.
Seven plans. One receipt format.
Every signed receipt counts as one call, and calls across all eight primitives share the same monthly bucket. The Free plan includes 1,000 receipts a month, and verifying a receipt is always free. Purchases go through Avonao Billing.
- Evaluate every primitive
- 7-day retention
- Verify any receipt for free
- No top-ups or overage
- Community support
- Core attestation primitives
- 30-day retention
- Top-up packs available
- Opt-in overage
- Email support
- All eight primitives
- 90-day retention
- Compliance exports
- Top-ups and opt-in overage
- Email support
- Everything in Pro
- 180-day retention
- Dedicated signing key
- Top-ups and opt-in overage
- Email support
- Everything in Pro+
- 365-day retention
- SSO and auditor access
- Top-ups and opt-in overage
- Email support
- Everything in Team
- 730-day retention
- Dedicated signing key
- No monthly receipt cap
- Priority support
- Dedicated signing key
- Custom retention
- Custom MSA
- Your choice of data region
- Uptime commitment in a signed order
Need volume pricing or a dedicated environment? Talk to us about Enterprise →
Sign your first receipt today. Verify it anywhere.
Create a workspace on the Free plan and sign your first receipt with one API call. Anyone you share it with can verify it against our public keys, without an account.
1,000 receipts a month free · No content stored · Billing through Avonao Billing