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

> Low-level operation to update tiktok ads, supports both regular and Upgraded Smart+ ads; Markifact checks Smart+ first and resolves the correct endpoint automatically

Low-level operation to update tiktok ads, supports both regular and Upgraded Smart+ ads; Markifact checks Smart+ first and resolves the correct endpoint automatically. Use tiktok\_ads\_list\_ads first to inspect the current payload. Use PATCH\_FIELDS for TikTok-supported incremental fields and REPLACE\_PAYLOAD for full payload updates. Use focused operations first when available for example tiktok\_ads\_rename\_ad

|                       |                         |
| --------------------- | ----------------------- |
| **App**               | TikTok Ads              |
| **Operation ID**      | `tiktok_ads_update_ad`  |
| **Type**              | Action                  |
| **Connection**        | `tiktok_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 TikTok Ads account (advertiser) that owns the ad.                                                                                                                                                                                                                                           |
| `ad_id`          | string or SelectItem       | Yes      | -              | TikTok ad ID to update.                                                                                                                                                                                                                                                                                |
| `update_mode`    | string or SelectableOption | No       | `PATCH_FIELDS` | Use PATCH\_FIELDS for incremental updates. For manual ads, TikTok only supports patching ad\_name, identity, media, music, TikTok item, and ad text fields. Use REPLACE\_PAYLOAD for full manual ad creative updates or full Smart+ payload updates.                                                   |
| `update_payload` | object or string           | Yes      | -              | TikTok ad fields to update as an object or JSON string. Examples: ad\_name, ad\_text, ad\_texts, video\_id, image\_ids, creative\_list. Use tiktok\_ads\_list\_ads first when you need the current payload or exact field names. Exclude advertiser\_id, ad\_id, smart\_plus\_ad\_id, and adgroup\_id. |
| `dry_run`        | boolean                    | No       | `False`        | When true, do not call TikTok. Return the resolved endpoint, detected ad mode, 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. |

### SelectableOption

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

## Output

**Type**: `Dict`

Returns ad\_id, detected ad\_mode, endpoint, updated\_fields, final payload, and dry\_run status.
