> ## Documentation Index
> Fetch the complete documentation index at: https://docs.markifact.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Update Campaign Status

> Update the status of OpenAI Ads campaigns to enable, pause, or archive / delete them

Update the status of OpenAI Ads campaigns to enable, pause, or archive / delete them.

|                       |                                     |
| --------------------- | ----------------------------------- |
| **App**               | OpenAI Ads                          |
| **Operation ID**      | `openai_ads_update_campaign_status` |
| **Type**              | Action                              |
| **Connection**        | `openai_ads` (required)             |
| **Credits per run**   | 1                                   |
| **Agent / MCP tool**  | Yes                                 |
| **Requires approval** | Yes (write operation)               |

## Inputs

| Field             | Type                       | Required | Default | Description                                                                              |
| ----------------- | -------------------------- | -------- | ------- | ---------------------------------------------------------------------------------------- |
| `campaign_id`     | string or SelectableOption | Yes      | -       | Campaign ID to update (from openai\_ads\_list\_campaigns).                               |
| `campaign_status` | string or SelectableOption | Yes      | -       | Desired campaign status: 'active', 'paused', or 'archived'. Archiving is not reversible. |

### SelectableOption

| Field   | Type   | Required | Default | Description |
| ------- | ------ | -------- | ------- | ----------- |
| `value` | string | Yes      | -       |             |
| `label` | string | Yes      | -       |             |

## Output

**Type**: `Dict`

Returns the updated campaign object exactly as returned by the OpenAI Ads API (id, name, status, budget, targeting, start\_time, end\_time, created\_at, updated\_at, etc.).

**Fields**: dynamic (depend on the inputs)

**Example**:

```json theme={"dark"}
{
  "id": "cmpn_...",
  "name": "Spring launch",
  "status": "paused",
  "budget": {
    "lifetime_spend_limit_micros": 25000000
  },
  "updated_at": 1735862400
}
```
