---
id: elasticsearch
title: Elasticsearch
---
ToolJet can connect to your Elasticsearch cluster to read and write data.
## Connection
To establish a connection with the ElasticSearch data source, you can either click on the **+ Add new data source** button located on the query panel or navigate to the **[Data Sources](/docs/data-sources/overview)** page through the ToolJet dashboard.
:::info
Please make sure the **Host/IP** of the database is accessible from your VPC if you have self-hosted ToolJet. If you are using ToolJet cloud, please **whitelist** our IP.
:::
ToolJet requires the following to connect to your Elasticsearch cluster:
- **Host**
- **Port**
- **Username**
- **Password**
Elastic search data source is also providing an option for connecting services with ssl certificates.
- You can either use CA / Client certificates option.
#### Example
```yaml
{
"query": {
"match": {
"title": "Elasticsearch"
}
}
}
```
### Index a Document
This operation allows you to add a JSON document to the specified data stream or index. Read the Elasticsearch's **Index** guide **[here](https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-index_.html)**.
#### Required Parameter
- **Index**
- **Body**
#### Example
```yaml
{
"title": "Introduction to Elasticsearch",
"content": "Elasticsearch is a search engine based on the Lucene library.",
"published_date": "2024-09-16"
}
```
### Get a Document
This operation allows you to retrieve the specified JSON document from the index. Read the Elasticsearch's **Get** guide **[here](https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-get.html)**.
#### Required Parameter
- **Index**
- **Id**
### Update a Document
This operation allows to update a document using the specified script. Read the Elasticsearch's **Update** guide **[here](https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-update.html)**.
#### Required Parameter
- **Index**
- **Id**
- **Body**
#### Example
```yaml
{
"doc": {
"title": "Introduction to Elasticsearch (Updated)"
}
}
```