Create cluster

edit

This endpoint is deprecated and scheduled to be removed in the next major version. Use create deployment instead.

Creates an Elasticsearch cluster.

Request

edit

POST /api/v1/clusters/elasticsearch

Query parameters

edit
Name Type Required Description

request_id

string

N

(Optional) The idempotency token. When two create requests share the same request_id (minimum size of 32 characters, maximum size of 128 characters), only one cluster is created. The second request returns the information for that cluster, but the password field is blank.

validate_only

boolean; default: false

N

When true, validates the cluster definition without creating the cluster.

Request body

edit

(CreateElasticsearchClusterRequest) (required) The cluster definition

Responses

edit
200

(ClusterCrudResponse)

The cluster definition was valid - no further action was requested. The return object contains an internal representation of the plan, for use in debugging

201

(ClusterCrudResponse)

The cluster definition was valid and the cluster creation has started

202

(ClusterCrudResponse)

The cluster definition was valid and the cluster creation has already started

400

(BasicFailedReply)

  • The cluster definition contained errors. (code: clusters.cluster_invalid_plan)
  • The features used in the cluster definition have not been implemented yet. (code: clusters.plan_feature_not_implemented)

Headers

x-cloud-error-codes (string; allowed values: [clusters.cluster_invalid_plan, clusters.plan_feature_not_implemented])
The error codes associated with the response
449

(BasicFailedReply)

Elevated permissions are required. (code: root.unauthorized.rbac.elevated_permissions_required)

Headers

x-cloud-error-codes (string; allowed values: [root.unauthorized.rbac.elevated_permissions_required])
The error codes associated with the response

Request example

