← 返回目录
📁 Use Cases › Campaign creation › Create an Upgraded Smart+ Campaign › Create Upgraded Smart+ Web Campaigns

创建常规升级版 Smart+ 网站推广系列

常规升级版 Smart+ 网站推广系列是指不使用商品库的升级版 Smart+ 网站推广系列。

对于此类推广系列,你可以在推广系列层级将参数 catalog_enabled 设置为 false,或者不传入 catalog_enabled。

步骤

1. 创建推广系列

使用 /smart_plus/campaign/create/ 接口创建推广系列。

需确保满足以下要求。完整参数列表参见 /smart_plus/campaign/create/ 接口。

设置 要求 参数 如何配置参数
推广目标 销量 objective_type WEB_CONVERSIONS
销售目标页面 网站 sales_destination WEBSITE
iOS 14 专属推广系列 未启用 campaign_type REGULAR_CAMPAIGN 或不传入
app_id 不传入
campaign_app_profile_page_state 不传入
使用商品库 未启用

要在升级版 Smart+ 网站推广系列中使用商品库,请查看以下版块:
catalog_enabled false 或不传入
推广系列名称 传入合法名称 campaign_name 传入合法值
特殊广告类别
(可选)
未启用或已启用

注意:此设置仅支持在美国或加拿大注册的广告主使用。

special_industries 不传入或传入合法值
推广系列预算策略 使用以下任意类型:
  • 自动推广系列预算:你的预算将自动分配给各广告组并自动优化。所有广告组必须使用相同的预算和优化设置。
  • 自定义广告组预算:每个广告组分别使用不同的预算和优化设置,从而精确控制各广告组的消耗。
budget_optimize_on
  • 要设置自动推广系列预算,请将此字段设置为 true 或不传入。
  • 要设置自定义广告组预算,请将此字段设置为 false。
推广系列预算模式
  • 如果推广系列预算策略为自动推广系列预算,请传入以下任意一种模式:
    • 日预算
    • 总预算
  • 如果推广系列预算策略为自定义广告组预算:
    • 未启用
budget_mode
  • 当 budget_optimize_on 为 true 或不传入时,使用以下任意值:
    • BUDGET_MODE_TOTAL
    • BUDGET_MODE_DYNAMIC_DAILY_BUDGET
  • 当 budget_optimize_on 为 false 时:
    • 不传入
自动增加预算(当推广系列预算策略为自动推广系列预算,且推广系列预算模式为日预算时) 选择以下任意选项:
  • 已启用
  • 未启用
budget_auto_adjust_strategy 当 budget_optimize_on 为 true 或不传入,且 budget_mode 为 BUDGET_MODE_DYNAMIC_DAILY_BUDGET 时:
  • 要启用该设置,使用以下值:
    • AUTO_BUDGET_INCREASE。允许系统在广告效果出色且满足目标 CPA、第 0 天目标 ROAS 和预算要求时自动增加预算。如果你的预算利用率至少达到 90%,日预算将自动增加 20%,每天最多可增加 10 次。你的日预算将在每天重置为原来的日预算。
  • 要禁用该设置:
    • 不传入

    注意:“自动增加预算”目前为白名单功能。如需使用此功能,请联系你的 TikTok 销售代表。

推广系列预算
  • 如果推广系列预算策略为自动推广系列预算,请传入合法预算。
  • 如果推广系列预算策略为自定义广告组预算:
    • 未启用
budget
  • 当 budget_optimize_on 为 true 或不传入时,传入合法值。
  • 当 budget_optimize_on 为 false 时:
    • 不传入

示例

请求

(code curl http)
curl --location --request POST 'https://business-api.tiktok.com/open_api/v1.3/smart_plus/campaign/create/' \
--header 'Access-Token: {{Access-Token}}' \
--header 'Content-Type: application/json' \
--data '{
    "advertiser_id": "{{advertiser_id}}",
    "request_id": "{{request_id}}",
    "objective_type": "WEB_CONVERSIONS",
    "sales_destination": "WEBSITE",
    "campaign_name": "{{campaign_name}}",
    "budget": {{budget}}
}'
(/code)

返回

(code curl http)
{
    "code": 0,
    "message": "OK",
    "request_id": "{{request_id}}",
    "data": {
        "advertiser_id": "{{advertiser_id}}",
        "budget": {{budget}},
        "budget_mode": "BUDGET_MODE_DYNAMIC_DAILY_BUDGET",
        "budget_optimize_on": true,
        "campaign_id": "{{campaign_id}}",
        "campaign_name": "s++_campaign_web_non_catalog_0723",
        "campaign_type": "REGULAR_CAMPAIGN",
        "create_time": "{{create_time}}",
        "modify_time": "{{modify_time}}",
        "objective_type": "WEB_CONVERSIONS",
        "operation_status": "ENABLE",
        "sales_destination": "WEBSITE",
        "secondary_status": "CAMPAIGN_STATUS_ENABLE",
        "smart_plus_adgroup_mode": "MULTIPLE"
    }
}
(/code)

