Link Search Menu Expand Document Documentation Menu

You're viewing version 2.5 of the OpenSearch documentation. This version is no longer maintained. For the latest version, see the current documentation. For information about OpenSearch version maintenance, see Release Schedule and Maintenance Policy.

OpenSearch CLI

The OpenSearch CLI command line interface (opensearch-cli) lets you manage your OpenSearch cluster from the command line and automate tasks.

Currently, opensearch-cli supports the Anomaly Detection and k-NN plugins, along with arbitrary REST API paths. Among other things, you can use opensearch-cli to create and delete detectors, start and stop them, and check k-NN statistics.

Profiles let you easily access different clusters or sign requests with different credentials. opensearch-cli supports unauthenticated requests, HTTP basic signing, and IAM signing for Amazon Web Services.

This example moves a detector (ecommerce-count-quantity) from a staging cluster to a production cluster:

opensearch-cli ad get ecommerce-count-quantity --profile staging > ecommerce-count-quantity.json
opensearch-cli ad create ecommerce-count-quantity.json --profile production
opensearch-cli ad start ecommerce-count-quantity.json --profile production
opensearch-cli ad stop ecommerce-count-quantity --profile staging
opensearch-cli ad delete ecommerce-count-quantity --profile staging


  1. Download and extract the appropriate installation package for your computer.

  2. Make the opensearch-cli file executable:

    chmod +x ./opensearch-cli
  3. Add the command to your path:

    export PATH=$PATH:$(pwd)
  4. Confirm the CLI is working properly:

    opensearch-cli --version


Profiles let you easily switch between different clusters and user credentials. To get started, run opensearch-cli profile create with the --auth-type, --endpoint, and --name options:

opensearch-cli profile create --auth-type basic --endpoint https://localhost:9200 --name docker-local

Alternatively, save a configuration file to ~/.opensearch-cli/config.yaml:

    - name: docker-local
      endpoint: https://localhost:9200
      user: admin
      password: foobar
    - name: aws
        profile: ""
        service: es


opensearch-cli commands use the following syntax:

opensearch-cli <command> <subcommand> <flags>

For example, the following command retrieves information about a detector:

opensearch-cli ad get my-detector --profile docker-local

For a request to the OpenSearch CAT API, try the following command:

opensearch-cli curl get --path _cat/plugins --profile aws

Use the -h or --help flag to see all supported commands, subcommands, or usage for a specific command:

opensearch-cli -h
opensearch-cli ad -h
opensearch-cli ad get -h
350 characters left

Have a question? .

Want to contribute? or .