Deployment - CRUD

edit

List Deployments

edit

List Deployments.

Request

edit

GET /api/v1/deployments

Responses

edit
200

(DeploymentsListResponse)

The list of deployments that belong to the authenticated user.

401

(BasicFailedReply)

You are not authorized to perform this action.

Request example

edit
curl -XGET https://api.elastic-cloud.com/api/v1/deployments \
-H "Authorization: ApiKey $EC_API_KEY"

Create Deployment

edit

Creates a Deployment.

Request

edit

POST /api/v1/deployments

Query parameters

edit
Name Type Required Description

request_id

string

N

An optional idempotency token - if two create requests share the same request_id token (min size 32 characters, max 128) then only one deployment will be created, the second request will return the info of that deployment (in the same format described below, but with blanks for auth-related fields)

template_id

string

N

An optional template id - if present, the referenced template will be used to fill in the resources field of the deployment creation request. If any resources are present in the request together with the template, the ones coming in the request will prevail and no merging with the template will be performed.

validate_only

boolean; default: false

N

If true, will just validate the Deployment definition but will not perform the creation

Request body

edit

(DeploymentCreateRequest) (required) The deployment definition

Responses

edit
200

(DeploymentCreateResponse)

The request was valid (used when validate_only is true).

201

(DeploymentCreateResponse)

The request was valid and a new deployment was created

Headers

x-cloud-resource-created (string)
The date-time when the resource was created (ISO format relative to UTC)
x-cloud-resource-last-modified (string)
The date-time when the resource was last modified (ISO format relative to UTC)
x-cloud-resource-version (string)
The resource version, which is used to avoid update conflicts with concurrent operations
202

(DeploymentCreateResponse)

The request was valid and deployment creation had already been started.

400

(BasicFailedReply)

The deployment request had errors.

401

(BasicFailedReply)

You are not authorized to perform this action.

Request example

edit
curl -XPOST https://api.elastic-cloud.com/api/v1/deployments \
-H "Authorization: ApiKey $EC_API_KEY" \
-H 'Content-Type: application/json' \
-d '
{
   "alias" : "string",
   "metadata" : {
      "tags" : [
         {
            "key" : "string",
            "value" : "string"
         }
      ]
   },
   "name" : "string",
   "region" : "string",
   "resources" : {
      "apm" : [
         {
            "display_name" : "string",
            "elasticsearch_cluster_ref_id" : "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",
                     "instance_configuration_version" : 0,
                     "size" : {
                        "resource" : "string",
                        "value" : 0
                     },
                     "zone_count" : 0
                  }
               ],
               "transient" : {
                  "plan_configuration" : {
                     "calm_wait_time" : 0,
                     "cluster_reboot" : "string",
                     "extended_maintenance" : 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" : {}
                  }
               }
            },
            "ref_id" : "string",
            "region" : "string",
            "settings" : {
               "metadata" : {
                  "name" : "string"
               }
            }
         }
      ],
      "appsearch" : [
         {
            "display_name" : "string",
            "elasticsearch_cluster_ref_id" : "string",
            "plan" : {
               "appsearch" : {
                  "docker_image" : "string",
                  "system_settings" : {
                     "elasticsearch_password" : "string",
                     "elasticsearch_url" : "string",
                     "elasticsearch_username" : "string",
                     "secret_session_key" : "string"
                  },
                  "user_settings_json" : {},
                  "user_settings_override_json" : {},
                  "user_settings_override_yaml" : "string",
                  "user_settings_yaml" : "string",
                  "version" : "string"
               },
               "cluster_topology" : [
                  {
                     "appsearch" : {
                        "docker_image" : "string",
                        "system_settings" : {
                           "elasticsearch_password" : "string",
                           "elasticsearch_url" : "string",
                           "elasticsearch_username" : "string",
                           "secret_session_key" : "string"
                        },
                        "user_settings_json" : {},
                        "user_settings_override_json" : {},
                        "user_settings_override_yaml" : "string",
                        "user_settings_yaml" : "string",
                        "version" : "string"
                     },
                     "instance_configuration_id" : "string",
                     "instance_configuration_version" : 0,
                     "node_type" : {
                        "appserver" : true,
                        "worker" : true
                     },
                     "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"
                           ]
                        }
                     ],
                     "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" : {}
                  }
               }
            },
            "ref_id" : "string",
            "region" : "string",
            "settings" : {
               "metadata" : {
                  "name" : "string"
               }
            }
         }
      ],
      "elasticsearch" : [
         {
            "display_name" : "string",
            "plan" : {
               "autoscaling_enabled" : true,
               "cluster_topology" : [
                  {
                     "autoscaling_max" : {
                        "resource" : "string",
                        "value" : 0
                     },
                     "autoscaling_min" : {
                        "resource" : "string",
                        "value" : 0
                     },
                     "autoscaling_policy_override_json" : {},
                     "autoscaling_tier_override" : true,
                     "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
                              }
                           },
                           "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",
                     "instance_configuration_version" : 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
                        }
                     },
                     "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"
               },
               "transient" : {
                  "cluster_settings_json" : {},
                  "plan_configuration" : {
                     "calm_wait_time" : 0,
                     "cluster_reboot" : "string",
                     "extended_maintenance" : true,
                     "max_snapshot_age" : 0,
                     "max_snapshot_attempts" : 0,
                     "skip_snapshot" : 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" : {}
                  }
               }
            },
            "ref_id" : "string",
            "region" : "string",
            "settings" : {
               "curation" : {
                  "specs" : [
                     {
                        "index_pattern" : "string",
                        "trigger_interval_seconds" : 0
                     }
                  ]
               },
               "dedicated_masters_threshold" : 0,
               "keystore_contents" : {
                  "secrets" : {
                     "some_property" : {
                        "as_file" : true,
                        "value" : {}
                     }
                  }
               },
               "metadata" : {
                  "name" : "string"
               },
               "monitoring" : {
                  "target_cluster_id" : "string"
               },
               "snapshot" : {
                  "cron_expression" : "string",
                  "interval" : "string",
                  "retention" : {
                     "max_age" : "string",
                     "snapshots" : 0
                  },
                  "slm" : true
               },
               "traffic_filter" : {
                  "rulesets" : [
                     "string"
                  ]
               },
               "trust" : {
                  "accounts" : [
                     {
                        "account_id" : "string",
                        "name" : "string",
                        "trust_all" : true,
                        "trust_allowlist" : [
                           "string"
                        ]
                     }
                  ],
                  "direct" : [
                     {
                        "additional_node_names" : [
                           "string"
                        ],
                        "certificates" : [
                           {
                              "metadata" : {
                                 "also_trusted_by" : [
                                    "string"
                                 ],
                                 "fingerprint" : "string",
                                 "valid_from" : "2019-01-01T00:00:00Z",
                                 "valid_to" : "2019-01-01T00:00:00Z"
                              },
                              "pem" : "string"
                           }
                        ],
                        "name" : "string",
                        "scope_id" : "string",
                        "trust_all" : true,
                        "trust_allowlist" : [
                           "string"
                        ],
                        "type" : "string",
                        "uid" : "string"
                     }
                  ],
                  "external" : [
                     {
                        "name" : "string",
                        "trust_all" : true,
                        "trust_allowlist" : [
                           "string"
                        ],
                        "trust_relationship_id" : "string"
                     }
                  ]
               }
            }
         }
      ],
      "enterprise_search" : [
         {
            "display_name" : "string",
            "elasticsearch_cluster_ref_id" : "string",
            "plan" : {
               "cluster_topology" : [
                  {
                     "allocator_filter" : {},
                     "enterprise_search" : {
                        "docker_image" : "string",
                        "system_settings" : {
                           "elasticsearch_password" : "string",
                           "elasticsearch_url" : "string",
                           "elasticsearch_username" : "string",
                           "secret_session_key" : "string"
                        },
                        "user_settings_json" : {},
                        "user_settings_override_json" : {},
                        "user_settings_override_yaml" : "string",
                        "user_settings_yaml" : "string",
                        "version" : "string"
                     },
                     "instance_configuration_id" : "string",
                     "instance_configuration_version" : 0,
                     "memory_per_node" : {},
                     "node_configuration" : "string",
                     "node_count_per_zone" : {},
                     "node_type" : {
                        "appserver" : true,
                        "connector" : true,
                        "worker" : true
                     },
                     "size" : {
                        "resource" : "string",
                        "value" : 0
                     },
                     "zone_count" : 0
                  }
               ],
               "enterprise_search" : {
                  "docker_image" : "string",
                  "system_settings" : {
                     "elasticsearch_password" : "string",
                     "elasticsearch_url" : "string",
                     "elasticsearch_username" : "string",
                     "secret_session_key" : "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"
                           ]
                        }
                     ],
                     "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" : {}
                  }
               }
            },
            "ref_id" : "string",
            "region" : "string",
            "settings" : {
               "metadata" : {
                  "name" : "string"
               }
            }
         }
      ],
      "integrations_server" : [
         {
            "display_name" : "string",
            "elasticsearch_cluster_ref_id" : "string",
            "plan" : {
               "cluster_topology" : [
                  {
                     "instance_configuration_id" : "string",
                     "instance_configuration_version" : 0,
                     "integrations_server" : {
                        "docker_image" : "string",
                        "mode" : "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"
                     },
                     "size" : {
                        "resource" : "string",
                        "value" : 0
                     },
                     "zone_count" : 0
                  }
               ],
               "integrations_server" : {
                  "docker_image" : "string",
                  "mode" : "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"
               },
               "transient" : {
                  "plan_configuration" : {
                     "calm_wait_time" : 0,
                     "cluster_reboot" : "string",
                     "extended_maintenance" : 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" : {}
                  }
               }
            },
            "ref_id" : "string",
            "region" : "string",
            "settings" : {
               "metadata" : {
                  "name" : "string"
               }
            }
         }
      ],
      "kibana" : [
         {
            "display_name" : "string",
            "elasticsearch_cluster_ref_id" : "string",
            "plan" : {
               "cluster_topology" : [
                  {
                     "instance_configuration_id" : "string",
                     "instance_configuration_version" : 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"
                     },
                     "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,
                     "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" : {}
                  }
               }
            },
            "ref_id" : "string",
            "region" : "string",
            "settings" : {
               "metadata" : {
                  "name" : "string"
               }
            }
         }
      ]
   },
   "settings" : {
      "autoscaling_enabled" : true,
      "observability" : {
         "logging" : {
            "destination" : {
               "deployment_id" : "string",
               "ref_id" : "string"
            }
         },
         "metrics" : {
            "destination" : {
               "deployment_id" : "string",
               "ref_id" : "string"
            }
         }
      },
      "solution_type" : "string",
      "traffic_filter_settings" : {
         "rulesets" : [
            "string"
         ]
      }
   },
   "version" : "string"
}
'