2. 创建广告组

使用 /smart_plus/adgroup/create/ 接口创建广告组。

需确保满足以下要求。完整参数列表参见 /smart_plus/adgroup/create/ 接口。

设置 要求 参数 如何配置参数
广告组名称 传入合法名称 adgroup_name 传入合法值
优化和出价
· 位置
网站 promotion_type WEBSITE
promotion_target_type 不传入
优化和出价
· 目标
使用以下任意类型:
  • 点击
  • 转化
  • 落地页浏览量
  • 价值

注意:如果你选择推广系列预算模式,此设置必须在同一推广系列内的所有广告组中保持一致。

optimization_goal 使用以下任意值:
  • CLICK
  • CONVERT
  • TRAFFIC_LANDING_PAGE_VIEW
  • VALUE

注意:如果你选择推广系列预算模式,此设置必须在同一推广系列内的所有广告组中保持一致。

优化和出价
· 事件
  · 数据连接
  • 当目标为转化或价值时,需传入合法 Pixel。
  • 当目标为点击或落地页浏览量时,不支持 Pixel。
pixel_id
  • 当 optimization_goal 设置为 CONVERT 或 VALUE 时,此为必填字段。
    • 若想获取你的广告账号内的 Pixel 列表,需使用 /pixel/list/ 接口。
  • 当 optimization_goal 设置为 CLICK 或 TRAFFIC_LANDING_PAGE_VIEW 时,不支持该字段。
优化和出价
· 事件
  · 优化事件
  • 当目标为转化或价值时,此为必填字段。
    • 当目标为价值时,将优化事件指定为支付完成。
    • 当目标为转化时,传入以下任意项:
      • 标准事件
      • 自定义转化
  • 当目标为点击或落地页浏览量时,不支持此字段。

注意:如果你选择推广系列预算模式,此设置(如传入)必须在同一推广系列内的所有广告组中保持一致。

optimization_event
custom_conversion_id
  • 当 optimization_goal 设置为 CONVERT 或 VALUE 时,此为必填字段。
    • 当 optimization_goal 设置为 VALUE 时,将此字段设置为 SHOPPING。
    • 当 optimization_goal 设置为 CONVERT 时,传入以下任意项:
      • 通过 optimization_event 设置标准事件。
      • 通过 custom_conversion_id 和 optimization_event 设置自定义转化以及关联的转化事件。
        • 若想获取与 Pixel 关联的自定义转化列表,需使用 /custom_conversion/list/ 接口。
          • 要确认自定义转化是否符合广告组创建的资格条件:
            • 确保返回的 optimization_event 与广告组创建期间传入的 optimization_event 一致。
            • 确保 activity_status 为 NO_RECENT_ACTIVITY 或 ACTIVE。
  • 当 optimization_goal 设置为 CLICK 时,不支持该字段。
  • 当 optimization_goal 设置为 TRAFFIC_LANDING_PAGE_VIEW 时,可忽略该字段。随后 optimization_event 将默认设置为 LANDING_PAGE_VIEW。

注意:当推广系列层级的 budget_optimize_on 为 true 时,optimization_event 和 custom_conversion_id(如传入)必须在同一推广系列内的所有广告组中保持一致。

优化和出价
· 出价策略、
(可选)目标 CPA
和(可选)目标 ROAS
  • 如果目标为点击、转化或落地页浏览量,出价策略可为最大投放量或成本上限。
    • 对于成本上限出价策略,你需要同时传入目标 CPA。
  • 如果目标为价值,出价策略可为最高价值或最低 ROAS。
    • 对于最低 ROAS 出价策略,你需要同时传入目标 ROAS。

    注意:

    • 出价策略必须在同一推广系列内的所有广告组中保持一致。
    • 如果你选择推广系列预算模式,目标 CPA 和目标 ROAS(如传入)必须在同一推广系列内的所有广告组中保持一致。
    • 目标 CPA 和目标 ROAS 出价策略仅支持采用日预算模式的推广系列或广告组。
