工具 API
adgroup_ update
Updates an ad group via `POST /open_api/v1.3/adgroup/update/`. Not all ad group settings are editable after creation (for example, placement). This endpoint uses full-replacement update mode, not incremental update: even if you update only one field, you must resubmit all required data fields or you may overwrite existing values. Exceptions explicitly called out by the docs include `share_disabled`, `zipcode_ids`, and `purchase_intention_keyword_ids`, which support incremental updates. If `special_industries` is set at the campaign level, the ad group must still satisfy the targeting requirements for special ad categories. The docs also note feature gating and immutability for specific capabilities, including allowlist-only features such as deep funnel optimization with CRM events, automated keywords in Search Ads Campaigns, contextual targeting, some postal-code targeting markets, and Brand Safety updates.
调用信息
- 工具标识
- tiktok-ads.adgroup_update
- 服务提供方
- TikTok 广告
- 平均响应
- 0 ms
- 近 7 天调用
- 0
输入参数
actionsList of behavioral targeting objects.
adgroup_id必填Ad group ID.
adgroup_nameAd group name. Maximum length is 512 characters and emoji are not allowed.
advertiser_id必填Advertiser ID.
age_groupsAge groups to target. In some scenarios, targeting `AGE_13_17` in the U.S., Latin America, the EEA, the UK, Switzerland, or Canada is not allowed. If you are affected by these restrictions and leave `age_groups` unset or pass `[]` without setting `exclude_age_under_eighteen=true`, the request will fail. In those restricted scenarios, if you would otherwise leave `age_groups` unset or empty, TikTok recommends also setting `exclude_age_under_eighteen=true` to avoid errors.
audience_idsAudience IDs to include. Use `/dmp/custom_audience/list/` to obtain valid IDs.
audience_ruleAudience rules. Valid when `objective_type` is `TRAFFIC` or `APP_PROMOTION`.
audience_typeRequired and valid only when campaign-level `app_promotion_type` is `APP_RETARGETING`; not supported otherwise. App retargeting audience type. You must use the same setting as when the ad group was created. Supported value is `NEW_CUSTOM_AUDIENCE`. If you want an empty retargeting custom audience, do not pass `audience_ids` or `excluded_audience_ids`. For a non-empty retargeting custom audience, pass `audience_ids`, `excluded_audience_ids`, or both, but the two lists cannot contain the same IDs.
automated_keywords_enabledValid only when campaign-level `is_search_campaign` is `true`. Whether to let the system automatically generate keywords after ads are added. Default is `false`. This feature is allowlist-only for Search Ads Campaigns.
bid_priceValid only when `bid_type` is `BID_TYPE_CUSTOM` and `billing_event` is `CPC`, `CPM`, or `CPV`. Bid price for Cost Cap bidding. When CBO (`budget_optimize_on`) is on, TikTok suggests using the same bid across ad groups in the same campaign. `bid_price` must be lower than both campaign-level and ad-group-level budget.
bid_typeBidding strategy that controls cost management, spending, and delivery. This field cannot be updated when Campaign Budget Optimization (`budget_optimize_on=TRUE`) is enabled.
blocked_pangle_app_idsPangle app block list IDs. Effective only when Pangle placement is selected. Use the `app_package_id` returned by the Pangle block list endpoint.
brand_safety_typeBrand safety type. Use `/tool/region/` to determine the countries and regions available for the chosen brand safety setting. Updating Brand Safety settings (`brand_safety_type`, `category_exclusion_ids`, and `vertical_sensitivity_id`) is allowlist-only. Pre-bid first-party Brand Safety for `APP_PROMOTION`, `WEB_CONVERSIONS`, `TRAFFIC`, `LEAD_GENERATION`, and `PRODUCT_SALES` in Auction ads is also allowlist-only.
budgetAdvertising budget. Cannot be updated when Campaign Budget Optimization (`budget_optimize_on`) is on. The new budget must be at least 105% of current spend; use reporting endpoints to retrieve the `spend` metric if needed.
carrier_idsCarrier IDs to target. A carrier is valid only when its `in_use` field is `true`, and carriers must be consistent with the targeted locations.
catalog_authorized_bc_idFor catalogs in Business Center, specify the Business Center ID that the catalog belongs to. Starting June 30th, 2024, when `product_source` is `STORE`, this field is ignored on update. If you update an existing ad group where `product_source` is `STORE`, any existing `catalog_authorized_bc_id` will no longer be returned.
category_exclusion_idsContent exclusion category IDs. This field can be updated only if the ad group's `schedule_start_time` has not been reached, or if it has been reached but `operation_status` is `DISABLE` and cost is 0; use `/adgroup/get/` to check those values. Use `/tool/content_exclusion/get/` to retrieve `excluded_category_list`. Updating Brand Safety settings is allowlist-only.
comment_disabledWhether to allow comments on ads in this ad group on TikTok.
contextual_tag_idsContextual tag IDs. Use `/tool/contextual_tag/get/` to retrieve valid tags. This is an allowlist-only feature. Supported only when campaign `objective_type` is `REACH` or `VIDEO_VIEWS`, and not supported when `brand_safety_type` is `THIRD_PARTY`.
conversion_bid_priceValid only when `bid_type` is `BID_TYPE_CUSTOM` and `billing_event` is `OCPM`. Target cost per conversion for oCPM. `conversion_bid_price` must be lower than both campaign-level and ad-group-level budget.
daypartingAd delivery schedule as a 48×7-character string, where each character maps to a 30-minute slot from Monday through Sunday. `1` means deliver and `0` means do not deliver. If omitted, all `0`, or all `1`, delivery is treated as full-time.
deep_bid_typeBidding strategy for in-app events. When `secondary_optimization_event` is specified, you must also pass `deep_bid_type`.
deep_cpa_bidBid price used after choosing an in-app-event bidding strategy, for example `VO_MIN`.
deep_funnel_event_sourceRequired when `deep_funnel_optimization_status` is `ON`. Event source type for deep funnel optimization. When deep funnel optimization is enabled, you cannot update `deep_funnel_event_source`, `deep_funnel_event_source_id`, or `deep_funnel_optimization_event`. `PIXEL` uses a Pixel, `OFFLINE` uses an Offline Event Set, and `CRM` uses a CRM Event Set.
deep_funnel_event_source_idRequired when `deep_funnel_optimization_status` is `ON`. Event source ID. If `deep_funnel_event_source` is `PIXEL`, pass a Pixel ID from `/pixel/list/`. If `OFFLINE`, pass an Offline Event Set ID from `/offline/get/`. If `CRM`, pass a CRM Event Set ID from `/crm/list/`. When deep funnel optimization is enabled, you cannot update `deep_funnel_event_source`, `deep_funnel_event_source_id`, or `deep_funnel_optimization_event`.
deep_funnel_optimization_eventRequired when `deep_funnel_optimization_status` is `ON`. Deep funnel optimization event. Supported values depend on the chosen event source; for Pixels you can also inspect `optimization_event` returned by `/pixel/list/`. Example: `SHOPPING`.
deep_funnel_optimization_statusValid only when `promotion_type` is `LEAD_GENERATION`. Controls deep funnel optimization, which optimizes both upper-funnel and deeper-funnel events. If set to `ON`, you must also provide `deep_funnel_event_source`, `deep_funnel_event_source_id`, and `deep_funnel_optimization_event`. Default is `OFF`. Deep funnel optimization with CRM events is allowlist-only; Pixel and Offline event sources are generally available.
device_model_idsDevice model IDs to target. Use `/tool/device_model/` to retrieve valid IDs and device statuses; only active devices (`is_active=true`) can be used. Do not set this field together with `device_price_ranges`.
device_price_rangesDevice price range targeting. Values must be multiples of 50; `10000` means 1000+. Important: the upper limit you set is increased by 50 for the actual applied upper limit shown in Ads Manager. For example, `[0,250]` actually means `[0,300]`.
exclude_age_under_eighteenWhether to exclude users younger than 18. Use only in scenarios where targeting `AGE_13_17` in the U.S., Latin America, the EEA, the UK, Switzerland, or Canada is not supported; in other scenarios this field is not supported. Default is `false`. See `age_groups` for the dependency.
excluded_audience_idsAudience IDs to exclude. Use `/dmp/custom_audience/list/` to obtain valid IDs.
excluded_custom_actionsCustom actions to exclude for filtering shopping-ads retargeting audiences. When `shopping_ads_retargeting_type` is `LAB3`, you must pass either `included_custom_actions` or `excluded_custom_actions`.
excluded_pangle_audience_package_idsPangle audience package IDs to exclude. Valid only for Pangle placement. Obtain `package_id` values from `/pangle_audience_package/get/` with `bind_type=EXCLUDE`. Do not pass this field together with `included_pangle_audience_package_ids`.
frequencyUsed with `frequency_schedule` to control how often people see the ad. Available only for `REACH` ads. Both must satisfy `1 <= frequency <= 1000` and `1 <= frequency_schedule <= 30`. Example: `frequency=2` and `frequency_schedule=3` means show ads no more than twice every 3 days.
frequency_scheduleUsed with `frequency` to control ad frequency. Available only for `REACH` ads.
genderGender to target.
household_incomeHousehold income targeting. Not supported in Reach & Frequency ads and works only on TikTok placement in the U.S.
included_custom_actionsCustom actions to include for filtering shopping-ads retargeting audiences. When `shopping_ads_retargeting_type` is `LAB3`, you must pass either `included_custom_actions` or `excluded_custom_actions`.
included_pangle_audience_package_idsPangle audience package IDs to include. Valid only for Pangle placement. Obtain `package_id` values from `/pangle_audience_package/get/` with `bind_type=INCLUDE`. Do not pass this field together with `excluded_pangle_audience_package_ids`.
interest_category_idsGeneral interest category IDs for audience targeting. Search or list them with `/targeting/search/` (recommended) or `/tool/interest_category/`; get recommendations by industry with `/tool/targeting_category/recommend/`.
interest_keyword_idsAdditional interest category IDs for audience targeting. Search them with `/targeting/search/` (recommended) or `/tool/interest_keyword/recommend/`.
ios14_targetingRequired and must be `IOS14_PLUS` when campaign-level `campaign_type` is `IOS14_CAMPAIGN`. iOS targeting mode. `UNSET` targets iOS 14.4 or earlier. `IOS14_MINUS` targets versions earlier than iOS 14.0. `IOS14_PLUS` targets iOS 14.5+ and is supported only for Dedicated Campaigns; once set to `IOS14_PLUS`, this field cannot be updated. `ALL` targets iOS 14.5+ and is supported only for iOS App Retargeting ads and iOS retargeting Video Shopping Ads with catalog product source and app optimization. If targeting iOS 14.5+ in App Retargeting ads, set `ios14_targeting=ALL` and `min_ios_version` to `14.5` or later, otherwise the request fails. For iOS App Retargeting ads (`app_promotion_type=APP_RETARGETING` and `promotion_type=APP_IOS`) and iOS retargeting Video Shopping Ads (`shopping_ads_type=VIDEO`, `product_source=CATALOG`, `promotion_type=APP_IOS`, and `shopping_ads_retargeting_type` is not `OFF`), `ALL` is used regardless of the value passed. In other cases the default is `UNSET`. Once set to `IOS14_PLUS`, these requirements must be met: `app_id` must be an iOS app ID from `/app/list/`, `operating_systems` must be `["IOS"]`, `min_ios_version` must be provided and consistent, `optimization_goal` must be `CLICK`, `INSTALL`, `IN_APP_EVENT`, or `VALUE`, `min_android_version`, `shopping_ads_retargeting_type`, and `shopping_ads_retargeting_actions_days` must not be specified, and at the ad level `deeplink_type` must not be `DEFERRED_DEEPLINK`.
is_hfssWhether the promoted content is HFSS (High Fat, Salt, Sugar). If the ad promotes or prominently features an HFSS product or brand, set this to `true`. In regulated regions, HFSS ads must target only users age 18+. You can set this field to `true` when targeting locations include the UK, Australia, New Zealand, or the European Union. This setting can only be updated from `false` to `true`, not the reverse.
is_lhf_complianceWhether the promoted content complies with LHF (Less Healthy Foods) regulations. Setting this to `true` confirms that any food or drink products advertised in the UK comply with the 2024 Less Healthy Foods Regulations and other applicable laws. Starting January 1st, 2026, if targeted locations include the UK and `is_hfss` is `true`, this field is required and must be `true`.
isp_idsInternet service provider IDs to target. Valid only when you also provide a valid country- or region-level `location_ids` value. Use `/tool/targeting/list/` to get ISP IDs for a location. When `isp_ids` is set, `placements` cannot be only `PLACEMENT_GLOBAL_APP_BUNDLE`.
languagesLanguage codes to target. If omitted or empty, language targeting is not limited. Retrieve valid codes from `/tool/language/`.
location_idsLocation IDs to target. You must provide `location_ids`, `zipcode_ids`, or both. Maximum 3,000 combined IDs across `location_ids`, zip codes, and postal codes per ad group. Use `/tool/targeting/search/` or `/tool/region/` to find valid locations. Overlapping locations are not supported (for example, the U.S. and California together). If the ad group originally targeted U.S. locations via `location_ids` or `zipcode_ids`, you can update to other U.S. locations but cannot remove all U.S. locations and target only non-U.S. countries. If `TIKTOK_LITE` is included in `tiktok_subplacements`, you cannot update the ad group to exclude Japan and South Korea. To remove all location IDs, set `location_ids` to `[]` and simultaneously provide `zipcode_ids`, because targeted locations remain mandatory.
min_android_versionMinimum Android version.
min_ios_versionRequired when `ios14_targeting` is specified. Minimum iOS version; it must also be consistent with `ios14_targeting` when required.
network_typesDevice connection types to target.
next_day_retentionDay-2 retention ratio. Valid only when `placements` is `PLACEMENT_PANGLE` and `secondary_optimization_event` is `NEXT_DAY_OPEN`. Formula: `next_day_retention = conversion_bid_price / deep_cpa_bid`. Range is `(0,1]`. If you use this field, pass `conversion_bid_price`, `deep_bid_type`, and `next_day_retention` together and make sure the values satisfy the formula, or unexpected errors may occur.
operating_systemsDevice operating systems to target. Only one value is allowed. Required when campaign `objective_type` is `APP_PROMOTION`, or when campaign `objective_type` is `TRAFFIC` and campaign `promotion_type` is `APP_IOS` or `APP_ANDROID`.
pacingPacing mode. `PACING_MODE_SMOOTH` spreads budget evenly across the schedule; `PACING_MODE_FAST` spends as quickly as possible. When CBO (`budget_optimize_on`) is on, this setting is ignored and becomes `PACING_MODE_SMOOTH`; otherwise this field is required.
purchase_intention_keyword_idsPurchase intention category IDs for targeting audiences interested in purchases related to a content category. Use `/targeting/search/` to obtain valid IDs. This field supports incremental updates.
roas_bidRequired when `deep_bid_type` is `VO_MIN_ROAS`. ROAS goal for Value Optimization. Range is `0.01-10` for in-app advertising with `objective_type=APP_PROMOTION`, `optimization_goal=VALUE`, and `optimization_event=AD_REVENUE_VALUE`; `0.01-20` for Product Shopping Ads with `shopping_ads_type=PRODUCT_SHOPPING_ADS` and `product_source=STORE`; otherwise `0.01-1000`.
saved_audience_idSaved Audience ID. Supported only when campaign `special_industries` for Housing, Employment, or Credit is not set, campaign `objective_type` is not `PRODUCT_SALES`, TikTok placement is selected (`placement_type=PLACEMENT_TYPE_AUTOMATIC` or `placement_type=PLACEMENT_TYPE_NORMAL` with `PLACEMENT_TIKTOK` in `placements`), and `auto_targeting_enabled` is not `true`. Create the Saved Audience first with `/dmp/saved_audience/create/`; its advertiser must match this ad group's `advertiser_id`. Do not pass `saved_audience_id` together with targeting options already contained in that Saved Audience (for example `gender`), or the request will fail. Device settings in the Saved Audience must also be compatible with the ad group; for example, an Android Saved Audience conflicts with `ios14_targeting=IOS14_PLUS`, and an iOS Saved Audience conflicts with Android app promotion setups. If troubleshooting a conflict, use `/dmp/saved_audience/list/` to inspect the Saved Audience. If the Saved Audience was created with `age_groups`, the same age restriction rules still apply here.
schedule_end_timeRequired when `schedule_type` is `SCHEDULE_START_END`. End time in UTC+0, format `YYYY-MM-DD HH:MM:SS`. It cannot be later than `2038-01-01 00:00:00`.
schedule_start_timeRequired when `schedule_type` is passed. Start time in UTC+0, format `YYYY-MM-DD HH:MM:SS`. It can be up to 12 hours earlier than the current time, but not later than `2028-01-01 00:00:00`. This field cannot be updated if the ad group's current `schedule_start_time` is earlier than now.
schedule_typeSchedule type. If `SCHEDULE_START_END`, you must provide both `schedule_start_time` and `schedule_end_time`. If `SCHEDULE_FROM_NOW`, provide only `schedule_start_time` and the end time is automatically set to 10 years later.
search_keywordsValid only in Search Ads Campaigns. List of search keywords used to match ads with user search terms. Maximum 1,000 items per ad group. To verify that the campaign is a Search Ads Campaign, call `/campaign/get/` and check `is_search_campaign`. If search keywords or targeted locations are updated, the keywords will go through review again.
search_result_enabledWhether to include ads in Search Ads so they can show when users search for your business on TikTok. You can use this field only when: campaign `objective_type` is `APP_PROMOTION`, `WEB_CONVERSIONS` with `is_search_campaign=false`, `TRAFFIC`, or `LEAD_GENERATION`; if `objective_type` is `LEAD_GENERATION`, `promotion_type` must be `LEAD_GENERATION`; and placement is `PLACEMENT_TYPE_AUTOMATIC` or `PLACEMENT_TYPE_NORMAL` with `PLACEMENT_TIKTOK` included in `placements`. This field can be used to update the value from `false` to `true` only under those conditions. If `is_search_campaign` is `true`, you cannot update it from `false` to `true`.
secondary_optimization_eventSecondary goal when `optimization_goal` is `INSTALL` or `VALUE`. When this field is specified, you must also pass `deep_bid_type`.
share_disabledWhether to disable sharing of ads in this ad group to third-party platforms. `true` is valid only when all of these are met: campaign `objective_type` is one of `APP_PROMOTION`, `WEB_CONVERSIONS`, `REACH`, `TRAFFIC`, `VIDEO_VIEWS`, `ENGAGEMENT`, or `LEAD_GENERATION`; and placement is either `placement_type=PLACEMENT_TYPE_AUTOMATIC` or `placement_type=PLACEMENT_TYPE_NORMAL` with `placements` set to `PLACEMENT_TIKTOK`. This field supports incremental updates.
shopping_ads_retargeting_actions_daysValid time range for the audience action to retarget. Required when `shopping_ads_retargeting_type` is `LAB1` or `LAB2`. Allowed values: `1`, `2`, `3`, `7`, `14`, `30`, `60`, `90`, `180`.
shopping_ads_retargeting_custom_audience_relationValid only when all are true: `shopping_ads_type=VIDEO`, `product_source=CATALOG`, `shopping_ads_retargeting_type` is `LAB1`, `LAB2`, or `LAB3`, and `audience_ids` is provided. Controls the logical relation between the Video Shopping Ads retargeting audience and the custom audience in `audience_ids`: `OR` combines them, `AND` intersects them. If the custom audience is later removed, this field is automatically reset to null.
shopping_ads_retargeting_typeValid when `shopping_ads_type` is `VIDEO` and `product_source` is `CATALOG`. Shopping ads retargeting type: `LAB1` retargets users who viewed products or added to cart but did not purchase, `LAB2` retargets users who added to cart but did not purchase, `LAB3` uses custom combinations, and `OFF` disables retargeting.
smart_audience_enabledWhether to enable Smart Audience.
smart_interest_behavior_enabledWhether to enable Smart interests & behaviors.
spending_powerSpending power targeting. `HIGH` targets users who typically spend more on TikTok ads than average users. Not supported when campaign `objective_type` is `PRODUCT_SALES` or `RF_REACH`. Requires TikTok placement via `placement_type=PLACEMENT_TYPE_AUTOMATIC` or `placements` including `PLACEMENT_TIKTOK`; if Pangle is also selected, spending power does not take effect on Pangle. When `auto_targeting_enabled=true`, `spending_power` is automatically set to `ALL`.
vertical_sensitivity_idVertical sensitivity category ID. This field can be updated only if the ad group's `schedule_start_time` has not been reached, or if it has been reached but `operation_status` is `DISABLE` and cost is 0; use `/adgroup/get/` to check those values. Use `/tool/content_exclusion/get/` to retrieve `vertical_sensitivity_list`. Updating Brand Safety settings is allowlist-only.
zipcode_idsZip code IDs or postal code IDs to target. You must provide `location_ids`, `zipcode_ids`, or both. Maximum 3,000 combined IDs across `location_ids`, zip codes, and postal codes per ad group. Obtain zip/postal IDs from `/tool/targeting/search/` using `geo_id` where `geo_type=ZIP_CODE`. Supported for U.S. zip codes and for postal codes in Canada, Brazil, Indonesia, Thailand, and Vietnam; Brazil, Indonesia, Thailand, and Vietnam postal-code targeting is allowlist-only. Not supported when campaign `special_industries` is enabled, when campaign `objective_type` is `RF_REACH`, or when TikTok placement is not included in `placements`. Overlapping locations are not supported. If the ad group originally targeted U.S. locations via `location_ids` or `zipcode_ids`, you can update to other U.S. locations but cannot remove all U.S. locations and target only non-U.S. countries. To remove all zip/postal IDs, set `zipcode_ids` to `[]` and simultaneously provide `location_ids`. This field supports incremental updates.