Skip to content

feat: add Deals protocol documentation and schemas#1547

Closed
pm-pramod-baddurkar wants to merge 1 commit into
adcontextprotocol:mainfrom
pm-pramod-baddurkar:feature/pmp-deals-protocol
Closed

feat: add Deals protocol documentation and schemas#1547
pm-pramod-baddurkar wants to merge 1 commit into
adcontextprotocol:mainfrom
pm-pramod-baddurkar:feature/pmp-deals-protocol

Conversation

@pm-pramod-baddurkar

Copy link
Copy Markdown

This commit introduces comprehensive support for the Deals protocol, including:

  • New sections in docs.json for Deals and Task Reference pages.
  • Updates to README.md to include Deals protocol overview and key tasks.
  • Enhancements in schema files to define request/response structures for deal-related tasks such as creating, listing, and activating deals.
  • Modifications to existing schemas to incorporate deal transaction types and capabilities.

These changes aim to provide a robust framework for managing deal lifecycles and diagnostics within the AdCP ecosystem.

@github-actions

Copy link
Copy Markdown
Contributor

IPR Policy Agreement Required

Thank you for your contribution! Before we can accept your pull request, you must agree to our Intellectual Property Rights Policy.

By making a Contribution, you agree that:

  • You grant the Foundation a perpetual, irrevocable, worldwide, non-exclusive, royalty-free copyright license to your Contribution
  • You grant a patent license under any Necessary Claims
  • You represent that you own or have sufficient rights to grant these licenses

To agree, please comment below with the exact phrase:

I have read the IPR Policy

You can read the full IPR Policy here.


I have read the IPR Policy


You can retrigger this bot by commenting recheck in this Pull Request. Posted by the CLA Assistant Lite bot.

Comment thread docs/deals/index.mdx
|------|---------|
| **`create_deal`** | Create a logical deal (starts in PROPOSED or DRAFT) |
| **`list_deals`** | Browse/filter deals; use `deal_ids` for single-deal fetch |
| **`update_deal_terms`** | Negotiate or counter-offer (versioned terms) |

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why not just update_deal?

Comment thread docs/deals/index.mdx
| **`create_deal`** | Create a logical deal (starts in PROPOSED or DRAFT) |
| **`list_deals`** | Browse/filter deals; use `deal_ids` for single-deal fetch |
| **`update_deal_terms`** | Negotiate or counter-offer (versioned terms) |
| **`transition_deal_state`** | Move deal through states (e.g. PROPOSED → ACCEPTED → SCHEDULED → LIVE → COMPLETED) |

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why is a transition call necessary? any deal returned in get products would be proposed. calling create deal would be accepted (this could be a status) and then the seller would transition to completed or rejected asynchronously. I don't think scheduled vs live needs a state, nor completed, but open to that discussion (and whatever we do should be the same as create media buy). Generally the state and structure here should be identical to media buy

Comment thread docs/deals/index.mdx
- **Product discovery**: Use **`get_products`** (Media Buy) with `filters.transaction_type` set to `PMP`, `PG`, or `AP` to find products that can be turned into deals. Products may include `supported_transaction_types`, `transaction_terms_by_type`, and `deal_capabilities`.
- **Single product**: Call `get_products` with filters that target one product (e.g. by product_id in filters or selection) to get full product detail for deal creation.

## Deal Lifecycle

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

curious how we think a deal, as described here, is different than a media buy

@bokelley

Copy link
Copy Markdown
Contributor

Hi @pm-pramod-baddurkar — this PR has been quiet since March 19, and the protocol has moved substantially since then (3.0 GA is imminent — see #2302). A Deals protocol is interesting but it hasn't come up as a community priority yet, and the existing sales-proposal-mode specialism covers some of the same ground.

Two paths forward:

  1. Still want to pursue this? Please rebase onto main (there will be conflicts from 3.0 schema changes) and share a use case that distinguishes Deals from sales-proposal-mode / create_media_buy with proposal flow. Happy to get working-group eyes on it.

  2. Prefer to defer? We'll close this for tidiness — you can reopen or file a fresh issue once the use case is sharper.

If we don't hear back by 2026-05-15 we'll close as inactive. Thanks for the contribution either way.

@bokelley bokelley added this to the 3.1.0 milestone Apr 21, 2026
@pm-pramod-baddurkar

Copy link
Copy Markdown
Author

@bokelley , Deals working group is meeting tomorrow and we will discuss the use cases if we still want to pursue this or not. I will update this PR in any case by end of this week.

This commit introduces comprehensive support for the Deals protocol, including:
- New sections in `docs.json` for Deals and Task Reference pages.
- Updates to `README.md` to include Deals protocol overview and key tasks.
- Enhancements in schema files to define request/response structures for deal-related tasks such as creating, listing, and activating deals.
- Modifications to existing schemas to incorporate deal transaction types and capabilities.

These changes aim to provide a robust framework for managing deal lifecycles and diagnostics within the AdCP ecosystem.
@bokelley bokelley added the rfc Protocol change — auto-adds to roadmap board label Apr 22, 2026
@pm-pramod-baddurkar pm-pramod-baddurkar force-pushed the feature/pmp-deals-protocol branch from 1998d47 to 0bbb056 Compare April 22, 2026 05:16
@bokelley

bokelley commented May 3, 2026

Copy link
Copy Markdown
Contributor

Hi @pm-pramod-baddurkar — thanks for this contribution. Closing as the deals direction has shifted since March: buy-terms negotiation now lives in #1962 (performance standards, measurement terms, cancellation, makegoods for guaranteed buys), and PMP-style flows are being absorbed into the broader media-buy lifecycle work rather than a standalone Deals protocol.

If you'd like to bring forward specific schema ideas from this PR, the WG would welcome them as smaller, focused PRs against the current direction. The capabilities explorer in #3841 is also a good place to see how we're framing protocol surfaces today.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

rfc Protocol change — auto-adds to roadmap board

Projects

Status: Shipped

Development

Successfully merging this pull request may close these issues.

2 participants