Elastic Stack (ELK Stack) Stack API

The Stack API from Elastic Stack (ELK Stack) — 3 operation(s) for stack.

Operations 6

GET /stack/instance-types DEPRECATED: Scheduled to be removed in a future release. Get instance types #
GET /stack/versions Get stack versions #
POST /stack/versions Upload stack pack #
GET /stack/versions/{version} Get stack version #
PUT /stack/versions/{version} Update stack version #
DELETE /stack/versions/{version} Delete stack version #

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-stack-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-stack-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: '1'
  title: Elastic Cloud Enterprise Stack API
  termsOfService: ''
servers:
- url: https://{{hostname}}/api/v1
security:
- basicAuth: []
- apiKey: []
tags:
- name: Stack
paths:
  /stack/instance-types:
    get:
      tags:
      - Stack
      summary: 'DEPRECATED: Scheduled to be removed in a future release.


        Get instance types'
      description: Retrieves a list of all instance types.
      operationId: get-instance-types
      deprecated: true
      responses:
        '200':
          description: List of node types
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/InstanceTypeResource'
      x-doc:
        tag: Stack - Instance Types - CRUD
  /stack/versions:
    get:
      tags:
      - Stack
      summary: Get stack versions
      description: By default, retrieves only the available Elastic Stack versions. To retrieve all of the Elastic Stack versions, use the `show_deleted parameter`.
      operationId: get-version-stacks
      parameters:
      - name: show_deleted
        in: query
        description: Whether to show deleted stack versions or not
        required: false
        schema:
          type: boolean
          default: false
      - name: show_unusable
        in: query
        description: Whether to show versions that are unusable by the authenticated user
        required: false
        schema:
          type: boolean
          default: false
      responses:
        '200':
          description: The list of all available Elastic Stack versions are retrieved, including the template version and structure.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StackVersionConfigs'
      x-doc:
        tag: Stack - Versions - CRUD
    post:
      tags:
      - Stack
      summary: Upload stack pack
      description: 'Creates or updates an Elastic Stack pack and template.

        The endpoint supports `multipart/form-data` requests, as well as `application/zip` and `application/octet-stream` requests with a binary body. The maximum size of the payload is 1Mb.

        When the archive contains an Elastic Stack configuration that is available through the API, the configuration and template are overwritten.'
      operationId: update-stack-packs
      responses:
        '200':
          description: The Elastic Stack pack successfully processed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StackVersionArchiveProcessingResult'
        '400':
          description: '* There is an error in the file. Choose a different file, then try again. (code: `stackpack.bad_archive`)

            * Some unexpected error occurred. (code: `stackpack.unknown_internal_error`)'
          headers:
            x-cloud-error-codes:
              description: The error codes associated with the response
              schema:
                type: string
                enum:
                - stackpack.bad_archive
                - stackpack.unknown_internal_error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StackVersionArchiveProcessingResult'
      x-doc:
        tag: Stack - Versions - CRUD
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                file:
                  type: string
                  description: Zip file that contains one or multiple stack configurations
                  format: binary
              required:
              - file
  /stack/versions/{version}:
    get:
      tags:
      - Stack
      summary: Get stack version
      description: Retrieves the Elastic Stack version and template.
      operationId: get-version-stack
      parameters:
      - name: version
        in: path
        description: The Elastic Stack version. For example, `5.3.1` or `5.0.0-RC4`.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: The Elastic Stack version is found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StackVersionConfig'
        '404':
          description: 'The Elastic Stack version can''t be found. (code: `stackpack.version_not_found`)'
          headers:
            x-cloud-error-codes:
              description: The error codes associated with the response
              schema:
                type: string
                enum:
                - stackpack.version_not_found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BasicFailedReply'
      x-doc:
        tag: Stack - Versions - CRUD
    put:
      tags:
      - Stack
      summary: Update stack version
      description: Updates the Elastic Stack version configuration.
      operationId: update-version-stack
      parameters:
      - name: version
        in: path
        description: The Elastic Stack version. For example, `5.3.1` or `5.0.0-RC4`.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: The Elastic Stack version successfully updated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StackVersionConfig'
        '404':
          description: 'The Elastic Stack version can''t be found. (code: `stackpack.missing_platform_version`)'
          headers:
            x-cloud-error-codes:
              description: The error codes associated with the response
              schema:
                type: string
                enum:
                - stackpack.missing_platform_version
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BasicFailedReply'
      x-doc:
        tag: Stack - Versions - CRUD
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/StackVersionConfigPost'
        description: Elastic Stack configuration object
        required: true
    delete:
      tags:
      - Stack
      summary: Delete stack version
      description: Uses the `deleted` flag, which removes only that version of the Elastic Stack from the list of available versions. To restore the version, send an update request. For more information, see the PUT request.
      operationId: delete-version-stack
      parameters:
      - name: version
        in: path
        description: The Elastic Stack version. For example, `5.3.1` or `5.0.0-RC4`.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: The `deleted` flag is applied to the specified Elastic Stack version.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmptyResponse'
        '404':
          description: 'The Elastic Stack version can''t be found. (code: `stackpack.version_not_found`)'
          headers:
            x-cloud-error-codes:
              description: The error codes associated with the response
              schema:
                type: string
                enum:
                - stackpack.version_not_found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BasicFailedReply'
      x-doc:
        tag: Stack - Versions - CRUD
