Skip to Content

Algolia

Sync records to an Algolia index for real-time search, recommendations, and personalization. Zeotap pushes structured data from your warehouse directly into Algolia’s search infrastructure.

Prerequisites

  • An Algolia account
  • Your Application ID
  • A Write or Admin API key with permissions to add, update, and delete records in the target index

Authentication

Algolia uses API Key authentication with an Application ID.

  1. In Algolia, navigate to Settings → API Keys in the dashboard
  2. Copy your Application ID from the top of the API Keys page
  3. Use an existing Write API key or create a new one with at least addObject, deleteObject, and editSettings ACLs
  4. Enter your Application ID and API Key in Zeotap

Configuration

Algolia has no additional configuration fields beyond authentication. All settings are configured per-sync in Target Settings.

Target Settings

FieldTypeRequiredDescription
Index NameTextYesThe name of the Algolia index to write records to. Only alphanumeric characters, underscores, hyphens, and dots are allowed. The index is created automatically if it does not exist. Example: products_v2

Supported Operations

Sync Modes: Upsert, Insert, Update, Mirror

Audience Sync Modes: —

Features

  • Field Mapping: Yes
  • Schema Introspection: No

Field Mapping

Destination FieldTypeRequiredDescription
objectIDStringYesUnique identifier for each record in the Algolia index. Maps to Algolia’s objectID field. If not present in the row, Zeotap uses the sync’s primary key.

All other mapped fields are passed through as record attributes in the Algolia index. You can map any columns from your warehouse model to create searchable, filterable, or displayable attributes.

How It Works

  1. Zeotap maps your warehouse data to Algolia records, ensuring each record has an objectID
  2. Records are uploaded using Algolia’s batch write API in chunks of up to 1,000 records per request
  3. Sync modes map to Algolia operations:
    • Upsert and Insert use addObject (creates or replaces records by objectID)
    • Update uses partialUpdateObjectNoCreate (partial update of existing records; does not create missing records)
    • Mirror adds new and changed records, and deletes removed records using deleteObject
  4. If the target index does not exist, Algolia creates it automatically on the first write

Rate Limits

Algolia enforces rate limits based on your plan. Zeotap processes batch requests sequentially and includes automatic retry logic with backoff for transient errors.

Troubleshooting

Authentication failed

Verify your Application ID and API key in the Algolia dashboard under Settings → API Keys. Ensure the API key has not been revoked or expired.

Insufficient permissions

Ensure the API key has the required ACLs: addObject, deleteObject, and editSettings. You can check and update ACLs in Settings → API Keys in the Algolia dashboard.

Records not updated

Update sync mode only modifies records that already exist in the index (it uses partialUpdateObjectNoCreate). If a row’s objectID does not match an existing record, that record is silently skipped. Use Upsert for the initial sync to populate the index, then switch to Update for subsequent partial updates.

Missing objectID

Every record requires an objectID. Ensure your field mapping includes the objectID field, or that the sync’s primary key is configured. Records without an identifiable objectID may cause errors.

Invalid index name

Index names can only contain alphanumeric characters, underscores (_), hyphens (-), and dots (.). Special characters and spaces are not allowed.

Last updated on