Elastic Stack (ELK Stack) Connector API

The connector API from Elastic Stack (ELK Stack) — 24 operation(s) for connector.

Operations 30

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

PUT /_connector/{connector_id}/_check_in Record a connector heartbeat · Check in a connector #
Ask an LLM
“How does a self-managed connector tell Elasticsearch it is still alive?”
“Which field gets bumped to the current time when a connector checks in?”
Tell an agent
Check in connector {connector_id} so its last_seen is now.
Send a heartbeat for connector {connector_id}.
GET /_connector/{connector_id} Get a connector's details · Get a connector #
Ask an LLM
“What configuration, status and index does a particular connector have?”
“Can I still look up a connector that was soft-deleted?”
Tell an agent
Show me connector {connector_id}.
Get connector {connector_id} even if deleted, include_deleted {include_deleted}.
PUT /_connector/{connector_id} Create or update a connector with a chosen ID · Create or update a connector #
Ask an LLM
“Can I create a connector under an ID I pick myself, or overwrite the one at that ID?”
“Which index and service type do I set when upserting a connector by its ID?”
Tell an agent
Create or replace connector {connector_id} writing to index {index_name}.
Upsert connector {connector_id} with service type {service_type} and name {name}.
DELETE /_connector/{connector_id} Delete a connector · Delete a connector #
Ask an LLM
“Does deleting a connector also remove its data index and API keys?”
“Can I delete a connector together with all its sync jobs, or hard-delete it?”
Tell an agent destructive · confirm first
Delete connector {connector_id}.
Remove connector {connector_id} and its sync jobs, delete_sync_jobs {delete_sync_jobs}.
GET /_connector List connectors · Get all connectors #
Ask an LLM
“What connectors are configured in my Elasticsearch cluster?”
“Can I filter the connector list by service type or target index name?”
Tell an agent
List all connectors of service type {service_type}.
Find connectors that write to index {index_name}.
PUT /_connector Create or update a connector via PUT without an ID · Create or update a connector #
Ask an LLM
“Can I PUT a connector to the collection path and let Elasticsearch generate its ID?”
“What body fields does the ID-less PUT connector upsert accept?”
Tell an agent
PUT a new connector named {name} for index {index_name} without specifying an ID.
Use the ID-less PUT endpoint to register a {service_type} connector.
POST /_connector Create a connector with a generated ID · Create a connector #
Ask an LLM
“How do I add a new connector that syncs third-party content into an Elasticsearch index?”
“Can I make an Elastic managed native connector when I create it with POST?”
Tell an agent
Create a new connector for service type {service_type} syncing into {index_name}.
POST a connector named {name} with is_native set to {is_native}.
PUT /_connector/_sync_job/{connector_sync_job_id}/_cancel Cancel a connector sync job · Cancel a connector sync job #
Ask an LLM
“How can I stop a connector sync that is currently running?”
“What status does a sync job move to after I request cancellation?”
Tell an agent destructive · confirm first
Cancel sync job {connector_sync_job_id}.
Stop the running connector sync {connector_sync_job_id}.
PUT /_connector/_sync_job/{connector_sync_job_id}/_check_in Record a sync job heartbeat · Check in a connector sync job #
Ask an LLM
“How does the connector service signal that a sync job is still progressing?”
“Which timestamp is updated when a sync job checks in?”
Tell an agent
Check in sync job {connector_sync_job_id} to update its last_seen.
Send a heartbeat for connector sync job {connector_sync_job_id}.
PUT /_connector/_sync_job/{connector_sync_job_id}/_claim Claim a sync job for a worker · Claim a connector sync job #
Ask an LLM
“How does a connector worker take ownership of a pending sync job and mark it in progress?”
“Can I set a sync cursor when a worker claims a job?”
Tell an agent
Claim sync job {connector_sync_job_id} for worker host {worker_hostname}.
Mark job {connector_sync_job_id} in progress on {worker_hostname} with cursor {sync_cursor}.
GET /_connector/_sync_job/{connector_sync_job_id} Get a connector sync job · Get a connector sync job #
Ask an LLM
“What is the status and document count of one specific sync job?”
“Can I look up a single connector sync job by its ID?”
Tell an agent
Show sync job {connector_sync_job_id}.
Get the details of connector sync run {connector_sync_job_id}.
DELETE /_connector/_sync_job/{connector_sync_job_id} Delete a connector sync job · Delete a connector sync job #
Ask an LLM
“Can I permanently remove a sync job record and its data?”
“Is deleting a connector sync job reversible?”
Tell an agent destructive · confirm first
Delete sync job {connector_sync_job_id}.
Permanently remove connector sync job record {connector_sync_job_id}.
PUT /_connector/_sync_job/{connector_sync_job_id}/_error Mark a sync job as failed · Set a connector sync job error #
Ask an LLM
“How does the connector service report that a sync job failed with an error message?”
“What happens to a sync job's status when its error field is set?”
Tell an agent
Set sync job {connector_sync_job_id} to error with message {error}.
Fail connector sync job {connector_sync_job_id} because {error}.
GET /_connector/_sync_job List connector sync jobs · Get all connector sync jobs #
Ask an LLM
“Which sync jobs have run for a given connector?”
“Can I filter sync jobs by status or job type, like only failed full syncs?”
Tell an agent
List sync jobs for connector {connector_id}.
Show all sync jobs with status {status} and type {job_type}.
POST /_connector/_sync_job Start a new connector sync job · Create a connector sync job #
Ask an LLM
“How do I trigger a sync for a connector, full or incremental?”
“Can I choose the job type when creating a sync job?”
Tell an agent
Create a sync job for connector {id}.
Queue a {job_type} sync for connector {id} triggered {trigger_method}.
PUT /_connector/_sync_job/{connector_sync_job_id}/_stats Update a sync job's document counters · Set the connector sync job stats #
Ask an LLM
“How does the connector service report indexed and deleted document counts for a sync job?”
“Which stats fields are required when updating sync job progress?”
Tell an agent
Set stats on sync job {connector_sync_job_id}: indexed {indexed_document_count}, deleted {deleted_document_count}, volume {indexed_document_volume}.
Record total document count {total_document_count} on job {connector_sync_job_id}.
PUT /_connector/{connector_id}/_filtering/_activate Activate a connector's draft filtering · Activate the connector draft filter #
Ask an LLM
“How do I promote validated draft sync rules so a connector starts using them?”
“Can a connector's draft filter be made active once it passes validation?”
Tell an agent
Activate the draft filtering rules on connector {connector_id}.
Promote the validated draft filter to active for {connector_id}.
PUT /_connector/{connector_id}/_api_key_id Set the API key a connector uses · Update the connector API key ID #
Ask an LLM
“Where do I tell a connector which API key and stored secret to authenticate with?”
“Can I update a connector's API key secret ID separately?”
Tell an agent
Set connector {connector_id} to use API key ID {api_key_id}.
Point connector {connector_id} at connector secret {api_key_secret_id}.
PUT /_connector/{connector_id}/_configuration Update a connector's configuration values · Update the connector configuration #
Ask an LLM
“How do I change the settings a connector uses to reach its data source, like host or credentials?”
“Can I update only configuration values without redefining the whole schema?”
Tell an agent
Update connector {connector_id} configuration values to {values}.
Replace the configuration schema of {connector_id} with {configuration}.
PUT /_connector/{connector_id}/_error Set or clear a connector's error · Update the connector error field #
Ask an LLM
“How can I flag a connector as errored, or reset it back to connected?”
“What status does a connector get when its error is cleared to null?”
Tell an agent
Set error {error} on connector {connector_id}.
Record connector-level error {error} for {connector_id}.
PUT /_connector/{connector_id}/_features Change a connector's enabled features · Update the connector features #
Ask an LLM
“Can I turn on document-level security or incremental syncs for a connector?”
“Which connector features, such as advanced sync rules, can be toggled?”
Tell an agent
Set the features of connector {connector_id} to {features}.
Enable incremental syncs on {connector_id} via features {features}.
PUT /_connector/{connector_id}/_filtering Edit a connector's draft sync rules · Update the connector filtering #
Ask an LLM
“How do I change which documents a connector syncs using basic or advanced rules?”
“Can I add an advanced sync rule snippet to a connector's draft filtering?”
Tell an agent
Set draft sync rules {rules} on connector {connector_id}.
Add advanced snippet {advanced_snippet} to the draft filtering of {connector_id}.
PUT /_connector/{connector_id}/_filtering/_validation Record draft filtering validation results · Update the connector draft filtering validation #
Ask an LLM
“How does the connector service mark draft sync rules as valid or invalid?”
“Where do filtering validation errors for a connector get stored?”
Tell an agent
Set filtering validation {validation} on connector {connector_id}.
Mark the draft filter of {connector_id} as validated with {validation}.
PUT /_connector/{connector_id}/_index_name Change a connector's target index · Update the connector index name #
Ask an LLM
“Can I change which index a connector writes its ingested content to?”
“How is the destination index of a connector updated?”
Tell an agent
Point connector {connector_id} at index {index_name}.
Change where {connector_id} stores synced data to {index_name}.
PUT /_connector/{connector_id}/_name Rename a connector · Update the connector name and description #
Ask an LLM
“How do I rename a connector or edit its description?”
“Can I change only a connector's display name?”
Tell an agent
Rename connector {connector_id} to {name}.
Set the description of connector {connector_id} to {description}.
PUT /_connector/{connector_id}/_native Switch a connector between native and self-managed · Update the connector is_native flag #
Ask an LLM
“Can I convert a connector between Elastic managed and self-managed?”
“What does the is_native flag on a connector control?”
Tell an agent
Set is_native to {is_native} on connector {connector_id}.
Make connector {connector_id} self-managed by setting native to {is_native}.
PUT /_connector/{connector_id}/_pipeline Change a connector's ingest pipeline · Update the connector pipeline #
Ask an LLM
“Which ingest pipeline does a connector send documents through, and can I change it?”
“Can I override the default pipeline settings a connector was created with?”
Tell an agent
Set the ingest pipeline of connector {connector_id} to {pipeline}.
Update pipeline settings for {connector_id} to {pipeline}.
PUT /_connector/{connector_id}/_scheduling Change a connector's sync schedule · Update the connector scheduling #
Ask an LLM
“How do I make a connector run full syncs on a cron schedule?”
“Can I schedule incremental and access control syncs separately?”
Tell an agent
Set the sync schedule of connector {connector_id} to {scheduling}.
Update scheduling for {connector_id} with {scheduling}.
PUT /_connector/{connector_id}/_service_type Change a connector's service type · Update the connector service type #
Ask an LLM
“Can I change what kind of data source a connector is for after creating it?”
“Where is a connector's service type updated?”
Tell an agent
Change service type of connector {connector_id} to {service_type}.
Make {connector_id} a {service_type} connector.
PUT /_connector/{connector_id}/_status Set a connector's status · Update the connector status #
Ask an LLM
“How do I manually set a connector's status, such as configured or connected?”
“Can the status field of a connector be updated directly?”
Tell an agent
Set connector {connector_id} status to {status}.
Mark {connector_id} as {status}.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/elk-stack:elk-stack-connector-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

elk-stack-connector-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Elasticsearch Request & Response Specification Connector API
  license:
    name: Apache 2.0
    url: https://github.com/elastic/elasticsearch-specification/blob/main/LICENSE
  version: ''
tags:


# --- truncated at 32 KB (69 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/elk-stack/refs/heads/main/openapi/elk-stack-connector-api-openapi.yml