Create instance configuration

POST /platform/configuration/instances

Create instance configuration and return the auto-generated ID.

application/json

Body Required

the Instance Configuration

  • id string

    Unique identifier for the instance configuration

  • name string Required

    Display name for the instance configuration.

  • config_version integer(int32)

    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.

  • Optional description for the instance configuration

  • 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.

    Values are elasticsearch, kibana, apm, integrations_server, appsearch, or enterprise_search.

  • node_types array[string]

    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.

  • discrete_sizes object Required

    Numerics representing possible instance sizes that the instance configuration supports.

    Hide discrete_sizes attributes Show discrete_sizes attributes object
    • sizes array[integer(int32)] Required

      List of supported sizes

    • default_size integer(int32)

      The default size

    • resource string

      The unit that each size represents. If not specified, it will default to 'memory'.

      Values are memory or storage.

  • The container for all of the allowed Elasticsearch queries. Specify only one property each time.

    Hide allocator_filter attributes Show allocator_filter attributes object
    • match object
      Hide match attribute Show match attribute object
      • * object Additional properties

        Consumes and analyzes text, numbers, and dates, then constructs a query.

        Hide * attributes Show * attributes object
        • query string Required

          The text/numeric/date to query for.

        • operator string

          The operator flag can be set to or or and to control the boolean clauses (defaults to or).

        • minimum_should_match integer(int32)

          The minimum number of optional should clauses to match.

        • analyzer string

          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.

    • A query that matches all documents.

    • A query that doesn't match any documents.

    • term object
      Hide term attribute Show term attribute object
      • * object Additional properties

        A query for documents that contain the specified term in the inverted index.

        Hide * attribute Show * attribute object
        • value string Required

          The exact value to query for.

    • bool object

      A query for documents that match boolean combinations of other queries.

      Hide bool attributes Show bool attributes object
      • must array[object]

        The container for all of the allowed Elasticsearch queries. Specify only one property each time.

        The container for all of the allowed Elasticsearch queries. Specify only one property each time.

      • should array[object]

        The container for all of the allowed Elasticsearch queries. Specify only one property each time.

        The container for all of the allowed Elasticsearch queries. Specify only one property each time.

      • must_not array[object]

        The container for all of the allowed Elasticsearch queries. Specify only one property each time.

        The container for all of the allowed Elasticsearch queries. Specify only one property each time.

      • filter array[object]

        The container for all of the allowed Elasticsearch queries. Specify only one property each time.

        The container for all of the allowed Elasticsearch queries. Specify only one property each time.

      • minimum_should_match integer(int32)

        The minimum number of optional should clauses to match.

    • A query that uses the strict query string syntax for parsing. Will return an error for invalid syntax.

      Hide query_string attributes Show query_string attributes object
      • query string Required

        The actual query to be parsed.

      • The default field for query terms if no prefix field is specified.

      • analyzer string

        The analyzer used to analyze each term of the query when creating composite queries.

      • The default operator used if no explicit operator is specified.

      • When set, * or ? are allowed as the first character. Defaults to false.

    • nested object

      A query that matches nested objects.

      Hide nested attributes Show nested attributes object
      • query object Required

        The container for all of the allowed Elasticsearch queries. Specify only one property each time.

      • path string Required

        The path to the nested object.

      • Allows to specify how inner children matching affects score of the parent. Refer to the Elasticsearch documentation for details.

        Values are avg, sum, min, max, or none.

    • prefix object
      Hide prefix attribute Show prefix attribute object
      • * object Additional properties

        The query that matches documents with fields that contain terms with a specified, not analyzed, prefix.

        Hide * attributes Show * attributes object
        • value string Required

          The prefix to search for.

        • boost number(float)

          An optional boost value to apply to the query.

    • exists object

      Matches documents that have at least one non-null value in the original field.

      Hide exists attribute Show exists attribute object
      • field string Required

        The field to check for non-null values in.

    • range object
      Hide range attribute Show range attribute object
      • * object Additional properties

        The query that matches documents with fields that contain terms within a specified range.

        Hide * attributes Show * attributes object
        • gt object

          Greater-than

        • gte object

          Greater-than or equal to

        • lt object

          Less-than

        • lte object

          Less-than or equal to.

        • boost number(float)

          An optional boost value to apply to the query.

        • format string

          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.

        • 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.

    • A query that uses simple query string syntax. Will ignore invalid syntax.

      Hide simple_query_string attributes Show simple_query_string attributes object
      • query string Required

        The query expressed in simple query string syntax.

      • fields array[string]

        Array of fields to search

      • The boolean operator used to combine the terms of the query. Valid values are OR (default) and AND.

      • If true, the query attempts to analyze wildcard terms. Defaults to false.

      • analyzer string

        The name of the analyzer to use to convert the query text into tokens.

      • If true, the parse creates a match_phrase uery for each multi-position token. Defaults to true.

      • flags string

        List of enabled operators for the simple query string syntax. Defaults to ALL.

      • fuzzy_max_expansions integer(int32)

        Maximum number of terms to which the query expands for fuzzy matching. Defaults to 50.

      • fuzzy_prefix_length integer(int32)

        Number of beginning characters left unchanged for fuzzy matching. Defaults to 0.

      • If true, edits for fuzzy matching include transpositions of two adjacent characters. Defaults to false.

      • lenient boolean

        If true, format-based errors, such as providing a text value for a numeric field are ignored. Defaults to false.

      • Minimum number of clauses that must match for a document to be returned.

      • Suffix appended to quoted text in the query string.

  • storage_multiplier number(double)

    Settings for the instance storage multiplier

  • deleted_on string(date-time)

    Date/time that this instance configuration was marked for deletion

  • Indicates if a instance configuration is system owned (restricts the set of operations that can be performed on it)

  • metadata object

    Optional arbitrary metadata to associate with this template.

  • cpu_multiplier number(double)

    Settings for the instance CPU multiplier

  • allowed_zones array[string]

    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.