Get Deployment

edit

Retrieves information about a Deployment.

Request

edit

GET /api/v1/deployments/{deployment_id}

Path parameters

edit
Name Type Required Description

deployment_id

string

Y

Identifier for the Deployment

Query parameters

edit
Name Type Required Description

clear_transient

boolean; default: false

N

If set (defaults to false) then removes the transient section from all child resources, making it safe to reapply via an update

convert_legacy_plans

boolean; default: false

N

If showing plans, whether to leave pre-2.0.0 plans in their legacy format (the default), or whether to update them to 2.0.x+ format (if 'true')

enrich_with_template

boolean; default: true

N

If showing plans, whether to enrich the plan by including the missing elements from the deployment template it is based on

force_all_plan_history

boolean; default: false

N

Force show the entire plan history no matter how long. As noted in the show_plan_history parameter description, by default, a maximum of 100 plans are shown per resource. If true, this parameter overrides the default, and ALL plans are returned. Use with care as the plan history can be VERY large. Consider pairing with show_plan_logs=false.

show_instance_configurations

boolean; default: true

N

If true, will return details for each instance configuration referenced by the deployment.

show_metadata

boolean; default: false

N

Whether to include the full cluster metadata in the response - can be large per cluster and also include credentials

show_plan_defaults

boolean; default: false

N

If showing plans, whether to show values that are left at their default value (less readable but more informative)

show_plan_history

boolean; default: false

N

Whether to include the plan history with the current and pending plan information. The results can be very large per cluster. By default, if a given resource kind (e.g. Elasticsearch, Kibana, etc.) has more than 100 plans (which should be very rare, most likely caused by a bug) only 100 plans are returned for the given resource type: The first 10 plans, and the last 90 plans for that resource type. If ALL of the plans are desired, pass the force_all_plan_history parameter with a value of true.

show_plan_logs

boolean; default: false

N

Whether to include with the current and pending plan information the attempt log - can be very large per cluster

show_plans

boolean; default: true

N

Whether to include the full current and pending plan information in the response - can be large per cluster

show_security

boolean; default: false

N

Whether to include the Elasticsearch 2.x security information in the response - can be large per cluster and also include credentials

show_settings

boolean; default: false

N

Whether to show cluster settings in the response.

show_system_alerts

integer; default: 0

N

Number of system alerts (such as forced restarts due to memory limits) to be included in the response - can be large per cluster. Negative numbers or 0 will not return field.

Responses

edit
200

(DeploymentGetResponse)

The Deployment info response

Headers

x-cloud-resource-created (string)
The date-time when the resource was created (ISO format relative to UTC)
x-cloud-resource-last-modified (string)
The date-time when the resource was last modified (ISO format relative to UTC)
x-cloud-resource-version (string)
The resource version, which is used to avoid update conflicts with concurrent operations
401

(BasicFailedReply)

You are not authorized to perform this action.

404

(BasicFailedReply)

The Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)

Headers

x-cloud-error-codes (string; allowed values: [deployments.deployment_not_found])
The error codes associated with the response

Request example

edit
curl -XGET https://api.elastic-cloud.com/api/v1/deployments/{deployment_id} \
-H "Authorization: ApiKey $EC_API_KEY"

Update Deployment

edit

Updates a Deployment.

Request

edit

PUT /api/v1/deployments/{deployment_id}

Path parameters

edit
Name Type Required Description

deployment_id

string

Y

Identifier for the Deployment

Query parameters

edit
Name Type Required Description

hide_pruned_orphans

boolean; default: false

N

Whether or not to hide orphaned resources that were shut down (relevant if prune on the request is true)

skip_snapshot

boolean; default: false

N

Whether or not to skip snapshots before shutting down orphaned resources (relevant if prune on the request is true)

validate_only

boolean; default: false

N

If true, will just validate the Deployment definition but will not perform the update

version

string

N

If specified then checks for conflicts against the version stored in the persistent store (returned in 'x-cloud-resource-version' of the GET request)

Request body

edit

(DeploymentUpdateRequest) (required) The deployment definition

Responses

edit
200

(DeploymentUpdateResponse)

The request was valid and the deployment was updated.

Headers

x-cloud-resource-created (string)
The date-time when the resource was created (ISO format relative to UTC)
x-cloud-resource-last-modified (string)
The date-time when the resource was last modified (ISO format relative to UTC)
x-cloud-resource-version (string)
The resource version, which is used to avoid update conflicts with concurrent operations
400

(BasicFailedReply)

The deployment request had errors.

401

(BasicFailedReply)

You are not authorized to perform this action.

404

(BasicFailedReply)

The Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)

Headers

x-cloud-error-codes (string; allowed values: [deployments.deployment_not_found])
The error codes associated with the response

Request example

