> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sumvin.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Errands

> An agent's scope-bound tasking run — Intent, Authorization, and Vigilance — built on a user's Stamped Mandates.

# Errands

An **Errand** is an agent's scope-bound tasking run: a standing intent a user grants an agent, validated against the scopes the user signed, then carried out across a window of time. Where a single <Tooltip headline="Stamped Mandate" tip="A signed authorisation a user grants for specific scoped actions — delivered on the wire as a PINT." cta="Glossary →" href="/glossary">Stamped Mandate (PINT)</Tooltip> is a point-in-time authorisation, an Errand carries that authorisation through a preflight, into execution, and across multiple runs until it expires or is cancelled.

<Snippet file="product-term-disambiguation.mdx" />

## The Errand lifecycle

Every Errand moves through three phases. The headers below are the canonical phase names.

### Intent

The user expresses a standing intent — for example, "find concert tickets under \$200 this month." That intent creates the Errand. Two fields capture where it came from:

* `originating_agent_task` — the agent task the Errand was created from (surfaced via [`expand=originating_agent_task`](/guides/ipa#expansions)).
* `originating_chat_id` — carried through on the create request, threading the chat session for traceability.

### Authorization

A preflight validates the intent and the linked Stamped Mandate's scopes before the Errand becomes executable. The `preflight_workflow_id` identifies the workflow that runs this check.

An Errand is backed by one or more Stamped Mandates. The scopes on those mandates define exactly what the agent is allowed to do:

* `sr:us:pint:perpetual:search?time=…` — create and run the Errand for the given window.
* `sr:us:pint:spend:execute?max=…&asset=…&chain_id=…` — authorise on-chain purchase execution.

`executing_agent_task` is populated during preflight once the execute workflow has been spawned, so it is available before approval is granted. See the [lifecycle reference](/products/errand/errand-lifecycle) for exact timing.

### Vigilance

Once authorised, the Errand runs across its window. Each run draws on the granted scopes, and per-scope parameters — amount cap, asset, chain — are enforced at execution time. The Errand keeps watch until it expires or is cancelled, with `executing_agent_task` carrying it into each execution.

A user can have many Errands; each has its own lifecycle and its own backing Stamped Mandates.

## When a partner uses one

* **Agentic commerce flows** — the user expresses an intent ("find me concert tickets under \$200 in the next month"), and the Errand authorises the agent to surface and execute matches across that window.
* **Agent-executed checkout** — the agent holds the Errand; the user is not present for each purchase.
* **"Authorise once, execute over a window" patterns** — anywhere a partner needs durable, scope-bound authorisation rather than a per-transaction prompt.

## See also

* [Errand guide](/guides/ipa) — create, preflight, execute, cancel
* [Errand lifecycle](/products/errand/errand-lifecycle) — state transitions
* [Purchase Intents](/identity/pint) — the signed authorisation under an Errand

## Referenced from

* [Errand overview](/products/errand/overview)
* [Agentic commerce use case](/overview/use-cases/agentic-commerce)
* [Building with Envoy](/overview/personas/agent-flows)
