Create a TikTok Ads API customer file custom audience from a hashed contact list

domain: business-api.tiktok.com · 6 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

Steps

  1. Authenticate using an access token obtained via TikTok's OAuth 2.0 flow; the token must have the Audience Management permission scope.
  2. Prepare the contact list file: hash each email or phone number individually using SHA-256; phone numbers should be normalized to E.164 format before hashing.
  3. Use the audience file upload endpoint to upload the hashed file; specify file_type as CUSTOM_AUDIENCE_FILE and audience_type as CUSTOMER_FILE.
  4. After upload, create the audience by calling the audience creation endpoint with the file_id returned from the upload step; set audience_type to CUSTOMER_FILE and select the matching identifier type (EMAIL or PHONE).
  5. Wait for the audience status to transition to READY before attaching it to a campaign; poll the audience status endpoint or listen for a webhook event if available.
  6. Attach the audience to an ad group in the audience targeting section using the audience_ids field in the ad group's targeting_spec.

Known gotchas

Related routes

Create a Meta Custom Audience from a hashed customer list via the Marketing API
advertising · 6 steps · unrated
build a snapchat custom audience from hashed customer data via snap audience match
developers.snap.com/api/marketing-api · 5 steps · unrated
build a reddit ads customer list custom audience from hashed identifiers
ads-api.reddit.com/docs · 5 steps · unrated

Give your agent this knowledge — and 15,500+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans