VI | EN
Message us on Messenger
Developer resources

Disable or enable creatives in an Upgraded Smart+ Ad — TikTok Business API

Disable or enable creatives in an Upgraded Smart+ Ad · 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.

Disable or enable creatives in an Upgraded Smart+ Ad

POST/smart_plus/ad/material_status/update/Via 360: POST https://partner.quantri360.com/v1/tiktok_business/smart_plus/ad/material_status/update/
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 disable or enable one or more creatives in an Upgraded Smart+ Ad.

Request

Endpoint

POST https://partner.quantri360.com/v1/tiktok_business/smart_plus/ad/material_status/update/

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
smart_plus_ad_idbodystringYesAd ID. To obtain ad IDs, use /smart_plus/ad/get/.
ad_material_idsbodystring[]YesA list of ad material IDs for creatives to operate on. An ad material ID is an ad-specific material ID generated when a particular creative is used in an ad. This ID differs from the creative ID you receive when uploading the creative to your ad account’s Creative Library. To obtain ad material IDs associated with an ad, use /smart_plus/ad/get/. Max size: 20. You can operate on the following creative types: - Carousels from Standard Carousel Spark Ads (via Spark Ads Push). - Carousels from non-Spark Ad Standard Carousels. - Videos from non-Spark Ads. - Videos from Spark Ads (via Spark Ads Push). - TikTok video posts used as Spark Ad Videos (via Spark Ads Pull). - TikTok photo posts used as Standard Carousel Spark Ads (via Spark Ads Pull). Note: You cannot mix carousel and non-carousel creative types in the same request.
operation_statusbodystringYesThe operation to perform on the creatives. Enum values: DISABLE (pause), ENABLE (enable).

Request examples

curl -s -X POST "https://partner.quantri360.com/v1/tiktok_business/smart_plus/ad/material_status/update/" \
  -H "Authorization: Bearer $KEY" \
  -H "Content-Type: application/json" \
  -d '{"smart_plus_ad_id":"","ad_material_ids":[],"operation_status":""}'
Python
import requests

KEY = "q360_live_..."  # khóa API của brand
r = requests.post(
    "https://partner.quantri360.com/v1/tiktok_business/smart_plus/ad/material_status/update/",
    params={},
    json={
        "smart_plus_ad_id": "",
        "ad_material_ids": [],
        "operation_status": ""
    },
    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/smart_plus/ad/material_status/update/');
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({"smart_plus_ad_id":"","ad_material_ids":[],"operation_status":""}),
});
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/smart_plus/ad/material_status/update/' . '?' . 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, '{"smart_plus_ad_id":"","ad_material_ids":[],"operation_status":""}');
$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.
request_idstringThe log ID of a request, which uniquely identifies the request.
dataobjectReturned data.
smart_plus_ad_idstring[]Ad ID.
ad_material_idsstring[]A list of ad material IDs for creatives operated on. An ad material ID is an ad-specific material ID generated when a particular creative is used in an ad. This ID differs from the creative ID you receive when uploading the creative to your ad account’s Creative Library.
material_statusstringThe statuses of the creatives. Enum values: `DISABLE` (paused), `ENABLE` (enabled).

Response sample

{
    "code": 0,
    "message": "OK",
    "request_id": "{{request_id}}",
    "data": {
        "ad_material_ids": [
            "{{ad_material_id}}"
        ],
        "operation_status": "DISABLE",
        "smart_plus_ad_id": "{{smart_plus_ad_id}}"
    }
}

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