edit
curl -XPUT https://api.elastic-cloud.com/api/v1/deployments/{deployment_id} \
-H "Authorization: ApiKey $EC_API_KEY" \
-H 'Content-Type: application/json' \
-d '
{
   "alias" : "string",
   "metadata" : {
      "tags" : [
         {
            "key" : "string",
            "value" : "string"
         }
      ]
   },
   "name" : "string",
   "prune_orphans" : true,
   "resources" : {
      "apm" : [
         {
            "display_name" : "string",
            "elasticsearch_cluster_ref_id" : "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",
                     "instance_configuration_version" : 0,
                     "size" : {
                        "resource" : "string",
                        "value" : 0
                     },
                     "zone_count" : 0
                  }
               ],
               "transient" : {
                  "plan_configuration" : {
                     "calm_wait_time" : 0,
                     "cluster_reboot" : "string",
                     "extended_maintenance" : 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" : {}
                  }
               }
            },
            "ref_id" : "string",
            "region" : "string",
            "settings" : {
               "metadata" : {
                  "name" : "string"
               }
            }
         }
      ],
      "appsearch" : [
         {
            "display_name" : "string",
            "elasticsearch_cluster_ref_id" : "string",
            "plan" : {
               "appsearch" : {
                  "docker_image" : "string",
                  "system_settings" : {
                     "elasticsearch_password" : "string",
                     "elasticsearch_url" : "string",
                     "elasticsearch_username" : "string",
                     "secret_session_key" : "string"
                  },
                  "user_settings_json" : {},
                  "user_settings_override_json" : {},
                  "user_settings_override_yaml" : "string",
                  "user_settings_yaml" : "string",
                  "version" : "string"
               },
               "cluster_topology" : [
                  {
                     "appsearch" : {
                        "docker_image" : "string",
                        "system_settings" : {
                           "elasticsearch_password" : "string",
                           "elasticsearch_url" : "string",
                           "elasticsearch_username" : "string",
                           "secret_session_key" : "string"
                        },
                        "user_settings_json" : {},
                        "user_settings_override_json" : {},
                        "user_settings_override_yaml" : "string",
                        "user_settings_yaml" : "string",
                        "version" : "string"
                     },
                     "instance_configuration_id" : "string",
                     "instance_configuration_version" : 0,
                     "node_type" : {
                        "appserver" : true,
                        "worker" : true
                     },
                     "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"
                           ]
                        }
                     ],
                     "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" : {}
                  }
               }
            },
            "ref_id" : "string",
            "region" : "string",
            "settings" : {
               "metadata" : {
                  "name" : "string"
               }
            }
         }
      ],
      "elasticsearch" : [
         {
            "display_name" : "string",
            "plan" : {
               "autoscaling_enabled" : true,
               "cluster_topology" : [
                  {
                     "autoscaling_max" : {
                        "resource" : "string",
                        "value" : 0
                     },
                     "autoscaling_min" : {
                        "resource" : "string",
                        "value" : 0
                     },
                     "autoscaling_policy_override_json" : {},
                     "autoscaling_tier_override" : true,
                     "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
                              }
                           },
                           "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",
                     "instance_configuration_version" : 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
                        }
                     },
                     "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"
               },
               "transient" : {
                  "cluster_settings_json" : {},
                  "plan_configuration" : {
                     "calm_wait_time" : 0,
                     "cluster_reboot" : "string",
                     "extended_maintenance" : true,
                     "max_snapshot_age" : 0,
                     "max_snapshot_attempts" : 0,
                     "skip_snapshot" : 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" : {}
                  }
               }
            },
            "ref_id" : "string",
            "region" : "string",
            "settings" : {
               "curation" : {
                  "specs" : [
                     {
                        "index_pattern" : "string",
                        "trigger_interval_seconds" : 0
                     }
                  ]
               },
               "dedicated_masters_threshold" : 0,
               "keystore_contents" : {
                  "secrets" : {
                     "some_property" : {
                        "as_file" : true,
                        "value" : {}
                     }
                  }
               },
               "metadata" : {
                  "name" : "string"
               },
               "monitoring" : {
                  "target_cluster_id" : "string"
               },
               "snapshot" : {
                  "cron_expression" : "string",
                  "interval" : "string",
                  "retention" : {
                     "max_age" : "string",
                     "snapshots" : 0
                  },
                  "slm" : true
               },
               "traffic_filter" : {
                  "rulesets" : [
                     "string"
                  ]
               },
               "trust" : {
                  "accounts" : [
                     {
                        "account_id" : "string",
                        "name" : "string",
                        "trust_all" : true,
                        "trust_allowlist" : [
                           "string"
                        ]
                     }
                  ],
                  "direct" : [
                     {
                        "additional_node_names" : [
                           "string"
                        ],
                        "certificates" : [
                           {
                              "metadata" : {
                                 "also_trusted_by" : [
                                    "string"
                                 ],
                                 "fingerprint" : "string",
                                 "valid_from" : "2019-01-01T00:00:00Z",
                                 "valid_to" : "2019-01-01T00:00:00Z"
                              },
                              "pem" : "string"
                           }
                        ],
                        "name" : "string",
                        "scope_id" : "string",
                        "trust_all" : true,
                        "trust_allowlist" : [
                           "string"
                        ],
                        "type" : "string",
                        "uid" : "string"
                     }
                  ],
                  "external" : [
                     {
                        "name" : "string",
                        "trust_all" : true,
                        "trust_allowlist" : [
                           "string"
                        ],
                        "trust_relationship_id" : "string"
                     }
                  ]
               }
            }
         }
      ],
      "enterprise_search" : [
         {
            "display_name" : "string",
            "elasticsearch_cluster_ref_id" : "string",
            "plan" : {
               "cluster_topology" : [
                  {
                     "allocator_filter" : {},
                     "enterprise_search" : {
                        "docker_image" : "string",
                        "system_settings" : {
                           "elasticsearch_password" : "string",
                           "elasticsearch_url" : "string",
                           "elasticsearch_username" : "string",
                           "secret_session_key" : "string"
                        },
                        "user_settings_json" : {},
                        "user_settings_override_json" : {},
                        "user_settings_override_yaml" : "string",
                        "user_settings_yaml" : "string",
                        "version" : "string"
                     },
                     "instance_configuration_id" : "string",
                     "instance_configuration_version" : 0,
                     "memory_per_node" : {},
                     "node_configuration" : "string",
                     "node_count_per_zone" : {},
                     "node_type" : {
                        "appserver" : true,
                        "connector" : true,
                        "worker" : true
                     },
                     "size" : {
                        "resource" : "string",
                        "value" : 0
                     },
                     "zone_count" : 0
                  }
               ],
               "enterprise_search" : {
                  "docker_image" : "string",
                  "system_settings" : {
                     "elasticsearch_password" : "string",
                     "elasticsearch_url" : "string",
                     "elasticsearch_username" : "string",
                     "secret_session_key" : "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"
                           ]
                        }
                     ],
                     "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" : {}
                  }
               }
            },
            "ref_id" : "string",
            "region" : "string",
            "settings" : {
               "metadata" : {
                  "name" : "string"
               }
            }
         }
      ],
      "integrations_server" : [
         {
            "display_name" : "string",
            "elasticsearch_cluster_ref_id" : "string",
            "plan" : {
               "cluster_topology" : [
                  {
                     "instance_configuration_id" : "string",
                     "instance_configuration_version" : 0,
                     "integrations_server" : {
                        "docker_image" : "string",
                        "mode" : "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"
                     },
                     "size" : {
                        "resource" : "string",
                        "value" : 0
                     },
                     "zone_count" : 0
                  }
               ],
               "integrations_server" : {
                  "docker_image" : "string",
                  "mode" : "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"
               },
               "transient" : {
                  "plan_configuration" : {
                     "calm_wait_time" : 0,
                     "cluster_reboot" : "string",
                     "extended_maintenance" : 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" : {}
                  }
               }
            },
            "ref_id" : "string",
            "region" : "string",
            "settings" : {
               "metadata" : {
                  "name" : "string"
               }
            }
         }
      ],
      "kibana" : [
         {
            "display_name" : "string",
            "elasticsearch_cluster_ref_id" : "string",
            "plan" : {
               "cluster_topology" : [
                  {
                     "instance_configuration_id" : "string",
                     "instance_configuration_version" : 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"
                     },
                     "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,
                     "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" : {}
                  }
               }
            },
            "ref_id" : "string",
            "region" : "string",
            "settings" : {
               "metadata" : {
                  "name" : "string"
               }
            }
         }
      ]
   },
   "settings" : {
      "auto_ops" : {
         "status" : "string"
      },
      "autoscaling_enabled" : true,
      "observability" : {
         "logging" : {
            "destination" : {
               "deployment_id" : "string",
               "ref_id" : "string"
            }
         },
         "metrics" : {
            "destination" : {
               "deployment_id" : "string",
               "ref_id" : "string"
            }
         }
      }
   }
}
'

