Elasticsearch Commands

Complete Elasticsearch commands reference — 674 commands across 30 categories. Quick reference cheat sheet for Cross-platform.

This is the Elasticsearch REST API surface as an endpoint reference: method and path for every documented route, grouped the way the official API reference groups them. It is long because Elasticsearch is large; the notes below point at the few dozen routes an operator or developer actually types, and explain the conventions that make the rest of the table readable.

Indices (99)

ShortcutAction
GET /_component_template/{name}Get component templates
PUT /_component_template/{name}Create or update a component template
POST /_component_template/{name}Create or update a component template
DELETE /_component_template/{name}Delete component templates
HEAD /_component_template/{name}Check component templates
GET /_component_templateGet component templates
POST /_dangling/{index_uuid}Import a dangling index
DELETE /_dangling/{index_uuid}Delete a dangling index
GET /_danglingGet the dangling indices
PUT /{index}/_block/{block}Add an index block
DELETE /{index}/_block/{block}Remove an index block
GET /_analyzeGet tokens from text analysis
POST /_analyzeGet tokens from text analysis
GET /{index}/_analyzeGet tokens from text analysis
POST /{index}/_analyzeGet tokens from text analysis
POST /_cache/clearClear the cache
POST /{index}/_cache/clearClear the cache
PUT /{index}/_clone/{target}Clone an index
POST /{index}/_clone/{target}Clone an index
POST /{index}/_closeClose an index
GET /{index}Get index information
PUT /{index}Create an index
DELETE /{index}Delete indices
HEAD /{index}Check indices
GET /{index}/_alias/{name}Get aliases
PUT /{index}/_alias/{name}Create or update an alias
POST /{index}/_alias/{name}Create or update an alias
DELETE /{index}/_alias/{name}Delete an alias
HEAD /{index}/_alias/{name}Check aliases
PUT /{index}/_aliases/{name}Create or update an alias
POST /{index}/_aliases/{name}Create or update an alias
DELETE /{index}/_aliases/{name}Delete an alias
DELETE /_data_stream/{name}/_lifecycleDelete data stream lifecycles
GET /_index_template/{name}Get index templates
PUT /_index_template/{name}Create or update an index template
POST /_index_template/{name}Create or update an index template
DELETE /_index_template/{name}Delete an index template
HEAD /_index_template/{name}Check index templates
HEAD /_template/{name}Check existence of index templates
POST /{index}/_disk_usageAnalyze the index disk usage
GET /_alias/{name}Get aliases
HEAD /_alias/{name}Check aliases
GET /{index}/_field_usage_statsGet field usage stats
GET /_flushFlush data streams or indices
POST /_flushFlush data streams or indices
GET /{index}/_flushFlush data streams or indices
POST /{index}/_flushFlush data streams or indices
POST /_forcemergeForce a merge
POST /{index}/_forcemergeForce a merge
GET /_aliasGet aliases
GET /{index}/_aliasGet aliases
GET /_mapping/field/{fields}Get mapping definitions
GET /{index}/_mapping/field/{fields}Get mapping definitions
GET /_index_templateGet index templates
GET /_mappingGet mapping definitions
GET /{index}/_mappingGet mapping definitions
PUT /{index}/_mappingUpdate field mappings
POST /{index}/_mappingUpdate field mappings
GET /_settingsGet index settings
PUT /_settingsUpdate index settings
GET /{index}/_settingsGet index settings
PUT /{index}/_settingsUpdate index settings
GET /{index}/_settings/{name}Get index settings
GET /_settings/{name}Get index settings
POST /{index}/_openOpen a closed index
GET /_recoveryGet index recovery information
GET /{index}/_recoveryGet index recovery information
GET /_refreshRefresh an index
POST /_refreshRefresh an index
GET /{index}/_refreshRefresh an index
POST /{index}/_refreshRefresh an index
GET /{index}/_reload_search_analyzersReload search analyzers
POST /{index}/_reload_search_analyzersReload search analyzers
GET /_resolve/clusterResolve the cluster
GET /_resolve/cluster/{name}Resolve the cluster
GET /_resolve/index/{name}Resolve indices
POST /_resolve/index/{name}Resolve indices
POST /{alias}/_rolloverRoll over to a new index
POST /{alias}/_rollover/{new_index}Roll over to a new index
GET /_segmentsGet index segments
GET /{index}/_segmentsGet index segments
GET /_shard_storesGet index shard stores
GET /{index}/_shard_storesGet index shard stores
PUT /{index}/_shrink/{target}Shrink an index
POST /{index}/_shrink/{target}Shrink an index
POST /_index_template/_simulate_index/{name}Simulate an index
POST /_index_template/_simulateSimulate an index template
POST /_index_template/_simulate/{name}Simulate an index template
PUT /{index}/_split/{target}Split an index
POST /{index}/_split/{target}Split an index
GET /_statsGet index statistics
GET /_stats/{metric}Get index statistics
GET /{index}/_statsGet index statistics
GET /{index}/_stats/{metric}Get index statistics
POST /_aliasesCreate or update an alias
GET /_validate/queryValidate a query
POST /_validate/queryValidate a query
GET /{index}/_validate/queryValidate a query
POST /{index}/_validate/queryValidate a query

Security (98)

ShortcutAction
POST /_security/profile/_activateActivate a user profile
GET /_security/_authenticateAuthenticate a user
GET /_security/roleGet roles
POST /_security/roleBulk create or update roles
DELETE /_security/roleBulk delete roles
POST /_security/api_key/_bulk_updateBulk update API keys
PUT /_security/user/{username}/_passwordChange passwords
POST /_security/user/{username}/_passwordChange passwords
PUT /_security/user/_passwordChange passwords
POST /_security/user/_passwordChange passwords
POST /_security/api_key/{ids}/_clear_cacheClear the API key cache
POST /_security/privilege/{application}/_clear_cacheClear the privileges cache
POST /_security/realm/{realms}/_clear_cacheClear the user cache
POST /_security/role/{name}/_clear_cacheClear the roles cache
POST /_security/service/{namespace}/{service}/credential/token/{name}/_clear_cacheClear service account token caches
PUT /_security/api_key/cloneClone an API key
POST /_security/api_key/cloneClone an API key
GET /_security/api_keyGet API key information
PUT /_security/api_keyCreate an API key
POST /_security/api_keyCreate an API key
DELETE /_security/api_keyInvalidate API keys
POST /_security/cross_cluster/api_keyCreate a cross-cluster API key
PUT /_security/service/{namespace}/{service}/credential/token/{name}Create a service account token
POST /_security/service/{namespace}/{service}/credential/token/{name}Create a service account token
DELETE /_security/service/{namespace}/{service}/credential/token/{name}Delete service account tokens
POST /_security/service/{namespace}/{service}/credential/tokenCreate a service account token
POST /_security/delegate_pkiDelegate PKI authentication
GET /_security/privilege/{application}/{name}Get application privileges
DELETE /_security/privilege/{application}/{name}Delete application privileges
GET /_security/role/{name}Get roles
PUT /_security/role/{name}Create or update roles
POST /_security/role/{name}Create or update roles
DELETE /_security/role/{name}Delete roles
GET /_security/role_mapping/{name}Get role mappings
PUT /_security/role_mapping/{name}Create or update role mappings
POST /_security/role_mapping/{name}Create or update role mappings
DELETE /_security/role_mapping/{name}Delete role mappings
GET /_security/user/{username}Get users
PUT /_security/user/{username}Create or update users
POST /_security/user/{username}Create or update users
DELETE /_security/user/{username}Delete users
PUT /_security/user/{username}/_disableDisable users
POST /_security/user/{username}/_disableDisable users
PUT /_security/profile/{uid}/_disableDisable a user profile
POST /_security/profile/{uid}/_disableDisable a user profile
PUT /_security/user/{username}/_enableEnable users
POST /_security/user/{username}/_enableEnable users
PUT /_security/profile/{uid}/_enableEnable a user profile
POST /_security/profile/{uid}/_enableEnable a user profile
GET /_security/enroll/kibanaEnroll Kibana
GET /_security/enroll/nodeEnroll a node
GET /_security/privilege/_builtinGet builtin privileges
GET /_security/privilegeGet application privileges
PUT /_security/privilegeCreate or update application privileges
POST /_security/privilegeCreate or update application privileges
GET /_security/privilege/{application}Get application privileges
GET /_security/role_mappingGet role mappings
GET /_security/service/{namespace}/{service}Get service accounts
GET /_security/service/{namespace}Get service accounts
GET /_security/serviceGet service accounts
GET /_security/service/{namespace}/{service}/credentialGet service account credentials
GET /_security/settingsGet security index settings
PUT /_security/settingsUpdate security index settings
GET /_security/statsGet security stats
POST /_security/oauth2/tokenGet a token
DELETE /_security/oauth2/tokenInvalidate a token
GET /_security/userGet users
GET /_security/user/_privilegesGet user privileges
GET /_security/profile/{uid}Get a user profile
POST /_security/api_key/grantGrant an API key
GET /_security/user/_has_privilegesCheck user privileges
POST /_security/user/_has_privilegesCheck user privileges
GET /_security/user/{user}/_has_privilegesCheck user privileges
POST /_security/user/{user}/_has_privilegesCheck user privileges
GET /_security/profile/_has_privilegesCheck user profile privileges
POST /_security/profile/_has_privilegesCheck user profile privileges
POST /_security/oidc/authenticateAuthenticate OpenID Connect
POST /_security/oidc/logoutLogout of OpenID Connect
POST /_security/oidc/preparePrepare OpenID connect authentication
GET /_security/_query/api_keyFind API keys with a query
POST /_security/_query/api_keyFind API keys with a query
GET /_security/_query/roleFind roles with a query
POST /_security/_query/roleFind roles with a query
GET /_security/_query/userFind users with a query
POST /_security/_query/userFind users with a query
POST /_security/saml/authenticateAuthenticate SAML
POST /_security/saml/complete_logoutLogout of SAML completely
POST /_security/saml/invalidateInvalidate SAML
POST /_security/saml/logoutLogout of SAML
POST /_security/saml/preparePrepare SAML authentication
GET /_security/saml/metadata/{realm_name}Create SAML service provider metadata
GET /_security/profile/_suggestSuggest a user profile
POST /_security/profile/_suggestSuggest a user profile
PUT /_security/api_key/{id}Update an API key
PUT /_security/cross_cluster/api_key/{id}Update a cross-cluster API key
PUT /_security/profile/{uid}/_dataUpdate user profile data
POST /_security/profile/{uid}/_dataUpdate user profile data
GET /_ssl/certificatesGet SSL certificates

Search (55)

