Get eligible remote clusters

POST /deployments/eligible-remote-clusters

Returns the list of deployments which contain eligible remote clusters for a specific version.

Query parameters

  • version string Required

    The version of the Elasticsearch cluster cluster that will potentially be configured to have remote clusters.

Body

(Optional) The search query to run against all deployments containing eligible remote clusters. When not specified, all the eligible deployments are matched.

  • from integer(int32)
  • size integer(int32)

    The maximum number of search results to return.

  • query object

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

    Additional properties are allowed.

    Hide query attributes Show query 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.

        Additional properties are allowed.

        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.

      Additional properties are allowed.

    • A query that doesn't match any documents.

      Additional properties are allowed.

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

        Additional properties are allowed.

        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.

      Additional properties are allowed.

      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.

        Additional properties are allowed.

      • should array[object]

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

        Additional properties are allowed.

      • must_not array[object]

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

        Additional properties are allowed.

      • filter array[object]

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

        Additional properties are allowed.

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

      Additional properties are allowed.

      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.

      Additional properties are allowed.

      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.

        Additional properties are allowed.

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

        Additional properties are allowed.

        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.

      Additional properties are allowed.

      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.

        Additional properties are allowed.

        Hide * attributes Show * attributes object
        • gt object

          Greater-than

          Additional properties are allowed.

        • gte object

          Greater-than or equal to

          Additional properties are allowed.

        • lt object

          Less-than

          Additional properties are allowed.

        • lte object

          Less-than or equal to.

          Additional properties are allowed.

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

      Additional properties are allowed.

      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.

  • sort array[object]

    An array of fields to sort the search results by.

    Additional properties are allowed.

  • _source object

    Additional properties are allowed.

