Skip to main content
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

You may send raw email and phone values or their pre-hashed equivalents. Interchange immediately trims and lowercases raw email, canonicalizes an international phone number to E.164, and SHA-256 hashes it before task creation, audit capture, persistence, or forwarding. Raw phone values must include a leading + country code; Interchange never guesses a region.
hashedEmail and hashedPhone must be 64-character SHA-256 hex values and are canonicalized to lowercase. If you send both a raw value and its hash, they must match after normalization. Use externalId only for an opaque, audience-scoped member ID, and use uids[] only for universal identifiers such as UID2, RampID, or MAID. Do not place email addresses or phone numbers in externalId or uids[]; those values are treated as opaque identifiers and are not normalized or hashed for you.
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

Returns 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 — empty audiences, malformed email/phone identifiers, raw/hash mismatches, or a batch exceeding 100000 members.
  • 404 NOT_FOUNDadvertiserId does not exist or is not visible to the authenticated account.
See Errors for the full error contract.

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