bid_type
bid_price
conversion_bid_price
deep_bid_type
roas_bid
  • 如果 optimization_goal 为 CLICK、CONVERT 或 TRAFFIC_LANDING_PAGE_VIEW:
    • 将 bid_type 设置为 BID_TYPE_CUSTOM 或 BID_TYPE_NO_BID。请勿传入 deep_bid_type 和 roas_bid。
      • 如果 optimization_goal 为 CONVERT 或 TRAFFIC_LANDING_PAGE_VIEW,且 bid_type 为 BID_TYPE_CUSTOM,请同时传入 conversion_bid_price。
      • 如果 optimization_goal 为 CLICK 且 bid_type 为 BID_TYPE_CUSTOM,请同时传入 bid_price。
  • 如果 optimization_goal 为 VALUE,将 deep_bid_type 设置为 VO_HIGHEST_VALUE 或 VO_MIN_ROAS,并将 bid_type 设置为 BID_TYPE_NO_BID。请勿传入 conversion_bid_price 和 bid_price。
    • 如果你将 deep_bid_type 设置为 VO_MIN_ROAS,请同时传入 roas_bid。

    注意:

    • bid_type 必须在同一推广系列内的所有广告组中保持一致。
    • 当推广系列层级的 budget_optimize_on 为 true 时,以下设置(如传入)必须在同一推广系列内的所有广告组中保持一致。
      • conversion_bid_price
      • bid_price
      • deep_bid_type
      • roas_bid
    • 在以下任意场景中,你只能将 bid_type 设置为 BID_TYPE_CUSTOM 或将 deep_bid_type 设置为 VO_MIN_ROAS:
      • 在推广系列层级,budget_mode 为 BUDGET_MODE_DYNAMIC_DAILY_BUDGET
      • 在广告组层级,budget_mode 为 BUDGET_MODE_DYNAMIC_DAILY_BUDGET
优化和出价
· 归因设置
从支持的归因设置选项中,选择适用于特定场景的选项。
  • click_attribution_window
  • view_attribution_window
  • engaged_view_attribution_window
  • attribution_event_count
查看归因窗口期和事件统计方式 - 网站转化量文档,了解不同场景支持的归因设置选项。
优化和出价
· 计费事件
  • 如果目标为点击,计费事件应为 CPC。
  • 如果目标为转化、落地页浏览量或价值,计费事件应为 oCPM。

注意:如果你选择推广系列预算模式,计费事件必须在同一推广系列内的所有广告组中保持一致。

billing_event
  • 如果 optimization_goal 为 CLICK,将此字段设置为 CPC。
  • 如果 optimization_goal 为 CONVERT、TRAFFIC_LANDING_PAGE_VIEW 或 VALUE,将此字段设置为 OCPM。

注意:当推广系列层级的 budget_optimize_on 为 true 时,为同一推广系列内的所有广告组传入相同的 billing_event。

优化和出价
· 投放速度
标准(默认) N/A 升级版 Smart+ 推广系列默认设置为标准投放速度。
预算和排期
· 预算
  • 如果你选择推广系列预算模式:
    • 广告组预算会被禁用。推广系列层级预算将用作广告组预算。
  • 如果选择广告组预算策略,你可以使用以下任意广告组预算模式:
    • 总预算
    • 日预算

注意:广告组预算模式(如传入)必须在同一推广系列内的所有广告组中保持一致。

budget_mode
budget
  • 当推广系列层级的 budget_optimize_on 为 true 时,不支持 budget_mode 和 budget。
  • 当推广系列层级的 budget_optimize_on 为 false 时:
    • 将 budget_mode 设置为 BUDGET_MODE_TOTAL 或 BUDGET_MODE_DYNAMIC_DAILY_BUDGET
    • 通过 budget 传入合法预算

注意:budget_mode(如传入)必须在同一推广系列内的所有广告组中保持一致。

预算和排期
· 自动增加预算(当目标为价值时)
已启用或未启用

若想启用此设置,应满足以下条件:
  • 在推广系列层级:未启用 CBO。
  • 在广告组层级:
    • 广告组预算为日预算
    • 目标为价值
    • 出价策略为目标 ROAS
    • 出价策略的时间窗口期为第 0 天 ROAS
budget_auto_adjust_strategy 使用以下任意值:
  • AUTO_BUDGET_INCREASE:启用自动增加预算功能。允许系统在广告效果出色且满足目标 CPA、第 0 天目标 ROAS 和预算要求时自动增加预算。如果你的预算利用率至少达到 90%,日预算将自动增加 20%,每天最多可增加 10 次。你的日预算将在每天重置为原来的日预算。
  • UNSET:关闭自动增加预算功能。

如果满足以下所有条件,只能将此字段设置为 AUTO_BUDGET_INCREASE:
  • 在推广系列层级:budget_optimize_on 为 false。
  • 在广告组层级:
    • budget_mode 为 BUDGET_MODE_DYNAMIC_DAILY_BUDGET。
    • optimization_goal 为 VALUE。
    • deep_bid_type 为 VO_MIN_ROAS。
    • vbo_window 为 ZERO_DAY。

注意:“自动增加预算”目前为白名单功能。如需使用此功能,请联系你的 TikTok 销售代表。

