mugli
4/22/2019 - 7:41 AM

Elasticsearch Cheatsheet - An Overview of Commonly Used Elasticsearch API Endpoints and What They Do

Elasticsearch Cheatsheet - An Overview of Commonly Used Elasticsearch API Endpoints and What They Do

# Elasticsearch Cheatsheet - an overview of commonly used Elasticsearch API commands

# cat paths
/_cat/allocation
/_cat/shards
/_cat/shards/{index}
/_cat/master
/_cat/nodes
/_cat/indices
/_cat/indices/{index}
/_cat/segments
/_cat/segments/{index}
/_cat/count
/_cat/count/{index}
/_cat/recovery
/_cat/recovery/{index}
/_cat/health
/_cat/pending_tasks
/_cat/aliases
/_cat/aliases/{alias}
/_cat/thread_pool
/_cat/plugins
/_cat/fielddata
/_cat/fielddata/{fields}

# Important Things
bin/elasticsearch                                                       # Start Elastic instance
curl -X GET  'http://localhost:9200/?pretty=true'                       # View instance metadata
curl -X POST 'http://localhost:9200/_shutdown'                          # Shutdown Elastic instance
curl -X GET 'http://localhost:9200/_cat?pretty=true'                    # List all admin methods
curl -X GET 'http://localhost:9200/_cat/indices?pretty=true'            # List all indices
curl -X GET 'http://localhost:9200/_cluster/health?pretty=true'         # View Cluster Health

# Index, Type Basics
curl -X GET  'http://localhost:9200/<index name>'                       # View specific index
curl -X POST 'http://localhost:9200/<index name>'                       # Create an index
curl -X DELETE 'http://localhost:9200/<index name>'                     # Delete an index

curl -X GET  'http://locahost:9200/<index name>/<type>/<id>'            # Retrieve a specific document
curl -X POST 'http://locahost:9200/<index name>/<type>/'                # Create a document
curl -X PUT  'http://locahost:9200/<index name>/<type>/<id>'            # Create/Update a specific document
curl -X DELETE 'http://localhost:9200/<index name>/<type>/<id>'         # Delete a specific document

curl -X GET  'http://localhost:9200/<index name>/_mappings'             # View mappings for index
curl -X GET  'http://localhost:9200/<index name>/_settings'             # View setting information for an index

curl -X GET  'http://localhost:9200/<index name>/<type>/_mappings'      # View mappings for an index type
curl -X GET  'http://localhost:9200/<index name>/<type>/_settings'      # View setting information for an index type

curl -X GET  'http://localhost:9200/<index name>/_search'               # Search an index
curl -X GET  'http://localhost:9200/<index name>/<type>/_search'        # Search an index type

# Bulk API
curl -X GET 'http://localhost:9200/_bulk'                               
curl -X GET 'http://localhost:9200/<index name>/_bulk' 
curl -X GET 'http://localhost:9200/<index name>/<type>/_bulk' 

# Elastic River Basics
curl -X GET 'http://localhost:9200/_river/_meta'                      # View River settings
curl -X GET 'http://localhost:9200/_river/<index name>/_meta'         # View River meta data for index
curl -X GET 'http://localhost:9200/_river/<index name>/_meta/_source' # View River source for index
curl -X GET 'http://localhost:9200/_river/<index name>/_status'       # View River status
curl -X GET 'http://localhost:9200/_river/<index name>/_search'       # Seach the River Index

@StephenPuiszis
https://gist.github.com/stephen-puiszis