opensearch-docs-cn/_opensearch/popular-api.md

2.4 KiB

layout title nav_order
default Popular APIs 96

Popular APIs

This page contains sample requests for popular OpenSearch operations.


Table of contents

  1. TOC {:toc}

Create index with non-default settings

PUT my-logs
{
  "settings": {
    "number_of_shards": 4,
    "number_of_replicas": 2
  },
  "mappings": {
    "properties": {
      "title": {
        "type": "text"
      },
      "year": {
        "type": "integer"
      }
    }
  }
}

Index a document with a random ID

POST my-logs/_doc
{
  "title": "Your Name",
  "year": "2016"
}

Index a document with a specific ID

PUT my-logs/_doc/1
{
  "title": "Weathering with You",
  "year": "2019"
}

Index several documents at once

The blank line at the end of the request body is required. If you omit the _id field, OpenSearch generates a random ID.

POST _bulk
{ "index": { "_index": "my-logs", "_id": "2" } }
{ "title": "The Garden of Words", "year": 2013 }
{ "index" : { "_index": "my-logs", "_id" : "3" } }
{ "title": "5 Centimeters Per Second", "year": 2007 }

List all indices

GET _cat/indices?v&expand_wildcards=all

Open or close all indices that match a pattern

POST my-logs*/_open
POST my-logs*/_close

Delete all indices that match a pattern

DELETE my-logs*

Create an index alias

This request creates the alias my-logs-today for the index my-logs-2019-11-13.

PUT my-logs-2019-11-13/_alias/my-logs-today

List all aliases

GET _cat/aliases?v

Search an index or all indices that match a pattern

GET my-logs/_search?q=test
GET my-logs*/_search?q=test

Get cluster settings, including defaults

GET _cluster/settings?include_defaults=true

Change disk watermarks (or other cluster settings)

PUT _cluster/settings
{
  "transient": {
    "cluster.routing.allocation.disk.watermark.low": "80%",
    "cluster.routing.allocation.disk.watermark.high": "85%"
  }
}

Get cluster health

GET _cluster/health

List nodes in the cluster

GET _cat/nodes?v

Get node statistics

GET _nodes/stats

Get snapshots in a repository

GET _snapshot/my-repository/_all

Take a snapshot

PUT _snapshot/my-repository/my-snapshot

Restore a snapshot

POST _snapshot/my-repository/my-snapshot/_restore
{
  "indices": "-.opendistro_security",
  "include_global_state": false
}