Rokt
Sync custom audience lists to Rokt for e-commerce advertising targeting and suppression. Zeotap uploads email-based audience segments to the Rokt Data API, enabling you to reach high-intent shoppers or suppress existing customers from ad campaigns.
Prerequisites
- A Rokt account with API access enabled
- Your Rokt Account ID (available in the OnePlatform dashboard)
- API credentials (API key and API secret) — contact your Rokt account manager to obtain these
Authentication
Rokt uses Basic HTTP Authentication with an API key and secret pair.
- In Zeotap, navigate to Destinations and click Add Destination
- Select Rokt from the destination catalog
- Enter your API Key (format:
rpub-xxxxx-xxxxx) and API Secret (format:rsec-xxxxx-xxxxx) - Zeotap encodes these credentials as a Base64 Basic auth header for all API requests
Your API credentials are securely stored and never exposed in the UI after initial entry.
Configuration
| Field | Type | Required | Description |
|---|---|---|---|
| Account ID | Text | Yes | Your Rokt Account ID from the OnePlatform dashboard. Example: 123456789 |
Target Settings
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
| Audience List Name | Text | No | AdvertiserDatabase | Name of the custom audience list in Rokt. Used to organize audiences for targeting or suppression. |
Supported Operations
Sync Modes
Rokt is an audience-only destination. Standard data sync modes are not applicable — use audience sync modes below.
Audience Sync Modes
| Mode | Supported | Description |
|---|---|---|
| Add | Yes | Add members to the audience list (Rokt “include” action) |
| Remove | Yes | Remove members from the audience list (Rokt “exclude” action) |
| Mirror | Yes | Full sync — adds new members and removes members no longer in the audience |
| Upsert | Yes | Idempotently add members to the audience list |
Features
- Field Mapping: No
- Schema Introspection: No
Default Destination Fields
| Field | Type | Description |
|---|---|---|
| string | Email address for audience matching. Rokt hashes emails using SHA-256 before matching. | |
| Hashed Email (SHA-256) | string | Pre-hashed SHA-256 email address. Use this if your warehouse stores pre-hashed emails. |
How It Works
- Email extraction: Zeotap extracts the
emailorhashed_emailfield from each row in the sync - Batching: Rows are grouped into batches of up to 100,000 emails per API request
- Action mapping: Based on the audience sync mode, rows are sent with either an
include(add/upsert) orexclude(remove) action - Plaintext vs. hashed separation: Plaintext and pre-hashed emails are sent in separate API requests, as Rokt does not allow mixing them in a single request
- API upload: Each batch is sent via
POST https://data.rokt.com/v3/import/suppressionwith Basic authentication - Retry logic: Failed requests are retried up to 3 times with exponential backoff. HTTP 429 (rate limit) responses respect the
Retry-Afterheader.
Rate Limits
| Resource | Limit |
|---|---|
| Emails per request | 100,000 |
| Requests per second | 4 |
| Concurrent connections | 4 |
Zeotap processes audience uploads sequentially to stay within the 4-connection concurrency limit. For large audiences (millions of emails), expect upload times proportional to the batch count at ~4 requests per second.
Best Practices
- Use plaintext emails when possible — Rokt normalizes and hashes them consistently on their end, improving match rates
- Pre-hash only if required — If your warehouse stores SHA-256 hashed emails, map them to the
hashed_emailfield. Ensure they were hashed after lowercasing and trimming whitespace. - Name your lists descriptively — Use the Audience List Name field to organize different audience segments (e.g.,
Premium_Customers,Cart_Abandoners) - Schedule syncs during off-peak hours — Large audience uploads run faster when API traffic is lower
- Use Mirror mode for suppression lists — Mirror mode ensures removed customers are excluded from future ad impressions
Troubleshooting
Authentication failed: invalid API key or secret
Verify that your API key starts with rpub- and your API secret starts with rsec-. These credentials are issued by your Rokt account manager — contact them if you need new credentials.
Account ID not found
Ensure the Account ID matches exactly what is shown in your Rokt OnePlatform dashboard under account settings. The Account ID is numeric.
Empty audience after sync
Rokt may take up to a few hours to process uploaded audience lists before they appear in the platform. Check the Audiences section of OnePlatform after processing completes.
Rate limit errors (HTTP 429)
Zeotap automatically retries rate-limited requests with backoff. If you consistently hit rate limits, reduce the sync frequency or contact Rokt to increase your API quota.
Emails not matching in Rokt
Ensure email addresses are valid and correctly formatted. Rokt normalizes emails by lowercasing and trimming whitespace before hashing. If you are sending pre-hashed emails, verify they were hashed after the same normalization (lowercase, trimmed, SHA-256 hex-encoded).
Connection timeout
Large batches (near the 100,000 email limit) may take longer to process. Zeotap uses a 120-second timeout per request. If timeouts persist, check your network connectivity or contact Rokt support to verify API health.