Get GMV Max Campaigns
GET/gmv_max/campaign/get/Via 360: GET https://partner.quantri360.com/v1/tiktok_business/gmv_max/campaign/get/
Description
Danh sách chiến dịch GMV Max (sản phẩm hoặc LIVE) của tài khoản quảng cáo: id, tên, bật / tắt, trạng thái chạy, ngày tạo / sửa, trạng thái bảo vệ ROI. Bước đầu để lấy campaign_id cho chi tiết, cập nhật và báo cáo.
- Chi tiết cấu hình (ngân sách, ROI mục tiêu, sản phẩm, video): /campaign/gmv_max/info/. Số liệu chi tiêu / doanh thu: /gmv_max/report/get/.
Request
Endpoint
GET https://partner.quantri360.com/v1/tiktok_business/gmv_max/campaign/get/
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 |
|---|---|---|---|---|---|
| filtering | query | object | Yes | {"gmv_max_promotion_types":["PRODUCT_GMV_MAX"]} | Bộ lọc (object JSON) — BẮT BUỘC có gmv_max_promotion_types:
- gmv_max_promotion_types (bắt buộc): ["PRODUCT_GMV_MAX"] = GMV Max sản phẩm · ["LIVE_GMV_MAX"] = GMV Max LIVE. Lưu ý API báo cáo dùng mã khác (PRODUCT / LIVE).
- store_ids: id TikTok Shop, tối đa 10 (shop dùng được cho GMV Max: /gmv_max/store/list/ với is_gmv_max_available = true).
- campaign_ids: tối đa 100 · campaign_name: tên chiến dịch.
- primary_status: STATUS_DELIVERY_OK (đang chạy) · STATUS_DISABLE (đã tắt) · STATUS_DELETE (đã xóa).
- creation_filter_start_time / creation_filter_end_time: khoảng ngày tạo, YYYY-MM-DD HH:MM:SS UTC; nên giới hạn trong 6 tháng. Không gửi = mọi thời điểm. |
| fields | query | string[] | No | ["campaign_id","campaign_name","operation_status","secondary_status"] | Mảng JSON các trường cần lấy (trong list). Không gửi = mọi trường. |
| page | query | int | No | 1 | Trang, từ 1 (mặc định 1). |
| page_size | query | int | No | 100 | Số chiến dịch mỗi trang: 1–100, mặc định 10. |
Pagination
Tăng page tới khi page = data.page_info.total_page.
Request examples
curl -s "https://partner.quantri360.com/v1/tiktok_business/gmv_max/campaign/get/?platform_shop_id=7000000000000000001&filtering=%7B%22gmv_max_promotion_types%22%3A%5B%22PRODUCT_GMV_MAX%22%5D%7D&page=1&page_size=100" \ -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/gmv_max/campaign/get/",
params={
"platform_shop_id": "7000000000000000001",
"filtering": {
"gmv_max_promotion_types": [
"PRODUCT_GMV_MAX"
]
},
"page": 1,
"page_size": 100
},
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/gmv_max/campaign/get/');
for (const [k, v] of Object.entries({"platform_shop_id":"7000000000000000001","filtering":{"gmv_max_promotion_types":["PRODUCT_GMV_MAX"]},"page":1,"page_size":100})) 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/gmv_max/campaign/get/' . '?' . http_build_query(['platform_shop_id' => '7000000000000000001', 'filtering' => '{"gmv_max_promotion_types":["PRODUCT_GMV_MAX"]}', 'page' => 1, 'page_size' => 100]);
$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)
| Name | Type | Sample | Description |
|---|---|---|---|
| code | int | 0 | 0 = thành công; khác 0 xem `message` (TikTok trả HTTP 200 kèm code lỗi; vd 40002 = tham số sai, message liệt kê giá trị hợp lệ). |
| message | string | OK | Thông điệp của TikTok. |
| request_id | string | 2021080307532501024502410704A7306F | Mã request TikTok — ghi lại khi cần tra lỗi. |
| data | object | Dữ liệu. | |
| list | object[] | Chiến dịch (chỉ các trường đã yêu cầu ở `fields`). | |
| advertiser_id | string | 7000000000000000001 | |
| campaign_id | string | 1800000000000000001 | Id chiến dịch. |
| campaign_name | string | GMV Max - Áo sơ mi | |
| operation_status | string | ENABLE | `ENABLE` = đang bật · `DISABLE` = đang tắt. |
| secondary_status | string | Trạng thái chạy chi tiết của chiến dịch. | |
| objective_type | string | PRODUCT_SALES | Mục tiêu: `PRODUCT_SALES` (bán sản phẩm). |
| create_time | string | 2026-10-01 00:00:01 | Ngày tạo, `YYYY-MM-DD HH:MM:SS` UTC. |
| modify_time | string | 2026-10-20 03:10:00 | Lần sửa cuối, cùng định dạng. |
| roi_protection_compensation_status | string | IN_EFFECT | `IN_EFFECT` = đang được bảo vệ ROI (chiến dịch có > 20 chuyển đổi trong 24 giờ mà ROI < 90% mục tiêu thì TikTok bù tín dụng quảng cáo; sửa ROI, tạm dừng hoặc bật "tối đa phân phối" làm mất điều kiện; xét lại mỗi 24 giờ) · `NOT_ELIGIBLE` = không thuộc diện. |
| page_info | object | Phân trang. | |
| page | int | 1 | |
| page_size | int | 100 | |
| total_number | int | 12 | Tổng số chiến dịch. |
| total_page | int | 1 | Tổng số trang. |
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