edit
curl -XPOST https://{{hostname}}/api/v1/clusters/elasticsearch \
-H "Authorization: ApiKey $ECE_API_KEY" \
-H 'Content-Type: application/json' \
-d '
{
   "apm" : {
      "name" : "string",
      "plan" : {
         "apm" : {
            "docker_image" : "string",
            "system_settings" : {
               "debug_enabled" : true,
               "elasticsearch_password" : "string",
               "elasticsearch_url" : "string",
               "elasticsearch_username" : "string",
               "kibana_url" : "string",
               "secret_token" : "string"
            },
            "user_settings_json" : {},
            "user_settings_override_json" : {},
            "user_settings_override_yaml" : "string",
            "user_settings_yaml" : "string",
            "version" : "string"
         },
         "cluster_topology" : [
            {
               "apm" : {
                  "docker_image" : "string",
                  "system_settings" : {
                     "debug_enabled" : true,
                     "elasticsearch_password" : "string",
                     "elasticsearch_url" : "string",
                     "elasticsearch_username" : "string",
                     "kibana_url" : "string",
                     "secret_token" : "string"
                  },
                  "user_settings_json" : {},
                  "user_settings_override_json" : {},
                  "user_settings_override_yaml" : "string",
                  "user_settings_yaml" : "string",
                  "version" : "string"
               },
               "instance_configuration_id" : "string",
               "size" : {
                  "resource" : "string",
                  "value" : 0
               },
               "zone_count" : 0
            }
         ],
         "transient" : {
            "plan_configuration" : {
               "calm_wait_time" : 0,
               "cluster_reboot" : "string",
               "extended_maintenance" : true,
               "move_allocators" : [
                  {
                     "allocator_down" : true,
                     "from" : "string",
                     "to" : [
                        "string"
                     ]
                  }
               ],
               "move_instances" : [
                  {
                     "from" : "string",
                     "instance_down" : true,
                     "to" : [
                        "string"
                     ]
                  }
               ],
               "override_failsafe" : true,
               "preferred_allocators" : [
                  "string"
               ],
               "reallocate_instances" : true,
               "timeout" : 0
            },
            "strategy" : {
               "autodetect" : {},
               "grow_and_shrink" : {},
               "rolling" : {
                  "allow_inline_resize" : true,
                  "group_by" : "string",
                  "shard_init_wait_time" : 0,
                  "skip_synced_flush" : true
               },
               "rolling_grow_and_shrink" : {}
            }
         }
      }
   },
   "cluster_name" : "string",
   "kibana" : {
      "cluster_name" : "string",
      "plan" : {
         "cluster_topology" : [
            {
               "allocator_filter" : {},
               "instance_configuration_id" : "string",
               "kibana" : {
                  "docker_image" : "string",
                  "system_settings" : {
                     "elasticsearch_password" : "string",
                     "elasticsearch_url" : "string",
                     "elasticsearch_username" : "string"
                  },
                  "user_settings_json" : {},
                  "user_settings_override_json" : {},
                  "user_settings_override_yaml" : "string",
                  "user_settings_yaml" : "string",
                  "version" : "string"
               },
               "memory_per_node" : 0,
               "node_configuration" : "string",
               "node_count_per_zone" : 0,
               "size" : {
                  "resource" : "string",
                  "value" : 0
               },
               "zone_count" : 0
            }
         ],
         "kibana" : {
            "docker_image" : "string",
            "system_settings" : {
               "elasticsearch_password" : "string",
               "elasticsearch_url" : "string",
               "elasticsearch_username" : "string"
            },
            "user_settings_json" : {},
            "user_settings_override_json" : {},
            "user_settings_override_yaml" : "string",
            "user_settings_yaml" : "string",
            "version" : "string"
         },
         "transient" : {
            "plan_configuration" : {
               "calm_wait_time" : 0,
               "cluster_reboot" : "string",
               "extended_maintenance" : true,
               "move_allocators" : [
                  {
                     "allocator_down" : true,
                     "from" : "string",
                     "to" : [
                        "string"
                     ]
                  }
               ],
               "move_instances" : [
                  {
                     "from" : "string",
                     "instance_down" : true,
                     "to" : [
                        "string"
                     ]
                  }
               ],
               "override_failsafe" : true,
               "preferred_allocators" : [
                  "string"
               ],
               "reallocate_instances" : true,
               "timeout" : 0
            },
            "strategy" : {
               "autodetect" : {},
               "grow_and_shrink" : {},
               "rolling" : {
                  "allow_inline_resize" : true,
                  "group_by" : "string",
                  "shard_init_wait_time" : 0,
                  "skip_synced_flush" : true
               },
               "rolling_grow_and_shrink" : {}
            }
         },
         "zone_count" : 0
      }
   },
   "plan" : {
      "autoscaling_enabled" : true,
      "cluster_topology" : [
         {
            "allocator_filter" : {},
            "autoscaling_max" : {
               "resource" : "string",
               "value" : 0
            },
            "autoscaling_min" : {
               "resource" : "string",
               "value" : 0
            },
            "autoscaling_policy_override_json" : {},
            "elasticsearch" : {
               "curation" : {
                  "from_instance_configuration_id" : "string",
                  "to_instance_configuration_id" : "string"
               },
               "docker_image" : "string",
               "enabled_built_in_plugins" : [
                  "string"
               ],
               "node_attributes" : {
                  "some_property" : "string"
               },
               "system_settings" : {
                  "auto_create_index" : true,
                  "default_shards_per_index" : 0,
                  "destructive_requires_name" : true,
                  "enable_close_index" : true,
                  "monitoring_collection_interval" : 0,
                  "monitoring_history_duration" : "string",
                  "reindex_whitelist" : [
                     "string"
                  ],
                  "scripting" : {
                     "expressions_enabled" : true,
                     "file" : {
                        "enabled" : true,
                        "sandbox_mode" : true
                     },
                     "inline" : {
                        "enabled" : true,
                        "sandbox_mode" : true
                     },
                     "mustache_enabled" : true,
                     "painless_enabled" : true,
                     "stored" : {
                        "enabled" : true,
                        "sandbox_mode" : true
                     }
                  },
                  "use_disk_threshold" : true,
                  "watcher_trigger_engine" : "string"
               },
               "user_bundles" : [
                  {
                     "elasticsearch_version" : "string",
                     "name" : "string",
                     "url" : "string"
                  }
               ],
               "user_plugins" : [
                  {
                     "elasticsearch_version" : "string",
                     "name" : "string",
                     "url" : "string"
                  }
               ],
               "user_settings_json" : {},
               "user_settings_override_json" : {},
               "user_settings_override_yaml" : "string",
               "user_settings_yaml" : "string",
               "version" : "string"
            },
            "id" : "string",
            "instance_configuration_id" : "string",
            "memory_per_node" : 0,
            "node_configuration" : "string",
            "node_count_per_zone" : 0,
            "node_roles" : [
               "string"
            ],
            "node_type" : {
               "data" : true,
               "ingest" : true,
               "master" : true,
               "ml" : true
            },
            "size" : {
               "resource" : "string",
               "value" : 0
            },
            "topology_element_control" : {
               "min" : {
                  "resource" : "string",
                  "value" : 0
               }
            },
            "zone_count" : 0
         }
      ],
      "deployment_template" : {
         "id" : "string",
         "version" : "string"
      },
      "elasticsearch" : {
         "curation" : {
            "from_instance_configuration_id" : "string",
            "to_instance_configuration_id" : "string"
         },
         "docker_image" : "string",
         "enabled_built_in_plugins" : [
            "string"
         ],
         "node_attributes" : {
            "some_property" : "string"
         },
         "system_settings" : {
            "auto_create_index" : true,
            "default_shards_per_index" : 0,
            "destructive_requires_name" : true,
            "enable_close_index" : true,
            "monitoring_collection_interval" : 0,
            "monitoring_history_duration" : "string",
            "reindex_whitelist" : [
               "string"
            ],
            "scripting" : {
               "expressions_enabled" : true,
               "file" : {
                  "enabled" : true,
                  "sandbox_mode" : true
               },
               "inline" : {
                  "enabled" : true,
                  "sandbox_mode" : true
               },
               "mustache_enabled" : true,
               "painless_enabled" : true,
               "stored" : {
                  "enabled" : true,
                  "sandbox_mode" : true
               }
            },
            "use_disk_threshold" : true,
            "watcher_trigger_engine" : "string"
         },
         "user_bundles" : [
            {
               "elasticsearch_version" : "string",
               "name" : "string",
               "url" : "string"
            }
         ],
         "user_plugins" : [
            {
               "elasticsearch_version" : "string",
               "name" : "string",
               "url" : "string"
            }
         ],
         "user_settings_json" : {},
         "user_settings_override_json" : {},
         "user_settings_override_yaml" : "string",
         "user_settings_yaml" : "string",
         "version" : "string"
      },
      "tiebreaker_override" : true,
      "tiebreaker_topology" : {
         "memory_per_node" : 0
      },
      "transient" : {
         "cluster_settings_json" : {},
         "plan_configuration" : {
            "calm_wait_time" : 0,
            "cluster_reboot" : "string",
            "extended_maintenance" : true,
            "max_snapshot_age" : 0,
            "max_snapshot_attempts" : 0,
            "move_allocators" : [
               {
                  "allocator_down" : true,
                  "from" : "string",
                  "to" : [
                     "string"
                  ]
               }
            ],
            "move_instances" : [
               {
                  "from" : "string",
                  "instance_down" : true,
                  "to" : [
                     "string"
                  ]
               }
            ],
            "move_only" : true,
            "override_failsafe" : true,
            "preferred_allocators" : [
               "string"
            ],
            "reallocate_instances" : true,
            "skip_data_migration" : true,
            "skip_post_upgrade_steps" : true,
            "skip_snapshot" : true,
            "skip_snapshot_post_major_upgrade" : true,
            "skip_upgrade_checker" : true,
            "timeout" : 0
         },
         "remote_clusters" : {
            "resources" : [
               {
                  "alias" : "string",
                  "deployment_id" : "string",
                  "elasticsearch_ref_id" : "string",
                  "info" : {
                     "compatible" : true,
                     "connected" : true,
                     "healthy" : true,
                     "trusted" : true,
                     "trusted_back" : true
                  },
                  "skip_unavailable" : true
               }
            ]
         },
         "restore_snapshot" : {
            "repository_config" : {
               "raw_settings" : {}
            },
            "repository_name" : "string",
            "restore_payload" : {
               "indices" : [
                  "string"
               ],
               "raw_settings" : {}
            },
            "snapshot_name" : "string",
            "source_cluster_id" : "string",
            "strategy" : "string"
         },
         "strategy" : {
            "autodetect" : {},
            "grow_and_shrink" : {},
            "rolling" : {
               "allow_inline_resize" : true,
               "group_by" : "string",
               "shard_init_wait_time" : 0,
               "skip_synced_flush" : true
            },
            "rolling_grow_and_shrink" : {}
         }
      },
      "zone_count" : 0
   },
   "settings" : {
      "ccs" : {
         "remote_clusters" : {
            "some_property" : {
               "cluster_id" : "string",
               "skip_unavailable" : true
            }
         }
      },
      "curation" : {
         "specs" : [
            {
               "index_pattern" : "string",
               "trigger_interval_seconds" : 0
            }
         ]
      },
      "dedicated_masters_threshold" : 0,
      "ip_filtering" : {
         "rulesets" : [
            "string"
         ]
      },
      "metadata" : {
         "contact_email" : "string",
         "hidden" : true,
         "name" : "string",
         "organization_id" : "string",
         "owner_id" : "string",
         "resources" : {
            "cpu" : {
               "boost" : true,
               "hard_limit" : true
            }
         },
         "subscription_level" : "string",
         "system_owned" : true
      },
      "monitoring" : {
         "target_cluster_id" : "string"
      },
      "snapshot" : {
         "cron_expression" : "string",
         "enabled" : true,
         "interval" : "string",
         "pending_interval" : "string",
         "repository" : {
            "default" : {},
            "reference" : {
               "repository_name" : "string"
            },
            "static" : {
               "repository_type" : "string",
               "settings" : {}
            }
         },
         "repository_name" : "string",
         "retention" : {
            "max_age" : "string",
            "snapshots" : 0
         },
         "slm" : true,
         "suspended" : [
            "string"
         ],
         "wait_time_after_snapshotting" : "string"
      },
      "traffic_filter" : {
         "rulesets" : [
            "string"
         ]
      }
   }
}
'