Move clusters by type

POST /platform/infrastructure/allocators/{allocator_id}/clusters/{cluster_type}/_move

Moves the clusters, by type, to a different allocator.

Path parameters

  • allocator_id string Required

    The allocator identifier.

  • cluster_type string Required

    The cluster types to move off of the allocator. NOTE: When unspecified, all clusters are moved.

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

Query parameters

  • When true, cancels and overwrites pending plans, or treats instance as an error

    Default value is false.

  • move_only boolean

    When true, bypasses the cluster state changes, but continues to move the specified instances

    Default value is true.

  • force_move boolean

    When true, execute a primitive vacate by moving data at file-system level, and recreating instances on the target allocator(s).

    Default value is false.

  • When true, considers all instances on the allocator as permanently shut down when deciding how to migrate data to new nodes.When left blank, the system automatically decides. NOTE: The default treats the allocator as up.

  • When true, validates the plan overrides, then returns the plan without performing the move.

    Default value is false.

Body

Overrides defaults for the move of each cluster

  • Optional list of Elasticsearch clusters to move off the allocator.

    Hide elasticsearch_clusters attributes Show elasticsearch_clusters attributes object
    • cluster_ids array[string] Required

      Identifiers for the Elasticsearch clusters.

    • 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 plan_override attributes Show plan_override 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

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

  • kibana_clusters array[object]

    Optional list of Kibana clusters to move off the allocator.

    Hide kibana_clusters attributes Show kibana_clusters attributes object
    • cluster_ids array[string] Required

      Identifiers for the Kibana clusters.

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

      Additional properties are allowed.

      Hide plan_override attributes Show plan_override 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)

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

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

          Value is forced.

        • If false (the default), the plan fails if it determines that the request can result in unsafe operations. Setting this flag overrides some of these check restraints.

  • apm_clusters array[object]

    Optional list of Apm clusters to move off the allocator.

    Hide apm_clusters attributes Show apm_clusters attributes object
    • cluster_ids array[string] Required

      Identifiers for the Apm clusters.

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

      Additional properties are allowed.

      Hide plan_override attributes Show plan_override 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 plan control configuration options for the APM Server.

        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)

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

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

          Value is forced.

        • If false (the default), the plan fails if it determines that the request can result in unsafe operations. Setting this flag overrides some of these check restraints.

  • appsearch_clusters array[object]

    Optional list of App Search clusters to move off the allocator.

    Hide appsearch_clusters attributes Show appsearch_clusters attributes object
    • cluster_ids array[string] Required

      Identifiers for the App Searches.

    • Defines configuration parameters that control how the plan (ie consisting of the cluster topology and AppSearch settings) is applied

      Additional properties are allowed.

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

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

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

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

          Value is forced.

        • If false (the default), the plan fails if it determines that the request can result in unsafe operations. Setting this flag overrides some of these check restraints.

  • Optional list of Elastic Enterprise Search clusters to move off the allocator.

    Hide enterprise_search_clusters attributes Show enterprise_search_clusters attributes object
    • cluster_ids array[string] Required

      Identifiers for the Elastic Enterprise Search clusters.

    • Defines configuration parameters that control how the plan (i.e. consisting of the cluster topology and Enterprise Search settings) is applied

      Additional properties are allowed.

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

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

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

        • If true (default: false) does not allow re-using any existing instances currently in the cluster, i.e. 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 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

          Value is forced.

        • If false (the default), the plan fails if it determines that the request can result in unsafe operations. Setting this flag overrides some of these check restraints.

Responses

  • The move command was issued successfully, use the "GET" command on each /{cluster_id} resource to monitor progress

    Hide response attributes Show response attributes object
    • failures object Required

      Detailed information about the clusters that failed to move.

      Additional properties are allowed.

      Hide failures attributes Show failures attributes object
      • elasticsearch_clusters array[object] Required

        Detailed information about the Elasticsearch clusters being moved.

        Hide elasticsearch_clusters attributes Show elasticsearch_clusters attributes object
        • cluster_id string Required

          Identifier for the Elasticsearch cluster.

        • 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 calculated_plan attributes Show calculated_plan 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.

        • errors array[object]

          A list of errors that occurred if the attempt to move the cluster failed.

          Hide errors attributes Show errors attributes object
          • code string Required

            A structured code representing the error type that occurred

          • message string Required

            A human readable message describing the error that occurred

          • fields array[string]

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

      • kibana_clusters array[object] Required

        Detailed information about the Kibana clusters being moved.

        Hide kibana_clusters attributes Show kibana_clusters attributes object
        • cluster_id string Required

          Identifier for the Kibana cluster.

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

          Additional properties are allowed.

          Hide calculated_plan attributes Show calculated_plan 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)

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

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

              Value is forced.

            • If false (the default), the plan fails if it determines that the request can result in unsafe operations. Setting this flag overrides some of these check restraints.

        • errors array[object]

          A list of errors that occurred if the attempt to move the cluster failed.

          Hide errors attributes Show errors attributes object
          • code string Required

            A structured code representing the error type that occurred

          • message string Required

            A human readable message describing the error that occurred

          • fields array[string]

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

      • apm_clusters array[object] Required

        Detailed information about the Apm clusters being moved.

        Hide apm_clusters attributes Show apm_clusters attributes object
        • cluster_id string Required

          Identifier for the Apm cluster.

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

          Additional properties are allowed.

          Hide calculated_plan attributes Show calculated_plan 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 plan control configuration options for the APM Server.

            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)

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

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

              Value is forced.

            • If false (the default), the plan fails if it determines that the request can result in unsafe operations. Setting this flag overrides some of these check restraints.

        • errors array[object]

          A list of errors that occurred if the attempt to move the cluster failed.

          Hide errors attributes Show errors attributes object
          • code string Required

            A structured code representing the error type that occurred

          • message string Required

            A human readable message describing the error that occurred

          • fields array[string]

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

      • appsearch_clusters array[object] Required

        Detailed information about the App Search clusters being moved.

        Hide appsearch_clusters attributes Show appsearch_clusters attributes object
        • cluster_id string Required

          Identifier for the App Search.

        • Defines configuration parameters that control how the plan (ie consisting of the cluster topology and AppSearch settings) is applied

          Additional properties are allowed.

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

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

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

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

              Value is forced.

            • If false (the default), the plan fails if it determines that the request can result in unsafe operations. Setting this flag overrides some of these check restraints.

        • errors array[object]

          A list of errors that occurred if the attempt to move the cluster failed.

          Hide errors attributes Show errors attributes object
          • code string Required

            A structured code representing the error type that occurred

          • message string Required

            A human readable message describing the error that occurred

          • fields array[string]

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

      • enterprise_search_clusters array[object] Required

        Detailed information about the Elastic Enterprise Search clusters being moved.

        Hide enterprise_search_clusters attributes Show enterprise_search_clusters attributes object
        • cluster_id string Required

          Identifier for the Elastic Enterprise Search.

        • Defines configuration parameters that control how the plan (i.e. consisting of the cluster topology and Enterprise Search settings) is applied

          Additional properties are allowed.

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

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

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

            • If true (default: false) does not allow re-using any existing instances currently in the cluster, i.e. 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 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

              Value is forced.

            • If false (the default), the plan fails if it determines that the request can result in unsafe operations. Setting this flag overrides some of these check restraints.

        • errors array[object]

          A list of errors that occurred if the attempt to move the cluster failed.

          Hide errors attributes Show errors attributes object
          • code string Required

            A structured code representing the error type that occurred

          • message string Required

            A human readable message describing the error that occurred

          • fields array[string]

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

    • moves object Required

      Detailed information about the clusters that failed to move.

      Additional properties are allowed.

      Hide moves attributes Show moves attributes object
      • elasticsearch_clusters array[object] Required

        Detailed information about the Elasticsearch clusters being moved.

        Hide elasticsearch_clusters attributes Show elasticsearch_clusters attributes object
        • cluster_id string Required

          Identifier for the Elasticsearch cluster.

        • 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 calculated_plan attributes Show calculated_plan 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.

        • errors array[object]

          A list of errors that occurred if the attempt to move the cluster failed.

          Hide errors attributes Show errors attributes object
          • code string Required

            A structured code representing the error type that occurred

          • message string Required

            A human readable message describing the error that occurred

          • fields array[string]

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

      • kibana_clusters array[object] Required

        Detailed information about the Kibana clusters being moved.

        Hide kibana_clusters attributes Show kibana_clusters attributes object
        • cluster_id string Required

          Identifier for the Kibana cluster.

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

          Additional properties are allowed.

          Hide calculated_plan attributes Show calculated_plan 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)

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

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

              Value is forced.

            • If false (the default), the plan fails if it determines that the request can result in unsafe operations. Setting this flag overrides some of these check restraints.

        • errors array[object]

          A list of errors that occurred if the attempt to move the cluster failed.

          Hide errors attributes Show errors attributes object
          • code string Required

            A structured code representing the error type that occurred

          • message string Required

            A human readable message describing the error that occurred

          • fields array[string]

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

      • apm_clusters array[object] Required

        Detailed information about the Apm clusters being moved.

        Hide apm_clusters attributes Show apm_clusters attributes object
        • cluster_id string Required

          Identifier for the Apm cluster.

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

          Additional properties are allowed.

          Hide calculated_plan attributes Show calculated_plan 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 plan control configuration options for the APM Server.

            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)

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

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

              Value is forced.

            • If false (the default), the plan fails if it determines that the request can result in unsafe operations. Setting this flag overrides some of these check restraints.

        • errors array[object]

          A list of errors that occurred if the attempt to move the cluster failed.

          Hide errors attributes Show errors attributes object
          • code string Required

            A structured code representing the error type that occurred

          • message string Required

            A human readable message describing the error that occurred

          • fields array[string]

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

      • appsearch_clusters array[object] Required

        Detailed information about the App Search clusters being moved.

        Hide appsearch_clusters attributes Show appsearch_clusters attributes object
        • cluster_id string Required

          Identifier for the App Search.

        • Defines configuration parameters that control how the plan (ie consisting of the cluster topology and AppSearch settings) is applied

          Additional properties are allowed.

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

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

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

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

              Value is forced.

            • If false (the default), the plan fails if it determines that the request can result in unsafe operations. Setting this flag overrides some of these check restraints.

        • errors array[object]

          A list of errors that occurred if the attempt to move the cluster failed.

          Hide errors attributes Show errors attributes object
          • code string Required

            A structured code representing the error type that occurred

          • message string Required

            A human readable message describing the error that occurred

          • fields array[string]

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

      • enterprise_search_clusters array[object] Required

        Detailed information about the Elastic Enterprise Search clusters being moved.

        Hide enterprise_search_clusters attributes Show enterprise_search_clusters attributes object
        • cluster_id string Required

          Identifier for the Elastic Enterprise Search.

        • Defines configuration parameters that control how the plan (i.e. consisting of the cluster topology and Enterprise Search settings) is applied

          Additional properties are allowed.

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

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

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

            • If true (default: false) does not allow re-using any existing instances currently in the cluster, i.e. 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 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

              Value is forced.

            • If false (the default), the plan fails if it determines that the request can result in unsafe operations. Setting this flag overrides some of these check restraints.

        • errors array[object]

          A list of errors that occurred if the attempt to move the cluster failed.

          Hide errors attributes Show errors attributes object
          • code string Required

            A structured code representing the error type that occurred

          • message string Required

            A human readable message describing the error that occurred

          • fields array[string]

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

    • The cluster definition contained errors. (code: clusters.cluster_invalid_plan)
    • The cluster definition contained errors. (code: clusters.plan_feature_not_implemented)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are clusters.cluster_invalid_plan or clusters.plan_feature_not_implemented.

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

      A list of errors that occurred in the failing request

      Hide errors attributes Show errors attributes object
      • code string Required

        A structured code representing the error type that occurred

      • message string Required

        A human readable message describing the error that occurred

      • fields array[string]

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

  • The move command was prohibited for the given cluster. (code: clusters.command_prohibited)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is clusters.command_prohibited.

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

      A list of errors that occurred in the failing request

      Hide errors attributes Show errors attributes object
      • code string Required

        A structured code representing the error type that occurred

      • message string Required

        A human readable message describing the error that occurred

      • fields array[string]

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

