VI | EN
Message us on Messenger
Developer resources

Create a campaign — TikTok Business API

Create a campaign · call it through Quantri360 with one API key for your own accounts / assets that you connected and authorized — 360 handles request signing and refreshing the authorization you granted.

Create a campaign

POST/campaign/create/Via 360: POST https://partner.quantri360.com/v1/tiktok_business/campaign/create/
Write endpoint — changes data on TikTok Business. The key must be created with "Allow write API calls" ticked, otherwise you get 403 write_not_allowed. Every call is logged.
Description

Use this endpoint to create a campaign. Each ad account can have up to 999 campaigns. A campaign can contain one or more ad groups.

Before you migrate your calls to v1.3, please see Migrate campaign management APIs to learn about the highlighted differences between v1.2 and v1.3 campaign management APIs.

To learn about the mapping between TikTok Ads Manager (TTAM) features at the campaign, ad group, and ad levels and the corresponding API configurations, see Mapping between campaign features on TikTok Ads Manager and API configurations.

> Important

By using this endpoint, you agree to TikTok's Online Data Terms.

Online Data Terms: By using this endpoint, to the extent that you and TikTok share personal data for the purposes of your campaign (for example, if you choose to use an advertiser tool such as TikTok Pixel or to work with a measurement partner), you agree to TikTok's Online Data Terms, including the Business Products (Data) Terms, Controller to Controller Data Terms and all component parts.

You agree that Section 13 of the TikTok Commercial Terms of Service shall apply to any and all liability arising under or in connection with the Online Data Terms, whether arising in contract, tort (including without limitation negligence) or otherwise.

For more information, see TikTok Advertiser Tools and Related Terms and TikTok Controller to Controller Data Terms.

Request

Endpoint

POST https://partner.quantri360.com/v1/tiktok_business/campaign/create/

Authentication & shop

NameInTypeSampleDescription
AuthorizationheaderheaderBearer q360_live_ab12cd34_…Khóa API của brand (tạo ở mục API key). Bắt buộc với mọi request. Brand suy từ key — không truyền mã brand.
platform_shop_idquerystring7000000000000000001Tài sản TikTok Business đã kết nối — "Mã tài sản" ở trang Nền tảng hoặc GET /v1/platforms (tài khoản quảng cáo cho Marketing API, tài khoản TikTok cho Organic / Messaging). Có thể bỏ khi chỉ kết nối một tài sản.

Request parameters

