Search documentation...

ChangelogBook a demoSign up


Elasticsearch is a distributed, free and open search and analytics engine for all types of data, including textual, numerical, geospatial, structured, and unstructured.

View Elasticsearch's documentation.

Supported syncing

Sync TypeDescriptionSupported Sync ModesAPI Reference
Index documentsSync data from any source to an Elasticsearch indexUpsert, UpdateIndex API

Connect to Elasticsearch

Go to the Destinations overview page and click the Add destination button. Select Elasticsearch and click Continue. You can then authenticate Hightouch to Elasticsearch either with an Elasticsearch Cloud ID and API key or via optional basic authentication.

Authenticate with an Elasticsearch Cloud ID and API key

You can find your Cloud ID in your Elasticsearch deployment. To generate an API key, follow these steps in the Elasticsearch docs.

Authenticate with basic authentication

Enter the following fields into Hightouch:

  • Protocol: Select the protocol used for connecting to Elasticsearch. This is either HTTP or HTTPS.
  • Host: The hostname or IP address of your Elasticsearch server.
  • Port: The port number of your Elasticsearch server's HTTP API. The default is 9200, but yours may be different.
  • Username: This can be your personal Elasticsearch login or a dedicated user for Hightouch.
  • Password: The password for the user specified above.

Sync configuration

Once you've set up your Elasticsearch destination and have a model to pull data from, you can set up your sync configuration to begin syncing data. Go to the Syncs overview page and click the Add sync button to begin. Then, select the relevant model and the Elasticsearch destination you want to sync to.

Syncing to an index

An Elasticsearch index is the place where the data used by a search engine is stored. You can use Hightouch to update individual documents in an index.

Record matching

To match rows from your model to documents in Elasticsearch, you need to select a model column and corresponding Elasticsearch field. You can match on any Elasticsearch field.

Field mapping

You can sync data to both existing fields and fields that don't yet exist in Elasticsearch. If you send data to a field that doesn't exist yet, Hightouch adds the field and automatically detects its type.

Delete behavior

The delete behavior you select dictates what to do when a row no longer appears in your model's query results. You have the following options:

Do nothingKeep the document in Elasticsearch
ClearKeep the document in Elasticsearch, but set mapped fields to empty
DeleteRemove the document from Elasticsearch

Tips and troubleshooting

Connect to Elasticsearch on AWS

To connect to an AWS hosted Elasticsearch, connect to Elastic Cloud where the instance has a Cloud ID, then generate an API key. If you can't connect via this method, use the basic authentication method to connect with username and password.

There may be compatibility issues across different versions of Elasticsearch. If you receive an error when you test the connection, please for support for your specific version.

If you are running Elasticsearch via Amazon OpenSearch Service, connect directly via the OpenSearch destination

Common errors

To date, our customers haven't experienced any errors while using this destination. If you run into any issues, please don't hesitate to . We're here to help.

Live debugger

Hightouch provides complete visibility into the API calls made during each of your sync runs. We recommend reading our article on debugging tips and tricks to learn more.

Sync alerts

Hightouch can alert you of sync issues via Slack, PagerDuty, SMS, or email. For details, please visit our article on alerting.

Ready to get started?

Jump right in or a book a demo. Your first destination is always free.

Book a demoSign upBook a demo

Need help?

Our team is relentlessly focused on your success. Don't hesitate to reach out!

Feature requests?

We'd love to hear your suggestions for integrations and other features.

Last updated: Dec 22, 2023

On this page

Supported syncingConnect to ElasticsearchAuthenticate with an Elasticsearch Cloud ID and API keyAuthenticate with basic authenticationSync configurationSyncing to an indexTips and troubleshootingCommon errorsLive debuggerSync alerts

Was this page helpful?