Restores a shutdown Deployment

edit

Restores all resources in a Deployment.

Request

edit

POST /api/v1/deployments/{deployment_id}/_restore

Path parameters

edit
Name Type Required Description

deployment_id

string

Y

Identifier for the Deployment

Query parameters

edit
Name Type Required Description

restore_snapshot

boolean; default: false

N

Whether or not to restore a snapshot for those resources that allow it.

Responses

edit
200

(DeploymentRestoreResponse)

The request was valid and the resources of the deployment were restored.

400

(BasicFailedReply)

There are Elasticsearch resources in the deployment which are not shut down.

401

(BasicFailedReply)

You are not authorized to perform this action.

404

(BasicFailedReply)

The Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)

Headers

x-cloud-error-codes (string; allowed values: [deployments.deployment_not_found])
The error codes associated with the response

Request example

edit
curl -XPOST https://api.elastic-cloud.com/api/v1/deployments/{deployment_id}/_restore \
-H "Authorization: ApiKey $EC_API_KEY"

Shuts down Deployment

edit

Shuts down all resources in a Deployment.

Request

edit

POST /api/v1/deployments/{deployment_id}/_shutdown

Path parameters

edit
Name Type Required Description

deployment_id

string

Y

Identifier for the Deployment

Query parameters

edit
Name Type Required Description