预算和排期
· 为每个广告组添加消耗目标
  · 最低日消耗
  • 如果你使用推广系列总预算,你可以禁用或启用此设置。
  • 如果你使用推广系列日预算或广告组预算,就不支持此设置。
min_budget
  • 当推广系列层级的 budget_optimize_on 为 true 且 budget_mode 为 BUDGET_MODE_TOTAL,你可以通过这个字段传入合法值,或不传入。
  • 当推广系列层级的 budget_optimize_on 为 true 且 budget_mode 为 BUDGET_MODE_DYNAMIC_DAILY_BUDGET 时,或当 budget_optimize_on 为 false 时,不支持此字段。
预算和排期
· 排期
使用以下任意类型:
  • 设置开始时间并持续投放广告组
  • 设置开始时间和结束时间

注意:在以下任意场景中,你只能选择“设置开始时间并持续投放广告组”:

  • 在推广系列层级,设置了推广系列日预算。
  • 在广告组层级,设置了广告组日预算。
schedule_type
schedule_start_time
schedule_end_time
  • 若想设置开始时间并持续投放广告组,将 schedule_type 设置为 SCHEDULE_FROM_NOW 并传入 schedule_start_time。请勿传入 schedule_end_time。
  • 若想在排定的开始时间和结束时间之间投放广告组,将 schedule_type 设置为 SCHEDULE_START_END 并传入 schedule_start_time 和 schedule_end_time。

注意:在以下任意场景中,你只能将 schedule_type 设置为 SCHEDULE_FROM_NOW:

  • 在推广系列层级,budget_mode 为 BUDGET_MODE_DYNAMIC_DAILY_BUDGET
  • 在广告组层级,budget_mode 为 BUDGET_MODE_DYNAMIC_DAILY_BUDGET
预算和排期
· 分时段(可选)
使用以下任意类型:
  • 全天(默认)
  • 选择特定时段
dayparting 使用以下任意配置:
  • 传入全为 1 的值,或不传入此字段
  • 传入包含 0 的值以表示未投放
受众定向优化模式 使用以下任意模式:
  • 自动定向
    • 你可以使用自动定向来充分利用实时数据和机器学习,向最有可能与广告互动的受众定向投放广告。
  • 自定义定向
    • 你可以使用自定义定向设置,精确控制哪些受众能看到你的广告。这可能会限制广告投放并影响推广效果。

查看不同定向优化模式可用的定向设置文档,了解每种模式支持的定向设置。
targeting_optimization_mode 使用以下任意值:
  • AUTOMATIC
  • MANUAL

查看不同定向优化模式可用的定向设置文档,了解每种模式支持的定向设置。
广告位和品牌安全
· 广告位
使用以下任意类型:
  • 自动广告位
  • 选择具体广告位:
    • TikTok
    • 全球化应用组合
    • Pangle
placement_type
placements
  • 若想使用自动广告位,请勿传入 placement_type 和 placements。
    • 系统会根据你的其他设置为你的升级版 Smart+ 广告组自动配置广告位,并会从不同广告位选择优质流量来获得更理想的投放成效。如果提供了参数 placement_type 和 placements,系统将忽略这些参数。
    • 若想获取升级版 Smart+ 广告组的具体广告位设置,需使用 /smart_plus/adgroup/get/ 接口。
  • 若想使用特定广告位,需将 placement_type 设置为 PLACEMENT_TYPE_NORMAL 并在 placements 中传入一个或多个以下广告位:
    • PLACEMENT_TIKTOK
    • PLACEMENT_PANGLE
    • PLACEMENT_GLOBAL_APP_BUNDLE
广告位和品牌安全
· 子广告位
(广告位包含 TikTok 时选填)
不启用,或启用并带有以下一个或多个选项:
  • Lemon8
  • PineDrama

注意:

  • 在广告组中使用 Lemon8 子广告位 (LEMON8) 目前为白名单功能。如需使用此功能,请联系你的 TikTok 销售代表。
  • 在广告组中使用 PineDrama 子广告位 (PINE_DRAMA) 目前为白名单功能。如需使用此功能,请联系你的 TikTok 销售代表。

tiktok_subplacements 当 placement_type 为 PLACEMENT_TYPE_NORMAL 且 placements 包含 PLACEMENT_TIKTOK 时:
  • 不传入,或传入以下一个或多个值:
    • LEMON8
    • PINE_DRAMA

注意:

  • 在广告组中使用 Lemon8 子广告位 (LEMON8) 目前为白名单功能。如需使用此功能,请联系你的 TikTok 销售代表。
  • 在广告组中使用 PineDrama 子广告位 (PINE_DRAMA) 目前为白名单功能。如需使用此功能,请联系你的 TikTok 销售代表。

