← 返回目录
📁 Use Cases › Campaign creation

创建应用预注册广告

本文介绍了创建应用预注册广告的具体步骤。

简介

应用预注册是一种应用推广类型,用于鼓励用户在游戏发布前预注册,以便在发布当天自动下载应用。通过使用应用预注册,您可以在游戏发布前建立用户基础,宣传游戏,扩大知名度,为在 TikTok 平台上建立活跃的用户社区打下基础。

您可以使用推广系列API创建应用预注册广告。这将帮助您简化广告创建流程,提高推广系列的运营效率和管理规模。

前提条件

  • 您已经拥有TikTok API for Business的使用权限。详见快速入门 - 具体步骤 。
  • 若要创建应用预注册广告,您需要获取相关的权限。参阅API参考了解使用相关接口(包括“步骤”部分列出的接口)所需的权限。参阅更新应用权限范围了解如何设置权限。
  • 应用预注册目前为白名单功能。如需使用此功能,请联系您的TikTok销售代表。

步骤

1. 创建推广系列

使用/campaign/create/接口创建一个推广系列。需确保满足以下要求:

设置 要求 参数 如何设置该参数
推广目标 应用推广 objective_type APP_PROMOTION
应用推广类型 应用预注册 app_promotion_type APP_PREREGISTRATION
iOS 14专属推广系列 未启用 campaign_type 设置为REGULAR_CAMPAIGN或不传入
app_id 不传入
campaign_app_profile_page_state 不传入
Smart+ 推广系列 未启用

若您想查看推广系列是否启用了 Smart+ 推广系列设置,可使用/campaign/get/返回的is_smart_performance_campaign字段进行确认。
/
/

示例

请求

(code curl http)
curl --location --request POST 'https://business-api.tiktok.com/open_api/v1.3/campaign/create/' \
--header 'Access-Token: {{Access-Token}}' \
--header 'Content-Type: application/json' \
--data '{
    "advertiser_id": "{{advertiser_id}}",
    "objective_type": "APP_PROMOTION",
    "app_promotion_type": "APP_PREREGISTRATION",
    "campaign_name": "{{}}",
    "campaign_type": "REGULAR_CAMPAIGN",
    "budget_mode":"BUDGET_MODE_TOTAL",
    "budget": {{budget}}
}'
(/code)

返回

(code curl http)
{
    "code": 0,
    "message": "OK",
    "request_id": "{{request_id}}",
    "data": {
        "campaign_id": "{{campaign_id}}",
        "app_promotion_type": "APP_PREREGISTRATION",
        "is_new_structure": true,
        "deep_bid_type": null,
        "modify_time": "2023-07-24 02:55:32",
        "advertiser_id": "{{advertiser_id}}",
        "create_time": "2023-07-24 02:55:32",
        "budget_mode": "BUDGET_MODE_TOTAL",
        "roas_bid": 0,
        "budget": {{budget}},
        "campaign_app_profile_page_state": "UNSET",
        "objective_type": "APP_PROMOTION",
        "operation_status": "ENABLE",
        "secondary_status": "CAMPAIGN_STATUS_ENABLE",
        "objective": "LANDING_PAGE",
        "campaign_type": "REGULAR_CAMPAIGN",
        "is_smart_performance_campaign": false,
        "campaign_name": "{{campaign_name}}"
    }
}
(/code)

2. 创建广告组

使用/adgroup/create/接口创建一个广告组。需确保满足以下要求:

| 设置 {18%}| 要求{27%} | 参数 {20%}| 如何设置该参数 {35%}|
|---|---|---|---|
| 推广对象类型 <br>(优化位置) | 选择以下类型之一:<ul><li>网站</li><li>TikTok 即时体验页面</li></ul> | `promotion_type`<br> `promotion_website_type`  | <ul><li>若要将推广类型设置为网站,需:<ul><li>将`promotion_type`设置为`WEBSITE`</li><li>将 `promotion_website_type` 设置为 `UNSET` 或不传入此字段</li></ul></li><li>若要将推广类型设置为 TikTok 即时体验页面,需:<ul><li>将`promotion_type` 设置为`WEBSITE`</li><li>将 `promotion_website_type` 设置为`TIKTOK_NATIVE_PAGE`</li></ul></li></ul> |
| App | 指定一个可用于预注册的 App | `app_id` | 传入合法值 |
| 优化事件 | 需选择优化事件<br><p><span style="color:darkred"><b>注意</b></span>: 若推广类型为TikTok 即时体验页面, 则仅唯一支持的优化事件为点击按钮。   | `optimization_event` | 需传入该参数<br><p><span style="color:darkred"><b>注意</b></span>: 若 `promotion_website_type` 设置为 `TIKTOK_NATIVE_PAGE`,则本字段仅支持设置为 `BUTTON`。 |
| Pixel | <ul><li>推广类型为网站时,需指定 Pixel。</li><li>推广类型为 TikTok 即时体验页面时,不支持指定 Pixel。</li></ul> | `pixel_id` | <ul><li>若 `promotion_website_type`设置为 `UNSET` 或未传入,则本字段必填。</li><li>若`promotion_website_type`设置为`TIKTOK_NATIVE_PAGE`,则不支持本字段。</li></ul> |
| 版位 | 推广类型为 TikTok 即时体验页面时,版位中需至少包含 TikTok 或 Pangle。 | `placement_type`<br>`placements` | 若 `promotion_website_type`设置为`TIKTOK_NATIVE_PAGE`,您可以:<ul><li>将 `placement_type`设置为 `PLACEMENT_TYPE_AUTOMATIC`,</li><li>或将`placement_type`设置为 `PLACEMENT_TYPE_NORMAL`,同时确保`placements`的值中至少包含`PLACEMENT_TIKTOK`或`PLACEMENT_PANGLE`。</li></ul> |
|优化目标| 仅支持转化 | `optimization_goal` | `CONVERT`|
|计费事件| 仅支持oCPM | `billing_event`| `OCPM`|
|出价前品牌安全筛选<br>(库存筛选)| 未启用| `brand_safety_type`|不传入或设置为 `NO_BRAND_SAFETY`|
|出价前品牌安全筛选| 未启用| `brand_safety_partner`|不传入|
|拆分对比测试|未启用<br><br>应用预注册广告组不支持传入 [/split_test/create/](https://ads.tiktok.com/marketing_api/docs?id=1742666471475201)用于创建拆分对比测试。|/|/|

示例 - 推广类型为网站

请求

(code curl http)
curl --location --request POST 'https://business-api.tiktok.com/open_api/v1.3/adgroup/create/' \
--header 'Access-Token: {{Access-Token}}' \
--header 'Content-Type: application/json' \
--data '{
    "advertiser_id": "{{advertiser_id}}",
    "campaign_id": "{{campaign_id}}",
    "adgroup_name": "{{adgroup_name}}",
    "app_id": "{{app_id}}",
    "promotion_type": "WEBSITE",
    "pixel_id": "{{pixel_id}}",
    "optimization_event": "ON_WEB_DETAIL",
    "placement_type": "PLACEMENT_TYPE_NORMAL",
    "placements": ["PLACEMENT_TIKTOK","PLACEMENT_PANGLE"],
    "location_ids": ["6252001"],
    "budget_mode": "BUDGET_MODE_TOTAL",
    "budget":{{budget}},
    "schedule_type": "SCHEDULE_START_END",
    "schedule_start_time": "{{schedule_start_time}}",
    "schedule_end_time":"{{schedule_end_time}}",
    "optimization_goal": "CONVERT",
    "bid_type": "BID_TYPE_CUSTOM",
    "conversion_bid_price": {{conversion_bid_price}},
    "billing_event": "OCPM",
    "pacing": "PACING_MODE_SMOOTH"
}'
(/code)

返回