ShortcutAction
GET /_async_search/{id}Get async search results
DELETE /_async_search/{id}Delete an async search
GET /_async_search/status/{id}Get the async search status
POST /_async_searchRun an async search
POST /{index}/_async_searchRun an async search
GET /_search/scrollRun a scrolling search
POST /_search/scrollRun a scrolling search
DELETE /_search/scrollClear a scrolling search
GET /_search/scroll/{scroll_id}Run a scrolling search
POST /_search/scroll/{scroll_id}Run a scrolling search
DELETE /_search/scroll/{scroll_id}Clear a scrolling search
DELETE /_pitClose a point in time
GET /_countCount search results
POST /_countCount search results
GET /{index}/_countCount search results
POST /{index}/_countCount search results
GET /{index}/_explain/{id}Explain a document match result
POST /{index}/_explain/{id}Explain a document match result
GET /_field_capsGet the field capabilities
POST /_field_capsGet the field capabilities
GET /{index}/_field_capsGet the field capabilities
POST /{index}/_field_capsGet the field capabilities
GET /_msearchRun multiple searches
POST /_msearchRun multiple searches
GET /{index}/_msearchRun multiple searches
POST /{index}/_msearchRun multiple searches
GET /_msearch/templateRun multiple templated searches
POST /_msearch/templateRun multiple templated searches
GET /{index}/_msearch/templateRun multiple templated searches
POST /{index}/_msearch/templateRun multiple templated searches
POST /{index}/_pitOpen a point in time
GET /_rank_evalEvaluate ranked search results
POST /_rank_evalEvaluate ranked search results
GET /{index}/_rank_evalEvaluate ranked search results
POST /{index}/_rank_evalEvaluate ranked search results
GET /_render/templateRender a search template
POST /_render/templateRender a search template
GET /_render/template/{id}Render a search template
POST /_render/template/{id}Render a search template
GET /_searchRun a search
POST /_searchRun a search
GET /{index}/_searchRun a search
POST /{index}/_searchRun a search
GET /{index}/_mvt/{field}/{zoom}/{x}/{y}Search a vector tile
POST /{index}/_mvt/{field}/{zoom}/{x}/{y}Search a vector tile
GET /_search_shardsGet the search shards
POST /_search_shardsGet the search shards
GET /{index}/_search_shardsGet the search shards
POST /{index}/_search_shardsGet the search shards
GET /_search/templateRun a search with a search template
POST /_search/templateRun a search with a search template
GET /{index}/_search/templateRun a search with a search template
POST /{index}/_search/templateRun a search with a search template
GET /{index}/_terms_enumGet terms in an index
POST /{index}/_terms_enumGet terms in an index

CAT APIs (47)

ShortcutAction
GET /_cat/aliasesGet aliases
GET /_cat/aliases/{name}Get aliases
GET /_cat/allocationGet shard allocation information
GET /_cat/allocation/{node_id}Get shard allocation information
GET /_cat/circuit_breakerGet circuit breakers statistics
GET /_cat/circuit_breaker/{circuit_breaker_patterns}Get circuit breakers statistics
GET /_cat/component_templatesGet component templates
GET /_cat/component_templates/{name}Get component templates
GET /_cat/countGet a document count
POST /_cat/countGet a document count
GET /_cat/count/{index}Get a document count
POST /_cat/count/{index}Get a document count
GET /_cat/fielddataGet field data cache information
GET /_cat/fielddata/{fields}Get field data cache information
GET /_cat/healthGet the cluster health status
GET /_catGet CAT help
GET /_cat/indicesGet index information
GET /_cat/indices/{index}Get index information
GET /_cat/masterGet master node information
GET /_cat/ml/data_frame/analyticsGet data frame analytics jobs
GET /_cat/ml/data_frame/analytics/{id}Get data frame analytics jobs
GET /_cat/ml/datafeedsGet datafeeds
GET /_cat/ml/datafeeds/{datafeed_id}Get datafeeds
GET /_cat/ml/anomaly_detectorsGet anomaly detection jobs
GET /_cat/ml/anomaly_detectors/{job_id}Get anomaly detection jobs
GET /_cat/ml/trained_modelsGet trained models
GET /_cat/ml/trained_models/{model_id}Get trained models
GET /_cat/nodeattrsGet node attribute information
GET /_cat/nodesGet node information
GET /_cat/pending_tasksGet pending task information
GET /_cat/pluginsGet plugin information
GET /_cat/recoveryGet shard recovery information
GET /_cat/recovery/{index}Get shard recovery information
GET /_cat/repositoriesGet snapshot repository information
GET /_cat/segmentsGet segment information
GET /_cat/segments/{index}Get segment information
GET /_cat/shardsGet shard information
GET /_cat/shards/{index}Get shard information
GET /_cat/snapshotsGet snapshot information
GET /_cat/snapshots/{repository}Get snapshot information
GET /_cat/tasksGet task information
GET /_cat/templatesGet index template information
GET /_cat/templates/{name}Get index template information
GET /_cat/thread_poolGet thread pool statistics
GET /_cat/thread_pool/{thread_pool_patterns}Get thread pool statistics
GET /_cat/transformsGet transform information
GET /_cat/transforms/{transform_id}Get transform information

Inference (47)