Responses

  • 201 application/json

    Instance Configuration added with the auto generated ID returned

    Hide response attributes Show response attributes object
    • id string Required

      The ID

    • The version, if the entity is configuration controlled

    • Returns true if the update resulted in a new version of the configuration controlled entity

  • 400 application/json

    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')

    Hide response attribute Show response attribute object
    • errors array[object] Required

      A list of errors that occurred in the failing request

      Hide errors attributes Show errors attributes object
      • code string Required

        A structured code representing the error type that occurred

      • message string Required

        A human readable message describing the error that occurred

      • fields array[string]

        If the error can be tied to a specific field or fields in the user request, this lists those fields

  • 403 application/json

    system_owned or deleted_on cannot be set externally (code: 'configuration.system_owned')

    Hide response attribute Show response attribute object
    • errors array[object] Required

      A list of errors that occurred in the failing request

      Hide errors attributes Show errors attributes object
      • code string Required

        A structured code representing the error type that occurred

      • message string Required

        A human readable message describing the error that occurred

      • fields array[string]

        If the error can be tied to a specific field or fields in the user request, this lists those fields

POST /platform/configuration/instances
curl \
 --request POST 'https://{{hostname}}/api/v1/platform/configuration/instances' \
 --user "username:password" \
 --header "Content-Type: application/json" \
 --data '{"id":"string","name":"string","config_version":42,"description":"string","instance_type":"elasticsearch","node_types":["string"],"discrete_sizes":{"sizes":[42],"default_size":42,"resource":"memory"},"allocator_filter":{"match":{"additionalProperty1":{"query":"string","operator":"string","minimum_should_match":42,"analyzer":"string"},"additionalProperty2":{"query":"string","operator":"string","minimum_should_match":42,"analyzer":"string"}},"match_all":{},"match_none":{},"term":{"additionalProperty1":{"value":"string"},"additionalProperty2":{"value":"string"}},"bool":{"must":[{}],"should":[{}],"must_not":[{}],"filter":[{}],"minimum_should_match":42},"query_string":{"query":"string","default_field":"string","analyzer":"string","default_operator":"string","allow_leading_wildcard":true},"nested":{"query":{},"path":"string","score_mode":"avg"},"prefix":{"additionalProperty1":{"value":"string","boost":42.0},"additionalProperty2":{"value":"string","boost":42.0}},"exists":{"field":"string"},"range":{"additionalProperty1":{"gt":{},"gte":{},"lt":{},"lte":{},"boost":42.0,"format":"string","time_zone":"string"},"additionalProperty2":{"gt":{},"gte":{},"lt":{},"lte":{},"boost":42.0,"format":"string","time_zone":"string"}},"simple_query_string":{"query":"string","fields":["string"],"default_operator":"string","analyze_wildcard":true,"analyzer":"string","auto_generate_synonyms_phrase_query":true,"flags":"string","fuzzy_max_expansions":42,"fuzzy_prefix_length":42,"fuzzy_transpositions":true,"lenient":true,"minimum_should_match":"string","quote_field_suffix":"string"}},"storage_multiplier":42.0,"deleted_on":"2025-05-04T09:42:00Z","system_owned":true,"metadata":{},"cpu_multiplier":42.0,"allowed_zones":["string"]}'