hide

boolean

N

Whether or not to hide the deployment and its resources.Only applicable for Platform administrators.

skip_snapshot

boolean; default: false

N

Whether or not to skip snapshots before shutting down the resources

Responses

edit
200

(DeploymentShutdownResponse)

The request was valid and the resources of the deployment were shutdown.

400

(BasicFailedReply)

Parameter is restricted and can only be set by a Platform administrator. (code: deployments.restricted_parameter)

Headers

x-cloud-error-codes (string; allowed values: [deployments.restricted_parameter])
The error codes associated with the response
401

(BasicFailedReply)

You are not authorized to perform this action.

404

(BasicFailedReply)

The Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)

Headers

x-cloud-error-codes (string; allowed values: [deployments.deployment_not_found])
The error codes associated with the response

Request example

edit
curl -XPOST https://api.elastic-cloud.com/api/v1/deployments/{deployment_id}/_shutdown \
-H "Authorization: ApiKey $EC_API_KEY"

Build request to migrate deployment to a different template

edit

Returns a deployment update request that would migrate this deployment to a different template.

Request

edit

GET /api/v1/deployments/{deployment_id}/migrate_template

Path parameters

edit
Name Type Required Description

deployment_id

string

Y

Identifier for the Deployment

Query parameters

edit
Name Type Required Description

template_id

string

Y

The ID of the deployment template to migrate to

Responses

edit
200

(DeploymentUpdateRequest)

The request was valid and the deployment can be migrated to the template with the provided ID.

400

(BasicFailedReply)

The deployment cannot be successfully migrated to the template with the provided ID.

401

(BasicFailedReply)

You are not authorized to perform this action.

404

(BasicFailedReply)

The Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)

Headers

x-cloud-error-codes (string; allowed values: [deployments.deployment_not_found])
The error codes associated with the response

Request example

edit
curl -XGET https://api.elastic-cloud.com/api/v1/deployments/{deployment_id}/migrate_template \
-H "Authorization: ApiKey $EC_API_KEY"