NameInTypeRequiredSampleDescription
objective_typebodystringYesAdvertising objective. For enum values and descriptions, see Objectives.
app_promotion_typebodystringNoRequired when objective_type is APP_PROMOTION. App promotion type. Enum values: - APP_INSTALL: App install. Get new users to install your app. - APP_RETARGETING: App retargeting. Re-engage existing users to take action in your app. - APP_PREREGISTRATION: App pre-registration. Get new users to pre-register before your app launches. To learn about how to create App Pre-registration ads, refer to here. Note: - APP_INSTALL can be used in an iOS14 Dedicated Campaign, while APP_RETARGETING and APP_PREREGISTRATION cannot be used. - App Pre-Registration is currently an allowlist-only feature. If you would like to access it, please contact your TikTok representative.
virtual_objective_typebodystringNoThe new objective type. Enum value: SALES. Use this field to create a campaign with the Sales objective, the combined objective for Website Conversions and Product Sales objectives. Learn more about the Sales objective.
sales_destinationbodystringNoRequired and valid only when virtual_objective_type is specified. Sales destination, the destination where you want to drive your sales. Enum values: - TIKTOK_SHOP: TikTok Shop. Drive sales on your TikTok Shop. - WEBSITE: Website. Drive sales on your website. - APP: App. Drive sales on your app (product catalog required). - WEB_AND_APP: Website and app. Drive sales on both your website and your app. - To learn about how to create ads with this setting, see Create ads with Website and App Optimization. Note: Creating ads with Website and App Optimization (with sales_destination set to WEB_AND_APP) is currently an allowlist-only feature. If you would like to access it, please contact your TikTok representative.
is_search_campaignbodybooleanNoWhether to create a Search Ads Campaign. With Search Ads Campaigns, you can select keywords and serve ads within TikTok's search result page. To learn more about how to create such campaigns, see Create Search Ads Campaigns. Supported values: true, false. Note: - Search Ads Campaigns are currently an allowlist-only feature. If you would like to access it, please contact your TikTok representative. - Once set, this field cannot be updated.
campaign_typebodystringNoCampaign type. Enums values: REGULAR_CAMPAIGN, IOS14_CAMPAIGN. The value IOS14_CAMPAIGN supports the advertising objectives of PRODUCT_SALES and APP_PROMOTION( its app_promotion_type = APP_INSTALL) . If app_promotion_type is specified as APP_RETARGETING or APP_PREREGISTRATION, campaign_type can only be set to REGULAR_CAMPAIGN. For iOS Dedicated Campaigns with other objectives, set campaign_type as REGULAR_CAMPAIGN. To learn more about Dedicated Campaigns, see Dedicated Campaign.
is_advanced_dedicated_campaignbodybooleanNoWhether the campaign is an Advanced Dedicated Campaign. Advanced Dedicated Campaigns leverage advanced delivery models that benefit from real-time signals. Enum values: true, false. Default value: false. To learn about how to create such campaigns, see Create Advanced Dedicated Campaigns. Note: Once set, this field cannot be updated.
disable_skan_campaignbodybooleanNoValid only when the following conditions are all met: - objective_type is APP_PROMOTION. - app_promotion_type is APP_INSTALL. - campaign_type is IOS14_CAMPAIGN. - app_id is set to the ID of an iOS app that is eligible for Advanced Dedicated Campaigns. To confirm whether an app is eligible for Advanced Dedicated Campaigns, use /app/list/ and check the returned advanced_dedicated_campaign_allowed. Whether to disable SKAN (SKAdNetwork) attribution, Apple's conversion attribution solution for iOS campaigns Enum values: - true: To disable SKAN attribution. The campaign will not be bound by Dedicated Campaign quota limits and you will be able to retrieve Self Attribution Network (SAN) metrics for the campaign. However, you cannot retrieve SKAN reporting metrics for the campaign. Learn more about SAN integration. - For a Dedicated Campaign using an app that is eligible for Advanced Dedicated Campaigns, you need to enable SKAN attribution or Advanced Dedicated Campaign or both. You cannot disable SKAN attribution and Advanced Dedicated Campaign simultaneously. - false: To enable SKAN attribution. The campaign will be bound by Dedicated Campaign quota limits and you will be able to retrieve SKAN metrics for the campaign. - If you enable Advanced Dedicated Campaign by setting is_advanced_dedicated_campaign to true simultaneously, you'll be able to retrieve both SAN and SKAN reporting metrics for the campaign. Note: - Disabling SKAN attribution for Dedicated Campaigns is currently an allowlist-only feature. If you would like to access it, please contact your TikTok representative. - If you are allowlisted for disabling SKAN attribution for Dedicated Campaigns, you cannot set bid_type to BID_TYPE_CUSTOM at the ad group level when the following conditions are all met: - At the campaign level: - is_advanced_dedicated_campaign is false. - disable_skan_campaign is false. - At the ad group level: - optimization_goal is INSTALL or IN_APP_EVENT. - Once set, this field cannot be updated. - Getting access to Advanced Dedicated Campaign requires the app to meet certain criteria. If your app is ineligible for Advanced Dedicated Campaign, reach out to your TikTok representative. Your TikTok representative will be able to provide troubleshooting support to help your app get access to Advanced Dedicated Campaign.
campaign_app_profile_page_statebodystringNoWhether to use app profile page to optimize delivery. Enum values: ON, OFF. Default value: OFF. You can use the field only when objective_type is APP_PROMOTION and your campaign is an iOS14 Dedicated Campaign. Otherwise, an error will occur.
rf_campaign_typebodystringNoWhen objective_type is specified as RF_REACH, use this field to set the campaign as a TikTok Pulse campaign, then you can get available premium contextual tags. Do not pass in this field when objective_type is not specified as RF_REACH. Enum values: STANDARD (Reach & Frequency campaign), PULSE(TikTok Pulse campaign). Note: - This is an allowlist-only feature. If you would like to access it, please contact your TikTok representative. - This field cannot be updated after creation. - If you select rf_campaign_type to PULSE , then you must enter contextual tags of PREMIUM type in the contextual_tag_ids field in /adgroup/rf/create/. In this case, the CPM in your ad group is fixed. - If you set rf_campaign_type to PULSE, then the targeting locations cannot be updated in /adgroup/rf/update/. - If you set rf_campaign_type to PULSE, then feed_type cannot be TOP_FEED in /adgroup/rf/create/.
campaign_product_sourcebodystringNoRequired when objective_type is set to PRODUCT_SALES. Product source of the campaign. Enum values: - CATALOG: Catalog. - STORE: TikTok Shop, or TikTok Showcase.Note: - The objective PRODUCT_SALES is currently an allowlist-only feature. If you would like to access it, please contact your TikTok representative. - For Video Shopping Ads, the product source setting at the campaign level determines the product source available at the ad group level: - If this field is set to CATALOG, you need to set the product_source of ad groups under the campaign to CATALOG. - If this field is set to STORE, you need to set the product_source of ad groups under the campaign to STORE or SHOWCASE.
catalog_enabledbodybooleanNoWhether to use your catalog to automatically advertise relevant products or services to people based on their unique interests, intent and actions. Supported values: true, false. Default value: false. Set this field to true only when you want to create Automotive Ads for Inventory or Automotive Ads for Models. When the following conditions are met, the field will be overwritten to true: - objective_type is PRODUCT_SALES. - campaign_product_source is CATALOG. Note: Once set, this field cannot be updated.
campaign_namebodystringYesCampaign name. Length limit: 512 characters. Emoji is not supported. Each word in Chinese or Japanese counts as two characters, while each letter in English counts as one character.
request_idbodystringNoRequest ID with which you can create campaigns with duplicate names. To create campaigns with duplicate names, send two requests for creating campaigns with the same campaign_name and different request_id. It also supports idempotency to prevent you from sending the same request twice within 10 seconds. If you retry requests with the same request ID multiple times within 10 seconds, then only one will succeed. It is different from the request_id returned in the response parameters, which is used to uniquely identify an HTTP request. The value should be a string representation of a 64-bit integer number. Example: 123456789
special_industriesbodystring[]NoSpecial ad categories. By selecting a housing, employment, or credit category for your campaign, you certify not to use TikTok to discriminate based on protected characteristics in ads relating to housing, employment, or credit and to adhere to TikTok's special ad category policy. Once you use this field to indicate that your campaign is promoting opportunities in any of the ad categories, the targeting options at the ad group level will be limited to help you comply with anti-discrimination laws in these categories. See Targeting requirements for ad groups in a campaign with special ad categories to learn about the requirements. Enum values: - HOUSING: Ads for real estate listings, homeowners insurance, mortgage loans or other related opportunities. - EMPLOYMENT: Ads for job offers, internship, professional certification programs or other related opportunities. - CREDIT: Ads for credit card offers, auto loans, long-term financing or other related opportunities. Note: - Using special ad categories in Shopping Ads with campaign product source as Catalog and in Shopping Ads with campaign product source as non-Catalog are currently separate allowlist-only features. If you would like to access them, please contact your TikTok representative. - This field is generally available to advertisers registered in America or Canada. Advertisers who are not registered in America or Canada but want to target these countries with special ad categories need to apply for an additional allowlist. - Once you select special ad categories for a campaign, you can remove the special ad categories, but you cannot change them or enable the special ad categories for an existing campaign if the special ad categories are currently disabled.
budget_optimize_onbodybooleanNoWhether to enable Campaign Budget Optimization (CBO). Enum values: true (enabled). For details about CBO, see Campaign Budget Optimization. Note: CBO for Video Shopping Ads with product source as catalog is currently an allowlist-only feature. If you would like to access it, please contact your TikTok representative.
budget_modebodystringNoRequired when objective_type is NOT RF_REACH. When objective_type is RF_REACH, budget_mode only supports BUDGET_MODE_INFINITE. Budget mode. When Campaign Budget Optimization (CBO) is enabled, budget_mode at the campaign level supports the following enum values: - BUDGET_MODE_TOTAL: Lifetime budget. - BUDGET_MODE_DYNAMIC_DAILY_BUDGET: Dynamic daily budget. It is the average daily budget over a week. Daily costs will not exceed 125% of the average daily budget. Weekly costs will not exceed the average daily budget * 7. - When objective_type is TRAFFIC, APP_PROMOTION, WEB_CONVERSIONS, LEAD_GENERATION, PRODUCT_SALES (Video Shopping Ads only), REACH, VIDEO_VIEWS, or ENGAGEMENT, and you want to set a non-lifetime budget, set this field to BUDGET_MODE_DYNAMIC_DAILY_BUDGET. Note: BUDGET_MODE_DYNAMIC_DAILY_BUDGET for campaign objectives REACH, VIDEO_VIEWS, and ENGAGEMENT is currently an allowlist-only feature. If you would like to access it, please contact your TikTok representative. - BUDGET_MODE_DAY: Daily budget. - When objective_type is REACH, VIDEO_VIEWS, or ENGAGEMENT, we recommend that you use dynamic daily budget (BUDGET_MODE_DYNAMIC_DAILY_BUDGET) instead of daily budget (BUDGET_MODE_DAY). When CBO is disabled, budget_mode at the campaign level supports the following enum values: - BUDGET_MODE_INFINITE: Unlimited budget. - BUDGET_MODE_TOTAL: Lifetime budget. - BUDGET_MODE_DAY: Daily budget. Note: For non-CBO campaigns, BUDGET_MODE_DAY is deprecated for campaign objectives REACH, VIDEO_VIEWS, and ENGAGEMENT. To learn about how to set budget modes, see Budget.
budgetbodyfloatNoRequired when budget_mode is BUDGET_MODE_DAY or BUDGET_MODE_DYNAMIC_DAILY_BUDGET or BUDGET_MODE_TOTAL. Campaign budget. To learn about the minimum budget and how to set budget modes, see Budget. To directly see the daily budget value range for a currency, see Currency-Daily budget value range.
rta_idbodystringNoRealtime API (RTA) ID, the RTA strategy identifier. To obtain the list of RTA IDs associated with your ad account, contact your TikTok representative. To learn about the prerequisites for and the steps of enabling RTA for your ads, see Realtime API. Note: Enabling RTA for your ads is currently an allowlist-only feature. If you would like to access it, please contact your TikTok representative. You will need to complete the onboarding process to be able to receive and respond to RTA requests sent to your system first.
rta_bid_enabledbodybooleanNoWhether to use RTA bid. Supported values: - true: enabled. - false: not enabled. Default value: false. You can only set this field to true when the following conditions are met: - objective_type is set to APP_PROMOTION, WEB_CONVERSIONS, or PRODUCT_SALES. - rta_id is passed. Note: Enabling RTA bid is currently an allowlist-only feature. If you would like to access it, please contact your TikTok representative.
rta_product_selection_enabledbodybooleanNoWhether to use RTA to automatically select products. Enum values: - true: enabled. - false: not enabled. Default value: false. You can only set this field to true when the following conditions are met: - objective_type is set to PRODUCT_SALES. - campaign_product_source is set to CATALOG. - rta_id is passed.
operation_statusbodystringNoNote - For Reach & Frequency campaigns, please specify operation_status as ENABLE or do not pass in operation_status. Do not specify operation_status as DISABLE. The status of the campaign when created. Enum values: - ENABLE : The campaign is enabled when created. - DISABLE : The campaign is disabled when created. Default value: ENABLE. If you want to update the status of the campaign after creation, use the /campaign/status/update/ endpoint.
postback_window_modebodystringNoValid only when campaign_type is IOS14_CAMPAIGN and operation_status is DISABLE. You can specify this field when you create a disabled campaign or when you disable an existing campaign by using /campaign/status/update/. The recommended practice is to specify this field when disabling an existing campaign. The mode that determines which SKAN (SKAdNetwork) 4.0 postback you want to secure. Options with longer windows require more time to receive, and as a result, more time to release the campaign back to the available number. Enum values: - POSTBACK_WINDOW_MODE1: This option secures the first postback, which corresponds to the 0-2 day attribution window. The data can take up to 4 days to return, and the campaign will wait for 4 days to release the campaign quota. - POSTBACK_WINDOW_MODE2: This mode secures the first two postbacks, which correspond to the 3-7 day attribution window. The data can take up to 13 days to return, and the campaign will wait for 13 days to release the campaign quota. - POSTBACK_WINDOW_MODE3: This mode secures all three postbacks, which correspond to the 8-35 day attribution window. The data can take up to 41 days to return, and the campaign will wait for 41 days to release the campaign quota. To learn more about SKAN 4.0 attribution window configuration and campaign quota, see Dedicated Campaigns. Note: - If you have set up Mobile Measurement Partner (MMP) Tracking with Adjust, Airbridge, Appsflyer, Branch, Kochava, or Singular for your App and your MMP SDK version is updated to a SKAN 4.0 supported SDK, you can transition your App to SKAN 4.0 on Events Manager. To learn about how to set up MMP tracking for your App, see How to Set Up App Attribution in TikTok Ads Manager. To learn more about how to transition your App to SKAN 4.0, see About SKAN 4.0 and TikTok and How to transition to SKAN 4.0. - Once set, this field cannot be updated. - If operation_status is set to ENABLE or not passed, this field will be ignored. - If you pass in this field when you have not enabled SKAN 4.0 for your App (app_id), an error will occur. - If this field is not passed when campaign_type is set to IOS14_CAMPAIGN, operation_status is set to DISABLE, and you have enabled SKAN 4.0 for your App, this field will default to POSTBACK_WINDOW_MODE1. - If you have enabled SKAN 4.0 for your App, ensure that you target devices running iOS 16.1 and later so that you can receive SKAN 4.0 postbacks. To only target iOS 16.1+ devices, set min_ios_version to 16.1 at the ad group level.
po_numberbodystringNoPO (purchase order) number. PO numbers are useful for invoice tracking and reconciliation. Learn more about PO numbers on monthly invoices.

