keywords | array of string | No | - | CustomSegment only: keyword phrases as an array, JSON array, or comma/newline-separated text, e.g. [“NIST compliance”, “CMMC certification”]. Microsoft supports 1–1,000 phrases, each up to 100 characters. Uses Bulk Text internally. On update this replaces the entire keyword list; omission preserves it. Do not combine with custom_segment_catalog_list. Semicolons cannot be used inside a phrase. |
custom_segment_catalog_list | array or string | No | - | CustomSegment only: native CustomSegmentCatalogList array or JSON string, e.g. [{“CatalogId”:123}]. Use existing Microsoft catalog definitions; CatalogName is not assumed to represent arbitrary keyword text. Use keywords for keyword-based segments. Updates replace this definition; omission preserves it. |
account | object or array of object or MicrosoftAdsAccountItem or string or integer | Yes | - | Microsoft Ads account that owns the audience. |
audience_id | string or integer | Yes | - | ID of the audience to update. microsoft_ads_list_audiences returns these. |
audience_type | enum (RemarketingList, Custom, CustomSegment) | Yes | - | The audience’s existing type, which Microsoft requires on every update. Supports remarketing lists, DMP-based custom audiences (Custom), and keyword/catalog custom segments (CustomSegment). |
name | string | No | - | New audience name. |
description | string | No | - | New description. |
membership_duration | integer | No | - | How many days someone stays in the audience. 1 to 180 for a remarketing list, up to 390 for a customer list where -1 means never expire. |
scope | enum (Account, Customer) | No | - | Account keeps the audience here, Customer shares it across the customer. |
rule | object or string | No | - | RemarketingList only: replacement rule deciding who joins, in the same shape microsoft_ads_create_audience takes. This replaces the existing rule outright, so any group to be kept has to be sent again. |