---
title: "PMP Deals API endpoints"
description: "Endpoint reference for the PMP Deals tag (6 endpoints): Private Marketplace deal management"
type: "reference"
audience: [network-manager, admin]
keywords: [api, rest, endpoints, pmp, deals]
---

Fetch the complete documentation index at: https://epom.com/ad-server/docs/llms.txt. Use this file to discover all available pages before exploring further. Append .md to any documentation page URL to get its markdown version.

# PMP Deals API endpoints

Private Marketplace deal management. 6 endpoints, generated from the OpenAPI spec. Authentication, the response envelope, pagination and error codes are shared by all endpoints — see [REST API overview](https://epom.com/ad-server/docs/api.md). Parameters marked `form` go in an `application/x-www-form-urlencoded` request body.

### POST /rest-api/campaign/{campaignId}/pmp-deal.do

[Request examples](https://epom.com/ad-server/docs/api/pmp-deals/post-campaign-pmp-deal-by-campaign-id.md)

Create a PMP deal for campaign.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `campaignId` | path | integer | yes | Numeric ID of the campaign to associate the new PMP deal with |
| `dealId` | form | string | yes | External PMP deal identifier string used in OpenRTB bid requests between buyer and seller |
| `buyerId` | form | string | yes | Buyer seat identifier string that identifies the DSP or buyer in the OpenRTB protocol |
| `auctionType` | form | string | yes | Auction pricing model for this deal. FIRST_PRICE: winner pays their bid; SECOND_PRICE: winner pays second-highest bid plus increment; BID_FLOOR: fixed minimum price Values: `FIRST_PRICE`, `SECOND_PRICE`, `BID_FLOOR`. |
| `country` | form | string | yes | ISO 3166-1 alpha-2 country code (e.g. 'US', 'DE') to restrict the deal to a specific country, or '*' to make it a global deal with no country restriction |
| `bidFloor` | form | number | yes | Minimum bid price (floor) for this deal in the campaign's currency. Bids below this value are rejected. |

**Responses:** `200` — PMP deal created successfully · `404` — Not found — resource does not exist. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### GET /rest-api/campaign/{campaignId}/pmp-deals.do

[Request examples](https://epom.com/ad-server/docs/api/pmp-deals/get-campaign-pmp-deals.md)

List PMP deals for campaign.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `campaignId` | path | integer | yes | Numeric ID of the campaign whose PMP deals should be retrieved |

**Responses:** `200` — PMP deals retrieved successfully · `404` — Not found — resource does not exist. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/campaign/{campaignId}/pmp-deals/disable.do

[Request examples](https://epom.com/ad-server/docs/api/pmp-deals/post-campaign-pmp-deals-disable.md)

Disable PMP deals for campaign.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `campaignId` | path | integer | yes | Numeric ID of the campaign |

**Responses:** `200` — PMP deals disabled; pmpDealsEnabled echoes the new state · `404` — Campaign not found or deleted. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/campaign/{campaignId}/pmp-deals/enable.do

[Request examples](https://epom.com/ad-server/docs/api/pmp-deals/post-campaign-pmp-deals-enable.md)

Enable PMP deals for campaign.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `campaignId` | path | integer | yes | Numeric ID of the campaign |

**Responses:** `200` — PMP deals enabled; pmpDealsEnabled echoes the new state · `404` — Campaign not found or deleted. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/campaign/pmp-deal/{id}.do

[Request examples](https://epom.com/ad-server/docs/api/pmp-deals/post-campaign-pmp-deal.md)

Update a PMP deal.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `id` | path | integer | yes | Internal numeric ID of the PMP deal record to update (obtained from the list PMP deals response) |
| `dealId` | form | string | yes | External PMP deal identifier string used in OpenRTB bid requests between buyer and seller |
| `buyerId` | form | string | yes | Buyer seat identifier string that identifies the DSP or buyer in the OpenRTB protocol |
| `auctionType` | form | string | yes | Auction pricing model for this deal. FIRST_PRICE: winner pays their bid; SECOND_PRICE: winner pays second-highest bid plus increment; BID_FLOOR: fixed minimum price Values: `FIRST_PRICE`, `SECOND_PRICE`, `BID_FLOOR`. |
| `country` | form | string | yes | ISO 3166-1 alpha-2 country code (e.g. 'US', 'DE') to restrict the deal to a specific country, or '*' to make it a global deal with no country restriction |
| `bidFloor` | form | number | yes | Minimum bid price (floor) for this deal in the campaign's currency. Bids below this value are rejected. |

**Responses:** `200` — PMP deal updated successfully · `404` — Not found — resource does not exist. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/campaign/pmp-deals/delete.do

[Request examples](https://epom.com/ad-server/docs/api/pmp-deals/post-campaign-pmp-deals-delete.md)

Delete PMP deals.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `ids` | form | array&lt;integer&gt; | yes | One or more internal numeric IDs of the PMP deal records to permanently delete |

**Responses:** `200` — PMP deals deleted successfully. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

## Related

- [REST API overview](https://epom.com/ad-server/docs/api.md) — authentication and conventions
- [API endpoint reference by tag](https://epom.com/ad-server/docs/api/endpoints.md)
- [Network services and miscellaneous APIs](https://epom.com/ad-server/docs/api/network-and-misc.md)

<!-- Generated from the OpenAPI spec. Do not edit by hand. -->