---
title: "Create a PMP deal for campaign"
type: reference
method: POST
path: /rest-api/campaign/{campaignId}/pmp-deal.do
tag: "PMP Deals"
---

# Create a PMP deal for campaign

`POST https://YOUR-NETWORK-DOMAIN/rest-api/campaign/{campaignId}/pmp-deal.do`

Creates a new Private Marketplace deal for the specified campaign, establishing a private auction agreement with a buyer at a negotiated price floor. The deal is associated with the campaign and will be included in OpenRTB bid requests sent to the specified buyer. The response JSON contains the newly created deal record with its assigned internal ID. Requires standard REST API authentication.

## Path params

| Name | Type | Required | Example | Description |
|---|---|---|---|---|
| `campaignId` | integer | yes | `2001` | Numeric ID of the campaign to associate the new PMP deal with |

## Form params

| Name | Type | Required | Example | Description |
|---|---|---|---|---|
| `dealId` | string | yes | `deal-123` | External PMP deal identifier string used in OpenRTB bid requests between buyer and seller |
| `buyerId` | string | yes | `buyer-456` | Buyer seat identifier string that identifies the DSP or buyer in the OpenRTB protocol |
| `auctionType` | string | yes | `FIRST_PRICE` | 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 |
| `country` | string | yes | `US` | 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` | number | yes | `2.50` | Minimum bid price (floor) for this deal in the campaign's currency. Bids below this value are rejected. |

## Responses

- `200` — PMP deal created successfully
- `400` — Bad request — invalid or missing parameters
- `401` — Authentication error
- `403` — Forbidden — insufficient permissions
- `404` — Not found — resource does not exist

## Example request

```bash
curl --request POST \
  --url 'https://YOUR-NETWORK-DOMAIN/rest-api/campaign/2001/pmp-deal.do' \
  --header 'X-Api-Key: YOUR_API_KEY' \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data-urlencode 'dealId=deal-123' \
  --data-urlencode 'buyerId=buyer-456' \
  --data-urlencode 'auctionType=FIRST_PRICE' \
  --data-urlencode 'country=US' \
  --data-urlencode 'bidFloor=2.50'
```

Source: https://epom.com/ad-server/docs/api/pmp-deals/post-campaign-pmp-deal-by-campaign-id