ShortcutAction
POST /_inference/chat_completion/{inference_id}/_streamPerform chat completion inference on the service
POST /_inference/completion/{inference_id}Perform completion inference on the service
GET /_inference/{inference_id}Get an inference endpoint
PUT /_inference/{inference_id}Create an inference endpoint
POST /_inference/{inference_id}Perform inference on the service
DELETE /_inference/{inference_id}Delete an inference endpoint
GET /_inference/{task_type}/{inference_id}Get an inference endpoint
PUT /_inference/{task_type}/{inference_id}Create an inference endpoint
POST /_inference/{task_type}/{inference_id}Perform inference on the service
DELETE /_inference/{task_type}/{inference_id}Delete an inference endpoint
GET /_inference/_region_policyGet the inference region policy
PUT /_inference/_region_policyCreate or update the inference region policy
DELETE /_inference/_region_policyDelete the inference region policy
POST /_inference/embedding/{inference_id}Perform dense embedding inference on the service
GET /_inferenceGet an inference endpoint
GET /_inference/{task_type}/_allGet an inference endpoint
PUT /_inference/{task_type}/{ai21_inference_id}Create a AI21 inference endpoint
PUT /_inference/{task_type}/{alibabacloud_inference_id}Create an AlibabaCloud AI Search inference endpoint
PUT /_inference/{task_type}/{amazonbedrock_inference_id}Create an Amazon Bedrock inference endpoint
PUT /_inference/{task_type}/{amazonsagemaker_inference_id}Create an Amazon SageMaker inference endpoint
PUT /_inference/{task_type}/{anthropic_inference_id}Create an Anthropic inference endpoint
PUT /_inference/{task_type}/{azureaistudio_inference_id}Create an Azure AI studio inference endpoint
PUT /_inference/{task_type}/{azureopenai_inference_id}Create an Azure OpenAI inference endpoint
PUT /_inference/{task_type}/{cohere_inference_id}Create a Cohere inference endpoint
PUT /_inference/{task_type}/{contextualai_inference_id}Create an Contextual AI inference endpoint
PUT /_inference/{task_type}/{custom_inference_id}Create a custom inference endpoint
PUT /_inference/{task_type}/{deepseek_inference_id}Create a DeepSeek inference endpoint
PUT /_inference/{task_type}/{elasticsearch_inference_id}Create an Elasticsearch inference endpoint
PUT /_inference/{task_type}/{fireworksai_inference_id}Create a Fireworks AI inference endpoint
PUT /_inference/{task_type}/{googleaistudio_inference_id}Create an Google AI Studio inference endpoint
PUT /_inference/{task_type}/{googlevertexai_inference_id}Create a Google Vertex AI inference endpoint
PUT /_inference/{task_type}/{groq_inference_id}Create a Groq inference endpoint
PUT /_inference/{task_type}/{huggingface_inference_id}Create a Hugging Face inference endpoint
PUT /_inference/{task_type}/{jinaai_inference_id}Create an JinaAI inference endpoint
PUT /_inference/{task_type}/{llama_inference_id}Create a Llama inference endpoint
PUT /_inference/{task_type}/{mistral_inference_id}Create a Mistral inference endpoint
PUT /_inference/{task_type}/{nvidia_inference_id}Create an Nvidia inference endpoint
PUT /_inference/{task_type}/{openai_inference_id}Create an OpenAI inference endpoint
PUT /_inference/{task_type}/{openshiftai_inference_id}Create an OpenShift AI inference endpoint
PUT /_inference/{task_type}/{voyageai_inference_id}Create a VoyageAI inference endpoint
PUT /_inference/{task_type}/{watsonx_inference_id}Create a Watsonx inference endpoint
POST /_inference/rerank/{inference_id}Perform reranking inference on the service
POST /_inference/sparse_embedding/{inference_id}Perform sparse embedding inference on the service
POST /_inference/completion/{inference_id}/_streamPerform streaming completion inference on the service
POST /_inference/text_embedding/{inference_id}Perform text embedding inference on the service
PUT /_inference/{inference_id}/_updateUpdate an inference endpoint
PUT /_inference/{task_type}/{inference_id}/_updateUpdate an inference endpoint

Cluster (38)

ShortcutAction
GET /_cluster/allocation/explainExplain the shard allocations
POST /_cluster/allocation/explainExplain the shard allocations
POST /_cluster/voting_config_exclusionsUpdate voting configuration exclusions
DELETE /_cluster/voting_config_exclusionsClear cluster voting config exclusions
GET /_cluster/settingsGet cluster-wide settings
PUT /_cluster/settingsUpdate the cluster settings
GET /_cluster/healthGet the cluster health status
GET /_cluster/health/{index}Get the cluster health status
GET /_info/{target}Get cluster info
GET /_cluster/pending_tasksGet the pending cluster tasks
GET /_remote/infoGet remote cluster information
POST /_cluster/rerouteReroute the cluster
GET /_cluster/stateGet the cluster state
GET /_cluster/state/{metric}Get the cluster state
GET /_cluster/state/{metric}/{index}Get the cluster state
GET /_cluster/statsGet cluster statistics
GET /_cluster/stats/nodes/{node_id}Get cluster statistics
HEAD /Ping the cluster
DELETE /_nodes/{node_id}/_repositories_metering/{max_archive_version}Clear the archived repositories metering
GET /_nodes/{node_id}/_repositories_meteringGet cluster repositories metering
GET /_nodes/hot_threadsGet the hot threads for nodes
GET /_nodes/{node_id}/hot_threadsGet the hot threads for nodes
GET /_nodesGet node information
GET /_nodes/{node_id}Get node information
GET /_nodes/{metric}Get node information
GET /_nodes/{node_id}/{metric}Get node information
POST /_nodes/reload_secure_settingsReload the keystore on nodes in the cluster
POST /_nodes/{node_id}/reload_secure_settingsReload the keystore on nodes in the cluster
GET /_nodes/statsGet node statistics
GET /_nodes/{node_id}/statsGet node statistics
GET /_nodes/stats/{metric}Get node statistics
GET /_nodes/{node_id}/stats/{metric}Get node statistics
GET /_nodes/stats/{metric}/{index_metric}Get node statistics
GET /_nodes/{node_id}/stats/{metric}/{index_metric}Get node statistics
GET /_nodes/usageGet feature usage information
GET /_nodes/{node_id}/usageGet feature usage information
GET /_nodes/usage/{metric}Get feature usage information
GET /_nodes/{node_id}/usage/{metric}Get feature usage information