Request examples

curl -s -X POST "https://partner.quantri360.com/v1/tiktok_business/campaign/create/" \
  -H "Authorization: Bearer $KEY" \
  -H "Content-Type: application/json" \
  -d '{"objective_type":"","campaign_name":""}'
Python
import requests

KEY = "q360_live_..."  # khóa API của brand
r = requests.post(
    "https://partner.quantri360.com/v1/tiktok_business/campaign/create/",
    params={},
    json={
        "objective_type": "",
        "campaign_name": ""
    },
    headers={"Authorization": f"Bearer {KEY}"},
    timeout=60,
)
print(r.status_code)
print(r.json())
Node.js
const KEY = 'q360_live_...'; // khóa API của brand
const url = new URL('https://partner.quantri360.com/v1/tiktok_business/campaign/create/');
for (const [k, v] of Object.entries({})) url.searchParams.set(k, typeof v === 'object' ? JSON.stringify(v) : String(v));
const r = await fetch(url, {
  method: 'POST',
  headers: { Authorization: `Bearer ${KEY}`, 'Content-Type': 'application/json' },
  body: JSON.stringify({"objective_type":"","campaign_name":""}),
});
console.log(r.status, await r.json());
PHP
<?php
$key = 'q360_live_...'; // khóa API của brand
$url = 'https://partner.quantri360.com/v1/tiktok_business/campaign/create/' . '?' . http_build_query([]);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer ' . $key, 'Content-Type: application/json']);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, '{"objective_type":"","campaign_name":""}');
$res = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
echo $status, "\n", $res;

