TikTok’s official Marketing API for managing the full lifecycle of TikTok ad campaigns on behalf of authorized advertisers — advertiser discovery, campaigns, ad groups, ads, audiences, custom audiences, creatives, pixels, conversion events, and reporting. Best for agents that need to launch, optimize, or report on TikTok ads through TikTok For Business accounts. Unlike aggregator marketing platforms, this is a first-party surface that exposes TikTok-specific targeting (interests, behaviors, hashtags) and granular reporting breakdowns (placement, creative, audience). 14 example endpoints available through Lava’s AI Gateway. See the TikTok Ads API docs for full documentation.Documentation Index
Fetch the complete documentation index at: https://lava.so/docs/llms.txt
Use this file to discover all available pages before exploring further.
This is a catch-all provider — any valid URL under
https://business-api.tiktok.com is supported. TikTok Marketing API. Base URL: https://business-api.tiktok.com/open_api/v1.3. Auth header is Access-Token: <token> (NOT Authorization: Bearer). Discover advertiser_ids via GET /oauth2/advertiser/get/. Most resources are scoped to an advertiser_id query param, e.g. /campaign/get/?advertiser_id=…&campaign_ids=[…]. Responses are wrapped in an envelope: { code, message, request_id, data } — non-zero code indicates an error. Pagination uses page/page_size query params and returns data.page_info { page, page_size, total_number, total_page }. Reports endpoint (GET /report/integrated/get/) accepts breakdowns, dimensions, metrics, and date ranges as query params. See https://business-api.tiktok.com/portal/docs for full reference. The endpoints below are curated examples.Endpoints
List advertisers that have granted this app permission to manage their accounts. Start here after OAuth to discover the advertiser_ids the user authorized; every other endpoint takes one of these as a query param. Requires app_id and secret as query params alongside the user’s Access-Token.
GEThttps://business-api.tiktok.com/open_api/v1.3/oauth2/advertiser/get/?app_id={app_id}&secret={secret} — Free
- SDK
- cURL
Fetch details for one or more advertisers — currency, time zone, status, balance, contact info. Useful for confirming an authorized advertiser_id is active before further calls.
GEThttps://business-api.tiktok.com/open_api/v1.3/advertiser/info/?advertiser_ids=["{advertiser_id}"] — Free
- SDK
- cURL
List campaigns under an advertiser. Paginated via page/page_size; response envelope includes data.page_info . Filterable by status, objective_type, budget_mode.
GEThttps://business-api.tiktok.com/open_api/v1.3/campaign/get/?advertiser_id={advertiser_id}&page=1&page_size=20 — Free
- SDK
- cURL
Create a new campaign under an advertiser. Required: advertiser_id, campaign_name, objective_type (TRAFFIC, CONVERSIONS, REACH, VIDEO_VIEWS, LEAD_GENERATION, etc.), budget_mode, budget. New campaigns default to DISABLE; activate via campaign/update/.
POSThttps://business-api.tiktok.com/open_api/v1.3/campaign/create/ — Free
- SDK
- cURL
Update campaign settings. Common: campaign_name, budget, operation_status (ENABLE / DISABLE / DELETE). Only fields included are modified.
POSThttps://business-api.tiktok.com/open_api/v1.3/campaign/update/ — Free
- SDK
- cURL
List ad groups under an advertiser (optionally filtered by campaign_ids). Ad groups carry targeting, placement, bidding, schedule, and conversion event settings.
GEThttps://business-api.tiktok.com/open_api/v1.3/adgroup/get/?advertiser_id={advertiser_id}&page=1&page_size=20 — Free
- SDK
- cURL
Create an ad group under a campaign. Key fields: campaign_id, adgroup_name, placement_type, placements, billing_event (CPC, CPM, OCPM), bid_type, bid_price, schedule_type, schedule_start_time, location_ids, audience_ids, interests, pixel_id (for conversion ad groups).
POSThttps://business-api.tiktok.com/open_api/v1.3/adgroup/create/ — Free
- SDK
- cURL
List ads under an advertiser (filterable by campaign_ids or adgroup_ids). Each ad references a creative (video_id or image_ids) and an ad group, inheriting targeting from the ad group.
GEThttps://business-api.tiktok.com/open_api/v1.3/ad/get/?advertiser_id={advertiser_id}&page=1&page_size=20 — Free
- SDK
- cURL
Create one or more ads under an ad group. Each ad in creatives[] needs ad_name, ad_format, video_id (or image_ids), ad_text, call_to_action, and landing_page_url.
POST https://business-api.tiktok.com/open_api/v1.3/ad/create/ — Free
- SDK
- cURL
List custom audiences (CUSTOMER_FILE, ENGAGEMENT, WEB, APP, LOOKALIKE, etc.) under an advertiser. Use these as targeting building blocks for ad groups.
GEThttps://business-api.tiktok.com/open_api/v1.3/dmp/custom_audience/list/?advertiser_id={advertiser_id}&page=1&page_size=20 — Free
- SDK
- cURL
Create a customer-file custom audience. Identifiers must be SHA-256 hashed before upload (TikTok will not hash for you). After creation, use /dmp/custom_audience/file/upload/ to add hashed identifiers in batches.
POSThttps://business-api.tiktok.com/open_api/v1.3/dmp/custom_audience/create/ — Free
- SDK
- cURL
List TikTok Pixels for an advertiser. Required to find a pixel_id for conversion-based ad groups and for sending server-side events via the Events API.
GEThttps://business-api.tiktok.com/open_api/v1.3/pixel/list/?advertiser_id={advertiser_id} — Free
- SDK
- cURL
TikTok Events API — post a single server-side pixel event. Body fields: pixel_code, event (e.g. CompletePayment), event_id (for deduplication with browser pixel), timestamp (Unix seconds), and context.user identifiers (email, phone_number, external_id — all pre-hashed SHA-256). Optional properties for value/currency/content_id. Used for offline / CRM / CAPI conversion tracking.
POSThttps://business-api.tiktok.com/open_api/v1.3/pixel/track/ — Free
- SDK
- cURL
Integrated reporting — pull synchronous performance metrics for an advertiser. Specify report_type (BASIC, AUDIENCE, PLAYABLE_MATERIAL), data_level (AUCTION_CAMPAIGN, AUCTION_ADGROUP, AUCTION_AD, AUCTION_ADVERTISER), dimensions (campaign_id, adgroup_id, stat_time_day, country_code, etc.), metrics (impressions, clicks, spend, cpc, ctr, conversions, conversion_rate), and date_range (start_date / end_date YYYY-MM-DD). Returns paginated rows.
GEThttps://business-api.tiktok.com/open_api/v1.3/report/integrated/get/?advertiser_id={advertiser_id}&report_type=BASIC&data_level=AUCTION_CAMPAIGN&dimensions=["campaign_id","stat_time_day"]&metrics=["impressions","clicks","spend","cpc","ctr","conversion"]&start_date=2026-05-01&end_date=2026-05-11&page=1&page_size=100 — Free
- SDK
- cURL
Next Steps
All Providers
Browse all supported AI providers
Forward Proxy
Learn how to construct proxy URLs and authenticate requests