> ## Documentation Index
> Fetch the complete documentation index at: https://jobo.world/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Elasticsearch

> Sync job data into Elasticsearch for full-text search and analytics.

## Connection Configuration

| Field            | Type   | Required | Description                                                 |
| ---------------- | ------ | -------- | ----------------------------------------------------------- |
| `endpoint`       | string | ✅        | Server endpoint URL (`https://my-cluster.es.amazonaws.com`) |
| `auth_method`    | enum   | ✅        | Authentication: `basic`, `api_key`, or `none`               |
| `username`       | string | —        | Required for Basic auth                                     |
| `password`       | string | —        | Required for Basic auth                                     |
| `api_key_id`     | string | —        | Required for API Key auth                                   |
| `api_key_secret` | string | —        | Required for API Key auth                                   |

## Example Configuration (Basic Auth)

```json theme={null}
{
  "endpoint": "https://my-cluster.es.amazonaws.com",
  "auth_method": "basic",
  "username": "elastic",
  "password": "••••••••"
}
```

## Example Configuration (API Key)

```json theme={null}
{
  "endpoint": "https://my-cluster.es.amazonaws.com",
  "auth_method": "api_key",
  "api_key_id": "your_api_key_id",
  "api_key_secret": "••••••••"
}
```

## Setup Requirements

1. Ensure your Elasticsearch cluster is accessible over HTTPS
2. Create an index or let Jobo create it automatically on first sync
3. Configure appropriate authentication credentials (Basic auth or API Key)

<Info>
  Jobs are upserted by their unique ID, so re-syncs won't create duplicates.
</Info>