Document (33)

ShortcutAction
PUT /_bulkBulk index or delete documents
POST /_bulkBulk index or delete documents
PUT /{index}/_bulkBulk index or delete documents
POST /{index}/_bulkBulk index or delete documents
PUT /{index}/_create/{id}Create a new document in the index
POST /{index}/_create/{id}Create a new document in the index
GET /{index}/_doc/{id}Get a document by its ID
PUT /{index}/_doc/{id}Create or update a document in an index
POST /{index}/_doc/{id}Create or update a document in an index
DELETE /{index}/_doc/{id}Delete a document
HEAD /{index}/_doc/{id}Check a document
POST /{index}/_delete_by_queryDelete documents
POST /_delete_by_query/{task_id}/_rethrottleThrottle a delete by query operation
GET /{index}/_source/{id}Get a document's source
HEAD /{index}/_source/{id}Check for a document source
POST /{index}/_docCreate or update a document in an index
POST /_reindexReindex documents
GET /_mgetGet multiple documents
POST /_mgetGet multiple documents
GET /{index}/_mgetGet multiple documents
POST /{index}/_mgetGet multiple documents
GET /_mtermvectorsGet multiple term vectors
POST /_mtermvectorsGet multiple term vectors
GET /{index}/_mtermvectorsGet multiple term vectors
POST /{index}/_mtermvectorsGet multiple term vectors
POST /_reindex/{task_id}/_rethrottleThrottle a reindex operation
GET /{index}/_termvectors/{id}Get term vector information
POST /{index}/_termvectors/{id}Get term vector information
GET /{index}/_termvectorsGet term vector information
POST /{index}/_termvectorsGet term vector information
POST /{index}/_update/{id}Update a document
POST /{index}/_update_by_queryUpdate documents
POST /_update_by_query/{task_id}/_rethrottleThrottle an update by query operation

Connector (30)

ShortcutAction
PUT /_connector/{connector_id}/_check_inCheck in a connector
GET /_connector/{connector_id}Get a connector
PUT /_connector/{connector_id}Create or update a connector
DELETE /_connector/{connector_id}Delete a connector
GET /_connectorGet all connectors
PUT /_connectorCreate or update a connector
POST /_connectorCreate a connector
PUT /_connector/_sync_job/{connector_sync_job_id}/_cancelCancel a connector sync job
PUT /_connector/_sync_job/{connector_sync_job_id}/_check_inCheck in a connector sync job
PUT /_connector/_sync_job/{connector_sync_job_id}/_claimClaim a connector sync job
GET /_connector/_sync_job/{connector_sync_job_id}Get a connector sync job
DELETE /_connector/_sync_job/{connector_sync_job_id}Delete a connector sync job
PUT /_connector/_sync_job/{connector_sync_job_id}/_errorSet a connector sync job error
GET /_connector/_sync_jobGet all connector sync jobs
POST /_connector/_sync_jobCreate a connector sync job
PUT /_connector/_sync_job/{connector_sync_job_id}/_statsSet the connector sync job stats
PUT /_connector/{connector_id}/_filtering/_activateActivate the connector draft filter
PUT /_connector/{connector_id}/_api_key_idUpdate the connector API key ID
PUT /_connector/{connector_id}/_configurationUpdate the connector configuration
PUT /_connector/{connector_id}/_errorUpdate the connector error field
PUT /_connector/{connector_id}/_featuresUpdate the connector features
PUT /_connector/{connector_id}/_filteringUpdate the connector filtering
PUT /_connector/{connector_id}/_filtering/_validationUpdate the connector draft filtering validation
PUT /_connector/{connector_id}/_index_nameUpdate the connector index name
PUT /_connector/{connector_id}/_nameUpdate the connector name and description
PUT /_connector/{connector_id}/_nativeUpdate the connector is_native flag
PUT /_connector/{connector_id}/_pipelineUpdate the connector pipeline
PUT /_connector/{connector_id}/_schedulingUpdate the connector scheduling
PUT /_connector/{connector_id}/_service_typeUpdate the connector service type
PUT /_connector/{connector_id}/_statusUpdate the connector status

Watcher (24)

ShortcutAction
PUT /_watcher/watch/{watch_id}/_ackAcknowledge a watch
POST /_watcher/watch/{watch_id}/_ackAcknowledge a watch
PUT /_watcher/watch/{watch_id}/_ack/{action_id}Acknowledge a watch
POST /_watcher/watch/{watch_id}/_ack/{action_id}Acknowledge a watch
PUT /_watcher/watch/{watch_id}/_activateActivate a watch
POST /_watcher/watch/{watch_id}/_activateActivate a watch
PUT /_watcher/watch/{watch_id}/_deactivateDeactivate a watch
POST /_watcher/watch/{watch_id}/_deactivateDeactivate a watch
GET /_watcher/watch/{id}Get a watch
PUT /_watcher/watch/{id}Create or update a watch
POST /_watcher/watch/{id}Create or update a watch
DELETE /_watcher/watch/{id}Delete a watch
PUT /_watcher/watch/{id}/_executeRun a watch
POST /_watcher/watch/{id}/_executeRun a watch
PUT /_watcher/watch/_executeRun a watch
POST /_watcher/watch/_executeRun a watch
GET /_watcher/settingsGet Watcher index settings
PUT /_watcher/settingsUpdate Watcher index settings
GET /_watcher/_query/watchesQuery watches
POST /_watcher/_query/watchesQuery watches
POST /_watcher/_startStart the watch service
GET /_watcher/statsGet Watcher statistics
GET /_watcher/stats/{metric}Get Watcher statistics
POST /_watcher/_stopStop the watch service