(code curl http)
{
    "code": 0,
    "message": "OK",
    "request_id": "{{request_id}}",
    "data": {
        "billing_event": "OCPM",
        "device_price_ranges": null,
        "excluded_audience_ids": [],
        "share_disabled": false,
        "package": "{{package}}",
        "schedule_type": "SCHEDULE_START_END",
        "age_groups": null,
        "conversion_window": null,
        "pixel_id": "{{pixel_id}}",
        "rf_estimated_frequency": null,
        "placements": [
            "PLACEMENT_TIKTOK",
            "PLACEMENT_PANGLE"
        ],
        "create_time": "2023-07-24 03:03:27",
        "adgroup_app_profile_page_state": null,
        "interest_category_ids": [],
        "schedule_end_time": "{{schedule_end_time}}",
        "deep_bid_type": null,
        "advertiser_id": "{{advertiser_id}}",
        "ios14_targeting": "UNSET",
        "adgroup_name": "{{adgroup_name}}",
        "interest_keyword_ids": [],
        "frequency": null,
        "is_new_structure": true,
        "secondary_optimization_event": null,
        "app_download_url": "{{app_download_url}}",
        "statistic_type": null,
        "operation_status": "ENABLE",
        "category_id": "0",
        "budget_mode": "BUDGET_MODE_TOTAL",
        "creative_material_mode": "CUSTOM",
        "brand_safety_partner": null,
        "bid_price": 0,
        "frequency_schedule": null,
        "gender": "GENDER_UNLIMITED",
        "modify_time": "2023-07-24 03:03:27",
        "ios14_quota_type": "UNOCCUPIED",
        "app_id": "{{app_id}}",
        "rf_purchased_type": null,
        "deep_cpa_bid": 0,
        "actions": [],
        "audience_ids": [],
        "secondary_status": "ADGROUP_STATUS_CREATE",
        "search_result_enabled": true,
        "purchased_reach": null,
        "app_type": "APP_IOS",
        "dayparting": "111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111",
        "comment_disabled": false,
        "feed_type": null,
        "isp_ids": [],
        "schedule_infos": null,
        "campaign_name": "{{campaign_name}}",
        "pacing": "PACING_MODE_SMOOTH",
        "scheduled_budget": 0,
        "location_ids": [
            "6252001"
        ],
        "delivery_mode": null,
        "video_download_disabled": true,
        "inventory_filter_enabled": false,
        "schedule_start_time": "{{schedule_start_time}}",
        "network_types": [],
        "category_exclusion_ids": [],
        "optimization_goal": "CONVERT",
        "skip_learning_phase": true,
        "purchased_impression": null,
        "bid_type": "BID_TYPE_CUSTOM",
        "bid_display_mode": "CPMV",
        "promotion_type": "WEBSITE",
        "next_day_retention": null,
        "languages": [],
        "conversion_bid_price": 1,
        "brand_safety_type": "NO_BRAND_SAFETY",
        "rf_estimated_cpr": null,
        "optimization_event": "ON_WEB_DETAIL",
        "operating_systems": [],
        "auto_targeting_enabled": false,
        "placement_type": "PLACEMENT_TYPE_NORMAL",
        "campaign_id": "{{campaign_id}}",
        "is_hfss": false,
        "promotion_website_type": "UNSET",
        "adgroup_id": "{{adgroup_id}}",
        "keywords": null,
        "budget": {{budget}}
    }
}
(/code)

示例 - 推广类型为 TikTok 即时体验页面

请求

(code curl http)
curl --location --request POST 'https://business-api.tiktok.com/open_api/v1.3/adgroup/create/' \
--header 'Access-Token: {{Access-Token}}' \
--header 'Content-Type: application/json' \
--data '{
    "advertiser_id": "{{advertiser_id}}",
    "campaign_id": "{{campaign_id}}",
    "adgroup_name": "{{adgroup_name}}",
    "app_id": "{{app_id}}",
    "promotion_type": "WEBSITE",
    "promotion_website_type":"TIKTOK_NATIVE_PAGE",
    "optimization_event": "BUTTON",
    "placement_type": "PLACEMENT_TYPE_NORMAL",
    "placements": ["PLACEMENT_TIKTOK","PLACEMENT_PANGLE"],
    "location_ids": ["6252001"],
    "budget_mode": "BUDGET_MODE_TOTAL",
    "budget":{{budget}},
    "schedule_type": "SCHEDULE_START_END",
    "schedule_start_time": "{{schedule_start_time}}",
    "schedule_end_time":"{{schedule_end_time}}",
    "optimization_goal": "CONVERT",
    "bid_type": "BID_TYPE_NO_BID",
    "billing_event": "OCPM",
    "pacing": "PACING_MODE_SMOOTH"
}'
(/code)

