Elasticsearch Destination
Elasticsearch
Create an Elasticsearch Destination
-
Click the + icon on the Nexset that will be sent to the Elasticsearch destination, and select the Send to Destination option from the menu.
-
Select the Elasticsearch connector from the list of available destination connectors. Then, select the credential that will be used to connect to the Elasticsearch organization, and click Next; or, create a new Elasticsearch credential for use in this flow.
-
In Nexla, Elasticsearch destinations can be created using pre-built endpoint templates, which expedite destination setup for common Elasticsearch endpoints. Each template is designed specifically for the corresponding Elasticsearch endpoint, making destination configuration easy and efficient.
• To configure this destination using a template, follow the instructions in Configure Using a Template.Elasticsearch destinations can also be configured manually, allowing you to send data to Elasticsearch endpoints not included in the pre-built templates or apply further customizations to exactly suit your needs.
• To configure this destination manually, follow the instructions in Configure Manually.
Configure Using a Template
Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common Elasticsearch endpoints. Each template is designed specifically for the corresponding Elasticsearch endpoint, making destination setup easy and efficient.
-
To configure this destination using a template, select the endpoint to which data will be sent from the Endpoint pulldown menu. Then, click on the template in the list below to expand it, and follow the instructions to configure additional endpoint settings.
Configure Manually
Elasticsearch destinations can be manually configured to send data to any valid Elasticsearch API endpoint.
Using manual configuration, you can also configure Nexla to automatically send the response received from the Elasticsearch API after each call to a new Nexla webhook data source.
API Method
-
To manually configure this destination, select the Advanced tab at the top of the configuration screen.
-
Select the API method that will be used for calls to the Elasticsearch API from the Method pulldown menu. The most common methods for Elasticsearch destinations are:
- POST: For bulk operations, indexing documents, or updating documents (most common)
- PUT: For indexing documents with specific IDs
- DELETE: For removing documents
Data Format
- Select the format in which the Nexset data will be sent to the Elasticsearch API from the Content Format pulldown menu. Nexla will automatically convert the data to the selected format for each API call.
The Elasticsearch API accepts JSON for single document operations and NDJSON (newline-delimited JSON) for bulk operations. Ensure you select the appropriate format for your Elasticsearch destination. For bulk operations, use NDJSON format. For complete information about Elasticsearch API request formats, see the Elasticsearch API Documentation.
API Endpoint URL
- Enter the URL of the Elasticsearch API endpoint to which you want to send the Nexset data in the URL field. For update/delete operations, include the ID of the document to be updated or deleted at the end of the URL.
Elasticsearch API URLs typically follow the format: https://your-cluster.es.amazonaws.com/your-index/_bulk for bulk operations, https://your-cluster.es.amazonaws.com/your-index/_doc/{document_id} for single document operations, or https://your-cluster.es.amazonaws.com/your-index/_doc for auto-generated IDs. Replace your-cluster.es.amazonaws.com with your actual Elasticsearch cluster URL and your-index with your index name. For complete information about Elasticsearch API endpoints, see the Elasticsearch API Documentation.
Request Headers
-
If Nexla should include any additional request headers in API calls to this destination, enter the headers & corresponding values as comma-separated pairs in the Request Headers field (e.g.,
header1:value1,header2:value2).You do not need to include authentication headers (basic authentication or API key headers) as these are automatically included from your credentials. However, you may need to include additional headers for specific Elasticsearch API features. The Content-Type header should be set to
application/jsonfor single document operations orapplication/x-ndjsonfor bulk operations.
Exclude Attributes from the Call
-
If any record attributes in the Nexset should be omitted when sending data to this Elasticsearch destination, select the attributes from the Exclude Attributes pulldown menu.
-
Any number of attributes can be selected for exclusion, and all excluded attributes will be shown in the field. To remove an attribute from the list, click the X icon next to the attribute name.
Record Batching
-
If records should be sent to this destination in batched API calls, check the box next to Would you like to batch your records together? to enable record batching.
-
Enter the maximum number of records that should be batched together in a single API call in the Batch Size field. By default, this value is set to
100. -
Select the algorithm that will be used to group records into batches from the Grouping Algorithm pulldown menu. The sample request shown in the panel on the right will be updated to reflect the current batching settings.
Record batching is particularly useful for Elasticsearch's bulk API, which is designed to efficiently process multiple operations in a single request. Batching can significantly improve performance when indexing large volumes of documents. For complete information about Elasticsearch bulk operations, see the Elasticsearch Bulk API Documentation.