广告位和品牌安全
· 品牌安全和适用性
这些设置仅应用于 TikTok 信息流广告和搜索信息流广告。之前在品牌安全中心所做的任何账号层级的设置都将应用到推广系列。 N/A N/A

若想获取品牌安全中心的广告账号层级品牌安全和适用性设置,需使用 /tiktok_inventory_filters/get/ 接口。
若想配置或更新品牌安全中心的广告账号层级品牌安全和适用性设置,需使用 /tiktok_inventory_filters/update/ 接口。
广告位和品牌安全
· 用户评论
已启用或未启用 comment_disabled 传入合法值或不传入
广告位和品牌安全
· 允许下载视频
已启用或未启用 share_disabled 传入合法值或不传入
广告位和品牌安全
· 允许共享视频
已启用或未启用 video_download_disabled 传入合法值或不传入
广告位和品牌安全
· Pangle 媒体屏蔽列表
未启用 N/A N/A

示例

请求

(code curl http)
curl --location --request POST 'https://business-api.tiktok.com/open_api/v1.3/smart_plus/adgroup/create/' \
--header 'Access-Token: {{Access-Token}}' \
--header 'Content-Type: application/json' \
--data '{
    "advertiser_id": "{{advertiser_id}}",
    "campaign_id": "{{campaign_id}}",
    "request_id": "{{request_id}}",
    "adgroup_name": "{{adgroup_name}}",
    "promotion_type": "WEBSITE",
    "optimization_goal": "CONVERT",
    "pixel_id": "{{pixel_id}}",
    "optimization_event": "ADD_BILLING",
    "bid_type": "BID_TYPE_CUSTOM",
    "conversion_bid_price": {{conversion_bid_price}},
    "billing_event": "OCPM",
    "schedule_type": "SCHEDULE_START_END",
    "schedule_start_time": "{{schedule_start_time}}",
    "schedule_end_time": "{{schedule_end_time}}",
    "targeting_spec": {
        "location_ids": [
            "1562822"
        ]
    }
}'
(/code)

返回

(code curl http)
{
    "code": 0,
    "message": "OK",
    "request_id": "{{request_id}}",
    "data": {
        "adgroup_id": "{{adgroup_id}}",
        "adgroup_name": "{{adgroup_name}}",
        "advertiser_id": "{{advertiser_id}}",
        "attribution_event_count": "EVERY",
        "bid_type": "BID_TYPE_CUSTOM",
        "billing_event": "OCPM",
        "campaign_id": "{{campaign_id}}",
        "campaign_name": "{{campaign_name}}",
        "click_attribution_window": "SEVEN_DAYS",
        "comment_disabled": false,
        "conversion_bid_price": {{conversion_bid_price}},
        "create_time": "{{create_time}}",
        "dayparting": "111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111",
        "modify_time": "{{modify_time}}",
        "optimization_event": "ADD_BILLING",
        "optimization_goal": "CONVERT",
        "pixel_id": "{{pixel_id}}",
        "placement_type": "PLACEMENT_TYPE_AUTOMATIC",
        "placements": [
            "PLACEMENT_TIKTOK",
            "PLACEMENT_GLOBAL_APP_BUNDLE",
            "PLACEMENT_PANGLE"
        ],
        "product_source": "UNSET",
        "promotion_type": "WEBSITE",
        "promotion_website_type": "UNSET",
        "schedule_end_time": "{{schedule_end_time}}",
        "schedule_start_time": "{{schedule_start_time}}",
        "schedule_type": "SCHEDULE_START_END",
        "search_result_enabled": true,
        "secondary_status": "ADGROUP_STATUS_CREATE",
        "share_disabled": false,
        "skip_learning_phase": true,
        "targeting_optimization_mode": "AUTOMATIC",
        "targeting_spec": {
            "age_groups": [
                "AGE_18_24",
                "AGE_25_34",
                "AGE_35_44",
                "AGE_45_54",
                "AGE_55_100"
            ],
            "brand_safety_type": "EXPANDED_INVENTORY",
            "gender": "GENDER_UNLIMITED",
            "location_ids": [
                "1562822"
            ],
            "spc_audience_age": "OVER_EIGHTEEN"
        },
        "video_download_disabled": false,
        "view_attribution_window": "ONE_DAY"
    }
}
(/code)

3. 创建广告

使用 /smart_plus/ad/create/ 接口创建广告。

需确保满足以下要求。完整参数列表参见 /smart_plus/ad/create/ 接口。

设置 要求 参数 如何配置参数
广告名称
(可选)
默认情况下,系统将自动生成广告名称。
你可以通过传入合法的广告名称来自定义。
ad_name
  • 若想系统自动生成广告名称,需将此字段设置为 ""(空字符串)。
  • 若想自定义广告名称,需传入非空字符串值。