Responses

  • List of deployments which contains eligible remote clusters for a specific version

    Hide response attributes Show response attributes object
    • return_count integer(int32) Required

      The number of deployments actually returned

    • match_count integer(int32)

      If a query is supplied, then the total number of deployments that matched

    • deployments array[object] Required
      Hide deployments attributes Show deployments attributes object
      • id string Required

        A randomly-generated id of this Deployment

      • name string Required

        The name of this deployment

      • alias string

        A user-defined deployment alias for user-friendly resource URLs

      • healthy boolean Required

        Whether the deployment is overall healthy or not (one or more of the resource info subsections will have healthy: false)

      • resources object Required

        The Resources that belong to this Deployment

        Additional properties are allowed.

        Hide resources attributes Show resources attributes object
        • elasticsearch array[object] Required

          List of Elasticsearch resources in your Deployment

          Hide elasticsearch attributes Show elasticsearch attributes object
          • ref_id string Required

            The locally-unique user-specified id of a Resource

          • id string Required

            The randomly-generated id of a Resource

          • region string Required

            The region where this resource exists

          • info object Required

            Info for the resource.

            Additional properties are allowed.

            Hide info attributes Show info attributes object
            • cluster_id string Required

              The id of the cluster

            • cluster_name string Required

              The name of the cluster

            • The id of the deployment that this Elasticsearch belongs to.

            • healthy boolean Required

              Whether the cluster is healthy or not (one or more of the info subsections will have healthy: false)

            • status string Required

              Cluster status

              Values are initializing, stopping, stopped, rebooting, restarting, reconfiguring, or started.

            • plan_info object Required

              Information about the current, pending, and past Elasticsearch cluster plans.

              Additional properties are allowed.

              Hide plan_info attributes Show plan_info attributes object
              • healthy boolean Required

                Whether the plan situation is healthy (if unhealthy, means the last plan attempt failed)

              • current object

                Information about the Elasticsearch cluster plan.

                Additional properties are allowed.

                Hide current attributes Show current attributes object
                • A UUID for each plan attempt

                • A human readable name for each plan attempt, only populated when retrieving plan histories

                • healthy boolean Required

                  Either the plan ended successfully, or is not yet completed (and no errors have occurred)

                • attempt_start_time string(date-time)

                  When this plan attempt (ie to apply the plan to the cluster) started (ISO format in UTC)

                • attempt_end_time string(date-time)

                  If this plan completed or failed (ie is not pending), when the attempt ended (ISO format in UTC)

                • plan_end_time string(date-time)

                  If this plan is not current or pending, when the plan was no longer active (ISO format in UTC)

                • plan object

                  The plan for building this Elasticsearch cluster

                  Additional properties are allowed.

                  Hide plan attributes Show plan attributes object
                  • cluster_topology array[object] Required
                    Hide cluster_topology attributes Show cluster_topology attributes object
                    • id string

                      Unique identifier of this topology element

                    • Controls the combinations of Elasticsearch node types. TIP: By default, the Elasticsearch node is master eligible, can hold data, and run ingest pipelines. WARNING: Do not set for tiebreaker topologies.

                      Additional properties are allowed.

                      Hide node_type attributes Show node_type attributes object
                      • master boolean

                        Defines whether this node can be elected master (default: false)

                      • data boolean

                        Defines whether this node can hold data (default: false)

                      • ingest boolean

                        Defines whether this node can run an ingest pipeline (default: false)

                      • ml boolean

                        Defines whether this node can run ml jobs, valid only for versions 5.4.0 or greater (default: false)

                    • node_roles array[string]

                      The list of node roles for this topology element (ES version >= 7.10). Allowable values are: master, ingest, ml, data_hot, data_content, data_warm, data_cold, data_frozen, remote_cluster_client, transform

                      Values are master, ingest, ml, data_hot, data_content, data_warm, data_cold, data_frozen, remote_cluster_client, or transform.

                    • memory_per_node integer(int32)

                      The memory capacity in MB for each node of this type built in each zone.

                    • node_count_per_zone integer(int32)

                      The number of nodes of this type that are allocated within each zone. (i.e. total capacity per zone = node_count_per_zone * memory_per_node in MB). Cannot be set for tiebreaker topologies. For dedicated master nodes, must be 1 if an entry exists.

                    • zone_count integer(int32)

                      The default number of zones in which data nodes will be placed

                    • The Elasticsearch cluster settings. When specified at the top level, provides a field-by-field default. When specified at the topology level, provides the override settings.

                      Additional properties are allowed.

                      Hide elasticsearch attributes Show elasticsearch attributes object
                      • version string

                        The version of the Elasticsearch cluster (must be one of the ECE supported versions). Currently cannot be different across the topology (and is generally specified in the globals). Defaults to the latest version if not specified.

                      • A docker URI that allows overriding of the default docker image specified for this version

                      • A subset of Elasticsearch settings. TIP: To define the complete set of Elasticsearch settings, use ElasticsearchSystemSettings with user_settings_override* and user_settings*.

                        Additional properties are allowed.

                        Hide system_settings attributes Show system_settings attributes object
                        • Controls the languages supported by the Elasticsearch cluster, such as Painless, Mustache, and Expressions. Controls how the languages are used, such as file, index, and inline. TIP: For complex configurations, leave these blank and configure these settings in the user YAML or JSON.

                          Additional properties are allowed.

                          Hide scripting attributes Show scripting attributes object
                          • (5.x+ only) If enabled (the default) then the painless scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.painless.[file|stored|inline]')

                          • (5.x+ only) If enabled (the default) then the mustache scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.mustache.[file|stored|inline]')

                          • (5.x+ only) If enabled (the default) then the expressions scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.expression.[file|stored|inline]')

                          • stored object

                            Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                            Additional properties are allowed.

                            Hide stored attributes Show stored attributes object
                            • enabled boolean

                              If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                            • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                          • file object

                            Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                            Additional properties are allowed.

                            Hide file attributes Show file attributes object
                            • enabled boolean

                              If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                            • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                          • inline object

                            Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                            Additional properties are allowed.

                            Hide inline attributes Show inline attributes object
                            • enabled boolean

                              If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                            • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                        • reindex_whitelist array[string]

                          Limits remote Elasticsearch clusters that can be used as the source for '_reindex' API commands

                        • If true (the default), then any write operation on an index that does not currently exist will create it. NOTES: (Corresponds to the parameter 'action.auto_create_index')

                        • Defaults to false on versions <= 7.2.0, true otherwise. If false, then the API commands to close indices are disabled. This is important because Elasticsearch does not snapshot or migrate close indices on versions under 7.2.0, therefore standard Elastic Cloud configuration operations will cause irretrievable loss of indices' data. NOTES: (Corresponds to the parameter 'cluster.indices.close.enable')

                        • If true (default is false) then the index deletion API will not support wildcards or '_all'. NOTES: (Corresponds to the parameter 'action.destructive_requires_name')

                        • The trigger engine for Watcher, defaults to 'scheduler' - see the xpack documentation for more information. NOTES: (Corresponds to the parameter '(xpack.)watcher.trigger.schedule.engine', depending on version. Ignored from 6.x onwards.)

                        • (2.x only - to get the same result in 5.x template mappings must be used) Sets the default number of shards per index, defaulting to 1 if not specified. (Corresponds to the parameter 'index.number_of_shards' in 2.x, not supported in 5.x)

                        • The default interval at which monitoring information from the cluster if collected, if monitoring is enabled. NOTES: (Corresponds to the parameter 'marvel.agent.interval' in 2.x and 'xpack.monitoring.collection.interval' in 5.x)

                        • The duration for which monitoring history is stored (format '(NUMBER)d' eg '3d' for 3 days). NOTES: ('Corresponds to the parameter xpack.monitoring.history.duration' in 5.x, defaults to '7d')

                      • An arbitrary JSON object allowing cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters arey are on the allowlist and not on the denylist. NOTES: (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Elasticsearch settings)

                        Additional properties are allowed.

                      • An arbitrary YAML object allowing cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters arey are on the allowlist and not on the denylist. NOTES: (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Elasticsearch settings)

                      • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. NOTES: (This field together with 'system_settings' and 'user_settings*' defines the total set of Elasticsearch settings)

                        Additional properties are allowed.

                      • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. NOTES: (This field together with 'system_settings' and 'user_settings*' defines the total set of Elasticsearch settings)

                      • A list of plugin names from the Elastic-supported subset that are bundled with the version images. NOTES: (Users should consult the Elastic stack objects to see what plugins are available, this is currently only available from the UI)

                      • user_plugins array[object]

                        A list of admin-uploaded plugin objects that are available for this user.

                        Hide user_plugins attributes Show user_plugins attributes object
                        • name string Required

                          The name of the plugin

                        • url string Required

                          The URL of the plugin (must be accessible from the ECE infrastructure)

                        • elasticsearch_version string Required

                          The supported Elasticsearch version (must match the version in the plan)

                      • user_bundles array[object]

                        A list of admin-uploaded bundle objects (eg scripts, synonym files) that are available for this user.

                        Hide user_bundles attributes Show user_bundles attributes object
                        • name string Required

                          The name of the bundle

                        • url string Required

                          The URL of the bundle, which must be accessible from the ECE infrastructure. This URL could be cached by platform, make sure to change it when updating the bundle

                        • elasticsearch_version string Required

                          The supported Elasticsearch version (must match the version in the plan)

                      • curation object

                        Defines the index curation routing for the cluster

                        Additional properties are allowed.

                        Hide curation attributes Show curation attributes object
                      • Defines the Elasticsearch node attributes for the instances in the topology

                        Hide node_attributes attribute Show node_attributes attribute object
                        • * string Additional properties
                    • Controls the allocation of this topology element as well as allowed sizes and node_types. It needs to match the id of an existing instance configuration.

                    • The version of the Instance Configuration Id. If it is unset, the meaning depends on read vs writes. For deployment reads, it is equivalent to version 0 (or the IC is unversioned); for deployment creates and deployment template use, it is equivalent to 'the latest version'; and for deployment updates, it is equivalent to 'retain the current version'.

                    • size object

                      Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                      Additional properties are allowed.

                      Hide size attributes Show size attributes object
                      • value integer(int32) Required

                        Amount of resource

                      • resource string Required

                        Type of resource

                        Values are memory or storage.

                    • Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                      Additional properties are allowed.

                      Hide autoscaling_min attributes Show autoscaling_min attributes object
                      • value integer(int32) Required

                        Amount of resource

                      • resource string Required

                        Type of resource

                        Values are memory or storage.

                    • Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                      Additional properties are allowed.

                      Hide autoscaling_max attributes Show autoscaling_max attributes object
                      • value integer(int32) Required

                        Amount of resource

                      • resource string Required

                        Type of resource

                        Values are memory or storage.

                    • An arbitrary JSON object overriding the default autoscaling policy. Don't set unless you really know what you are doing.

                      Additional properties are allowed.

                    • Controls for the topology element. Only used as part of the deployment template. Ignored if included as part of a deployment.

                      Additional properties are allowed.

                      Hide topology_element_control attribute Show topology_element_control attribute object
                      • min object Required

                        Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                        Additional properties are allowed.

                        Hide min attributes Show min attributes object
                        • value integer(int32) Required

                          Amount of resource

                        • resource string Required

                          Type of resource

                          Values are memory or storage.

                    • Set to true to enable autoscaling for this topology element, even if the cluster-level 'autoscaling_enabled' field is false. Note that 'autoscaling_tier_override' cannot be set to false if cluster-level 'autoscaling_enabled' is true. Currently only supported for the 'ml' tier

                  • elasticsearch object Required

                    The Elasticsearch cluster settings. When specified at the top level, provides a field-by-field default. When specified at the topology level, provides the override settings.

                    Additional properties are allowed.

                    Hide elasticsearch attributes Show elasticsearch attributes object
                    • version string

                      The version of the Elasticsearch cluster (must be one of the ECE supported versions). Currently cannot be different across the topology (and is generally specified in the globals). Defaults to the latest version if not specified.

                    • A docker URI that allows overriding of the default docker image specified for this version

                    • A subset of Elasticsearch settings. TIP: To define the complete set of Elasticsearch settings, use ElasticsearchSystemSettings with user_settings_override* and user_settings*.

                      Additional properties are allowed.

                      Hide system_settings attributes Show system_settings attributes object
                      • Controls the languages supported by the Elasticsearch cluster, such as Painless, Mustache, and Expressions. Controls how the languages are used, such as file, index, and inline. TIP: For complex configurations, leave these blank and configure these settings in the user YAML or JSON.

                        Additional properties are allowed.

                        Hide scripting attributes Show scripting attributes object
                        • (5.x+ only) If enabled (the default) then the painless scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.painless.[file|stored|inline]')

                        • (5.x+ only) If enabled (the default) then the mustache scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.mustache.[file|stored|inline]')

                        • (5.x+ only) If enabled (the default) then the expressions scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.expression.[file|stored|inline]')

                        • stored object

                          Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                          Additional properties are allowed.

                          Hide stored attributes Show stored attributes object
                          • enabled boolean

                            If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                          • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                        • file object

                          Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                          Additional properties are allowed.

                          Hide file attributes Show file attributes object
                          • enabled boolean

                            If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                          • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                        • inline object

                          Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                          Additional properties are allowed.

                          Hide inline attributes Show inline attributes object
                          • enabled boolean

                            If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                          • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                      • reindex_whitelist array[string]

                        Limits remote Elasticsearch clusters that can be used as the source for '_reindex' API commands

                      • If true (the default), then any write operation on an index that does not currently exist will create it. NOTES: (Corresponds to the parameter 'action.auto_create_index')

                      • Defaults to false on versions <= 7.2.0, true otherwise. If false, then the API commands to close indices are disabled. This is important because Elasticsearch does not snapshot or migrate close indices on versions under 7.2.0, therefore standard Elastic Cloud configuration operations will cause irretrievable loss of indices' data. NOTES: (Corresponds to the parameter 'cluster.indices.close.enable')

                      • If true (default is false) then the index deletion API will not support wildcards or '_all'. NOTES: (Corresponds to the parameter 'action.destructive_requires_name')

                      • The trigger engine for Watcher, defaults to 'scheduler' - see the xpack documentation for more information. NOTES: (Corresponds to the parameter '(xpack.)watcher.trigger.schedule.engine', depending on version. Ignored from 6.x onwards.)

                      • (2.x only - to get the same result in 5.x template mappings must be used) Sets the default number of shards per index, defaulting to 1 if not specified. (Corresponds to the parameter 'index.number_of_shards' in 2.x, not supported in 5.x)

                      • The default interval at which monitoring information from the cluster if collected, if monitoring is enabled. NOTES: (Corresponds to the parameter 'marvel.agent.interval' in 2.x and 'xpack.monitoring.collection.interval' in 5.x)

                      • The duration for which monitoring history is stored (format '(NUMBER)d' eg '3d' for 3 days). NOTES: ('Corresponds to the parameter xpack.monitoring.history.duration' in 5.x, defaults to '7d')

                    • An arbitrary JSON object allowing cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters arey are on the allowlist and not on the denylist. NOTES: (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Elasticsearch settings)

                      Additional properties are allowed.

                    • An arbitrary YAML object allowing cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters arey are on the allowlist and not on the denylist. NOTES: (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Elasticsearch settings)

                    • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. NOTES: (This field together with 'system_settings' and 'user_settings*' defines the total set of Elasticsearch settings)

                      Additional properties are allowed.

                    • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. NOTES: (This field together with 'system_settings' and 'user_settings*' defines the total set of Elasticsearch settings)

                    • A list of plugin names from the Elastic-supported subset that are bundled with the version images. NOTES: (Users should consult the Elastic stack objects to see what plugins are available, this is currently only available from the UI)

                    • user_plugins array[object]

                      A list of admin-uploaded plugin objects that are available for this user.

                      Hide user_plugins attributes Show user_plugins attributes object
                      • name string Required

                        The name of the plugin

                      • url string Required

                        The URL of the plugin (must be accessible from the ECE infrastructure)

                      • elasticsearch_version string Required

                        The supported Elasticsearch version (must match the version in the plan)

                    • user_bundles array[object]

                      A list of admin-uploaded bundle objects (eg scripts, synonym files) that are available for this user.

                      Hide user_bundles attributes Show user_bundles attributes object
                      • name string Required

                        The name of the bundle

                      • url string Required

                        The URL of the bundle, which must be accessible from the ECE infrastructure. This URL could be cached by platform, make sure to change it when updating the bundle

                      • elasticsearch_version string Required

                        The supported Elasticsearch version (must match the version in the plan)

                    • curation object

                      Defines the index curation routing for the cluster

                      Additional properties are allowed.

                      Hide curation attributes Show curation attributes object
                    • Defines the Elasticsearch node attributes for the instances in the topology

                      Hide node_attributes attribute Show node_attributes attribute object
                      • * string Additional properties
                  • Documents which deployment template was used in the creation of this plan

                    Additional properties are allowed.

                    Hide deployment_template attributes Show deployment_template attributes object
                    • id string Required

                      The unique identifier of the deployment template

                    • version string

                      A version identifier to disambiguate multiple revisions of the same template

                  • Defines the configuration parameters that control how the plan is applied. For example, the Elasticsearch cluster topology and Elasticsearch settings.

                    Additional properties are allowed.

                    Hide transient attributes Show transient attributes object
                    • strategy object

                      The options for performing a plan change. Specify only one property each time. The default is grow_and_shrink.

                      Additional properties are allowed.

                      Hide strategy attributes Show strategy attributes object
                      • rolling object

                        Performs inline, rolling configuration changes that mutate existing containers. TIP: This is the fastest way to update a plan, but can fail for complex plan changes, such as topology changes. Also, this is less safe for configuration changes that leave a cluster in a non running state. NOTE: When you perform a major version upgrade, and 'group_by' is set to 'pass:macros[all]';, rolling is required.

                        Additional properties are allowed.

                        Hide rolling attributes Show rolling attributes object
                        • group_by string

                          Specifies the grouping attribute to use when rolling several instances. Instances that share the same value for the provided attribute key are rolled together as a unit. Examples that make sense to use are '__all__' (roll all instances as a single unit), 'logical_zone_name' (roll instances by zone), '__name__' (roll one instance at a time, the default if not specified). Note that '__all__' is required when performing a major version upgrade

                        • Whether we allow changing the capacity of instances (default false). This is currently implemented by stopping, re-creating then starting the affected instance on its associated allocator when performing the changes. NOTES: This requires a round-trip through the allocation infrastructure of the active constructor, as it has to reserve the target capacity without over-committing

                        • Whether to skip attempting to do a synced flush on the filesystem of the container (default: false), which is less safe but may be required if the container is unhealthy

                        • shard_init_wait_time integer(int64)

                          The time, in seconds, to wait for shards that show no progress of initializing before rolling the next group (default: 10 minutes)

                      • A strategy that creates instances with the new plan, migrates data from the old instances, then shuts down the old instances. GrowShrinkStrategyConfig is safer than 'rolling' and ensures single node availability during a plan change, but can be a lot slower on larger clusters.

                        Additional properties are allowed.

                      • A strategy that creates new Elasticsearch instances, Kibana instances, and APM Servers with the new plan, then migrates the node data to minimize the amount of spare capacity.

                        Additional properties are allowed.

                      • A strategy that lets constructor choose the most optimal way to execute the plan.

                        Additional properties are allowed.

                    • The configuration settings for the timeout and fallback parameters.

                      Additional properties are allowed.

                      Hide plan_configuration attributes Show plan_configuration attributes object
                      • timeout integer(int64)

                        The total timeout in seconds after which the plan is cancelled even if it is not complete. Defaults to 4x the max memory capacity per node (in MB). NOTES: A 3 zone cluster with 2 nodes of 2048 each would have a timeout of 4*2048=8192 seconds. Timeout does not include time required to run rollback actions.

                      • calm_wait_time integer(int64)

                        This timeout determines how long to give a cluster after it responds to API calls before performing actual operations on it. It defaults to 5s

                      • move_instances array[object]
                        Hide move_instances attributes Show move_instances attributes object
                        • from string Required

                          The instance id that is going to be moved

                        • to array[string]

                          An optional list of allocator ids to which the instance should be moved. If not specified then any available allocator can be used (including the current one if it is healthy)

                        • Tells the infrastructure that the instance should be considered as permanently down when deciding how to migrate data to new nodes. If left blank then the system will automatically decide (currently: will treat the instances as up)

                      • move_allocators array[object]
                        Hide move_allocators attributes Show move_allocators attributes object
                        • from string Required

                          The allocator id off which all instances in the cluster should be moved

                        • to array[string]

                          An optional list of allocator ids to which the instance(s) should be moved. If not specified then any available allocator can be used (including the current one if it is healthy)

                        • Tells the infrastructure that all instances on the allocator should be considered as permanently down when deciding how to migrate data to new nodes. If left blank then the system will auto-decide (currently: will treat the allocator as up)

                      • move_only boolean

                        If true (default: false) only move_instances and move_allocators instructions will be executed, all other changes will be ignored

                      • If true (default: false) does not allow re-using any existing instances currently in the cluster, ie even unchanged instances will be re-created

                      • List of allocators on which instances are placed if possible (if not possible/not specified then any available allocator with space is used)

                      • Map containing allocators tags in form of key value pairs, increasing the likelihood during move requests for allocators with matching tags, to be selected as target allocators

                        Hide preferred_allocator_tags attribute Show preferred_allocator_tags attribute object
                        • * string Additional properties
                      • If true (default: false), does not take (or require) a successful snapshot to be taken before performing any potentially destructive changes to this cluster

                      • If taking a snapshot (ie unless 'skip_snapshots': true) then will retry on failure at most this number of times (default: 5)

                      • max_snapshot_age integer(int64)

                        When you take a snapshot and 'skip_snapshots' is false, specifies the maximum age in seconds of the most recent snapshot before a new snapshot is created. Default is 300

                      • If true (default false), does not clear the maintenance flag (which prevents its API from being accessed except by the constructor) on new instances added until after a snapshot has been restored, otherwise, the maintenance flag is cleared once the new instances successfully join the new cluster

                      • Set to 'forced' to force a reboot as part of the upgrade plan. NOTES: (ie taking an existing plan and leaving it alone except for setting 'transient.plan_configuration.cluster_reboot': 'forced' will reboot the cluster)

                        Value is forced.

                      • If false (the default) then the plan will fail out if it believes the requested sequence of operations can result in data loss - this flag will override some of these restraints

                      • If true (default: false) then the plan will not wait for data to be migrated from old instances to new instances before continuing the plan (potentially deleting the old instances and losing data)

                      • If false, the cluster is checked for issues that should be resolved before migration (eg contains old Lucene segments), if true this is bypassed

                      • If false (the default), the cluster will run (currently) 2.x->5.x operations for any plan change ending with a 5.x cluster (eg apply a cluster license, ensure Monitoring is configured)

                      • If false (the default), the cluster will perform a snapshot after a major version upgrade takes place

                    • Restores a snapshot from a local or remote repository.

                      Additional properties are allowed.

                      Hide restore_snapshot attributes Show restore_snapshot attributes object
                      • If specified, contains the name of the snapshot repository - else will default to the Elastic Cloud system repo ('found-snapshots')

                      • snapshot_name string Required

                        The name of the snapshot to restore. Use '__latest_success__' to get the most recent snapshot from the specified repository

                      • Raw remote snapshot restore settings. Do not send this if you are sending source_cluster_id

                        Additional properties are allowed.

                        Hide repository_config attribute Show repository_config attribute object
                        • The remote snapshot settings raw JSON - see the Elasticsearch '_snapshot' documentation for more details on supported formats

                          Additional properties are allowed.

                      • The configuration for the restore command, such as which indices you want to restore.

                        Additional properties are allowed.

                        Hide restore_payload attributes Show restore_payload attributes object
                        • indices array[string]

                          The list of indices to restore (supports +ve and -ve selection and wildcarding - see the default Elasticsearch index format documentation)

                        • This JSON object (merged with the 'indices' field (if present) is passed untouched into the restore command - see the Elasticsearch '_snapshot' documentation for more details on supported formats

                          Additional properties are allowed.

                      • strategy string

                        The restore strategy to use. Defaults to a full restore. Partial restore will attempt to restore unavailable indices only

                        Values are partial, full, or recovery.

                      • If specified, contains the name of the source cluster id. Do not send this if you are sending repository_config

                    • The list of resources that will be configured as remote clusters

                      Additional properties are allowed.

                      Hide remote_clusters attribute Show remote_clusters attribute object
                      • resources array[object] Required

                        The remote resources

                        Hide resources attributes Show resources attributes object
                        • deployment_id string Required

                          The id of the deployment

                        • elasticsearch_ref_id string Required

                          The locally-unique user-specified id of an Elasticsearch Resource

                        • alias string Required

                          The alias for this remote cluster. Aliases must only contain letters, digits, dashes and underscores

                        • If true, skip this cluster during search if it is disconnected. Default: false

                        • info object

                          Information about a Remote Cluster.

                          Additional properties are allowed.

                          Hide info attributes Show info attributes object
                          • healthy boolean Required

                            Whether or not the remote cluster is healthy

                          • connected boolean Required

                            Whether or not there is at least one connection to the remote cluster.

                          • compatible boolean Required

                            Whether or not the remote cluster version is compatible with this cluster version.

                          • trusted boolean Required

                            Whether or not the remote cluster is trusted by this cluster.

                          • trusted_back boolean Required

                            Whether or not the remote cluster trusts this cluster back.

                    • If specified, contains transient settings to be applied to an Elasticsearch cluster during changes,default values shown below applied. These can be overridden by specifying them in the map (or null to unset). Additional settings can also be set. Settings will be cleared after the plan has finished. If not specified, no settings will be applied. NOTE: These settings are only explicitly cleared for 5.x+ clusters, they must be hand-reset to their defaults in 2.x- (or a cluster reboot will clear them).

                      • indices.store.throttle.max_bytes_per_sec: 120Mb
                      • indices.recovery.max_bytes_per_sec: 120Mb
                      • cluster.routing.allocation.cluster_concurrent_rebalance: 5
                      • cluster.routing.allocation.node_initial_primaries_recoveries: 5
                      • cluster.routing.allocation.node_concurrent_incoming_recoveries: 5 For version 8.1 and later no defaults are provided through this mechanism, but instead hardware dependent settings are provided to each instance.

                      Additional properties are allowed.

                  • Enable autoscaling for this Elasticsearch cluster.

                • plan_attempt_log array[object] Required
                  Hide plan_attempt_log attributes Show plan_attempt_log attributes object
                  • step_id string Required

                    ID of current step

                  • started string(date-time) Required

                    When the step started (ISO format in UTC)

                  • completed string(date-time)

                    When the step completed (ISO format in UTC)

                  • duration_in_millis integer(int64)

                    The duration of the step in MS

                  • status string Required

                    The status of the step (success, warning, error - warning means something didn't go as expected but it was not serious enough to abort the plan)

                    Values are success, warning, error, or pending.

                  • stage string Required

                    Current stage that the step is in

                    Values are starting, completed, or in_progress.

                  • info_log array[object] Required

                    Human readable summaries of the step, including messages for each stage of the step

                    Hide info_log attributes Show info_log attributes object
                    • timestamp string(date-time) Required

                      Timestamp marking on info log of step

                    • delta_in_millis integer(int64)

                      Time in milliseconds since previous log message

                    • stage string Required

                      Stage that info log message takes place in

                      Values are starting, completed, or in_progress.

                    • message string Required

                      Human readable log message

                    • details object Required

                      A map with details for the log about what happened during the step execution. Keys and values for are always both strings, representing the name of the detail and its value, respectively.

                      Hide details attribute Show details attribute object
                      • * string Additional properties
                    • A json object with sensitive details for the log, visible only to admins. May contain nested json objects.

                      Hide internal_details attribute Show internal_details attribute object
                      • * string Additional properties
                    • The failure type, in case the step failed

                • source object

                  Information describing the source that facilitated the plans current state

                  Additional properties are allowed.

                  Hide source attributes Show source attributes object
                  • facilitator string Required

                    The service where the change originated from

                  • action string Required

                    The type of plan change that was initiated

                  • date string(date-time) Required

                    The time the change was initiated

                  • user_id string

                    The user that requested the change

                  • admin_id string

                    The admin user that requested the change

                  • remote_addresses array[string]

                    The host addresses of the user that originated the change

                • warnings array[object] Required
                  Hide warnings attributes Show warnings attributes object
                  • code string Required

                    A unique warning code

                  • message string Required

                    A description of the warning

                  • step_id string

                    The ID of the step which produced a warning, if any

                • error object

                  Information about an error during a plan attempt.

                  Additional properties are allowed.

                  Hide error attributes Show error attributes object
                  • timestamp string(date-time) Required

                    Timestamp marking on info log of step

                  • message string Required

                    Human readable error message

                  • details object Required

                    A map with details regarding the error. Both the keys and values are always strings, representing the name of the detail and its value, respectively.

                    Hide details attribute Show details attribute object
                    • * string Additional properties
                  • The failure type

              • pending object

                Information about the Elasticsearch cluster plan.

                Additional properties are allowed.

                Hide pending attributes Show pending attributes object
                • A UUID for each plan attempt

                • A human readable name for each plan attempt, only populated when retrieving plan histories

                • healthy boolean Required

                  Either the plan ended successfully, or is not yet completed (and no errors have occurred)

                • attempt_start_time string(date-time)

                  When this plan attempt (ie to apply the plan to the cluster) started (ISO format in UTC)

                • attempt_end_time string(date-time)

                  If this plan completed or failed (ie is not pending), when the attempt ended (ISO format in UTC)

                • plan_end_time string(date-time)

                  If this plan is not current or pending, when the plan was no longer active (ISO format in UTC)

                • plan object

                  The plan for building this Elasticsearch cluster

                  Additional properties are allowed.

                  Hide plan attributes Show plan attributes object
                  • cluster_topology array[object] Required
                    Hide cluster_topology attributes Show cluster_topology attributes object
                    • id string

                      Unique identifier of this topology element

                    • Controls the combinations of Elasticsearch node types. TIP: By default, the Elasticsearch node is master eligible, can hold data, and run ingest pipelines. WARNING: Do not set for tiebreaker topologies.

                      Additional properties are allowed.

                      Hide node_type attributes Show node_type attributes object
                      • master boolean

                        Defines whether this node can be elected master (default: false)

                      • data boolean

                        Defines whether this node can hold data (default: false)

                      • ingest boolean

                        Defines whether this node can run an ingest pipeline (default: false)

                      • ml boolean

                        Defines whether this node can run ml jobs, valid only for versions 5.4.0 or greater (default: false)

                    • node_roles array[string]

                      The list of node roles for this topology element (ES version >= 7.10). Allowable values are: master, ingest, ml, data_hot, data_content, data_warm, data_cold, data_frozen, remote_cluster_client, transform

                      Values are master, ingest, ml, data_hot, data_content, data_warm, data_cold, data_frozen, remote_cluster_client, or transform.

                    • memory_per_node integer(int32)

                      The memory capacity in MB for each node of this type built in each zone.

                    • node_count_per_zone integer(int32)

                      The number of nodes of this type that are allocated within each zone. (i.e. total capacity per zone = node_count_per_zone * memory_per_node in MB). Cannot be set for tiebreaker topologies. For dedicated master nodes, must be 1 if an entry exists.

                    • zone_count integer(int32)

                      The default number of zones in which data nodes will be placed

                    • The Elasticsearch cluster settings. When specified at the top level, provides a field-by-field default. When specified at the topology level, provides the override settings.

                      Additional properties are allowed.

                      Hide elasticsearch attributes Show elasticsearch attributes object
                      • version string

                        The version of the Elasticsearch cluster (must be one of the ECE supported versions). Currently cannot be different across the topology (and is generally specified in the globals). Defaults to the latest version if not specified.

                      • A docker URI that allows overriding of the default docker image specified for this version

                      • A subset of Elasticsearch settings. TIP: To define the complete set of Elasticsearch settings, use ElasticsearchSystemSettings with user_settings_override* and user_settings*.

                        Additional properties are allowed.

                        Hide system_settings attributes Show system_settings attributes object
                        • Controls the languages supported by the Elasticsearch cluster, such as Painless, Mustache, and Expressions. Controls how the languages are used, such as file, index, and inline. TIP: For complex configurations, leave these blank and configure these settings in the user YAML or JSON.

                          Additional properties are allowed.

                          Hide scripting attributes Show scripting attributes object
                          • (5.x+ only) If enabled (the default) then the painless scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.painless.[file|stored|inline]')

                          • (5.x+ only) If enabled (the default) then the mustache scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.mustache.[file|stored|inline]')

                          • (5.x+ only) If enabled (the default) then the expressions scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.expression.[file|stored|inline]')

                          • stored object

                            Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                            Additional properties are allowed.

                            Hide stored attributes Show stored attributes object
                            • enabled boolean

                              If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                            • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                          • file object

                            Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                            Additional properties are allowed.

                            Hide file attributes Show file attributes object
                            • enabled boolean

                              If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                            • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                          • inline object

                            Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                            Additional properties are allowed.

                            Hide inline attributes Show inline attributes object
                            • enabled boolean

                              If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                            • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                        • reindex_whitelist array[string]

                          Limits remote Elasticsearch clusters that can be used as the source for '_reindex' API commands

                        • If true (the default), then any write operation on an index that does not currently exist will create it. NOTES: (Corresponds to the parameter 'action.auto_create_index')

                        • Defaults to false on versions <= 7.2.0, true otherwise. If false, then the API commands to close indices are disabled. This is important because Elasticsearch does not snapshot or migrate close indices on versions under 7.2.0, therefore standard Elastic Cloud configuration operations will cause irretrievable loss of indices' data. NOTES: (Corresponds to the parameter 'cluster.indices.close.enable')

                        • If true (default is false) then the index deletion API will not support wildcards or '_all'. NOTES: (Corresponds to the parameter 'action.destructive_requires_name')

                        • The trigger engine for Watcher, defaults to 'scheduler' - see the xpack documentation for more information. NOTES: (Corresponds to the parameter '(xpack.)watcher.trigger.schedule.engine', depending on version. Ignored from 6.x onwards.)

                        • (2.x only - to get the same result in 5.x template mappings must be used) Sets the default number of shards per index, defaulting to 1 if not specified. (Corresponds to the parameter 'index.number_of_shards' in 2.x, not supported in 5.x)

                        • The default interval at which monitoring information from the cluster if collected, if monitoring is enabled. NOTES: (Corresponds to the parameter 'marvel.agent.interval' in 2.x and 'xpack.monitoring.collection.interval' in 5.x)

                        • The duration for which monitoring history is stored (format '(NUMBER)d' eg '3d' for 3 days). NOTES: ('Corresponds to the parameter xpack.monitoring.history.duration' in 5.x, defaults to '7d')

                      • An arbitrary JSON object allowing cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters arey are on the allowlist and not on the denylist. NOTES: (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Elasticsearch settings)

                        Additional properties are allowed.

                      • An arbitrary YAML object allowing cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters arey are on the allowlist and not on the denylist. NOTES: (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Elasticsearch settings)

                      • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. NOTES: (This field together with 'system_settings' and 'user_settings*' defines the total set of Elasticsearch settings)

                        Additional properties are allowed.

                      • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. NOTES: (This field together with 'system_settings' and 'user_settings*' defines the total set of Elasticsearch settings)

                      • A list of plugin names from the Elastic-supported subset that are bundled with the version images. NOTES: (Users should consult the Elastic stack objects to see what plugins are available, this is currently only available from the UI)

                      • user_plugins array[object]

                        A list of admin-uploaded plugin objects that are available for this user.

                        Hide user_plugins attributes Show user_plugins attributes object
                        • name string Required

                          The name of the plugin

                        • url string Required

                          The URL of the plugin (must be accessible from the ECE infrastructure)

                        • elasticsearch_version string Required

                          The supported Elasticsearch version (must match the version in the plan)

                      • user_bundles array[object]

                        A list of admin-uploaded bundle objects (eg scripts, synonym files) that are available for this user.

                        Hide user_bundles attributes Show user_bundles attributes object
                        • name string Required

                          The name of the bundle

                        • url string Required

                          The URL of the bundle, which must be accessible from the ECE infrastructure. This URL could be cached by platform, make sure to change it when updating the bundle

                        • elasticsearch_version string Required

                          The supported Elasticsearch version (must match the version in the plan)

                      • curation object

                        Defines the index curation routing for the cluster

                        Additional properties are allowed.

                        Hide curation attributes Show curation attributes object
                      • Defines the Elasticsearch node attributes for the instances in the topology

                        Hide node_attributes attribute Show node_attributes attribute object
                        • * string Additional properties
                    • Controls the allocation of this topology element as well as allowed sizes and node_types. It needs to match the id of an existing instance configuration.

                    • The version of the Instance Configuration Id. If it is unset, the meaning depends on read vs writes. For deployment reads, it is equivalent to version 0 (or the IC is unversioned); for deployment creates and deployment template use, it is equivalent to 'the latest version'; and for deployment updates, it is equivalent to 'retain the current version'.

                    • size object

                      Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                      Additional properties are allowed.

                      Hide size attributes Show size attributes object
                      • value integer(int32) Required

                        Amount of resource

                      • resource string Required

                        Type of resource

                        Values are memory or storage.

                    • Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                      Additional properties are allowed.

                      Hide autoscaling_min attributes Show autoscaling_min attributes object
                      • value integer(int32) Required

                        Amount of resource

                      • resource string Required

                        Type of resource

                        Values are memory or storage.

                    • Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                      Additional properties are allowed.

                      Hide autoscaling_max attributes Show autoscaling_max attributes object
                      • value integer(int32) Required

                        Amount of resource

                      • resource string Required

                        Type of resource

                        Values are memory or storage.

                    • An arbitrary JSON object overriding the default autoscaling policy. Don't set unless you really know what you are doing.

                      Additional properties are allowed.

                    • Controls for the topology element. Only used as part of the deployment template. Ignored if included as part of a deployment.

                      Additional properties are allowed.

                      Hide topology_element_control attribute Show topology_element_control attribute object
                      • min object Required

                        Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                        Additional properties are allowed.

                        Hide min attributes Show min attributes object
                        • value integer(int32) Required

                          Amount of resource

                        • resource string Required

                          Type of resource

                          Values are memory or storage.

                    • Set to true to enable autoscaling for this topology element, even if the cluster-level 'autoscaling_enabled' field is false. Note that 'autoscaling_tier_override' cannot be set to false if cluster-level 'autoscaling_enabled' is true. Currently only supported for the 'ml' tier

                  • elasticsearch object Required

                    The Elasticsearch cluster settings. When specified at the top level, provides a field-by-field default. When specified at the topology level, provides the override settings.

                    Additional properties are allowed.

                    Hide elasticsearch attributes Show elasticsearch attributes object
                    • version string

                      The version of the Elasticsearch cluster (must be one of the ECE supported versions). Currently cannot be different across the topology (and is generally specified in the globals). Defaults to the latest version if not specified.

                    • A docker URI that allows overriding of the default docker image specified for this version

                    • A subset of Elasticsearch settings. TIP: To define the complete set of Elasticsearch settings, use ElasticsearchSystemSettings with user_settings_override* and user_settings*.

                      Additional properties are allowed.

                      Hide system_settings attributes Show system_settings attributes object
                      • Controls the languages supported by the Elasticsearch cluster, such as Painless, Mustache, and Expressions. Controls how the languages are used, such as file, index, and inline. TIP: For complex configurations, leave these blank and configure these settings in the user YAML or JSON.

                        Additional properties are allowed.

                        Hide scripting attributes Show scripting attributes object
                        • (5.x+ only) If enabled (the default) then the painless scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.painless.[file|stored|inline]')

                        • (5.x+ only) If enabled (the default) then the mustache scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.mustache.[file|stored|inline]')

                        • (5.x+ only) If enabled (the default) then the expressions scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.expression.[file|stored|inline]')

                        • stored object

                          Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                          Additional properties are allowed.

                          Hide stored attributes Show stored attributes object
                          • enabled boolean

                            If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                          • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                        • file object

                          Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                          Additional properties are allowed.

                          Hide file attributes Show file attributes object
                          • enabled boolean

                            If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                          • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                        • inline object

                          Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                          Additional properties are allowed.

                          Hide inline attributes Show inline attributes object
                          • enabled boolean

                            If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                          • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                      • reindex_whitelist array[string]

                        Limits remote Elasticsearch clusters that can be used as the source for '_reindex' API commands

                      • If true (the default), then any write operation on an index that does not currently exist will create it. NOTES: (Corresponds to the parameter 'action.auto_create_index')

                      • Defaults to false on versions <= 7.2.0, true otherwise. If false, then the API commands to close indices are disabled. This is important because Elasticsearch does not snapshot or migrate close indices on versions under 7.2.0, therefore standard Elastic Cloud configuration operations will cause irretrievable loss of indices' data. NOTES: (Corresponds to the parameter 'cluster.indices.close.enable')

                      • If true (default is false) then the index deletion API will not support wildcards or '_all'. NOTES: (Corresponds to the parameter 'action.destructive_requires_name')

                      • The trigger engine for Watcher, defaults to 'scheduler' - see the xpack documentation for more information. NOTES: (Corresponds to the parameter '(xpack.)watcher.trigger.schedule.engine', depending on version. Ignored from 6.x onwards.)

                      • (2.x only - to get the same result in 5.x template mappings must be used) Sets the default number of shards per index, defaulting to 1 if not specified. (Corresponds to the parameter 'index.number_of_shards' in 2.x, not supported in 5.x)

                      • The default interval at which monitoring information from the cluster if collected, if monitoring is enabled. NOTES: (Corresponds to the parameter 'marvel.agent.interval' in 2.x and 'xpack.monitoring.collection.interval' in 5.x)

                      • The duration for which monitoring history is stored (format '(NUMBER)d' eg '3d' for 3 days). NOTES: ('Corresponds to the parameter xpack.monitoring.history.duration' in 5.x, defaults to '7d')

                    • An arbitrary JSON object allowing cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters arey are on the allowlist and not on the denylist. NOTES: (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Elasticsearch settings)

                      Additional properties are allowed.

                    • An arbitrary YAML object allowing cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters arey are on the allowlist and not on the denylist. NOTES: (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Elasticsearch settings)

                    • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. NOTES: (This field together with 'system_settings' and 'user_settings*' defines the total set of Elasticsearch settings)

                      Additional properties are allowed.

                    • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. NOTES: (This field together with 'system_settings' and 'user_settings*' defines the total set of Elasticsearch settings)

                    • A list of plugin names from the Elastic-supported subset that are bundled with the version images. NOTES: (Users should consult the Elastic stack objects to see what plugins are available, this is currently only available from the UI)

                    • user_plugins array[object]

                      A list of admin-uploaded plugin objects that are available for this user.

                      Hide user_plugins attributes Show user_plugins attributes object
                      • name string Required

                        The name of the plugin

                      • url string Required

                        The URL of the plugin (must be accessible from the ECE infrastructure)

                      • elasticsearch_version string Required

                        The supported Elasticsearch version (must match the version in the plan)

                    • user_bundles array[object]

                      A list of admin-uploaded bundle objects (eg scripts, synonym files) that are available for this user.

                      Hide user_bundles attributes Show user_bundles attributes object
                      • name string Required

                        The name of the bundle

                      • url string Required

                        The URL of the bundle, which must be accessible from the ECE infrastructure. This URL could be cached by platform, make sure to change it when updating the bundle

                      • elasticsearch_version string Required

                        The supported Elasticsearch version (must match the version in the plan)

                    • curation object

                      Defines the index curation routing for the cluster

                      Additional properties are allowed.

                      Hide curation attributes Show curation attributes object
                    • Defines the Elasticsearch node attributes for the instances in the topology

                      Hide node_attributes attribute Show node_attributes attribute object
                      • * string Additional properties
                  • Documents which deployment template was used in the creation of this plan

                    Additional properties are allowed.

                    Hide deployment_template attributes Show deployment_template attributes object
                    • id string Required

                      The unique identifier of the deployment template

                    • version string

                      A version identifier to disambiguate multiple revisions of the same template

                  • Defines the configuration parameters that control how the plan is applied. For example, the Elasticsearch cluster topology and Elasticsearch settings.

                    Additional properties are allowed.

                    Hide transient attributes Show transient attributes object
                    • strategy object

                      The options for performing a plan change. Specify only one property each time. The default is grow_and_shrink.

                      Additional properties are allowed.

                      Hide strategy attributes Show strategy attributes object
                      • rolling object

                        Performs inline, rolling configuration changes that mutate existing containers. TIP: This is the fastest way to update a plan, but can fail for complex plan changes, such as topology changes. Also, this is less safe for configuration changes that leave a cluster in a non running state. NOTE: When you perform a major version upgrade, and 'group_by' is set to 'pass:macros[all]';, rolling is required.

                        Additional properties are allowed.

                        Hide rolling attributes Show rolling attributes object
                        • group_by string

                          Specifies the grouping attribute to use when rolling several instances. Instances that share the same value for the provided attribute key are rolled together as a unit. Examples that make sense to use are '__all__' (roll all instances as a single unit), 'logical_zone_name' (roll instances by zone), '__name__' (roll one instance at a time, the default if not specified). Note that '__all__' is required when performing a major version upgrade

                        • Whether we allow changing the capacity of instances (default false). This is currently implemented by stopping, re-creating then starting the affected instance on its associated allocator when performing the changes. NOTES: This requires a round-trip through the allocation infrastructure of the active constructor, as it has to reserve the target capacity without over-committing

                        • Whether to skip attempting to do a synced flush on the filesystem of the container (default: false), which is less safe but may be required if the container is unhealthy

                        • shard_init_wait_time integer(int64)

                          The time, in seconds, to wait for shards that show no progress of initializing before rolling the next group (default: 10 minutes)

                      • A strategy that creates instances with the new plan, migrates data from the old instances, then shuts down the old instances. GrowShrinkStrategyConfig is safer than 'rolling' and ensures single node availability during a plan change, but can be a lot slower on larger clusters.

                        Additional properties are allowed.

                      • A strategy that creates new Elasticsearch instances, Kibana instances, and APM Servers with the new plan, then migrates the node data to minimize the amount of spare capacity.

                        Additional properties are allowed.

                      • A strategy that lets constructor choose the most optimal way to execute the plan.

                        Additional properties are allowed.

                    • The configuration settings for the timeout and fallback parameters.

                      Additional properties are allowed.

                      Hide plan_configuration attributes Show plan_configuration attributes object
                      • timeout integer(int64)

                        The total timeout in seconds after which the plan is cancelled even if it is not complete. Defaults to 4x the max memory capacity per node (in MB). NOTES: A 3 zone cluster with 2 nodes of 2048 each would have a timeout of 4*2048=8192 seconds. Timeout does not include time required to run rollback actions.

                      • calm_wait_time integer(int64)

                        This timeout determines how long to give a cluster after it responds to API calls before performing actual operations on it. It defaults to 5s

                      • move_instances array[object]
                        Hide move_instances attributes Show move_instances attributes object
                        • from string Required

                          The instance id that is going to be moved

                        • to array[string]

                          An optional list of allocator ids to which the instance should be moved. If not specified then any available allocator can be used (including the current one if it is healthy)

                        • Tells the infrastructure that the instance should be considered as permanently down when deciding how to migrate data to new nodes. If left blank then the system will automatically decide (currently: will treat the instances as up)

                      • move_allocators array[object]
                        Hide move_allocators attributes Show move_allocators attributes object
                        • from string Required

                          The allocator id off which all instances in the cluster should be moved

                        • to array[string]

                          An optional list of allocator ids to which the instance(s) should be moved. If not specified then any available allocator can be used (including the current one if it is healthy)

                        • Tells the infrastructure that all instances on the allocator should be considered as permanently down when deciding how to migrate data to new nodes. If left blank then the system will auto-decide (currently: will treat the allocator as up)

                      • move_only boolean

                        If true (default: false) only move_instances and move_allocators instructions will be executed, all other changes will be ignored

                      • If true (default: false) does not allow re-using any existing instances currently in the cluster, ie even unchanged instances will be re-created

                      • List of allocators on which instances are placed if possible (if not possible/not specified then any available allocator with space is used)

                      • Map containing allocators tags in form of key value pairs, increasing the likelihood during move requests for allocators with matching tags, to be selected as target allocators

                        Hide preferred_allocator_tags attribute Show preferred_allocator_tags attribute object
                        • * string Additional properties
                      • If true (default: false), does not take (or require) a successful snapshot to be taken before performing any potentially destructive changes to this cluster

                      • If taking a snapshot (ie unless 'skip_snapshots': true) then will retry on failure at most this number of times (default: 5)

                      • max_snapshot_age integer(int64)

                        When you take a snapshot and 'skip_snapshots' is false, specifies the maximum age in seconds of the most recent snapshot before a new snapshot is created. Default is 300

                      • If true (default false), does not clear the maintenance flag (which prevents its API from being accessed except by the constructor) on new instances added until after a snapshot has been restored, otherwise, the maintenance flag is cleared once the new instances successfully join the new cluster

                      • Set to 'forced' to force a reboot as part of the upgrade plan. NOTES: (ie taking an existing plan and leaving it alone except for setting 'transient.plan_configuration.cluster_reboot': 'forced' will reboot the cluster)

                        Value is forced.

                      • If false (the default) then the plan will fail out if it believes the requested sequence of operations can result in data loss - this flag will override some of these restraints

                      • If true (default: false) then the plan will not wait for data to be migrated from old instances to new instances before continuing the plan (potentially deleting the old instances and losing data)

                      • If false, the cluster is checked for issues that should be resolved before migration (eg contains old Lucene segments), if true this is bypassed

                      • If false (the default), the cluster will run (currently) 2.x->5.x operations for any plan change ending with a 5.x cluster (eg apply a cluster license, ensure Monitoring is configured)

                      • If false (the default), the cluster will perform a snapshot after a major version upgrade takes place

                    • Restores a snapshot from a local or remote repository.

                      Additional properties are allowed.

                      Hide restore_snapshot attributes Show restore_snapshot attributes object
                      • If specified, contains the name of the snapshot repository - else will default to the Elastic Cloud system repo ('found-snapshots')

                      • snapshot_name string Required

                        The name of the snapshot to restore. Use '__latest_success__' to get the most recent snapshot from the specified repository

                      • Raw remote snapshot restore settings. Do not send this if you are sending source_cluster_id

                        Additional properties are allowed.

                        Hide repository_config attribute Show repository_config attribute object
                        • The remote snapshot settings raw JSON - see the Elasticsearch '_snapshot' documentation for more details on supported formats

                          Additional properties are allowed.

                      • The configuration for the restore command, such as which indices you want to restore.

                        Additional properties are allowed.

                        Hide restore_payload attributes Show restore_payload attributes object
                        • indices array[string]

                          The list of indices to restore (supports +ve and -ve selection and wildcarding - see the default Elasticsearch index format documentation)

                        • This JSON object (merged with the 'indices' field (if present) is passed untouched into the restore command - see the Elasticsearch '_snapshot' documentation for more details on supported formats

                          Additional properties are allowed.

                      • strategy string

                        The restore strategy to use. Defaults to a full restore. Partial restore will attempt to restore unavailable indices only

                        Values are partial, full, or recovery.

                      • If specified, contains the name of the source cluster id. Do not send this if you are sending repository_config

                    • The list of resources that will be configured as remote clusters

                      Additional properties are allowed.

                      Hide remote_clusters attribute Show remote_clusters attribute object
                      • resources array[object] Required

                        The remote resources

                        Hide resources attributes Show resources attributes object
                        • deployment_id string Required

                          The id of the deployment

                        • elasticsearch_ref_id string Required

                          The locally-unique user-specified id of an Elasticsearch Resource

                        • alias string Required

                          The alias for this remote cluster. Aliases must only contain letters, digits, dashes and underscores

                        • If true, skip this cluster during search if it is disconnected. Default: false

                        • info object

                          Information about a Remote Cluster.

                          Additional properties are allowed.

                          Hide info attributes Show info attributes object
                          • healthy boolean Required

                            Whether or not the remote cluster is healthy

                          • connected boolean Required

                            Whether or not there is at least one connection to the remote cluster.

                          • compatible boolean Required

                            Whether or not the remote cluster version is compatible with this cluster version.

                          • trusted boolean Required

                            Whether or not the remote cluster is trusted by this cluster.

                          • trusted_back boolean Required

                            Whether or not the remote cluster trusts this cluster back.

                    • If specified, contains transient settings to be applied to an Elasticsearch cluster during changes,default values shown below applied. These can be overridden by specifying them in the map (or null to unset). Additional settings can also be set. Settings will be cleared after the plan has finished. If not specified, no settings will be applied. NOTE: These settings are only explicitly cleared for 5.x+ clusters, they must be hand-reset to their defaults in 2.x- (or a cluster reboot will clear them).

                      • indices.store.throttle.max_bytes_per_sec: 120Mb
                      • indices.recovery.max_bytes_per_sec: 120Mb
                      • cluster.routing.allocation.cluster_concurrent_rebalance: 5
                      • cluster.routing.allocation.node_initial_primaries_recoveries: 5
                      • cluster.routing.allocation.node_concurrent_incoming_recoveries: 5 For version 8.1 and later no defaults are provided through this mechanism, but instead hardware dependent settings are provided to each instance.

                      Additional properties are allowed.

                  • Enable autoscaling for this Elasticsearch cluster.

                • plan_attempt_log array[object] Required
                  Hide plan_attempt_log attributes Show plan_attempt_log attributes object
                  • step_id string Required

                    ID of current step

                  • started string(date-time) Required

                    When the step started (ISO format in UTC)

                  • completed string(date-time)

                    When the step completed (ISO format in UTC)

                  • duration_in_millis integer(int64)

                    The duration of the step in MS

                  • status string Required

                    The status of the step (success, warning, error - warning means something didn't go as expected but it was not serious enough to abort the plan)

                    Values are success, warning, error, or pending.

                  • stage string Required

                    Current stage that the step is in

                    Values are starting, completed, or in_progress.

                  • info_log array[object] Required

                    Human readable summaries of the step, including messages for each stage of the step

                    Hide info_log attributes Show info_log attributes object
                    • timestamp string(date-time) Required

                      Timestamp marking on info log of step

                    • delta_in_millis integer(int64)

                      Time in milliseconds since previous log message

                    • stage string Required

                      Stage that info log message takes place in

                      Values are starting, completed, or in_progress.

                    • message string Required

                      Human readable log message

                    • details object Required

                      A map with details for the log about what happened during the step execution. Keys and values for are always both strings, representing the name of the detail and its value, respectively.

                      Hide details attribute Show details attribute object
                      • * string Additional properties
                    • A json object with sensitive details for the log, visible only to admins. May contain nested json objects.

                      Hide internal_details attribute Show internal_details attribute object
                      • * string Additional properties
                    • The failure type, in case the step failed

                • source object

                  Information describing the source that facilitated the plans current state

                  Additional properties are allowed.

                  Hide source attributes Show source attributes object
                  • facilitator string Required

                    The service where the change originated from

                  • action string Required

                    The type of plan change that was initiated

                  • date string(date-time) Required

                    The time the change was initiated

                  • user_id string

                    The user that requested the change

                  • admin_id string

                    The admin user that requested the change

                  • remote_addresses array[string]

                    The host addresses of the user that originated the change

                • warnings array[object] Required
                  Hide warnings attributes Show warnings attributes object
                  • code string Required

                    A unique warning code

                  • message string Required

                    A description of the warning

                  • step_id string

                    The ID of the step which produced a warning, if any

                • error object

                  Information about an error during a plan attempt.

                  Additional properties are allowed.

                  Hide error attributes Show error attributes object
                  • timestamp string(date-time) Required

                    Timestamp marking on info log of step

                  • message string Required

                    Human readable error message

                  • details object Required

                    A map with details regarding the error. Both the keys and values are always strings, representing the name of the detail and its value, respectively.

                    Hide details attribute Show details attribute object
                    • * string Additional properties
                  • The failure type

              • history array[object] Required
                Hide history attributes Show history attributes object
                • A UUID for each plan attempt

                • A human readable name for each plan attempt, only populated when retrieving plan histories

                • healthy boolean Required

                  Either the plan ended successfully, or is not yet completed (and no errors have occurred)

                • attempt_start_time string(date-time)

                  When this plan attempt (ie to apply the plan to the cluster) started (ISO format in UTC)

                • attempt_end_time string(date-time)

                  If this plan completed or failed (ie is not pending), when the attempt ended (ISO format in UTC)

                • plan_end_time string(date-time)

                  If this plan is not current or pending, when the plan was no longer active (ISO format in UTC)

                • plan object

                  The plan for building this Elasticsearch cluster

                  Additional properties are allowed.

                  Hide plan attributes Show plan attributes object
                  • cluster_topology array[object] Required
                    Hide cluster_topology attributes Show cluster_topology attributes object
                    • id string

                      Unique identifier of this topology element

                    • Controls the combinations of Elasticsearch node types. TIP: By default, the Elasticsearch node is master eligible, can hold data, and run ingest pipelines. WARNING: Do not set for tiebreaker topologies.

                      Additional properties are allowed.

                      Hide node_type attributes Show node_type attributes object
                      • master boolean

                        Defines whether this node can be elected master (default: false)

                      • data boolean

                        Defines whether this node can hold data (default: false)

                      • ingest boolean

                        Defines whether this node can run an ingest pipeline (default: false)

                      • ml boolean

                        Defines whether this node can run ml jobs, valid only for versions 5.4.0 or greater (default: false)

                    • node_roles array[string]

                      The list of node roles for this topology element (ES version >= 7.10). Allowable values are: master, ingest, ml, data_hot, data_content, data_warm, data_cold, data_frozen, remote_cluster_client, transform

                      Values are master, ingest, ml, data_hot, data_content, data_warm, data_cold, data_frozen, remote_cluster_client, or transform.

                    • memory_per_node integer(int32)

                      The memory capacity in MB for each node of this type built in each zone.

                    • node_count_per_zone integer(int32)

                      The number of nodes of this type that are allocated within each zone. (i.e. total capacity per zone = node_count_per_zone * memory_per_node in MB). Cannot be set for tiebreaker topologies. For dedicated master nodes, must be 1 if an entry exists.

                    • zone_count integer(int32)

                      The default number of zones in which data nodes will be placed

                    • The Elasticsearch cluster settings. When specified at the top level, provides a field-by-field default. When specified at the topology level, provides the override settings.

                      Additional properties are allowed.

                      Hide elasticsearch attributes Show elasticsearch attributes object
                      • version string

                        The version of the Elasticsearch cluster (must be one of the ECE supported versions). Currently cannot be different across the topology (and is generally specified in the globals). Defaults to the latest version if not specified.

                      • A docker URI that allows overriding of the default docker image specified for this version

                      • A subset of Elasticsearch settings. TIP: To define the complete set of Elasticsearch settings, use ElasticsearchSystemSettings with user_settings_override* and user_settings*.

                        Additional properties are allowed.

                        Hide system_settings attributes Show system_settings attributes object
                        • Controls the languages supported by the Elasticsearch cluster, such as Painless, Mustache, and Expressions. Controls how the languages are used, such as file, index, and inline. TIP: For complex configurations, leave these blank and configure these settings in the user YAML or JSON.

                          Additional properties are allowed.

                          Hide scripting attributes Show scripting attributes object
                          • (5.x+ only) If enabled (the default) then the painless scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.painless.[file|stored|inline]')

                          • (5.x+ only) If enabled (the default) then the mustache scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.mustache.[file|stored|inline]')

                          • (5.x+ only) If enabled (the default) then the expressions scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.expression.[file|stored|inline]')

                          • stored object

                            Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                            Additional properties are allowed.

                            Hide stored attributes Show stored attributes object
                            • enabled boolean

                              If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                            • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                          • file object

                            Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                            Additional properties are allowed.

                            Hide file attributes Show file attributes object
                            • enabled boolean

                              If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                            • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                          • inline object

                            Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                            Additional properties are allowed.

                            Hide inline attributes Show inline attributes object
                            • enabled boolean

                              If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                            • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                        • reindex_whitelist array[string]

                          Limits remote Elasticsearch clusters that can be used as the source for '_reindex' API commands

                        • If true (the default), then any write operation on an index that does not currently exist will create it. NOTES: (Corresponds to the parameter 'action.auto_create_index')

                        • Defaults to false on versions <= 7.2.0, true otherwise. If false, then the API commands to close indices are disabled. This is important because Elasticsearch does not snapshot or migrate close indices on versions under 7.2.0, therefore standard Elastic Cloud configuration operations will cause irretrievable loss of indices' data. NOTES: (Corresponds to the parameter 'cluster.indices.close.enable')

                        • If true (default is false) then the index deletion API will not support wildcards or '_all'. NOTES: (Corresponds to the parameter 'action.destructive_requires_name')

                        • The trigger engine for Watcher, defaults to 'scheduler' - see the xpack documentation for more information. NOTES: (Corresponds to the parameter '(xpack.)watcher.trigger.schedule.engine', depending on version. Ignored from 6.x onwards.)

                        • (2.x only - to get the same result in 5.x template mappings must be used) Sets the default number of shards per index, defaulting to 1 if not specified. (Corresponds to the parameter 'index.number_of_shards' in 2.x, not supported in 5.x)

                        • The default interval at which monitoring information from the cluster if collected, if monitoring is enabled. NOTES: (Corresponds to the parameter 'marvel.agent.interval' in 2.x and 'xpack.monitoring.collection.interval' in 5.x)

                        • The duration for which monitoring history is stored (format '(NUMBER)d' eg '3d' for 3 days). NOTES: ('Corresponds to the parameter xpack.monitoring.history.duration' in 5.x, defaults to '7d')

                      • An arbitrary JSON object allowing cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters arey are on the allowlist and not on the denylist. NOTES: (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Elasticsearch settings)

                        Additional properties are allowed.

                      • An arbitrary YAML object allowing cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters arey are on the allowlist and not on the denylist. NOTES: (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Elasticsearch settings)

                      • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. NOTES: (This field together with 'system_settings' and 'user_settings*' defines the total set of Elasticsearch settings)

                        Additional properties are allowed.

                      • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. NOTES: (This field together with 'system_settings' and 'user_settings*' defines the total set of Elasticsearch settings)

                      • A list of plugin names from the Elastic-supported subset that are bundled with the version images. NOTES: (Users should consult the Elastic stack objects to see what plugins are available, this is currently only available from the UI)

                      • user_plugins array[object]

                        A list of admin-uploaded plugin objects that are available for this user.

                        Hide user_plugins attributes Show user_plugins attributes object
                        • name string Required

                          The name of the plugin

                        • url string Required

                          The URL of the plugin (must be accessible from the ECE infrastructure)

                        • elasticsearch_version string Required

                          The supported Elasticsearch version (must match the version in the plan)

                      • user_bundles array[object]

                        A list of admin-uploaded bundle objects (eg scripts, synonym files) that are available for this user.

                        Hide user_bundles attributes Show user_bundles attributes object
                        • name string Required

                          The name of the bundle

                        • url string Required

                          The URL of the bundle, which must be accessible from the ECE infrastructure. This URL could be cached by platform, make sure to change it when updating the bundle

                        • elasticsearch_version string Required

                          The supported Elasticsearch version (must match the version in the plan)

                      • curation object

                        Defines the index curation routing for the cluster

                        Additional properties are allowed.

                        Hide curation attributes Show curation attributes object
                      • Defines the Elasticsearch node attributes for the instances in the topology

                        Hide node_attributes attribute Show node_attributes attribute object
                        • * string Additional properties
                    • Controls the allocation of this topology element as well as allowed sizes and node_types. It needs to match the id of an existing instance configuration.

                    • The version of the Instance Configuration Id. If it is unset, the meaning depends on read vs writes. For deployment reads, it is equivalent to version 0 (or the IC is unversioned); for deployment creates and deployment template use, it is equivalent to 'the latest version'; and for deployment updates, it is equivalent to 'retain the current version'.

                    • size object

                      Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                      Additional properties are allowed.

                      Hide size attributes Show size attributes object
                      • value integer(int32) Required

                        Amount of resource

                      • resource string Required

                        Type of resource

                        Values are memory or storage.

                    • Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                      Additional properties are allowed.

                      Hide autoscaling_min attributes Show autoscaling_min attributes object
                      • value integer(int32) Required

                        Amount of resource

                      • resource string Required

                        Type of resource

                        Values are memory or storage.

                    • Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                      Additional properties are allowed.

                      Hide autoscaling_max attributes Show autoscaling_max attributes object
                      • value integer(int32) Required

                        Amount of resource

                      • resource string Required

                        Type of resource

                        Values are memory or storage.

                    • An arbitrary JSON object overriding the default autoscaling policy. Don't set unless you really know what you are doing.

                      Additional properties are allowed.

                    • Controls for the topology element. Only used as part of the deployment template. Ignored if included as part of a deployment.

                      Additional properties are allowed.

                      Hide topology_element_control attribute Show topology_element_control attribute object
                      • min object Required

                        Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                        Additional properties are allowed.

                        Hide min attributes Show min attributes object
                        • value integer(int32) Required

                          Amount of resource

                        • resource string Required

                          Type of resource

                          Values are memory or storage.

                    • Set to true to enable autoscaling for this topology element, even if the cluster-level 'autoscaling_enabled' field is false. Note that 'autoscaling_tier_override' cannot be set to false if cluster-level 'autoscaling_enabled' is true. Currently only supported for the 'ml' tier

                  • elasticsearch object Required

                    The Elasticsearch cluster settings. When specified at the top level, provides a field-by-field default. When specified at the topology level, provides the override settings.

                    Additional properties are allowed.

                    Hide elasticsearch attributes Show elasticsearch attributes object
                    • version string

                      The version of the Elasticsearch cluster (must be one of the ECE supported versions). Currently cannot be different across the topology (and is generally specified in the globals). Defaults to the latest version if not specified.

                    • A docker URI that allows overriding of the default docker image specified for this version

                    • A subset of Elasticsearch settings. TIP: To define the complete set of Elasticsearch settings, use ElasticsearchSystemSettings with user_settings_override* and user_settings*.

                      Additional properties are allowed.

                      Hide system_settings attributes Show system_settings attributes object
                      • Controls the languages supported by the Elasticsearch cluster, such as Painless, Mustache, and Expressions. Controls how the languages are used, such as file, index, and inline. TIP: For complex configurations, leave these blank and configure these settings in the user YAML or JSON.

                        Additional properties are allowed.

                        Hide scripting attributes Show scripting attributes object
                        • (5.x+ only) If enabled (the default) then the painless scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.painless.[file|stored|inline]')

                        • (5.x+ only) If enabled (the default) then the mustache scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.mustache.[file|stored|inline]')

                        • (5.x+ only) If enabled (the default) then the expressions scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.expression.[file|stored|inline]')

                        • stored object

                          Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                          Additional properties are allowed.

                          Hide stored attributes Show stored attributes object
                          • enabled boolean

                            If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                          • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                        • file object

                          Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                          Additional properties are allowed.

                          Hide file attributes Show file attributes object
                          • enabled boolean

                            If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                          • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                        • inline object

                          Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                          Additional properties are allowed.

                          Hide inline attributes Show inline attributes object
                          • enabled boolean

                            If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                          • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                      • reindex_whitelist array[string]

                        Limits remote Elasticsearch clusters that can be used as the source for '_reindex' API commands

                      • If true (the default), then any write operation on an index that does not currently exist will create it. NOTES: (Corresponds to the parameter 'action.auto_create_index')

                      • Defaults to false on versions <= 7.2.0, true otherwise. If false, then the API commands to close indices are disabled. This is important because Elasticsearch does not snapshot or migrate close indices on versions under 7.2.0, therefore standard Elastic Cloud configuration operations will cause irretrievable loss of indices' data. NOTES: (Corresponds to the parameter 'cluster.indices.close.enable')

                      • If true (default is false) then the index deletion API will not support wildcards or '_all'. NOTES: (Corresponds to the parameter 'action.destructive_requires_name')

                      • The trigger engine for Watcher, defaults to 'scheduler' - see the xpack documentation for more information. NOTES: (Corresponds to the parameter '(xpack.)watcher.trigger.schedule.engine', depending on version. Ignored from 6.x onwards.)

                      • (2.x only - to get the same result in 5.x template mappings must be used) Sets the default number of shards per index, defaulting to 1 if not specified. (Corresponds to the parameter 'index.number_of_shards' in 2.x, not supported in 5.x)

                      • The default interval at which monitoring information from the cluster if collected, if monitoring is enabled. NOTES: (Corresponds to the parameter 'marvel.agent.interval' in 2.x and 'xpack.monitoring.collection.interval' in 5.x)

                      • The duration for which monitoring history is stored (format '(NUMBER)d' eg '3d' for 3 days). NOTES: ('Corresponds to the parameter xpack.monitoring.history.duration' in 5.x, defaults to '7d')

                    • An arbitrary JSON object allowing cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters arey are on the allowlist and not on the denylist. NOTES: (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Elasticsearch settings)

                      Additional properties are allowed.

                    • An arbitrary YAML object allowing cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters arey are on the allowlist and not on the denylist. NOTES: (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Elasticsearch settings)

                    • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. NOTES: (This field together with 'system_settings' and 'user_settings*' defines the total set of Elasticsearch settings)

                      Additional properties are allowed.

                    • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. NOTES: (This field together with 'system_settings' and 'user_settings*' defines the total set of Elasticsearch settings)

                    • A list of plugin names from the Elastic-supported subset that are bundled with the version images. NOTES: (Users should consult the Elastic stack objects to see what plugins are available, this is currently only available from the UI)

                    • user_plugins array[object]

                      A list of admin-uploaded plugin objects that are available for this user.

                      Hide user_plugins attributes Show user_plugins attributes object
                      • name string Required

                        The name of the plugin

                      • url string Required

                        The URL of the plugin (must be accessible from the ECE infrastructure)

                      • elasticsearch_version string Required

                        The supported Elasticsearch version (must match the version in the plan)

                    • user_bundles array[object]

                      A list of admin-uploaded bundle objects (eg scripts, synonym files) that are available for this user.

                      Hide user_bundles attributes Show user_bundles attributes object
                      • name string Required

                        The name of the bundle

                      • url string Required

                        The URL of the bundle, which must be accessible from the ECE infrastructure. This URL could be cached by platform, make sure to change it when updating the bundle

                      • elasticsearch_version string Required

                        The supported Elasticsearch version (must match the version in the plan)

                    • curation object

                      Defines the index curation routing for the cluster

                      Additional properties are allowed.

                      Hide curation attributes Show curation attributes object
                    • Defines the Elasticsearch node attributes for the instances in the topology

                      Hide node_attributes attribute Show node_attributes attribute object
                      • * string Additional properties
                  • Documents which deployment template was used in the creation of this plan

                    Additional properties are allowed.

                    Hide deployment_template attributes Show deployment_template attributes object
                    • id string Required

                      The unique identifier of the deployment template

                    • version string

                      A version identifier to disambiguate multiple revisions of the same template

                  • Defines the configuration parameters that control how the plan is applied. For example, the Elasticsearch cluster topology and Elasticsearch settings.

                    Additional properties are allowed.

                    Hide transient attributes Show transient attributes object
                    • strategy object

                      The options for performing a plan change. Specify only one property each time. The default is grow_and_shrink.

                      Additional properties are allowed.

                      Hide strategy attributes Show strategy attributes object
                      • rolling object

                        Performs inline, rolling configuration changes that mutate existing containers. TIP: This is the fastest way to update a plan, but can fail for complex plan changes, such as topology changes. Also, this is less safe for configuration changes that leave a cluster in a non running state. NOTE: When you perform a major version upgrade, and 'group_by' is set to 'pass:macros[all]';, rolling is required.

                        Additional properties are allowed.

                        Hide rolling attributes Show rolling attributes object
                        • group_by string

                          Specifies the grouping attribute to use when rolling several instances. Instances that share the same value for the provided attribute key are rolled together as a unit. Examples that make sense to use are '__all__' (roll all instances as a single unit), 'logical_zone_name' (roll instances by zone), '__name__' (roll one instance at a time, the default if not specified). Note that '__all__' is required when performing a major version upgrade

                        • Whether we allow changing the capacity of instances (default false). This is currently implemented by stopping, re-creating then starting the affected instance on its associated allocator when performing the changes. NOTES: This requires a round-trip through the allocation infrastructure of the active constructor, as it has to reserve the target capacity without over-committing

                        • Whether to skip attempting to do a synced flush on the filesystem of the container (default: false), which is less safe but may be required if the container is unhealthy

                        • shard_init_wait_time integer(int64)

                          The time, in seconds, to wait for shards that show no progress of initializing before rolling the next group (default: 10 minutes)

                      • A strategy that creates instances with the new plan, migrates data from the old instances, then shuts down the old instances. GrowShrinkStrategyConfig is safer than 'rolling' and ensures single node availability during a plan change, but can be a lot slower on larger clusters.

                        Additional properties are allowed.

                      • A strategy that creates new Elasticsearch instances, Kibana instances, and APM Servers with the new plan, then migrates the node data to minimize the amount of spare capacity.

                        Additional properties are allowed.

                      • A strategy that lets constructor choose the most optimal way to execute the plan.

                        Additional properties are allowed.

                    • The configuration settings for the timeout and fallback parameters.

                      Additional properties are allowed.

                      Hide plan_configuration attributes Show plan_configuration attributes object
                      • timeout integer(int64)

                        The total timeout in seconds after which the plan is cancelled even if it is not complete. Defaults to 4x the max memory capacity per node (in MB). NOTES: A 3 zone cluster with 2 nodes of 2048 each would have a timeout of 4*2048=8192 seconds. Timeout does not include time required to run rollback actions.

                      • calm_wait_time integer(int64)

                        This timeout determines how long to give a cluster after it responds to API calls before performing actual operations on it. It defaults to 5s

                      • move_instances array[object]
                        Hide move_instances attributes Show move_instances attributes object
                        • from string Required

                          The instance id that is going to be moved

                        • to array[string]

                          An optional list of allocator ids to which the instance should be moved. If not specified then any available allocator can be used (including the current one if it is healthy)

                        • Tells the infrastructure that the instance should be considered as permanently down when deciding how to migrate data to new nodes. If left blank then the system will automatically decide (currently: will treat the instances as up)

                      • move_allocators array[object]
                        Hide move_allocators attributes Show move_allocators attributes object
                        • from string Required

                          The allocator id off which all instances in the cluster should be moved

                        • to array[string]

                          An optional list of allocator ids to which the instance(s) should be moved. If not specified then any available allocator can be used (including the current one if it is healthy)

                        • Tells the infrastructure that all instances on the allocator should be considered as permanently down when deciding how to migrate data to new nodes. If left blank then the system will auto-decide (currently: will treat the allocator as up)

                      • move_only boolean

                        If true (default: false) only move_instances and move_allocators instructions will be executed, all other changes will be ignored

                      • If true (default: false) does not allow re-using any existing instances currently in the cluster, ie even unchanged instances will be re-created

                      • List of allocators on which instances are placed if possible (if not possible/not specified then any available allocator with space is used)

                      • Map containing allocators tags in form of key value pairs, increasing the likelihood during move requests for allocators with matching tags, to be selected as target allocators

                        Hide preferred_allocator_tags attribute Show preferred_allocator_tags attribute object
                        • * string Additional properties
                      • If true (default: false), does not take (or require) a successful snapshot to be taken before performing any potentially destructive changes to this cluster

                      • If taking a snapshot (ie unless 'skip_snapshots': true) then will retry on failure at most this number of times (default: 5)

                      • max_snapshot_age integer(int64)

                        When you take a snapshot and 'skip_snapshots' is false, specifies the maximum age in seconds of the most recent snapshot before a new snapshot is created. Default is 300

                      • If true (default false), does not clear the maintenance flag (which prevents its API from being accessed except by the constructor) on new instances added until after a snapshot has been restored, otherwise, the maintenance flag is cleared once the new instances successfully join the new cluster

                      • Set to 'forced' to force a reboot as part of the upgrade plan. NOTES: (ie taking an existing plan and leaving it alone except for setting 'transient.plan_configuration.cluster_reboot': 'forced' will reboot the cluster)

                        Value is forced.

                      • If false (the default) then the plan will fail out if it believes the requested sequence of operations can result in data loss - this flag will override some of these restraints

                      • If true (default: false) then the plan will not wait for data to be migrated from old instances to new instances before continuing the plan (potentially deleting the old instances and losing data)

                      • If false, the cluster is checked for issues that should be resolved before migration (eg contains old Lucene segments), if true this is bypassed

                      • If false (the default), the cluster will run (currently) 2.x->5.x operations for any plan change ending with a 5.x cluster (eg apply a cluster license, ensure Monitoring is configured)

                      • If false (the default), the cluster will perform a snapshot after a major version upgrade takes place

                    • Restores a snapshot from a local or remote repository.

                      Additional properties are allowed.

                      Hide restore_snapshot attributes Show restore_snapshot attributes object
                      • If specified, contains the name of the snapshot repository - else will default to the Elastic Cloud system repo ('found-snapshots')

                      • snapshot_name string Required

                        The name of the snapshot to restore. Use '__latest_success__' to get the most recent snapshot from the specified repository

                      • Raw remote snapshot restore settings. Do not send this if you are sending source_cluster_id

                        Additional properties are allowed.

                        Hide repository_config attribute Show repository_config attribute object
                        • The remote snapshot settings raw JSON - see the Elasticsearch '_snapshot' documentation for more details on supported formats

                          Additional properties are allowed.

                      • The configuration for the restore command, such as which indices you want to restore.

                        Additional properties are allowed.

                        Hide restore_payload attributes Show restore_payload attributes object
                        • indices array[string]

                          The list of indices to restore (supports +ve and -ve selection and wildcarding - see the default Elasticsearch index format documentation)

                        • This JSON object (merged with the 'indices' field (if present) is passed untouched into the restore command - see the Elasticsearch '_snapshot' documentation for more details on supported formats

                          Additional properties are allowed.

                      • strategy string

                        The restore strategy to use. Defaults to a full restore. Partial restore will attempt to restore unavailable indices only

                        Values are partial, full, or recovery.

                      • If specified, contains the name of the source cluster id. Do not send this if you are sending repository_config

                    • The list of resources that will be configured as remote clusters

                      Additional properties are allowed.

                      Hide remote_clusters attribute Show remote_clusters attribute object
                      • resources array[object] Required

                        The remote resources

                        Hide resources attributes Show resources attributes object
                        • deployment_id string Required

                          The id of the deployment

                        • elasticsearch_ref_id string Required

                          The locally-unique user-specified id of an Elasticsearch Resource

                        • alias string Required

                          The alias for this remote cluster. Aliases must only contain letters, digits, dashes and underscores

                        • If true, skip this cluster during search if it is disconnected. Default: false

                        • info object

                          Information about a Remote Cluster.

                          Additional properties are allowed.

                          Hide info attributes Show info attributes object
                          • healthy boolean Required

                            Whether or not the remote cluster is healthy

                          • connected boolean Required

                            Whether or not there is at least one connection to the remote cluster.

                          • compatible boolean Required

                            Whether or not the remote cluster version is compatible with this cluster version.

                          • trusted boolean Required

                            Whether or not the remote cluster is trusted by this cluster.

                          • trusted_back boolean Required

                            Whether or not the remote cluster trusts this cluster back.

                    • If specified, contains transient settings to be applied to an Elasticsearch cluster during changes,default values shown below applied. These can be overridden by specifying them in the map (or null to unset). Additional settings can also be set. Settings will be cleared after the plan has finished. If not specified, no settings will be applied. NOTE: These settings are only explicitly cleared for 5.x+ clusters, they must be hand-reset to their defaults in 2.x- (or a cluster reboot will clear them).

                      • indices.store.throttle.max_bytes_per_sec: 120Mb
                      • indices.recovery.max_bytes_per_sec: 120Mb
                      • cluster.routing.allocation.cluster_concurrent_rebalance: 5
                      • cluster.routing.allocation.node_initial_primaries_recoveries: 5
                      • cluster.routing.allocation.node_concurrent_incoming_recoveries: 5 For version 8.1 and later no defaults are provided through this mechanism, but instead hardware dependent settings are provided to each instance.

                      Additional properties are allowed.

                  • Enable autoscaling for this Elasticsearch cluster.

                • plan_attempt_log array[object] Required
                  Hide plan_attempt_log attributes Show plan_attempt_log attributes object
                  • step_id string Required

                    ID of current step

                  • started string(date-time) Required

                    When the step started (ISO format in UTC)

                  • completed string(date-time)

                    When the step completed (ISO format in UTC)

                  • duration_in_millis integer(int64)

                    The duration of the step in MS

                  • status string Required

                    The status of the step (success, warning, error - warning means something didn't go as expected but it was not serious enough to abort the plan)

                    Values are success, warning, error, or pending.

                  • stage string Required

                    Current stage that the step is in

                    Values are starting, completed, or in_progress.

                  • info_log array[object] Required

                    Human readable summaries of the step, including messages for each stage of the step

                    Hide info_log attributes Show info_log attributes object
                    • timestamp string(date-time) Required

                      Timestamp marking on info log of step

                    • delta_in_millis integer(int64)

                      Time in milliseconds since previous log message

                    • stage string Required

                      Stage that info log message takes place in

                      Values are starting, completed, or in_progress.

                    • message string Required

                      Human readable log message

                    • details object Required

                      A map with details for the log about what happened during the step execution. Keys and values for are always both strings, representing the name of the detail and its value, respectively.

                      Hide details attribute Show details attribute object
                      • * string Additional properties
                    • A json object with sensitive details for the log, visible only to admins. May contain nested json objects.

                      Hide internal_details attribute Show internal_details attribute object
                      • * string Additional properties
                    • The failure type, in case the step failed

                • source object

                  Information describing the source that facilitated the plans current state

                  Additional properties are allowed.

                  Hide source attributes Show source attributes object
                  • facilitator string Required

                    The service where the change originated from

                  • action string Required

                    The type of plan change that was initiated

                  • date string(date-time) Required

                    The time the change was initiated

                  • user_id string

                    The user that requested the change

                  • admin_id string

                    The admin user that requested the change

                  • remote_addresses array[string]

                    The host addresses of the user that originated the change

                • warnings array[object] Required
                  Hide warnings attributes Show warnings attributes object
                  • code string Required

                    A unique warning code

                  • message string Required

                    A description of the warning

                  • step_id string

                    The ID of the step which produced a warning, if any

                • error object

                  Information about an error during a plan attempt.

                  Additional properties are allowed.

                  Hide error attributes Show error attributes object
                  • timestamp string(date-time) Required

                    Timestamp marking on info log of step

                  • message string Required

                    Human readable error message

                  • details object Required

                    A map with details regarding the error. Both the keys and values are always strings, representing the name of the detail and its value, respectively.

                    Hide details attribute Show details attribute object
                    • * string Additional properties
                  • The failure type

            • elasticsearch object Required

              Information about the Elasticsearch cluster.

              Additional properties are allowed.

              Hide elasticsearch attributes Show elasticsearch attributes object
              • healthy boolean Required

                Whether the Elasticsearch cluster is healthy (check the sub-objects for more details if not)

              • shard_info object Required

                > WARNING > This endpoint is deprecated and scheduled to be removed in the next major version. Use shards_status instead.

                Elasticsearch shard info

                Additional properties are allowed.

                Hide shard_info attributes Show shard_info attributes object
                • healthy boolean Required

                  Whether the shard situation is healthy (any unavailable shards is unhealthy)

                • available_shards array[object] Required
                  Hide available_shards attributes Show available_shards attributes object
                  • instance_name string Required

                    The Elastic Cloud name/id of the instance (container)

                  • shard_count integer(int32) Required

                    The number of shards of the given type (available/unavailable) on this instance

                • unavailable_shards array[object] Required
                  Hide unavailable_shards attributes Show unavailable_shards attributes object
                  • instance_name string Required

                    The Elastic Cloud name/id of the instance (container)

                  • shard_count integer(int32) Required

                    The number of shards of the given type (available/unavailable) on this instance

                • unavailable_replicas array[object] Required
                  Hide unavailable_replicas attributes Show unavailable_replicas attributes object
                  • instance_name string Required

                    The Elastic Cloud name/id of the instance (container)

                  • replica_count integer(int32) Required

                    The number of unavailable replicas on this instance

              • Shards status represented as green, yellow, or red, as returned by the Elasticsearch cluster health API

                Additional properties are allowed.

                Hide shards_status attribute Show shards_status attribute object
                • status string Required

                  Indicates the elasticsearch cluster health status as a color

                  Values are green, red, or yellow.

              • master_info object Required

                Information about the master nodes in the Elasticsearch cluster.

                Additional properties are allowed.

                Hide master_info attributes Show master_info attributes object
                • healthy boolean Required

                  Whether the master situation in the cluster is healthy (ie is the number of masters != 1), or do any instances have no master

                • masters array[object] Required
                  Hide masters attributes Show masters attributes object
                  • master_node_id string Required

                    The Elasticsearch node id of a master node

                  • The corresponding instance name of the container hosting the Elasticsearch master node, if available

                  • instances array[string] Required

                    The names of the instance/container hosting the node belong to the cluster with the given master

                • instances_with_no_master array[string] Required

                  A list of any instances with no master

              • blocking_issues object Required

                > WARNING > This endpoint is deprecated and scheduled to be removed in the next major version. Use cluster_blocking_issues instead.

                cluster-wide and/or index blocks

                Additional properties are allowed.

                Hide blocking_issues attributes Show blocking_issues attributes object
                • healthy boolean Required

                  Whether the cluster has issues (false) or not (true)

                • cluster_level array[object] Required

                  A list of issues that affect availability of entire cluster

                  Hide cluster_level attributes Show cluster_level attributes object
                  • description string Required

                    Description of the issue

                  • instances array[string] Required

                    A list of instances that are affected by the issue