Response

Response fields (as returned by TikTok Business)

NameTypeSampleDescription
codenumberThe response code. For the complete list of response codes and descriptions, see Appendix - Return Codes.
messagestringThe response message. For details, see Appendix - Return Codes.
request_idstringThe log id of a request, which uniquely identifies the request.
dataobjectReturned data.
advertiser_idstringAdvertiser ID.
campaign_idstringCampaign ID.
create_timestringTime at which the campaign was created.
modify_timestringTime at which the campaign was Modified.
objective_typestringAdvertising objective. For enum values, see Enumeration-Advertising Objectives.
app_promotion_typestringApp promotion type. Enum values: - `APP_INSTALL`: App install. Get new users to install your app. - `APP_RETARGETING`: App retargeting. Re-engage existing users to take action in your app. - `APP_PREREGISTRATION`: App pre-registration. Get new users to pre-register before your app launches.
virtual_objective_typestringThe new objective type. Enum value: `SALES`. Use this field to create a campaign with the Sales objective, the combined objective for Website Conversions and Product Sales objectives. Learn more about the Sales objective.
sales_destinationstringSales destination, the destination where you want to drive your sales. Enum values: - `TIKTOK_SHOP`: TikTok Shop. Drive sales on your TikTok Shop. - `WEBSITE`: Website. Drive sales on your website. - `APP`: App. Drive sales on your app (product catalog required). - `WEB_AND_APP`: Website and app. Drive sales on both your website and your app.
is_search_campaignbooleanWhether the campaign is a Search Ads Campaign. With Search Ads Campaigns, you can select keywords and serve ads within TikTok's search result page. Supported values: `true`, `false`.
is_smart_performance_campaignbooleanWhether the campaign is an automated campaign type. Supported values: - `true`: The campaign is either a Smart+ Campaign or a Smart Performance Web Campaign. - `false`: The campaign is a standard campaign type. Note: If `is_smart_performance_campaign` is `true` and `objective_type` is `WEB_CONVERSIONS`, you can confirm whether the web campaign is a Smart+ Web Campaign or Smart Performance Web Campaign by checking the returned `spc_type` from /campaign/spc/get/.
campaign_typestringCampaign Type, which indicates the campaign is a regular campaign or iOS 14 campaign. Enum values: `REGULAR_CAMPAIGN`, `IOS14_CAMPAIGN`.
app_idstringThe Application ID of the promoted app. You can get `app_id` by using the /app/list/ endpoint.
is_advanced_dedicated_campaignbooleanWhether the campaign is an Advanced Dedicated Campaign. Advanced Dedicated Campaigns leverage advanced delivery models that benefit from real-time signals. Enum values: `true`, `false`.
disable_skan_campaignbooleanWhether to disable SKAN (SKAdNetwork) attribution, Apple's conversion attribution solution for iOS campaigns. Enum values: - `true`: To disable SKAN attribution. The campaign will not be bound by Dedicated Campaign quota limits and you will be able to retrieve Self Attribution Network (SAN) metrics for the campaign. However, you cannot retrieve SKAN reporting metrics for the campaign. Learn more about SAN integration. - `false`: To enable SKAN attribution. The campaign will be bound by Dedicated Campaign quota limits and you will be able to retrieve SKAN metrics for the campaign.
bid_align_typestringThe attribution type for the Dedicated Campaign. The type determines which attribution network the target CPA (`conversion_bid_price`) or ROAS (`roas_bid`) at the ad group level is based on. Enum values: - `SAN`: SAN. - `SKAN`: SKAN.
campaign_app_profile_page_statestringIndicates the status of App Profile Page. Enum values: `INVALID`, `UNSET`, `ON`, `OFF`.
rf_campaign_typestringWhen `objective_type` is specified as `RF_REACH`, this field shows whether the campaign has been set as a TikTok Pulse campaign. Enum values: `STANDARD` (Reach & Frequency campaign), `PULSE` (TikTok Pulse campaign).
campaign_product_sourcestringReturned only when `objective_type` for the campaign is `PRODUCT_SALES` and the product source is configured for the campaign. Product source of the campaign. Enum values: - `CATALOG` : Catalog. - `STORE`: TikTok Shop, or TikTok Showcase.
catalog_enabledbooleanWhether to use your catalog to automatically advertise relevant products or services to people based on their unique interests, intent and actions.
campaign_namestringCampaign name.
special_industriesstring[]Special ad categories. Enum values: - `HOUSING`: Ads for real estate listings, homeowners insurance, mortgage loans or other related opportunities. - `EMPLOYMENT`: Ads for job offers, internship, professional certification programs or other related opportunities. - `CREDIT`: Ads for credit card offers, auto loans, long-term financing or other related opportunities.
budget_optimize_onbooleanReturned only for campaigns with CBO enabled. Whether CBO is enabled. Enum values: `true` (enabled). For details about CBO, see Campaign Budget Optimization.
bid_typestringBidding strategy on the campaign level.
deep_bid_typestringBidding strategy for in-app events. For enum values and their descriptions, see Enumeration - Deep-level Bidding Strategy.
roas_bidfloatROAS goal for Value Optimization.
optimization_goalstringOptimization goal.
budget_modestringBudget mode. Enum values: - `BUDGET_MODE_INFINITE`: Unlimited budget. - `BUDGET_MODE_TOTAL`: Lifetime budget. - `BUDGET_MODE_DAY` : Daily budget. - `BUDGET_MODE_DYNAMIC_DAILY_BUDGET`: Dynamic daily budget. It is the average daily budget over a week. Daily costs will not exceed 125% of the average daily budget. Weekly costs will not exceed the average daily budget * 7.
budgetfloatCampaign budget.
rta_idstringRealtime API (RTA) ID, the RTA strategy identifier.
rta_bid_enabledbooleanWhether to use RTA bid. Supported values: - `true`: enabled. - `false`: not enabled.
rta_product_selection_enabledbooleanWhether to use RTA to automatically select products. Enum values: - `true`: enabled. - `false`: not enabled.
operation_statusstringOperation status. Enum values: - `ENABLE` : The campaign is enabled (in 'ON' status). - `DISABLE`: The campaign is disabled (in 'OFF' status).
secondary_statusstringCampaign status (Secondary status).
postback_window_modestringThe mode that determines which SKAN 4.0 postback you want to secure. Enum values: - `POSTBACK_WINDOW_MODE1`: This option secures the first postback, which corresponds to the 0-2 day attribution window. The data can take up to 4 days to return, and the campaign will wait for 4 days to release the campaign quota. - `POSTBACK_WINDOW_MODE2`: This mode secures the first two postbacks, which correspond to the 3-7 day attribution window. The data can take up to 13 days to return, and the campaign will wait for 13 days to release the campaign quota. - `POSTBACK_WINDOW_MODE3`: This mode secures all three postbacks, which correspond to the 8-35 day attribution window. The data can take up to 41 days to return, and the campaign will wait for 41 days to release the campaign quota.
is_new_structurebooleanWhether the campaign is a new structure (for the same campaign, the structure of campaign, ad groups and ads are the same)
objectivestringCampaign type (application or landing page). Enum values: `APP`(application), `LANDING_PAGE`(Landing page).
po_numberstringPO (purchase order) number. PO numbers are useful for invoice tracking and reconciliation. Learn more about PO numbers on monthly invoices.

Response sample

HTTPS/1.1 200 OK
{
    "code": 0,
    "message": "OK",
    "request_id": "{{request_id}}",
    "data": {
        "operation_status": "ENABLE",
        "modify_time": "{{modify_time}}",
        "create_time": "{{create_time}}",
        "campaign_id": "{{campaign_id}}",
        "roas_bid": 0,
        "campaign_name": "{{campaign_name}}",
        "campaign_type": "REGULAR_CAMPAIGN",
        "is_new_structure": true,
        "advertiser_id": "{{advertiser_id}}",
        "is_smart_performance_campaign": false,
        "objective": "LANDING_PAGE",
        "secondary_status": "CAMPAIGN_STATUS_ENABLE",
        "budget_mode": "BUDGET_MODE_TOTAL",
        "budget": {{budget}},
        "objective_type": "TRAFFIC",
        "deep_bid_type": null
    }
}
(/code);

Get started

  1. Sign up for Partner
  2. Enable a data type of the Ads (Marketing API) group on the platform page
  3. Create an API key (tick the TikTok Business channel)
  4. Call it as in the examples above