Ingest (22)

ShortcutAction
GET /_ingest/geoip/database/{id}Get GeoIP database configurations
PUT /_ingest/geoip/database/{id}Create or update a GeoIP database configuration
DELETE /_ingest/geoip/database/{id}Delete GeoIP database configurations
GET /_ingest/ip_location/database/{id}Get IP geolocation database configurations
PUT /_ingest/ip_location/database/{id}Create or update an IP geolocation database configuration
DELETE /_ingest/ip_location/database/{id}Delete IP geolocation database configurations
GET /_ingest/pipeline/{id}Get pipelines
PUT /_ingest/pipeline/{id}Create or update a pipeline
DELETE /_ingest/pipeline/{id}Delete pipelines
GET /_ingest/geoip/statsGet GeoIP statistics
GET /_ingest/geoip/databaseGet GeoIP database configurations
GET /_ingest/ip_location/databaseGet IP geolocation database configurations
GET /_ingest/pipelineGet pipelines
GET /_ingest/processor/grokRun a grok processor
GET /_ingest/pipeline/_simulateSimulate a pipeline
POST /_ingest/pipeline/_simulateSimulate a pipeline
GET /_ingest/pipeline/{id}/_simulateSimulate a pipeline
POST /_ingest/pipeline/{id}/_simulateSimulate a pipeline
GET /_ingest/_simulateSimulate data ingestion
POST /_ingest/_simulateSimulate data ingestion
GET /_ingest/{index}/_simulateSimulate data ingestion
POST /_ingest/{index}/_simulateSimulate data ingestion

Data Streams (21)

ShortcutAction
GET /_data_stream/{name}Get data streams
PUT /_data_stream/{name}Create a data stream
DELETE /_data_stream/{name}Delete data streams
GET /_data_stream/_statsGet data stream stats
GET /_data_stream/{name}/_statsGet data stream stats
GET /_data_stream/{name}/_lifecycleGet data stream lifecycles
PUT /_data_stream/{name}/_lifecycleUpdate data stream lifecycles
GET /_data_stream/{name}/_optionsGet data stream options
PUT /_data_stream/{name}/_optionsUpdate data stream options
DELETE /_data_stream/{name}/_optionsDelete data stream options
POST /{index}/_downsample/{target_index}Downsample an index
GET /{index}/_lifecycle/explainGet the status for a data stream lifecycle
GET /_lifecycle/statsGet data stream lifecycle stats
GET /_data_streamGet data streams
GET /_data_stream/{name}/_mappingsGet data stream mappings
PUT /_data_stream/{name}/_mappingsUpdate data stream mappings
GET /_data_stream/{name}/_settingsGet data stream settings
PUT /_data_stream/{name}/_settingsUpdate data stream settings
POST /_data_stream/_migrate/{name}Convert an index alias to a data stream
POST /_data_stream/_modifyUpdate data streams
POST /_data_stream/_promote/{name}Promote a data stream

ES|QL (19)

ShortcutAction
POST /_query/asyncRun an async ES|QL query
GET /_query/async/{id}Get async ES|QL query results
DELETE /_query/async/{id}Delete an async ES|QL query
POST /_query/async/{id}/stopStop async ES|QL query
GET /_query/data_source/{name}Get one or more ES|QL data sources
PUT /_query/data_source/{name}Create or update an ES|QL data source
DELETE /_query/data_source/{name}Delete one or more ES|QL data sources
GET /_query/dataset/{name}Get one or more ES|QL datasets
PUT /_query/dataset/{name}Create or replace an ES|QL dataset
DELETE /_query/dataset/{name}Delete one or more ES|QL datasets
GET /_query/view/{name}Get an ES|QL view
PUT /_query/view/{name}Create or update an ES|QL view
DELETE /_query/view/{name}Delete an ES|QL view
GET /_query/data_sourceGet one or more ES|QL data sources
GET /_query/datasetGet one or more ES|QL datasets
GET /_query/queries/{id}Get a specific running ES|QL query information
GET /_query/viewGet an ES|QL view
GET /_query/queriesGet running ES|QL queries information
POST /_queryRun an ES|QL query

Snapshot (18)

ShortcutAction
POST /_snapshot/{repository}/_cleanupClean up the snapshot repository
PUT /_snapshot/{repository}/{snapshot}/_clone/{target_snapshot}Clone a snapshot
GET /_snapshot/{repository}/{snapshot}Get snapshot information
PUT /_snapshot/{repository}/{snapshot}Create a snapshot
POST /_snapshot/{repository}/{snapshot}Create a snapshot
DELETE /_snapshot/{repository}/{snapshot}Delete snapshots
GET /_snapshot/{repository}Get snapshot repository information
PUT /_snapshot/{repository}Create or update a snapshot repository
POST /_snapshot/{repository}Create or update a snapshot repository
DELETE /_snapshot/{repository}Delete snapshot repositories
GET /_snapshotGet snapshot repository information
POST /_snapshot/{repository}/_analyzeAnalyze a snapshot repository
POST /_snapshot/{repository}/_verify_integrityVerify the repository integrity
POST /_snapshot/{repository}/{snapshot}/_restoreRestore a snapshot
GET /_snapshot/_statusGet the snapshot status
GET /_snapshot/{repository}/_statusGet the snapshot status
GET /_snapshot/{repository}/{snapshot}/_statusGet the snapshot status
POST /_snapshot/{repository}/_verifyVerify a snapshot repository

