Sprig
Sync user attributes and events to Sprig for in-product research and surveys. Zeotap keeps your Sprig user profiles enriched with the latest warehouse data so you can target the right users for studies and surveys.
Prerequisites
- A Sprig account (Starter plan or above)
- A Sprig API key with Admin or Developer role permissions
- HTTPS access to
api.sprig.com
Permissions
To generate an API key, you need Admin or Developer role access in Sprig. API keys are scoped to a specific environment (Production or Development).
Authentication
Sprig uses API Key authentication.
- Log in to your Sprig dashboard
- Navigate to Settings > API Keys
- Click Generate API Key (or copy an existing key)
- Select the environment that matches your intended use (Production or Development)
- Copy the API key and paste it into Zeotap
Configuration
| Field | Type | Required | Description |
|---|---|---|---|
| Environment | Select | Yes | The Sprig environment to sync data to: Production or Development. Use the API key that corresponds to this environment. Default: Production |
Supported Operations
Sync Modes
| Mode | Supported |
|---|---|
| Upsert | Yes |
| Insert | Yes |
| Update | — |
| Mirror | — |
Audience Sync Modes
Sprig does not support audience/list membership management. Use standard sync modes to enrich user profiles.
Features
- Field Mapping: Yes
- Schema Introspection: No
Required Mapping Fields
| Field | Description |
|---|---|
| userId | Unique identifier for the user in Sprig. Must match the user ID used in the Sprig SDK. |
Default Destination Fields
| Field | Type | Description |
|---|---|---|
| userId | string | The unique user identifier |
| emailAddress | string | The user’s email address |
How It Works
- Zeotap reads rows from your warehouse model or audience
- Each row is sent as an individual user upsert to the Sprig Users API (
POST /v2/users) - The
userIdandemailAddressfields are mapped to top-level Sprig fields - All other mapped fields are sent as user attributes in the
attributesobject - Sprig returns
202 Acceptedfor each successful upsert - Failed rows are retried up to 3 times with exponential backoff
Attribute Limits
Sprig allows up to 100 attribute values per user. If you are syncing many fields, ensure the total attribute count stays within this limit.
Events
Events included via the API are for historical tracking purposes only and will not trigger in-product studies through the Sprig SDK. To trigger studies based on events, use the Sprig JavaScript or mobile SDK directly.
Rate Limits
| Plan | Rate Limit |
|---|---|
| Enterprise | 1,000 requests per second |
| Starter / Free | Contact Sprig support for details |
Zeotap automatically retries requests that receive 429 Too Many Requests responses with exponential backoff.
Best Practices
- Match user IDs: Ensure the
userIdyou sync from Zeotap matches the user ID set in the Sprig SDK on your website or app. Mismatched IDs create duplicate user profiles. - Use Production keys for production syncs: Keep Development API keys for testing only. Data sent with a Development key is isolated from production.
- Keep attributes under 100: Sprig limits users to 100 attribute values. Map only the fields you need for targeting studies.
- Sync incrementally: Use the Upsert sync mode to update only changed records rather than re-sending your entire user base each time.
Troubleshooting
Invalid API key
Verify your API key in Sprig under Settings > API Keys. Ensure the key matches the environment (Production or Development) selected in Zeotap.
Users not appearing in Sprig
Sprig may take a few minutes to process incoming user data. Check the Sprig People tab to confirm users are being received. Ensure the userId field is mapped and contains non-empty values.
Attributes not updating
Confirm that the total number of attributes per user does not exceed 100. Attributes beyond this limit may be silently dropped.
422 Unprocessable Entity errors
This typically means the request body is malformed. Ensure that userId is mapped to a non-empty string value. Check your field mappings for any null or invalid data types.
Connection timeout
Sprig’s API requires HTTPS. Verify that your network allows outbound HTTPS connections to api.sprig.com. Large syncs may also hit request timeouts — Zeotap retries these automatically.
Rate limit errors (429)
If you are on a Starter or Free plan, you may hit lower rate limits. Zeotap retries 429 responses automatically with backoff. For high-volume syncs, contact Sprig support about Enterprise rate limits.