返回

(code curl http)
{
    "code": 0,
    "message": "OK",
    "request_id": "{{request_id}}",
    "data": {
        "optimization_event": "BUTTON",
        "auto_targeting_enabled": false,
        "keywords": null,
        "secondary_optimization_event": null,
        "age_groups": null,
        "category_exclusion_ids": [],
        "next_day_retention": null,
        "promotion_website_type": "TIKTOK_NATIVE_PAGE",
        "schedule_start_time": "{{schedule_start_time}}",
        "create_time": "2023-07-24 03:23:17",
        "deep_cpa_bid": 0,
        "location_ids": [
            "6252001"
        ],
        "device_price_ranges": null,
        "app_download_url": "{{app_download_url}}",
        "audience_ids": [],
        "search_result_enabled": true,
        "scheduled_budget": 0,
        "brand_safety_type": "NO_BRAND_SAFETY",
        "share_disabled": false,
        "dayparting": "111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111",
        "promotion_type": "WEBSITE",
        "frequency_schedule": null,
        "purchased_reach": null,
        "campaign_id": "{{campaign_id}}",
        "interest_keyword_ids": [],
        "schedule_end_time": "{{schedule_end_time}}",
        "isp_ids": [],
        "is_new_structure": true,
        "pixel_id": null,
        "feed_type": null,
        "campaign_name": "{{campaign_name}}",
        "bid_type": "BID_TYPE_NO_BID",
        "languages": [],
        "modify_time": "2023-07-24 03:23:17",
        "optimization_goal": "CONVERT",
        "package": "{{package}}",
        "deep_bid_type": null,
        "ios14_quota_type": "UNOCCUPIED",
        "skip_learning_phase": true,
        "excluded_audience_ids": [],
        "category_id": "0",
        "conversion_window": null,
        "pacing": "PACING_MODE_SMOOTH",
        "operating_systems": [],
        "frequency": null,
        "gender": "GENDER_UNLIMITED",
        "bid_price": 0,
        "placements": [
            "PLACEMENT_TIKTOK",
            "PLACEMENT_PANGLE"
        ],
        "schedule_infos": null,
        "placement_type": "PLACEMENT_TYPE_NORMAL",
        "creative_material_mode": "CUSTOM",
        "actions": [],
        "delivery_mode": null,
        "rf_estimated_cpr": null,
        "app_id": "{{app_id}}",
        "is_hfss": false,
        "adgroup_app_profile_page_state": null,
        "comment_disabled": false,
        "bid_display_mode": "CPMV",
        "operation_status": "ENABLE",
        "inventory_filter_enabled": false,
        "budget_mode": "BUDGET_MODE_TOTAL",
        "rf_estimated_frequency": null,
        "network_types": [],
        "billing_event": "OCPM",
        "conversion_bid_price": 0,
        "schedule_type": "SCHEDULE_START_END",
        "statistic_type": null,
        "brand_safety_partner": null,
        "video_download_disabled": true,
        "interest_category_ids": [],
        "budget": 40,
        "app_type": "APP_IOS",
        "advertiser_id": "{{advertiser_id}}",
        "adgroup_id": "{{adgroup_id}}",
        "purchased_impression": null,
        "ios14_targeting": "UNSET",
        "rf_purchased_type": null,
        "secondary_status": "ADGROUP_STATUS_CREATE",
        "adgroup_name": "{{adgroup_name}}"
    }
}
(/code)