Transform (17)

ShortcutAction
GET /_transform/{transform_id}Get transforms
PUT /_transform/{transform_id}Create a transform
DELETE /_transform/{transform_id}Delete a transform
GET /_transform/_node_statsGet node stats
GET /_transformGet transforms
GET /_transform/{transform_id}/_statsGet transform stats
GET /_transform/{transform_id}/_previewPreview a transform
POST /_transform/{transform_id}/_previewPreview a transform
GET /_transform/_previewPreview a transform
POST /_transform/_previewPreview a transform
POST /_transform/{transform_id}/_resetReset a transform
POST /_transform/{transform_id}/_schedule_nowSchedule a transform to start now
POST /_transform/set_upgrade_modeSet upgrade_mode for transform indices
POST /_transform/{transform_id}/_startStart a transform
POST /_transform/{transform_id}/_stopStop transforms
POST /_transform/{transform_id}/_updateUpdate a transform
POST /_transform/_upgradeUpgrade all transforms

Cross-Cluster Replication (14)

ShortcutAction
GET /_ccr/auto_follow/{name}Get auto-follow patterns
PUT /_ccr/auto_follow/{name}Create or update auto-follow patterns
DELETE /_ccr/auto_follow/{name}Delete auto-follow patterns
PUT /{index}/_ccr/followCreate a follower
GET /{index}/_ccr/infoGet follower information
GET /{index}/_ccr/statsGet follower stats
POST /{index}/_ccr/forget_followerForget a follower
GET /_ccr/auto_followGet auto-follow patterns
POST /_ccr/auto_follow/{name}/pausePause an auto-follow pattern
POST /{index}/_ccr/pause_followPause a follower
POST /_ccr/auto_follow/{name}/resumeResume an auto-follow pattern
POST /{index}/_ccr/resume_followResume a follower
GET /_ccr/statsGet cross-cluster replication stats
POST /{index}/_ccr/unfollowUnfollow an index

Index Lifecycle (ILM) (12)

ShortcutAction
GET /_ilm/policy/{policy}Get lifecycle policies
PUT /_ilm/policy/{policy}Create or update a lifecycle policy
DELETE /_ilm/policy/{policy}Delete a lifecycle policy
GET /{index}/_ilm/explainExplain the lifecycle state
GET /_ilm/policyGet lifecycle policies
GET /_ilm/statusGet the ILM status
POST /_ilm/migrate_to_data_tiersMigrate to data tiers routing
POST /_ilm/move/{index}Move to a lifecycle step
POST /{index}/_ilm/removeRemove policies from an index
POST /{index}/_ilm/retryRetry a policy
POST /_ilm/startStart the ILM plugin
POST /_ilm/stopStop the ILM plugin

Scripts (10)

ShortcutAction
GET /_scripts/{id}Get a script or search template
PUT /_scripts/{id}Create or update a script or search template
POST /_scripts/{id}Create or update a script or search template
DELETE /_scripts/{id}Delete a script or search template
GET /_script_contextGet script contexts
GET /_script_languageGet script languages
PUT /_scripts/{id}/{context}Create or update a script or search template
POST /_scripts/{id}/{context}Create or update a script or search template
GET /_scripts/painless/_executeRun a script
POST /_scripts/painless/_executeRun a script

Snapshot Lifecycle (SLM) (10)

ShortcutAction
GET /_slm/policy/{policy_id}Get policy information
PUT /_slm/policy/{policy_id}Create or update a policy
DELETE /_slm/policy/{policy_id}Delete a policy
PUT /_slm/policy/{policy_id}/_executeRun a policy
POST /_slm/_execute_retentionRun a retention policy
GET /_slm/policyGet policy information
GET /_slm/statsGet snapshot lifecycle management statistics
GET /_slm/statusGet the snapshot lifecycle management status
POST /_slm/startStart snapshot lifecycle management
POST /_slm/stopStop snapshot lifecycle management

Migration (9)

ShortcutAction
POST /_migration/reindex/{index}/_cancelCancel a migration reindex operation
PUT /_create_from/{source}/{dest}Create an index from a source index
POST /_create_from/{source}/{dest}Create an index from a source index
GET /_migration/reindex/{index}/_statusGet the migration reindexing status
POST /_migration/reindexReindex legacy backing indices
GET /_migration/deprecationsGet deprecation information
GET /{index}/_migration/deprecationsGet deprecation information
GET /_migration/system_featuresGet feature migration information
POST /_migration/system_featuresStart the feature migration

License (8)

ShortcutAction
GET /_licenseGet license information
PUT /_licenseUpdate the license
POST /_licenseUpdate the license
DELETE /_licenseDelete the license
GET /_license/basic_statusGet the basic license status
GET /_license/trial_statusGet the trial status
POST /_license/start_basicStart a basic license
POST /_license/start_trialStart a trial

SQL (8)

ShortcutAction
POST /_sql/closeClear an SQL search cursor
DELETE /_sql/async/delete/{id}Delete an async SQL search
GET /_sql/async/{id}Get async SQL search results
GET /_sql/async/status/{id}Get the async SQL search status
GET /_sqlGet SQL search results
POST /_sqlGet SQL search results
GET /_sql/translateTranslate SQL into Elasticsearch queries
POST /_sql/translateTranslate SQL into Elasticsearch queries