目标 URL 已启用 landing_page_url_list 提供你想要推广的落地页或网站的 URL。此链接应与你在广告组中传入的数据连接相匹配。
page_list 不传入
UTM 参数
(可选)
已启用或未启用 utm_params 传入合法值或不传入。

如果将 landing_page_url_list 设置为已包含 URL 参数的 URL,可选择同时传入 utm_params 以存储 URL 中使用的参数。
在这一情况下,需确保 utm_params 与已使用的 URL 参数精确匹配。广告投放时,URL 参数不会自动附加到 landing_page_url_list 中。
创意素材
· 广告发布身份
选择以下任意选项:
  • 自定义用户(自定义身份)
  • 授权用户
  • TikTok 用户
  • 商务中心内的 TikTok 账号用户
identity_type 使用以下任意值:
  • CUSTOMIZED_USER
  • AUTH_CODE
  • TT_USER
  • BC_AUTH_TT

注意:

  • 对于非 Spark Ads 广告发布身份 (CUSTOMIZED_USER),需在 ad_configuration 对象内为 identity_type 和 identity_id 传入值。
  • 对于 Spark Ads 广告发布身份,需在 creative_info 对象内为 identity_type 和 identity_id 传入值。
identity_id 传入合法值
若想获取你的广告账号下的广告发布身份列表,需使用 /identity/get/ 接口。
identity_authorized_bc_id 当 identity_type 为 BC_AUTH_TT 时,传入合法值
创意素材
· 广告创意和广告文案
单个广告可添加 1-50 个广告创意,这些创意可包含以下类型:
  • 视频
  • TikTok 视频帖子
  • TikTok 照片帖子
  • 轮播

查看按广告发布身份和广告类型划分的广告创意组合文档,了解基于广告发布身份类型的可用广告创意组合。
ad_format 传入合法值
creative_list
video_info
image_info
music_info
ad_text_list
tiktok_item_id
通过 creative_list 传入 1-50 个广告创意。广告创意可以是以下任意类型:
  • 视频
  • TikTok 视频帖子
  • TikTok 照片帖子
  • 轮播

查看按广告发布身份和广告类型划分的广告创意组合文档,了解基于广告发布身份类型的可用广告创意组合的配置。
添加商品信息
(可选)
已启用或未启用 product_info 传入合法值或不传入。

如需了解此字段中可用于该场景的特定参数,参见升级版 Smart+ 推广系列中可用的商品信息设置。
免责声明
(可选)
已启用或未启用 disclaimer 传入合法值或不传入
行动引导文案 选择以下任意选项:
  • 动态
  • 标准

注意:如果你使用 Spark Ads 广告发布身份,就只能使用动态行动引导文案。

call_to_action_id
call_to_action_list
  • 若想使用动态行动引导文案,需传入 call_to_action_id。
  • 若想使用标准行动引导文案,需传入 call_to_action_list。

注意:如果你在 creative_info 对象内将 identity_type 设置为 TT_USER、BC_AUTH_TT 或 AUTH_CODE,就必须提供 call_to_action_id。

创新互动样式
(可选)
(如果广告创意包括视频或视频帖子)
未启用或已启用,最多包含一个以下任意类型的创新互动样式:
  • 展示卡片
  • 倒计时贴纸
  • 礼品码贴纸
interactive_add_on_list 不传入或最多传入以下任意创新互动样式类型的一个 ID:
  • 倒计时贴纸
  • 礼品码贴纸
  • 展示卡片

注意:

  • 如果 creative_list 包含视频创意(包括视频和 TikTok 视频帖子),你只能使用创新互动样式。

若想创建创新互动样式(创意素材包),需使用 /creative/portfolio/create/ 接口。
  • 查看卡片文档,了解如何获取展示卡片素材包 ID。
  • 查看贴纸文档,了解如何获取倒计时贴纸 ID 或礼品码贴纸素材包 ID。
监测
· 第三方监测设置
  · 通过第三方合作伙伴度量可见性
(可选)
未启用或已启用以下任意合作伙伴:
  • DoubleVerify
  • IAS,使用 IAS 包装标签
  • Zefr

注意:如果同时配置“通过第三方合作伙伴监测可见性”和“通过第三方合作伙伴度量品牌安全”设置:

  • 如果将其中任意一项设置为 IAS,需要将两项都设置为 IAS,并传入相同的 IAS 包装标签。
  • 如果将其中任意一项设置为 Zefr,需要将两项都设置为 Zefr。
viewability_postbid_partner 不传入或传入以下任意值:
  • DOUBLE_VERIFY
  • IAS
  • ZEFR

