---
title: "Update campaign country pricing"
type: reference
method: POST
path: /rest-api/campaign/{campaignId}/pricing/{countryCode}.do
tag: "Campaigns"
---

# Update campaign country pricing

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

Sets or updates the price for a specific country within the campaign's pricing configuration. The countryCode must be a valid ISO 3166 two-letter code. Use '*' as the country code to set the global price. For CPA pricing type, an action can be optionally specified by actionName or actionKey to set per-action country-level prices; only an action the caller can see in the console's action list can be named. On a campaign priced other than CPA, actionName/actionKey do not apply and are listed in ignoredFields. price is required and must be between 0 and 1000000; a missing or out-of-range price is answered with a 400 naming it and nothing is written. The code is case-insensitive (us and US are the same row); Great Britain is stored and read back as UK, and GB is accepted for it. Campaign pricing must already exist before calling this endpoint.

## Path params

| Name | Type | Required | Example | Description |
|---|---|---|---|---|
| `campaignId` | integer | yes | `2001` | Unique identifier of the campaign |
| `countryCode` | string | yes | `US` | ISO 3166 two-letter country code, or '*' for global pricing |

## Form params

| Name | Type | Required | Example | Description |
|---|---|---|---|---|
| `price` | number | yes | `1.75` | Price for the country, 0 to 1000000 |
| `actionName` | string | no | `registration` | Name of the action for CPA per-action country pricing (optional) |
| `actionKey` | string | no | `reg_complete` | Unique key of the action for CPA per-action country pricing (optional) |

## Responses

- `200` — Country pricing updated
- `400` — Wrong request format, unknown country, or pricing disabled
- `401` — Authentication error
- `403` — Not enough permissions
- `404` — No action the caller can see matches actionKey/actionName

## Example request

```bash
curl --request POST \
  --url 'https://YOUR-NETWORK-DOMAIN/rest-api/campaign/2001/pricing/US.do' \
  --header 'X-Api-Key: YOUR_API_KEY' \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data-urlencode 'price=1.75' \
  --data-urlencode 'actionName=registration' \
  --data-urlencode 'actionKey=reg_complete'
```

Source: https://epom.com/ad-server/docs/api/campaigns/post-campaign-pricing-by-campaign-id