Elastic Stack (ELK Stack) Searchable Snapshots API

The searchable_snapshots API from Elastic Stack (ELK Stack) — 7 operation(s) for searchable_snapshots.

Operations 7

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

GET /_searchable_snapshots/cache/stats Get shared cache stats across all nodes · Get cache statistics #
Ask an LLM
“How full is the shared cache for partially mounted indices across my cluster?”
“Can I see cluster-wide cache statistics for frozen-tier searchable snapshots?”
Tell an agent
Show shared cache statistics for every node.
Report cluster-wide searchable snapshot cache usage.
GET /_searchable_snapshots/{node_id}/cache/stats Get shared cache stats for specific nodes · Get cache statistics #
Ask an LLM
“What does the searchable snapshot cache look like on one particular node?”
“Can I limit cache statistics to selected node IDs?”
Tell an agent
Get cache usage on node {node_id} alone.
Report the partially mounted index cache on nodes {node_id} only.
POST /_searchable_snapshots/cache/clear Clear the searchable snapshot cache everywhere · Clear the cache #
Ask an LLM
“Can I flush the shared cache for all partially mounted indices?”
“Does clearing the whole cache ignore unavailable indices?”
Tell an agent
Clear the searchable snapshot cache for all indices.
Clear the cache across every index, with ignore_unavailable {ignore_unavailable}.
POST /{index}/_searchable_snapshots/cache/clear Clear the searchable snapshot cache for an index · Clear the cache #
Ask an LLM
“How do I clear cached data for just one mounted index or data stream?”
“Can I target an index pattern when clearing the snapshot cache?”
Tell an agent
Clear the searchable snapshot cache for index {index}.
Drop cached data for indices matching {index}, expanding wildcards to {expand_wildcards}.
POST /_snapshot/{repository}/{snapshot}/_mount Mount a snapshot as a searchable index · Mount a snapshot #
Ask an LLM
“How do I make an index inside a snapshot searchable without restoring it fully?”
“Can I mount a snapshot index under a new name with shared-cache storage?”
Tell an agent
Mount index {index} from snapshot {snapshot} in repository {repository}.
Mount {index} from {repository}/{snapshot} as {renamed_index} using storage {storage}.
GET /_searchable_snapshots/stats Get searchable snapshot stats for all indices · Get searchable snapshot statistics #
Ask an LLM
“What are the searchable snapshot statistics across the whole cluster?”
“Can I break searchable snapshot stats down by shard or index level?”
Tell an agent
Show searchable snapshot statistics for every mounted index.
Report cluster-wide searchable snapshot stats at level {level}.
GET /{index}/_searchable_snapshots/stats Get searchable snapshot stats for an index · Get searchable snapshot statistics #
Ask an LLM
“How is one mounted searchable snapshot index performing?”
“Can I get searchable snapshot stats for a single index pattern?”
Tell an agent
Show searchable snapshot statistics for index {index}.
Report stats for mounted index {index} at level {level}.

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-searchable-snapshots-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-searchable-snapshots-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Elasticsearch Request & Response Specification Searchable…
  license:
    name: Apache 2.0
    url: https://github.com/elastic/elasticsearch-specification/blob/main/LICENSE
  version: ''
