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

# Versions & Compatibility

> Every published AdCP version, its status, and its end-of-life date. Start here if you're choosing or upgrading a version.

## At a glance

<Info>
  **Choosing today:** new production integrations should use 3.2 with wire pin `"3.2"` (release `3.2.1`), after the peer lists `"3.2"` in `supported_versions`. Existing 3.1 integrations keep working on `"3.1"`.
</Info>

| Status | Versions | Wire pin | What it means |
| - | - | - | - |
| **Active** | 3.2 (current stable: 3.2.1) | `"3.2"` | Current production minor release, published 2026-09-30. `3.2.0` was never released. TypeScript `@adcp/sdk@14.0.0` and Python `adcp==8.0.0` ship alongside it and embed it. See [What's new in AdCP 3.2](/dist/docs/3.2.1/reference/whats-new-in-3-2) and the [3.1 to 3.2 migration guide](/dist/docs/3.2.1/reference/migration/3-1-to-3-2). |
| **Maintained** | 3.1 (current stable: 3.1.24) | `"3.1"` | Supported previous minor. Receives security and critical fixes on the `3.1.x` line for a maintainer-decided window. See [What's New in AdCP 3.1](/dist/docs/3.2.1/reference/whats-new-in-3-1). |
| **Maintained** | 3.0 (current stable: 3.0.26) | `"3.0"` | Supported previous minor for existing production integrations. Receives compatibility and security patches. |
| **End of life** | 2.0.0, 2.1.0, 2.5.0–2.5.3 | — | No patches. Migrate to 3.0. See [v2 sunset](/dist/docs/3.2.1/reference/v2-sunset). |
| **Planned** | 4.0 | — | Target in [planned releases](/dist/docs/3.2.1/reference/versioning#planned-releases). |

**Wire values are release-precision only.** Send `"3.2"` for the stable 3.2 line, `"3.1"` or `"3.0"` for the maintained lines. Do not send patch components like `"3.2.1"` or full semver pre-release values like `"3.2.0-rc.7"`. Historical prerelease pins such as `"3.2-rc.7"` remain valid only for agents that explicitly advertise those prerelease values. See [patches are not negotiated](/dist/docs/3.2.1/reference/versioning#patches-are-not-negotiated).

*Status legend: Pending beta = announced but not yet published. Beta and release candidate = immutable prerelease checkpoints for development and staging. A one-time cleanup on 2026-09-14 retired some historical 3.x beta bundles from the repository and runtime image; remaining and future published prerelease artifacts stay immutable, and retired beta URLs are served from the artifact CDN on a best-effort basis only. Active = current stable generation. Maintained = supported previous minor. Security-only = patches for security issues only, no features. End of life = no patches. Planned = not yet released.*

## All published versions

### 3.x — current generation

| Version | Released | Notes |
| - | - | - |
| 3.0.0 | 2026-04-22 | GA — stable baseline for the 3.x cycle. |
| 3.0.1 through 3.0.10 | 2026-04-28 to 2026-05-10 | Patches. Wire-compatible with 3.0.0. |
| 3.0.11 through 3.0.15 | 2026-05-11 to 2026-05-31 | Patches. Wire-compatible with 3.0.0. |
| 3.0.16 through **3.0.26** | 2026-06-14 to 2026-08-21 | Patches. **3.0.26 is the latest stable patch.** Wire-compatible with 3.0.0. |
| 3.1.0 | 2026-06-18 | GA — previous minor release, still maintained. Use wire pin `"3.1"`. |
| 3.1.1 | 2026-06-30 | Patch. Wire-compatible with 3.1.0. |
| 3.1.2 | 2026-07-08 | Patch. Wire-compatible with 3.1.0. |
| 3.1.3 | 2026-07-13 | **Withdrawn. Do not use.** It added a stable schema field in a patch release and included an incorrect publisher-domain filter implementation. The artifacts remain available only for auditability. Use the latest supported 3.1.x patch instead. |
| 3.1.4 through 3.1.21 | 2026-07-18 to 2026-09-09 | Supported patches. Wire-compatible with 3.1.0. |
| 3.1.22 | 2026-09-13 | Emergency privacy/security corrections changed the explicitly experimental TMP contract under the recorded notice exception; see the [v3.1.22 release note](/dist/docs/3.2.1/reference/release-notes#version-3-1-22). |
| 3.1.23 | 2026-09-14 | Carries the corrected v3.1.22 release record and compliance gating fixes. Wire-compatible with 3.1.0. |
| **3.1.24** | 2026-09-23 | **Latest 3.1 patch.** Compliance storyboard corrections: governance scenarios gated on `media_buy.governance_aware`, ungoverned sales baselines, governance routing, and corrected `format_id`, creative `format_kind`, and `VERSION_UNSUPPORTED` recovery expectations. Wire-compatible with 3.1.0. |
| 3.2.0 | — | **Never released.** The number is withdrawn; the first stable 3.2 release is 3.2.1. Artifacts at `3.2.0` URLs come from a reverted 2026-06-30 cut of 3.1-era content. Do not use them. |
| **3.2.1** | 2026-09-30 | **GA — current production minor release.** Use wire pin `"3.2"`. Additive over 3.1 apart from the recorded [3.2 exceptions to 3.x compatibility](/dist/docs/3.2.1/reference/versioning#3-2-exceptions-to-3-x-compatibility). See the [3.2.1 release notes](/dist/docs/3.2.1/reference/release-notes#version-3-2-1). |

Supported patches don't change stable wire surfaces. Upgrading among supported 3.0.x patches is safe, and stable 3.1 surfaces remain additive over 3.0. The withdrawn 3.1.3 release is not a supported patch or implementation target. Version 3.1.22 changed the explicitly experimental TMP contract under the documented emergency security exception to its normal notice process. For per-version detail, see [Release Notes](/dist/docs/3.2.1/reference/release-notes) (curated narrative) and the [Changelog](/dist/docs/3.2.1/reference/changelog) (full technical history).

### Prereleases

| Version | Released | Notes |
| - | - | - |
| 3.2.0-rc.7 | 2026-09-27 | Final release candidate, superseded by 3.2.1. Published as [`v3.2.0-rc.7`](https://github.com/adcontextprotocol/adcp/releases/tag/v3.2.0-rc.7). Adds the `viewable_rate` metric optimization goal with a required viewability `standard` and optional measurement `vendor`, lets `viewed_seconds` goals name a standard and vendor, and declares the deprecated `account` field on the media-buy `list_creative_formats` request. TypeScript `@adcp/sdk@14.0.0-rc.50` and Python `adcp==8.0.0b18` embed it exactly. Move `"3.2-rc.7"` pins to `"3.2"`. |
| 3.2.0-rc.6 | 2026-09-23 | Superseded. Published as [`v3.2.0-rc.6`](https://github.com/adcontextprotocol/adcp/releases/tag/v3.2.0-rc.6). Carries the RC.5 changes (shared MediaBuy `name` on `buy_products` and `accept_proposal`, seller-policy decline reasons, the request-signing error vocabulary, and the streaming-TV, retail-media, and exchange sales specialisms) plus the Reliable Reporting waiver reconciliation. TypeScript SDK RC.48 embeds it exactly. |
| 3.2.0-rc.5 | — | Not published. The release process withheld this bundle, and RC.6 superseded it. |
| 3.2.0-rc.4 | 2026-09-19 | Superseded, published as [`v3.2.0-rc.4`](https://github.com/adcontextprotocol/adcp/releases/tag/v3.2.0-rc.4). Adds anonymous catalog discovery declarations, required `recovery` on 3.2 producer errors, the `sync_accounts` settings-update account echo, and supply-path verification vectors. TypeScript SDK RC.44 embeds it exactly. |
| 3.2.0-rc.3 | 2026-09-14 | Superseded, published as [`v3.2.0-rc.3`](https://github.com/adcontextprotocol/adcp/releases/tag/v3.2.0-rc.3). Hardens the experimental Reliable Reporting consumer-status loop (`content_mismatch` with a closed `mismatch_code`, a bounded grace window for a stale `received`, the buyer posting deadline and `obligation_counts.consumer_status_pending`, issue lifecycle fields, and the reserved `authoritative_party` value), adds a shared MediaBuy-level `frequency_cap` with structured product frequency-cap constraints, and adds request-only targeting inputs with `null`-clear semantics. TypeScript SDK RC.40 and Python `adcp==8.0.0b15` embed it exactly. |
| 3.2.0-rc.2 | 2026-09-13 | Superseded. Adds the opt-in experimental Reliable Reporting `sync_reporting_status` consumer-status loop, buyer and orchestrator storyboards with a buyer-orchestrator compliance track, cursor pagination for truncated `get_media_buy_delivery` breakdowns, sub-country product coverage filters, and restored `canonical-forecast-point` constraints. No maintained SDK embeds it. |
| 3.2.0-rc.1 | 2026-09-05 | Superseded. Completes the experimental Reliable Reporting 1.0 contract and hardens delivery, reach, and vendor-metric semantics. TypeScript SDK RC.35, Python `adcp==8.0.0b14`, and Go `adcp/v3@v3.2.1` embed it exactly. |
| 3.2.0-rc.0 | 2026-09-03 | First 3.2 release candidate. TypeScript SDK beta.31 and Python SDK beta.13 embed it exactly; Go `adcp/v3@v3.2.0` remains generated from beta.9. |
| 3.2.0-beta.11 | 2026-09-03 | Superseded. Adds `get_principal` to the MCP media-buy role profile alongside `sync_principal`, and aligns training-agent and compliance guidance with the beta.10 bundle. TypeScript SDK beta.29 and Python SDK beta.12 embed it exactly. |
| 3.2.0-beta.10 | 2026-09-01 | Superseded. Adds managed reporting delivery, authenticated principals, audio VAST and DOOH support, programmed channel collections, and committed collection selection. TypeScript SDK beta.28 and Python SDK beta.11 embed it. |
| 3.2.0-beta.9 | 2026-08-28 | Superseded. Adds the draft account change feed, product-scoped inventory-list receipts, authority-discriminated inventory delivery identity, seller policy and change-right contracts, and broader conformance coverage. |
| 3.2.0-beta.8 | 2026-08-27 | Superseded. Proves metric-container subsumption behavior end to end and repairs versioned documentation snapshot builds. |
| 3.2.0-beta.7 | 2026-08-27 | Superseded. Adds audience activation and external-source contracts, creative delivery and tracker execution contracts, static OOH and radio measurement declarations, viewed-seconds distributions, and expanded conformance coverage. |
| 3.2.0-beta.6 | 2026-08-23 | Superseded SDK-backed checkpoint. `@adcp/sdk@14.0.0-beta.13` and Python `adcp==8.0.0b9` embed this exact bundle. |
| 3.2.0-beta.5 | 2026-08-22 | Superseded SDK-backed checkpoint. Python `adcp==8.0.0b7` embeds this exact bundle. |
| 3.2.0-beta.4 | 2026-08-20 | Integration checkpoint, superseded by beta.5 for new beta testing. Adds flexible-window availability discovery and the outcome\_target reverse-forecast input. |
| 3.2.0-beta.3 | 2026-08-19 | Integration checkpoint, superseded by beta.4 for new beta testing. |
| 3.2.0-beta.2 | 2026-08-19 | Integration checkpoint, superseded by beta.3 for new beta testing. |
| 3.2.0-beta.1 | 2026-08-19 | Integration-correction checkpoint, superseded by beta.2 for new beta testing. |
| 3.2.0-beta.0 | 2026-08-17 | Protocol-first beta input for SDK work. Retired from the repository and runtime image on 2026-09-14 together with the other 3.x betas except `3.2.0-beta.11` (frozen `3.2-beta` documentation selector), `3.2.0-beta.6` (training-agent retained checkpoint), and `3.1.0-beta.7` (TypeScript SDK side bundle); pinned adopters should move to `"3.2"`. |
| 3.1.0-rc.1 through 3.1.0-rc.15 | 2026-05-29 to 2026-06-16 | Superseded by 3.1.0 GA. These artifacts remain available for pinned prerelease adopters and release forensics. |
| 3.0.0-beta.1 through rc.2 | 2026-01-26 to 2026-03-15 | Superseded. |
| 3.0.0-rc.3 | 2026-04-01 | Superseded by GA. See [prerelease upgrade notes](/dist/docs/3.2.1/reference/migration/prerelease-upgrades) if you adopted rc.3. |

### 2.x — end of life

| Version | Released | Notes |
| - | - | - |
| 2.0.0 | 2025-10-15 | End of life. No patches. Migrate to 3.0. |
| 2.1.0 | 2025-10-19 | End of life. No patches. Migrate to 3.0. |
| 2.5.0 | 2025-11-22 | End of life. No patches. |
| 2.5.1 | 2025-12-24 | End of life. No patches. |
| 2.5.2 | 2026-01-07 | End of life. No patches. |
| 2.5.3 | January 2026 | End of life. **Last 2.x release.** |

The entire 2.x line has been fully deprecated since August 1, 2026 (UTC). The 2.x schema URLs continue to resolve so existing integrations don't break silently, but those schemas receive no further updates. See [v2 Sunset](/dist/docs/3.2.1/reference/v2-sunset) for migration paths.

## FAQ

### What's "current"?

For new production integrations, **3.2.1** is current; pin your integration to `"3.2"` (not `"3.2.1"`). Existing 3.1 and 3.0 integrations can remain pinned to `"3.1"` or `"3.0"` while they migrate. There is no `3.2.0` release. See [Version negotiation](/dist/docs/3.2.1/reference/versioning#version-negotiation).

### What happened to 2.2, 2.3, 2.4, 2.6?

The 2.x line skipped version numbers during its working-group cycle. Some appear as in-flight changelog entries but were never released — the changes were rolled forward into the next published version or deferred to 3.0. The six published 2.x releases are 2.0.0, 2.1.0, 2.5.0, 2.5.1, 2.5.2, and 2.5.3.

### Can I still register a v2 agent?

Yes — v2 agents can be registered in the AgenticAdvertising.org registry but cannot be verified. Certification and verified-default discovery require v3.x. See [v2 Sunset → If you use the AgenticAdvertising.org registry](/dist/docs/3.2.1/reference/v2-sunset#if-you-use-the-agenticadvertisingorg-registry).

### How long will 3.0 be supported?

At least 12 months after 4.0 GA. See [Versioning → Support window for previous major](/dist/docs/3.2.1/reference/versioning#support-window-for-previous-major).

### Where is 4.0?

Targeted for early 2027. 3.x is mid-cycle — see the [planned releases table](/dist/docs/3.2.1/reference/versioning#planned-releases).

## Choosing a version

| If you are… | Use |
| - | - |
| Building a new production integration today | **3.2**. Pin `"3.2"` on the wire with `@adcp/sdk@14.0.0` or `adcp==8.0.0`, and fall back to `"3.1"` for peers that don't advertise 3.2. |
| Implementing 3.2 without an SDK | Generate from the signed [`3.2.1` tarball](https://adcontextprotocol.org/protocol/3.2.1.tgz). See [Verifying protocol tarballs](/dist/docs/3.2.1/reference/verifying-protocol-tarballs). |
| Pinned to a 3.2 beta or release candidate | Move to `"3.2"`. See the [3.2 prerelease history](/dist/docs/3.2.1/reference/3-2-beta) for what changed after RC.7. |
| Running an existing 3.0 integration | Stay on **3.0** while you migrate, or move to **3.2** (or 3.1) when your SDK and validation are ready. |
| Running a 3.1 integration | Keep `"3.1"` as long as you need; follow [Migrating from 3.1 to 3.2](/dist/docs/3.2.1/reference/migration/3-1-to-3-2) when you're ready. |
| Running a 2.5.x integration | Upgrade now — out of support. Start with the [migration guide](/dist/docs/3.2.1/reference/migration). |
| Running a 2.0 or 2.1 integration | Upgrade now — out of support. |
| Trying an experimental feature | Check [experimental status](/dist/docs/3.2.1/reference/experimental-status) and pin an exact release. |

## Related

* **[Versioning & Governance](/dist/docs/3.2.1/reference/versioning)** — release tiers, schema-change scope, cadence policy
* **[v2 Sunset](/dist/docs/3.2.1/reference/v2-sunset)** — full v2 end-of-life timeline and migration paths
* **[What's new in v3](/dist/docs/3.2.1/reference/whats-new-in-v3)** — feature-by-feature summary of what 3.0 adds
* **[What's New in AdCP 3.1](/dist/docs/3.2.1/reference/whats-new-in-3-1)** — final 3.1 feature set and adopter actions
* **[What's new in AdCP 3.2](/dist/docs/3.2.1/reference/whats-new-in-3-2)** — 3.2 feature set and adopter actions
* **[3.2 prerelease history](/dist/docs/3.2.1/reference/3-2-beta)** — beta and RC checkpoints, SDK pairings, and changes after RC.7
* **[Release Notes](/dist/docs/3.2.1/reference/release-notes)** — curated narrative for each version
* **[Changelog](/dist/docs/3.2.1/reference/changelog)** — full technical change history
