VI | EN
Message us on Messenger
Developer resources

Report App Events in bulk — TikTok Business API

Report App Events in bulk · 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.

Report App Events in bulk

POST/app/batch/Via 360: POST https://partner.quantri360.com/v1/tiktok_business/app/batch/
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 report app events in bulk to reduce traffic to the Marketing API. You can report up to 1000 events in one request. If a request contains more than 1000 events, the entire request will be rejected.

> Important

> By using Events API endpoints, you agree to the TikTok Business Products (Data) Terms and that you will not share sensitive data with TikTok.

Request

Endpoint

POST https://partner.quantri360.com/v1/tiktok_business/app/batch/

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
tiktok_app_idbodystringYesTikTok App ID. TikTok App is created in event manager and linked to mobile app, which also makes it linked to the user as an asset. An advertiser can bind multiple TikTok App to a same mobile app. The ID can be generated by referring to this article.
batchbodyobject[]YesAn array of app events reported in batch. Length must be greater than 1 and smaller than 1000.

Request examples

curl -s -X POST "https://partner.quantri360.com/v1/tiktok_business/app/batch/" \
  -H "Authorization: Bearer $KEY" \
  -H "Content-Type: application/json" \
  -d '{"tiktok_app_id":"","batch":[{"type":"","context":""}]}'
Python
import requests

KEY = "q360_live_..."  # khóa API của brand
r = requests.post(
    "https://partner.quantri360.com/v1/tiktok_business/app/batch/",
    params={},
    json={
        "tiktok_app_id": "",
        "batch": [
            {
                "type": "",
                "context": ""
            }
        ]
    },
    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/app/batch/');
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({"tiktok_app_id":"","batch":[{"type":"","context":""}]}),
});
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/app/batch/' . '?' . 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, '{"tiktok_app_id":"","batch":[{"type":"","context":""}]}');
$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 return code. For details, see Appendix-Return Codes
messagestringThe return message. For details, see Appendix-Return Codes
request_idstringThe unique ID of the request.
dataobjectReturned data
partial_failurebooleanWhether the event reporting failed partially.
failed_eventsobject[]List of errors in the case of partial failure
order_in_batchnumberOrder in batch request
errorstringError message

Response sample

HTTPS/1.1 200 OK
{
    "message": "OK",
    "code": 0,
    "request_id": "2019091810032301011023224213558"
}

{
    "code": 40000,
    "message": "The value:{'aa'} is invalid for the associated parameter email.",
    "request_id": "2021012904054301023125302028613"
}

{
    "code": 20001,
    "message": "Partial success. Correct entries are forwarded while incorrect ones are dropped.",
    "request_id": "2021012904061701023125302030787",
    "data": {
        "partial_failure": true,
        "failed_events": [
            {
                "order_in_batch": 0,
                "error": "unhashed email"
            }
        ]
    }
}

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