> ## 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 Budget

> Update the budget of an OpenAI Ads campaign

Update the budget of an OpenAI Ads campaign. Enter the budget in account currency, not micros.

| | |
| - | - |
| **App** | OpenAI Ads |
| **Operation ID** | `openai_ads_update_campaign_budget` |
| **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). |
| `budget_type` | string or SelectableOption | Yes | - | Budget type: 'daily' or 'lifetime'. |
| `budget_amount` | number | Yes | - | Budget amount in your account currency, i.e. 50 for \$50. This value is converted to micros automatically before sending to the API. |

### 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": "active",
  "budget": {
    "lifetime_spend_limit_micros": 30000000
  },
  "updated_at": 1735862400
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.