What is an action receipt for an AI agent, and what do its grades mean?
An action receipt records what happened when an agent's action was sent, with a grade for how the outcome was established: confirmed, acknowledged, unknown, failed, refused or denied.
An action receipt is the record of what happened when an AI agent's action was sent to a provider, with a grade that says how the outcome was established: confirmed, acknowledged, unknown, failed, refused or denied. Every governed action returns one.
Why grade an outcome at all?
A 200 from an API means the provider accepted the request. It does not always mean the refund, email or file change happened as intended. And a timeout does not mean it did not happen. A plain success or error flag hides both cases. A grade says which kind of evidence stands behind the result.
What do the grades mean?
| Grade | Meaning |
|---|---|
confirmed | A read-back matched the request. |
acknowledged | The provider accepted the request. Nothing read it back. |
unknown | No usable response. Anlyon does not send it again. It stays unknown until a read-back or an operator settles it. |
failed | The provider rejected the request, or it never left Anlyon. |
refused | Anlyon refused it at dispatch. |
denied | The approval was denied. |
Failed, refused and denied mean it did not run. An effect that has not run yet reports pending, which means no receipt yet.
Example
An agent sends a customer email through the resend.email_send adapter. Resend answers with an email id. Anlyon then reads that email back from Resend by id. The read-back matches, so the receipt grades confirmed.
import { Client } from '@anlyonhq/sdk';
const agent = new Client({ apiKey: process.env.ANLYON_AGENT_KEY! });
const { data } = await agent.actions.invoke('send-welcome', {
from: 'billing@mail.example.com',
to: ['ana@example.com'],
subject: 'Welcome',
text: 'Your account is ready.',
});
console.log(data!.grade); // 'confirmed', 'acknowledged', 'unknown', ...
confirmed here means Resend's own record returned the email on read-back. It does not mean the email reached an inbox.
How to read each grade exactly
confirmeddepends on the read-back. For an adapter, Anlyon read the provider's own record. For a declared action, your own verify rule matched, and a rule that matches a resource that already existed proves less.acknowledgedis not a failure. It is an accepted request that nothing read back. An operator's manual resolution to succeeded also grades here, and is labelledmanual.unknownis notfailed. See unknown outcome.refusedmeans Anlyon stopped it before sending, for example on an exhausted shared limit or a changed action version.
What a receipt is not
A receipt is a database record with provider evidence. It is not signed and not tamper-evident. Evidence on an effect is append-only, which is a database rule, not a cryptographic one.
Related terms
Read next
Frequently asked questions
What do the receipt grades mean?
Confirmed means a read-back matched. Acknowledged means the provider accepted the request and nothing read it back. Unknown means no usable response, and Anlyon does not send the request again. Failed, refused and denied mean it did not run.
Is an Anlyon receipt signed?
No. A receipt is a database record with provider evidence. It is not signed and not tamper-evident. Its value is the grade: it says whether the outcome was read back from the provider, only accepted, or not known.