Synonyms (7)

ShortcutAction
GET /_synonyms/{id}Get a synonym set
PUT /_synonyms/{id}Create or update a synonym set
DELETE /_synonyms/{id}Delete a synonym set
GET /_synonyms/{set_id}/{rule_id}Get a synonym rule
PUT /_synonyms/{set_id}/{rule_id}Create or update a synonym rule
DELETE /_synonyms/{set_id}/{rule_id}Delete a synonym rule
GET /_synonymsGet all synonym sets

Enrich (6)

ShortcutAction
GET /_enrich/policy/{name}Get an enrich policy
PUT /_enrich/policy/{name}Create an enrich policy
DELETE /_enrich/policy/{name}Delete an enrich policy
PUT /_enrich/policy/{name}/_executeRun an enrich policy
GET /_enrich/policyGet an enrich policy
GET /_enrich/_statsGet enrich stats

EQL (5)

ShortcutAction
GET /_eql/search/{id}Get async EQL search results
DELETE /_eql/search/{id}Delete an async EQL search
GET /_eql/search/status/{id}Get the async EQL status
GET /{index}/_eql/searchGet EQL search results
POST /{index}/_eql/searchGet EQL search results

Logstash (4)

ShortcutAction
GET /_logstash/pipeline/{id}Get Logstash pipelines
PUT /_logstash/pipeline/{id}Create or update a Logstash pipeline
DELETE /_logstash/pipeline/{id}Delete a Logstash pipeline
GET /_logstash/pipelineGet Logstash pipelines

Tasks (4)

ShortcutAction
POST /_tasks/_cancelCancel a task
POST /_tasks/{task_id}/_cancelCancel a task
GET /_tasks/{task_id}Get task information
GET /_tasksGet all tasks

Streams (3)

ShortcutAction
POST /_streams/{name}/_disableDisable a named stream
POST /_streams/{name}/_enableEnable a named stream
GET /_streams/statusGet the status of streams

Features (2)

ShortcutAction
GET /_featuresGet the features
POST /_features/_resetReset the features

Graph (2)

ShortcutAction
GET /{index}/_graph/exploreExplore graph analytics
POST /{index}/_graph/exploreExplore graph analytics

X-Pack (2)

ShortcutAction
GET /_xpackGet information
GET /_xpack/usageGet usage information
📄 View Printable Cheat Sheet — Download as PDF or print · 🧩 Combine with other tools

Related Shortcut Pages

Docker Kubernetes (kubectl) Grafana Bash / Shell Python Prometheus

Search 18,500+ shortcuts across 268 platforms

Explore All Platforms Practice Shortcuts

Reading the table

Paths in braces are parameters: GET /{index} means GET /my-index. Many routes appear twice with GET and POST because Elasticsearch accepts a request body on either, and again with a /{index} prefix because most operations can be scoped to an index or run cluster-wide. Underscore-prefixed segments — _search, _cat, _cluster — are APIs; anything without an underscore is an index name.

The operator's dozen

GET /_cluster/health is the first call in any incident; GET /_cat/indices, GET /_cat/nodes and GET /_cat/allocation give the human-readable tables behind it, and GET /_cluster/allocation/explain says why a shard is unassigned. GET /_cat/pending_tasks and GET /_nodes/hot_threads are the next stops when the cluster is slow. GET /_cluster/settings and PUT /_cluster/settings read and change transient or persistent settings, and GET /_tasks lists long-running operations such as reindexes so they can be cancelled with POST /_tasks/{task_id}/_cancel.

The developer's dozen

Documents go in through PUT /{index}/_doc/{id} or, for anything more than a handful, POST /_bulk. GET /{index}/_doc/{id} fetches one, POST /{index}/_update/{id} patches one, and POST /{index}/_delete_by_query and POST /{index}/_update_by_query act on everything a query matches. Searching is POST /{index}/_search in practice, with POST /_count for totals, GET /{index}/_explain/{id} for why a document scored as it did, and POST /{index}/_pit plus search-after for deep pagination instead of scroll. POST /_reindex copies between indices, and PUT /_index_template/{name} defines mappings for indices that do not exist yet.

Newer surfaces

POST /_query runs an ES|QL query, the piped query language that has replaced SQL for most analytics use, with POST /_query/async for long ones. PUT /_inference/{task_type}/{inference_id} registers an embedding or chat model — local or a hosted provider — that ingest pipelines and semantic search can call. GET /_migration/deprecations is the pre-upgrade check.

Frequently asked questions

Why are so many routes listed with both GET and POST?

Elasticsearch accepts a JSON body on GET for search and analysis APIs, but some HTTP clients cannot send one, so POST is offered as an equivalent.

What do the curly braces mean?

A path parameter you replace: {index} is an index name or pattern, {id} a document ID, {name} a template or policy name.

Which call tells me why a shard is unassigned?

GET /_cluster/allocation/explain, with an optional body naming the index and shard.

What replaced the scroll API for paging?

A point in time (POST /{index}/_pit) combined with search_after in the search body. Scroll still works but is not recommended for user-facing paging.

🤖 Ask AI about Elasticsearch shortcuts

Open your assistant with this page preloaded as the source — great for follow-up questions like "which of these work in other apps?"

ChatGPT Claude Perplexity Gemini Grok
📜 Every shortcut on this page is taken from the official Elasticsearch documentation — github.com
🔧 Spotted an error or a missing shortcut? Suggest an edit on GitHub — every accepted fix goes live on this page, the API and the CLI.