Request examples
{
  "id": "string",
  "name": "string",
  "config_version": 42,
  "description": "string",
  "instance_type": "elasticsearch",
  "node_types": [
    "string"
  ],
  "discrete_sizes": {
    "sizes": [
      42
    ],
    "default_size": 42,
    "resource": "memory"
  },
  "allocator_filter": {
    "match": {
      "additionalProperty1": {
        "query": "string",
        "operator": "string",
        "minimum_should_match": 42,
        "analyzer": "string"
      },
      "additionalProperty2": {
        "query": "string",
        "operator": "string",
        "minimum_should_match": 42,
        "analyzer": "string"
      }
    },
    "match_all": {},
    "match_none": {},
    "term": {
      "additionalProperty1": {
        "value": "string"
      },
      "additionalProperty2": {
        "value": "string"
      }
    },
    "bool": {
      "must": [
        {}
      ],
      "should": [
        {}
      ],
      "must_not": [
        {}
      ],
      "filter": [
        {}
      ],
      "minimum_should_match": 42
    },
    "query_string": {
      "query": "string",
      "default_field": "string",
      "analyzer": "string",
      "default_operator": "string",
      "allow_leading_wildcard": true
    },
    "nested": {
      "query": {},
      "path": "string",
      "score_mode": "avg"
    },
    "prefix": {
      "additionalProperty1": {
        "value": "string",
        "boost": 42.0
      },
      "additionalProperty2": {
        "value": "string",
        "boost": 42.0
      }
    },
    "exists": {
      "field": "string"
    },
    "range": {
      "additionalProperty1": {
        "gt": {},
        "gte": {},
        "lt": {},
        "lte": {},
        "boost": 42.0,
        "format": "string",
        "time_zone": "string"
      },
      "additionalProperty2": {
        "gt": {},
        "gte": {},
        "lt": {},
        "lte": {},
        "boost": 42.0,
        "format": "string",
        "time_zone": "string"
      }
    },
    "simple_query_string": {
      "query": "string",
      "fields": [
        "string"
      ],
      "default_operator": "string",
      "analyze_wildcard": true,
      "analyzer": "string",
      "auto_generate_synonyms_phrase_query": true,
      "flags": "string",
      "fuzzy_max_expansions": 42,
      "fuzzy_prefix_length": 42,
      "fuzzy_transpositions": true,
      "lenient": true,
      "minimum_should_match": "string",
      "quote_field_suffix": "string"
    }
  },
  "storage_multiplier": 42.0,
  "deleted_on": "2025-05-04T09:42:00Z",
  "system_owned": true,
  "metadata": {},
  "cpu_multiplier": 42.0,
  "allowed_zones": [
    "string"
  ]
}
Response examples (201)
{
  "id": "string",
  "config_version": {},
  "config_version_updated": {}
}
Response examples (400)
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (403)
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}