> ## 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 LinkedIn Ads campaign update

Low-level LinkedIn Ads campaign update. Forwards a raw LinkedIn campaign-group partial-update body to adCampaignGroups as-is. Use the dedicated status/budget/rename nodes first; this is the advanced fallback for fields without one. In LinkedIn's API these are campaign groups; LinkedIn's newer UI naming calls them campaigns.

| | |
| - | - |
| **App** | LinkedIn Ads |
| **Operation ID** | `linkedin_ads_update_campaign` |
| **Type** | Action |
| **Connection** | `linkedin_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 the LinkedIn Ads account that owns the campaign. |
| `campaign_id` | string or SelectItem | Yes | - | The campaign to update. In LinkedIn's API this is a campaign group (adCampaignGroups). The id goes in the request path, not in update\_payload. |
| `update_payload` | object or string | Yes | - | Raw LinkedIn campaign-group partial-update body, sent to LinkedIn as-is. Use LinkedIn's documented shape: \{"patch": \{"$set": \{...}, "$delete": \[...]}}. Prefer the dedicated nodes when they exist (linkedin\_ads\_update\_campaign\_status, linkedin\_ads\_update\_campaign\_budget, linkedin\_ads\_rename\_campaign). For budgets you must include the full amount object, e.g. \{"\$set": \{"totalBudget": \{"amount": "100", "currencyCode": "USD"}}} -- this node does not resolve currency for you. Accepts a JSON object or JSON string. |
| `dry_run` | boolean | No | `False` | When true, return the resolved update body without calling LinkedIn. |

### 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 the campaign id, the forwarded payload, and LinkedIn's response.

**Fields**: `campaign_id`, `payload`, `dry_run`, `response`


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