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

> Low-level operation to update Pinterest Ads campaigns with a raw PATCH payload; only the provided fields are changed

Low-level operation to update Pinterest Ads campaigns with a raw PATCH payload; only the provided fields are changed. Use focused operations first when available, for example pinterest\_ads\_update\_campaign\_status or pinterest\_ads\_rename\_campaign. Use pinterest\_ads\_list\_campaigns first to inspect the current payload. Supports dry\_run to preview the final payload without calling Pinterest.

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

## Inputs

| Field | Type | Required | Default | Description |
| - | - | - | - | - |
| `account` | DynamicAccount | Yes | - | Select Pinterest Ads account that owns the campaign. |
| `campaign_id` | string or SelectItem | Yes | - | Pinterest campaign ID to update. Markifact sends it as id; do not repeat it inside update\_payload. |
| `update_payload` | object or string | Yes | - | Campaign fields to update as a JSON object, sent to Pinterest as-is in a PATCH request; only the fields you include are changed. Common fields: name, status (ACTIVE/PAUSED/ARCHIVED), start\_time and end\_time (Unix seconds), tracking\_urls, order\_line\_id, is\_flexible\_daily\_budgets, is\_automated\_campaign. Budget fields are raw Pinterest microcurrency integers: daily\_spend\_cap, lifetime\_spend\_cap, and default\_ad\_group\_budget\_in\_micro\_currency (multiply the currency amount by 1,000,000, so \$50 is 50000000). Draft campaigns only: objective\_type, is\_campaign\_budget\_optimization. Prefer pinterest\_ads\_update\_campaign\_status and pinterest\_ads\_rename\_campaign for plain status or name changes. Example: \{"daily\_spend\_cap": 50000000, "end\_time": 1798761600} |
| `dry_run` | boolean | No | `False` | When true, do not call Pinterest. Return the resolved endpoint and final payload for review. |

### SelectItem

| Field | Type | Required | Default | Description |
| - | - | - | - | - |
| `value` | string | Yes | - | The value of the selectable item. |
| `label` | string | Yes | - | The label of the selectable item, used for display purposes. If not provided, defaults to the value. |

## Output

**Type**: `Dict`

Returns campaign\_id, updated\_fields, endpoint, final payload, and dry\_run status.

**Fields**: `campaign_id`, `updated_fields`, `endpoint`, `payload`, `dry_run`


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