Registration recap
There is one path into the AAO registry: an AAO member explicitly enrolls the agent on their member profile. See Registering an agent for the full enrollment flow — dashboard orPUT /api/me/member-profile, end-to-end in under five minutes.
After enrollment your agent gets:
- A catalog entry in
/api/registry/agentswithvisibility: "members_only"(upgrade topublicon a paid AAO tier) - Eligibility for the AAO Verified badge, issued automatically once your agent passes the relevant storyboards on the compliance heartbeat
get_adcp_capabilities response — you do not need to set or maintain the type field manually.
How the AAO Verified heartbeat works
AAO continuously re-evaluates your agent’s conformance on an approximately 1-hour heartbeat cadence. Every heartbeat cycle, AAO’s compliance runner executes the storyboard suite against your registeredagent_url — the same set of storyboards your declarations in get_adcp_capabilities obligate (universal baselines + protocol baselines + declared-specialism storyboards).
What the heartbeat tests:
- AdCP wire format and task shape
- Error semantics and error envelopes
- State-machine transitions across the media-buy or applicable lifecycle
- Declared specialisms map to working tools
- Schema conformance and filter behavior
- Idempotency semantics
adagents.json or capability snapshot and updates registry metadata. The heartbeat runs protocol storyboards against your live endpoint and determines your verification status. The two are independent operations.
Grading profiles and verification modes
The agent dashboard can compare three grading profiles from the same completed heartbeat evidence:
This comparison is passive. Opening the dashboard and selecting a saved result do not contact your agent or enqueue another compliance run. Selection enqueues only a database-backed badge and token projection retry from that immutable result. For each exact agent role and AdCP version, an organization owner or admin can select Legacy grading or Strict Spec grading from a current completed run. The selection is authenticated, revision-checked, reversible, and recorded in an append-only audit. New roles and versions independently default to Legacy.
If a selected result is non-passing, the dashboard requires an explicit public-impact confirmation. An active badge degrades and enters the existing 48-hour grace period; selection never creates a badge from non-passing evidence. The first failing Strict Spec timestamp survives Legacy/Spec toggles and clears only after a passing Strict Spec assessment, so toggling cannot restart grace.
Grading profiles are separate from badge evidence modes.
verification_modes values such as spec and live describe what kind of evidence a badge carries; live remains independent. A badge token’s grading_profile claim identifies Legacy or Strict Spec grading. Older claim-less tokens are historical Legacy evidence. Offline copies may remain cryptographically valid for their existing 30-day lifetime after a selection changes, so use the registry API for real-time status.
Legacy has no automatic migration. Six months after selection general availability is a review point only. Any retirement is a separate working-group decision, cannot occur before 12 months, requires at least 90 days’ notice and a safe selectable profile for production agents, and would make remaining Legacy identities unverified rather than silently relabeling them Strict Spec.
See AAO Verified for complete eligibility and attestation details.
Dashboard status indicators
The agent dashboard at agenticadvertising.org/dashboard/agents reflects the current state of each enrolled agent. The status comes from the compliance heartbeat — AAO updates it on every probe cycle.Grace period math. The Degraded state begins on the first failed heartbeat. The 48-hour clock runs from that initial failure — not from when you first notice the status. Check your comply report promptly after any deploy that touches protocol behavior.
How to manually trigger a re-probe
AAO runs probes automatically on the ~1h heartbeat, but there are three ways to refresh agent state:Registry crawl (metadata update)
If you’ve updated youradagents.json, brand.json, or capability snapshot and want the registry to pick up changes without waiting for the next scheduled crawl, use the crawl-request endpoint:
202 Accepted. Rate-limited to one request per domain every 5 minutes and 30 requests per user per hour.
What this does and does not do:
- Does refresh your agent’s registry metadata (type resolution, capability snapshot,
adagents.jsonauthorization graph) - Does not trigger a compliance heartbeat re-run — the heartbeat storyboards are not re-executed by this endpoint
Dashboard Refresh button
In the agent card on agenticadvertising.org/dashboard/agents, the Recheck status button calls/api/registry/agents/{encodedUrl}/refresh. It re-reads your agent’s registry metadata and, when you own the agent and the capability probe succeeds, runs the full compliance storyboard suite synchronously before updating the dashboard view.
Compliance requeue
The Requeue comply button does not run the storyboard suite immediately. It clearslast_checked_at so the agent is picked up by the next scheduled heartbeat cycle, which can take up to about 1 hour.
If you need to confirm a fix immediately, use Recheck status or the dashboard Test flow rather than Requeue comply. For local reproduction, run the same storyboards with
@adcp/sdk/testing.How to read a comply report
The comply report appears in your agent’s dashboard panel under the AAO Verified section. It shows the result of the most recent heartbeat run.Report structure
Per-storyboard verdicts
Debugging a failure
- Note the storyboard name from the failed row (e.g.
signed_requests,pagination_integrity,comply-controller-mode-gate). - Find the storyboard definition in the Compliance Catalog.
- Reproduce locally:
- The local runner gives the same assertions as the heartbeat. Fix the failure, verify locally, then deploy — the next heartbeat cycle will reissue the badge if all storyboards pass.
Related
- Registering an agent — the enrollment path, fields, and programmatic registration.
- Registry API overview —
POST /api/registry/crawl-requestand the full endpoint catalog. - AAO Verified — full lifecycle states, axis semantics, and badge embedding.
- Compliance Catalog — the storyboard index, per-specialism coverage, and how to run storyboards locally.