3. 创建广告

使用/ad/create/接口创建一个广告。需确保满足以下要求:

| 设置 {12%}| 要求{37%} | 参数 {15%}| 如何设置该参数 {36%}|
|---|---|---|---|
| 目标页面 | <ul><li>若广告组层级推广类型设置为网站,需指定落地页 URL 。</li><li>若广告组层级推广类型设置为 TikTok 即时体验页面,需指定 TikTok 即时体验页面 </li></ul> | `landing_page_url`<br>`page_id`<br>`creative_type`   |<ul><li>若广告组层级`promotion_website_type`设置为 `UNSET` 或未传入,您需传入`landing_page_url`。</li><li>若广告组层级`promotion_website_type`设置为 `TIKTOK_NATIVE_PAGE`,您需通过`page_id`指定 TikTok 即时体验页面。<ul><li>同时您可省略`creative_type`参数,该参数将默认设置为`CUSTOM_INSTANT_PAGE`。您也可以将 `creative_type` 字段手动设置为`CUSTOM_INSTANT_PAGE`。</li></ul></li></ul>  |
| 深度链接 | 未启用 | `deeplink` <br>`deeplink_type`| 不传入 |

示例 - 推广类型为网站

请求

(code curl http)
curl --location --request POST 'https://business-api.tiktok.com/open_api/v1.3/ad/create/' \
--header 'Access-Token: {{Access-Token}}' \
--header 'Content-Type: application/json' \
--data '{
    "advertiser_id": "{{advertiser_id}}",
    "adgroup_id": "{{adgroup_id}}",
    "creatives": [{
        "ad_name": "{{ad_name}}",
        "identity_id":"{{identity_id}}",
        "identity_type":"CUSTOMIZED_USER",
        "ad_format": "SINGLE_VIDEO",
        "video_id":"{{video_id}}",
        "image_ids":["{{image_id}}"],
        "ad_text": "{{ad_text}}",
        "call_to_action": "SIGN_UP",
        "landing_page_url":"{{landing_page_url}}"
    }]
}'
(/code)

返回

(code curl http)
{
    "code": 0,
    "message": "OK",
    "request_id": "{{request_id}}",
    "data": {
        "ad_ids": [
            "{{ad_id}}"
        ],
        "need_audit": false,
        "creatives": [
            {
                "ad_name": "{{ad_name}}",
                "call_to_action": "SIGN_UP",
                "vast_moat_enabled": false,
                "tracking_offline_event_set_ids": [
                    "{{tracking_offline_event_set_id}}",
                    "{{tracking_offline_event_set_id}}"
                ],
                "playable_url": "",
                "is_aco": false,
                "app_name": "",
                "identity_type": "CUSTOMIZED_USER",
                "profile_image_url": "{{profile_image_url}}",
                "creative_authorized": false,
                "advertiser_id": "{{advertiser_id}}",
                "display_name": "{{display_name}}",
                "deeplink": "",
                "operation_status": "ENABLE",
                "page_id": null,
                "ad_format": "SINGLE_VIDEO",
                "brand_safety_postbid_partner": "UNSET",
                "call_to_action_id": null,
                "impression_tracking_url": null,
                "adgroup_id": "{{adgroup_id}}",
                "campaign_id": "{{campaign_id}}",
                "create_time": "2023-07-24 03:07:21",
                "identity_id": "{{identity_id}}",
                "creative_type": null,
                "landing_page_urls": null,
                "is_new_structure": true,
                "click_tracking_url": "{{click_tracking_url}}",
                "tracking_pixel_id": {{tracking_pixel_id}},
                "ad_texts": null,
                "avatar_icon_web_uri": "{{avatar_icon_web_uri}}",
                "video_id": "{{video_id}}",
                "viewability_postbid_partner": "UNSET",
                "modify_time": "2023-07-24 03:07:21",
                "ad_id": "{{ad_id}}",
                "ad_text": "{{ad_text}}",
                "adgroup_name": "{{adgroup_name}}",
                "campaign_name": "{{campaign_name}}",
                "ad_ref_pixel_id": {{ad_ref_pixel_id}},
                "optimization_event": "ON_WEB_DETAIL",
                "music_id": null,
                "deeplink_type": "NORMAL",
                "viewability_vast_url": null,
                "card_id": null,
                "landing_page_url": "{{landing_page_url}}",
                "brand_safety_vast_url": null,
                "tracking_app_id": "{{tracking_app_id}}",
                "image_ids": [
                    "{{image_ids}}"
                ]
            }
        ]
    }
}
(/code)