注意:如果同时配置 brand_safety_postbid_partner 和 viewability_postbid_partner:

  • 如果将这两个字段中的任一字段设置为 IAS,需要将它们都设置为 IAS,并为 brand_safety_vast_url 和 viewability_vast_url 分配相同的值(即从度量合作伙伴 IAS 处获取的包装 VAST URL)。
  • 如果将这两个字段中的任一字段设置为 ZEFR,需要将它们都设置为 ZEFR。
viewability_vast_url 当 viewability_postbid_partner 为 IAS 时,传入合法值。

注意:如果将 brand_safety_postbid_partner 和 viewability_postbid_partner 都设置为 IAS,brand_safety_vast_url 和 viewability_vast_url 应保持一致。

监测
· 第三方监测设置
  · 通过第三方合作伙伴度量品牌安全性
(可选)
未启用或已启用以下任意合作伙伴:
  • DoubleVerify
  • IAS,使用 IAS 包装标签
  • Zefr

注意:如果同时配置“通过第三方合作伙伴监测可见性”和“通过第三方合作伙伴度量品牌安全”设置:

  • 如果将其中任意一项设置为 IAS,需要将两项都设置为 IAS,并传入相同的 IAS 包装标签。
  • 如果将其中任意一项设置为 Zefr,需要将两项都设置为 Zefr。
brand_safety_postbid_partner 不传入或传入以下任意值:
  • DOUBLE_VERIFY
  • IAS
  • ZEFR

注意:如果配置 brand_safety_postbid_partner 和 viewability_postbid_partner:

  • 如果将这两个字段中的任一字段设置为 IAS,需要将它们都指定为 IAS,并为 brand_safety_vast_url 和 viewability_vast_url 分配相同的值(即从度量合作伙伴 IAS 处获取的包装 VAST URL)。
  • 如果将这两个字段中的任一字段设置为 ZEFR,需要将它们都设置为 ZEFR。
brand_safety_vast_url 当 brand_safety_postbid_partner 为 IAS 时,传入合法值。

注意:如果将 brand_safety_postbid_partner 和 viewability_postbid_partner 都设置为 IAS,brand_safety_vast_url 和 viewability_vast_url 应保持一致。

监测
· TikTok 事件监测
  · 应用事件
(可选)
已启用或未启用 tracking_app_id 传入合法值或不传入
监测
· 第三方监测设置
  · 展示监测 URL
(可选)
已启用或未启用 impression_tracking_url 传入合法值或不传入
监测
· 第三方监测设置
  · 点击监测 URL
(可选)
已启用或未启用 click_tracking_url 传入合法值或不传入

示例

请求

(code curl http)
curl --location --request POST 'https://business-api.tiktok.com/open_api/v1.3/smart_plus/ad/create/' \
--header 'Access-Token: {{Access-Token}}' \
--header 'Content-Type: application/json' \
--data '{
    "advertiser_id": "{{advertiser_id}}",
    "adgroup_id": "{{adgroup_id}}",
    "ad_name": "{{ad_name}}",
    "landing_page_url_list": [
        {
            "landing_page_url": "{{landing_page_url}}"
        }
    ],
    "creative_list": [
        {
            "creative_info": {
                "ad_format":"CAROUSEL_ADS",
                "image_info": [
                    {
                        "web_uri": "{{web_uri}}"
                    }
                ],
                "music_info": {
                    "music_id": "{{music_id}}"
                },
                "identity_type": "TT_USER",
                "identity_id": "{{identity_id}}"
            }
        },
        {
            "creative_info": {
                "ad_format":"SINGLE_VIDEO",
                "video_info": {
                    "video_id": "{{video_id}}"
                },
                "image_info": [
                    {
                        "web_uri": "{{web_uri}}"
                    }
                ],
                "identity_type": "TT_USER",
                "identity_id": "{{identity_id}}"
            }
        },
        {
            "creative_info": {
                "ad_format":"SINGLE_VIDEO",
                "tiktok_item_id": "{{tiktok_item_id}}",
                "identity_type": "TT_USER",
                "identity_id": "{{identity_id}}"
            }
        },
        {
            "creative_info": {
                "ad_format":"SINGLE_VIDEO",
                "tiktok_item_id": "{{tiktok_item_id}}",
                "identity_type": "BC_AUTH_TT",
                "identity_id": "{{identity_id}}",
                "identity_authorized_bc_id": "{{identity_authorized_bc_id}}"
            }
        },
        {
            "creative_info": {
                "ad_format":"SINGLE_VIDEO",
                "tiktok_item_id": "{{tiktok_item_id}}",
                "identity_type": "AUTH_CODE",
                "identity_id": "{{identity_id}}"
            }
        }
    ],
    "ad_text_list": [
        {
            "ad_text": "{{ad_text}}"
        },
        {
            "ad_text": "{{ad_text}}"
        },
        {
            "ad_text": "{{ad_text}}"
        },
        {
            "ad_text": "{{ad_text}}"
        },
        {
            "ad_text": "{{ad_text}}"
        }
    ],
    "ad_configuration": {
        "utm_params": [
            {
                "key": "{{key}}",
                "value": "{{value}}"
            }
        ],
        "call_to_action_id": "{{call_to_action_id}}"
    }
}'
(/code)

