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

> Updates a Meta custom audience (rename, description, website rule, retention window, opt-out link, customer file source, lookalike spec, and more) or permanently deletes it via action='delete'

Updates a Meta custom audience (rename, description, website rule, retention window, opt-out link, customer file source, lookalike spec, and more) or permanently deletes it via action='delete'. Fields are sent to Meta as-is; use meta\_list\_custom\_audiences to find audience\_id.

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

## Inputs

| Field | Type | Required | Default | Description |
| - | - | - | - | - |
| `audience_id` | string | Yes | - | Custom audience ID, e.g. from meta\_list\_custom\_audiences |
| `action` | string or SelectableOption | No | `update` | 'update' changes the provided fields; 'delete' permanently deletes the audience (it is removed from any ad sets still using it) and ignores all other fields. |
| `name` | string | No | - | New audience name |
| `description` | string | No | - | New audience description |
| `rule` | object or string | No | - | Replacement website-audience rule, sent to Meta as-is. Same Audience Rules shape as meta\_create\_custom\_audience: \{'inclusions': \{'operator': 'or', 'rules': \[\{'event\_sources': \[\{'type': 'pixel', 'id': '\<PIXEL\_ID>'}], 'retention\_seconds': 2592000, 'filter': \{...}}]}}. Only valid for website custom audiences. |
| `retention_days` | integer | No | - | New lookback window in days (Meta caps this per audience type, e.g. 180 for website, 365 for engagement) |
| `opt_out_link` | string | No | - | URL where people can opt out of the audience |
| `customer_file_source` | string or SelectableOption | No | - | Source of customer data, for customer-list audiences |
| `allowed_domains` | array of string | No | - | Domains allowed as traffic sources for the audience |
| `tags` | array of string | No | - | Tags to organize the audience |
| `use_in_campaigns` | boolean | No | - | |
| `product_set_id` | string | No | - | Product set ID, for product audiences |
| `lookalike_spec` | object or string | No | - | Lookalike spec JSON, for lookalike audiences, e.g. \{"type": "similarity", "origin\_audience\_id": "\<ID>", "country": "US"} |

### SelectableOption

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

## Output

**Type**: `Dict`

Returns the audience id, action performed, and updated fields.

**Fields**: `audience_id`, `action`, `updated_fields`


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