示例 - 推广类型为 TikTok 即时体验页面

请求

(code curl http)
curl --location --request POST 'https://business-api.tiktok.com/open_api/v1.3/ad/create/' \
--header 'Access-Token: {{Access-Token}}' \
--header 'Content-Type: application/json' \
--data '{
    "advertiser_id": "{{advertiser_id}}",
    "adgroup_id": "{{adgroup_id}}",
    "creatives": [{
        "ad_name": "{{ad_name}}",
        "identity_id":"{{identity_id}}",
        "identity_type":"CUSTOMIZED_USER",
        "ad_format": "SINGLE_VIDEO",
        "video_id":"{{video_id}}",
        "image_ids":["{{image_id}}"],
        "ad_text": "{{ad_text}}",
        "call_to_action": "SIGN_UP",
        "page_id": "{{page_id}}"
    }]
}'
(/code)

返回

(code curl http)
{
    "code": 0,
    "message": "OK",
    "request_id": "{{request_id}}",
    "data": {
        "ad_ids": [
            "{{ad_id}}"
        ],
        "need_audit": false,
        "creatives": [
            {
                "brand_safety_vast_url": null,
                "viewability_postbid_partner": "UNSET",
                "tracking_app_id": "{{tracking_app_id}}",
                "landing_page_urls": null,
                "creative_type": "CUSTOM_INSTANT_PAGE",
                "tracking_pixel_id": 0,
                "playable_url": "",
                "video_id": "{{video_id}}",
                "is_aco": false,
                "brand_safety_postbid_partner": "UNSET",
                "page_id": {{page_id}},
                "ad_name": "{{ad_name}}",
                "click_tracking_url": "{{click_tracking_url}}",
                "creative_authorized": false,
                "ad_format": "SINGLE_VIDEO",
                "landing_page_url": "",
                "viewability_vast_url": null,
                "app_name": "",
                "optimization_event": "BUTTON",
                "music_id": null,
                "ad_text": "{{ad_text}}",
                "ad_ref_pixel_id": {{ad_ref_pixel_id}},
                "identity_id": "{{identity_id}}",
                "modify_time": "2023-07-24 03:25:53",
                "identity_type": "CUSTOMIZED_USER",
                "call_to_action_id": null,
                "impression_tracking_url": null,
                "adgroup_name": "{{adgroup_name}}",
                "call_to_action": "SIGN_UP",
                "tracking_offline_event_set_ids": [
                    "{{tracking_offline_event_set_id}}",
                    "{{tracking_offline_event_set_id}}"
                ],
                "image_ids": [
                    "{{image_id}}"
                ],
                "deeplink": null,
                "campaign_id": "{{campaign_id}}",
                "ad_id": "{{ad_id}}",
                "adgroup_id": "{{adgroup_id}}",
                "avatar_icon_web_uri": "{{avatar_icon_web_uri}}",
                "profile_image_url": "{{profile_image_url}}",
                "vast_moat_enabled": false,
                "create_time": "2023-07-24 03:25:53",
                "is_new_structure": true,
                "ad_texts": null,
                "advertiser_id": "{{advertiser_id}}",
                "campaign_name": "{{campaign_name}}",
                "operation_status": "ENABLE",
                "card_id": null,
                "display_name": "{{display_name}}"
            }
        ]
    }
}
(/code)

相关文档

推广系列管理API

推广系列管理指南

应用推广

内容来源: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 每日平台更新简报 →