---
title: "Switch campaigns on or off"
type: reference
method: POST
path: /rest-api/campaigns/status.do
tag: "Campaigns"
---

# Switch campaigns on or off

`POST https://YOUR-NETWORK-DOMAIN/rest-api/campaigns/status.do`

Sets the active status of up to 500 campaigns in one call. Campaigns already in the requested state are skipped as 'unchanged', deleted or unknown ids as 'deleted' / 'not-found'; the response lists changed ids and skipped {id, reason} pairs. The batch is all-or-nothing on permissions: without MANAGE_CAMPAIGNS_ACTIVE_STATUS, or if any campaign's advertiser is outside the caller's UPDATE share, nothing changes. Each switched campaign sends the same activated / deactivated notification as a single update.

## Form params

| Name | Type | Required | Example | Description |
|---|---|---|---|---|
| `ids` | array<integer> | yes | `2001` | Campaign IDs to switch, 1 to 500 |
| `active` | boolean | yes | `true` | true to switch the campaigns on, false to switch them off |

## Responses

- `200` — Batch applied
- `400` — No ids, or more than 500
- `401` — Authentication error
- `403` — Not enough permissions for the whole batch
- `404` — None of the ids names an existing campaign

## Example request

```bash
curl --request POST \
  --url 'https://YOUR-NETWORK-DOMAIN/rest-api/campaigns/status.do' \
  --header 'X-Api-Key: YOUR_API_KEY' \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data-urlencode 'ids=2001' \
  --data-urlencode 'active=true'
```

Source: https://epom.com/ad-server/docs/api/campaigns/post-campaigns-status