components:
  schemas:
    InstanceTypeResource:
      type: object
      required:
      - compatibility
      - description
      - instance_type
      - name
      - node_types
      properties:
        instance_type:
          type: string
          description: Instance type, the key for this resource
          enum:
          - elasticsearch
          - kibana
          - apm
          - integrations_server
          - appsearch
          - enterprise_search
        name:
          type: string
          description: Instance type name
        description:
          type: string
          description: Instance type description
        node_types:
          type: array
          description: Supported node types
          items:
            $ref: '#/components/schemas/NodeTypeResource'
        compatibility:
          type: array
          description: Compatible versions
          items:
            $ref: '#/components/schemas/CompatibleVersionResource'
        default_instance_configuration_id:
          type: string
          description: Id of the default instance configuration to use for this instance type.
    StackVersionAppSearchConfig:
      type: object
      required:
      - blacklist
      - docker_image
      properties:
        version:
          type: string
          description: Version of AppSearch
        docker_image:
          type: string
          description: Docker image for the AppSearch
        blacklist:
          type: array
          description: List of configuration options that cannot be overridden by user settings
          items:
            type: string
        settings:
          type: object
          description: Settings that are applied to all nodes of this type
          properties: {}
        capacity_constraints:
          description: '> WARNING

            > This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.


            Capacity constraints for the node type'
          $ref: '#/components/schemas/StackVersionInstanceCapacityConstraint'
        compatible_node_types:
          type: array
          description: Node types that are compatible with this one
          items:
            type: string
        node_types:
          type: array
          description: Node types that are supported by this stack version
          items:
            $ref: '#/components/schemas/StackVersionNodeType'
      description: AppSearch related configuration of an Elastic Stack version
    StackVersionNodeType:
      type: object
      required:
      - description
      - name
      - node_type
      properties:
        node_type:
          type: string
          description: Type of the node (master, data, ...)
        name:
          type: string
          description: Name of the node type
        description:
          type: string
          description: Description of the node type
        settings:
          type: object
          description: Settings that are applied to all nodes of this type
          properties: {}
        capacity_constraints:
          description: '> WARNING

            > This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.


            Capacity constraints for the node type'
          $ref: '#/components/schemas/StackVersionInstanceCapacityConstraint'
        compatible_node_types:
          type: array
          description: Node types that are compatible with this one
          items:
            type: string
        mandatory:
          type: boolean
          description: Flag to specify a node type is mandatory in a cluster's plan
      description: The configuration for an Elastic Stack node type.
    StackVersionMetadata:
      type: object
      properties:
        notes:
          type: string
          description: Notes for administrator
        pre_release:
          type: boolean
          description: Indicates that the stack pack version is not GA and is not supposed to be used in production
        min_platform_version:
          type: string
          description: The minimum version of the platform that the stack pack version is compatible with
        min_wire_compatibility_version:
          type: string
          description: The minimum version required for performing a rolling upgrade to this stack version.
        min_index_compatibility_version:
          type: string
          description: The minimum version required for performing a full cluster restart upgrade to this stack version.
        schema_version:
          type: integer
          format: int32
          description: The schema version of the stack pack version
        is_fips:
          type: boolean
          description: Is this a fips stackpack
      description: The metadata for the Elastic Stack.
    StackVersionTemplateInfo:
      type: object
      properties:
        template_version:
          type: string
          description: Template version
          readOnly: true
        hashes:
          type: array
          description: Relative paths of files with SHA-256 hashes that contains the template
          readOnly: true
          items:
            $ref: '#/components/schemas/StackVersionTemplateFileHash'
      description: The template information for an Elastic Stack version.
    StackVersionTemplateFileHash:
      type: object
      required:
      - hash
      - path
      properties:
        path:
          type: string
          description: File path relative to template's root
        hash:
          type: string
          description: SHA-256 hash of a file
      description: The template file hash for an Elastic Stack version.
    StackVersionConfigs:
      type: object
      required:
      - stacks
      properties:
        stacks:
          type: array
          items:
            $ref: '#/components/schemas/StackVersionConfig'
      description: The details for multiple Elastic Stack configurations.
    StackVersionIntegrationsServerConfig:
      type: object
      required:
      - blacklist
      - docker_image
      properties:
        version:
          type: string
          description: Version of Integrations Server
        docker_image:
          type: string
          description: Docker image for the Integrations Server
        blacklist:
          type: array
          description: List of configuration options that cannot be overridden by user settings
          items:
            type: string
        settings:
          type: object
          description: Settings that are applied to all nodes of this type
          properties: {}
        capacity_constraints:
          description: '> WARNING

            > This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.


            Capacity constraints for the node type'
          $ref: '#/components/schemas/StackVersionInstanceCapacityConstraint'
        compatible_node_types:
          type: array
          description: Node types that are compatible with this one
          items:
            type: string
      description: The Integrations Server configuration for an Elastic Stack version.
    CompatibleVersionResource:
      type: object
      required:
      - node_types
      - version
      properties:
        version:
          type: string
          description: Compatible version, the key for this resource
        node_types:
          type: array
          description: Supported node types for the version
          items:
            $ref: '#/components/schemas/CompatibleNodeTypesResource'
        capacity_constraints:
          description: '> WARNING

            > This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all versions. When specified its value will be ignored.


            Capacity constraints for the version'
          $ref: '#/components/schemas/CapacityConstraintsResource'
      description: Information about the compatible version.
    CompatibleNodeTypesResource:
      type: object
      required:
      - compatible_node_types
      - node_type
      properties:
        node_type:
          type: string
          description: Type of this node
        compatible_node_types:
          type: array
          description: Compatible node types for the this node type
          items:
            type: string
        capacity_constraints:
          description: '> WARNING

            > This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.


            Capacity constraints for the node type'
          $ref: '#/components/schemas/CapacityConstraintsResource'
      description: Information about the compatible node types.
    BasicFailedReplyElement:
      type: object
      required:
      - code
      - message
      properties:
        code:
          type: string
          description: A structured code representing the error type that occurred
        message:
          type: string
          description: A human readable message describing the error that occurred
        fields:
          type: array
          description: If the error can be tied to a specific field or fields in the user request, this lists those fields
          items:
            type: string
    StackVersionArchiveProcessingResult:
      type: object
      required:
      - errors
      - stacks
      properties:
        stacks:
          type: array
          items:
            $ref: '#/components/schemas/StackVersionConfig'
        errors:
          type: array
          description: 'Errors occurred while processing the Elastic Stack pack. Key: stack version, Value: List of errors'
          items:
            $ref: '#/components/schemas/StackVersionArchiveProcessingError'
      description: The result from processing an archive of an Elastic Stack version.
    StackVersionApmConfig:
      type: object
      required:
      - blacklist
      - docker_image
      properties:
        version:
          type: string
          description: Version of APM
        docker_image:
          type: string
          description: Docker image for the APM
        blacklist:
          type: array
          description: List of configuration options that cannot be overridden by user settings
          items:
            type: string
        settings:
          type: object
          description: Settings that are applied to all nodes of this type
          properties: {}
        capacity_constraints:
          description: '> WARNING

            > This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.


            Capacity constraints for the node type'
          $ref: '#/components/schemas/StackVersionInstanceCapacityConstraint'
        compatible_node_types:
          type: array
          description: Node types that are compatible with this one
          items:
            type: string
      description: The APM Server configuration for an Elastic Stack version.
    StackVersionKibanaConfig:
      type: object
      required:
      - blacklist
      - docker_image
      properties:
        version:
          type: string
          description: Version of Kibana
        docker_image:
          type: string
          description: Docker image for the kibana
        blacklist:
          type: array
          description: List of configuration options that cannot be overridden by user settings
          items:
            type: string
        settings:
          type: object
          description: Settings that are applied to all nodes of this type
          properties: {}
        capacity_constraints:
          description: '> WARNING

            > This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.


            Capacity constraints for the node type'
          $ref: '#/components/schemas/StackVersionInstanceCapacityConstraint'
        compatible_node_types:
          type: array
          description: Node types that are compatible with this one
          items:
            type: string
      description: The Kibana configuration for an Elastic Stack version.
    StackVersionInstanceCapacityConstraint:
      type: object
      required:
      - max
      - min
      properties:
        min:
          type: integer
          format: int32
          description: Min capacity of the instances
        max:
          type: integer
          format: int32
          description: Max capacity of the instances
      description: The Elasticsearch instance, Kibana instance, APM Server capacity constraints for an Elastic Stack node type.
    NodeTypeResource:
      type: object
      required:
      - description
      - name
      - node_type
      properties:
        node_type:
          type: string
          description: Node type, part of the key for this resource
        name:
          type: string
          description: Node type name
        description:
          type: string
          description: Node type description
        default_instance_configuration_id:
          type: string
          description: Id of the default instance configuration to use for this node type.
        mandatory:
          type: boolean
          description: Flag to specify a node type is mandatory in the corresponding cluster's plan
      description: Information about the node type.
    StackVersionArchiveProcessingError:
      type: object
      required:
      - errors
      - stack_version
      properties:
        stack_version:
          type: string
          description: Version of the stack (ie directory name in archive root)
        errors:
          $ref: '#/components/schemas/BasicFailedReply'
      description: Information about the errors that occurred from processing an Elastic Stack version.
    StackVersionConfig:
      type: object
      required:
      - elasticsearch
      - kibana
      - template
      - upgradable_to
      properties:
        version:
          type: string
          description: Stack version
          readOnly: true
        template:
          $ref: '#/components/schemas/StackVersionTemplateInfo'
        elasticsearch:
          $ref: '#/components/schemas/StackVersionElasticsearchConfig'
        kibana:
          $ref: '#/components/schemas/StackVersionKibanaConfig'
        apm:
          $ref: '#/components/schemas/StackVersionApmConfig'
        appsearch:
          $ref: '#/components/schemas/StackVersionAppSearchConfig'
        enterprise_search:
          $ref: '#/components/schemas/StackVersionEnterpriseSearchConfig'
        metadata:
          $ref: '#/components/schemas/StackVersionMetadata'
        deleted:
          type: boolean
          description: Identifies that the Elastic Stack version is marked for deletion
          readOnly: true
        upgradable_to:
          type: array
          description: Stack Versions that this version can upgrade to
          items:
            type: string
        min_upgradable_from:
          type: string
          example: 6.7.0
          description: The minimum version recommended to upgrade this version.
        whitelisted:
          type: boolean
          description: Whether or not this version is whitelisted. This is only relevant in EC (SaaS) and is not sent in ECE.
        accessible:
          type: boolean
          description: Whether or not this version is accessible by the calling user. This is only relevant in EC (SaaS) and is not sent in ECE.
        rolling_upgrade_compatible_versions:
          type: array
          description: List of versions that can be upgraded to the current version of the stackpack
          items:
            type: string
      description: The details for an Elastic Stack configuration.
    EmptyResponse:
      type: object
    CapacityConstraintsResource:
      type: object
      required:
      - max
      - min
      properties:
        min:
          type: integer
          format: int64
          description: Min capacity
        max:
          type: integer
          format: int64
          description: Max capacity
      description: Specifies the maximum and minimum capacity constraints.
    StackVersionConfigPost:
      type: object
      required:
      - elasticsearch
      - kibana
      properties:
        elasticsearch:
          $ref: '#/components/schemas/StackVersionElasticsearchConfig'
        kibana:
          $ref: '#/components/schemas/StackVersionKibanaConfig'
        apm:
          $ref: '#/components/schemas/StackVersionApmConfig'
        integrations_server:
          $ref: '#/components/schemas/StackVersionIntegrationsServerConfig'
        appsearch:
          $ref: '#/components/schemas/StackVersionAppSearchConfig'
        enterprise_search:
          $ref: '#/components/schemas/StackVersionEnterpriseSearchConfig'
        metadata:
          $ref: '#/components/schemas/StackVersionMetadata'
        rolling_upgrade_compatible_versions:
          type: array
          description: List of versions that can be upgraded to the current version of the stackpack
          items:
            type: string
      description: The configuration for an Elastic Stack version.
    StackVersionElasticsearchConfig:
      type: object
      required:
      - blacklist
      - default_plugins
      - docker_image
      - plugins
      properties:
        docker_image:
          type: string
          description: Docker image for the Elasticsearch
        plugins:
          type: array
          description: List of available plugins
          items:
            type: string
        default_plugins:
          type: array
          description: List of default plugins
          items:
            type: string
        blacklist:
          type: array
          description: List of configuration options that cannot be overridden by user settings
          items:
            type: string
        node_types:
          type: array
          description: Node types that are supported by this stack version
          items:
            $ref: '#/components/schemas/StackVersionNodeType'
        settings:
          type: object
          description: Settings that are applied to all nodes of this type
          properties: {}
        capacity_constraints:
          description: '> WARNING

            > This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.


            Capacity constraints for the node type'
          $ref: '#/components/schemas/StackVersionInstanceCapacityConstraint'
        compatible_node_types:
          type: array
          description: Node types that are compatible with this one
          items:
            type: string
      description: 'The Elasticsearch configuration for an Elastic Stack version. '
    BasicFailedReply:
      type: object
      required:
      - errors
      properties:
        errors:
          type: array
          description: A list of errors that occurred in the failing request
          items:
            $ref: '#/components/schemas/BasicFailedReplyElement'
    StackVersionEnterpriseSearchConfig:
      type: object
      required:
      - blacklist
      - docker_image
      properties:
        version:
          type: string
          description: Version of EnterpriseSearch
        docker_image:
          type: string
          description: Docker image for the EnterpriseSearch
        blacklist:
          type: array
          description: List of configuration options that cannot be overridden by user settings
          items:
            type: string
        settings:
          type: object
          description: Settings that are applied to all nodes of this type
          properties: {}
        capacity_constraints:
          description: '> WARNING

            > This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.


            Capacity constraints for the node type'
          $ref: '#/components/schemas/StackVersionInstanceCapacityConstraint'
        compatible_node_types:
          type: array
          description: Node types that are compatible with this one
          items:
            type: string
        node_types:
          type: array
          description: Node types that are supported by this stack version
          items:
            $ref: '#/components/schemas/StackVersionNodeType'
      description: EnterpriseSearch related configuration of an Elastic Stack version
  securitySchemes:
    apiKey:
      type: apiKey
      name: Authorization
      in: header
    basicAuth:
      type: http
      scheme: basic
x-elastic:
  curl:
    auth: '-H "Authorization: ApiKey $ECE_API_KEY"'