VI | EN
Message us on Messenger
Developer resources

Discover new keywords — TikTok Business API

Discover new keywords · 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.

Discover new keywords

GET/tool/search_keyword/keyword_idea/Via 360: GET https://partner.quantri360.com/v1/tiktok_business/tool/search_keyword/keyword_idea/
Description

Use this endpoint to discover new keywords and explore keyword ideas to reach people interested in your business.

Request

Endpoint

GET https://partner.quantri360.com/v1/tiktok_business/tool/search_keyword/keyword_idea/

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
keywordsquerystring[]YesA list of keywords. You can specify products or services closely related to your business. Max size: 10. Length limit for each keyword: 80 characters. - Only English words are supported. - Emojis and special symbols such as # are not supported. Note: For optimal results, provide all keywords in lowercase. Providing uppercase keyword is not recommended.
order_fieldquerystringNoSorting logic. Enum values: - AVG_MONTHLY_SEARCHES: Sort the results by the range of average monthly searches as indicated by the response parameters avg_monthly_searches_lower and avg_monthly_searches_upper. - THREE_MONTH_CHANGE: Sort the results by the response parameter three_month_change. - YEAR_OVER_YEAR_CHANGE: Sort the results by the response parameter year_over_year_change. - COMPETITION: Sort the results by the response parameter competition.Default value: AVG_MONTHLY_SEARCHES.
order_typequerystringNoSorting order. Enum values: - ASC: ascending. - DESC: descending.Default value: DESC.
brand_typequerystringNoBrand type. Enum values: - BRAND: Brand. - NON_BRAND: Non-brand. - ALL: All.Default value: ALL. Note: This filter is only available when country_codes is set to ["US"]. For all other countries or regions, ALL is the default and only allowed value.
country_codesquerystring[]NoThe location code of the country or region that you want to target. Max size: 1. Default value: US. For enum values, see List of values for country_codes. Note: Discovering new keywords for supported non-US locations outside of your home country is currently an allowlist-only feature. If you would like to access it, please contact your TikTok representative.

Request examples

curl -s "https://partner.quantri360.com/v1/tiktok_business/tool/search_keyword/keyword_idea/?keywords=%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/tool/search_keyword/keyword_idea/",
    params={
        "keywords": []
    },
    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/tool/search_keyword/keyword_idea/');
for (const [k, v] of Object.entries({"keywords":[]})) 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/tool/search_keyword/keyword_idea/' . '?' . http_build_query(['keywords' => '[]']);
$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.
request_idstringThe log ID of a request, which uniquely identifies the request.
dataobjectReturned data.
total_search_volume_lowernumberThe start of the range of total search volume for all the suggested keywords (`keywords`).
total_search_volume_uppernumberThe end of the range of total search volume for all the suggested keywords (`keywords`).
keywordsobject[]A list of suggested keywords relevant to the specified keyword or keywords based on the specified targeting country or region (`country_codes`).
recommended_keywordstringKeyword. A suggested keyword relevant to the specified keyword or keywords.
avg_monthly_searches_lowernumberAverage monthly searches (Low). This is the start of the range of the average number of monthly searches for the past month of a keyword and similar terms based on the specified targeting country or region.
avg_monthly_searches_uppernumberAverage monthly searches (High). This is the end of the range of the average number of monthly searches for the past month of a keyword and similar terms based on the specified targeting country or region.
three_month_changefloat3 month change. This data compares the monthly search volume of the most recent month's data to the data from two months before.
year_over_year_changefloatYoY change. This data compares the monthly search volume of the last month to the same month last year.
competitionstringCompetition. This shows how competitive ad placement is for a keyword, based on unique advertiser count bidding on the keyword in the last month. Enum values: - `HIGH`: High. - `MEDIUM`: Medium. - `LOW`: Low.
estimated_cpc_lowerfloatEstimated CPC (Low), in USD. This is the start of the range of CPC of what advertisers paid in the last month for the keyword’s top of search page ad based on specified targeting country or region. The average CPC of your keywords may vary.
estimated_cpc_upperfloatEstimated CPC (High), in USD. This is the end of the range of CPC of what advertisers have paid in the last month for the keyword’s top of search page ad based on specified targeting country or region. The average CPC of your keywords may vary.

Response sample

HTTPS/1.1 200 OK
{
    "code": 0,
    "message": "OK",
    "request_id": "{{request_id}}",
    "data": {
        "keywords": [
            {
                "avg_monthly_searches_lower": 500000,
                "avg_monthly_searches_upper": 1000000,
                "competition": "HIGH",
                "estimated_cpc_lower": 0.5062341041327454,
                "estimated_cpc_upper": 0.6947784896270967,
                "recommended_keyword": "shoes",
                "three_month_change": -0.3566219295724846,
                "year_over_year_change": -0.9556371579502115
            },
            {
                "avg_monthly_searches_lower": 100000,
                "avg_monthly_searches_upper": 250000,
                "competition": "HIGH",
                "estimated_cpc_lower": 0.6854101014434859,
                "estimated_cpc_upper": 0.8316111534680811,
                "recommended_keyword": "bear claw shoes",
                "three_month_change": -0.000005560127215710696,
                "year_over_year_change": 0.00040605635839757926
            },
            ...
            {
                "avg_monthly_searches_lower": 1000,
                "avg_monthly_searches_upper": 5000,
                "competition": "MEDIUM",
                "estimated_cpc_lower": 0,
                "estimated_cpc_upper": 0,
                "recommended_keyword": "mid dunks",
                "three_month_change": -0.9375,
                "year_over_year_change": -0.9999778408083673
            },
            {
                "avg_monthly_searches_lower": 1000,
                "avg_monthly_searches_upper": 5000,
                "competition": "HIGH",
                "estimated_cpc_lower": 0.0375,
                "estimated_cpc_upper": 0.07250000000000001,
                "recommended_keyword": "midnight ballerina shoes",
                "three_month_change": -0.7937971500419112,
                "year_over_year_change": -0.7861799217731421
            }
        ],
        "total_search_volume_lower": 2500000,
        "total_search_volume_upper": 5000000
    }
}

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