返回

(code curl http)
{
    "code": 0,
    "message": "OK",
    "request_id": "{{request_id}}",
    "data": {
        "ad_configuration": {
            "call_to_action_id": "{{call_to_action_id}}",
            "tracking_info": {},
            "utm_params": [
                {
                    "key": "{{key}}",
                    "value": "{{value}}"
                }
            ]
        },
        "ad_name": "{{ad_name}}",
        "ad_text_list": [
            {
                "ad_text": "{{ad_text}}"
            },
            {
                "ad_text": "{{ad_text}}"
            },
            {
                "ad_text": "{{ad_text}}"
            },
            {
                "ad_text": "{{ad_text}}"
            },
            {
                "ad_text": "{{ad_text}}"
            }
        ],
        "adgroup_id": "{{adgroup_id}}",
        "adgroup_name": "{{adgroup_name}}",
        "advertiser_id": "{{advertiser_id}}",
        "call_to_action_list": [],
        "campaign_id": "{{campaign_id}}",
        "campaign_name": "{{campaign_name}}",
        "create_time": "{{create_time}}",
        "creative_list": [
            {
                "ad_material_id": "{{ad_material_id}}",
                "creative_info": {
                    "ad_format":"SINGLE_VIDEO",
                    "identity_authorized_bc_id": "0",
                    "identity_id": "{{identity_id}}",
                    "identity_type": "TT_USER",
                    "image_info": [
                        {
                            "web_uri": "{{web_uri}}"
                        }
                    ],
                    "material_name": "",
                    "video_info": {
                        "file_name": "",
                        "video_id": "{{video_id}}"
                    }
                },
                "material_operation_status": "ENABLE"
            },
            {
                "ad_material_id": "{{ad_material_id}}",
                "creative_info": {
                    "ad_format":"SINGLE_VIDEO",
                    "identity_authorized_bc_id": "0",
                    "identity_id": "{{identity_id}}",
                    "identity_type": "TT_USER",
                    "tiktok_item_id": "{{tiktok_item_id}}"
                },
                "material_operation_status": "ENABLE"
            },
            {
                "ad_material_id": "{{ad_material_id}}",
                "creative_info": {
                    "ad_format":"SINGLE_VIDEO",
                    "identity_authorized_bc_id": "{{identity_authorized_bc_id}}",
                    "identity_id": "{{identity_id}}",
                    "identity_type": "BC_AUTH_TT",
                    "tiktok_item_id": "{{tiktok_item_id}}"
                },
                "material_operation_status": "ENABLE"
            },
            {
                "ad_material_id": "{{ad_material_id}}",
                "creative_info": {
                    "ad_format":"CAROUSEL_ADS",
                    "identity_authorized_bc_id": "0",
                    "identity_id": "{{identity_id}}",
                    "identity_type": "TT_USER",
                    "image_info": [
                        {
                            "web_uri": "{{web_uri}}"
                        }
                    ],
                    "material_name": "{{material_name}}",
                    "music_info": {
                        "music_id": "{{music_id}}"
                    }
                },
                "material_operation_status": "ENABLE"
            },
            {
                "ad_material_id": "{{ad_material_id}}",
                "creative_info": {
                    "ad_format":"SINGLE_VIDEO",
                    "identity_authorized_bc_id": "0",
                    "identity_id": "{{identity_id}}",
                    "identity_type": "AUTH_CODE",
                    "tiktok_item_id": "{{tiktok_item_id}}"
                },
                "material_operation_status": "ENABLE"
            }
        ],
        "deeplink_list": [],
        "interactive_add_on_list": [],
        "landing_page_url_list": [
            {
                "landing_page_url": "{{landing_page_url}}"
            }
        ],
        "modify_time": "{{modify_time}}",
        "operation_status": "ENABLE",
        "page_list": [],
        "secondary_status": "AD_STATUS_AUDIT",
        "smart_plus_ad_id": "{{smart_plus_ad_id}}"
    }
}

(/code)

内容来源:TikTok API for Business 官方文档 · 本地归档

在接这个接口时卡住了?
Stuck wiring this API into production? We build ad-delivery tooling on these platforms — campaign automation, reporting pipelines, error-handling and migration between API versions.
联系我们 · Talk to us 每日平台更新简报 →