POST /platform/infrastructure/allocators/{allocator_id}/clusters/{cluster_type}/_move
curl \
 -X POST https://{{hostname}}/api/v1/platform/infrastructure/allocators/{allocator_id}/clusters/{cluster_type}/_move \
 -d '{"elasticsearch_clusters":[{"cluster_ids":["string"],"plan_override":{"strategy":{"rolling":{"group_by":"string","allow_inline_resize":true,"skip_synced_flush":true,"shard_init_wait_time":42},"grow_and_shrink":{},"rolling_grow_and_shrink":{},"autodetect":{}},"plan_configuration":{"timeout":42,"calm_wait_time":42,"move_instances":[{"from":"string","to":["string"],"instance_down":true}],"move_allocators":[{"from":"string","to":["string"],"allocator_down":true}],"move_only":true,"reallocate_instances":true,"preferred_allocators":["string"],"preferred_allocator_tags":{"additionalProperty1":"string","additionalProperty2":"string"},"skip_snapshot":true,"max_snapshot_attempts":42,"max_snapshot_age":42,"extended_maintenance":true,"cluster_reboot":"forced","override_failsafe":true,"skip_data_migration":true,"skip_upgrade_checker":true,"skip_post_upgrade_steps":true,"skip_snapshot_post_major_upgrade":true},"restore_snapshot":{"repository_name":"string","snapshot_name":"string","repository_config":{"raw_settings":{}},"restore_payload":{"indices":["string"],"raw_settings":{}},"strategy":"partial","source_cluster_id":"string"},"remote_clusters":{"resources":[{"deployment_id":"string","elasticsearch_ref_id":"string","alias":"string","skip_unavailable":true}]},"cluster_settings_json":{}}}],"kibana_clusters":[{"cluster_ids":["string"],"plan_override":{"strategy":{"rolling":{"group_by":"string","allow_inline_resize":true,"skip_synced_flush":true,"shard_init_wait_time":42},"grow_and_shrink":{},"rolling_grow_and_shrink":{},"autodetect":{}},"plan_configuration":{"timeout":42,"calm_wait_time":42,"move_instances":[{"from":"string","to":["string"],"instance_down":true}],"move_allocators":[{"from":"string","to":["string"],"allocator_down":true}],"reallocate_instances":true,"preferred_allocators":["string"],"preferred_allocator_tags":{"additionalProperty1":"string","additionalProperty2":"string"},"extended_maintenance":true,"cluster_reboot":"forced","override_failsafe":true}}}],"apm_clusters":[{"cluster_ids":["string"],"plan_override":{"strategy":{"rolling":{"group_by":"string","allow_inline_resize":true,"skip_synced_flush":true,"shard_init_wait_time":42},"grow_and_shrink":{},"rolling_grow_and_shrink":{},"autodetect":{}},"plan_configuration":{"timeout":42,"calm_wait_time":42,"move_instances":[{"from":"string","to":["string"],"instance_down":true}],"move_allocators":[{"from":"string","to":["string"],"allocator_down":true}],"reallocate_instances":true,"preferred_allocators":["string"],"preferred_allocator_tags":{"additionalProperty1":"string","additionalProperty2":"string"},"extended_maintenance":true,"cluster_reboot":"forced","override_failsafe":true}}}],"appsearch_clusters":[{"cluster_ids":["string"],"plan_override":{"strategy":{"rolling":{"group_by":"string","allow_inline_resize":true,"skip_synced_flush":true,"shard_init_wait_time":42},"grow_and_shrink":{},"rolling_grow_and_shrink":{},"autodetect":{}},"plan_configuration":{"timeout":42,"calm_wait_time":42,"move_instances":[{"from":"string","to":["string"],"instance_down":true}],"move_allocators":[{"from":"string","to":["string"],"allocator_down":true}],"reallocate_instances":true,"preferred_allocators":["string"],"preferred_allocator_tags":{"additionalProperty1":"string","additionalProperty2":"string"},"extended_maintenance":true,"cluster_reboot":"forced","override_failsafe":true}}}],"enterprise_search_clusters":[{"cluster_ids":["string"],"plan_override":{"strategy":{"rolling":{"group_by":"string","allow_inline_resize":true,"skip_synced_flush":true,"shard_init_wait_time":42},"grow_and_shrink":{},"rolling_grow_and_shrink":{},"autodetect":{}},"plan_configuration":{"timeout":42,"calm_wait_time":42,"move_instances":[{"from":"string","to":["string"],"instance_down":true}],"move_allocators":[{"from":"string","to":["string"],"allocator_down":true}],"reallocate_instances":true,"preferred_allocators":["string"],"preferred_allocator_tags":{"additionalProperty1":"string","additionalProperty2":"string"},"extended_maintenance":true,"cluster_reboot":"forced","override_failsafe":true}}}]}'
