POST /api/v2/buyer/advertisers/{advertiserId}/audiences/sync
Syncs first-party CRM audiences for an advertiser by adding, removing, or deleting members. Processing is asynchronous — the call returns 202 with a taskId you poll for completion.
Request
curl
Parameters
hashedEmail is the SHA-256 hash of a lowercased, trimmed email (64-char
hex). hashedPhone is the SHA-256 hash of an E.164 phone number. Send hashed
identifiers, never raw PII.TikTok Customer File audiences require at least 1,000 valid members when the
audience is first created. TikTok processing is asynchronous and can take up
to 24–48 hours. TikTok additions and removals must include a SHA-256 email,
phone, or MAID;
externalId alone cannot identify a TikTok member. Retry with
the same audience ID and idempotency key if a create, update, or delete
response is interrupted. Interchange reuses the provider audience and checks
TikTok’s current state instead of creating a duplicate. An accepted upload
does not mean matching is finished: wait while the audience is processing
and poll its status until TikTok reports a final result. If a failed create
cannot be cleaned up immediately, the response tells you to retry the delete;
Interchange does not report success until TikTok confirms the audience is
gone.Response
202 Accepted. taskId (identical to operationId) tracks async processing — poll GET /api/v2/buyer/tasks/{taskId} until status is completed or failed. See Async tasks. The synced audiences then appear via List audiences.
Errors
400 VALIDATION_ERROR— emptyaudiences, malformedhashedEmail/hashedPhone, or a batch exceeding 100000 members.404 NOT_FOUND—advertiserIddoes not exist or is not visible to the authenticated account.
Related
Advertiser tasks
All advertiser operations
Async tasks
Poll a taskId to completion
List audiences
Check match status after sync
Advertiser overview
Fields, lifecycle, and concepts