VI | EN
Message us on Messenger
Developer resources

Get Smart Creative materials — TikTok Business API

Get Smart Creative materials · 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.

Get Smart Creative materials

GET/ad/aco/get/Via 360: GET https://partner.quantri360.com/v1/tiktok_business/ad/aco/get/
Description

Use this endpoint to get creative materials for Smart Creative ads, including call-to-actions, texts, ad names, images, or video materials. This is a totally new endpoint in v1.3.

The response of endpoints /ad/aco/create/ and /ad/aco/update/ are mock results which return the request parameters you've passed in, because the data processing is not finished instantly. To obtain the actual accurate result, wait for 2 or 3 seconds after your call to the endpoint /ad/aco/create/or /ad/aco/update/and then use the endpoint /ad/aco/get/.

Request

Endpoint

GET https://partner.quantri360.com/v1/tiktok_business/ad/aco/get/

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
adgroup_idsquerystring[]YesA list of ad group IDs. Quantity: 1-100.
exclude_field_types_in_responsequerystring[]NoThe type of fields that you want to remove from the response. Allowed enum values: - NULL_FIELD: Fields with null values.

Request examples

curl -s "https://partner.quantri360.com/v1/tiktok_business/ad/aco/get/?adgroup_ids=%5B%5D" \
  -H "Authorization: Bearer $KEY"
Python
import requests

KEY = "q360_live_..."  # khóa API của brand
r = requests.get(
    "https://partner.quantri360.com/v1/tiktok_business/ad/aco/get/",
    params={
        "adgroup_ids": []
    },
    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/ad/aco/get/');
for (const [k, v] of Object.entries({"adgroup_ids":[]})) url.searchParams.set(k, typeof v === 'object' ? JSON.stringify(v) : String(v));
const r = await fetch(url, {
  method: 'GET',
  headers: { Authorization: `Bearer ${KEY}` },
});
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/ad/aco/get/' . '?' . http_build_query(['adgroup_ids' => '[]']);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer ' . $key]);
$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
codenumberResponse code. For the complete list of response codes and descriptions, see Appendix - Return Codes.
messagestringResponse message. For details, see Appendix - Return Codes.
dataobjectReturned data.
listobject[]Data list.
advertiser_idstringAdvertiser ID.
adgroup_idstringAd group ID.
media_info_listobject[]List of media information.
material_idstringMaterial ID.
material_operation_statusstringThe status of the material. Enum values: `ENABLE` (the material can be used), `DISABLE`(the material cannot be used).
media_infoobjectMedia Information.
image_infoobject[]Image information. - If the material is a video, the `image_info` will provide details about the video cover image. - If the material is an image, the `image_info` will provide details about the image material.
web_uristringImage ID.
file_namestringThe image name you specified to form the ad name when creating Smart Creative ads via /ad/aco/create/. If you didn't pass `file_name` within the `image_info` object array when creating Smart Creative ads, the value of this field will be an empty string.
video_infoobjectReturned only when the material is a video. Video information.
video_idstringVideo ID.
file_namestringThe video name you specified to form the ad name when creating Smart Creative ads via /ad/aco/create/. If you didn't pass `file_name` within the `video_info` object when creating Smart Creative ads, the value of this field will be an empty string.
aigc_disclosure_typestringWhether to turn on the AIGC (Artificial Intelligence Generated Content) self-disclosure toggle to indicate the ad contains AI-generated content. After the toggle is turned on, your ad will carry an "Advertiser labeled as Al-generated" label when viewed in full. Enum values: - `SELF_DISCLOSURE`: To turn on the toggle to declare that the ad contains AI-generated content. - `NOT_DECLARED`: To not declare that the ad contains AI-generated content.
tiktok_item_idstringThe ID of the TikTok post to be used as an ad (Spark Ad).
material_namestringName of the material (image or video). The `material_name` is used to determine the name displayed for a material in TikTok Ads Manager: - If the material is an image, its name in TikTok Ads Manager is the same as the value of `material_name`. - If the material is a video, its name in TikTok Ads Manager is the value of either `file_name` (when the value of `file_name` is not empty) or `material_name` (when the value of `file_name` is empty).
identity_idstringIdentity ID.
identity_typestringIdentity type. Enum values: `AUTH_CODE`, `TT_USER`. For details about identities, see Identities.
title_listobject[]List of ad titles (also called ad texts). Ad titles are shown to your audience as part of your ad creative, to deliver the message you intend to communicate to them.
titlestringAd title (ad text).
material_idstringMaterial ID.
material_operation_statusstringThe status of the material. Enum values: `ENABLE` (the material can be used), `DISABLE`(the material cannot be used).
call_to_action_listobject[]Call-to-action list.
call_to_actionstringCall-to-action text. For enum values, see Enumeration - Call-to-action.
deeplink_listobject[]List of deeplinks.
deeplinkstringThe specific location where you want your audience to go if they have your app installed.
deeplink_typestringThe deeplink type. Allowed values differs based on campaign objectives. Allowed values: `NORMAL` (supported in Traffic, Conversion), `DEFERRED_DEEPLINK` (supported in App Install). The default value is `NORMAL`. For an ad that will be included in an iOS 14 campaign, this field cannot be set to `DEFERRED_DEEPLINK`.
display_name_listobject[]Display names.
app_namestringApp name.
landing_page_namestringLanding page name.
avatar_icon_listobject[]Avatar image information list.
avatar_iconobjectAvatar image information.
web_uristringAvatar image ID.
page_listobject[]Page ID list.
page_idstringPage ID.
card_listobject[]Card ID list. Length range: [0,1].
card_idstringDisplay Card ID, Gift Code Sticker ID, Countdown Sticker ID, or Download Card ID.
landing_page_urlsstring[]Landing page URL list.
landing_page_urlstringLanding page URL.
common_materialobjectCommon material.
ad_namestringAd name.
call_to_action_idstringThe ID of the CTA portfolio that you want to use in your ads.
creative_authorizedbooleanWhether you grant displaying some of your ads in our TikTok for Business Creative Center. Only valid for non-US advertisers, the default value is `false`. Note: `creative_authorized` can only be used for video ads.
playable_urlstringPlayable material url.
fallback_typestringFallback Type. If the audience do not have the app installed, you can have them fall back to install the app, or to view a specific web page. Allowed values: `APP_INSTALL `, `WEBSITE`, `UNSET`. Note: Not applicable for Deferred Deeplink.
tracking_infoobjectTracking information.
impression_tracking_urlsstring[]Default Impression Tracking URL.
click_tracking_urlsstring[]Click Tracking URL.
tracking_pixel_idstringThe pixel ID that you'd like to track. You can use this field to track offsite events.
tracking_app_idstringThe ID of the application that is being tracked. Note: This field is currently an allowlist-only feature for the advertising objectives `APP_PROMOTION`, `PRODUCT_SALES`, and `ENGAGEMENT`. If you would like to access it for these three objectives, please contact your TikTok representative.
tracking_offline_event_set_idsstring[]A list of Offline Event set IDs that are tracked. See here to learn more about how to create and manage Offline Event sets. Note: Offline Events Tracking is currently an allowlist-only feature. If you would like to access it, please contact your TikTok representative.
identity_idstringIdentity ID when you are not using Spark Ads (`tiktok_item_id`).
identity_typestringIdentity type when you are not using Spark Ads (`tiktok_item_id`). The only supported value is `CUSTOMIZED_USER`.
is_smart_creativebooleanWhether Smart Creative is enabled for the ad group.
request_idstringThe log id of a request, which uniquely identifies the request.

Response sample

HTTPS/1.1 200 OK
{
    "message": "OK",
    "code": 0,
    "data": {
        "list": [
            {
                "open_url": null,
                "title_list": [
                    {
                        "title": "Testing"
                    }
                ],
                "open_url_list": [
                    {
                        "open_url": ""
                    }
                ],
                "app_name": null,
                "avatar_icon_list": null,
                "click_tracking_url": "",
                "landing_page_urls": null,
                "profile_image": null,
                "pixel_id": null,
                "landing_page_url": null,
                "impression_tracking_url": "",
                "page_list": null,
                "external_action": null,
                "call_to_action_list": [],
                "display_name": null,
                "display_name_list": [
                    {
                        "source": "20210531132544123456",
                        "app_name": ""
                    }
                ],
                "ad_id": 1234573413994497,
                "page_id": null,
                "media_info_list": [
                    {
                        "media_info": {
                            "image_info": [
                                {
                                    "file_name": null,
                                    "web_uri": "v0201/aa4785144d3894fcce25033c86123456"
                                }
                            ],
                            "video_info": {
                                "file_name": "12345096e244f1dab24a7e40870cc.MP4",
                                "video_id": "v12345270000bvgsmvthr46s2t1dgm20"
                            },
                            "image_mode": "IMAGE_MODE_VIDEO"
                        }
                    }
                ]
            }
        ]
    },
    "request_id": "xxx"
}
(/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