tags:
- name: searchable_snapshots
paths:
  /_searchable_snapshots/cache/stats:
    get:
      tags:
      - searchable_snapshots
      summary: Get cache statistics
      description: 'Get statistics about the shared cache for partially mounted indices.


        ## Required authorization


        * Cluster privileges: `manage`'
      externalDocs:
        description: More about searchable snapshots
        url: https://www.elastic.co/docs/deploy-manage/tools/snapshot-and-restore/searchable-snapshots
        x-previousVersionUrl: https://www.elastic.co/guide/en/elasticsearch/reference/8.19/searchable-snapshots-api-cache-stats.html
      operationId: searchable-snapshots-cache-stats
      responses:
        '200':
          $ref: '#/components/responses/searchable_snapshots.cache_stats-200'
      x-state: Experimental; Added in 7.13.0
      x-metaTags:
      - content: Elasticsearch
        name: product_name
  /_searchable_snapshots/{node_id}/cache/stats:
    get:
      tags:
      - searchable_snapshots
      summary: Get cache statistics
      description: 'Get statistics about the shared cache for partially mounted indices.


        ## Required authorization


        * Cluster privileges: `manage`'
      externalDocs:
        description: More about searchable snapshots
        url: https://www.elastic.co/docs/deploy-manage/tools/snapshot-and-restore/searchable-snapshots
        x-previousVersionUrl: https://www.elastic.co/guide/en/elasticsearch/reference/8.19/searchable-snapshots-api-cache-stats.html
      operationId: searchable-snapshots-cache-stats-1
      parameters:
      - $ref: '#/components/parameters/searchable_snapshots.cache_stats-node_id'
      responses:
        '200':
          $ref: '#/components/responses/searchable_snapshots.cache_stats-200'
      x-state: Experimental; Added in 7.13.0
      x-metaTags:
      - content: Elasticsearch
        name: product_name
  /_searchable_snapshots/cache/clear:
    post:
      tags:
      - searchable_snapshots
      summary: Clear the cache
      description: 'Clear indices and data streams from the shared cache for partially mounted indices.


        ## Required authorization


        * Index privileges: `manage`

        * Cluster privileges: `manage`'
      externalDocs:
        description: More about searchable snapshots
        url: https://www.elastic.co/docs/deploy-manage/tools/snapshot-and-restore/searchable-snapshots
        x-previousVersionUrl: https://www.elastic.co/guide/en/elasticsearch/reference/8.19/searchable-snapshots-api-clear-cache.html
      operationId: searchable-snapshots-clear-cache
      parameters:
      - $ref: '#/components/parameters/searchable_snapshots.clear_cache-expand_wildcards'
      - $ref: '#/components/parameters/searchable_snapshots.clear_cache-allow_no_indices'
      - $ref: '#/components/parameters/searchable_snapshots.clear_cache-ignore_unavailable'
      responses:
        '200':
          $ref: '#/components/responses/searchable_snapshots.clear_cache-200'
      x-state: Experimental; Added in 7.10.0
      x-metaTags:
      - content: Elasticsearch
        name: product_name
  /{index}/_searchable_snapshots/cache/clear:
    post:
      tags:
      - searchable_snapshots
      summary: Clear the cache
      description: 'Clear indices and data streams from the shared cache for partially mounted indices.


        ## Required authorization


        * Index privileges: `manage`

        * Cluster privileges: `manage`'
      externalDocs:
        description: More about searchable snapshots
        url: https://www.elastic.co/docs/deploy-manage/tools/snapshot-and-restore/searchable-snapshots
        x-previousVersionUrl: https://www.elastic.co/guide/en/elasticsearch/reference/8.19/searchable-snapshots-api-clear-cache.html
      operationId: searchable-snapshots-clear-cache-1
      parameters:
      - $ref: '#/components/parameters/searchable_snapshots.clear_cache-index'
      - $ref: '#/components/parameters/searchable_snapshots.clear_cache-expand_wildcards'
      - $ref: '#/components/parameters/searchable_snapshots.clear_cache-allow_no_indices'
      - $ref: '#/components/parameters/searchable_snapshots.clear_cache-ignore_unavailable'
      responses:
        '200':
          $ref: '#/components/responses/searchable_snapshots.clear_cache-200'
      x-state: Experimental; Added in 7.10.0
      x-metaTags:
      - content: Elasticsearch
        name: product_name
  /_snapshot/{repository}/{snapshot}/_mount:
    post:
      tags:
      - searchable_snapshots
      summary: Mount a snapshot
      description: 'Mount a snapshot as a searchable snapshot index.

        Do not use this API for snapshots managed by index lifecycle management (ILM).

        Manually mounting ILM-managed snapshots can interfere with ILM processes.


        ## Required authorization


        * Index privileges: `manage`

        * Cluster privileges: `manage`'
      operationId: searchable-snapshots-mount
      parameters:
      - in: path
        name: repository
        description: The name of the repository containing the snapshot of the index to mount.
        required: true
        deprecated: false
        schema:
          $ref: '#/components/schemas/_types.Name'
        style: simple
      - in: path
        name: snapshot
        description: The name of the snapshot of the index to mount.
        required: true
        deprecated: false
        schema:
          $ref: '#/components/schemas/_types.Name'
        style: simple
      - in: query
        name: master_timeout
        description: 'The period to wait for the master node.

          If the master node is not available before the timeout expires, the request fails and returns an error.

          To indicate that the request should never timeout, set it to `-1`.'
        deprecated: false
        schema:
          default: 30s
          allOf:
          - $ref: '#/components/schemas/_types.Duration'
        style: form
      - in: query
        name: wait_for_completion
        description: If true, the request blocks until the operation is complete.
        deprecated: false
        schema:
          default: false
          type: boolean
        style: form
      - in: query
        name: storage
        description: 'The mount option for the searchable snapshot index.

          For further information on mount options, refer to: [Mount options](https://www.elastic.co/docs/deploy-manage/tools/snapshot-and-restore/searchable-snapshots#searchable-snapshot-mount-storage-options)'
        deprecated: false
        schema:
          default: full_copy
          allOf:
          - $ref: '#/components/schemas/searchable_snapshots.mount.StorageOption'
        style: form
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                index:
                  description: 'The name of the index contained in the snapshot whose data is to be mounted.

                    If no `renamed_index` is specified, this name will also be used to create the new index.'
                  allOf:
                  - $ref: '#/components/schemas/_types.IndexName'
                renamed_index:
                  description: The name of the index that will be created.
                  allOf:
                  - $ref: '#/components/schemas/_types.IndexName'
                index_settings:
                  description: The settings that should be added to the index when it is mounted.
                  type: object
                  additionalProperties:
                    type: object
                ignore_index_settings:
                  description: The names of settings that should be removed from the index when it is mounted.
                  type: array
                  items:
                    type: string
              required:
              - index
            examples:
              SearchableSnapshotsMountSnapshotRequestExample1:
                description: 'Run `POST /_snapshot/my_repository/my_snapshot/_mount?wait_for_completion=true` to mount the index `my_docs` from an existing snapshot named `my_snapshot` stored in `my_repository` as a new index `docs`.

                  '
                value: "{\n  \"index\": \"my_docs\",\n  \"renamed_index\": \"docs\",\n  \"index_settings\": {\n    \"index.number_of_replicas\": 0\n  },\n  \"ignore_index_settings\": [ \"index.refresh_interval\" ]\n}"
        required: true
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  snapshot:
                    allOf:
                    - $ref: '#/components/schemas/searchable_snapshots.mount.MountedSnapshot'
                required:
                - snapshot
      x-state: Generally available; Added in 7.10.0
      x-metaTags:
      - content: Elasticsearch
        name: product_name
  /_searchable_snapshots/stats:
    get:
      tags:
      - searchable_snapshots
      summary: Get searchable snapshot statistics
      description: '## Required authorization


        * Index privileges: `manage`

        * Cluster privileges: `manage`'
      operationId: searchable-snapshots-stats
      parameters:
      - $ref: '#/components/parameters/searchable_snapshots.stats-level'
      responses:
        '200':
          $ref: '#/components/responses/searchable_snapshots.stats-200'
      x-state: Generally available; Added in 7.10.0
      x-metaTags:
      - content: Elasticsearch
        name: product_name
  /{index}/_searchable_snapshots/stats:
    get:
      tags:
      - searchable_snapshots
      summary: Get searchable snapshot statistics
      description: '## Required authorization


        * Index privileges: `manage`

        * Cluster privileges: `manage`'
      operationId: searchable-snapshots-stats-1
      parameters:
      - $ref: '#/components/parameters/searchable_snapshots.stats-index'
      - $ref: '#/components/parameters/searchable_snapshots.stats-level'
      responses:
        '200':
          $ref: '#/components/responses/searchable_snapshots.stats-200'
      x-state: Generally available; Added in 7.10.0
      x-metaTags:
      - content: Elasticsearch
        name: product_name
components:
  schemas:
    searchable_snapshots.mount.StorageOption:
      type: string
      enum:
      - full_copy
      - shared_cache
    _types.Name:
      type: string
    searchable_snapshots.cache_stats.Shared:
      type: object
      properties:
        reads:
          type: number
        bytes_read_in_bytes:
          allOf:
          - $ref: '#/components/schemas/_types.ByteSize'
        writes:
          type: number
        bytes_written_in_bytes:
          allOf:
          - $ref: '#/components/schemas/_types.ByteSize'
        evictions:
          type: number
        num_regions:
          type: number
        size_in_bytes:
          allOf:
          - $ref: '#/components/schemas/_types.ByteSize'
        region_size_in_bytes:
          allOf:
          - $ref: '#/components/schemas/_types.ByteSize'
      required:
      - reads
      - bytes_read_in_bytes
      - writes
      - bytes_written_in_bytes
      - evictions
      - num_regions
      - size_in_bytes
      - region_size_in_bytes
    searchable_snapshots.cache_stats.Node:
      type: object
      properties:
        shared_cache:
          allOf:
          - $ref: '#/components/schemas/searchable_snapshots.cache_stats.Shared'
      required:
      - shared_cache
    searchable_snapshots._types.StatsLevel:
      type: string
      enum:
      - cluster
      - indices
      - shards
    _types.ShardStatistics:
      type: object
      properties:
        failed:
          description: The number of shards the operation or search attempted to run on but failed.
          allOf:
          - $ref: '#/components/schemas/_types.uint'
        successful:
          description: The number of shards the operation or search succeeded on.
          allOf:
          - $ref: '#/components/schemas/_types.uint'
        total:
          description: The number of shards the operation or search will run on overall.
          allOf:
          - $ref: '#/components/schemas/_types.uint'
        failures:
          type: array
          items:
            $ref: '#/components/schemas/_types.ShardFailure'
        skipped:
          allOf:
          - $ref: '#/components/schemas/_types.uint'
      required:
      - failed
      - successful
      - total
    _types.ByteSize:
      oneOf:
      - type: number
      - type: string
    searchable_snapshots.mount.MountedSnapshot:
      type: object
      properties:
        snapshot:
          allOf:
          - $ref: '#/components/schemas/_types.Name'
        indices:
          allOf:
          - $ref: '#/components/schemas/_types.Indices'
        shards:
          allOf:
          - $ref: '#/components/schemas/_types.ShardStatistics'
      required:
      - snapshot
      - indices
      - shards
    _types.Duration:
      externalDocs:
        url: https://www.elastic.co/docs/reference/elasticsearch/rest-apis/api-conventions#time-units
      description: 'A duration. Units can be `nanos`, `micros`, `ms` (milliseconds), `s` (seconds), `m` (minutes), `h` (hours) and

        `d` (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.'
      oneOf:
      - type: string
      - type: string
        enum:
        - '-1'
      - type: string
        enum:
        - '0'
    _types.ExpandWildcard:
      type: string
      enum:
      - all
      - open
      - closed
      - hidden
      - none
    _types.NodeId:
      type: string
    _types.Indices:
      oneOf:
      - $ref: '#/components/schemas/_types.IndexName'
      - type: array
        items:
          $ref: '#/components/schemas/_types.IndexName'
    _types.ShardFailure:
      type: object
      properties:
        index:
          allOf:
          - $ref: '#/components/schemas/_types.IndexName'
        node:
          type: string
        reason:
          allOf:
          - $ref: '#/components/schemas/_types.ErrorCause'
        shard:
          type: number
        status:
          type: string
        primary:
          type: boolean
      required:
      - reason
    _types.ErrorCause:
      description: 'Cause and details about a request failure. This class defines the properties common to all error types.

        Additional details are also provided, that depend on the error type.'
      type: object
      properties:
        type:
          description: The type of error
          type: string
        reason:
          description: A human-readable explanation of the error, in English.
          oneOf:
          - type: string
          - type:
            - string
            - 'null'
        stack_trace:
          description: The server stack trace. Present only if the `error_trace=true` parameter was sent with the request.
          type: string
        caused_by:
          allOf:
          - $ref: '#/components/schemas/_types.ErrorCause'
        root_cause:
          type: array
          items:
            $ref: '#/components/schemas/_types.ErrorCause'
        suppressed:
          type: array
          items:
            $ref: '#/components/schemas/_types.ErrorCause'
      required:
      - type
    _types.ExpandWildcards:
      oneOf:
      - $ref: '#/components/schemas/_types.ExpandWildcard'
      - type: array
        items:
          $ref: '#/components/schemas/_types.ExpandWildcard'
    _types.NodeIds:
      oneOf:
      - $ref: '#/components/schemas/_types.NodeId'
      - type: array
        items:
          $ref: '#/components/schemas/_types.NodeId'
    _types.uint:
      type: number
    _types.IndexName:
      type: string
  responses:
    searchable_snapshots.clear_cache-200:
      description: ''
      content:
        application/json:
          schema:
            type: object
    searchable_snapshots.stats-200:
      description: ''
      content:
        application/json:
          schema:
            type: object
            properties:
              stats:
                type: object
              total:
                type: object
            required:
            - stats
            - total
    searchable_snapshots.cache_stats-200:
      description: ''
      content:
        application/json:
          schema:
            type: object
            properties:
              nodes:
                type: object
                additionalProperties:
                  $ref: '#/components/schemas/searchable_snapshots.cache_stats.Node'
            required:
            - nodes
          examples:
            CacheStatsResponseExample1:
              description: A successful response from `GET /_searchable_snapshots/cache/stats`.
              value: "{\n  \"nodes\" : {\n    \"eerrtBMtQEisohZzxBLUSw\" : {\n      \"shared_cache\" : {\n        \"reads\" : 6051, // The number of cache region read operations. If reads > writes, the difference represents requests successfully served from the cache without accessing the snapshot repository.\n        \"bytes_read_in_bytes\" : 5448829,\n        \"writes\" : 37, // The number of cache region write operations. If reads == writes, every request required fetching data from the snapshot repository into the cache.\n        \"bytes_written_in_bytes\" : 1208320,\n        \"evictions\" : 5, // The number of cache region evictions. A low eviction count indicates the cache is effectively serving requests. Use this metric to evaluate cache sizing.\n        \"num_regions\" : 65536,\n        \"size_in_bytes\" : 1099511627776,\n        \"region_size_in_bytes\" : 16777216 // The size of each cache region. A region is a contiguous byte range stored on local disk.\n      }\n    }\n  }\n}"
  parameters:
    searchable_snapshots.stats-index:
      in: path
      name: index
      description: A comma-separated list of data streams and indices to retrieve statistics for.
      required: true
      deprecated: false
      schema:
        $ref: '#/components/schemas/_types.Indices'
      style: simple
    searchable_snapshots.clear_cache-index:
      in: path
      name: index
      description: 'A comma-separated list of data streams, indices, and aliases to clear from the cache.

        It supports wildcards (`*`).'
      required: true
      deprecated: false
      schema:
        $ref: '#/components/schemas/_types.Indices'
      style: simple
    searchable_snapshots.cache_stats-node_id:
      in: path
      name: node_id
      description: The names of the nodes in the cluster to target.
      required: true
      deprecated: false
      schema:
        $ref: '#/components/schemas/_types.NodeIds'
      style: simple
    searchable_snapshots.clear_cache-expand_wildcards:
      in: query
      name: expand_wildcards
      description: Whether to expand wildcard expression to concrete indices that are open, closed or both
      deprecated: false
      schema:
        default: open
        allOf:
        - $ref: '#/components/schemas/_types.ExpandWildcards'
      style: form
    searchable_snapshots.clear_cache-ignore_unavailable:
      in: query
      name: ignore_unavailable
      description: 'If `false`, the request returns an error if it targets a concrete (non-wildcarded)

        index, alias, or data stream that is missing, closed, or otherwise unavailable.

        If `true`, unavailable concrete targets are silently ignored.'
      deprecated: false
      schema:
        type: boolean
      style: form
    searchable_snapshots.stats-level:
      in: query
      name: level
      description: Return stats aggregated at cluster, index or shard level
      deprecated: false
      schema:
        default: indices
        allOf:
        - $ref: '#/components/schemas/searchable_snapshots._types.StatsLevel'
      style: form
    searchable_snapshots.clear_cache-allow_no_indices:
      in: query
      name: allow_no_indices
      description: 'A setting that does two separate checks on the index expression.

        If `false`, the request returns an error (1) if any wildcard expression

        (including `_all` and `*`) resolves to zero matching indices or (2) if the

        complete set of resolved indices, aliases or data streams is empty after all

        expressions are evaluated. If `true`, index expressions that resolve to no

        indices are allowed and the request returns an empty result.'
      deprecated: false
      schema:
        type: boolean
      style: form