Elastic Stack (ELK Stack) Platform Configuration Instances API

The PlatformConfigurationInstances API from Elastic Stack (ELK Stack) — 2 operation(s) for platformconfigurationinstances.

Operations 5

GET /platform/configuration/instances Get instance configurations #
POST /platform/configuration/instances Create instance configuration #
GET /platform/configuration/instances/{id} Get instance configuration #
PUT /platform/configuration/instances/{id} Set instance configuration #
DELETE /platform/configuration/instances/{id} Delete a instance configuration #

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-platformconfigurationinstances-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-platformconfigurationinstances-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: '1'
  title: Elastic Cloud Enterprise Platform Configuration Instances API
  termsOfService: ''
servers:
- url: https://{{hostname}}/api/v1
security:
- basicAuth: []
- apiKey: []
tags:
- name: PlatformConfigurationInstances
paths:
  /platform/configuration/instances:
    get:
      tags:
      - PlatformConfigurationInstances
      summary: Get instance configurations
      description: Get instance configurations.
      operationId: get-instance-configurations
      parameters:
      - name: show_deleted
        in: query
        description: If true, instance configurations marked for deletions are also returned. Otherwise, only instance configurations not marked for deletion are returned
        required: false
        schema:
          type: boolean
      - name: show_max_zones
        in: query
        description: If true, will populate the max_zones field of the instance configurations.
        required: false
        schema:
          type: boolean
          default: false
      - name: include_versions
        in: query
        description: If true, will return all existing versions of each instance configuration.
        required: false
        schema:
          type: boolean
          default: false
      responses:
        '200':
          description: A InstanceConfiguration
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/InstanceConfiguration'
      x-doc:
        tag: Platform - Configuration - Instances - CRUD
    post:
      tags:
      - PlatformConfigurationInstances
      summary: Create instance configuration
      description: Create instance configuration and return the auto-generated ID.
      operationId: create-instance-configuration
      responses:
        '201':
          description: Instance Configuration added with the auto generated ID returned
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VersionedIdResponse'
        '400':
          description: 'cluster_type in the InstanceConfiguration model is invalid (code: ''configuration.invalid_cluster_type'') or the discrete_sizes in the InstanceConfiguration model is invalid (code: ''configuration.invalid_discrete_sizes'') or the metadata in the InstanceConfiguration model has empty keys or values (code: ''configuration.bad_meta_data'') '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BasicFailedReply'
        '403':
          description: 'system_owned or deleted_on cannot be set externally (code: ''configuration.system_owned'') '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BasicFailedReply'
      x-doc:
        tag: Platform - Configuration - Instances - CRUD
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InstanceConfiguration'
        description: the Instance Configuration
        required: true
  /platform/configuration/instances/{id}:
    get:
      tags:
      - PlatformConfigurationInstances
      summary: Get instance configuration
      description: Get instance configuration by id.
      operationId: get-instance-configuration
      parameters:
      - name: id
        in: path
        description: ID of the instance configuration
        required: true
        schema:
          type: string
      - name: config_version
        in: query
        description: Optionally retrieve the specified config version of the IC (otherwise retrieves the latest/only version)
        required: false
        schema:
          type: integer
      - name: show_deleted
        in: query
        description: If true, if the instance configuration has been marked for deletion it is still returned. Otherwise, instance configurations marked for deletion generate a 404
        required: false
        schema:
          type: boolean
      - name: show_max_zones
        in: query
        description: If true, will populate the max_zones field of the instance configuration.
        required: false
        schema:
          type: boolean
          default: false
      responses:
        '200':
          description: An InstanceConfiguration
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InstanceConfiguration'
        '404':
          description: 'Instance configuration specified by {id} cannot be found (code: ''configuration.instance_configuration_not_found'')'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BasicFailedReply'
      x-doc:
        tag: Platform - Configuration - Instances - CRUD
    put:
      tags:
      - PlatformConfigurationInstances
      summary: Set instance configuration
      description: Creates or updates an instance configuration.
      operationId: set-instance-configuration
      parameters:
      - name: id
        in: path
        description: ID of the instance configuration
        required: true
        schema:
          type: string
      - name: version
        in: query
        description: This is a database-level field, not related to the application-level 'config_version', except as described in the following docs. If specified, checks for conflicts against 'x-cloud-resource-version' from the GET request (where the 'config_version' in the GET should match the the 'configuration_version' in the PUT body if the IC is configuration controlled).
        required: false
        schema:
          type: integer
      - name: config_control
        in: query
        description: If true, then an update that changes immutable fields will create a new version of the IC (leaving the previous ones accessible via 'config_version'). Otherwise such updates will fail.
        required: false
        schema:
          type: boolean
      - name: test_config
        in: query
        description: 'If true, The IC is added as a test version (set ''instance_config_version'': -1 in the deployment request to reference), leaving the existing IC alone. Will error if the IC doesn''t already exist.'
        required: false
        schema:
          type: boolean
      - name: strict_mode
        in: query
        description: If true, then allocator_filter and storage_multiplier cannot be changed in an existing IC. Defaults to false unless config_control is true (in which case a new version is created)
        required: false
        schema:
          type: boolean
      - name: create_only
        in: query
        description: If true, will fail if an instance configuration already exists at the given id
        required: false
        schema:
          type: boolean
      responses:
        '200':
          description: The instance configuration was updated successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VersionedIdResponse'
        '201':
          description: The instance configuration was created successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VersionedIdResponse'
        '400':
          description: 'cluster_type in the InstanceConfiguration model is invalid (code: ''configuration.invalid_cluster_type'') or the ZooKeeper operation failed due to bad version, etc. (code: ''configuration.instance_configuration_update_failed'') or the id in the InstanceConfiguration model is reserved/prohibited (code: ''configuration.configuration_id_reserved'') or the discrete_sizes in the InstanceConfiguration model is invalid (code: ''configuration.invalid_discrete_sizes'') or the metadata in the InstanceConfiguration model has empty keys or values (code: ''configuration.bad_meta_data'') '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BasicFailedReply'
        '403':
          description: 'system_owned or deleted_on cannot be set externally (code: ''configuration.system_owned'') '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BasicFailedReply'
        '404':
          description: 'Instance configuration specified by {id} cannot be found or the operation failed (code: ''configuration.instance_configuration_not_found'')'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BasicFailedReply'
      x-doc:
        tag: Platform - Configuration - Instances - CRUD
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InstanceConfiguration'
        description: the Instance Configuration
        required: true
    delete:
      tags:
      - PlatformConfigurationInstances
      summary: Delete a instance configuration
      description: Delete the instance configuration with the given id.
      operationId: delete-instance-configuration
      parameters:
      - name: id
        in: path
        description: ID of the instance configuration
        required: true
        schema:
          type: string
      - name: version
        in: query
        description: This is a database-level field, not related to the application-level 'config_version', except as described in the following docs. If specified, checks for conflicts against 'x-cloud-resource-version' from the GET request (the GET's 'config_version' should be left blank if the IC is configuration controlled, ie to get the latest configuration)
        required: false
        schema:
          type: integer
      - name: only_test_version
        in: query
        description: If true, the testing version (version -1) will be permanently deleted but the latest IC version will remain untouched. Defaults to false
        required: false
        schema:
          type: boolean
      responses:
        '200':
          description: Instance configuration specified by {id} was deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmptyResponse'
        '403':
          description: 'Instance configuration specified by {id} is system owned (code: ''configuration.system_owned'')'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BasicFailedReply'
        '404':
          description: 'Instance configuration specified by {id} cannot be found or the operation failed (code: ''configuration.instance_configuration_not_found'')'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BasicFailedReply'
      x-doc:
        tag: Platform - Configuration - Instances - CRUD
components:
  schemas:
    QueryContainer:
      type: object
      properties:
        match:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/MatchQuery'
        match_all:
          $ref: '#/components/schemas/MatchAllQuery'
        match_none:
          $ref: '#/components/schemas/MatchNoneQuery'
        term:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/TermQuery'
        bool:
          $ref: '#/components/schemas/BoolQuery'
        query_string:
          $ref: '#/components/schemas/QueryStringQuery'
        nested:
          $ref: '#/components/schemas/NestedQuery'
        prefix:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/PrefixQuery'
        exists:
          $ref: '#/components/schemas/ExistsQuery'
        range:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/RangeQuery'
        simple_query_string:
          $ref: '#/components/schemas/SimpleQueryStringQuery'
      description: The container for all of the allowed Elasticsearch queries. Specify only one property each time.
    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
    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'
    SimpleQueryStringQuery:
      type: object
      required:
      - query
      properties:
        query:
          type: string
          description: The query expressed in simple query string syntax.
        fields:
          type: array
          description: Array of fields to search
          items:
            type: string
        default_operator:
          type: string
          description: The boolean operator used to combine the terms of the query. Valid values are `OR` (default) and `AND`.
        analyze_wildcard:
          type: boolean
          description: If `true`, the query attempts to analyze wildcard terms. Defaults to `false`.
        analyzer:
          type: string
          description: The name of the analyzer to use to convert the query text into tokens.
        auto_generate_synonyms_phrase_query:
          type: boolean
          description: If `true`, the parse creates a `match_phrase` uery for each multi-position token. Defaults to `true`.
        flags:
          type: string
          description: List of enabled operators for the simple query string syntax. Defaults to `ALL`.
        fuzzy_max_expansions:
          type: integer
          format: int32
          description: Maximum number of terms to which the query expands for fuzzy matching. Defaults to 50.
        fuzzy_prefix_length:
          type: integer
          format: int32
          description: Number of beginning characters left unchanged for fuzzy matching. Defaults to 0.
        fuzzy_transpositions:
          type: boolean
          description: If `true`, edits for fuzzy matching include transpositions of two adjacent characters. Defaults to `false`.
        lenient:
          type: boolean
          description: If `true`, format-based errors, such as providing a text value for a numeric field are ignored. Defaults to `false`.
        minimum_should_match:
          type: string
          description: Minimum number of clauses that must match for a document to be returned.
        quote_field_suffix:
          type: string
          description: Suffix appended to quoted text in the query string.
      description: A query that uses simple query string syntax. Will ignore invalid syntax.
    MatchAllQuery:
      type: object
      description: A query that matches all documents.
    MatchQuery:
      type: object
      required:
      - query
      properties:
        query:
          type: string
          description: The text/numeric/date to query for.
        operator:
          type: string
          description: The operator flag can be set to or or and to control the boolean clauses (defaults to or).
        minimum_should_match:
          type: integer
          format: int32
          description: The minimum number of optional should clauses to match.
        analyzer:
          type: string
          description: The analyzer that will be used to perform the analysis process on the text. Defaults to the analyzer that was used to index the field.
      description: Consumes and analyzes text, numbers, and dates, then constructs a query.
    QueryStringQuery:
      type: object
      required:
      - query
      properties:
        query:
          type: string
          description: The actual query to be parsed.
        default_field:
          type: string
          description: The default field for query terms if no prefix field is specified.
        analyzer:
          type: string
          description: The analyzer used to analyze each term of the query when creating composite queries.
        default_operator:
          type: string
          description: The default operator used if no explicit operator is specified.
        allow_leading_wildcard:
          type: boolean
          description: When set, * or ? are allowed as the first character. Defaults to false.
      description: A query that uses the strict query string syntax for parsing. Will return an error for invalid syntax.
    EmptyResponse:
      type: object
    ExistsQuery:
      type: object
      required:
      - field
      properties:
        field:
          type: string
          description: The field to check for non-null values in.
      description: Matches documents that have at least one non-`null` value in the original field.
    MatchNoneQuery:
      type: object
      description: A query that doesn't match any documents.
    PrefixQuery:
      type: object
      required:
      - value
      properties:
        value:
          type: string
          description: The prefix to search for.
        boost:
          type: number
          format: float
          description: An optional boost value to apply to the query.
      description: The query that matches documents with fields that contain terms with a specified, not analyzed, prefix.
    InstanceConfiguration:
      type: object
      required:
      - discrete_sizes
      - name
      properties:
        id:
          type: string
          description: Unique identifier for the instance configuration
        name:
          type: string
          description: Display name for the instance configuration.
        config_version:
          type: integer
          format: int32
          description: If the IC is configuration controlled, this field is the version either being read back (reads return the latest IC unless specified by the 'config_version' URL param), or the version to update. Cannot be used in creates. For unversioned IC reads it is left empty.
        description:
          type: string
          description: Optional description for the instance configuration
        instance_type:
          type: string
          description: The type of instance. For instance configurations where the type is specified in the 'id', the default value of 'instance_type' will be automatically inferred.
          enum:
          - elasticsearch
          - kibana
          - apm
          - integrations_server
          - appsearch
          - enterprise_search
        node_types:
          type: array
          description: Node types (master, data) for the instance. For instance configurations where the type (and tier) is specified in the 'id', the default value of 'node_types' will be automatically inferred.
          items:
            type: string
        discrete_sizes:
          description: Numerics representing possible instance sizes that the instance configuration supports.
          $ref: '#/components/schemas/DiscreteSizes'
        allocator_filter:
          description: Optional filter to match allocators against
          $ref: '#/components/schemas/QueryContainer'
        storage_multiplier:
          type: number
          format: double
          description: Settings for the instance storage multiplier
        deleted_on:
          type: string
          format: date-time
          description: Date/time that this instance configuration was marked for deletion
        system_owned:
          type: boolean
          description: Indicates if a instance configuration is system owned (restricts the set of operations that can be performed on it)
        metadata:
          type: object
          description: Optional arbitrary metadata to associate with this template.
          properties: {}
        cpu_multiplier:
          type: number
          format: double
          description: Settings for the instance CPU multiplier
        allowed_zones:
          type: array
          description: The zones this instance configuration may exist in. Leaving out this parameter or specifying an empty list implies all zones are allowed. Normally not needed, but can be useful for exceptional infrastructure constraints.
          items:
            type: string
        max_zones:
          type: integer
          format: int32
          description: The maximum number of availability zones in which this instance configuration has allocators. This field will be missing unless explicitly requested with the show_max_zones parameter.
          readOnly: true
      description: The configuration template for Elasticsearch instances, Kibana instances, and APM Servers.
    DiscreteSizes:
      type: object
      required:
      - sizes
      properties:
        sizes:
          type: array
          description: List of supported sizes
          items:
            type: integer
            format: int32
        default_size:
          type: integer
          format: int32
          description: The default size
        resource:
          type: string
          description: The unit that each size represents. If not specified, it will default to 'memory'.
          enum:
          - memory
          - storage
      description: Instance sizes that are supported by the Elasticsearch instance, Kibana instance, or APM Server configuration.
    NestedQuery:
      type: object
      required:
      - path
      - query
      properties:
        query:
          description: The actual query to execute on the nested objects.
          $ref: '#/components/schemas/QueryContainer'
        path:
          type: string
          description: The path to the nested object.
        score_mode:
          type: string
          description: Allows to specify how inner children matching affects score of the parent. Refer to the Elasticsearch documentation for details.
          enum:
          - avg
          - sum
          - min
          - max
          - none
      description: A query that matches nested objects.
    BoolQuery:
      type: object
      properties:
        must:
          type: array
          items:
            $ref: '#/components/schemas/QueryContainer'
        should:
          type: array
          items:
            $ref: '#/components/schemas/QueryContainer'
        must_not:
          type: array
          items:
            $ref: '#/components/schemas/QueryContainer'
        filter:
          type: array
          items:
            $ref: '#/components/schemas/QueryContainer'
        minimum_should_match:
          type: integer
          format: int32
          description: The minimum number of optional should clauses to match.
      description: A query for documents that match boolean combinations of other queries.
    VersionedIdResponse:
      type: object
      required:
      - id
      properties:
        id:
          type: string
          description: The ID
        config_version:
          type: object
          description: The version, if the entity is configuration controlled
          properties: {}
        config_version_updated:
          type: object
          description: Returns true if the update resulted in a new version of the configuration controlled entity
          properties: {}
    TermQuery:
      type: object
      required:
      - value
      properties:
        value:
          type: string
          description: The exact value to query for.
      description: A query for documents that contain the specified term in the inverted index.
    RangeQuery:
      type: object
      properties:
        gt:
          type: object
          description: Greater-than
          properties: {}
        gte:
          type: object
          description: Greater-than or equal to
          properties: {}
        lt:
          type: object
          description: Less-than
          properties: {}
        lte:
          type: object
          description: Less-than or equal to.
          properties: {}
        boost:
          type: number
          format: float
          description: An optional boost value to apply to the query.
        format:
          type: string
          description: Formatted dates will be parsed using the format specified on the date field by default, but it can be overridden by passing the format parameter.
        time_zone:
          type: string
          description: Dates can be converted from another timezone to UTC either by specifying the time zone in the date value itself (if the format accepts it), or it can be specified as the time_zone parameter.
      description: The query that matches documents with fields that contain terms within a specified range.
  securitySchemes:
    apiKey:
      type: apiKey
      name: Authorization
      in: header
    basicAuth:
      type: http
      scheme: basic
x-elastic:
  curl:
    auth: '-H "Authorization: ApiKey $ECE_API_KEY"'