Request examples
{
  "elasticsearch_clusters": [
    {
      "cluster_ids": [
        "string"
      ],
      "plan_override": {
        "strategy": {
          "rolling": {
            "group_by": "string",
            "allow_inline_resize": true,
            "skip_synced_flush": true,
            "shard_init_wait_time": 42
          },
          "grow_and_shrink": {},
          "rolling_grow_and_shrink": {},
          "autodetect": {}
        },
        "plan_configuration": {
          "timeout": 42,
          "calm_wait_time": 42,
          "move_instances": [
            {
              "from": "string",
              "to": [
                "string"
              ],
              "instance_down": true
            }
          ],
          "move_allocators": [
            {
              "from": "string",
              "to": [
                "string"
              ],
              "allocator_down": true
            }
          ],
          "move_only": true,
          "reallocate_instances": true,
          "preferred_allocators": [
            "string"
          ],
          "preferred_allocator_tags": {
            "additionalProperty1": "string",
            "additionalProperty2": "string"
          },
          "skip_snapshot": true,
          "max_snapshot_attempts": 42,
          "max_snapshot_age": 42,
          "extended_maintenance": true,
          "cluster_reboot": "forced",
          "override_failsafe": true,
          "skip_data_migration": true,
          "skip_upgrade_checker": true,
          "skip_post_upgrade_steps": true,
          "skip_snapshot_post_major_upgrade": true
        },
        "restore_snapshot": {
          "repository_name": "string",
          "snapshot_name": "string",
          "repository_config": {
            "raw_settings": {}
          },
          "restore_payload": {
            "indices": [
              "string"
            ],
            "raw_settings": {}
          },
          "strategy": "partial",
          "source_cluster_id": "string"
        },
        "remote_clusters": {
          "resources": [
            {
              "deployment_id": "string",
              "elasticsearch_ref_id": "string",
              "alias": "string",
              "skip_unavailable": true
            }
          ]
        },
        "cluster_settings_json": {}
      }
    }
  ],
  "kibana_clusters": [
    {
      "cluster_ids": [
        "string"
      ],
      "plan_override": {
        "strategy": {
          "rolling": {
            "group_by": "string",
            "allow_inline_resize": true,
            "skip_synced_flush": true,
            "shard_init_wait_time": 42
          },
          "grow_and_shrink": {},
          "rolling_grow_and_shrink": {},
          "autodetect": {}
        },
        "plan_configuration": {
          "timeout": 42,
          "calm_wait_time": 42,
          "move_instances": [
            {
              "from": "string",
              "to": [
                "string"
              ],
              "instance_down": true
            }
          ],
          "move_allocators": [
            {
              "from": "string",
              "to": [
                "string"
              ],
              "allocator_down": true
            }
          ],
          "reallocate_instances": true,
          "preferred_allocators": [
            "string"
          ],
          "preferred_allocator_tags": {
            "additionalProperty1": "string",
            "additionalProperty2": "string"
          },
          "extended_maintenance": true,
          "cluster_reboot": "forced",
          "override_failsafe": true
        }
      }
    }
  ],
  "apm_clusters": [
    {
      "cluster_ids": [
        "string"
      ],
      "plan_override": {
        "strategy": {
          "rolling": {
            "group_by": "string",
            "allow_inline_resize": true,
            "skip_synced_flush": true,
            "shard_init_wait_time": 42
          },
          "grow_and_shrink": {},
          "rolling_grow_and_shrink": {},
          "autodetect": {}
        },
        "plan_configuration": {
          "timeout": 42,
          "calm_wait_time": 42,
          "move_instances": [
            {
              "from": "string",
              "to": [
                "string"
              ],
              "instance_down": true
            }
          ],
          "move_allocators": [
            {
              "from": "string",
              "to": [
                "string"
              ],
              "allocator_down": true
            }
          ],
          "reallocate_instances": true,
          "preferred_allocators": [
            "string"
          ],
          "preferred_allocator_tags": {
            "additionalProperty1": "string",
            "additionalProperty2": "string"
          },
          "extended_maintenance": true,
          "cluster_reboot": "forced",
          "override_failsafe": true
        }
      }
    }
  ],
  "appsearch_clusters": [
    {
      "cluster_ids": [
        "string"
      ],
      "plan_override": {
        "strategy": {
          "rolling": {
            "group_by": "string",
            "allow_inline_resize": true,
            "skip_synced_flush": true,
            "shard_init_wait_time": 42
          },
          "grow_and_shrink": {},
          "rolling_grow_and_shrink": {},
          "autodetect": {}
        },
        "plan_configuration": {
          "timeout": 42,
          "calm_wait_time": 42,
          "move_instances": [
            {
              "from": "string",
              "to": [
                "string"
              ],
              "instance_down": true
            }
          ],
          "move_allocators": [
            {
              "from": "string",
              "to": [
                "string"
              ],
              "allocator_down": true
            }
          ],
          "reallocate_instances": true,
          "preferred_allocators": [
            "string"
          ],
          "preferred_allocator_tags": {
            "additionalProperty1": "string",
            "additionalProperty2": "string"
          },
          "extended_maintenance": true,
          "cluster_reboot": "forced",
          "override_failsafe": true
        }
      }
    }
  ],
  "enterprise_search_clusters": [
    {
      "cluster_ids": [
        "string"
      ],
      "plan_override": {
        "strategy": {
          "rolling": {
            "group_by": "string",
            "allow_inline_resize": true,
            "skip_synced_flush": true,
            "shard_init_wait_time": 42
          },
          "grow_and_shrink": {},
          "rolling_grow_and_shrink": {},
          "autodetect": {}
        },
        "plan_configuration": {
          "timeout": 42,
          "calm_wait_time": 42,
          "move_instances": [
            {
              "from": "string",
              "to": [
                "string"
              ],
              "instance_down": true
            }
          ],
          "move_allocators": [
            {
              "from": "string",
              "to": [
                "string"
              ],
              "allocator_down": true
            }
          ],
          "reallocate_instances": true,
          "preferred_allocators": [
            "string"
          ],
          "preferred_allocator_tags": {
            "additionalProperty1": "string",
            "additionalProperty2": "string"
          },
          "extended_maintenance": true,
          "cluster_reboot": "forced",
          "override_failsafe": true
        }
      }
    }
  ]
}
Response examples (202)
{
  "failures": {
    "elasticsearch_clusters": [
      {
        "cluster_id": "string",
        "calculated_plan": {
          "strategy": {
            "rolling": {
              "group_by": "string",
              "allow_inline_resize": true,
              "skip_synced_flush": true,
              "shard_init_wait_time": 42
            },
            "grow_and_shrink": {},
            "rolling_grow_and_shrink": {},
            "autodetect": {}
          },
          "plan_configuration": {
            "timeout": 42,
            "calm_wait_time": 42,
            "move_instances": [
              {
                "from": "string",
                "to": [
                  "string"
                ],
                "instance_down": true
              }
            ],
            "move_allocators": [
              {
                "from": "string",
                "to": [
                  "string"
                ],
                "allocator_down": true
              }
            ],
            "move_only": true,
            "reallocate_instances": true,
            "preferred_allocators": [
              "string"
            ],
            "preferred_allocator_tags": {
              "additionalProperty1": "string",
              "additionalProperty2": "string"
            },
            "skip_snapshot": true,
            "max_snapshot_attempts": 42,
            "max_snapshot_age": 42,
            "extended_maintenance": true,
            "cluster_reboot": "forced",
            "override_failsafe": true,
            "skip_data_migration": true,
            "skip_upgrade_checker": true,
            "skip_post_upgrade_steps": true,
            "skip_snapshot_post_major_upgrade": true
          },
          "restore_snapshot": {
            "repository_name": "string",
            "snapshot_name": "string",
            "repository_config": {
              "raw_settings": {}
            },
            "restore_payload": {
              "indices": [
                "string"
              ],
              "raw_settings": {}
            },
            "strategy": "partial",
            "source_cluster_id": "string"
          },
          "remote_clusters": {
            "resources": [
              {
                "deployment_id": "string",
                "elasticsearch_ref_id": "string",
                "alias": "string",
                "skip_unavailable": true,
                "info": {
                  "healthy": true,
                  "connected": true,
                  "compatible": true,
                  "trusted": true,
                  "trusted_back": true
                }
              }
            ]
          },
          "cluster_settings_json": {}
        },
        "errors": [
          {
            "code": "string",
            "message": "string",
            "fields": [
              "string"
            ]
          }
        ]
      }
    ],
    "kibana_clusters": [
      {
        "cluster_id": "string",
        "calculated_plan": {
          "strategy": {
            "rolling": {
              "group_by": "string",
              "allow_inline_resize": true,
              "skip_synced_flush": true,
              "shard_init_wait_time": 42
            },
            "grow_and_shrink": {},
            "rolling_grow_and_shrink": {},
            "autodetect": {}
          },
          "plan_configuration": {
            "timeout": 42,
            "calm_wait_time": 42,
            "move_instances": [
              {
                "from": "string",
                "to": [
                  "string"
                ],
                "instance_down": true
              }
            ],
            "move_allocators": [
              {
                "from": "string",
                "to": [
                  "string"
                ],
                "allocator_down": true
              }
            ],
            "reallocate_instances": true,
            "preferred_allocators": [
              "string"
            ],
            "preferred_allocator_tags": {
              "additionalProperty1": "string",
              "additionalProperty2": "string"
            },
            "extended_maintenance": true,
            "cluster_reboot": "forced",
            "override_failsafe": true
          }
        },
        "errors": [
          {
            "code": "string",
            "message": "string",
            "fields": [
              "string"
            ]
          }
        ]
      }
    ],
    "apm_clusters": [
      {
        "cluster_id": "string",
        "calculated_plan": {
          "strategy": {
            "rolling": {
              "group_by": "string",
              "allow_inline_resize": true,
              "skip_synced_flush": true,
              "shard_init_wait_time": 42
            },
            "grow_and_shrink": {},
            "rolling_grow_and_shrink": {},
            "autodetect": {}
          },
          "plan_configuration": {
            "timeout": 42,
            "calm_wait_time": 42,
            "move_instances": [
              {
                "from": "string",
                "to": [
                  "string"
                ],
                "instance_down": true
              }
            ],
            "move_allocators": [
              {
                "from": "string",
                "to": [
                  "string"
                ],
                "allocator_down": true
              }
            ],
            "reallocate_instances": true,
            "preferred_allocators": [
              "string"
            ],
            "preferred_allocator_tags": {
              "additionalProperty1": "string",
              "additionalProperty2": "string"
            },
            "extended_maintenance": true,
            "cluster_reboot": "forced",
            "override_failsafe": true
          }
        },
        "errors": [
          {
            "code": "string",
            "message": "string",
            "fields": [
              "string"
            ]
          }
        ]
      }
    ],
    "appsearch_clusters": [
      {
        "cluster_id": "string",
        "calculated_plan": {
          "strategy": {
            "rolling": {
              "group_by": "string",
              "allow_inline_resize": true,
              "skip_synced_flush": true,
              "shard_init_wait_time": 42
            },
            "grow_and_shrink": {},
            "rolling_grow_and_shrink": {},
            "autodetect": {}
          },
          "plan_configuration": {
            "timeout": 42,
            "calm_wait_time": 42,
            "move_instances": [
              {
                "from": "string",
                "to": [
                  "string"
                ],
                "instance_down": true
              }
            ],
            "move_allocators": [
              {
                "from": "string",
                "to": [
                  "string"
                ],
                "allocator_down": true
              }
            ],
            "reallocate_instances": true,
            "preferred_allocators": [
              "string"
            ],
            "preferred_allocator_tags": {
              "additionalProperty1": "string",
              "additionalProperty2": "string"
            },
            "extended_maintenance": true,
            "cluster_reboot": "forced",
            "override_failsafe": true
          }
        },
        "errors": [
          {
            "code": "string",
            "message": "string",
            "fields": [
              "string"
            ]
          }
        ]
      }
    ],
    "enterprise_search_clusters": [
      {
        "cluster_id": "string",
        "calculated_plan": {
          "strategy": {
            "rolling": {
              "group_by": "string",
              "allow_inline_resize": true,
              "skip_synced_flush": true,
              "shard_init_wait_time": 42
            },
            "grow_and_shrink": {},
            "rolling_grow_and_shrink": {},
            "autodetect": {}
          },
          "plan_configuration": {
            "timeout": 42,
            "calm_wait_time": 42,
            "move_instances": [
              {
                "from": "string",
                "to": [
                  "string"
                ],
                "instance_down": true
              }
            ],
            "move_allocators": [
              {
                "from": "string",
                "to": [
                  "string"
                ],
                "allocator_down": true
              }
            ],
            "reallocate_instances": true,
            "preferred_allocators": [
              "string"
            ],
            "preferred_allocator_tags": {
              "additionalProperty1": "string",
              "additionalProperty2": "string"
            },
            "extended_maintenance": true,
            "cluster_reboot": "forced",
            "override_failsafe": true
          }
        },
        "errors": [
          {
            "code": "string",
            "message": "string",
            "fields": [
              "string"
            ]
          }
        ]
      }
    ]
  },
  "moves": {
    "elasticsearch_clusters": [
      {
        "cluster_id": "string",
        "calculated_plan": {
          "strategy": {
            "rolling": {
              "group_by": "string",
              "allow_inline_resize": true,
              "skip_synced_flush": true,
              "shard_init_wait_time": 42
            },
            "grow_and_shrink": {},
            "rolling_grow_and_shrink": {},
            "autodetect": {}
          },
          "plan_configuration": {
            "timeout": 42,
            "calm_wait_time": 42,
            "move_instances": [
              {
                "from": "string",
                "to": [
                  "string"
                ],
                "instance_down": true
              }
            ],
            "move_allocators": [
              {
                "from": "string",
                "to": [
                  "string"
                ],
                "allocator_down": true
              }
            ],
            "move_only": true,
            "reallocate_instances": true,
            "preferred_allocators": [
              "string"
            ],
            "preferred_allocator_tags": {
              "additionalProperty1": "string",
              "additionalProperty2": "string"
            },
            "skip_snapshot": true,
            "max_snapshot_attempts": 42,
            "max_snapshot_age": 42,
            "extended_maintenance": true,
            "cluster_reboot": "forced",
            "override_failsafe": true,
            "skip_data_migration": true,
            "skip_upgrade_checker": true,
            "skip_post_upgrade_steps": true,
            "skip_snapshot_post_major_upgrade": true
          },
          "restore_snapshot": {
            "repository_name": "string",
            "snapshot_name": "string",
            "repository_config": {
              "raw_settings": {}
            },
            "restore_payload": {
              "indices": [
                "string"
              ],
              "raw_settings": {}
            },
            "strategy": "partial",
            "source_cluster_id": "string"
          },
          "remote_clusters": {
            "resources": [
              {
                "deployment_id": "string",
                "elasticsearch_ref_id": "string",
                "alias": "string",
                "skip_unavailable": true,
                "info": {
                  "healthy": true,
                  "connected": true,
                  "compatible": true,
                  "trusted": true,
                  "trusted_back": true
                }
              }
            ]
          },
          "cluster_settings_json": {}
        },
        "errors": [
          {
            "code": "string",
            "message": "string",
            "fields": [
              "string"
            ]
          }
        ]
      }
    ],
    "kibana_clusters": [
      {
        "cluster_id": "string",
        "calculated_plan": {
          "strategy": {
            "rolling": {
              "group_by": "string",
              "allow_inline_resize": true,
              "skip_synced_flush": true,
              "shard_init_wait_time": 42
            },
            "grow_and_shrink": {},
            "rolling_grow_and_shrink": {},
            "autodetect": {}
          },
          "plan_configuration": {
            "timeout": 42,
            "calm_wait_time": 42,
            "move_instances": [
              {
                "from": "string",
                "to": [
                  "string"
                ],
                "instance_down": true
              }
            ],
            "move_allocators": [
              {
                "from": "string",
                "to": [
                  "string"
                ],
                "allocator_down": true
              }
            ],
            "reallocate_instances": true,
            "preferred_allocators": [
              "string"
            ],
            "preferred_allocator_tags": {
              "additionalProperty1": "string",
              "additionalProperty2": "string"
            },
            "extended_maintenance": true,
            "cluster_reboot": "forced",
            "override_failsafe": true
          }
        },
        "errors": [
          {
            "code": "string",
            "message": "string",
            "fields": [
              "string"
            ]
          }
        ]
      }
    ],
    "apm_clusters": [
      {
        "cluster_id": "string",
        "calculated_plan": {
          "strategy": {
            "rolling": {
              "group_by": "string",
              "allow_inline_resize": true,
              "skip_synced_flush": true,
              "shard_init_wait_time": 42
            },
            "grow_and_shrink": {},
            "rolling_grow_and_shrink": {},
            "autodetect": {}
          },
          "plan_configuration": {
            "timeout": 42,
            "calm_wait_time": 42,
            "move_instances": [
              {
                "from": "string",
                "to": [
                  "string"
                ],
                "instance_down": true
              }
            ],
            "move_allocators": [
              {
                "from": "string",
                "to": [
                  "string"
                ],
                "allocator_down": true
              }
            ],
            "reallocate_instances": true,
            "preferred_allocators": [
              "string"
            ],
            "preferred_allocator_tags": {
              "additionalProperty1": "string",
              "additionalProperty2": "string"
            },
            "extended_maintenance": true,
            "cluster_reboot": "forced",
            "override_failsafe": true
          }
        },
        "errors": [
          {
            "code": "string",
            "message": "string",
            "fields": [
              "string"
            ]
          }
        ]
      }
    ],
    "appsearch_clusters": [
      {
        "cluster_id": "string",
        "calculated_plan": {
          "strategy": {
            "rolling": {
              "group_by": "string",
              "allow_inline_resize": true,
              "skip_synced_flush": true,
              "shard_init_wait_time": 42
            },
            "grow_and_shrink": {},
            "rolling_grow_and_shrink": {},
            "autodetect": {}
          },
          "plan_configuration": {
            "timeout": 42,
            "calm_wait_time": 42,
            "move_instances": [
              {
                "from": "string",
                "to": [
                  "string"
                ],
                "instance_down": true
              }
            ],
            "move_allocators": [
              {
                "from": "string",
                "to": [
                  "string"
                ],
                "allocator_down": true
              }
            ],
            "reallocate_instances": true,
            "preferred_allocators": [
              "string"
            ],
            "preferred_allocator_tags": {
              "additionalProperty1": "string",
              "additionalProperty2": "string"
            },
            "extended_maintenance": true,
            "cluster_reboot": "forced",
            "override_failsafe": true
          }
        },
        "errors": [
          {
            "code": "string",
            "message": "string",
            "fields": [
              "string"
            ]
          }
        ]
      }
    ],
    "enterprise_search_clusters": [
      {
        "cluster_id": "string",
        "calculated_plan": {
          "strategy": {
            "rolling": {
              "group_by": "string",
              "allow_inline_resize": true,
              "skip_synced_flush": true,
              "shard_init_wait_time": 42
            },
            "grow_and_shrink": {},
            "rolling_grow_and_shrink": {},
            "autodetect": {}
          },
          "plan_configuration": {
            "timeout": 42,
            "calm_wait_time": 42,
            "move_instances": [
              {
                "from": "string",
                "to": [
                  "string"
                ],
                "instance_down": true
              }
            ],
            "move_allocators": [
              {
                "from": "string",
                "to": [
                  "string"
                ],
                "allocator_down": true
              }
            ],
            "reallocate_instances": true,
            "preferred_allocators": [
              "string"
            ],
            "preferred_allocator_tags": {
              "additionalProperty1": "string",
              "additionalProperty2": "string"
            },
            "extended_maintenance": true,
            "cluster_reboot": "forced",
            "override_failsafe": true
          }
        },
        "errors": [
          {
            "code": "string",
            "message": "string",
            "fields": [
              "string"
            ]
          }
        ]
      }
    ]
  }
}
Response examples (400)
# Headers
x-cloud-error-codes: clusters.cluster_invalid_plan

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (403)
# Headers
x-cloud-error-codes: clusters.command_prohibited

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}