Update an audience
POST/dmp/custom_audience/update/Via 360: POST https://partner.quantri360.com/v1/tiktok_business/dmp/custom_audience/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 update the details of an audience, like audience name and audience file.
The TikTok API for Business supports three types of audience modifications for customer file audience:
REPLACE(Replace):Replace previous (all) data files.APPEND(New): Add new data files.REMOVE(Remove): Remove specified data files.
Request
Endpoint
POST https://partner.quantri360.com/v1/tiktok_business/dmp/custom_audience/update/
Authentication & shop
| Name | In | Type | Sample | Description |
|---|---|---|---|---|
| Authorization | header | header | Bearer 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_id | query | string | 7000000000000000001 | Tà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
| Name | In | Type | Required | Sample | Description |
|---|---|---|---|---|---|
| custom_audience_id | body | string | Yes | Custom audience ID. | |
| custom_audience_name | body | string | No | New name for the audience. Length limit: 128 characters. You must pass in either this field or file_paths. | |
| audience_sub_type | body | string | No | Audience sub type, indicating the type of ads that the audience can be used for.
The allowed enum value: REACH_FREQUENCY(To enable the audience to be used in Reach & Frequency campaigns). It means you can only convert audience sub type from NORMAL to REACH_FREQUENCY, but not the other way round.
Note:
- If you update this field, changes to other data fields will be ignored.
- If you want to update a Lookalike audience, you cannot change the audience_sub_type to REACH_FREQUENCY. Otherwise, an error will occur. | |
| file_paths | body | string[] | No | The files you upload to update the Customer File audience. You must pass in either this field or custom_audience_name.
The recommended size is per request to ensure stability.
Once you pass in this field, you can specify the modification type (APPEND, REMOVE or REPLACE) via action.
The files must be encrypted with the same encryption method/type with the audience that you want to update. | |
| action | body | string | No | Modification type. This field is valid when file_paths is passed. Enum values:
- APPEND: Upload files to expand the Customer File audience. Only data not included in the original file will be added.
- REMOVE: Upload files to remove the Customer File audience. Only the data that coincide with the original file will be removed.
- REPLACE: Upload files to replace the Customer File audience. All the data in the original file will be replaced. Default value: REPLACE.
Note: The APPEND, REMOVE and REPLACE operations will fail if the audience size is less than 1,000 after the operation. |
Request examples
curl -s -X POST "https://partner.quantri360.com/v1/tiktok_business/dmp/custom_audience/update/" \
-H "Authorization: Bearer $KEY" \
-H "Content-Type: application/json" \
-d '{"custom_audience_id":""}'
Python
import requests
KEY = "q360_live_..." # khóa API của brand
r = requests.post(
"https://partner.quantri360.com/v1/tiktok_business/dmp/custom_audience/update/",
params={},
json={
"custom_audience_id": ""
},
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/dmp/custom_audience/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({"custom_audience_id":""}),
});
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/dmp/custom_audience/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, '{"custom_audience_id":""}');
$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)
| Name | Type | Sample | Description |
|---|---|---|---|
| code | number | Return code, see Appendix-Return Codes. | |
| message | string | Return message, see Appendix-Return Codes. | |
| data | object | Returned data. This field will be an empty object (`{}`). | |
| request_id | string | The log id of a request, which uniquely identifies the request. |
Response sample
HTTPS/1.1 200 OK
{
"code": 0,
"message": "OK",
"request_id": "{{request_id}}",
"data": {}
}
(/code);
Get started
- Sign up for Partner
- Enable a data type of the Ads (Marketing API) group on the platform page
- Create an API key (tick the TikTok Business channel)
- Call it as in the examples above