Elastic Cloud Enterprise API
1

Base URL
https://{{hostname}}/api/v1

This RESTful API enables you to create and manage both your Elastic Stack deployments and the ECE platform.

NOTE: This documentation applies to the Elastic Cloud Enterprise API only. If you are using Elasticsearch Service, use the Elastic Cloud API.

This API supports both key-based and token-based authentication. Key-based is generally the preferred method. For details about creating an API key or bearer token, refer to Authentication.

Documentation source and versions

This documentation is derived from https://api.elastic-cloud.com/api/v1/api-docs/swagger.json. It is provided under license Attribution-NonCommercial-NoDerivatives 4.0 International.

This is version 1 of this API documentation. Last update on Oct 29, 2024.


Accounts

Retrieve and update the current Elasticsearch Service account.






















Logout from ECE

POST /users/auth/_logout

Destroys the current session.

Responses

  • The current session was successfully destroyed.

    Additional properties are allowed.

  • The administrator needs to configure the authentication cluster. (code: authc.no_authentication_cluster)

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

      Value is authc.no_authentication_cluster.

    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 authentication cluster failed to process the request. The response body contains details about the error. (code: authc.authentication_cluster_error)

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

      Value is authc.authentication_cluster_error.

    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 /users/auth/_logout
curl \
 -X POST https://{{hostname}}/api/v1/users/auth/_logout
Response examples (200)
{}
Response examples (501)
# Headers
x-cloud-error-codes: authc.no_authentication_cluster

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

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

Refresh authentication token

POST /users/auth/_refresh

Issues a new authentication token.

Responses

  • The token refreshed successfully and was returned in the body of the response.

    Hide response attributes Show response attributes object
    • token string Required

      The authorization bearer token that you use in subsequent requests

    • session_expiration_time string(date-time) Required

      The time that the session token will expire

  • The authentication token is invalid or expired. (code: root.unauthorized)

    Hide headers attribute Show headers attribute
    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 administrator needs to configure the authentication cluster. (code: authc.no_authentication_cluster)

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

      Value is authc.no_authentication_cluster.

    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 authentication cluster failed to process the request. The response body contains details about the error. (code: authc.authentication_cluster_error)

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

      Value is authc.authentication_cluster_error.

    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 /users/auth/_refresh
curl \
 -X POST https://{{hostname}}/api/v1/users/auth/_refresh
Response examples (200)
{
  "token": "string",
  "session_expiration_time": "2025-05-04T09:42:00+00:00"
}
Response examples (401)
# Headers
x-cloud-error-codes: root.unauthorized

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

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

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

Get all API keys

GET /users/auth/keys

Retrieves the metadata for all of the API keys that the user generated.

Responses

  • The metadata for the API keys is retrieved.

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

      The list of API keys.

      Hide keys attributes Show keys attributes object
      • id string Required

        The API key ID.

      • user_id string

        The user ID.

      • The organization ID linked to the API key

      • description string Required

        The API key description. TIP: Useful when you have multiple API keys.

      • key string

        The API key. TIP: Since the API key is returned only once, save it in a safe place.

      • creation_date string(date-time) Required

        The date/time for when the API key is created.

      • expiration_date string(date-time)

        The date/time when the API key expires.

GET /users/auth/keys
curl \
 -X GET https://{{hostname}}/api/v1/users/auth/keys
Response examples (200)
{
  "keys": [
    {
      "id": "string",
      "user_id": "string",
      "organization_id": "string",
      "description": "string",
      "key": "string",
      "creation_date": "2025-05-04T09:42:00+00:00",
      "expiration_date": "2025-05-04T09:42:00+00:00"
    }
  ]
}












Delete API keys of multiple users

DELETE /users/auth/keys/_all

Delete or invalidate the API keys for multiple users.

Body Required

The request to delete API keys.

  • user_api_keys array[object] Required

    The list of API key IDs.

    Hide user_api_keys attributes Show user_api_keys attributes object

Responses

  • The API keys are deleted.

    Additional properties are allowed.

DELETE /users/auth/keys/_all
curl \
 -X DELETE https://{{hostname}}/api/v1/users/auth/keys/_all \
 -d '{"user_api_keys":[{"user_id":"string","api_key_id":"string"}]}'
Request examples
{
  "user_api_keys": [
    {
      "user_id": "string",
      "api_key_id": "string"
    }
  ]
}
Response examples (200)
{}




















Get API key metadata for all keys created by the user

GET /users/{user_id}/auth/keys

Retrieves metadata for all API keys created by the given user.

Path parameters

Responses

  • The API key metadata is retrieved.

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

      The list of API keys.

      Hide keys attributes Show keys attributes object
      • id string Required

        The API key ID.

      • user_id string

        The user ID.

      • The organization ID linked to the API key

      • description string Required

        The API key description. TIP: Useful when you have multiple API keys.

      • key string

        The API key. TIP: Since the API key is returned only once, save it in a safe place.

      • creation_date string(date-time) Required

        The date/time for when the API key is created.

      • expiration_date string(date-time)

        The date/time when the API key expires.

  • The {user_id} can't be found. (code: api_keys.user_not_found)

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

      Value is api_keys.user_not_found.

    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

GET /users/{user_id}/auth/keys
curl \
 -X GET https://{{hostname}}/api/v1/users/{user_id}/auth/keys
Response examples (200)
{
  "keys": [
    {
      "id": "string",
      "user_id": "string",
      "organization_id": "string",
      "description": "string",
      "key": "string",
      "creation_date": "2025-05-04T09:42:00+00:00",
      "expiration_date": "2025-05-04T09:42:00+00:00"
    }
  ]
}
Response examples (404)
# Headers
x-cloud-error-codes: api_keys.user_not_found

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




Get a user API key

GET /users/{user_id}/auth/keys/{api_key_id}

Retrieves the API key metadata for a user.

Path parameters

Responses

  • The API key metadata is retrieved.

    Hide response attributes Show response attributes object
    • id string Required

      The API key ID.

    • user_id string

      The user ID.

    • The organization ID linked to the API key

    • description string Required

      The API key description. TIP: Useful when you have multiple API keys.

    • key string

      The API key. TIP: Since the API key is returned only once, save it in a safe place.

    • creation_date string(date-time) Required

      The date/time for when the API key is created.

    • expiration_date string(date-time)

      The date/time when the API key expires.

  • The {api_key_id} can't be found. (code: api_keys.key_not_found)

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

      Value is api_keys.key_not_found.

    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

GET /users/{user_id}/auth/keys/{api_key_id}
curl \
 -X GET https://{{hostname}}/api/v1/users/{user_id}/auth/keys/{api_key_id}
Response examples (200)
{
  "id": "string",
  "user_id": "string",
  "organization_id": "string",
  "description": "string",
  "key": "string",
  "creation_date": "2025-05-04T09:42:00+00:00",
  "expiration_date": "2025-05-04T09:42:00+00:00"
}
Response examples (404)
# Headers
x-cloud-error-codes: api_keys.key_not_found

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









Get charts for the organization. Currently unavailable in self-hosted ECE.

GET /billing/costs/{organization_id}/charts

EXPERIMENTAL (it may change in future versions): Retrieves the usage charts for the organization.

Path parameters

Query parameters

  • from string

    A datetime for the beginning of the desired range for which to fetch costs. Defaults to start of current month.

  • to string

    A datetime for the end of the desired range for which to fetch costs. Defaults to the current date.

  • The desired bucketing strategy for the charts. Defaults to daily.

    Values are daily or monthly. Default value is Daily.

Responses

  • The usage charts of an organization.

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

      The list of chart item

      Hide data attributes Show data attributes object
      • timestamp integer(int64) Required

        Axis X position

      • values array[object] Required

        the collection of values to plot the chart item

        Hide values attributes Show values attributes object
        • id string Required

          The id of chart item value

        • name string Required

          The name of the chart item value

        • value number(double) Required

          The actual value of the chart item value

  • The specified date range is invalid. (code: costs.invalid_date_range)

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

      Value is costs.invalid_date_range.

    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 current user does not have access to the requested organization. (code: organization.invalid_access)

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

      Value is organization.invalid_access.

    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

  • Organization not found. (code: organization.not_found)

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

      Value is organization.not_found.

    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

  • Too many requests. (code: billing_service.rate_limited)

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

      Value is billing_service.rate_limited.

    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

  • Error fetching the itemized costs for the organization. (code: billing_service.failed_request)

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

      Value is billing_service.failed_request.

    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

GET /billing/costs/{organization_id}/charts
curl \
 -X GET https://{{hostname}}/api/v1/billing/costs/{organization_id}/charts
Response examples (200)
{
  "data": [
    {
      "timestamp": 42,
      "values": [
        {
          "id": "string",
          "name": "string",
          "value": 42.0
        }
      ]
    }
  ]
}
Response examples (400)
# Headers
x-cloud-error-codes: costs.invalid_date_range

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

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

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

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

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








Get itemized costs by deployments. Currently unavailable in self-hosted ECE.

GET /billing/costs/{organization_id}/deployments/{deployment_id}/items

EXPERIMENTAL (it may change in future versions): Retrieves the itemized costs for the given deployment.

Headers

  • Accept string

    Determines the response body format. Can be either application/json or text/csv.

Path parameters

Query parameters

  • from string

    A datetime for the beginning of the desired range for which to fetch costs. Defaults to start of current month.

  • to string

    A datetime for the end of the desired range for which to fetch costs. Defaults to the current date.

Responses

  • The costs associated to a set items billed for a single deployment.

    Hide response attributes Show response attributes object
    • costs object Required

      Costs for the organization

      Additional properties are allowed.

      Hide costs attributes Show costs attributes object
      • total number(double) Required

        Total costs

      • dimensions array[object] Required

        A collection of billing details by dimension.

        Hide dimensions attributes Show dimensions attributes object
        • type string Required

          The type of the billing dimension

          Values are capacity, data_in, data_internode, data_out, storage_api, or storage_bytes.

        • cost number(double) Required

          The cost of the billing dimension

    • data_transfer_and_storage array[object] Required

      List of the detailed costs associated to the Data Transfer and Storage (DTS) dimensions

      Hide data_transfer_and_storage attributes Show data_transfer_and_storage attributes object
      • cost number(double) Required

        Costs associated to the Data Transfer and Storage (DTS) dimensions for an organization

      • name string Required

        DTS dimension name

      • quantity object Required

        DTS usage

        Additional properties are allowed.

        Hide quantity attributes Show quantity attributes object
      • rate object Required

        Cost per unit

        Additional properties are allowed.

        Hide rate attributes Show rate attributes object
      • sku string Required

        DTS dimension Stock Keeping Unit (SKU)

      • type string Required

        Type of the DTS dimension usage

    • resources array[object] Required

      Costs of the list of resources

      Hide resources attributes Show resources attributes object
      • hours integer(int64) Required

        Resource usage in hours

      • instance_count integer(int32) Required

        Number of instances

      • period object Required

        Period

        Additional properties are allowed.

        Hide period attributes Show period attributes object
        • start string(date-time) Required

          Start

        • end string(date-time) Required

          End

      • kind string Required

        Kind of resource

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

      • price number(double) Required

        Resource price

      • price_per_hour number(double) Required

        Price per hour

      • name string Required

        Resource name

      • sku string Required

        Stock Keeping Unit (SKU)

  • The specified date range is invalid. (code: costs.invalid_date_range)

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

      Value is costs.invalid_date_range.

    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 current user does not have access to the requested organization. (code: organization.invalid_access)

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

      Value is organization.invalid_access.

    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 organization was not found. (code: organization.not_found)
    • The Elasticsearch cluster was not found. (code: billing_service.es_cluster_id_not_found)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are organization.not_found or billing_service.es_cluster_id_not_found.

    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

  • An error occurred when fetching the itemized costs for the given deployment of the organization. (code: billing_service.failed_request)

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

      Value is billing_service.failed_request.

    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

GET /billing/costs/{organization_id}/deployments/{deployment_id}/items
curl \
 -X GET https://{{hostname}}/api/v1/billing/costs/{organization_id}/deployments/{deployment_id}/items \
 -H "Accept: string"
Response examples (200)
{
  "costs": {
    "total": 42.0,
    "dimensions": [
      {
        "type": "capacity",
        "cost": 42.0
      }
    ]
  },
  "data_transfer_and_storage": [
    {
      "cost": 42.0,
      "name": "string",
      "quantity": {
        "value": 42,
        "formatted_value": "string"
      },
      "rate": {
        "value": 42.0,
        "formatted_value": "string"
      },
      "sku": "string",
      "type": "string"
    }
  ],
  "resources": [
    {
      "hours": 42,
      "instance_count": 42,
      "period": {
        "start": "2025-05-04T09:42:00+00:00",
        "end": "2025-05-04T09:42:00+00:00"
      },
      "kind": "elasticsearch",
      "price": 42.0,
      "price_per_hour": 42.0,
      "name": "string",
      "sku": "string"
    }
  ]
}
Response examples (400)
# Headers
x-cloud-error-codes: costs.invalid_date_range

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

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

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

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

Get itemized costs for the organization. Currently unavailable in self-hosted ECE.

GET /billing/costs/{organization_id}/items

EXPERIMENTAL (it may change in future versions): Retrieves the itemized costs for the organization.

Path parameters

Query parameters

  • from string

    A datetime for the beginning of the desired range for which to fetch costs. Defaults to start of current month.

  • to string

    A datetime for the end of the desired range for which to fetch costs. Defaults to the current date.

Responses

  • The costs associated to a set of items

    Hide response attributes Show response attributes object
    • costs object Required

      Costs for the organization

      Additional properties are allowed.

      Hide costs attributes Show costs attributes object
      • total number(double) Required

        Total costs

      • dimensions array[object] Required

        A collection of billing details by dimension.

        Hide dimensions attributes Show dimensions attributes object
        • type string Required

          The type of the billing dimension

          Values are capacity, data_in, data_internode, data_out, storage_api, or storage_bytes.

        • cost number(double) Required

          The cost of the billing dimension

    • data_transfer_and_storage array[object] Required

      List of the detailed costs associated to the Data Transfer and Storage (DTS) dimensions

      Hide data_transfer_and_storage attributes Show data_transfer_and_storage attributes object
      • cost number(double) Required

        Costs associated to the Data Transfer and Storage (DTS) dimensions for an organization

      • name string Required

        DTS dimension name

      • quantity object Required

        DTS usage

        Additional properties are allowed.

        Hide quantity attributes Show quantity attributes object
      • rate object Required

        Cost per unit

        Additional properties are allowed.

        Hide rate attributes Show rate attributes object
      • sku string Required

        DTS dimension Stock Keeping Unit (SKU)

      • type string Required

        Type of the DTS dimension usage

    • resources array[object] Required

      Costs of the list of resources

      Hide resources attributes Show resources attributes object
      • hours integer(int64) Required

        Resource usage in hours

      • instance_count integer(int32) Required

        Number of instances

      • period object Required

        Period

        Additional properties are allowed.

        Hide period attributes Show period attributes object
        • start string(date-time) Required

          Start

        • end string(date-time) Required

          End

      • kind string Required

        Kind of resource

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

      • price number(double) Required

        Resource price

      • price_per_hour number(double) Required

        Price per hour

      • name string Required

        Resource name

      • sku string Required

        Stock Keeping Unit (SKU)

  • The specified date range is invalid. (code: costs.invalid_date_range)

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

      Value is costs.invalid_date_range.

    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 current user does not have access to the requested organization. (code: organization.invalid_access)

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

      Value is organization.invalid_access.

    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

  • Organization not found. (code: organization.not_found)

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

      Value is organization.not_found.

    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

  • Error fetching the itemized costs for the organization. (code: billing_service.failed_request)

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

      Value is billing_service.failed_request.

    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

GET /billing/costs/{organization_id}/items
curl \
 -X GET https://{{hostname}}/api/v1/billing/costs/{organization_id}/items
Response examples (200)
{
  "costs": {
    "total": 42.0,
    "dimensions": [
      {
        "type": "capacity",
        "cost": 42.0
      }
    ]
  },
  "data_transfer_and_storage": [
    {
      "cost": 42.0,
      "name": "string",
      "quantity": {
        "value": 42,
        "formatted_value": "string"
      },
      "rate": {
        "value": 42.0,
        "formatted_value": "string"
      },
      "sku": "string",
      "type": "string"
    }
  ],
  "resources": [
    {
      "hours": 42,
      "instance_count": 42,
      "period": {
        "start": "2025-05-04T09:42:00+00:00",
        "end": "2025-05-04T09:42:00+00:00"
      },
      "kind": "elasticsearch",
      "price": 42.0,
      "price_per_hour": 42.0,
      "name": "string",
      "sku": "string"
    }
  ]
}
Response examples (400)
# Headers
x-cloud-error-codes: costs.invalid_date_range

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

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

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

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

Comments

Manage resource comments.














































Update Deployment

PUT /deployments/{deployment_id}

Updates a Deployment.

Path parameters

Query parameters

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

    Default value is false.

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

    Default value is false.

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

    Default value is false.

  • version string

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

Body Required

The deployment definition

  • name string

    A new name for the deployment, otherwise stays the same.

  • prune_orphans boolean Required

    Whether or not to prune orphan resources that are no longer mentioned in this request. Note that resourcesare tracked by ref_id, and if a resource's ref_id is changed, any previous running resources created with that previousref_id are considered to be orphaned as well.

  • New information about the Resources that will have this Deployment, otherwise they stay the same

    Additional properties are allowed.

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

      A list of payloads for Elasticsearch cluster updates

      Hide elasticsearch attributes Show elasticsearch attributes object
      • ref_id string Required

        A locally-unique user-specified id for this Elasticsearch cluster

      • The human readable name for the cluster (defaults to the generated cluster id if not specified)

      • region string Required

        The region where this resource exists

      • plan object Required

        The plan for building this Elasticsearch cluster

        Additional properties are allowed.

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

            Unique identifier of this topology element

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

            Additional properties are allowed.

            Hide node_type attributes Show node_type attributes object
            • master boolean

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

            • data boolean

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

            • ingest boolean

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

            • ml boolean

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

          • node_roles array[string]

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

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

          • memory_per_node integer(int32)

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

          • node_count_per_zone integer(int32)

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

          • zone_count integer(int32)

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

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

            Additional properties are allowed.

            Hide elasticsearch attributes Show elasticsearch attributes object
            • version string

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

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

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

              Additional properties are allowed.

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

                Additional properties are allowed.

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

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

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

                • stored object

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

                  Additional properties are allowed.

                  Hide stored attributes Show stored attributes object
                  • enabled boolean

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

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

                • file object

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

                  Additional properties are allowed.

                  Hide file attributes Show file attributes object
                  • enabled boolean

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

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

                • inline object

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

                  Additional properties are allowed.

                  Hide inline attributes Show inline attributes object
                  • enabled boolean

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

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

              • reindex_whitelist array[string]

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

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

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

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

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

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

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

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

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

              Additional properties are allowed.

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

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

              Additional properties are allowed.

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

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

            • user_plugins array[object]

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

              Hide user_plugins attributes Show user_plugins attributes object
              • name string Required

                The name of the plugin

              • url string Required

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

              • elasticsearch_version string Required

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

            • user_bundles array[object]

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

              Hide user_bundles attributes Show user_bundles attributes object
              • name string Required

                The name of the bundle

              • url string Required

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

              • elasticsearch_version string Required

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

            • curation object

              Defines the index curation routing for the cluster

              Additional properties are allowed.

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

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

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

          • size object

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

            Additional properties are allowed.

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

              Amount of resource

            • resource string Required

              Type of resource

              Values are memory or storage.

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

            Additional properties are allowed.

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

              Amount of resource

            • resource string Required

              Type of resource

              Values are memory or storage.

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

            Additional properties are allowed.

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

              Amount of resource

            • resource string Required

              Type of resource

              Values are memory or storage.

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

            Additional properties are allowed.

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

            Additional properties are allowed.

            Hide topology_element_control attribute Show topology_element_control attribute object
            • min object Required

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

              Additional properties are allowed.

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

                Amount of resource

              • resource string Required

                Type of resource

                Values are memory or storage.

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

        • elasticsearch object Required

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

          Additional properties are allowed.

          Hide elasticsearch attributes Show elasticsearch attributes object
          • version string

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

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

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

            Additional properties are allowed.

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

              Additional properties are allowed.

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

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

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

              • stored object

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

                Additional properties are allowed.

                Hide stored attributes Show stored attributes object
                • enabled boolean

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

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

              • file object

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

                Additional properties are allowed.

                Hide file attributes Show file attributes object
                • enabled boolean

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

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

              • inline object

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

                Additional properties are allowed.

                Hide inline attributes Show inline attributes object
                • enabled boolean

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

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

            • reindex_whitelist array[string]

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

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

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

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

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

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

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

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

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

            Additional properties are allowed.

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

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

            Additional properties are allowed.

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

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

          • user_plugins array[object]

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

            Hide user_plugins attributes Show user_plugins attributes object
            • name string Required

              The name of the plugin

            • url string Required

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

            • elasticsearch_version string Required

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

          • user_bundles array[object]

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

            Hide user_bundles attributes Show user_bundles attributes object
            • name string Required

              The name of the bundle

            • url string Required

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

            • elasticsearch_version string Required

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

          • curation object

            Defines the index curation routing for the cluster

            Additional properties are allowed.

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

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

          Additional properties are allowed.

          Hide deployment_template attributes Show deployment_template attributes object
          • id string Required

            The unique identifier of the deployment template

          • version string

            A version identifier to disambiguate multiple revisions of the same template

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

          Additional properties are allowed.

          Hide transient attributes Show transient attributes object
          • strategy object

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

            Additional properties are allowed.

            Hide strategy attributes Show strategy attributes object
            • rolling object

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

              Additional properties are allowed.

              Hide rolling attributes Show rolling attributes object
              • group_by string

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

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

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

              • shard_init_wait_time integer(int64)

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

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

              Additional properties are allowed.

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

              Additional properties are allowed.

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

              Additional properties are allowed.

          • The configuration settings for the timeout and fallback parameters.

            Additional properties are allowed.

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

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

            • calm_wait_time integer(int64)

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

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

                The instance id that is going to be moved

              • to array[string]

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

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

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

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

              • to array[string]

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

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

            • move_only boolean

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

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

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

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

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

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

            • max_snapshot_age integer(int64)

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

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

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

              Value is forced.

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

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

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

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

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

          • Restores a snapshot from a local or remote repository.

            Additional properties are allowed.

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

            • snapshot_name string Required

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

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

              Additional properties are allowed.

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

                Additional properties are allowed.

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

              Additional properties are allowed.

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

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

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

                Additional properties are allowed.

            • strategy string

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

              Values are partial, full, or recovery.

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

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

            Additional properties are allowed.

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

              The remote resources

              Hide resources attributes Show resources attributes object
              • deployment_id string Required

                The id of the deployment

              • elasticsearch_ref_id string Required

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

              • alias string Required

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

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

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

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

            Additional properties are allowed.

        • Enable autoscaling for this Elasticsearch cluster.

      • settings object

        The settings for building this Elasticsearch cluster

        Additional properties are allowed.

        Hide settings attributes Show settings attributes object
        • snapshot object

          The snapshot settings for this deployment. When provided, snapshot settings are changed as specified. A null value reverts the field to the default value. Otherwise, all snapshot settings remain as they were set previously.

          Additional properties are allowed.

          Hide snapshot attributes Show snapshot attributes object
          • Snapshot repository configuration

            Additional properties are allowed.

            Hide repository attributes Show repository attributes object
            • static object

              Cluster snapshot static repository settings, containing repository type and settings

              Additional properties are allowed.

              Hide static attributes Show static attributes object
              • Type of snapshot repository, ie: S3

              • settings object

                Settings associated with snapshot repository

                Additional properties are allowed.

            • Cluster snapshot reference repository settings, containing the repository name in ECE fashion

              Additional properties are allowed.

              Hide reference attribute Show reference attribute object
              • ECE snapshot repository name, from the '/platform/configuration/snapshots/repositories' endpoint

            • default object

              Cluster snapshot default repository settings

              Additional properties are allowed.

          • interval string

            Interval between snapshots, with the format 'length unit' (space is optional), where unit can be one of: d (day), h (hour), min (minute). Default is 30 minutes

          • Interval between snapshot progress checks, with the format 'length unit' (space is optional), where unit can be one of: d (day), h (hour), min (minute). Default is 1 minute

          • The time to wait between snapshot phases (snapshot, purge), with the format 'length unit' (space is optional), where unit can be one of: d (day), h (hour), min (minute). Default is 10 minutes

          • enabled boolean

            Indicates if Snapshotting is enabled

          • suspended array[string]

            List of temporary snapshot suspensions

          • Cluster snapshot retention information

            Additional properties are allowed.

            Hide retention attributes Show retention attributes object
            • snapshots integer(int32)

              Number of snapshots to retain

            • max_age string

              Total retention period for all snapshots, with the format 'length unit' (space is optional), where unit can be one of: d (day), h (hour), min (minute)

          • Cron expression indicating when should snapshots be taken. This can be enabled only if SLM is enabled for the deployment and 'interval' is not present

        • The monitoring settings for this deployment. When provided, monitoring settings are changed as specified. A null value reverts the field to the default value. Otherwise, all monitoring settings remain as they were set previously.

          Additional properties are allowed.

          Hide monitoring attribute Show monitoring attribute object
          • target_cluster_id string Required

            The Id of the target cluster to which to send monitoring information

        • metadata object

          The top-level configuration settings for the Elasticsearch cluster.

          Additional properties are allowed.

          Hide metadata attributes Show metadata attributes object
          • name string

            The display name of the cluster

          • owner_id string

            The user id (referencing whatever user database is in use) of the cluster owner

          • Subscription level of the cluster

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

          • Contact email for the cluster

          • The top-level configuration settings for the Elasticsearch cluster resources.

            Additional properties are allowed.

            Hide resources attribute Show resources attribute object
            • cpu object

              Specifies the CPU resource settings for the Elasticsearch cluster.

              Additional properties are allowed.

              Hide cpu attributes Show cpu attributes object
              • boost boolean

                Indicates if the CPU boost flag is enabled or not.

              • hard_limit boolean

                Indicates if the CPU hard limit flag is enabled or not. When set to true (default), allocates CPU timeshare based on the total CPU time multiplied by the relative RAM capacity of the instance on a given host. When set to false, delegates CPU allocation to the operating system to schedule CPU timeshares.

        • curation object

          The curation settings for this deployment. When provided, curation settings are changed as specified. A null value reverts the field to the default value. Otherwise, all curation settings remain as they were set previously.

          Additional properties are allowed.

          Hide curation attribute Show curation attribute object
          • specs array[object] Required

            Specifications for curation

            Hide specs attributes Show specs attributes object
        • Threshold starting from which the number of instances in the cluster results in the introduction of dedicated masters. If the cluster is downscaled to a number of nodes below this one, dedicated masters will be removed. Limit is inclusive. When provided the threshold setting is updated. A null value removes the field. Otherwise, the setting remains as it was set previously.

        • The rulesets to apply to all resources in this cluster. When specified, the set of rulesets is updated and the same rulesets will be applied to Kibana and APM clusters as well. If not specified, the rulesets remain as they were set previously.

          Additional properties are allowed.

          Hide traffic_filter attribute Show traffic_filter attribute object
          • rulesets array[string] Required

            IDs of the traffic filter rulesets

        • trust object

          Configuration of trust with other clusters. When provided, trust settings are changed as specified. A null value reverts the field to the default value. Otherwise, all trust settings remain as they were set previously.

          Additional properties are allowed.

          Hide trust attributes Show trust attributes object
          • accounts array[object]

            The list of trust relationships with different accounts

            Hide accounts attributes Show accounts attributes object
            • account_id string Required

              the ID of the Account

            • name string

              A human readable name of the trust relationship

            • trust_all boolean Required

              If true, all clusters in this account will by default be trusted and the trust_allowlist is ignored.

            • trust_allowlist array[string]

              The list of clusters to trust. Only used when trust_all is false.

          • external array[object]

            The list of trust relationships with external entities

            Hide external attributes Show external attributes object
            • trust_relationship_id string Required

              The ID of the external trust relationship

            • name string

              The name of the external trust relationship. Retrieved from the TrustRelationship and ignored on write.

            • trust_all boolean Required

              If true, all clusters in this external entity will be trusted and the trust_allowlist is ignored.

            • trust_allowlist array[string]

              The list of clusters to trust. Only used when trust_all is false.

          • direct array[object]

            The list of trust relationships where the certificate is bundled with the trust setting. Allows configuring trust for clusters running outside of an Elastic Cloud managed environment or in an Elastic Cloud environment without an environment level trust established.

            Hide direct attributes Show direct attributes object
            • uid string

              Auto generated identifier for this trust, allows distinguishing between update vs remove and add.

            • name string Required

              a human readable name of the trust relationship

            • type string

              The type can either be ESS, ECE, generic or proxy. If none is specified, then generic is assumed. If proxy is specified, trust_all should be false and trust_allowlist, scope_id and additional_node_names should be omitted.

              Values are ECE, ESS, generic, or proxy.

            • trust_all boolean Required

              If true, scope_id is required and the trust_allowlist is ignored and all clusters matching the scope id will be trusted.

            • trust_allowlist array[string]

              The list of clusters with matching scope to trust. Only used when trust_all is false. Providing one or more clusters makes scope_id mandatory.

            • scope_id string

              A lowercase alphanumerical string of max 32 characters. Usually an organization id or an environment id, but could really be any suitable suffix for clusters using the CA certificate of this trust. Required unless trust_all is false and trust_allowlist is empty.

            • A list of node names trusted in addition to those deducible from trust_allowlist and scope id. Allows trusting nodes that don't have a scoped name at the cost of maintaining the list. Mandatory if scope id is not defined. Wildcards are not allowed.

            • certificates array[object] Required

              The public ca certificate(s) to trust. Only one is required, but it is possible to specify multiple certificates in order to facilitate key rotation.

              Hide certificates attribute Show certificates attribute object
              • pem string Required

                The public ca certificate as string in PEM format.

        • The contents of the Elasticsearch keystore. It's a write only field.

          Additional properties are allowed.

          Hide keystore_contents attribute Show keystore_contents attribute object
          • secrets object Required

            List of secrets

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

              The value that you configure for the Elasticsearch keystore secret.

              Additional properties are allowed.

              Hide * attributes Show * attributes object
              • value object

                Value of this setting. This can either be a string or a JSON object that is stored as a JSON string in the keystore. NOTE: When the keystore secret is unspecified, it is removed.

                Additional properties are allowed.

              • as_file boolean

                Stores the keystore secret as a file. The default is false, which stores the keystore secret as string when value is a plain string, or true when value is an object.

    • kibana array[object]

      A list of payloads for Kibana updates

      Hide kibana attributes Show kibana attributes object
      • ref_id string Required

        A locally-unique user-specified id for Kibana

      • Alias to the Elasticsearch Cluster to attach Kibana to

      • The human readable name for the Kibana cluster (default: takes the name of its Elasticsearch cluster)

      • region string Required

        The region where this resource exists

      • plan object Required

        The plan for the Kibana instance.

        Additional properties are allowed.

        Hide plan attributes Show plan attributes object
        • cluster_topology array[object]
          Hide cluster_topology attributes Show cluster_topology attributes object
          • memory_per_node integer(int32)

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

          • node_count_per_zone integer(int32)

            The number of nodes of this type that are allocated within each zone (i.e. total capacity per zone = node_count_per_zone * memory_per_node in MB).

          • Controls the allocation of this topology element as well as allowed sizes and node_types. It needs to match the id of an existing instance configuration.

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

          • size object

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

            Additional properties are allowed.

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

              Amount of resource

            • resource string Required

              Type of resource

              Values are memory or storage.

          • zone_count integer(int32)

            number of zones in which nodes will be placed

          • kibana object

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

            Additional properties are allowed.

            Hide kibana attributes Show kibana attributes object
            • version string

              The version of the Kibana cluster (must be one of the ECE supported versions, and won't work unless it matches the Elasticsearch version. Leave blank to auto-detect version.)

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

            • A subset of Kibana settings. TIP: To define the complete set of Elasticsearch settings, use KibanaSystemSettings with user_settings_override_ and user_settings_.

              Additional properties are allowed.

              Hide system_settings attributes Show system_settings attributes object
              • DEPRECATED: Scheduled for removal in a future version of the API.

                Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

              • Optionally override the account within Elasticsearch - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

              • Optionally override the account within Elasticsearch - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

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

              Additional properties are allowed.

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

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

              Additional properties are allowed.

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

        • kibana object Required

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

          Additional properties are allowed.

          Hide kibana attributes Show kibana attributes object
          • version string

            The version of the Kibana cluster (must be one of the ECE supported versions, and won't work unless it matches the Elasticsearch version. Leave blank to auto-detect version.)

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

          • A subset of Kibana settings. TIP: To define the complete set of Elasticsearch settings, use KibanaSystemSettings with user_settings_override_ and user_settings_.

            Additional properties are allowed.

            Hide system_settings attributes Show system_settings attributes object
            • DEPRECATED: Scheduled for removal in a future version of the API.

              Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

            • Optionally override the account within Elasticsearch - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

            • Optionally override the account within Elasticsearch - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

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

            Additional properties are allowed.

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

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

            Additional properties are allowed.

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

        • 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 transient attributes Show transient attributes object
          • strategy object

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

            Additional properties are allowed.

            Hide strategy attributes Show strategy attributes object
            • rolling object

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

              Additional properties are allowed.

              Hide rolling attributes Show rolling attributes object
              • group_by string

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

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

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

              • shard_init_wait_time integer(int64)

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

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

              Additional properties are allowed.

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

              Additional properties are allowed.

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

              Additional properties are allowed.

          • The configuration settings for the timeout and fallback parameters.

            Additional properties are allowed.

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

              The total timeout in seconds after which the plan is cancelled even if it is not complete. Defaults to 4x the max memory capacity per node (in MB)

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

      • settings object

        The settings for building this Kibana cluster

        Additional properties are allowed.

        Hide settings attribute Show settings attribute object
        • metadata object

          The top-level configuration settings for the Elasticsearch cluster.

          Additional properties are allowed.

          Hide metadata attributes Show metadata attributes object
          • name string

            The display name of the cluster

          • owner_id string

            The user id (referencing whatever user database is in use) of the cluster owner

          • Subscription level of the cluster

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

          • Contact email for the cluster

          • The top-level configuration settings for the Elasticsearch cluster resources.

            Additional properties are allowed.

            Hide resources attribute Show resources attribute object
            • cpu object

              Specifies the CPU resource settings for the Elasticsearch cluster.

              Additional properties are allowed.

              Hide cpu attributes Show cpu attributes object
              • boost boolean

                Indicates if the CPU boost flag is enabled or not.

              • hard_limit boolean

                Indicates if the CPU hard limit flag is enabled or not. When set to true (default), allocates CPU timeshare based on the total CPU time multiplied by the relative RAM capacity of the instance on a given host. When set to false, delegates CPU allocation to the operating system to schedule CPU timeshares.

    • apm array[object]

      A list of payloads for APM updates

      Hide apm attributes Show apm attributes object
      • ref_id string Required

        A locally-unique user-specified id for APM

      • Alias to the Elasticsearch Cluster to attach APM to

      • The human readable name for the APM cluster (default: takes the name of its Elasticsearch cluster)

      • region string Required

        The region where this resource exists

      • plan object Required

        The plan for the APM Server.

        Additional properties are allowed.

        Hide plan attributes Show plan attributes object
        • cluster_topology array[object]
          Hide cluster_topology attributes Show cluster_topology attributes object
          • Controls the allocation of this topology element as well as allowed sizes and node_types. It needs to match the id of an existing instance configuration.

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

          • size object

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

            Additional properties are allowed.

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

              Amount of resource

            • resource string Required

              Type of resource

              Values are memory or storage.

          • zone_count integer(int32)

            number of zones in which nodes will be placed

          • apm object

            The configuration options for the APM Server.

            Additional properties are allowed.

            Hide apm attributes Show apm attributes object
            • version string

              The version of the Apm cluster (must be one of the ECE supported versions, and won't work unless it matches the APM version. Leave blank to auto-detect version.)

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

            • A structure that defines a curated subset of the APM Server settings. TIP: To define the complete set of APM Server setting, use ApmSystemSettings with user_settings_override_ and user_settings_.

              Additional properties are allowed.

              Hide system_settings attributes Show system_settings attributes object
              • DEPRECATED: Scheduled for removal in a future version of the API.

                Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

              • DEPRECATED: Scheduled for removal in a future version of the API.

                Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

              • Optionally override the account within APM - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

              • Optionally override the account within APM - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

              • Optionally override the secret token within APM - defaults to the previously existing secretToken

              • Optionally enable debug mode for APM servers - defaults false

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

              Additional properties are allowed.

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

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

              Additional properties are allowed.

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

        • apm object Required

          The configuration options for the APM Server.

          Additional properties are allowed.

          Hide apm attributes Show apm attributes object
          • version string

            The version of the Apm cluster (must be one of the ECE supported versions, and won't work unless it matches the APM version. Leave blank to auto-detect version.)

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

          • A structure that defines a curated subset of the APM Server settings. TIP: To define the complete set of APM Server setting, use ApmSystemSettings with user_settings_override_ and user_settings_.

            Additional properties are allowed.

            Hide system_settings attributes Show system_settings attributes object
            • DEPRECATED: Scheduled for removal in a future version of the API.

              Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

            • DEPRECATED: Scheduled for removal in a future version of the API.

              Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

            • Optionally override the account within APM - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

            • Optionally override the account within APM - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

            • Optionally override the secret token within APM - defaults to the previously existing secretToken

            • Optionally enable debug mode for APM servers - defaults false

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

            Additional properties are allowed.

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

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

            Additional properties are allowed.

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

        • 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 transient attributes Show transient attributes object
          • strategy object

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

            Additional properties are allowed.

            Hide strategy attributes Show strategy attributes object
            • rolling object

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

              Additional properties are allowed.

              Hide rolling attributes Show rolling attributes object
              • group_by string

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

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

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

              • shard_init_wait_time integer(int64)

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

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

              Additional properties are allowed.

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

              Additional properties are allowed.

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

              Additional properties are allowed.

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

      • settings object

        The settings for building this APM cluster

        Additional properties are allowed.

        Hide settings attribute Show settings attribute object
        • metadata object

          The top-level configuration settings for the Elasticsearch cluster.

          Additional properties are allowed.

          Hide metadata attributes Show metadata attributes object
          • name string

            The display name of the cluster

          • owner_id string

            The user id (referencing whatever user database is in use) of the cluster owner

          • Subscription level of the cluster

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

          • Contact email for the cluster

          • The top-level configuration settings for the Elasticsearch cluster resources.

            Additional properties are allowed.

            Hide resources attribute Show resources attribute object
            • cpu object

              Specifies the CPU resource settings for the Elasticsearch cluster.

              Additional properties are allowed.

              Hide cpu attributes Show cpu attributes object
              • boost boolean

                Indicates if the CPU boost flag is enabled or not.

              • hard_limit boolean

                Indicates if the CPU hard limit flag is enabled or not. When set to true (default), allocates CPU timeshare based on the total CPU time multiplied by the relative RAM capacity of the instance on a given host. When set to false, delegates CPU allocation to the operating system to schedule CPU timeshares.

    • appsearch array[object]

      A list of payloads for AppSearch updates. AppSearch has been replaced by Enterprise Search in the Elastic Stack 7.7 and higher

      Hide appsearch attributes Show appsearch attributes object
      • ref_id string Required

        A locally-unique user-specified id for AppSearch

      • Alias to the Elasticsearch Cluster to attach AppSearch to

      • The human readable name for the AppSearch cluster (default: takes the name of its Elasticsearch cluster)

      • region string Required

        The region where this resource exists

      • plan object Required

        The plan for the App Search cluster.

        Additional properties are allowed.

        Hide plan attributes Show plan attributes object
        • cluster_topology array[object]
          Hide cluster_topology attributes Show cluster_topology attributes object
          • Defines the AppSearch node type

            Additional properties are allowed.

            Hide node_type attributes Show node_type attributes object
            • appserver boolean Required

              Defines whether this instance should run as Application/API server

            • worker boolean Required

              Defines whether this instance should run as background worker

          • Controls the allocation of this topology element as well as allowed sizes and node_types. It needs to match the id of an existing instance configuration.

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

          • size object

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

            Additional properties are allowed.

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

              Amount of resource

            • resource string Required

              Type of resource

              Values are memory or storage.

          • zone_count integer(int32)

            number of zones in which nodes will be placed

          • Additional properties are allowed.

            Hide appsearch attributes Show appsearch attributes object
            • version string

              The version of the AppSearch cluster (must be one of the ECE supported versions, and won't work unless it matches the Elasticsearch version. Leave blank to auto-detect version.)

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

            • This structure defines a curated subset of the AppSearch settings. (This field together with 'user_settings_override*' and 'user_settings*' defines the total set of AppSearch settings)

              Additional properties are allowed.

              Hide system_settings attributes Show system_settings attributes object
              • Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

              • Optionally override the account within App Search - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

              • Optionally override the account within App Search - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

              • Optionally override the secret session key within App Search - defaults to the previously existing secretSession. Note that this field is never returned from the API, it is write only.

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

              Additional properties are allowed.

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

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

              Additional properties are allowed.

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

        • appsearch object Required

          Additional properties are allowed.

          Hide appsearch attributes Show appsearch attributes object
          • version string

            The version of the AppSearch cluster (must be one of the ECE supported versions, and won't work unless it matches the Elasticsearch version. Leave blank to auto-detect version.)

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

          • This structure defines a curated subset of the AppSearch settings. (This field together with 'user_settings_override*' and 'user_settings*' defines the total set of AppSearch settings)

            Additional properties are allowed.

            Hide system_settings attributes Show system_settings attributes object
            • Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

            • Optionally override the account within App Search - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

            • Optionally override the account within App Search - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

            • Optionally override the secret session key within App Search - defaults to the previously existing secretSession. Note that this field is never returned from the API, it is write only.

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

            Additional properties are allowed.

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

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

            Additional properties are allowed.

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

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

          Additional properties are allowed.

          Hide transient attributes Show transient attributes object
          • strategy object

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

            Additional properties are allowed.

            Hide strategy attributes Show strategy attributes object
            • rolling object

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

              Additional properties are allowed.

              Hide rolling attributes Show rolling attributes object
              • group_by string

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

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

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

              • shard_init_wait_time integer(int64)

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

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

              Additional properties are allowed.

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

              Additional properties are allowed.

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

              Additional properties are allowed.

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

      • settings object

        The settings for building this AppSearch cluster

        Additional properties are allowed.

        Hide settings attribute Show settings attribute object
        • metadata object

          The top-level configuration settings for the Elasticsearch cluster.

          Additional properties are allowed.

          Hide metadata attributes Show metadata attributes object
          • name string

            The display name of the cluster

          • owner_id string

            The user id (referencing whatever user database is in use) of the cluster owner

          • Subscription level of the cluster

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

          • Contact email for the cluster

          • The top-level configuration settings for the Elasticsearch cluster resources.

            Additional properties are allowed.

            Hide resources attribute Show resources attribute object
            • cpu object

              Specifies the CPU resource settings for the Elasticsearch cluster.

              Additional properties are allowed.

              Hide cpu attributes Show cpu attributes object
              • boost boolean

                Indicates if the CPU boost flag is enabled or not.

              • hard_limit boolean

                Indicates if the CPU hard limit flag is enabled or not. When set to true (default), allocates CPU timeshare based on the total CPU time multiplied by the relative RAM capacity of the instance on a given host. When set to false, delegates CPU allocation to the operating system to schedule CPU timeshares.

    • integrations_server array[object]

      A list of payloads for Integrations Server updates

      Hide integrations_server attributes Show integrations_server attributes object
      • ref_id string Required

        A locally-unique user-specified id for the Integrations Server

      • Alias to the Elasticsearch Cluster to attach the Integrations Server to

      • The human readable name for the Integrations Server cluster (default: takes the name of its Elasticsearch cluster)

      • region string Required

        The region where this resource exists

      • plan object Required

        The plan for the Integrations Server.

        Additional properties are allowed.

        Hide plan attributes Show plan attributes object
        • cluster_topology array[object]
          Hide cluster_topology attributes Show cluster_topology attributes object
          • Controls the allocation of this topology element as well as allowed sizes and node_types. It needs to match the id of an existing instance configuration.

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

          • size object

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

            Additional properties are allowed.

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

              Amount of resource

            • resource string Required

              Type of resource

              Values are memory or storage.

          • zone_count integer(int32)

            number of zones in which nodes will be placed

          • The configuration options for the Integrations Server.

            Additional properties are allowed.

            Hide integrations_server attributes Show integrations_server attributes object
            • version string

              The version of the Integrations Server cluster (must be one of the ECE supported versions, and won't work unless it matches the Integrations Server version. Leave blank to auto-detect version.)

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

            • A structure that defines a curated subset of the Integrations Server settings. TIP: To define the complete set of Integrations Server setting, use IntegrationsSystemSettings with user_settings_override_ and user_settings_.

              Additional properties are allowed.

              Hide system_settings attributes Show system_settings attributes object
              • DEPRECATED: Scheduled for removal in a future version of the API.

                Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

              • DEPRECATED: Scheduled for removal in a future version of the API.

                Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

              • Optionally override the account within Integrations Server - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

              • Optionally override the account within Integrations Server - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

              • Optionally override the secret token within Integrations Server - defaults to the previously existing secretToken

              • Optionally enable debug mode for Integrations Server - defaults false

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

              Additional properties are allowed.

            • An arbitrary YAML object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters are on the allowlist and not on the denylist. (These field together with 'user_settings_override*' and 'system_settings' defines the total set of Integrations Server settings)

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

              Additional properties are allowed.

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

            • mode string

              The mode the Integrations Server is operating in.

              Values are standalone or managed.

        • integrations_server object Required

          The configuration options for the Integrations Server.

          Additional properties are allowed.

          Hide integrations_server attributes Show integrations_server attributes object
          • version string

            The version of the Integrations Server cluster (must be one of the ECE supported versions, and won't work unless it matches the Integrations Server version. Leave blank to auto-detect version.)

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

          • A structure that defines a curated subset of the Integrations Server settings. TIP: To define the complete set of Integrations Server setting, use IntegrationsSystemSettings with user_settings_override_ and user_settings_.

            Additional properties are allowed.

            Hide system_settings attributes Show system_settings attributes object
            • DEPRECATED: Scheduled for removal in a future version of the API.

              Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

            • DEPRECATED: Scheduled for removal in a future version of the API.

              Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

            • Optionally override the account within Integrations Server - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

            • Optionally override the account within Integrations Server - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

            • Optionally override the secret token within Integrations Server - defaults to the previously existing secretToken

            • Optionally enable debug mode for Integrations Server - defaults false

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

            Additional properties are allowed.

          • An arbitrary YAML object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters are on the allowlist and not on the denylist. (These field together with 'user_settings_override*' and 'system_settings' defines the total set of Integrations Server settings)

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

            Additional properties are allowed.

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

          • mode string

            The mode the Integrations Server is operating in.

            Values are standalone or managed.

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

          Additional properties are allowed.

          Hide transient attributes Show transient attributes object
          • strategy object

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

            Additional properties are allowed.

            Hide strategy attributes Show strategy attributes object
            • rolling object

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

              Additional properties are allowed.

              Hide rolling attributes Show rolling attributes object
              • group_by string

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

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

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

              • shard_init_wait_time integer(int64)

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

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

              Additional properties are allowed.

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

              Additional properties are allowed.

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

              Additional properties are allowed.

          • The plan control configuration options for the Integrations 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.

      • settings object

        The settings for building this Integrations Server cluster

        Additional properties are allowed.

        Hide settings attribute Show settings attribute object
        • metadata object

          The top-level configuration settings for the Elasticsearch cluster.

          Additional properties are allowed.

          Hide metadata attributes Show metadata attributes object
          • name string

            The display name of the cluster

          • owner_id string

            The user id (referencing whatever user database is in use) of the cluster owner

          • Subscription level of the cluster

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

          • Contact email for the cluster

          • The top-level configuration settings for the Elasticsearch cluster resources.

            Additional properties are allowed.

            Hide resources attribute Show resources attribute object
            • cpu object

              Specifies the CPU resource settings for the Elasticsearch cluster.

              Additional properties are allowed.

              Hide cpu attributes Show cpu attributes object
              • boost boolean

                Indicates if the CPU boost flag is enabled or not.

              • hard_limit boolean

                Indicates if the CPU hard limit flag is enabled or not. When set to true (default), allocates CPU timeshare based on the total CPU time multiplied by the relative RAM capacity of the instance on a given host. When set to false, delegates CPU allocation to the operating system to schedule CPU timeshares.

  • settings object

    Any new configuration for the current deployment object. If there is no new configuration the value is unchanged.

    Additional properties are allowed.

    Hide settings attributes Show settings attributes object
    • Observability settings for this deployment

      Additional properties are allowed.

      Hide observability attributes Show observability attributes object
      • logging object

        The logging settings for the deployment

        Additional properties are allowed.

        Hide logging attribute Show logging attribute object
        • destination object Required

          The destination deployment that this deployment's logs will be sent to

          Additional properties are allowed.

          Hide destination attributes Show destination attributes object
          • deployment_id string Required

            The deployment to send logs and/or metrics to. Contains either the deployment's ID or 'self'.

          • ref_id string

            RefId of the Elasticsearch cluster to send logs and/or metrics to. If not specified, refId is resolved automatically as long as the destination deployment contains a single Elasticsearch resource.

      • metrics object

        The metrics settings for the deployment

        Additional properties are allowed.

        Hide metrics attributes Show metrics attributes object
        • destination object Required

          The destination deployment that this deployment's logs will be sent to

          Additional properties are allowed.

          Hide destination attributes Show destination attributes object
          • deployment_id string Required

            The deployment to send logs and/or metrics to. Contains either the deployment's ID or 'self'.

          • ref_id string

            RefId of the Elasticsearch cluster to send logs and/or metrics to. If not specified, refId is resolved automatically as long as the destination deployment contains a single Elasticsearch resource.

        • Set to true to force the deployment to use legacy monitoring instead of Metricbeat-based monitoring.

    • Enable autoscaling for this deployment.

  • metadata object

    Any new information about the current deployment object. If there is no new information the value is unchanged.

    Additional properties are allowed.

    Hide metadata attributes Show metadata attributes object
    • Indicates if a deployment is system owned (restricts the set of operations that can be performed on it)

    • hidden boolean

      Whether or not this deployment is hidden from the normal deployment list

    • tags array[object]

      Arbitrary user-defined metadata associated with this deployment

      Hide tags attributes Show tags attributes object
      • key string Required

        The metadata field name

      • value string Required

        The metadata value

  • alias string

    A user-defined alias to use in place of Cluster IDs for user-friendly URLs

Responses

  • The request was valid and the deployment was updated.

    Hide headers attributes Show headers attributes
    Hide response attributes Show response attributes object
    • id string Required

      The id of the deployment

    • name string Required

      The name of the deployment

    • alias string

      A user-defined alias to use in place of ResourceIds for user-friendly resource URLs

    • resources array[object] Required

      List of resources that are part of the deployment after the update operation.

      Hide resources attributes Show resources attributes object
      • ref_id string Required

        A locally-unique friendly alias for this Elasticsearch cluster

      • The Elasticsearch cluster that this resource depends on.

      • id string Required

        A system-unique id for the created resource

      • kind string Required

        The kind of resource

      • region string Required

        Identifier of the region in which this resource runs.

      • cloud_id string

        An encoded string that provides other Elastic services with the necessary information to connect to this Elasticsearch and Kibana

      • Credentials for logging into a created resource. Only provided on initial create and absent otherwise.

        Additional properties are allowed.

        Hide credentials attributes Show credentials attributes object
        • username string Required

          The username of the newly created cluster

        • password string Required

          The password of the newly created cluster

      • Secret token for using a created resource. Only provided on initial create and absent otherwise.

      • warnings array[object]

        List of warnings generated from validating resource updates

        Hide warnings attributes Show warnings attributes object
        • code string Required

          A structured code representing the error type that occurred

        • message string

          A human readable message describing the warning that occurred

    • List of resources that have been shut down

      Additional properties are allowed.

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

        List of orphaned Elasticsearch resources

        Hide elasticsearch attributes Show elasticsearch attributes object
        • id string Required

          The id of the orphaned resource

        • dependents array[object] Required

          List of orphaned dependent resources

          Hide dependents attributes Show dependents attributes object
          • id string Required

            The id of the orphaned resource

          • kind string Required

            The kind of resource

      • kibana array[string] Required

        List of orphaned Kibana resource ids

      • apm array[string] Required

        List of orphaned APM resource ids

      • appsearch array[string] Required

        List of orphaned AppSearch resource ids

      • integrations_server array[string] Required

        List of orphaned Integrations Server resource ids

    • Backend diagnostics. Sent if validation is requested.

      Additional properties are allowed.

      Hide diagnostics attributes Show diagnostics attributes object
      • creates object

        Diagnostics for resources to be created

        Additional properties are allowed.

        Hide creates attributes Show creates attributes object
        • elasticsearch array[object]

          Diagnostics for Elasticsearch clusters

          Hide elasticsearch attributes Show elasticsearch attributes object
          • ref_id string Required

            A locally-unique user-specified id

          • display_name string Required

            The human readable name for the cluster (defaults to the generated cluster id if not specified)

          • backend_plan object Required

            The backend plan as JSON

            Additional properties are allowed.

        • kibana array[object]

          Diagnostics for Kibanas

          Hide kibana attributes Show kibana attributes object
          • ref_id string Required

            A locally-unique user-specified id

          • display_name string Required

            The human readable name (defaults to the generated cluster id if not specified)

          • The user-specified id of the Elasticsearch Cluster that this will link to

          • backend_plan object Required

            The backend plan as JSON

            Additional properties are allowed.

        • apm array[object]

          Diagnostics for APMs

          Hide apm attributes Show apm attributes object
          • ref_id string Required

            A locally-unique user-specified id

          • display_name string Required

            The human readable name (defaults to the generated cluster id if not specified)

          • The user-specified id of the Elasticsearch Cluster that this will link to

          • backend_plan object Required

            The backend plan as JSON

            Additional properties are allowed.

        • integrations_server array[object]

          Diagnostics for Integrations Server

          Hide integrations_server attributes Show integrations_server attributes object
          • ref_id string Required

            A locally-unique user-specified id

          • display_name string Required

            The human readable name (defaults to the generated cluster id if not specified)

          • The user-specified id of the Elasticsearch Cluster that this will link to

          • backend_plan object Required

            The backend plan as JSON

            Additional properties are allowed.

        • appsearch array[object]

          Diagnostics for AppSearches

          Hide appsearch attributes Show appsearch attributes object
          • ref_id string Required

            A locally-unique user-specified id

          • display_name string Required

            The human readable name (defaults to the generated cluster id if not specified)

          • The user-specified id of the Elasticsearch Cluster that this will link to

          • backend_plan object Required

            The backend plan as JSON

            Additional properties are allowed.

      • updates object

        Diagnostics for existing resources that may be updated

        Additional properties are allowed.

        Hide updates attributes Show updates attributes object
        • elasticsearch array[object]

          Diagnostics for Elasticsearch clusters

          Hide elasticsearch attributes Show elasticsearch attributes object
          • ref_id string Required

            A locally-unique user-specified id

          • display_name string Required

            The human readable name for the cluster (defaults to the generated cluster id if not specified)

          • backend_plan object Required

            The backend plan as JSON

            Additional properties are allowed.

        • kibana array[object]

          Diagnostics for Kibanas

          Hide kibana attributes Show kibana attributes object
          • ref_id string Required

            A locally-unique user-specified id

          • display_name string Required

            The human readable name (defaults to the generated cluster id if not specified)

          • The user-specified id of the Elasticsearch Cluster that this will link to

          • backend_plan object Required

            The backend plan as JSON

            Additional properties are allowed.

        • apm array[object]

          Diagnostics for APMs

          Hide apm attributes Show apm attributes object
          • ref_id string Required

            A locally-unique user-specified id

          • display_name string Required

            The human readable name (defaults to the generated cluster id if not specified)

          • The user-specified id of the Elasticsearch Cluster that this will link to

          • backend_plan object Required

            The backend plan as JSON

            Additional properties are allowed.

        • integrations_server array[object]

          Diagnostics for Integrations Server

          Hide integrations_server attributes Show integrations_server attributes object
          • ref_id string Required

            A locally-unique user-specified id

          • display_name string Required

            The human readable name (defaults to the generated cluster id if not specified)

          • The user-specified id of the Elasticsearch Cluster that this will link to

          • backend_plan object Required

            The backend plan as JSON

            Additional properties are allowed.

        • appsearch array[object]

          Diagnostics for AppSearches

          Hide appsearch attributes Show appsearch attributes object
          • ref_id string Required

            A locally-unique user-specified id

          • display_name string Required

            The human readable name (defaults to the generated cluster id if not specified)

          • The user-specified id of the Elasticsearch Cluster that this will link to

          • backend_plan object Required

            The backend plan as JSON

            Additional properties are allowed.

  • The deployment request had errors.

    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

  • You are not authorized to perform this action.

    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 Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)

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

      Value is deployments.deployment_not_found.

    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

PUT /deployments/{deployment_id}
curl \
 -X PUT https://{{hostname}}/api/v1/deployments/{deployment_id} \
 -d '{"name":"string","prune_orphans":true,"resources":{"elasticsearch":[{"ref_id":"string","display_name":"string","region":"string","plan":{"cluster_topology":[{"id":"string","node_type":{"master":true,"data":true,"ingest":true,"ml":true},"node_roles":["master"],"memory_per_node":42,"node_count_per_zone":42,"zone_count":42,"elasticsearch":{"version":"string","docker_image":"string","system_settings":{"scripting":{"painless_enabled":true,"mustache_enabled":true,"expressions_enabled":true,"stored":{"enabled":true,"sandbox_mode":true},"file":{"enabled":true,"sandbox_mode":true},"inline":{"enabled":true,"sandbox_mode":true}},"reindex_whitelist":["string"],"auto_create_index":true,"enable_close_index":true,"destructive_requires_name":true,"watcher_trigger_engine":"string","default_shards_per_index":42,"monitoring_collection_interval":42,"monitoring_history_duration":"string"},"user_settings_json":{},"user_settings_yaml":"string","user_settings_override_json":{},"user_settings_override_yaml":"string","enabled_built_in_plugins":["string"],"user_plugins":[{"name":"string","url":"string","elasticsearch_version":"string"}],"user_bundles":[{"name":"string","url":"string","elasticsearch_version":"string"}],"curation":{"from_instance_configuration_id":"string","to_instance_configuration_id":"string"},"node_attributes":{"additionalProperty1":"string","additionalProperty2":"string"}},"instance_configuration_id":"string","instance_configuration_version":42,"size":{"value":42,"resource":"memory"},"autoscaling_min":{"value":42,"resource":"memory"},"autoscaling_max":{"value":42,"resource":"memory"},"autoscaling_policy_override_json":{},"topology_element_control":{"min":{"value":42,"resource":"memory"}},"autoscaling_tier_override":true}],"elasticsearch":{"version":"string","docker_image":"string","system_settings":{"scripting":{"painless_enabled":true,"mustache_enabled":true,"expressions_enabled":true,"stored":{"enabled":true,"sandbox_mode":true},"file":{"enabled":true,"sandbox_mode":true},"inline":{"enabled":true,"sandbox_mode":true}},"reindex_whitelist":["string"],"auto_create_index":true,"enable_close_index":true,"destructive_requires_name":true,"watcher_trigger_engine":"string","default_shards_per_index":42,"monitoring_collection_interval":42,"monitoring_history_duration":"string"},"user_settings_json":{},"user_settings_yaml":"string","user_settings_override_json":{},"user_settings_override_yaml":"string","enabled_built_in_plugins":["string"],"user_plugins":[{"name":"string","url":"string","elasticsearch_version":"string"}],"user_bundles":[{"name":"string","url":"string","elasticsearch_version":"string"}],"curation":{"from_instance_configuration_id":"string","to_instance_configuration_id":"string"},"node_attributes":{"additionalProperty1":"string","additionalProperty2":"string"}},"deployment_template":{"id":"string","version":"string"},"transient":{"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":{}},"autoscaling_enabled":true},"settings":{"snapshot":{"repository":{"static":{"repository_type":"string","settings":{}},"reference":{"repository_name":"string"},"default":{}},"interval":"string","pending_interval":"string","wait_time_after_snapshotting":"string","enabled":true,"suspended":["string"],"retention":{"snapshots":42,"max_age":"string"},"cron_expression":"string"},"monitoring":{"target_cluster_id":"string"},"metadata":{"name":"string","owner_id":"string","subscription_level":"string","system_owned":true,"contact_email":"string","resources":{"cpu":{"boost":true,"hard_limit":true}}},"curation":{"specs":[{"index_pattern":"string","trigger_interval_seconds":42}]},"dedicated_masters_threshold":42,"traffic_filter":{"rulesets":["string"]},"trust":{"accounts":[{"account_id":"string","name":"string","trust_all":true,"trust_allowlist":["string"]}],"external":[{"trust_relationship_id":"string","name":"string","trust_all":true,"trust_allowlist":["string"]}],"direct":[{"uid":"string","name":"string","type":"ECE","trust_all":true,"trust_allowlist":["string"],"scope_id":"abc123","additional_node_names":["string"],"certificates":[{"pem":"string"}]}]},"keystore_contents":{"secrets":{"additionalProperty1":{"value":{},"as_file":true},"additionalProperty2":{"value":{},"as_file":true}}}}}],"kibana":[{"ref_id":"string","elasticsearch_cluster_ref_id":"string","display_name":"string","region":"string","plan":{"cluster_topology":[{"memory_per_node":42,"node_count_per_zone":42,"instance_configuration_id":"string","instance_configuration_version":42,"size":{"value":42,"resource":"memory"},"zone_count":42,"kibana":{"version":"string","docker_image":"string","system_settings":{"elasticsearch_url":"string","elasticsearch_username":"string","elasticsearch_password":"string"},"user_settings_json":{},"user_settings_yaml":"string","user_settings_override_json":{},"user_settings_override_yaml":"string"}}],"kibana":{"version":"string","docker_image":"string","system_settings":{"elasticsearch_url":"string","elasticsearch_username":"string","elasticsearch_password":"string"},"user_settings_json":{},"user_settings_yaml":"string","user_settings_override_json":{},"user_settings_override_yaml":"string"},"transient":{"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}}},"settings":{"metadata":{"name":"string","owner_id":"string","subscription_level":"string","system_owned":true,"contact_email":"string","resources":{"cpu":{"boost":true,"hard_limit":true}}}}}],"apm":[{"ref_id":"string","elasticsearch_cluster_ref_id":"string","display_name":"string","region":"string","plan":{"cluster_topology":[{"instance_configuration_id":"string","instance_configuration_version":42,"size":{"value":42,"resource":"memory"},"zone_count":42,"apm":{"version":"string","docker_image":"string","system_settings":{"elasticsearch_url":"string","kibana_url":"string","elasticsearch_username":"string","elasticsearch_password":"string","secret_token":"string","debug_enabled":true},"user_settings_json":{},"user_settings_yaml":"string","user_settings_override_json":{},"user_settings_override_yaml":"string"}}],"apm":{"version":"string","docker_image":"string","system_settings":{"elasticsearch_url":"string","kibana_url":"string","elasticsearch_username":"string","elasticsearch_password":"string","secret_token":"string","debug_enabled":true},"user_settings_json":{},"user_settings_yaml":"string","user_settings_override_json":{},"user_settings_override_yaml":"string"},"transient":{"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}}},"settings":{"metadata":{"name":"string","owner_id":"string","subscription_level":"string","system_owned":true,"contact_email":"string","resources":{"cpu":{"boost":true,"hard_limit":true}}}}}],"appsearch":[{"ref_id":"string","elasticsearch_cluster_ref_id":"string","display_name":"string","region":"string","plan":{"cluster_topology":[{"node_type":{"appserver":true,"worker":true},"instance_configuration_id":"string","instance_configuration_version":42,"size":{"value":42,"resource":"memory"},"zone_count":42,"appsearch":{"version":"string","docker_image":"string","system_settings":{"elasticsearch_url":"string","elasticsearch_username":"string","elasticsearch_password":"string","secret_session_key":"string"},"user_settings_json":{},"user_settings_yaml":"string","user_settings_override_json":{},"user_settings_override_yaml":"string"}}],"appsearch":{"version":"string","docker_image":"string","system_settings":{"elasticsearch_url":"string","elasticsearch_username":"string","elasticsearch_password":"string","secret_session_key":"string"},"user_settings_json":{},"user_settings_yaml":"string","user_settings_override_json":{},"user_settings_override_yaml":"string"},"transient":{"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}}},"settings":{"metadata":{"name":"string","owner_id":"string","subscription_level":"string","system_owned":true,"contact_email":"string","resources":{"cpu":{"boost":true,"hard_limit":true}}}}}],"enterprise_search":[{"ref_id":"string","elasticsearch_cluster_ref_id":"string","display_name":"string","region":"string","plan":{"cluster_topology":[{"node_type":{"appserver":true,"worker":true,"connector":true},"instance_configuration_id":"string","instance_configuration_version":42,"size":{"value":42,"resource":"memory"},"zone_count":42,"enterprise_search":{"version":"string","docker_image":"string","system_settings":{"elasticsearch_url":"string","elasticsearch_username":"string","elasticsearch_password":"string","secret_session_key":"string"},"user_settings_json":{},"user_settings_yaml":"string","user_settings_override_json":{},"user_settings_override_yaml":"string"},"allocator_filter":{},"node_configuration":"string","memory_per_node":{},"node_count_per_zone":{}}],"enterprise_search":{"version":"string","docker_image":"string","system_settings":{"elasticsearch_url":"string","elasticsearch_username":"string","elasticsearch_password":"string","secret_session_key":"string"},"user_settings_json":{},"user_settings_yaml":"string","user_settings_override_json":{},"user_settings_override_yaml":"string"},"transient":{"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}}},"settings":{"metadata":{"name":"string","owner_id":"string","subscription_level":"string","system_owned":true,"contact_email":"string","resources":{"cpu":{"boost":true,"hard_limit":true}}}}}],"integrations_server":[{"ref_id":"string","elasticsearch_cluster_ref_id":"string","display_name":"string","region":"string","plan":{"cluster_topology":[{"instance_configuration_id":"string","instance_configuration_version":42,"size":{"value":42,"resource":"memory"},"zone_count":42,"integrations_server":{"version":"string","docker_image":"string","system_settings":{"elasticsearch_url":"string","kibana_url":"string","elasticsearch_username":"string","elasticsearch_password":"string","secret_token":"string","debug_enabled":true},"user_settings_json":{},"user_settings_yaml":"string","user_settings_override_json":{},"user_settings_override_yaml":"string","mode":"standalone"}}],"integrations_server":{"version":"string","docker_image":"string","system_settings":{"elasticsearch_url":"string","kibana_url":"string","elasticsearch_username":"string","elasticsearch_password":"string","secret_token":"string","debug_enabled":true},"user_settings_json":{},"user_settings_yaml":"string","user_settings_override_json":{},"user_settings_override_yaml":"string","mode":"standalone"},"transient":{"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}}},"settings":{"metadata":{"name":"string","owner_id":"string","subscription_level":"string","system_owned":true,"contact_email":"string","resources":{"cpu":{"boost":true,"hard_limit":true}}}}}]},"settings":{"observability":{"logging":{"destination":{"deployment_id":"string","ref_id":"string"}},"metrics":{"destination":{"deployment_id":"string","ref_id":"string"},"force_legacy_monitoring":true}},"autoscaling_enabled":true},"metadata":{"system_owned":true,"hidden":true,"tags":[{"key":"string","value":"string"}]},"alias":"string"}'
Request examples
{
  "name": "string",
  "prune_orphans": true,
  "resources": {
    "elasticsearch": [
      {
        "ref_id": "string",
        "display_name": "string",
        "region": "string",
        "plan": {
          "cluster_topology": [
            {
              "id": "string",
              "node_type": {
                "master": true,
                "data": true,
                "ingest": true,
                "ml": true
              },
              "node_roles": [
                "master"
              ],
              "memory_per_node": 42,
              "node_count_per_zone": 42,
              "zone_count": 42,
              "elasticsearch": {
                "version": "string",
                "docker_image": "string",
                "system_settings": {
                  "scripting": {
                    "painless_enabled": true,
                    "mustache_enabled": true,
                    "expressions_enabled": true,
                    "stored": {
                      "enabled": true,
                      "sandbox_mode": true
                    },
                    "file": {
                      "enabled": true,
                      "sandbox_mode": true
                    },
                    "inline": {
                      "enabled": true,
                      "sandbox_mode": true
                    }
                  },
                  "reindex_whitelist": [
                    "string"
                  ],
                  "auto_create_index": true,
                  "enable_close_index": true,
                  "destructive_requires_name": true,
                  "watcher_trigger_engine": "string",
                  "default_shards_per_index": 42,
                  "monitoring_collection_interval": 42,
                  "monitoring_history_duration": "string"
                },
                "user_settings_json": {},
                "user_settings_yaml": "string",
                "user_settings_override_json": {},
                "user_settings_override_yaml": "string",
                "enabled_built_in_plugins": [
                  "string"
                ],
                "user_plugins": [
                  {
                    "name": "string",
                    "url": "string",
                    "elasticsearch_version": "string"
                  }
                ],
                "user_bundles": [
                  {
                    "name": "string",
                    "url": "string",
                    "elasticsearch_version": "string"
                  }
                ],
                "curation": {
                  "from_instance_configuration_id": "string",
                  "to_instance_configuration_id": "string"
                },
                "node_attributes": {
                  "additionalProperty1": "string",
                  "additionalProperty2": "string"
                }
              },
              "instance_configuration_id": "string",
              "instance_configuration_version": 42,
              "size": {
                "value": 42,
                "resource": "memory"
              },
              "autoscaling_min": {
                "value": 42,
                "resource": "memory"
              },
              "autoscaling_max": {
                "value": 42,
                "resource": "memory"
              },
              "autoscaling_policy_override_json": {},
              "topology_element_control": {
                "min": {
                  "value": 42,
                  "resource": "memory"
                }
              },
              "autoscaling_tier_override": true
            }
          ],
          "elasticsearch": {
            "version": "string",
            "docker_image": "string",
            "system_settings": {
              "scripting": {
                "painless_enabled": true,
                "mustache_enabled": true,
                "expressions_enabled": true,
                "stored": {
                  "enabled": true,
                  "sandbox_mode": true
                },
                "file": {
                  "enabled": true,
                  "sandbox_mode": true
                },
                "inline": {
                  "enabled": true,
                  "sandbox_mode": true
                }
              },
              "reindex_whitelist": [
                "string"
              ],
              "auto_create_index": true,
              "enable_close_index": true,
              "destructive_requires_name": true,
              "watcher_trigger_engine": "string",
              "default_shards_per_index": 42,
              "monitoring_collection_interval": 42,
              "monitoring_history_duration": "string"
            },
            "user_settings_json": {},
            "user_settings_yaml": "string",
            "user_settings_override_json": {},
            "user_settings_override_yaml": "string",
            "enabled_built_in_plugins": [
              "string"
            ],
            "user_plugins": [
              {
                "name": "string",
                "url": "string",
                "elasticsearch_version": "string"
              }
            ],
            "user_bundles": [
              {
                "name": "string",
                "url": "string",
                "elasticsearch_version": "string"
              }
            ],
            "curation": {
              "from_instance_configuration_id": "string",
              "to_instance_configuration_id": "string"
            },
            "node_attributes": {
              "additionalProperty1": "string",
              "additionalProperty2": "string"
            }
          },
          "deployment_template": {
            "id": "string",
            "version": "string"
          },
          "transient": {
            "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": {}
          },
          "autoscaling_enabled": true
        },
        "settings": {
          "snapshot": {
            "repository": {
              "static": {
                "repository_type": "string",
                "settings": {}
              },
              "reference": {
                "repository_name": "string"
              },
              "default": {}
            },
            "interval": "string",
            "pending_interval": "string",
            "wait_time_after_snapshotting": "string",
            "enabled": true,
            "suspended": [
              "string"
            ],
            "retention": {
              "snapshots": 42,
              "max_age": "string"
            },
            "cron_expression": "string"
          },
          "monitoring": {
            "target_cluster_id": "string"
          },
          "metadata": {
            "name": "string",
            "owner_id": "string",
            "subscription_level": "string",
            "system_owned": true,
            "contact_email": "string",
            "resources": {
              "cpu": {
                "boost": true,
                "hard_limit": true
              }
            }
          },
          "curation": {
            "specs": [
              {
                "index_pattern": "string",
                "trigger_interval_seconds": 42
              }
            ]
          },
          "dedicated_masters_threshold": 42,
          "traffic_filter": {
            "rulesets": [
              "string"
            ]
          },
          "trust": {
            "accounts": [
              {
                "account_id": "string",
                "name": "string",
                "trust_all": true,
                "trust_allowlist": [
                  "string"
                ]
              }
            ],
            "external": [
              {
                "trust_relationship_id": "string",
                "name": "string",
                "trust_all": true,
                "trust_allowlist": [
                  "string"
                ]
              }
            ],
            "direct": [
              {
                "uid": "string",
                "name": "string",
                "type": "ECE",
                "trust_all": true,
                "trust_allowlist": [
                  "string"
                ],
                "scope_id": "abc123",
                "additional_node_names": [
                  "string"
                ],
                "certificates": [
                  {
                    "pem": "string"
                  }
                ]
              }
            ]
          },
          "keystore_contents": {
            "secrets": {
              "additionalProperty1": {
                "value": {},
                "as_file": true
              },
              "additionalProperty2": {
                "value": {},
                "as_file": true
              }
            }
          }
        }
      }
    ],
    "kibana": [
      {
        "ref_id": "string",
        "elasticsearch_cluster_ref_id": "string",
        "display_name": "string",
        "region": "string",
        "plan": {
          "cluster_topology": [
            {
              "memory_per_node": 42,
              "node_count_per_zone": 42,
              "instance_configuration_id": "string",
              "instance_configuration_version": 42,
              "size": {
                "value": 42,
                "resource": "memory"
              },
              "zone_count": 42,
              "kibana": {
                "version": "string",
                "docker_image": "string",
                "system_settings": {
                  "elasticsearch_url": "string",
                  "elasticsearch_username": "string",
                  "elasticsearch_password": "string"
                },
                "user_settings_json": {},
                "user_settings_yaml": "string",
                "user_settings_override_json": {},
                "user_settings_override_yaml": "string"
              }
            }
          ],
          "kibana": {
            "version": "string",
            "docker_image": "string",
            "system_settings": {
              "elasticsearch_url": "string",
              "elasticsearch_username": "string",
              "elasticsearch_password": "string"
            },
            "user_settings_json": {},
            "user_settings_yaml": "string",
            "user_settings_override_json": {},
            "user_settings_override_yaml": "string"
          },
          "transient": {
            "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
            }
          }
        },
        "settings": {
          "metadata": {
            "name": "string",
            "owner_id": "string",
            "subscription_level": "string",
            "system_owned": true,
            "contact_email": "string",
            "resources": {
              "cpu": {
                "boost": true,
                "hard_limit": true
              }
            }
          }
        }
      }
    ],
    "apm": [
      {
        "ref_id": "string",
        "elasticsearch_cluster_ref_id": "string",
        "display_name": "string",
        "region": "string",
        "plan": {
          "cluster_topology": [
            {
              "instance_configuration_id": "string",
              "instance_configuration_version": 42,
              "size": {
                "value": 42,
                "resource": "memory"
              },
              "zone_count": 42,
              "apm": {
                "version": "string",
                "docker_image": "string",
                "system_settings": {
                  "elasticsearch_url": "string",
                  "kibana_url": "string",
                  "elasticsearch_username": "string",
                  "elasticsearch_password": "string",
                  "secret_token": "string",
                  "debug_enabled": true
                },
                "user_settings_json": {},
                "user_settings_yaml": "string",
                "user_settings_override_json": {},
                "user_settings_override_yaml": "string"
              }
            }
          ],
          "apm": {
            "version": "string",
            "docker_image": "string",
            "system_settings": {
              "elasticsearch_url": "string",
              "kibana_url": "string",
              "elasticsearch_username": "string",
              "elasticsearch_password": "string",
              "secret_token": "string",
              "debug_enabled": true
            },
            "user_settings_json": {},
            "user_settings_yaml": "string",
            "user_settings_override_json": {},
            "user_settings_override_yaml": "string"
          },
          "transient": {
            "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
            }
          }
        },
        "settings": {
          "metadata": {
            "name": "string",
            "owner_id": "string",
            "subscription_level": "string",
            "system_owned": true,
            "contact_email": "string",
            "resources": {
              "cpu": {
                "boost": true,
                "hard_limit": true
              }
            }
          }
        }
      }
    ],
    "appsearch": [
      {
        "ref_id": "string",
        "elasticsearch_cluster_ref_id": "string",
        "display_name": "string",
        "region": "string",
        "plan": {
          "cluster_topology": [
            {
              "node_type": {
                "appserver": true,
                "worker": true
              },
              "instance_configuration_id": "string",
              "instance_configuration_version": 42,
              "size": {
                "value": 42,
                "resource": "memory"
              },
              "zone_count": 42,
              "appsearch": {
                "version": "string",
                "docker_image": "string",
                "system_settings": {
                  "elasticsearch_url": "string",
                  "elasticsearch_username": "string",
                  "elasticsearch_password": "string",
                  "secret_session_key": "string"
                },
                "user_settings_json": {},
                "user_settings_yaml": "string",
                "user_settings_override_json": {},
                "user_settings_override_yaml": "string"
              }
            }
          ],
          "appsearch": {
            "version": "string",
            "docker_image": "string",
            "system_settings": {
              "elasticsearch_url": "string",
              "elasticsearch_username": "string",
              "elasticsearch_password": "string",
              "secret_session_key": "string"
            },
            "user_settings_json": {},
            "user_settings_yaml": "string",
            "user_settings_override_json": {},
            "user_settings_override_yaml": "string"
          },
          "transient": {
            "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
            }
          }
        },
        "settings": {
          "metadata": {
            "name": "string",
            "owner_id": "string",
            "subscription_level": "string",
            "system_owned": true,
            "contact_email": "string",
            "resources": {
              "cpu": {
                "boost": true,
                "hard_limit": true
              }
            }
          }
        }
      }
    ],
    "enterprise_search": [
      {
        "ref_id": "string",
        "elasticsearch_cluster_ref_id": "string",
        "display_name": "string",
        "region": "string",
        "plan": {
          "cluster_topology": [
            {
              "node_type": {
                "appserver": true,
                "worker": true,
                "connector": true
              },
              "instance_configuration_id": "string",
              "instance_configuration_version": 42,
              "size": {
                "value": 42,
                "resource": "memory"
              },
              "zone_count": 42,
              "enterprise_search": {
                "version": "string",
                "docker_image": "string",
                "system_settings": {
                  "elasticsearch_url": "string",
                  "elasticsearch_username": "string",
                  "elasticsearch_password": "string",
                  "secret_session_key": "string"
                },
                "user_settings_json": {},
                "user_settings_yaml": "string",
                "user_settings_override_json": {},
                "user_settings_override_yaml": "string"
              },
              "allocator_filter": {},
              "node_configuration": "string",
              "memory_per_node": {},
              "node_count_per_zone": {}
            }
          ],
          "enterprise_search": {
            "version": "string",
            "docker_image": "string",
            "system_settings": {
              "elasticsearch_url": "string",
              "elasticsearch_username": "string",
              "elasticsearch_password": "string",
              "secret_session_key": "string"
            },
            "user_settings_json": {},
            "user_settings_yaml": "string",
            "user_settings_override_json": {},
            "user_settings_override_yaml": "string"
          },
          "transient": {
            "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
            }
          }
        },
        "settings": {
          "metadata": {
            "name": "string",
            "owner_id": "string",
            "subscription_level": "string",
            "system_owned": true,
            "contact_email": "string",
            "resources": {
              "cpu": {
                "boost": true,
                "hard_limit": true
              }
            }
          }
        }
      }
    ],
    "integrations_server": [
      {
        "ref_id": "string",
        "elasticsearch_cluster_ref_id": "string",
        "display_name": "string",
        "region": "string",
        "plan": {
          "cluster_topology": [
            {
              "instance_configuration_id": "string",
              "instance_configuration_version": 42,
              "size": {
                "value": 42,
                "resource": "memory"
              },
              "zone_count": 42,
              "integrations_server": {
                "version": "string",
                "docker_image": "string",
                "system_settings": {
                  "elasticsearch_url": "string",
                  "kibana_url": "string",
                  "elasticsearch_username": "string",
                  "elasticsearch_password": "string",
                  "secret_token": "string",
                  "debug_enabled": true
                },
                "user_settings_json": {},
                "user_settings_yaml": "string",
                "user_settings_override_json": {},
                "user_settings_override_yaml": "string",
                "mode": "standalone"
              }
            }
          ],
          "integrations_server": {
            "version": "string",
            "docker_image": "string",
            "system_settings": {
              "elasticsearch_url": "string",
              "kibana_url": "string",
              "elasticsearch_username": "string",
              "elasticsearch_password": "string",
              "secret_token": "string",
              "debug_enabled": true
            },
            "user_settings_json": {},
            "user_settings_yaml": "string",
            "user_settings_override_json": {},
            "user_settings_override_yaml": "string",
            "mode": "standalone"
          },
          "transient": {
            "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
            }
          }
        },
        "settings": {
          "metadata": {
            "name": "string",
            "owner_id": "string",
            "subscription_level": "string",
            "system_owned": true,
            "contact_email": "string",
            "resources": {
              "cpu": {
                "boost": true,
                "hard_limit": true
              }
            }
          }
        }
      }
    ]
  },
  "settings": {
    "observability": {
      "logging": {
        "destination": {
          "deployment_id": "string",
          "ref_id": "string"
        }
      },
      "metrics": {
        "destination": {
          "deployment_id": "string",
          "ref_id": "string"
        },
        "force_legacy_monitoring": true
      }
    },
    "autoscaling_enabled": true
  },
  "metadata": {
    "system_owned": true,
    "hidden": true,
    "tags": [
      {
        "key": "string",
        "value": "string"
      }
    ]
  },
  "alias": "string"
}
Response examples (200)
# Headers
x-cloud-resource-version: string
x-cloud-resource-created: string
x-cloud-resource-last-modified: string

# Payload
{
  "id": "string",
  "name": "string",
  "alias": "string",
  "resources": [
    {
      "ref_id": "string",
      "elasticsearch_cluster_ref_id": "string",
      "id": "string",
      "kind": "string",
      "region": "string",
      "cloud_id": "string",
      "credentials": {
        "username": "string",
        "password": "string"
      },
      "secret_token": "string",
      "warnings": [
        {
          "code": "string",
          "message": "string"
        }
      ]
    }
  ],
  "shutdown_resources": {
    "elasticsearch": [
      {
        "id": "string",
        "dependents": [
          {
            "id": "string",
            "kind": "string"
          }
        ]
      }
    ],
    "kibana": [
      "string"
    ],
    "apm": [
      "string"
    ],
    "appsearch": [
      "string"
    ],
    "enterprise_search": [
      "string"
    ],
    "integrations_server": [
      "string"
    ]
  },
  "diagnostics": {
    "creates": {
      "elasticsearch": [
        {
          "ref_id": "string",
          "display_name": "string",
          "backend_plan": {}
        }
      ],
      "kibana": [
        {
          "ref_id": "string",
          "display_name": "string",
          "elasticsearch_cluster_ref_id": "string",
          "backend_plan": {}
        }
      ],
      "apm": [
        {
          "ref_id": "string",
          "display_name": "string",
          "elasticsearch_cluster_ref_id": "string",
          "backend_plan": {}
        }
      ],
      "integrations_server": [
        {
          "ref_id": "string",
          "display_name": "string",
          "elasticsearch_cluster_ref_id": "string",
          "backend_plan": {}
        }
      ],
      "appsearch": [
        {
          "ref_id": "string",
          "display_name": "string",
          "elasticsearch_cluster_ref_id": "string",
          "backend_plan": {}
        }
      ],
      "enterprise_search": [
        {
          "ref_id": "string",
          "display_name": "string",
          "elasticsearch_cluster_ref_id": "string",
          "backend_plan": {}
        }
      ]
    },
    "updates": {
      "elasticsearch": [
        {
          "ref_id": "string",
          "display_name": "string",
          "backend_plan": {}
        }
      ],
      "kibana": [
        {
          "ref_id": "string",
          "display_name": "string",
          "elasticsearch_cluster_ref_id": "string",
          "backend_plan": {}
        }
      ],
      "apm": [
        {
          "ref_id": "string",
          "display_name": "string",
          "elasticsearch_cluster_ref_id": "string",
          "backend_plan": {}
        }
      ],
      "integrations_server": [
        {
          "ref_id": "string",
          "display_name": "string",
          "elasticsearch_cluster_ref_id": "string",
          "backend_plan": {}
        }
      ],
      "appsearch": [
        {
          "ref_id": "string",
          "display_name": "string",
          "elasticsearch_cluster_ref_id": "string",
          "backend_plan": {}
        }
      ],
      "enterprise_search": [
        {
          "ref_id": "string",
          "display_name": "string",
          "elasticsearch_cluster_ref_id": "string",
          "backend_plan": {}
        }
      ]
    }
  }
}
Response examples (400)
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (401)
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (404)
# Headers
x-cloud-error-codes: deployments.deployment_not_found

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




Restores a shutdown Deployment

POST /deployments/{deployment_id}/_restore

Restores all resources in a Deployment.

Path parameters

Query parameters

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

    Default value is false.

Responses

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

    Hide response attribute Show response attribute object
    • id string Required

      The id of the deployment

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

    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

  • You are not authorized to perform this action.

    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 Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)

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

      Value is deployments.deployment_not_found.

    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 /deployments/{deployment_id}/_restore
curl \
 -X POST https://{{hostname}}/api/v1/deployments/{deployment_id}/_restore
Response examples (200)
{
  "id": "string"
}
Response examples (400)
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (401)
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (404)
# Headers
x-cloud-error-codes: deployments.deployment_not_found

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

Resynchronize Deployment

POST /deployments/{deployment_id}/_resync

Immediately resynchronizes the search index for the selected deployment.

Path parameters

Responses

  • The deployment resync operation executed successfully.

    Hide response attributes Show response attributes object
    • created array[string] Required

      The ids of documents created in the index by index version

    • updated array[string] Required

      The ids of documents updated in the index by index version

    • deleted array[string] Required

      The ids of documents deleted from the index by index version

    • errors array[string] Required

      The regions where document synchronization may have failed

  • The deployment resync operation failed for deployment {deployment_id}. (code: deployments.resync_failed)

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

      Value is deployments.resync_failed.

    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 /deployments/{deployment_id}/_resync
curl \
 -X POST https://{{hostname}}/api/v1/deployments/{deployment_id}/_resync
Response examples (200)
{
  "created": [
    "string"
  ],
  "updated": [
    "string"
  ],
  "deleted": [
    "string"
  ],
  "errors": [
    "string"
  ]
}
Response examples (500)
# Headers
x-cloud-error-codes: deployments.resync_failed

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

Shuts down Deployment

POST /deployments/{deployment_id}/_shutdown

Shuts down all resources in a Deployment.

Path parameters

Query parameters

  • hide boolean

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

  • Whether or not to skip snapshots before shutting down the resources

    Default value is false.

Responses

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

    Hide response attributes Show response attributes object
    • id string Required

      The id of the deployment

    • name string Required

      The name of the deployment

    • orphaned object

      List of resources that have been shut down

      Additional properties are allowed.

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

        List of orphaned Elasticsearch resources

        Hide elasticsearch attributes Show elasticsearch attributes object
        • id string Required

          The id of the orphaned resource

        • dependents array[object] Required

          List of orphaned dependent resources

          Hide dependents attributes Show dependents attributes object
          • id string Required

            The id of the orphaned resource

          • kind string Required

            The kind of resource

      • kibana array[string] Required

        List of orphaned Kibana resource ids

      • apm array[string] Required

        List of orphaned APM resource ids

      • appsearch array[string] Required

        List of orphaned AppSearch resource ids

      • integrations_server array[string] Required

        List of orphaned Integrations Server resource ids

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

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

      Value is deployments.restricted_parameter.

    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

  • You are not authorized to perform this action.

    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 Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)

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

      Value is deployments.deployment_not_found.

    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 /deployments/{deployment_id}/_shutdown
curl \
 -X POST https://{{hostname}}/api/v1/deployments/{deployment_id}/_shutdown
Response examples (200)
{
  "id": "string",
  "name": "string",
  "orphaned": {
    "elasticsearch": [
      {
        "id": "string",
        "dependents": [
          {
            "id": "string",
            "kind": "string"
          }
        ]
      }
    ],
    "kibana": [
      "string"
    ],
    "apm": [
      "string"
    ],
    "appsearch": [
      "string"
    ],
    "enterprise_search": [
      "string"
    ],
    "integrations_server": [
      "string"
    ]
  }
}
Response examples (400)
# Headers
x-cloud-error-codes: deployments.restricted_parameter

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (401)
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (404)
# Headers
x-cloud-error-codes: deployments.deployment_not_found

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




Reset the secret token for an APM resource.

POST /deployments/{deployment_id}/apm/{ref_id}/_reset-token

Reset the token of an APM resource.

Path parameters

  • deployment_id string Required

    Identifier for the Deployment.

  • ref_id string Required

    User-specified RefId for the Resource (or '_main' if there is only one).

Responses

  • Response containing the new secret token, plan to apply it starts

    Hide response attributes Show response attributes object
    • apm_id string

      For an operation creating or updating an APM server, the Id of that server

    • secret_token string Required

      The secret token for accessing the server

    • If the endpoint is called with URL param 'validate_only=true', then this contains advanced debug info (the internal plan representation)

      Additional properties are allowed.

  • Reset token is not supported when APM is managed by Elastic Agent. (code: clusters.cluster_plan_state_error)

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

      Value is clusters.cluster_plan_state_error.

    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 Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)
    • The Resource specified by {ref_id} cannot be found. (code: deployments.deployment_resource_not_found)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are deployments.deployment_not_found or deployments.deployment_resource_not_found.

    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

  • We have failed you. (code: deployments.deployment_resource_no_longer_exists)

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

      Value is deployments.deployment_resource_no_longer_exists.

    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 /deployments/{deployment_id}/apm/{ref_id}/_reset-token
curl \
 -X POST https://{{hostname}}/api/v1/deployments/{deployment_id}/apm/{ref_id}/_reset-token
Response examples (202)
{
  "apm_id": "string",
  "secret_token": "string",
  "diagnostics": {}
}
Response examples (400)
# Headers
x-cloud-error-codes: clusters.cluster_plan_state_error

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

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

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




























Migrate Elasticsearch resource to use SLM

POST /deployments/{deployment_id}/elasticsearch/{ref_id}/_enable-slm

Migrates the specified Elasticsearch resource to use SLM.

Path parameters

  • deployment_id string Required

    Identifier for the Deployment.

  • ref_id string Required

    User-specified RefId for the Resource (or '_main' if there is only one).

Query parameters

  • When true, does not enable SLM but returns warnings if any applications may lose availability during SLM migration.

    Default value is false.

Responses

  • Standard response

    Hide response attribute Show response attribute object
    • warnings array[object]

      List of warnings generated from validating command

      Hide warnings attributes Show warnings attributes object
      • code string Required

        A structured code representing the error type that occurred

      • message string

        A human readable message describing the warning that occurred

    • The Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)
    • The Resource specified by {ref_id} cannot be found. (code: deployments.deployment_resource_not_found)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are deployments.deployment_not_found or deployments.deployment_resource_not_found.

    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

  • We have failed you. (code: deployments.deployment_resource_no_longer_exists)

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

      Value is deployments.deployment_resource_no_longer_exists.

    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 /deployments/{deployment_id}/elasticsearch/{ref_id}/_enable-slm
curl \
 -X POST https://{{hostname}}/api/v1/deployments/{deployment_id}/elasticsearch/{ref_id}/_enable-slm
Response examples (200)
{
  "warnings": [
    {
      "code": "string",
      "message": "string"
    }
  ]
}
Response examples (404)
# Headers
x-cloud-error-codes: deployments.deployment_not_found

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

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
















Move Elasticsearch resource instances

POST /deployments/{deployment_id}/elasticsearch/{ref_id}/instances/{instance_ids}/_move

Moves one or more instances belonging to the given Elasticsearch resource to a different allocator.

Path parameters

  • deployment_id string Required

    Identifier for the Deployment.

  • ref_id string Required

    User-specified RefId for the Resource (or '_main' if there is only one).

  • instance_ids array[string] Required

    A comma-separated list of instance identifiers.

Query parameters

  • When true and the instance does not exist, proceeds to the next instance, or treats the instance as an error.

    Default value is false.

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

    Default value is false.

  • When true, the instances specified by instance_ids are considered permanently shut down for data migration logic.

    Default value is false.

  • move_only boolean

    When true, moves the specified instances and ignores the changes for the cluster state.

    Default value is true.

  • force_move boolean

    When true, moves instance data at file-system level (not via Elasticsearch), and re-creates instances on target allocator(s).

    Default value is false.

  • When true, validates the move request, then returns the calculated plan without applying the plan.

    Default value is false.

Body

Overrides the default move configuration

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

Responses

  • If validate_only is true, the calculated plan is returned

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

  • The move command was issued successfully. Use the "GET" command on the /{deployment_id} resource to monitor progress

    Additional properties are allowed.

    • The Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)
    • The Elasticsearch Resource specified by {ref_id} cannot be found. (code: deployments.deployment_resource_not_found)
    • One or more instances of the given resource type are missing. (code: deployments.instances_missing_on_update_error)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are deployments.deployment_not_found, deployments.deployment_resource_not_found, or deployments.instances_missing_on_update_error.

    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 /deployments/{deployment_id}/elasticsearch/{ref_id}/instances/{instance_ids}/_move
curl \
 -X POST https://{{hostname}}/api/v1/deployments/{deployment_id}/elasticsearch/{ref_id}/instances/{instance_ids}/_move \
 -d '{"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":{}}'
Request examples
{
  "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": {}
}
Response examples (200)
{
  "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": {}
}
Response examples (202)
{}
Response examples (404)
# Headers
x-cloud-error-codes: deployments.deployment_not_found

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








Get certificate based remote clusters

GET /deployments/{deployment_id}/elasticsearch/{ref_id}/remote-clusters

Returns the list of certificate based remote clusters for the elasticsearch resource.

Path parameters

  • deployment_id string Required

    Identifier for the Deployment.

  • ref_id string Required

    User-specified RefId for the Resource (or '_main' if there is only one).

Responses

  • List of certificate based remote clusters for the resource

    Hide response attribute Show response 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.

    • The Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)
    • The Resource specified by {ref_id} cannot be found. (code: deployments.deployment_resource_not_found)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are deployments.deployment_not_found or deployments.deployment_resource_not_found.

    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

GET /deployments/{deployment_id}/elasticsearch/{ref_id}/remote-clusters
curl \
 -X GET https://{{hostname}}/api/v1/deployments/{deployment_id}/elasticsearch/{ref_id}/remote-clusters
Response examples (200)
{
  "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
      }
    }
  ]
}
Response examples (404)
# Headers
x-cloud-error-codes: deployments.deployment_not_found

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




Get the depedencies of Elasticsearch resource snapshot

GET /deployments/{deployment_id}/elasticsearch/{ref_id}/snapshot/dependency

Fetches the current dependencies of the snapshot for the Elasticsearch resource.

Path parameters

  • deployment_id string Required

    Identifier for the Deployment

  • ref_id string Required

    User-specified RefId for the Resource (or '_main' if there is only one)

Responses

  • List of snapshot dependency

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

      Client name that use to access additional resource

      Hide resources attributes Show resources attributes object
    • The Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)
    • The Resource specified by {ref_id} cannot be found. (code: deployments.deployment_resource_not_found)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are deployments.deployment_not_found or deployments.deployment_resource_not_found.

    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

  • We have failed you. (code: deployments.metadata_internal_error)

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

      Value is deployments.metadata_internal_error.

    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

GET /deployments/{deployment_id}/elasticsearch/{ref_id}/snapshot/dependency
curl \
 -X GET https://{{hostname}}/api/v1/deployments/{deployment_id}/elasticsearch/{ref_id}/snapshot/dependency
Response examples (200)
{
  "resources": [
    {
      "cluster_id": "string",
      "deployment_id": "string"
    }
  ]
}
Response examples (404)
# Headers
x-cloud-error-codes: deployments.deployment_not_found

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

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




















Build request to migrate deployment to a different template

GET /deployments/{deployment_id}/migrate_template

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

Path parameters

Query parameters

  • template_id string Required

    The ID of the deployment template to migrate to

Responses

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

    Hide response attributes Show response attributes object
    • name string

      A new name for the deployment, otherwise stays the same.

    • prune_orphans boolean Required

      Whether or not to prune orphan resources that are no longer mentioned in this request. Note that resourcesare tracked by ref_id, and if a resource's ref_id is changed, any previous running resources created with that previousref_id are considered to be orphaned as well.

    • New information about the Resources that will have this Deployment, otherwise they stay the same

      Additional properties are allowed.

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

        A list of payloads for Elasticsearch cluster updates

        Hide elasticsearch attributes Show elasticsearch attributes object
        • ref_id string Required

          A locally-unique user-specified id for this Elasticsearch cluster

        • The human readable name for the cluster (defaults to the generated cluster id if not specified)

        • region string Required

          The region where this resource exists

        • plan object Required

          The plan for building this Elasticsearch cluster

          Additional properties are allowed.

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

              Unique identifier of this topology element

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

              Additional properties are allowed.

              Hide node_type attributes Show node_type attributes object
              • master boolean

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

              • data boolean

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

              • ingest boolean

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

              • ml boolean

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

            • node_roles array[string]

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

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

            • memory_per_node integer(int32)

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

            • node_count_per_zone integer(int32)

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

            • zone_count integer(int32)

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

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

              Additional properties are allowed.

              Hide elasticsearch attributes Show elasticsearch attributes object
              • version string

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

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

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

                Additional properties are allowed.

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

                  Additional properties are allowed.

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

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

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

                  • stored object

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

                    Additional properties are allowed.

                    Hide stored attributes Show stored attributes object
                    • enabled boolean

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

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

                  • file object

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

                    Additional properties are allowed.

                    Hide file attributes Show file attributes object
                    • enabled boolean

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

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

                  • inline object

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

                    Additional properties are allowed.

                    Hide inline attributes Show inline attributes object
                    • enabled boolean

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

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

                • reindex_whitelist array[string]

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

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

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

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

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

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

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

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

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

                Additional properties are allowed.

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

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

                Additional properties are allowed.

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

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

              • user_plugins array[object]

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

                Hide user_plugins attributes Show user_plugins attributes object
                • name string Required

                  The name of the plugin

                • url string Required

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

                • elasticsearch_version string Required

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

              • user_bundles array[object]

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

                Hide user_bundles attributes Show user_bundles attributes object
                • name string Required

                  The name of the bundle

                • url string Required

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

                • elasticsearch_version string Required

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

              • curation object

                Defines the index curation routing for the cluster

                Additional properties are allowed.

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

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

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

            • size object

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

              Additional properties are allowed.

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

                Amount of resource

              • resource string Required

                Type of resource

                Values are memory or storage.

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

              Additional properties are allowed.

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

                Amount of resource

              • resource string Required

                Type of resource

                Values are memory or storage.

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

              Additional properties are allowed.

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

                Amount of resource

              • resource string Required

                Type of resource

                Values are memory or storage.

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

              Additional properties are allowed.

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

              Additional properties are allowed.

              Hide topology_element_control attribute Show topology_element_control attribute object
              • min object Required

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

                Additional properties are allowed.

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

                  Amount of resource

                • resource string Required

                  Type of resource

                  Values are memory or storage.

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

          • elasticsearch object Required

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

            Additional properties are allowed.

            Hide elasticsearch attributes Show elasticsearch attributes object
            • version string

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

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

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

              Additional properties are allowed.

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

                Additional properties are allowed.

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

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

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

                • stored object

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

                  Additional properties are allowed.

                  Hide stored attributes Show stored attributes object
                  • enabled boolean

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

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

                • file object

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

                  Additional properties are allowed.

                  Hide file attributes Show file attributes object
                  • enabled boolean

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

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

                • inline object

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

                  Additional properties are allowed.

                  Hide inline attributes Show inline attributes object
                  • enabled boolean

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

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

              • reindex_whitelist array[string]

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

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

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

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

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

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

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

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

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

              Additional properties are allowed.

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

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

              Additional properties are allowed.

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

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

            • user_plugins array[object]

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

              Hide user_plugins attributes Show user_plugins attributes object
              • name string Required

                The name of the plugin

              • url string Required

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

              • elasticsearch_version string Required

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

            • user_bundles array[object]

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

              Hide user_bundles attributes Show user_bundles attributes object
              • name string Required

                The name of the bundle

              • url string Required

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

              • elasticsearch_version string Required

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

            • curation object

              Defines the index curation routing for the cluster

              Additional properties are allowed.

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

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

            Additional properties are allowed.

            Hide deployment_template attributes Show deployment_template attributes object
            • id string Required

              The unique identifier of the deployment template

            • version string

              A version identifier to disambiguate multiple revisions of the same template

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

            Additional properties are allowed.

            Hide transient attributes Show transient attributes object
            • strategy object

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

              Additional properties are allowed.

              Hide strategy attributes Show strategy attributes object
              • rolling object

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

                Additional properties are allowed.

                Hide rolling attributes Show rolling attributes object
                • group_by string

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

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

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

                • shard_init_wait_time integer(int64)

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

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

                Additional properties are allowed.

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

                Additional properties are allowed.

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

                Additional properties are allowed.

            • The configuration settings for the timeout and fallback parameters.

              Additional properties are allowed.

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

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

              • calm_wait_time integer(int64)

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

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

                  The instance id that is going to be moved

                • to array[string]

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

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

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

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

                • to array[string]

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

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

              • move_only boolean

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

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

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

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

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

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

              • max_snapshot_age integer(int64)

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

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

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

                Value is forced.

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

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

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

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

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

            • Restores a snapshot from a local or remote repository.

              Additional properties are allowed.

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

              • snapshot_name string Required

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

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

                Additional properties are allowed.

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

                  Additional properties are allowed.

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

                Additional properties are allowed.

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

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

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

                  Additional properties are allowed.

              • strategy string

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

                Values are partial, full, or recovery.

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

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

              Additional properties are allowed.

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

                The remote resources

                Hide resources attributes Show resources attributes object
                • deployment_id string Required

                  The id of the deployment

                • elasticsearch_ref_id string Required

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

                • alias string Required

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

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

                • info object

                  Information about a Remote Cluster.

                  Additional properties are allowed.

                  Hide info attributes Show info attributes object
                  • healthy boolean Required

                    Whether or not the remote cluster is healthy

                  • connected boolean Required

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

                  • compatible boolean Required

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

                  • trusted boolean Required

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

                  • trusted_back boolean Required

                    Whether or not the remote cluster trusts this cluster back.

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

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

              Additional properties are allowed.

          • Enable autoscaling for this Elasticsearch cluster.

        • settings object

          The settings for building this Elasticsearch cluster

          Additional properties are allowed.

          Hide settings attributes Show settings attributes object
          • snapshot object

            The snapshot settings for this deployment. When provided, snapshot settings are changed as specified. A null value reverts the field to the default value. Otherwise, all snapshot settings remain as they were set previously.

            Additional properties are allowed.

            Hide snapshot attributes Show snapshot attributes object
            • Snapshot repository configuration

              Additional properties are allowed.

              Hide repository attributes Show repository attributes object
              • static object

                Cluster snapshot static repository settings, containing repository type and settings

                Additional properties are allowed.

                Hide static attributes Show static attributes object
                • Type of snapshot repository, ie: S3

                • settings object

                  Settings associated with snapshot repository

                  Additional properties are allowed.

              • Cluster snapshot reference repository settings, containing the repository name in ECE fashion

                Additional properties are allowed.

                Hide reference attribute Show reference attribute object
                • ECE snapshot repository name, from the '/platform/configuration/snapshots/repositories' endpoint

              • default object

                Cluster snapshot default repository settings

                Additional properties are allowed.

            • interval string

              Interval between snapshots, with the format 'length unit' (space is optional), where unit can be one of: d (day), h (hour), min (minute). Default is 30 minutes

            • Interval between snapshot progress checks, with the format 'length unit' (space is optional), where unit can be one of: d (day), h (hour), min (minute). Default is 1 minute

            • The time to wait between snapshot phases (snapshot, purge), with the format 'length unit' (space is optional), where unit can be one of: d (day), h (hour), min (minute). Default is 10 minutes

            • enabled boolean

              Indicates if Snapshotting is enabled

            • suspended array[string]

              List of temporary snapshot suspensions

            • Cluster snapshot retention information

              Additional properties are allowed.

              Hide retention attributes Show retention attributes object
              • snapshots integer(int32)

                Number of snapshots to retain

              • max_age string

                Total retention period for all snapshots, with the format 'length unit' (space is optional), where unit can be one of: d (day), h (hour), min (minute)

            • slm boolean

              When set to true, the deployment will have SLM enabled. Default value is true.

            • Cron expression indicating when should snapshots be taken. This can be enabled only if SLM is enabled for the deployment and 'interval' is not present

          • The monitoring settings for this deployment. When provided, monitoring settings are changed as specified. A null value reverts the field to the default value. Otherwise, all monitoring settings remain as they were set previously.

            Additional properties are allowed.

            Hide monitoring attribute Show monitoring attribute object
            • target_cluster_id string Required

              The Id of the target cluster to which to send monitoring information

          • metadata object

            The top-level configuration settings for the Elasticsearch cluster.

            Additional properties are allowed.

            Hide metadata attributes Show metadata attributes object
            • name string

              The display name of the cluster

            • owner_id string

              The user id (referencing whatever user database is in use) of the cluster owner

            • The organization that owns the deployment

            • Subscription level of the cluster

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

            • Contact email for the cluster

            • hidden boolean

              Whether or not this cluster is hidden from the normal clusters list

            • The top-level configuration settings for the Elasticsearch cluster resources.

              Additional properties are allowed.

              Hide resources attribute Show resources attribute object
              • cpu object

                Specifies the CPU resource settings for the Elasticsearch cluster.

                Additional properties are allowed.

                Hide cpu attributes Show cpu attributes object
                • boost boolean

                  Indicates if the CPU boost flag is enabled or not.

                • hard_limit boolean

                  Indicates if the CPU hard limit flag is enabled or not. When set to true (default), allocates CPU timeshare based on the total CPU time multiplied by the relative RAM capacity of the instance on a given host. When set to false, delegates CPU allocation to the operating system to schedule CPU timeshares.

          • curation object

            The curation settings for this deployment. When provided, curation settings are changed as specified. A null value reverts the field to the default value. Otherwise, all curation settings remain as they were set previously.

            Additional properties are allowed.

            Hide curation attribute Show curation attribute object
            • specs array[object] Required

              Specifications for curation

              Hide specs attributes Show specs attributes object
          • Threshold starting from which the number of instances in the cluster results in the introduction of dedicated masters. If the cluster is downscaled to a number of nodes below this one, dedicated masters will be removed. Limit is inclusive. When provided the threshold setting is updated. A null value removes the field. Otherwise, the setting remains as it was set previously.

          • The rulesets to apply to all resources in this cluster. When specified, the set of rulesets is updated and the same rulesets will be applied to Kibana and APM clusters as well. If not specified, the rulesets remain as they were set previously.

            Additional properties are allowed.

            Hide traffic_filter attribute Show traffic_filter attribute object
            • rulesets array[string] Required

              IDs of the traffic filter rulesets

          • trust object

            Configuration of trust with other clusters. When provided, trust settings are changed as specified. A null value reverts the field to the default value. Otherwise, all trust settings remain as they were set previously.

            Additional properties are allowed.

            Hide trust attributes Show trust attributes object
            • accounts array[object]

              The list of trust relationships with different accounts

              Hide accounts attributes Show accounts attributes object
              • account_id string Required

                the ID of the Account

              • name string

                A human readable name of the trust relationship

              • trust_all boolean Required

                If true, all clusters in this account will by default be trusted and the trust_allowlist is ignored.

              • trust_allowlist array[string]

                The list of clusters to trust. Only used when trust_all is false.

            • external array[object]

              The list of trust relationships with external entities

              Hide external attributes Show external attributes object
              • trust_relationship_id string Required

                The ID of the external trust relationship

              • name string

                The name of the external trust relationship. Retrieved from the TrustRelationship and ignored on write.

              • trust_all boolean Required

                If true, all clusters in this external entity will be trusted and the trust_allowlist is ignored.

              • trust_allowlist array[string]

                The list of clusters to trust. Only used when trust_all is false.

            • direct array[object]

              The list of trust relationships where the certificate is bundled with the trust setting. Allows configuring trust for clusters running outside of an Elastic Cloud managed environment or in an Elastic Cloud environment without an environment level trust established.

              Hide direct attributes Show direct attributes object
              • uid string

                Auto generated identifier for this trust, allows distinguishing between update vs remove and add.

              • name string Required

                a human readable name of the trust relationship

              • type string

                The type can either be ESS, ECE, generic or proxy. If none is specified, then generic is assumed. If proxy is specified, trust_all should be false and trust_allowlist, scope_id and additional_node_names should be omitted.

                Values are ECE, ESS, generic, or proxy.

              • trust_all boolean Required

                If true, scope_id is required and the trust_allowlist is ignored and all clusters matching the scope id will be trusted.

              • trust_allowlist array[string]

                The list of clusters with matching scope to trust. Only used when trust_all is false. Providing one or more clusters makes scope_id mandatory.

              • scope_id string

                A lowercase alphanumerical string of max 32 characters. Usually an organization id or an environment id, but could really be any suitable suffix for clusters using the CA certificate of this trust. Required unless trust_all is false and trust_allowlist is empty.

              • A list of node names trusted in addition to those deducible from trust_allowlist and scope id. Allows trusting nodes that don't have a scoped name at the cost of maintaining the list. Mandatory if scope id is not defined. Wildcards are not allowed.

              • certificates array[object] Required

                The public ca certificate(s) to trust. Only one is required, but it is possible to specify multiple certificates in order to facilitate key rotation.

                Hide certificates attributes Show certificates attributes object
                • pem string Required

                  The public ca certificate as string in PEM format.

                • metadata object

                  Metadata about the certificate, including fingerprint and expiry date. Generated by the Cloud service and ignored on write.

                  Additional properties are allowed.

                  Hide metadata attributes Show metadata attributes object
                  • fingerprint string Required

                    The fingerprint of the certificate

                  • valid_to string(date-time) Required

                    The expiry date of the certificate in UTC

                  • valid_from string(date-time) Required

                    The valid from date of the certificate in UTC

                  • also_trusted_by array[string]

                    Other deployments also trusting this certificate

          • The contents of the Elasticsearch keystore. It's a write only field.

            Additional properties are allowed.

            Hide keystore_contents attribute Show keystore_contents attribute object
            • secrets object Required

              List of secrets

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

                The value that you configure for the Elasticsearch keystore secret.

                Additional properties are allowed.

                Hide * attributes Show * attributes object
                • value object

                  Value of this setting. This can either be a string or a JSON object that is stored as a JSON string in the keystore. NOTE: When the keystore secret is unspecified, it is removed.

                  Additional properties are allowed.

                • as_file boolean

                  Stores the keystore secret as a file. The default is false, which stores the keystore secret as string when value is a plain string, or true when value is an object.

      • kibana array[object]

        A list of payloads for Kibana updates

        Hide kibana attributes Show kibana attributes object
        • ref_id string Required

          A locally-unique user-specified id for Kibana

        • Alias to the Elasticsearch Cluster to attach Kibana to

        • The human readable name for the Kibana cluster (default: takes the name of its Elasticsearch cluster)

        • region string Required

          The region where this resource exists

        • plan object Required

          The plan for the Kibana instance.

          Additional properties are allowed.

          Hide plan attributes Show plan attributes object
          • cluster_topology array[object]
            Hide cluster_topology attributes Show cluster_topology attributes object
            • memory_per_node integer(int32)

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

            • node_count_per_zone integer(int32)

              The number of nodes of this type that are allocated within each zone (i.e. total capacity per zone = node_count_per_zone * memory_per_node in MB).

            • Controls the allocation of this topology element as well as allowed sizes and node_types. It needs to match the id of an existing instance configuration.

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

            • size object

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

              Additional properties are allowed.

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

                Amount of resource

              • resource string Required

                Type of resource

                Values are memory or storage.

            • zone_count integer(int32)

              number of zones in which nodes will be placed

            • kibana object

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

              Additional properties are allowed.

              Hide kibana attributes Show kibana attributes object
              • version string

                The version of the Kibana cluster (must be one of the ECE supported versions, and won't work unless it matches the Elasticsearch version. Leave blank to auto-detect version.)

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

              • A subset of Kibana settings. TIP: To define the complete set of Elasticsearch settings, use KibanaSystemSettings with user_settings_override_ and user_settings_.

                Additional properties are allowed.

                Hide system_settings attributes Show system_settings attributes object
                • DEPRECATED: Scheduled for removal in a future version of the API.

                  Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                • Optionally override the account within Elasticsearch - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

                • Optionally override the account within Elasticsearch - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

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

                Additional properties are allowed.

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

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

                Additional properties are allowed.

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

          • kibana object Required

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

            Additional properties are allowed.

            Hide kibana attributes Show kibana attributes object
            • version string

              The version of the Kibana cluster (must be one of the ECE supported versions, and won't work unless it matches the Elasticsearch version. Leave blank to auto-detect version.)

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

            • A subset of Kibana settings. TIP: To define the complete set of Elasticsearch settings, use KibanaSystemSettings with user_settings_override_ and user_settings_.

              Additional properties are allowed.

              Hide system_settings attributes Show system_settings attributes object
              • DEPRECATED: Scheduled for removal in a future version of the API.

                Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

              • Optionally override the account within Elasticsearch - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

              • Optionally override the account within Elasticsearch - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

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

              Additional properties are allowed.

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

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

              Additional properties are allowed.

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

          • 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 transient attributes Show transient attributes object
            • strategy object

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

              Additional properties are allowed.

              Hide strategy attributes Show strategy attributes object
              • rolling object

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

                Additional properties are allowed.

                Hide rolling attributes Show rolling attributes object
                • group_by string

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

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

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

                • shard_init_wait_time integer(int64)

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

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

                Additional properties are allowed.

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

                Additional properties are allowed.

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

                Additional properties are allowed.

            • The configuration settings for the timeout and fallback parameters.

              Additional properties are allowed.

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

                The total timeout in seconds after which the plan is cancelled even if it is not complete. Defaults to 4x the max memory capacity per node (in MB)

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

        • settings object

          The settings for building this Kibana cluster

          Additional properties are allowed.

          Hide settings attribute Show settings attribute object
          • metadata object

            The top-level configuration settings for the Elasticsearch cluster.

            Additional properties are allowed.

            Hide metadata attributes Show metadata attributes object
            • name string

              The display name of the cluster

            • owner_id string

              The user id (referencing whatever user database is in use) of the cluster owner

            • The organization that owns the deployment

            • Subscription level of the cluster

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

            • Contact email for the cluster

            • hidden boolean

              Whether or not this cluster is hidden from the normal clusters list

            • The top-level configuration settings for the Elasticsearch cluster resources.

              Additional properties are allowed.

              Hide resources attribute Show resources attribute object
              • cpu object

                Specifies the CPU resource settings for the Elasticsearch cluster.

                Additional properties are allowed.

                Hide cpu attributes Show cpu attributes object
                • boost boolean

                  Indicates if the CPU boost flag is enabled or not.

                • hard_limit boolean

                  Indicates if the CPU hard limit flag is enabled or not. When set to true (default), allocates CPU timeshare based on the total CPU time multiplied by the relative RAM capacity of the instance on a given host. When set to false, delegates CPU allocation to the operating system to schedule CPU timeshares.

      • apm array[object]

        A list of payloads for APM updates

        Hide apm attributes Show apm attributes object
        • ref_id string Required

          A locally-unique user-specified id for APM

        • Alias to the Elasticsearch Cluster to attach APM to

        • The human readable name for the APM cluster (default: takes the name of its Elasticsearch cluster)

        • region string Required

          The region where this resource exists

        • plan object Required

          The plan for the APM Server.

          Additional properties are allowed.

          Hide plan attributes Show plan attributes object
          • cluster_topology array[object]
            Hide cluster_topology attributes Show cluster_topology attributes object
            • Controls the allocation of this topology element as well as allowed sizes and node_types. It needs to match the id of an existing instance configuration.

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

            • size object

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

              Additional properties are allowed.

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

                Amount of resource

              • resource string Required

                Type of resource

                Values are memory or storage.

            • zone_count integer(int32)

              number of zones in which nodes will be placed

            • apm object

              The configuration options for the APM Server.

              Additional properties are allowed.

              Hide apm attributes Show apm attributes object
              • version string

                The version of the Apm cluster (must be one of the ECE supported versions, and won't work unless it matches the APM version. Leave blank to auto-detect version.)

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

              • A structure that defines a curated subset of the APM Server settings. TIP: To define the complete set of APM Server setting, use ApmSystemSettings with user_settings_override_ and user_settings_.

                Additional properties are allowed.

                Hide system_settings attributes Show system_settings attributes object
                • DEPRECATED: Scheduled for removal in a future version of the API.

                  Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                • DEPRECATED: Scheduled for removal in a future version of the API.

                  Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                • Optionally override the account within APM - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

                • Optionally override the account within APM - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

                • Optionally override the secret token within APM - defaults to the previously existing secretToken

                • Optionally enable debug mode for APM servers - defaults false

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

                Additional properties are allowed.

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

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

                Additional properties are allowed.

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

          • apm object Required

            The configuration options for the APM Server.

            Additional properties are allowed.

            Hide apm attributes Show apm attributes object
            • version string

              The version of the Apm cluster (must be one of the ECE supported versions, and won't work unless it matches the APM version. Leave blank to auto-detect version.)

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

            • A structure that defines a curated subset of the APM Server settings. TIP: To define the complete set of APM Server setting, use ApmSystemSettings with user_settings_override_ and user_settings_.

              Additional properties are allowed.

              Hide system_settings attributes Show system_settings attributes object
              • DEPRECATED: Scheduled for removal in a future version of the API.

                Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

              • DEPRECATED: Scheduled for removal in a future version of the API.

                Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

              • Optionally override the account within APM - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

              • Optionally override the account within APM - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

              • Optionally override the secret token within APM - defaults to the previously existing secretToken

              • Optionally enable debug mode for APM servers - defaults false

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

              Additional properties are allowed.

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

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

              Additional properties are allowed.

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

          • 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 transient attributes Show transient attributes object
            • strategy object

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

              Additional properties are allowed.

              Hide strategy attributes Show strategy attributes object
              • rolling object

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

                Additional properties are allowed.

                Hide rolling attributes Show rolling attributes object
                • group_by string

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

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

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

                • shard_init_wait_time integer(int64)

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

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

                Additional properties are allowed.

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

                Additional properties are allowed.

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

                Additional properties are allowed.

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

        • settings object

          The settings for building this APM cluster

          Additional properties are allowed.

          Hide settings attribute Show settings attribute object
          • metadata object

            The top-level configuration settings for the Elasticsearch cluster.

            Additional properties are allowed.

            Hide metadata attributes Show metadata attributes object
            • name string

              The display name of the cluster

            • owner_id string

              The user id (referencing whatever user database is in use) of the cluster owner

            • The organization that owns the deployment

            • Subscription level of the cluster

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

            • Contact email for the cluster

            • hidden boolean

              Whether or not this cluster is hidden from the normal clusters list

            • The top-level configuration settings for the Elasticsearch cluster resources.

              Additional properties are allowed.

              Hide resources attribute Show resources attribute object
              • cpu object

                Specifies the CPU resource settings for the Elasticsearch cluster.

                Additional properties are allowed.

                Hide cpu attributes Show cpu attributes object
                • boost boolean

                  Indicates if the CPU boost flag is enabled or not.

                • hard_limit boolean

                  Indicates if the CPU hard limit flag is enabled or not. When set to true (default), allocates CPU timeshare based on the total CPU time multiplied by the relative RAM capacity of the instance on a given host. When set to false, delegates CPU allocation to the operating system to schedule CPU timeshares.

      • appsearch array[object]

        A list of payloads for AppSearch updates. AppSearch has been replaced by Enterprise Search in the Elastic Stack 7.7 and higher

        Hide appsearch attributes Show appsearch attributes object
        • ref_id string Required

          A locally-unique user-specified id for AppSearch

        • Alias to the Elasticsearch Cluster to attach AppSearch to

        • The human readable name for the AppSearch cluster (default: takes the name of its Elasticsearch cluster)

        • region string Required

          The region where this resource exists

        • plan object Required

          The plan for the App Search cluster.

          Additional properties are allowed.

          Hide plan attributes Show plan attributes object
          • cluster_topology array[object]
            Hide cluster_topology attributes Show cluster_topology attributes object
            • Defines the AppSearch node type

              Additional properties are allowed.

              Hide node_type attributes Show node_type attributes object
              • appserver boolean Required

                Defines whether this instance should run as Application/API server

              • worker boolean Required

                Defines whether this instance should run as background worker

            • Controls the allocation of this topology element as well as allowed sizes and node_types. It needs to match the id of an existing instance configuration.

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

            • size object

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

              Additional properties are allowed.

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

                Amount of resource

              • resource string Required

                Type of resource

                Values are memory or storage.

            • zone_count integer(int32)

              number of zones in which nodes will be placed

            • Additional properties are allowed.

              Hide appsearch attributes Show appsearch attributes object
              • version string

                The version of the AppSearch cluster (must be one of the ECE supported versions, and won't work unless it matches the Elasticsearch version. Leave blank to auto-detect version.)

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

              • This structure defines a curated subset of the AppSearch settings. (This field together with 'user_settings_override*' and 'user_settings*' defines the total set of AppSearch settings)

                Additional properties are allowed.

                Hide system_settings attributes Show system_settings attributes object
                • Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                • Optionally override the account within App Search - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

                • Optionally override the account within App Search - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

                • Optionally override the secret session key within App Search - defaults to the previously existing secretSession. Note that this field is never returned from the API, it is write only.

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

                Additional properties are allowed.

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

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

                Additional properties are allowed.

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

          • appsearch object Required

            Additional properties are allowed.

            Hide appsearch attributes Show appsearch attributes object
            • version string

              The version of the AppSearch cluster (must be one of the ECE supported versions, and won't work unless it matches the Elasticsearch version. Leave blank to auto-detect version.)

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

            • This structure defines a curated subset of the AppSearch settings. (This field together with 'user_settings_override*' and 'user_settings*' defines the total set of AppSearch settings)

              Additional properties are allowed.

              Hide system_settings attributes Show system_settings attributes object
              • Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

              • Optionally override the account within App Search - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

              • Optionally override the account within App Search - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

              • Optionally override the secret session key within App Search - defaults to the previously existing secretSession. Note that this field is never returned from the API, it is write only.

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

              Additional properties are allowed.

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

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

              Additional properties are allowed.

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

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

            Additional properties are allowed.

            Hide transient attributes Show transient attributes object
            • strategy object

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

              Additional properties are allowed.

              Hide strategy attributes Show strategy attributes object
              • rolling object

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

                Additional properties are allowed.

                Hide rolling attributes Show rolling attributes object
                • group_by string

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

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

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

                • shard_init_wait_time integer(int64)

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

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

                Additional properties are allowed.

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

                Additional properties are allowed.

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

                Additional properties are allowed.

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

        • settings object

          The settings for building this AppSearch cluster

          Additional properties are allowed.

          Hide settings attribute Show settings attribute object
          • metadata object

            The top-level configuration settings for the Elasticsearch cluster.

            Additional properties are allowed.

            Hide metadata attributes Show metadata attributes object
            • name string

              The display name of the cluster

            • owner_id string

              The user id (referencing whatever user database is in use) of the cluster owner

            • The organization that owns the deployment

            • Subscription level of the cluster

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

            • Contact email for the cluster

            • hidden boolean

              Whether or not this cluster is hidden from the normal clusters list

            • The top-level configuration settings for the Elasticsearch cluster resources.

              Additional properties are allowed.

              Hide resources attribute Show resources attribute object
              • cpu object

                Specifies the CPU resource settings for the Elasticsearch cluster.

                Additional properties are allowed.

                Hide cpu attributes Show cpu attributes object
                • boost boolean

                  Indicates if the CPU boost flag is enabled or not.

                • hard_limit boolean

                  Indicates if the CPU hard limit flag is enabled or not. When set to true (default), allocates CPU timeshare based on the total CPU time multiplied by the relative RAM capacity of the instance on a given host. When set to false, delegates CPU allocation to the operating system to schedule CPU timeshares.

      • integrations_server array[object]

        A list of payloads for Integrations Server updates

        Hide integrations_server attributes Show integrations_server attributes object
        • ref_id string Required

          A locally-unique user-specified id for the Integrations Server

        • Alias to the Elasticsearch Cluster to attach the Integrations Server to

        • The human readable name for the Integrations Server cluster (default: takes the name of its Elasticsearch cluster)

        • region string Required

          The region where this resource exists

        • plan object Required

          The plan for the Integrations Server.

          Additional properties are allowed.

          Hide plan attributes Show plan attributes object
          • cluster_topology array[object]
            Hide cluster_topology attributes Show cluster_topology attributes object
            • Controls the allocation of this topology element as well as allowed sizes and node_types. It needs to match the id of an existing instance configuration.

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

            • size object

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

              Additional properties are allowed.

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

                Amount of resource

              • resource string Required

                Type of resource

                Values are memory or storage.

            • zone_count integer(int32)

              number of zones in which nodes will be placed

            • The configuration options for the Integrations Server.

              Additional properties are allowed.

              Hide integrations_server attributes Show integrations_server attributes object
              • version string

                The version of the Integrations Server cluster (must be one of the ECE supported versions, and won't work unless it matches the Integrations Server version. Leave blank to auto-detect version.)

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

              • A structure that defines a curated subset of the Integrations Server settings. TIP: To define the complete set of Integrations Server setting, use IntegrationsSystemSettings with user_settings_override_ and user_settings_.

                Additional properties are allowed.

                Hide system_settings attributes Show system_settings attributes object
                • DEPRECATED: Scheduled for removal in a future version of the API.

                  Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                • DEPRECATED: Scheduled for removal in a future version of the API.

                  Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                • Optionally override the account within Integrations Server - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

                • Optionally override the account within Integrations Server - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

                • Optionally override the secret token within Integrations Server - defaults to the previously existing secretToken

                • Optionally enable debug mode for Integrations Server - defaults false

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

                Additional properties are allowed.

              • An arbitrary YAML object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters are on the allowlist and not on the denylist. (These field together with 'user_settings_override*' and 'system_settings' defines the total set of Integrations Server settings)

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

                Additional properties are allowed.

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

              • mode string

                The mode the Integrations Server is operating in.

                Values are standalone or managed.

          • integrations_server object Required

            The configuration options for the Integrations Server.

            Additional properties are allowed.

            Hide integrations_server attributes Show integrations_server attributes object
            • version string

              The version of the Integrations Server cluster (must be one of the ECE supported versions, and won't work unless it matches the Integrations Server version. Leave blank to auto-detect version.)

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

            • A structure that defines a curated subset of the Integrations Server settings. TIP: To define the complete set of Integrations Server setting, use IntegrationsSystemSettings with user_settings_override_ and user_settings_.

              Additional properties are allowed.

              Hide system_settings attributes Show system_settings attributes object
              • DEPRECATED: Scheduled for removal in a future version of the API.

                Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

              • DEPRECATED: Scheduled for removal in a future version of the API.

                Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

              • Optionally override the account within Integrations Server - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

              • Optionally override the account within Integrations Server - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

              • Optionally override the secret token within Integrations Server - defaults to the previously existing secretToken

              • Optionally enable debug mode for Integrations Server - defaults false

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

              Additional properties are allowed.

            • An arbitrary YAML object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters are on the allowlist and not on the denylist. (These field together with 'user_settings_override*' and 'system_settings' defines the total set of Integrations Server settings)

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

              Additional properties are allowed.

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

            • mode string

              The mode the Integrations Server is operating in.

              Values are standalone or managed.

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

            Additional properties are allowed.

            Hide transient attributes Show transient attributes object
            • strategy object

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

              Additional properties are allowed.

              Hide strategy attributes Show strategy attributes object
              • rolling object

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

                Additional properties are allowed.

                Hide rolling attributes Show rolling attributes object
                • group_by string

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

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

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

                • shard_init_wait_time integer(int64)

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

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

                Additional properties are allowed.

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

                Additional properties are allowed.

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

                Additional properties are allowed.

            • The plan control configuration options for the Integrations 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.

        • settings object

          The settings for building this Integrations Server cluster

          Additional properties are allowed.

          Hide settings attribute Show settings attribute object
          • metadata object

            The top-level configuration settings for the Elasticsearch cluster.

            Additional properties are allowed.

            Hide metadata attributes Show metadata attributes object
            • name string

              The display name of the cluster

            • owner_id string

              The user id (referencing whatever user database is in use) of the cluster owner

            • The organization that owns the deployment

            • Subscription level of the cluster

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

            • Contact email for the cluster

            • hidden boolean

              Whether or not this cluster is hidden from the normal clusters list

            • The top-level configuration settings for the Elasticsearch cluster resources.

              Additional properties are allowed.

              Hide resources attribute Show resources attribute object
              • cpu object

                Specifies the CPU resource settings for the Elasticsearch cluster.

                Additional properties are allowed.

                Hide cpu attributes Show cpu attributes object
                • boost boolean

                  Indicates if the CPU boost flag is enabled or not.

                • hard_limit boolean

                  Indicates if the CPU hard limit flag is enabled or not. When set to true (default), allocates CPU timeshare based on the total CPU time multiplied by the relative RAM capacity of the instance on a given host. When set to false, delegates CPU allocation to the operating system to schedule CPU timeshares.

    • settings object

      Any new configuration for the current deployment object. If there is no new configuration the value is unchanged.

      Additional properties are allowed.

      Hide settings attributes Show settings attributes object
      • Observability settings for this deployment

        Additional properties are allowed.

        Hide observability attributes Show observability attributes object
        • logging object

          The logging settings for the deployment

          Additional properties are allowed.

          Hide logging attribute Show logging attribute object
          • destination object Required

            The destination deployment that this deployment's logs will be sent to

            Additional properties are allowed.

            Hide destination attributes Show destination attributes object
            • deployment_id string Required

              The deployment to send logs and/or metrics to. Contains either the deployment's ID or 'self'.

            • ref_id string

              RefId of the Elasticsearch cluster to send logs and/or metrics to. If not specified, refId is resolved automatically as long as the destination deployment contains a single Elasticsearch resource.

        • metrics object

          The metrics settings for the deployment

          Additional properties are allowed.

          Hide metrics attributes Show metrics attributes object
          • destination object Required

            The destination deployment that this deployment's logs will be sent to

            Additional properties are allowed.

            Hide destination attributes Show destination attributes object
            • deployment_id string Required

              The deployment to send logs and/or metrics to. Contains either the deployment's ID or 'self'.

            • ref_id string

              RefId of the Elasticsearch cluster to send logs and/or metrics to. If not specified, refId is resolved automatically as long as the destination deployment contains a single Elasticsearch resource.

          • Set to true to force the deployment to use legacy monitoring instead of Metricbeat-based monitoring.

      • Enable autoscaling for this deployment.

    • metadata object

      Any new information about the current deployment object. If there is no new information the value is unchanged.

      Additional properties are allowed.

      Hide metadata attributes Show metadata attributes object
      • Indicates if a deployment is system owned (restricts the set of operations that can be performed on it)

      • hidden boolean

        Whether or not this deployment is hidden from the normal deployment list

      • tags array[object]

        Arbitrary user-defined metadata associated with this deployment

        Hide tags attributes Show tags attributes object
        • key string Required

          The metadata field name

        • value string Required

          The metadata value

    • alias string

      A user-defined alias to use in place of Cluster IDs for user-friendly URLs

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

    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

  • You are not authorized to perform this action.

    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 Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)

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

      Value is deployments.deployment_not_found.

    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

GET /deployments/{deployment_id}/migrate_template
curl \
 -X GET https://{{hostname}}/api/v1/deployments/{deployment_id}/migrate_template?template_id=string
Response examples (200)
{
  "name": "string",
  "prune_orphans": true,
  "resources": {
    "elasticsearch": [
      {
        "ref_id": "string",
        "display_name": "string",
        "region": "string",
        "plan": {
          "cluster_topology": [
            {
              "id": "string",
              "node_type": {
                "master": true,
                "data": true,
                "ingest": true,
                "ml": true
              },
              "node_roles": [
                "master"
              ],
              "memory_per_node": 42,
              "node_count_per_zone": 42,
              "zone_count": 42,
              "elasticsearch": {
                "version": "string",
                "docker_image": "string",
                "system_settings": {
                  "scripting": {
                    "painless_enabled": true,
                    "mustache_enabled": true,
                    "expressions_enabled": true,
                    "stored": {
                      "enabled": true,
                      "sandbox_mode": true
                    },
                    "file": {
                      "enabled": true,
                      "sandbox_mode": true
                    },
                    "inline": {
                      "enabled": true,
                      "sandbox_mode": true
                    }
                  },
                  "reindex_whitelist": [
                    "string"
                  ],
                  "auto_create_index": true,
                  "enable_close_index": true,
                  "destructive_requires_name": true,
                  "watcher_trigger_engine": "string",
                  "default_shards_per_index": 42,
                  "monitoring_collection_interval": 42,
                  "monitoring_history_duration": "string"
                },
                "user_settings_json": {},
                "user_settings_yaml": "string",
                "user_settings_override_json": {},
                "user_settings_override_yaml": "string",
                "enabled_built_in_plugins": [
                  "string"
                ],
                "user_plugins": [
                  {
                    "name": "string",
                    "url": "string",
                    "elasticsearch_version": "string"
                  }
                ],
                "user_bundles": [
                  {
                    "name": "string",
                    "url": "string",
                    "elasticsearch_version": "string"
                  }
                ],
                "curation": {
                  "from_instance_configuration_id": "string",
                  "to_instance_configuration_id": "string"
                },
                "node_attributes": {
                  "additionalProperty1": "string",
                  "additionalProperty2": "string"
                }
              },
              "instance_configuration_id": "string",
              "instance_configuration_version": 42,
              "size": {
                "value": 42,
                "resource": "memory"
              },
              "autoscaling_min": {
                "value": 42,
                "resource": "memory"
              },
              "autoscaling_max": {
                "value": 42,
                "resource": "memory"
              },
              "autoscaling_policy_override_json": {},
              "topology_element_control": {
                "min": {
                  "value": 42,
                  "resource": "memory"
                }
              },
              "autoscaling_tier_override": true
            }
          ],
          "elasticsearch": {
            "version": "string",
            "docker_image": "string",
            "system_settings": {
              "scripting": {
                "painless_enabled": true,
                "mustache_enabled": true,
                "expressions_enabled": true,
                "stored": {
                  "enabled": true,
                  "sandbox_mode": true
                },
                "file": {
                  "enabled": true,
                  "sandbox_mode": true
                },
                "inline": {
                  "enabled": true,
                  "sandbox_mode": true
                }
              },
              "reindex_whitelist": [
                "string"
              ],
              "auto_create_index": true,
              "enable_close_index": true,
              "destructive_requires_name": true,
              "watcher_trigger_engine": "string",
              "default_shards_per_index": 42,
              "monitoring_collection_interval": 42,
              "monitoring_history_duration": "string"
            },
            "user_settings_json": {},
            "user_settings_yaml": "string",
            "user_settings_override_json": {},
            "user_settings_override_yaml": "string",
            "enabled_built_in_plugins": [
              "string"
            ],
            "user_plugins": [
              {
                "name": "string",
                "url": "string",
                "elasticsearch_version": "string"
              }
            ],
            "user_bundles": [
              {
                "name": "string",
                "url": "string",
                "elasticsearch_version": "string"
              }
            ],
            "curation": {
              "from_instance_configuration_id": "string",
              "to_instance_configuration_id": "string"
            },
            "node_attributes": {
              "additionalProperty1": "string",
              "additionalProperty2": "string"
            }
          },
          "deployment_template": {
            "id": "string",
            "version": "string"
          },
          "transient": {
            "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": {}
          },
          "autoscaling_enabled": true
        },
        "settings": {
          "snapshot": {
            "repository": {
              "static": {
                "repository_type": "string",
                "settings": {}
              },
              "reference": {
                "repository_name": "string"
              },
              "default": {}
            },
            "interval": "string",
            "pending_interval": "string",
            "wait_time_after_snapshotting": "string",
            "enabled": true,
            "suspended": [
              "string"
            ],
            "retention": {
              "snapshots": 42,
              "max_age": "string"
            },
            "slm": true,
            "cron_expression": "string"
          },
          "monitoring": {
            "target_cluster_id": "string"
          },
          "metadata": {
            "name": "string",
            "owner_id": "string",
            "organization_id": "string",
            "subscription_level": "string",
            "system_owned": true,
            "contact_email": "string",
            "hidden": true,
            "resources": {
              "cpu": {
                "boost": true,
                "hard_limit": true
              }
            }
          },
          "curation": {
            "specs": [
              {
                "index_pattern": "string",
                "trigger_interval_seconds": 42
              }
            ]
          },
          "dedicated_masters_threshold": 42,
          "traffic_filter": {
            "rulesets": [
              "string"
            ]
          },
          "trust": {
            "accounts": [
              {
                "account_id": "string",
                "name": "string",
                "trust_all": true,
                "trust_allowlist": [
                  "string"
                ]
              }
            ],
            "external": [
              {
                "trust_relationship_id": "string",
                "name": "string",
                "trust_all": true,
                "trust_allowlist": [
                  "string"
                ]
              }
            ],
            "direct": [
              {
                "uid": "string",
                "name": "string",
                "type": "ECE",
                "trust_all": true,
                "trust_allowlist": [
                  "string"
                ],
                "scope_id": "abc123",
                "additional_node_names": [
                  "string"
                ],
                "certificates": [
                  {
                    "pem": "string",
                    "metadata": {
                      "fingerprint": "string",
                      "valid_to": "2025-05-04T09:42:00+00:00",
                      "valid_from": "2025-05-04T09:42:00+00:00",
                      "also_trusted_by": [
                        "string"
                      ]
                    }
                  }
                ]
              }
            ]
          },
          "keystore_contents": {
            "secrets": {
              "additionalProperty1": {
                "value": {},
                "as_file": true
              },
              "additionalProperty2": {
                "value": {},
                "as_file": true
              }
            }
          }
        }
      }
    ],
    "kibana": [
      {
        "ref_id": "string",
        "elasticsearch_cluster_ref_id": "string",
        "display_name": "string",
        "region": "string",
        "plan": {
          "cluster_topology": [
            {
              "memory_per_node": 42,
              "node_count_per_zone": 42,
              "instance_configuration_id": "string",
              "instance_configuration_version": 42,
              "size": {
                "value": 42,
                "resource": "memory"
              },
              "zone_count": 42,
              "kibana": {
                "version": "string",
                "docker_image": "string",
                "system_settings": {
                  "elasticsearch_url": "string",
                  "elasticsearch_username": "string",
                  "elasticsearch_password": "string"
                },
                "user_settings_json": {},
                "user_settings_yaml": "string",
                "user_settings_override_json": {},
                "user_settings_override_yaml": "string"
              }
            }
          ],
          "kibana": {
            "version": "string",
            "docker_image": "string",
            "system_settings": {
              "elasticsearch_url": "string",
              "elasticsearch_username": "string",
              "elasticsearch_password": "string"
            },
            "user_settings_json": {},
            "user_settings_yaml": "string",
            "user_settings_override_json": {},
            "user_settings_override_yaml": "string"
          },
          "transient": {
            "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
            }
          }
        },
        "settings": {
          "metadata": {
            "name": "string",
            "owner_id": "string",
            "organization_id": "string",
            "subscription_level": "string",
            "system_owned": true,
            "contact_email": "string",
            "hidden": true,
            "resources": {
              "cpu": {
                "boost": true,
                "hard_limit": true
              }
            }
          }
        }
      }
    ],
    "apm": [
      {
        "ref_id": "string",
        "elasticsearch_cluster_ref_id": "string",
        "display_name": "string",
        "region": "string",
        "plan": {
          "cluster_topology": [
            {
              "instance_configuration_id": "string",
              "instance_configuration_version": 42,
              "size": {
                "value": 42,
                "resource": "memory"
              },
              "zone_count": 42,
              "apm": {
                "version": "string",
                "docker_image": "string",
                "system_settings": {
                  "elasticsearch_url": "string",
                  "kibana_url": "string",
                  "elasticsearch_username": "string",
                  "elasticsearch_password": "string",
                  "secret_token": "string",
                  "debug_enabled": true
                },
                "user_settings_json": {},
                "user_settings_yaml": "string",
                "user_settings_override_json": {},
                "user_settings_override_yaml": "string"
              }
            }
          ],
          "apm": {
            "version": "string",
            "docker_image": "string",
            "system_settings": {
              "elasticsearch_url": "string",
              "kibana_url": "string",
              "elasticsearch_username": "string",
              "elasticsearch_password": "string",
              "secret_token": "string",
              "debug_enabled": true
            },
            "user_settings_json": {},
            "user_settings_yaml": "string",
            "user_settings_override_json": {},
            "user_settings_override_yaml": "string"
          },
          "transient": {
            "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
            }
          }
        },
        "settings": {
          "metadata": {
            "name": "string",
            "owner_id": "string",
            "organization_id": "string",
            "subscription_level": "string",
            "system_owned": true,
            "contact_email": "string",
            "hidden": true,
            "resources": {
              "cpu": {
                "boost": true,
                "hard_limit": true
              }
            }
          }
        }
      }
    ],
    "appsearch": [
      {
        "ref_id": "string",
        "elasticsearch_cluster_ref_id": "string",
        "display_name": "string",
        "region": "string",
        "plan": {
          "cluster_topology": [
            {
              "node_type": {
                "appserver": true,
                "worker": true
              },
              "instance_configuration_id": "string",
              "instance_configuration_version": 42,
              "size": {
                "value": 42,
                "resource": "memory"
              },
              "zone_count": 42,
              "appsearch": {
                "version": "string",
                "docker_image": "string",
                "system_settings": {
                  "elasticsearch_url": "string",
                  "elasticsearch_username": "string",
                  "elasticsearch_password": "string",
                  "secret_session_key": "string"
                },
                "user_settings_json": {},
                "user_settings_yaml": "string",
                "user_settings_override_json": {},
                "user_settings_override_yaml": "string"
              }
            }
          ],
          "appsearch": {
            "version": "string",
            "docker_image": "string",
            "system_settings": {
              "elasticsearch_url": "string",
              "elasticsearch_username": "string",
              "elasticsearch_password": "string",
              "secret_session_key": "string"
            },
            "user_settings_json": {},
            "user_settings_yaml": "string",
            "user_settings_override_json": {},
            "user_settings_override_yaml": "string"
          },
          "transient": {
            "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
            }
          }
        },
        "settings": {
          "metadata": {
            "name": "string",
            "owner_id": "string",
            "organization_id": "string",
            "subscription_level": "string",
            "system_owned": true,
            "contact_email": "string",
            "hidden": true,
            "resources": {
              "cpu": {
                "boost": true,
                "hard_limit": true
              }
            }
          }
        }
      }
    ],
    "enterprise_search": [
      {
        "ref_id": "string",
        "elasticsearch_cluster_ref_id": "string",
        "display_name": "string",
        "region": "string",
        "plan": {
          "cluster_topology": [
            {
              "node_type": {
                "appserver": true,
                "worker": true,
                "connector": true
              },
              "instance_configuration_id": "string",
              "instance_configuration_version": 42,
              "size": {
                "value": 42,
                "resource": "memory"
              },
              "zone_count": 42,
              "enterprise_search": {
                "version": "string",
                "docker_image": "string",
                "system_settings": {
                  "elasticsearch_url": "string",
                  "elasticsearch_username": "string",
                  "elasticsearch_password": "string",
                  "secret_session_key": "string"
                },
                "user_settings_json": {},
                "user_settings_yaml": "string",
                "user_settings_override_json": {},
                "user_settings_override_yaml": "string"
              },
              "allocator_filter": {},
              "node_configuration": "string",
              "memory_per_node": {},
              "node_count_per_zone": {}
            }
          ],
          "enterprise_search": {
            "version": "string",
            "docker_image": "string",
            "system_settings": {
              "elasticsearch_url": "string",
              "elasticsearch_username": "string",
              "elasticsearch_password": "string",
              "secret_session_key": "string"
            },
            "user_settings_json": {},
            "user_settings_yaml": "string",
            "user_settings_override_json": {},
            "user_settings_override_yaml": "string"
          },
          "transient": {
            "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
            }
          }
        },
        "settings": {
          "metadata": {
            "name": "string",
            "owner_id": "string",
            "organization_id": "string",
            "subscription_level": "string",
            "system_owned": true,
            "contact_email": "string",
            "hidden": true,
            "resources": {
              "cpu": {
                "boost": true,
                "hard_limit": true
              }
            }
          }
        }
      }
    ],
    "integrations_server": [
      {
        "ref_id": "string",
        "elasticsearch_cluster_ref_id": "string",
        "display_name": "string",
        "region": "string",
        "plan": {
          "cluster_topology": [
            {
              "instance_configuration_id": "string",
              "instance_configuration_version": 42,
              "size": {
                "value": 42,
                "resource": "memory"
              },
              "zone_count": 42,
              "integrations_server": {
                "version": "string",
                "docker_image": "string",
                "system_settings": {
                  "elasticsearch_url": "string",
                  "kibana_url": "string",
                  "elasticsearch_username": "string",
                  "elasticsearch_password": "string",
                  "secret_token": "string",
                  "debug_enabled": true
                },
                "user_settings_json": {},
                "user_settings_yaml": "string",
                "user_settings_override_json": {},
                "user_settings_override_yaml": "string",
                "mode": "standalone"
              }
            }
          ],
          "integrations_server": {
            "version": "string",
            "docker_image": "string",
            "system_settings": {
              "elasticsearch_url": "string",
              "kibana_url": "string",
              "elasticsearch_username": "string",
              "elasticsearch_password": "string",
              "secret_token": "string",
              "debug_enabled": true
            },
            "user_settings_json": {},
            "user_settings_yaml": "string",
            "user_settings_override_json": {},
            "user_settings_override_yaml": "string",
            "mode": "standalone"
          },
          "transient": {
            "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
            }
          }
        },
        "settings": {
          "metadata": {
            "name": "string",
            "owner_id": "string",
            "organization_id": "string",
            "subscription_level": "string",
            "system_owned": true,
            "contact_email": "string",
            "hidden": true,
            "resources": {
              "cpu": {
                "boost": true,
                "hard_limit": true
              }
            }
          }
        }
      }
    ]
  },
  "settings": {
    "observability": {
      "logging": {
        "destination": {
          "deployment_id": "string",
          "ref_id": "string"
        }
      },
      "metrics": {
        "destination": {
          "deployment_id": "string",
          "ref_id": "string"
        },
        "force_legacy_monitoring": true
      }
    },
    "autoscaling_enabled": true
  },
  "metadata": {
    "system_owned": true,
    "hidden": true,
    "tags": [
      {
        "key": "string",
        "value": "string"
      }
    ]
  },
  "alias": "string"
}
Response examples (400)
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (401)
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (404)
# Headers
x-cloud-error-codes: deployments.deployment_not_found

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
















Start all instances

POST /deployments/{deployment_id}/{resource_kind}/{ref_id}/instances/_start

Starts all instances belonging to a Deployment Resource.

Path parameters

  • deployment_id string Required

    Identifier for the Deployment.

  • resource_kind string Required

    The kind of resource (one of elasticsearch, kibana, apm, or integrations_server).

  • ref_id string Required

    User-specified RefId for the Resource (or '_main' if there is only one).

Responses

  • The start command was issued successfully.

    Hide response attribute Show response attribute object
    • warnings array[object]

      List of warnings generated from validating command

      Hide warnings attributes Show warnings attributes object
      • code string Required

        A structured code representing the error type that occurred

      • message string

        A human readable message describing the warning that occurred

  • The start maintenance mode command was prohibited for the given Resource. (code: deployments.instance_update_prohibited_error)

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

      Value is deployments.instance_update_prohibited_error.

    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 Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)
    • The Resource specified by {ref_id} cannot be found. (code: deployments.deployment_resource_not_found)
    • One or more instances of the given resource type are missing. (code: deployments.instances_missing_on_update_error)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are deployments.deployment_not_found, deployments.deployment_resource_not_found, or deployments.instances_missing_on_update_error.

    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

  • A Resource that was previously stored no longer exists. (code: deployments.deployment_resource_no_longer_exists)

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

      Value is deployments.deployment_resource_no_longer_exists.

    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 /deployments/{deployment_id}/{resource_kind}/{ref_id}/instances/_start
curl \
 -X POST https://{{hostname}}/api/v1/deployments/{deployment_id}/{resource_kind}/{ref_id}/instances/_start
Response examples (202)
{
  "warnings": [
    {
      "code": "string",
      "message": "string"
    }
  ]
}
Response examples (403)
# Headers
x-cloud-error-codes: deployments.instance_update_prohibited_error

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

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

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

Stop all instances

POST /deployments/{deployment_id}/{resource_kind}/{ref_id}/instances/_stop

Stops all instances belonging to a Deployment Resource.

Path parameters

  • deployment_id string Required

    Identifier for the Deployment.

  • resource_kind string Required

    The kind of resource (one of elasticsearch, kibana, apm, or integrations_server).

  • ref_id string Required

    User-specified RefId for the Resource (or '_main' if there is only one).

Responses

  • The stop command was issued successfully.

    Hide response attribute Show response attribute object
    • warnings array[object]

      List of warnings generated from validating command

      Hide warnings attributes Show warnings attributes object
      • code string Required

        A structured code representing the error type that occurred

      • message string

        A human readable message describing the warning that occurred

  • The stop maintenance mode command was prohibited for the given Resource. (code: deployments.instance_update_prohibited_error)

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

      Value is deployments.instance_update_prohibited_error.

    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 Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)
    • The Resource specified by {ref_id} cannot be found. (code: deployments.deployment_resource_not_found)
    • One or more instances of the given resource type are missing. (code: deployments.instances_missing_on_update_error)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are deployments.deployment_not_found, deployments.deployment_resource_not_found, or deployments.instances_missing_on_update_error.

    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

  • A Resource that was previously stored no longer exists. (code: deployments.deployment_resource_no_longer_exists)

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

      Value is deployments.deployment_resource_no_longer_exists.

    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 /deployments/{deployment_id}/{resource_kind}/{ref_id}/instances/_stop
curl \
 -X POST https://{{hostname}}/api/v1/deployments/{deployment_id}/{resource_kind}/{ref_id}/instances/_stop
Response examples (202)
{
  "warnings": [
    {
      "code": "string",
      "message": "string"
    }
  ]
}
Response examples (403)
# Headers
x-cloud-error-codes: deployments.instance_update_prohibited_error

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

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

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




Stop maintenance mode (all instances)

POST /deployments/{deployment_id}/{resource_kind}/{ref_id}/instances/maintenance-mode/_stop

Stops maintenance mode of all instances belonging to a Deployment Resource.

Path parameters

  • deployment_id string Required

    Identifier for the Deployment.

  • resource_kind string Required

    The kind of resource (one of elasticsearch, kibana, apm, or integrations_server).

  • ref_id string Required

    User-specified RefId for the Resource (or '_main' if there is only one).

Responses

  • The stop maintenance mode command was issued successfully.

    Hide response attribute Show response attribute object
    • warnings array[object]

      List of warnings generated from validating command

      Hide warnings attributes Show warnings attributes object
      • code string Required

        A structured code representing the error type that occurred

      • message string

        A human readable message describing the warning that occurred

  • The stop maintenance mode command was prohibited for the given Resource. (code: deployments.instance_update_prohibited_error)

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

      Value is deployments.instance_update_prohibited_error.

    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 Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)
    • The Resource specified by {ref_id} cannot be found. (code: deployments.deployment_resource_not_found)
    • One or more instances of the given resource type are missing. (code: deployments.instances_missing_on_update_error)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are deployments.deployment_not_found, deployments.deployment_resource_not_found, or deployments.instances_missing_on_update_error.

    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

  • A Resource that was previously stored no longer exists. (code: deployments.deployment_resource_no_longer_exists)

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

      Value is deployments.deployment_resource_no_longer_exists.

    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 /deployments/{deployment_id}/{resource_kind}/{ref_id}/instances/maintenance-mode/_stop
curl \
 -X POST https://{{hostname}}/api/v1/deployments/{deployment_id}/{resource_kind}/{ref_id}/instances/maintenance-mode/_stop
Response examples (202)
{
  "warnings": [
    {
      "code": "string",
      "message": "string"
    }
  ]
}
Response examples (403)
# Headers
x-cloud-error-codes: deployments.instance_update_prohibited_error

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

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

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








Stop instances

POST /deployments/{deployment_id}/{resource_kind}/{ref_id}/instances/{instance_ids}/_stop

Stops instances belonging to a Deployment Resource.

Path parameters

  • deployment_id string Required

    Identifier for the Deployment.

  • resource_kind string Required

    The kind of resource (one of elasticsearch, kibana, apm, or integrations_server).

  • ref_id string Required

    User-specified RefId for the Resource (or '_main' if there is only one).

  • instance_ids array[string] Required

    A comma-separated list of instance identifiers.

Query parameters

  • If true and the instance does not exist then quietly proceed to the next instance, otherwise treated as an error.

    Default value is false.

Responses

  • The stop command was issued successfully.

    Hide response attribute Show response attribute object
    • warnings array[object]

      List of warnings generated from validating command

      Hide warnings attributes Show warnings attributes object
      • code string Required

        A structured code representing the error type that occurred

      • message string

        A human readable message describing the warning that occurred

  • The start maintenance mode command was prohibited for the given Resource. (code: deployments.instance_update_prohibited_error)

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

      Value is deployments.instance_update_prohibited_error.

    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 Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)
    • The Resource specified by {ref_id} cannot be found. (code: deployments.deployment_resource_not_found)
    • One or more instances of the given resource type are missing. (code: deployments.instances_missing_on_update_error)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are deployments.deployment_not_found, deployments.deployment_resource_not_found, or deployments.instances_missing_on_update_error.

    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

  • A Resource that was previously stored no longer exists. (code: deployments.deployment_resource_no_longer_exists)

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

      Value is deployments.deployment_resource_no_longer_exists.

    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 /deployments/{deployment_id}/{resource_kind}/{ref_id}/instances/{instance_ids}/_stop
curl \
 -X POST https://{{hostname}}/api/v1/deployments/{deployment_id}/{resource_kind}/{ref_id}/instances/{instance_ids}/_stop
Response examples (202)
{
  "warnings": [
    {
      "code": "string",
      "message": "string"
    }
  ]
}
Response examples (403)
# Headers
x-cloud-error-codes: deployments.instance_update_prohibited_error

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

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

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

Start maintenance mode

POST /deployments/{deployment_id}/{resource_kind}/{ref_id}/instances/{instance_ids}/maintenance-mode/_start

Starts maintenance mode of instances belonging to a Deployment Resource.

Path parameters

  • deployment_id string Required

    Identifier for the Deployment.

  • resource_kind string Required

    The kind of resource (one of elasticsearch, kibana, apm, or integrations_server).

  • ref_id string Required

    User-specified RefId for the Resource (or '_main' if there is only one).

  • instance_ids array[string] Required

    A comma-separated list of instance identifiers.

Query parameters

  • If true and the instance does not exist then quietly proceed to the next instance, otherwise treated as an error.

    Default value is false.

Responses

  • The start maintenance command was issued successfully.

    Hide response attribute Show response attribute object
    • warnings array[object]

      List of warnings generated from validating command

      Hide warnings attributes Show warnings attributes object
      • code string Required

        A structured code representing the error type that occurred

      • message string

        A human readable message describing the warning that occurred

  • The start maintenance mode command was prohibited for the given Resource. (code: deployments.instance_update_prohibited_error)

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

      Value is deployments.instance_update_prohibited_error.

    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 Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)
    • The Resource specified by {ref_id} cannot be found. (code: deployments.deployment_resource_not_found)
    • One or more instances of the given resource type are missing. (code: deployments.instances_missing_on_update_error)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are deployments.deployment_not_found, deployments.deployment_resource_not_found, or deployments.instances_missing_on_update_error.

    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

  • A Resource that was previously stored no longer exists. (code: deployments.deployment_resource_no_longer_exists)

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

      Value is deployments.deployment_resource_no_longer_exists.

    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 /deployments/{deployment_id}/{resource_kind}/{ref_id}/instances/{instance_ids}/maintenance-mode/_start
curl \
 -X POST https://{{hostname}}/api/v1/deployments/{deployment_id}/{resource_kind}/{ref_id}/instances/{instance_ids}/maintenance-mode/_start
Response examples (202)
{
  "warnings": [
    {
      "code": "string",
      "message": "string"
    }
  ]
}
Response examples (403)
# Headers
x-cloud-error-codes: deployments.instance_update_prohibited_error

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

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

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
















Capture a new thread dump for the given instance

POST /deployments/{deployment_id}/{resource_kind}/{ref_id}/instances/{instance_id}/thread_dump/_capture

Captures a new thread dump for the given instance and returns the thread dump contents.

Path parameters

  • deployment_id string Required

    Identifier for the Deployment.

  • resource_kind string Required

    The kind of resource (one of elasticsearch, kibana or apm).

  • ref_id string Required

    User-specified RefId for the Resource (or '_main' if there is only one).

  • instance_id string Required

    The instance identifier

Responses

  • The thread dump contents

    • The Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)
    • The Resource specified by {ref_id} cannot be found. (code: deployments.deployment_resource_not_found)
    • The specified instance cannot be found. (code: deployments.instance_not_found_error)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are deployments.deployment_not_found, deployments.deployment_resource_not_found, or deployments.instance_not_found_error.

    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 /deployments/{deployment_id}/{resource_kind}/{ref_id}/instances/{instance_id}/thread_dump/_capture
curl \
 -X POST https://{{hostname}}/api/v1/deployments/{deployment_id}/{resource_kind}/{ref_id}/instances/{instance_id}/thread_dump/_capture
Response examples (200)
string
Response examples (404)
# Headers
x-cloud-error-codes: deployments.deployment_not_found

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

Set a Deployment's resource metadata

POST /deployments/{deployment_id}/{resource_kind}/{ref_id}/metadata/raw

Advanced use only. Sets the internal metadata, in free-form JSON, for the resource. Only use the parameter to set the modified JSON that is returned from the get version of the metadata.

Path parameters

  • deployment_id string Required

    Identifier for the Deployment

  • resource_kind string Required

    The kind of resource

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

  • ref_id string Required

    User-specified RefId for the Resource (or '_main' if there is only one)

Query parameters

  • version string

    If specified, checks for conflicts against the metadata version (returned in 'x-cloud-resource-version' of the GET request)

Body Required

The freeform JSON for the cluster (should always be based on the current version retrieved from the GET)

string string

Responses

  • The resource metadata was successfully changed (the updated JSON is returned)

    Hide headers attributes Show headers attributes
  • The metadata is invalid. (code: deployments.invalid_metadata)

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

      Value is deployments.invalid_metadata.

    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 Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)
    • The Resource specified by {ref_id} cannot be found. (code: deployments.deployment_resource_not_found)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are deployments.deployment_not_found or deployments.deployment_resource_not_found.

    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

  • Please retry. (code: deployments.metadata_internal_error)

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

      Value is deployments.metadata_internal_error.

    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

  • We have failed you. (code: deployments.metadata_internal_error)

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

      Value is deployments.metadata_internal_error.

    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 /deployments/{deployment_id}/{resource_kind}/{ref_id}/metadata/raw
curl \
 -X POST https://{{hostname}}/api/v1/deployments/{deployment_id}/{resource_kind}/{ref_id}/metadata/raw \
 -d '"string"'
Request examples
string
Response examples (200)
# Headers
x-cloud-resource-version: string
x-cloud-resource-created: string
x-cloud-resource-last-modified: string

# Payload
string
Response examples (400)
# Headers
x-cloud-error-codes: deployments.invalid_metadata

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

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

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

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

Cancel resource pending plan

DELETE /deployments/{deployment_id}/{resource_kind}/{ref_id}/plan/pending

Cancels the pending plan of a Resource belonging to a given Deployment.

Path parameters

  • deployment_id string Required

    Identifier for the Deployment

  • resource_kind string Required

    The kind of resource

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

  • ref_id string Required

    User-specified RefId for the Resource (or '_main' if there is only one)

Query parameters

  • When true, deletes the pending plan instead of attempting a graceful cancellation. The default is false.

    Default value is false.

  • When true, returns successfully, even when plans are missing. The default is false.

    Default value is false.

Responses

  • Standard Deployment Resource Crud Response

    Hide response attributes Show response attributes object
    • id string Required

      The id of the deployment

    • kind string Required

      The kind of the stateless resource

    • ref_id string Required

      The reference id of the resource

  • The Resource does not have a pending plan. (code: deployments.resource_does_not_have_a_pending_plan)

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

      Value is deployments.resource_does_not_have_a_pending_plan.

    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 Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)

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

      Value is deployments.deployment_not_found.

    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

  • We have failed you. (code: deployments.deployment_resource_no_longer_exists)

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

      Value is deployments.deployment_resource_no_longer_exists.

    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

DELETE /deployments/{deployment_id}/{resource_kind}/{ref_id}/plan/pending
curl \
 -X DELETE https://{{hostname}}/api/v1/deployments/{deployment_id}/{resource_kind}/{ref_id}/plan/pending
Response examples (200)
{
  "id": "string",
  "kind": "string",
  "ref_id": "string"
}
Response examples (400)
# Headers
x-cloud-error-codes: deployments.resource_does_not_have_a_pending_plan

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

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

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




Proxy HTTP PUT request

PUT /deployments/{deployment_id}/{resource_kind}/{ref_id}/proxy/{proxy_path}

Proxies the HTTP PUT request to the deployment resource. You must specify the X-Management-Request HTTP header. NOTE: Use this endpoint for management purposes. It does not provide high performance.

Headers

  • X-Management-Request string Required

    You must specify the X-Management-Request HTTP header with value true. NOTE: Use this endpoint for management purposes. It does not provide high performance.

Path parameters

  • deployment_id string Required

    Identifier for the Deployment

  • resource_kind string Required

    The kind of resource

    Values are elasticsearch, kibana, or enterprise_search.

  • ref_id string Required

    User-specified RefId for the Resource (or '_main' if there is only one)

  • proxy_path string Required

    The URL part to proxy to the deployment resource. Example: _cat/indices, /api/spaces/space or /api/ent/v1/internal/health

Body

The JSON payload to proxy to the deployment resource.

string string

Responses

  • The request has been processed successfully through the proxy.

    Hide response attribute Show response attribute object
    • The Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)
    • The Resource specified by {ref_id} cannot be found. (code: deployments.deployment_resource_not_found)
    • The Resource specified by {ref_id} cannot be found. (code: clusters.cluster_not_found)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are deployments.deployment_not_found, deployments.deployment_resource_not_found, or clusters.cluster_not_found.

    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

PUT /deployments/{deployment_id}/{resource_kind}/{ref_id}/proxy/{proxy_path}
curl \
 -X PUT https://{{hostname}}/api/v1/deployments/{deployment_id}/{resource_kind}/{ref_id}/proxy/{proxy_path} \
 -H "X-Management-Request: string" \
 -d '"string"'
Request examples
# Headers
X-Management-Request: string

# Payload
string
Response examples (200)
{
  "value": "string"
}
Response examples (404)
# Headers
x-cloud-error-codes: deployments.deployment_not_found

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

Proxy HTTP POST request

POST /deployments/{deployment_id}/{resource_kind}/{ref_id}/proxy/{proxy_path}

Proxies the HTTP POST request to the deployment resource. You must specify the X-Management-Request HTTP header. NOTE: Use this endpoint for management purposes. It does not provide high performance.

Headers

  • X-Management-Request string Required

    You must specify the X-Management-Request HTTP header with value true. NOTE: Use this endpoint for management purposes. It does not provide high performance.

Path parameters

  • deployment_id string Required

    Identifier for the Deployment

  • resource_kind string Required

    The kind of resource

    Values are elasticsearch, kibana, or enterprise_search.

  • ref_id string Required

    User-specified RefId for the Resource (or '_main' if there is only one)

  • proxy_path string Required

    The URL part to proxy to the deployment resource. Example: _cat/indices, /api/spaces/space or /api/ent/v1/internal/health

Body

The JSON payload to proxy to the deployment resource.

string string

Responses

  • The request has been processed successfully through the proxy.

    Hide response attribute Show response attribute object
    • The Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)
    • The Resource specified by {ref_id} cannot be found. (code: deployments.deployment_resource_not_found)
    • The Resource specified by {ref_id} cannot be found. (code: clusters.cluster_not_found)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are deployments.deployment_not_found, deployments.deployment_resource_not_found, or clusters.cluster_not_found.

    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 /deployments/{deployment_id}/{resource_kind}/{ref_id}/proxy/{proxy_path}
curl \
 -X POST https://{{hostname}}/api/v1/deployments/{deployment_id}/{resource_kind}/{ref_id}/proxy/{proxy_path} \
 -H "X-Management-Request: string" \
 -d '"string"'
Request examples
# Headers
X-Management-Request: string

# Payload
string
Response examples (200)
{
  "value": "string"
}
Response examples (404)
# Headers
x-cloud-error-codes: deployments.deployment_not_found

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

Proxy HTTP DELETE request

DELETE /deployments/{deployment_id}/{resource_kind}/{ref_id}/proxy/{proxy_path}

Proxies the HTTP DELETE request to the deployment resource. You must specify the X-Management-Request HTTP header. NOTE: Use this endpoint for management purposes. It does not provide high performance.

Headers

  • X-Management-Request string Required

    You must specify the X-Management-Request HTTP header with value true. NOTE: Use this endpoint for management purposes. It does not provide high performance.

Path parameters

  • deployment_id string Required

    Identifier for the Deployment

  • resource_kind string Required

    The kind of resource

    Values are elasticsearch, kibana, or enterprise_search.

  • ref_id string Required

    User-specified RefId for the Resource (or '_main' if there is only one)

  • proxy_path string Required

    The URL part to proxy to the deployment resource. Example: _cat/indices, /api/spaces/space or /api/ent/v1/internal/health

Body

The JSON payload to proxy to the deployment resource.

string string

Responses

  • The request has been processed successfully through the proxy.

    Hide response attribute Show response attribute object
    • The Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)
    • The Resource specified by {ref_id} cannot be found. (code: deployments.deployment_resource_not_found)
    • The Resource specified by {ref_id} cannot be found. (code: clusters.cluster_not_found)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are deployments.deployment_not_found, deployments.deployment_resource_not_found, or clusters.cluster_not_found.

    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

DELETE /deployments/{deployment_id}/{resource_kind}/{ref_id}/proxy/{proxy_path}
curl \
 -X DELETE https://{{hostname}}/api/v1/deployments/{deployment_id}/{resource_kind}/{ref_id}/proxy/{proxy_path} \
 -H "X-Management-Request: string" \
 -d '"string"'
Request examples
# Headers
X-Management-Request: string

# Payload
string
Response examples (200)
{
  "value": "string"
}
Response examples (404)
# Headers
x-cloud-error-codes: deployments.deployment_not_found

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

Delete Stateless Resource from Deployment

DELETE /deployments/{deployment_id}/{stateless_resource_kind}/{ref_id}

Delete Stateless Resource belonging to a given Deployment. Deployment must be shutdown already.

Path parameters

  • deployment_id string Required

    Identifier for the Deployment

  • The kind of stateless resource

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

  • ref_id string Required

    User-specified RefId for the Resource (or '_main' if there is only one)

Responses

  • Standard Deployment Resource Crud Response

    Hide response attributes Show response attributes object
    • id string Required

      The id of the deployment

    • kind string Required

      The kind of the stateless resource

    • ref_id string Required

      The reference id of the resource

  • Resource has still instances. (code: deployments.resource_has_instances)

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

      Value is deployments.resource_has_instances.

    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 Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)
    • The Resource specified by {ref_id} cannot be found. (code: deployments.deployment_resource_not_found)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are deployments.deployment_not_found or deployments.deployment_resource_not_found.

    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

  • We have failed you. (code: deployments.deployment_resource_no_longer_exists)

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

      Value is deployments.deployment_resource_no_longer_exists.

    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

DELETE /deployments/{deployment_id}/{stateless_resource_kind}/{ref_id}
curl \
 -X DELETE https://{{hostname}}/api/v1/deployments/{deployment_id}/{stateless_resource_kind}/{ref_id}
Response examples (200)
{
  "id": "string",
  "kind": "string",
  "ref_id": "string"
}
Response examples (400)
# Headers
x-cloud-error-codes: deployments.resource_has_instances

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

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

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

Restart Deployment Stateless Resource

POST /deployments/{deployment_id}/{stateless_resource_kind}/{ref_id}/_restart

Restarts a Stateless Resource. If a Resource is active: this command re-applies the existing plan but applies a "cluster_reboot", which issues a restart command and waits for it to complete. If a Resource is inactive: this command starts it up with the most recent successful plan.

Path parameters

  • deployment_id string Required

    Identifier for the Deployment.

  • The kind of stateless resource

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

  • ref_id string Required

    User-specified RefId for the Resource (or '_main' if there is only one).

Query parameters

  • If true, cancels any pending plans before restarting. If false and there are pending plans, returns an error.

    Default value is false.

Responses

  • The restart command was issued successfully

    Hide response attribute Show response attribute object
    • warnings array[object]

      List of warnings generated from validating command

      Hide warnings attributes Show warnings attributes object
      • code string Required

        A structured code representing the error type that occurred

      • message string

        A human readable message describing the warning that occurred

    • The Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)
    • The Resource specified by {ref_id} cannot be found. (code: deployments.deployment_resource_not_found)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are deployments.deployment_not_found or deployments.deployment_resource_not_found.

    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 command sent to a Resource found the Resource in an illegal state, the error message gives more details. (code: deployments.deployment_resource_plan_change_error)

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

      Value is deployments.deployment_resource_plan_change_error.

    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

  • We have failed you. (code: deployments.deployment_resource_no_longer_exists)

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

      Value is deployments.deployment_resource_no_longer_exists.

    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 /deployments/{deployment_id}/{stateless_resource_kind}/{ref_id}/_restart
curl \
 -X POST https://{{hostname}}/api/v1/deployments/{deployment_id}/{stateless_resource_kind}/{ref_id}/_restart
Response examples (202)
{
  "warnings": [
    {
      "code": "string",
      "message": "string"
    }
  ]
}
Response examples (404)
# Headers
x-cloud-error-codes: deployments.deployment_not_found

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

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

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

Shutdown Deployment Stateless Resource

POST /deployments/{deployment_id}/{stateless_resource_kind}/{ref_id}/_shutdown

Shut down Stateless Resource belonging to a given Deployment. Kibana cannot be shut down on Elasticsearch Service as it is required for Elasticsearch administrative functions, such as Snapshot Lifecycle Management and version upgrades.

Path parameters

  • deployment_id string Required

    Identifier for the Deployment.

  • The kind of stateless resource

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

  • ref_id string Required

    User-specified RefId for the Resource (or '_main' if there is only one).

Query parameters

  • hide boolean

    Hide cluster on shutdown. Hidden clusters are not listed by default. Only applicable for Platform administrators.

  • If true, will skip taking a snapshot of the cluster before shutting the cluster down (if even possible)

    Default value is false.

Responses

  • Standard response

    Hide response attribute Show response attribute object
    • warnings array[object]

      List of warnings generated from validating command

      Hide warnings attributes Show warnings attributes object
      • code string Required

        A structured code representing the error type that occurred

      • message string

        A human readable message describing the warning that occurred

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

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

      Value is deployments.restricted_parameter.

    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 Deployment specified by {deployment_id} cannot be found. (code: deployments.deployment_not_found)
    • The Resource specified by {ref_id} cannot be found. (code: deployments.deployment_resource_not_found)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are deployments.deployment_not_found or deployments.deployment_resource_not_found.

    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

  • We have failed you. (code: deployments.deployment_resource_no_longer_exists)

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

      Value is deployments.deployment_resource_no_longer_exists.

    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 /deployments/{deployment_id}/{stateless_resource_kind}/{ref_id}/_shutdown
curl \
 -X POST https://{{hostname}}/api/v1/deployments/{deployment_id}/{stateless_resource_kind}/{ref_id}/_shutdown
Response examples (200)
{
  "warnings": [
    {
      "code": "string",
      "message": "string"
    }
  ]
}
Response examples (400)
# Headers
x-cloud-error-codes: deployments.restricted_parameter

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

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

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




Deployments - Extensions

Manage the extensions for your deployment.

List Extensions

GET /deployments/extensions

Retrieves all of the available extensions.

Responses

  • The extensions that are available

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

      The list of extensions.

      Hide extensions attributes Show extensions attributes object
      • id string Required

        The extension ID

      • name string Required

        The extension name.

      • The extension description.

      • url string Required

        The extension URL to be used in the plan.

      • The download URL specified during extension creation.

      • extension_type string Required

        The extension type.

        Values are plugin or bundle.

      • version string Required

        The Elasticsearch version.

      • deployments array[string]

        List of deployments using this extension. Up to only 10000 deployments will be included in the list.

      • The extension file metadata.

        Additional properties are allowed.

        Hide file_metadata attributes Show file_metadata attributes object
        • last_modified_date string(date-time)

          The date and time the extension was last modified.

        • size integer(int64)

          The extension file size in bytes.

        • url string(uri)

          The temporary URL to download the extension file. Usable for verification.

GET /deployments/extensions
curl \
 -X GET https://{{hostname}}/api/v1/deployments/extensions
Response examples (200)
{
  "extensions": [
    {
      "id": "string",
      "name": "string",
      "description": "string",
      "url": "string",
      "download_url": "string",
      "extension_type": "plugin",
      "version": "string",
      "deployments": [
        "string"
      ],
      "file_metadata": {
        "last_modified_date": "2025-05-04T09:42:00+00:00",
        "size": 42,
        "url": "https://example.com"
      }
    }
  ]
}

Create an extension

POST /deployments/extensions

Creates the extension. The extensions API supports two types of usage patterns. A). Specify a download_url, http or https URL, where the extension is currently hosted. This will result in extension being copied to elastic repository. B). Create only the extension metadata using the POST endpoint and then use PUT to upload the extension file. Leave the download_url unspecified in this case.

Body Required

the data that creates the extension

  • name string Required

    The extension name. Only ASCII alphanumeric and [_.-] characters allowed

  • The extension description.

  • The URL to download the extension archive.

  • extension_type string Required

    The extension type.

    Values are plugin or bundle.

  • version string Required

    The Elasticsearch version.

Responses

  • The extension that was just created.

    Hide headers attributes Show headers attributes
    Hide response attributes Show response attributes object
    • id string Required

      The extension ID

    • name string Required

      The extension name.

    • The extension description.

    • url string Required

      The extension URL to be used in the plan.

    • The download URL specified during extension creation.

    • extension_type string Required

      The extension type.

      Values are plugin or bundle.

    • version string Required

      The Elasticsearch version.

    • deployments array[string]

      List of deployments using this extension. Up to only 10000 deployments will be included in the list.

    • The extension file metadata.

      Additional properties are allowed.

      Hide file_metadata attributes Show file_metadata attributes object
      • last_modified_date string(date-time)

        The date and time the extension was last modified.

      • size integer(int64)

        The extension file size in bytes.

      • url string(uri)

        The temporary URL to download the extension file. Usable for verification.

  • Could not download the extension from the specified URL. (code: extensions.request_execution_failed)

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

      Value is extensions.request_execution_failed.

    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

  • Your current session does not have a user id associated with it. (code: extensions.no_user_id)

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

      Value is extensions.no_user_id.

    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

  • An extension already exists with the generated id. Please try again. (code: extensions.id_already_exists)

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

      Value is extensions.id_already_exists.

    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 /deployments/extensions
curl \
 -X POST https://{{hostname}}/api/v1/deployments/extensions \
 -d '{"name":"string","description":"string","download_url":"string","extension_type":"plugin","version":"string"}'
Request examples
{
  "name": "string",
  "description": "string",
  "download_url": "string",
  "extension_type": "plugin",
  "version": "string"
}
Response examples (201)
# Headers
x-cloud-resource-version: string
x-cloud-resource-created: string
x-cloud-resource-last-modified: string

# Payload
{
  "id": "string",
  "name": "string",
  "description": "string",
  "url": "string",
  "download_url": "string",
  "extension_type": "plugin",
  "version": "string",
  "deployments": [
    "string"
  ],
  "file_metadata": {
    "last_modified_date": "2025-05-04T09:42:00+00:00",
    "size": 42,
    "url": "https://example.com"
  }
}
Response examples (400)
# Headers
x-cloud-error-codes: extensions.request_execution_failed

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

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

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








Update Extension

POST /deployments/extensions/{extension_id}

Updates an extension.

Path parameters

Body Required

The extension update data.

Responses

  • Extension updated successfully.

    Hide headers attributes Show headers attributes
    Hide response attributes Show response attributes object
    • id string Required

      The extension ID

    • name string Required

      The extension name.

    • The extension description.

    • url string Required

      The extension URL to be used in the plan.

    • The download URL specified during extension creation.

    • extension_type string Required

      The extension type.

      Values are plugin or bundle.

    • version string Required

      The Elasticsearch version.

    • deployments array[string]

      List of deployments using this extension. Up to only 10000 deployments will be included in the list.

    • The extension file metadata.

      Additional properties are allowed.

      Hide file_metadata attributes Show file_metadata attributes object
      • last_modified_date string(date-time)

        The date and time the extension was last modified.

      • size integer(int64)

        The extension file size in bytes.

      • url string(uri)

        The temporary URL to download the extension file. Usable for verification.

  • Could not download the extension from the specified URL. (code: extensions.request_execution_failed)

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

      Value is extensions.request_execution_failed.

    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 extension does not belong to you. (code: extensions.unauthorised)
    • Your current session does not have a user id associated with it. (code: extensions.no_user_id)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are extensions.unauthorised or extensions.no_user_id.

    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 extension you want does not exist. (code: extensions.not_found)

    Hide headers attribute Show headers attribute
    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 version you sent does not match the persisted version. (code: extensions.version_conflict)

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

      Value is extensions.version_conflict.

    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 /deployments/extensions/{extension_id}
curl \
 -X POST https://{{hostname}}/api/v1/deployments/extensions/{extension_id} \
 -d '{"name":"string","description":"string","download_url":"string","extension_type":"plugin","version":"string"}'
Request examples
{
  "name": "string",
  "description": "string",
  "download_url": "string",
  "extension_type": "plugin",
  "version": "string"
}
Response examples (200)
# Headers
x-cloud-resource-version: string
x-cloud-resource-created: string
x-cloud-resource-last-modified: string

# Payload
{
  "id": "string",
  "name": "string",
  "description": "string",
  "url": "string",
  "download_url": "string",
  "extension_type": "plugin",
  "version": "string",
  "deployments": [
    "string"
  ],
  "file_metadata": {
    "last_modified_date": "2025-05-04T09:42:00+00:00",
    "size": 42,
    "url": "https://example.com"
  }
}
Response examples (400)
# Headers
x-cloud-error-codes: extensions.request_execution_failed

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

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

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

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

Delete Extension

DELETE /deployments/extensions/{extension_id}

Deletes a Extension.

Path parameters

Responses

  • Extension deleted successfully.

    Hide headers attributes Show headers attributes

    Additional properties are allowed.

    • The extension does not belong to you. (code: extensions.unauthorised)
    • Your current session does not have a user id associated with it. (code: extensions.no_user_id)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are extensions.unauthorised or extensions.no_user_id.

    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 extension requested does not exist. (code: extensions.not_found)

    Hide headers attribute Show headers attribute
    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 version you sent does not match the persisted version. (code: extensions.version_conflict)

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

      Value is extensions.version_conflict.

    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

DELETE /deployments/extensions/{extension_id}
curl \
 -X DELETE https://{{hostname}}/api/v1/deployments/extensions/{extension_id}
Response examples (200)
# Headers
x-cloud-resource-version: string
x-cloud-resource-created: string
x-cloud-resource-last-modified: string

# Payload
{}
Response examples (401)
# Headers
x-cloud-error-codes: extensions.unauthorised

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

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

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

Get deployment templates

GET /deployments/templates

Retrieves all deployment templates.

Query parameters

  • metadata string

    An optional key/value pair in the form of (key:value) that will act as a filter and exclude any templates that do not have a matching metadata item associated.

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

    Default value is true.

  • If true, will populate the max_zones field in the instance configurations. Only relevant if show_instance_configurations=true.

    Default value is false.

  • If present, it will cause the returned deployment templates to be adapted to return only the elements allowed in that version.

  • If true, templates flagged as hidden will be returned.

    Default value is false.

  • region string Required

    Region of the deployment templates

Responses

  • The deployment templates were returned successfully.

    Hide response attributes Show response attributes object
    • id string Required

      The unique identifier for the template.

    • name string Required

      A human readable name for the template.

    • An optional description for the template.

    • deployment_template object Required

      A request for creating a new Deployment consisting of multiple clusters

      Additional properties are allowed.

      Hide deployment_template attributes Show deployment_template attributes object
      • name string

        A name for the deployment; otherwise this will be the generated deployment id

      • The Resources that will belong to this Deployment

        Additional properties are allowed.

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

          A list of payloads for Elasticsearch cluster creation.

          Hide elasticsearch attributes Show elasticsearch attributes object
          • ref_id string Required

            A locally-unique user-specified id for this Elasticsearch cluster

          • The human readable name for the cluster (defaults to the generated cluster id if not specified)

          • region string Required

            The region where this resource exists

          • plan object Required

            The plan for building this Elasticsearch cluster

            Additional properties are allowed.

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

                Unique identifier of this topology element

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

                Additional properties are allowed.

                Hide node_type attributes Show node_type attributes object
                • master boolean

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

                • data boolean

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

                • ingest boolean

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

                • ml boolean

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

              • node_roles array[string]

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

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

              • memory_per_node integer(int32)

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

              • node_count_per_zone integer(int32)

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

              • zone_count integer(int32)

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

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

                Additional properties are allowed.

                Hide elasticsearch attributes Show elasticsearch attributes object
                • version string

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

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

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

                  Additional properties are allowed.

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

                    Additional properties are allowed.

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

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

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

                    • stored object

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

                      Additional properties are allowed.

                      Hide stored attributes Show stored attributes object
                      • enabled boolean

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

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

                    • file object

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

                      Additional properties are allowed.

                      Hide file attributes Show file attributes object
                      • enabled boolean

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

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

                    • inline object

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

                      Additional properties are allowed.

                      Hide inline attributes Show inline attributes object
                      • enabled boolean

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

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

                  • reindex_whitelist array[string]

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

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

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

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

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

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

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

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

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

                  Additional properties are allowed.

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

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

                  Additional properties are allowed.

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

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

                • user_plugins array[object]

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

                  Hide user_plugins attributes Show user_plugins attributes object
                  • name string Required

                    The name of the plugin

                  • url string Required

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

                  • elasticsearch_version string Required

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

                • user_bundles array[object]

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

                  Hide user_bundles attributes Show user_bundles attributes object
                  • name string Required

                    The name of the bundle

                  • url string Required

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

                  • elasticsearch_version string Required

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

                • curation object

                  Defines the index curation routing for the cluster

                  Additional properties are allowed.

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

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

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

              • size object

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

                Additional properties are allowed.

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

                  Amount of resource

                • resource string Required

                  Type of resource

                  Values are memory or storage.

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

                Additional properties are allowed.

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

                  Amount of resource

                • resource string Required

                  Type of resource

                  Values are memory or storage.

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

                Additional properties are allowed.

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

                  Amount of resource

                • resource string Required

                  Type of resource

                  Values are memory or storage.

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

                Additional properties are allowed.

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

                Additional properties are allowed.

                Hide topology_element_control attribute Show topology_element_control attribute object
                • min object Required

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

                  Additional properties are allowed.

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

                    Amount of resource

                  • resource string Required

                    Type of resource

                    Values are memory or storage.

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

            • elasticsearch object Required

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

              Additional properties are allowed.

              Hide elasticsearch attributes Show elasticsearch attributes object
              • version string

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

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

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

                Additional properties are allowed.

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

                  Additional properties are allowed.

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

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

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

                  • stored object

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

                    Additional properties are allowed.

                    Hide stored attributes Show stored attributes object
                    • enabled boolean

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

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

                  • file object

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

                    Additional properties are allowed.

                    Hide file attributes Show file attributes object
                    • enabled boolean

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

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

                  • inline object

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

                    Additional properties are allowed.

                    Hide inline attributes Show inline attributes object
                    • enabled boolean

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

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

                • reindex_whitelist array[string]

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

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

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

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

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

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

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

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

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

                Additional properties are allowed.

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

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

                Additional properties are allowed.

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

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

              • user_plugins array[object]

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

                Hide user_plugins attributes Show user_plugins attributes object
                • name string Required

                  The name of the plugin

                • url string Required

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

                • elasticsearch_version string Required

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

              • user_bundles array[object]

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

                Hide user_bundles attributes Show user_bundles attributes object
                • name string Required

                  The name of the bundle

                • url string Required

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

                • elasticsearch_version string Required

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

              • curation object

                Defines the index curation routing for the cluster

                Additional properties are allowed.

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

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

              Additional properties are allowed.

              Hide deployment_template attributes Show deployment_template attributes object
              • id string Required

                The unique identifier of the deployment template

              • version string

                A version identifier to disambiguate multiple revisions of the same template

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

              Additional properties are allowed.

              Hide transient attributes Show transient attributes object
              • strategy object

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

                Additional properties are allowed.

                Hide strategy attributes Show strategy attributes object
                • rolling object

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

                  Additional properties are allowed.

                  Hide rolling attributes Show rolling attributes object
                  • group_by string

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

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

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

                  • shard_init_wait_time integer(int64)

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

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

                  Additional properties are allowed.

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

                  Additional properties are allowed.

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

                  Additional properties are allowed.

              • The configuration settings for the timeout and fallback parameters.

                Additional properties are allowed.

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

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

                • calm_wait_time integer(int64)

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

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

                    The instance id that is going to be moved

                  • to array[string]

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

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

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

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

                  • to array[string]

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

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

                • move_only boolean

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

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

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

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

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

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

                • max_snapshot_age integer(int64)

                  When you take a snapshot and 'skip_snapshots' is false, specifies the maximum age in seconds of the most recent snapshot before a new snapshot is created. Default is 300

                • If true (default false), does not clear the maintenance flag (which prevents its API from being accessed except by the constructor) on new instances added until after a snapshot has been restored, otherwise, the maintenance flag is cleared once the new instances successfully join the new cluster

                • Set to 'forced' to force a reboot as part of the upgrade plan. NOTES: (ie taking an existing plan and leaving it alone except for setting 'transient.plan_configuration.cluster_reboot': 'forced' will reboot the cluster)

                  Value is forced.

                • If false (the default) then the plan will fail out if it believes the requested sequence of operations can result in data loss - this flag will override some of these restraints

                • If true (default: false) then the plan will not wait for data to be migrated from old instances to new instances before continuing the plan (potentially deleting the old instances and losing data)

                • If false, the cluster is checked for issues that should be resolved before migration (eg contains old Lucene segments), if true this is bypassed

                • If false (the default), the cluster will run (currently) 2.x->5.x operations for any plan change ending with a 5.x cluster (eg apply a cluster license, ensure Monitoring is configured)

                • If false (the default), the cluster will perform a snapshot after a major version upgrade takes place

              • Restores a snapshot from a local or remote repository.

                Additional properties are allowed.

                Hide restore_snapshot attributes Show restore_snapshot attributes object
                • If specified, contains the name of the snapshot repository - else will default to the Elastic Cloud system repo ('found-snapshots')

                • snapshot_name string Required

                  The name of the snapshot to restore. Use '__latest_success__' to get the most recent snapshot from the specified repository

                • Raw remote snapshot restore settings. Do not send this if you are sending source_cluster_id

                  Additional properties are allowed.

                  Hide repository_config attribute Show repository_config attribute object
                  • The remote snapshot settings raw JSON - see the Elasticsearch '_snapshot' documentation for more details on supported formats

                    Additional properties are allowed.

                • The configuration for the restore command, such as which indices you want to restore.

                  Additional properties are allowed.

                  Hide restore_payload attributes Show restore_payload attributes object
                  • indices array[string]

                    The list of indices to restore (supports +ve and -ve selection and wildcarding - see the default Elasticsearch index format documentation)

                  • This JSON object (merged with the 'indices' field (if present) is passed untouched into the restore command - see the Elasticsearch '_snapshot' documentation for more details on supported formats

                    Additional properties are allowed.

                • strategy string

                  The restore strategy to use. Defaults to a full restore. Partial restore will attempt to restore unavailable indices only

                  Values are partial, full, or recovery.

                • If specified, contains the name of the source cluster id. Do not send this if you are sending repository_config

              • The list of resources that will be configured as remote clusters

                Additional properties are allowed.

                Hide remote_clusters attribute Show remote_clusters attribute object
                • resources array[object] Required

                  The remote resources

                  Hide resources attributes Show resources attributes object
                  • deployment_id string Required

                    The id of the deployment

                  • elasticsearch_ref_id string Required

                    The locally-unique user-specified id of an Elasticsearch Resource

                  • alias string Required

                    The alias for this remote cluster. Aliases must only contain letters, digits, dashes and underscores

                  • If true, skip this cluster during search if it is disconnected. Default: false

                  • info object

                    Information about a Remote Cluster.

                    Additional properties are allowed.

                    Hide info attributes Show info attributes object
                    • healthy boolean Required

                      Whether or not the remote cluster is healthy

                    • connected boolean Required

                      Whether or not there is at least one connection to the remote cluster.

                    • compatible boolean Required

                      Whether or not the remote cluster version is compatible with this cluster version.

                    • trusted boolean Required

                      Whether or not the remote cluster is trusted by this cluster.

                    • trusted_back boolean Required

                      Whether or not the remote cluster trusts this cluster back.

              • If specified, contains transient settings to be applied to an Elasticsearch cluster during changes,default values shown below applied. These can be overridden by specifying them in the map (or null to unset). Additional settings can also be set. Settings will be cleared after the plan has finished. If not specified, no settings will be applied. NOTE: These settings are only explicitly cleared for 5.x+ clusters, they must be hand-reset to their defaults in 2.x- (or a cluster reboot will clear them).

                • indices.store.throttle.max_bytes_per_sec: 120Mb
                • indices.recovery.max_bytes_per_sec: 120Mb
                • cluster.routing.allocation.cluster_concurrent_rebalance: 5
                • cluster.routing.allocation.node_initial_primaries_recoveries: 5
                • cluster.routing.allocation.node_concurrent_incoming_recoveries: 5 For version 8.1 and later no defaults are provided through this mechanism, but instead hardware dependent settings are provided to each instance.

                Additional properties are allowed.

            • Enable autoscaling for this Elasticsearch cluster.

          • settings object

            The settings for building this Elasticsearch cluster

            Additional properties are allowed.

            Hide settings attributes Show settings attributes object
            • snapshot object

              The snapshot settings for this deployment. When provided, snapshot settings are changed as specified. A null value reverts the field to the default value. Otherwise, all snapshot settings remain as they were set previously.

              Additional properties are allowed.

              Hide snapshot attributes Show snapshot attributes object
              • Snapshot repository configuration

                Additional properties are allowed.

                Hide repository attributes Show repository attributes object
                • static object

                  Cluster snapshot static repository settings, containing repository type and settings

                  Additional properties are allowed.

                  Hide static attributes Show static attributes object
                  • Type of snapshot repository, ie: S3

                  • settings object

                    Settings associated with snapshot repository

                    Additional properties are allowed.

                • Cluster snapshot reference repository settings, containing the repository name in ECE fashion

                  Additional properties are allowed.

                  Hide reference attribute Show reference attribute object
                  • ECE snapshot repository name, from the '/platform/configuration/snapshots/repositories' endpoint

                • default object

                  Cluster snapshot default repository settings

                  Additional properties are allowed.

              • interval string

                Interval between snapshots, with the format 'length unit' (space is optional), where unit can be one of: d (day), h (hour), min (minute). Default is 30 minutes

              • Interval between snapshot progress checks, with the format 'length unit' (space is optional), where unit can be one of: d (day), h (hour), min (minute). Default is 1 minute

              • The time to wait between snapshot phases (snapshot, purge), with the format 'length unit' (space is optional), where unit can be one of: d (day), h (hour), min (minute). Default is 10 minutes

              • enabled boolean

                Indicates if Snapshotting is enabled

              • suspended array[string]

                List of temporary snapshot suspensions

              • Cluster snapshot retention information

                Additional properties are allowed.

                Hide retention attributes Show retention attributes object
                • snapshots integer(int32)

                  Number of snapshots to retain

                • max_age string

                  Total retention period for all snapshots, with the format 'length unit' (space is optional), where unit can be one of: d (day), h (hour), min (minute)

              • slm boolean

                When set to true, the deployment will have SLM enabled. Default value is true.

              • Cron expression indicating when should snapshots be taken. This can be enabled only if SLM is enabled for the deployment and 'interval' is not present

            • The monitoring settings for this deployment. When provided, monitoring settings are changed as specified. A null value reverts the field to the default value. Otherwise, all monitoring settings remain as they were set previously.

              Additional properties are allowed.

              Hide monitoring attribute Show monitoring attribute object
              • target_cluster_id string Required

                The Id of the target cluster to which to send monitoring information

            • metadata object

              The top-level configuration settings for the Elasticsearch cluster.

              Additional properties are allowed.

              Hide metadata attributes Show metadata attributes object
              • name string

                The display name of the cluster

              • owner_id string

                The user id (referencing whatever user database is in use) of the cluster owner

              • The organization that owns the deployment

              • Subscription level of the cluster

              • Indicates if a cluster is system owned (restricts the set of operations that can be performed on it)

              • Contact email for the cluster

              • hidden boolean

                Whether or not this cluster is hidden from the normal clusters list

              • The top-level configuration settings for the Elasticsearch cluster resources.

                Additional properties are allowed.

                Hide resources attribute Show resources attribute object
                • cpu object

                  Specifies the CPU resource settings for the Elasticsearch cluster.

                  Additional properties are allowed.

                  Hide cpu attributes Show cpu attributes object
                  • boost boolean

                    Indicates if the CPU boost flag is enabled or not.

                  • hard_limit boolean

                    Indicates if the CPU hard limit flag is enabled or not. When set to true (default), allocates CPU timeshare based on the total CPU time multiplied by the relative RAM capacity of the instance on a given host. When set to false, delegates CPU allocation to the operating system to schedule CPU timeshares.

            • curation object

              The curation settings for this deployment. When provided, curation settings are changed as specified. A null value reverts the field to the default value. Otherwise, all curation settings remain as they were set previously.

              Additional properties are allowed.

              Hide curation attribute Show curation attribute object
              • specs array[object] Required

                Specifications for curation

                Hide specs attributes Show specs attributes object
            • Threshold starting from which the number of instances in the cluster results in the introduction of dedicated masters. If the cluster is downscaled to a number of nodes below this one, dedicated masters will be removed. Limit is inclusive. When provided the threshold setting is updated. A null value removes the field. Otherwise, the setting remains as it was set previously.

            • The rulesets to apply to all resources in this cluster. When specified, the set of rulesets is updated and the same rulesets will be applied to Kibana and APM clusters as well. If not specified, the rulesets remain as they were set previously.

              Additional properties are allowed.

              Hide traffic_filter attribute Show traffic_filter attribute object
              • rulesets array[string] Required

                IDs of the traffic filter rulesets

            • trust object

              Configuration of trust with other clusters. When provided, trust settings are changed as specified. A null value reverts the field to the default value. Otherwise, all trust settings remain as they were set previously.

              Additional properties are allowed.

              Hide trust attributes Show trust attributes object
              • accounts array[object]

                The list of trust relationships with different accounts

                Hide accounts attributes Show accounts attributes object
                • account_id string Required

                  the ID of the Account

                • name string

                  A human readable name of the trust relationship

                • trust_all boolean Required

                  If true, all clusters in this account will by default be trusted and the trust_allowlist is ignored.

                • trust_allowlist array[string]

                  The list of clusters to trust. Only used when trust_all is false.

              • external array[object]

                The list of trust relationships with external entities

                Hide external attributes Show external attributes object
                • trust_relationship_id string Required

                  The ID of the external trust relationship

                • name string

                  The name of the external trust relationship. Retrieved from the TrustRelationship and ignored on write.

                • trust_all boolean Required

                  If true, all clusters in this external entity will be trusted and the trust_allowlist is ignored.

                • trust_allowlist array[string]

                  The list of clusters to trust. Only used when trust_all is false.

              • direct array[object]

                The list of trust relationships where the certificate is bundled with the trust setting. Allows configuring trust for clusters running outside of an Elastic Cloud managed environment or in an Elastic Cloud environment without an environment level trust established.

                Hide direct attributes Show direct attributes object
                • uid string

                  Auto generated identifier for this trust, allows distinguishing between update vs remove and add.

                • name string Required

                  a human readable name of the trust relationship

                • type string

                  The type can either be ESS, ECE, generic or proxy. If none is specified, then generic is assumed. If proxy is specified, trust_all should be false and trust_allowlist, scope_id and additional_node_names should be omitted.

                  Values are ECE, ESS, generic, or proxy.

                • trust_all boolean Required

                  If true, scope_id is required and the trust_allowlist is ignored and all clusters matching the scope id will be trusted.

                • trust_allowlist array[string]

                  The list of clusters with matching scope to trust. Only used when trust_all is false. Providing one or more clusters makes scope_id mandatory.

                • scope_id string

                  A lowercase alphanumerical string of max 32 characters. Usually an organization id or an environment id, but could really be any suitable suffix for clusters using the CA certificate of this trust. Required unless trust_all is false and trust_allowlist is empty.

                • A list of node names trusted in addition to those deducible from trust_allowlist and scope id. Allows trusting nodes that don't have a scoped name at the cost of maintaining the list. Mandatory if scope id is not defined. Wildcards are not allowed.

                • certificates array[object] Required

                  The public ca certificate(s) to trust. Only one is required, but it is possible to specify multiple certificates in order to facilitate key rotation.

                  Hide certificates attributes Show certificates attributes object
                  • pem string Required

                    The public ca certificate as string in PEM format.

                  • metadata object

                    Metadata about the certificate, including fingerprint and expiry date. Generated by the Cloud service and ignored on write.

                    Additional properties are allowed.

                    Hide metadata attributes Show metadata attributes object
                    • fingerprint string Required

                      The fingerprint of the certificate

                    • valid_to string(date-time) Required

                      The expiry date of the certificate in UTC

                    • valid_from string(date-time) Required

                      The valid from date of the certificate in UTC

                    • also_trusted_by array[string]

                      Other deployments also trusting this certificate

            • The contents of the Elasticsearch keystore. It's a write only field.

              Additional properties are allowed.

              Hide keystore_contents attribute Show keystore_contents attribute object
              • secrets object Required

                List of secrets

                Hide secrets attribute Show secrets attribute object
                • * object Additional properties

                  The value that you configure for the Elasticsearch keystore secret.

                  Additional properties are allowed.

                  Hide * attributes Show * attributes object
                  • value object

                    Value of this setting. This can either be a string or a JSON object that is stored as a JSON string in the keystore. NOTE: When the keystore secret is unspecified, it is removed.

                    Additional properties are allowed.

                  • as_file boolean

                    Stores the keystore secret as a file. The default is false, which stores the keystore secret as string when value is a plain string, or true when value is an object.

        • kibana array[object]

          A list of payloads for Kibana creation.

          Hide kibana attributes Show kibana attributes object
          • ref_id string Required

            A locally-unique user-specified id for Kibana

          • Alias to the Elasticsearch Cluster to attach Kibana to

          • The human readable name for the Kibana cluster (default: takes the name of its Elasticsearch cluster)

          • region string Required

            The region where this resource exists

          • plan object Required

            The plan for the Kibana instance.

            Additional properties are allowed.

            Hide plan attributes Show plan attributes object
            • cluster_topology array[object]
              Hide cluster_topology attributes Show cluster_topology attributes object
              • memory_per_node integer(int32)

                The memory capacity in MB for each node of this type built in each zone.

              • node_count_per_zone integer(int32)

                The number of nodes of this type that are allocated within each zone (i.e. total capacity per zone = node_count_per_zone * memory_per_node in MB).

              • Controls the allocation of this topology element as well as allowed sizes and node_types. It needs to match the id of an existing instance configuration.

              • The version of the Instance Configuration Id. If it is unset, the meaning depends on read vs writes. For deployment reads, it is equivalent to version 0 (or the IC is unversioned); for deployment creates and deployment template use, it is equivalent to 'the latest version'; and for deployment updates, it is equivalent to 'retain the current version'.

              • size object

                Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                Additional properties are allowed.

                Hide size attributes Show size attributes object
                • value integer(int32) Required

                  Amount of resource

                • resource string Required

                  Type of resource

                  Values are memory or storage.

              • zone_count integer(int32)

                number of zones in which nodes will be placed

              • kibana object

                The Kibana instance settings. When specified at the top level, provides a field-by-field default. When specified at the topology level, provides the override settings.

                Additional properties are allowed.

                Hide kibana attributes Show kibana attributes object
                • version string

                  The version of the Kibana cluster (must be one of the ECE supported versions, and won't work unless it matches the Elasticsearch version. Leave blank to auto-detect version.)

                • A docker URI that allows overriding of the default docker image specified for this version

                • A subset of Kibana settings. TIP: To define the complete set of Elasticsearch settings, use KibanaSystemSettings with user_settings_override_ and user_settings_.

                  Additional properties are allowed.

                  Hide system_settings attributes Show system_settings attributes object
                  • DEPRECATED: Scheduled for removal in a future version of the API.

                    Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                  • Optionally override the account within Elasticsearch - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

                  • Optionally override the account within Elasticsearch - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

                • An arbitrary JSON object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters are on the allowlist and not on the denylist. (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Kibana settings)

                  Additional properties are allowed.

                • An arbitrary YAML object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters are on the allowlist and not on the denylist. (These field together with 'user_settings_override*' and 'system_settings' defines the total set of Kibana settings)

                • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Kibana settings)

                  Additional properties are allowed.

                • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Kibana settings)

            • kibana object Required

              The Kibana instance settings. When specified at the top level, provides a field-by-field default. When specified at the topology level, provides the override settings.

              Additional properties are allowed.

              Hide kibana attributes Show kibana attributes object
              • version string

                The version of the Kibana cluster (must be one of the ECE supported versions, and won't work unless it matches the Elasticsearch version. Leave blank to auto-detect version.)

              • A docker URI that allows overriding of the default docker image specified for this version

              • A subset of Kibana settings. TIP: To define the complete set of Elasticsearch settings, use KibanaSystemSettings with user_settings_override_ and user_settings_.

                Additional properties are allowed.

                Hide system_settings attributes Show system_settings attributes object
                • DEPRECATED: Scheduled for removal in a future version of the API.

                  Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                • Optionally override the account within Elasticsearch - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

                • Optionally override the account within Elasticsearch - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

              • An arbitrary JSON object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters are on the allowlist and not on the denylist. (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Kibana settings)

                Additional properties are allowed.

              • An arbitrary YAML object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters are on the allowlist and not on the denylist. (These field together with 'user_settings_override*' and 'system_settings' defines the total set of Kibana settings)

              • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Kibana settings)

                Additional properties are allowed.

              • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Kibana settings)

            • 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 transient attributes Show transient attributes object
              • strategy object

                The options for performing a plan change. Specify only one property each time. The default is grow_and_shrink.

                Additional properties are allowed.

                Hide strategy attributes Show strategy attributes object
                • rolling object

                  Performs inline, rolling configuration changes that mutate existing containers. TIP: This is the fastest way to update a plan, but can fail for complex plan changes, such as topology changes. Also, this is less safe for configuration changes that leave a cluster in a non running state. NOTE: When you perform a major version upgrade, and 'group_by' is set to 'pass:macros[all]';, rolling is required.

                  Additional properties are allowed.

                  Hide rolling attributes Show rolling attributes object
                  • group_by string

                    Specifies the grouping attribute to use when rolling several instances. Instances that share the same value for the provided attribute key are rolled together as a unit. Examples that make sense to use are '__all__' (roll all instances as a single unit), 'logical_zone_name' (roll instances by zone), '__name__' (roll one instance at a time, the default if not specified). Note that '__all__' is required when performing a major version upgrade

                  • Whether we allow changing the capacity of instances (default false). This is currently implemented by stopping, re-creating then starting the affected instance on its associated allocator when performing the changes. NOTES: This requires a round-trip through the allocation infrastructure of the active constructor, as it has to reserve the target capacity without over-committing

                  • Whether to skip attempting to do a synced flush on the filesystem of the container (default: false), which is less safe but may be required if the container is unhealthy

                  • shard_init_wait_time integer(int64)

                    The time, in seconds, to wait for shards that show no progress of initializing before rolling the next group (default: 10 minutes)

                • A strategy that creates instances with the new plan, migrates data from the old instances, then shuts down the old instances. GrowShrinkStrategyConfig is safer than 'rolling' and ensures single node availability during a plan change, but can be a lot slower on larger clusters.

                  Additional properties are allowed.

                • A strategy that creates new Elasticsearch instances, Kibana instances, and APM Servers with the new plan, then migrates the node data to minimize the amount of spare capacity.

                  Additional properties are allowed.

                • A strategy that lets constructor choose the most optimal way to execute the plan.

                  Additional properties are allowed.

              • The configuration settings for the timeout and fallback parameters.

                Additional properties are allowed.

                Hide plan_configuration attributes Show plan_configuration attributes object
                • timeout integer(int64)

                  The total timeout in seconds after which the plan is cancelled even if it is not complete. Defaults to 4x the max memory capacity per node (in MB)

                • 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.

          • settings object

            The settings for building this Kibana cluster

            Additional properties are allowed.

            Hide settings attribute Show settings attribute object
            • metadata object

              The top-level configuration settings for the Elasticsearch cluster.

              Additional properties are allowed.

              Hide metadata attributes Show metadata attributes object
              • name string

                The display name of the cluster

              • owner_id string

                The user id (referencing whatever user database is in use) of the cluster owner

              • The organization that owns the deployment

              • Subscription level of the cluster

              • Indicates if a cluster is system owned (restricts the set of operations that can be performed on it)

              • Contact email for the cluster

              • hidden boolean

                Whether or not this cluster is hidden from the normal clusters list

              • The top-level configuration settings for the Elasticsearch cluster resources.

                Additional properties are allowed.

                Hide resources attribute Show resources attribute object
                • cpu object

                  Specifies the CPU resource settings for the Elasticsearch cluster.

                  Additional properties are allowed.

                  Hide cpu attributes Show cpu attributes object
                  • boost boolean

                    Indicates if the CPU boost flag is enabled or not.

                  • hard_limit boolean

                    Indicates if the CPU hard limit flag is enabled or not. When set to true (default), allocates CPU timeshare based on the total CPU time multiplied by the relative RAM capacity of the instance on a given host. When set to false, delegates CPU allocation to the operating system to schedule CPU timeshares.

        • apm array[object]

          A list of payloads for APM creation. WARNING: For stack versions 8.0.0 and higher the integrations_server payload should be used instead, as this field becomes deprecated.

          Hide apm attributes Show apm attributes object
          • ref_id string Required

            A locally-unique user-specified id for APM

          • Alias to the Elasticsearch Cluster to attach APM to

          • The human readable name for the APM cluster (default: takes the name of its Elasticsearch cluster)

          • region string Required

            The region where this resource exists

          • plan object Required

            The plan for the APM Server.

            Additional properties are allowed.

            Hide plan attributes Show plan attributes object
            • cluster_topology array[object]
              Hide cluster_topology attributes Show cluster_topology attributes object
              • Controls the allocation of this topology element as well as allowed sizes and node_types. It needs to match the id of an existing instance configuration.

              • The version of the Instance Configuration Id. If it is unset, the meaning depends on read vs writes. For deployment reads, it is equivalent to version 0 (or the IC is unversioned); for deployment creates and deployment template use, it is equivalent to 'the latest version'; and for deployment updates, it is equivalent to 'retain the current version'.

              • size object

                Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                Additional properties are allowed.

                Hide size attributes Show size attributes object
                • value integer(int32) Required

                  Amount of resource

                • resource string Required

                  Type of resource

                  Values are memory or storage.

              • zone_count integer(int32)

                number of zones in which nodes will be placed

              • apm object

                The configuration options for the APM Server.

                Additional properties are allowed.

                Hide apm attributes Show apm attributes object
                • version string

                  The version of the Apm cluster (must be one of the ECE supported versions, and won't work unless it matches the APM version. Leave blank to auto-detect version.)

                • A docker URI that allows overriding of the default docker image specified for this version

                • A structure that defines a curated subset of the APM Server settings. TIP: To define the complete set of APM Server setting, use ApmSystemSettings with user_settings_override_ and user_settings_.

                  Additional properties are allowed.

                  Hide system_settings attributes Show system_settings attributes object
                  • DEPRECATED: Scheduled for removal in a future version of the API.

                    Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                  • DEPRECATED: Scheduled for removal in a future version of the API.

                    Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                  • Optionally override the account within APM - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

                  • Optionally override the account within APM - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

                  • Optionally override the secret token within APM - defaults to the previously existing secretToken

                  • Optionally enable debug mode for APM servers - defaults false

                • An arbitrary JSON object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters are on the allowlist and not on the denylist. (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Apm settings)

                  Additional properties are allowed.

                • An arbitrary YAML object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters are on the allowlist and not on the denylist. (These field together with 'user_settings_override*' and 'system_settings' defines the total set of Apm settings)

                • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Apm settings)

                  Additional properties are allowed.

                • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Apm settings)

            • apm object Required

              The configuration options for the APM Server.

              Additional properties are allowed.

              Hide apm attributes Show apm attributes object
              • version string

                The version of the Apm cluster (must be one of the ECE supported versions, and won't work unless it matches the APM version. Leave blank to auto-detect version.)

              • A docker URI that allows overriding of the default docker image specified for this version

              • A structure that defines a curated subset of the APM Server settings. TIP: To define the complete set of APM Server setting, use ApmSystemSettings with user_settings_override_ and user_settings_.

                Additional properties are allowed.

                Hide system_settings attributes Show system_settings attributes object
                • DEPRECATED: Scheduled for removal in a future version of the API.

                  Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                • DEPRECATED: Scheduled for removal in a future version of the API.

                  Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                • Optionally override the account within APM - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

                • Optionally override the account within APM - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

                • Optionally override the secret token within APM - defaults to the previously existing secretToken

                • Optionally enable debug mode for APM servers - defaults false

              • An arbitrary JSON object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters are on the allowlist and not on the denylist. (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Apm settings)

                Additional properties are allowed.

              • An arbitrary YAML object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters are on the allowlist and not on the denylist. (These field together with 'user_settings_override*' and 'system_settings' defines the total set of Apm settings)

              • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Apm settings)

                Additional properties are allowed.

              • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Apm settings)

            • 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 transient attributes Show transient attributes object
              • strategy object

                The options for performing a plan change. Specify only one property each time. The default is grow_and_shrink.

                Additional properties are allowed.

                Hide strategy attributes Show strategy attributes object
                • rolling object

                  Performs inline, rolling configuration changes that mutate existing containers. TIP: This is the fastest way to update a plan, but can fail for complex plan changes, such as topology changes. Also, this is less safe for configuration changes that leave a cluster in a non running state. NOTE: When you perform a major version upgrade, and 'group_by' is set to 'pass:macros[all]';, rolling is required.

                  Additional properties are allowed.

                  Hide rolling attributes Show rolling attributes object
                  • group_by string

                    Specifies the grouping attribute to use when rolling several instances. Instances that share the same value for the provided attribute key are rolled together as a unit. Examples that make sense to use are '__all__' (roll all instances as a single unit), 'logical_zone_name' (roll instances by zone), '__name__' (roll one instance at a time, the default if not specified). Note that '__all__' is required when performing a major version upgrade

                  • Whether we allow changing the capacity of instances (default false). This is currently implemented by stopping, re-creating then starting the affected instance on its associated allocator when performing the changes. NOTES: This requires a round-trip through the allocation infrastructure of the active constructor, as it has to reserve the target capacity without over-committing

                  • Whether to skip attempting to do a synced flush on the filesystem of the container (default: false), which is less safe but may be required if the container is unhealthy

                  • shard_init_wait_time integer(int64)

                    The time, in seconds, to wait for shards that show no progress of initializing before rolling the next group (default: 10 minutes)

                • A strategy that creates instances with the new plan, migrates data from the old instances, then shuts down the old instances. GrowShrinkStrategyConfig is safer than 'rolling' and ensures single node availability during a plan change, but can be a lot slower on larger clusters.

                  Additional properties are allowed.

                • A strategy that creates new Elasticsearch instances, Kibana instances, and APM Servers with the new plan, then migrates the node data to minimize the amount of spare capacity.

                  Additional properties are allowed.

                • A strategy that lets constructor choose the most optimal way to execute the plan.

                  Additional properties are allowed.

              • The 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.

          • settings object

            The settings for building this APM cluster

            Additional properties are allowed.

            Hide settings attribute Show settings attribute object
            • metadata object

              The top-level configuration settings for the Elasticsearch cluster.

              Additional properties are allowed.

              Hide metadata attributes Show metadata attributes object
              • name string

                The display name of the cluster

              • owner_id string

                The user id (referencing whatever user database is in use) of the cluster owner

              • The organization that owns the deployment

              • Subscription level of the cluster

              • Indicates if a cluster is system owned (restricts the set of operations that can be performed on it)

              • Contact email for the cluster

              • hidden boolean

                Whether or not this cluster is hidden from the normal clusters list

              • The top-level configuration settings for the Elasticsearch cluster resources.

                Additional properties are allowed.

                Hide resources attribute Show resources attribute object
                • cpu object

                  Specifies the CPU resource settings for the Elasticsearch cluster.

                  Additional properties are allowed.

                  Hide cpu attributes Show cpu attributes object
                  • boost boolean

                    Indicates if the CPU boost flag is enabled or not.

                  • hard_limit boolean

                    Indicates if the CPU hard limit flag is enabled or not. When set to true (default), allocates CPU timeshare based on the total CPU time multiplied by the relative RAM capacity of the instance on a given host. When set to false, delegates CPU allocation to the operating system to schedule CPU timeshares.

        • appsearch array[object]

          A list of payloads for AppSearch updates. AppSearch has been replaced by Enterprise Search in the Elastic Stack 7.7 and higher.

          Hide appsearch attributes Show appsearch attributes object
          • ref_id string Required

            A locally-unique user-specified id for AppSearch

          • Alias to the Elasticsearch Cluster to attach AppSearch to

          • The human readable name for the AppSearch cluster (default: takes the name of its Elasticsearch cluster)

          • region string Required

            The region where this resource exists

          • plan object Required

            The plan for the App Search cluster.

            Additional properties are allowed.

            Hide plan attributes Show plan attributes object
            • cluster_topology array[object]
              Hide cluster_topology attributes Show cluster_topology attributes object
              • Defines the AppSearch node type

                Additional properties are allowed.

                Hide node_type attributes Show node_type attributes object
                • appserver boolean Required

                  Defines whether this instance should run as Application/API server

                • worker boolean Required

                  Defines whether this instance should run as background worker

              • Controls the allocation of this topology element as well as allowed sizes and node_types. It needs to match the id of an existing instance configuration.

              • The version of the Instance Configuration Id. If it is unset, the meaning depends on read vs writes. For deployment reads, it is equivalent to version 0 (or the IC is unversioned); for deployment creates and deployment template use, it is equivalent to 'the latest version'; and for deployment updates, it is equivalent to 'retain the current version'.

              • size object

                Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                Additional properties are allowed.

                Hide size attributes Show size attributes object
                • value integer(int32) Required

                  Amount of resource

                • resource string Required

                  Type of resource

                  Values are memory or storage.

              • zone_count integer(int32)

                number of zones in which nodes will be placed

              • Additional properties are allowed.

                Hide appsearch attributes Show appsearch attributes object
                • version string

                  The version of the AppSearch cluster (must be one of the ECE supported versions, and won't work unless it matches the Elasticsearch version. Leave blank to auto-detect version.)

                • A docker URI that allows overriding of the default docker image specified for this version

                • This structure defines a curated subset of the AppSearch settings. (This field together with 'user_settings_override*' and 'user_settings*' defines the total set of AppSearch settings)

                  Additional properties are allowed.

                  Hide system_settings attributes Show system_settings attributes object
                  • Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                  • Optionally override the account within App Search - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

                  • Optionally override the account within App Search - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

                  • Optionally override the secret session key within App Search - defaults to the previously existing secretSession. Note that this field is never returned from the API, it is write only.

                • An arbitrary JSON object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters are on the allowlist and not on the denylist. (This field together with 'user_settings_override*' and 'system_settings' defines the total set of AppSearch settings)

                  Additional properties are allowed.

                • An arbitrary YAML object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters are on the allowlist and not on the denylist. (These field together with 'user_settings_override*' and 'system_settings' defines the total set of AppSearch settings)

                • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of AppSearch settings)

                  Additional properties are allowed.

                • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of AppSearch settings)

            • appsearch object Required

              Additional properties are allowed.

              Hide appsearch attributes Show appsearch attributes object
              • version string

                The version of the AppSearch cluster (must be one of the ECE supported versions, and won't work unless it matches the Elasticsearch version. Leave blank to auto-detect version.)

              • A docker URI that allows overriding of the default docker image specified for this version

              • This structure defines a curated subset of the AppSearch settings. (This field together with 'user_settings_override*' and 'user_settings*' defines the total set of AppSearch settings)

                Additional properties are allowed.

                Hide system_settings attributes Show system_settings attributes object
                • Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                • Optionally override the account within App Search - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

                • Optionally override the account within App Search - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

                • Optionally override the secret session key within App Search - defaults to the previously existing secretSession. Note that this field is never returned from the API, it is write only.

              • An arbitrary JSON object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters are on the allowlist and not on the denylist. (This field together with 'user_settings_override*' and 'system_settings' defines the total set of AppSearch settings)

                Additional properties are allowed.

              • An arbitrary YAML object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters are on the allowlist and not on the denylist. (These field together with 'user_settings_override*' and 'system_settings' defines the total set of AppSearch settings)

              • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of AppSearch settings)

                Additional properties are allowed.

              • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of AppSearch settings)

            • Defines configuration parameters that control how the plan (ie consisting of the cluster topology and AppSearch settings) is applied

              Additional properties are allowed.

              Hide transient attributes Show transient attributes object
              • strategy object

                The options for performing a plan change. Specify only one property each time. The default is grow_and_shrink.

                Additional properties are allowed.

                Hide strategy attributes Show strategy attributes object
                • rolling object

                  Performs inline, rolling configuration changes that mutate existing containers. TIP: This is the fastest way to update a plan, but can fail for complex plan changes, such as topology changes. Also, this is less safe for configuration changes that leave a cluster in a non running state. NOTE: When you perform a major version upgrade, and 'group_by' is set to 'pass:macros[all]';, rolling is required.

                  Additional properties are allowed.

                  Hide rolling attributes Show rolling attributes object
                  • group_by string

                    Specifies the grouping attribute to use when rolling several instances. Instances that share the same value for the provided attribute key are rolled together as a unit. Examples that make sense to use are '__all__' (roll all instances as a single unit), 'logical_zone_name' (roll instances by zone), '__name__' (roll one instance at a time, the default if not specified). Note that '__all__' is required when performing a major version upgrade

                  • Whether we allow changing the capacity of instances (default false). This is currently implemented by stopping, re-creating then starting the affected instance on its associated allocator when performing the changes. NOTES: This requires a round-trip through the allocation infrastructure of the active constructor, as it has to reserve the target capacity without over-committing

                  • Whether to skip attempting to do a synced flush on the filesystem of the container (default: false), which is less safe but may be required if the container is unhealthy

                  • shard_init_wait_time integer(int64)

                    The time, in seconds, to wait for shards that show no progress of initializing before rolling the next group (default: 10 minutes)

                • A strategy that creates instances with the new plan, migrates data from the old instances, then shuts down the old instances. GrowShrinkStrategyConfig is safer than 'rolling' and ensures single node availability during a plan change, but can be a lot slower on larger clusters.

                  Additional properties are allowed.

                • A strategy that creates new Elasticsearch instances, Kibana instances, and APM Servers with the new plan, then migrates the node data to minimize the amount of spare capacity.

                  Additional properties are allowed.

                • A strategy that lets constructor choose the most optimal way to execute the plan.

                  Additional properties are allowed.

              • 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.

          • settings object

            The settings for building this AppSearch cluster

            Additional properties are allowed.

            Hide settings attribute Show settings attribute object
            • metadata object

              The top-level configuration settings for the Elasticsearch cluster.

              Additional properties are allowed.

              Hide metadata attributes Show metadata attributes object
              • name string

                The display name of the cluster

              • owner_id string

                The user id (referencing whatever user database is in use) of the cluster owner

              • The organization that owns the deployment

              • Subscription level of the cluster

              • Indicates if a cluster is system owned (restricts the set of operations that can be performed on it)

              • Contact email for the cluster

              • hidden boolean

                Whether or not this cluster is hidden from the normal clusters list

              • The top-level configuration settings for the Elasticsearch cluster resources.

                Additional properties are allowed.

                Hide resources attribute Show resources attribute object
                • cpu object

                  Specifies the CPU resource settings for the Elasticsearch cluster.

                  Additional properties are allowed.

                  Hide cpu attributes Show cpu attributes object
                  • boost boolean

                    Indicates if the CPU boost flag is enabled or not.

                  • hard_limit boolean

                    Indicates if the CPU hard limit flag is enabled or not. When set to true (default), allocates CPU timeshare based on the total CPU time multiplied by the relative RAM capacity of the instance on a given host. When set to false, delegates CPU allocation to the operating system to schedule CPU timeshares.

        • integrations_server array[object]

          A list of payloads for Integrations Server creation.

          Hide integrations_server attributes Show integrations_server attributes object
          • ref_id string Required

            A locally-unique user-specified id for the Integrations Server

          • Alias to the Elasticsearch Cluster to attach the Integrations Server to

          • The human readable name for the Integrations Server cluster (default: takes the name of its Elasticsearch cluster)

          • region string Required

            The region where this resource exists

          • plan object Required

            The plan for the Integrations Server.

            Additional properties are allowed.

            Hide plan attributes Show plan attributes object
            • cluster_topology array[object]
              Hide cluster_topology attributes Show cluster_topology attributes object
              • Controls the allocation of this topology element as well as allowed sizes and node_types. It needs to match the id of an existing instance configuration.

              • The version of the Instance Configuration Id. If it is unset, the meaning depends on read vs writes. For deployment reads, it is equivalent to version 0 (or the IC is unversioned); for deployment creates and deployment template use, it is equivalent to 'the latest version'; and for deployment updates, it is equivalent to 'retain the current version'.

              • size object

                Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                Additional properties are allowed.

                Hide size attributes Show size attributes object
                • value integer(int32) Required

                  Amount of resource

                • resource string Required

                  Type of resource

                  Values are memory or storage.

              • zone_count integer(int32)

                number of zones in which nodes will be placed

              • The configuration options for the Integrations Server.

                Additional properties are allowed.

                Hide integrations_server attributes Show integrations_server attributes object
                • version string

                  The version of the Integrations Server cluster (must be one of the ECE supported versions, and won't work unless it matches the Integrations Server version. Leave blank to auto-detect version.)

                • A docker URI that allows overriding of the default docker image specified for this version

                • A structure that defines a curated subset of the Integrations Server settings. TIP: To define the complete set of Integrations Server setting, use IntegrationsSystemSettings with user_settings_override_ and user_settings_.

                  Additional properties are allowed.

                  Hide system_settings attributes Show system_settings attributes object
                  • DEPRECATED: Scheduled for removal in a future version of the API.

                    Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                  • DEPRECATED: Scheduled for removal in a future version of the API.

                    Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                  • Optionally override the account within Integrations Server - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

                  • Optionally override the account within Integrations Server - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

                  • Optionally override the secret token within Integrations Server - defaults to the previously existing secretToken

                  • Optionally enable debug mode for Integrations Server - defaults false

                • An arbitrary JSON object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters are on the allowlist and not on the denylist. (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Integrations Server settings)

                  Additional properties are allowed.

                • An arbitrary YAML object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters are on the allowlist and not on the denylist. (These field together with 'user_settings_override*' and 'system_settings' defines the total set of Integrations Server settings)

                • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Integrations Server settings)

                  Additional properties are allowed.

                • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Integrations Server settings)

                • mode string

                  The mode the Integrations Server is operating in.

                  Values are standalone or managed.

            • integrations_server object Required

              The configuration options for the Integrations Server.

              Additional properties are allowed.

              Hide integrations_server attributes Show integrations_server attributes object
              • version string

                The version of the Integrations Server cluster (must be one of the ECE supported versions, and won't work unless it matches the Integrations Server version. Leave blank to auto-detect version.)

              • A docker URI that allows overriding of the default docker image specified for this version

              • A structure that defines a curated subset of the Integrations Server settings. TIP: To define the complete set of Integrations Server setting, use IntegrationsSystemSettings with user_settings_override_ and user_settings_.

                Additional properties are allowed.

                Hide system_settings attributes Show system_settings attributes object
                • DEPRECATED: Scheduled for removal in a future version of the API.

                  Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                • DEPRECATED: Scheduled for removal in a future version of the API.

                  Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                • Optionally override the account within Integrations Server - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

                • Optionally override the account within Integrations Server - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

                • Optionally override the secret token within Integrations Server - defaults to the previously existing secretToken

                • Optionally enable debug mode for Integrations Server - defaults false

              • An arbitrary JSON object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters are on the allowlist and not on the denylist. (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Integrations Server settings)

                Additional properties are allowed.

              • An arbitrary YAML object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters are on the allowlist and not on the denylist. (These field together with 'user_settings_override*' and 'system_settings' defines the total set of Integrations Server settings)

              • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Integrations Server settings)

                Additional properties are allowed.

              • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Integrations Server settings)

              • mode string

                The mode the Integrations Server is operating in.

                Values are standalone or managed.

            • Defines the configuration parameters that control how the plan is applied. For example, the Elasticsearch cluster topology and Integrations Server settings.

              Additional properties are allowed.

              Hide transient attributes Show transient attributes object
              • strategy object

                The options for performing a plan change. Specify only one property each time. The default is grow_and_shrink.

                Additional properties are allowed.

                Hide strategy attributes Show strategy attributes object
                • rolling object

                  Performs inline, rolling configuration changes that mutate existing containers. TIP: This is the fastest way to update a plan, but can fail for complex plan changes, such as topology changes. Also, this is less safe for configuration changes that leave a cluster in a non running state. NOTE: When you perform a major version upgrade, and 'group_by' is set to 'pass:macros[all]';, rolling is required.

                  Additional properties are allowed.

                  Hide rolling attributes Show rolling attributes object
                  • group_by string

                    Specifies the grouping attribute to use when rolling several instances. Instances that share the same value for the provided attribute key are rolled together as a unit. Examples that make sense to use are '__all__' (roll all instances as a single unit), 'logical_zone_name' (roll instances by zone), '__name__' (roll one instance at a time, the default if not specified). Note that '__all__' is required when performing a major version upgrade

                  • Whether we allow changing the capacity of instances (default false). This is currently implemented by stopping, re-creating then starting the affected instance on its associated allocator when performing the changes. NOTES: This requires a round-trip through the allocation infrastructure of the active constructor, as it has to reserve the target capacity without over-committing

                  • Whether to skip attempting to do a synced flush on the filesystem of the container (default: false), which is less safe but may be required if the container is unhealthy

                  • shard_init_wait_time integer(int64)

                    The time, in seconds, to wait for shards that show no progress of initializing before rolling the next group (default: 10 minutes)

                • A strategy that creates instances with the new plan, migrates data from the old instances, then shuts down the old instances. GrowShrinkStrategyConfig is safer than 'rolling' and ensures single node availability during a plan change, but can be a lot slower on larger clusters.

                  Additional properties are allowed.

                • A strategy that creates new Elasticsearch instances, Kibana instances, and APM Servers with the new plan, then migrates the node data to minimize the amount of spare capacity.

                  Additional properties are allowed.

                • A strategy that lets constructor choose the most optimal way to execute the plan.

                  Additional properties are allowed.

              • The plan control configuration options for the Integrations 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.

          • settings object

            The settings for building this Integrations Server cluster

            Additional properties are allowed.

            Hide settings attribute Show settings attribute object
            • metadata object

              The top-level configuration settings for the Elasticsearch cluster.

              Additional properties are allowed.

              Hide metadata attributes Show metadata attributes object
              • name string

                The display name of the cluster

              • owner_id string

                The user id (referencing whatever user database is in use) of the cluster owner

              • The organization that owns the deployment

              • Subscription level of the cluster

              • Indicates if a cluster is system owned (restricts the set of operations that can be performed on it)

              • Contact email for the cluster

              • hidden boolean

                Whether or not this cluster is hidden from the normal clusters list

              • The top-level configuration settings for the Elasticsearch cluster resources.

                Additional properties are allowed.

                Hide resources attribute Show resources attribute object
                • cpu object

                  Specifies the CPU resource settings for the Elasticsearch cluster.

                  Additional properties are allowed.

                  Hide cpu attributes Show cpu attributes object
                  • boost boolean

                    Indicates if the CPU boost flag is enabled or not.

                  • hard_limit boolean

                    Indicates if the CPU hard limit flag is enabled or not. When set to true (default), allocates CPU timeshare based on the total CPU time multiplied by the relative RAM capacity of the instance on a given host. When set to false, delegates CPU allocation to the operating system to schedule CPU timeshares.

      • settings object

        Additional configuration for this Deployment

        Additional properties are allowed.

        Hide settings attributes Show settings attributes object
        • The rulesets to apply to all resources in this cluster. When specified, the set of rulesets is updated and the same rulesets will be applied to Kibana and APM clusters as well. If not specified, the rulesets remain as they were set previously.

          Additional properties are allowed.

          Hide traffic_filter_settings attribute Show traffic_filter_settings attribute object
          • rulesets array[string] Required

            IDs of the traffic filter rulesets

        • Observability settings for this deployment

          Additional properties are allowed.

          Hide observability attributes Show observability attributes object
          • logging object

            The logging settings for the deployment

            Additional properties are allowed.

            Hide logging attribute Show logging attribute object
            • destination object Required

              The destination deployment that this deployment's logs will be sent to

              Additional properties are allowed.

              Hide destination attributes Show destination attributes object
              • deployment_id string Required

                The deployment to send logs and/or metrics to. Contains either the deployment's ID or 'self'.

              • ref_id string

                RefId of the Elasticsearch cluster to send logs and/or metrics to. If not specified, refId is resolved automatically as long as the destination deployment contains a single Elasticsearch resource.

          • metrics object

            The metrics settings for the deployment

            Additional properties are allowed.

            Hide metrics attributes Show metrics attributes object
            • destination object Required

              The destination deployment that this deployment's logs will be sent to

              Additional properties are allowed.

              Hide destination attributes Show destination attributes object
              • deployment_id string Required

                The deployment to send logs and/or metrics to. Contains either the deployment's ID or 'self'.

              • ref_id string

                RefId of the Elasticsearch cluster to send logs and/or metrics to. If not specified, refId is resolved automatically as long as the destination deployment contains a single Elasticsearch resource.

            • Set to true to force the deployment to use legacy monitoring instead of Metricbeat-based monitoring.

        • Enable autoscaling for this deployment.

      • metadata object

        Additional information about this deployment

        Additional properties are allowed.

        Hide metadata attributes Show metadata attributes object
        • Indicates if a deployment is system owned (restricts the set of operations that can be performed on it)

        • tags array[object]

          Arbitrary user-defined metadata associated with this deployment

          Hide tags attributes Show tags attributes object
          • key string Required

            The metadata field name

          • value string Required

            The metadata value

      • alias string

        A user-defined alias to use in place of Cluster IDs for user-friendly URLs

      • region string

        Identifier of the region to be used as the default for all the resources of the deployment

      • version string

        The version for all the resources of the deployment (must be one of the supported versions). Defaults to the latest version if not specified.

    • Whether or not if this is system owned template.

    • source object

      Information describing the source that facilitated the plans current state

      Additional properties are allowed.

      Hide source attributes Show source attributes object
      • facilitator string Required

        The service where the change originated from

      • action string Required

        The type of plan change that was initiated

      • date string(date-time) Required

        The time the change was initiated

      • user_id string

        The user that requested the change

      • admin_id string

        The admin user that requested the change

      • remote_addresses array[string]

        The host addresses of the user that originated the change

    • metadata array[object]

      Optional arbitrary metadata to associate with this template.

      Hide metadata attributes Show metadata attributes object
      • key string Required

        The metadata field name

      • value string Required

        The metadata value

    • instance_configurations array[object] Required

      List of instance configurations used in the cluster template.

      Hide instance_configurations attributes Show instance_configurations attributes object
      • id string

        Unique identifier for the instance configuration

      • name string Required

        Display name for the instance configuration.

      • config_version integer(int32)

        If the IC is configuration controlled, this field is the version either being read back (reads return the latest IC unless specified by the 'config_version' URL param), or the version to update. Cannot be used in creates. For unversioned IC reads it is left empty.

      • Optional description for the instance configuration

      • The type of instance. For instance configurations where the type is specified in the 'id', the default value of 'instance_type' will be automatically inferred.

        Values are elasticsearch, kibana, apm, integrations_server, appsearch, or enterprise_search.

      • node_types array[string]

        Node types (master, data) for the instance. For instance configurations where the type (and tier) is specified in the 'id', the default value of 'node_types' will be automatically inferred.

      • discrete_sizes object Required

        Numerics representing possible instance sizes that the instance configuration supports.

        Additional properties are allowed.

        Hide discrete_sizes attributes Show discrete_sizes attributes object
        • sizes array[integer(int32)] Required

          List of supported sizes

        • default_size integer(int32)

          The default size

        • resource string

          The unit that each size represents. If not specified, it will default to 'memory'.

          Values are memory or storage.

      • storage_multiplier number(double)

        Settings for the instance storage multiplier

      • cpu_multiplier number(double)

        Settings for the instance CPU multiplier

      • metadata object

        Optional arbitrary metadata to associate with this template.

        Additional properties are allowed.

      • max_zones integer(int32)

        The maximum number of availability zones in which this instance configuration has allocators. This field will be missing unless explicitly requested with the show_max_zones parameter.

    • order integer(int32)

      Determines the order in which this template should be returned when listed. Templates are returned in ascending order. If not specified, then the template willbe appended to the end of the list.

    • hidden boolean

      Whether or not the deployment template is hidden by default.

    • Minimum stack version required by this template, if any.

    • Provider and version agnostic template identifier used for grouping related template types.

  • The requested region was not found. (code: templates.region_not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is templates.region_not_found.

    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 user is not authorized to access requested region. (code: templates.region_not_allowed)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is templates.region_not_allowed.

    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

GET /deployments/templates
curl \
 -X GET https://{{hostname}}/api/v1/deployments/templates?region=string
Response examples (200)
[
  {
    "id": "string",
    "name": "string",
    "description": "string",
    "deployment_template": {
      "name": "string",
      "resources": {
        "elasticsearch": [
          {
            "ref_id": "string",
            "display_name": "string",
            "region": "string",
            "plan": {
              "cluster_topology": [
                {
                  "id": "string",
                  "node_type": {
                    "master": true,
                    "data": true,
                    "ingest": true,
                    "ml": true
                  },
                  "node_roles": [
                    "master"
                  ],
                  "memory_per_node": 42,
                  "node_count_per_zone": 42,
                  "zone_count": 42,
                  "elasticsearch": {
                    "version": "string",
                    "docker_image": "string",
                    "system_settings": {
                      "scripting": {
                        "painless_enabled": true,
                        "mustache_enabled": true,
                        "expressions_enabled": true,
                        "stored": {
                          "enabled": true,
                          "sandbox_mode": true
                        },
                        "file": {
                          "enabled": true,
                          "sandbox_mode": true
                        },
                        "inline": {
                          "enabled": true,
                          "sandbox_mode": true
                        }
                      },
                      "reindex_whitelist": [
                        "string"
                      ],
                      "auto_create_index": true,
                      "enable_close_index": true,
                      "destructive_requires_name": true,
                      "watcher_trigger_engine": "string",
                      "default_shards_per_index": 42,
                      "monitoring_collection_interval": 42,
                      "monitoring_history_duration": "string"
                    },
                    "user_settings_json": {},
                    "user_settings_yaml": "string",
                    "user_settings_override_json": {},
                    "user_settings_override_yaml": "string",
                    "enabled_built_in_plugins": [
                      "string"
                    ],
                    "user_plugins": [
                      {
                        "name": "string",
                        "url": "string",
                        "elasticsearch_version": "string"
                      }
                    ],
                    "user_bundles": [
                      {
                        "name": "string",
                        "url": "string",
                        "elasticsearch_version": "string"
                      }
                    ],
                    "curation": {
                      "from_instance_configuration_id": "string",
                      "to_instance_configuration_id": "string"
                    },
                    "node_attributes": {
                      "additionalProperty1": "string",
                      "additionalProperty2": "string"
                    }
                  },
                  "instance_configuration_id": "string",
                  "instance_configuration_version": 42,
                  "size": {
                    "value": 42,
                    "resource": "memory"
                  },
                  "autoscaling_min": {
                    "value": 42,
                    "resource": "memory"
                  },
                  "autoscaling_max": {
                    "value": 42,
                    "resource": "memory"
                  },
                  "autoscaling_policy_override_json": {},
                  "topology_element_control": {
                    "min": {
                      "value": 42,
                      "resource": "memory"
                    }
                  },
                  "autoscaling_tier_override": true
                }
              ],
              "elasticsearch": {
                "version": "string",
                "docker_image": "string",
                "system_settings": {
                  "scripting": {
                    "painless_enabled": true,
                    "mustache_enabled": true,
                    "expressions_enabled": true,
                    "stored": {
                      "enabled": true,
                      "sandbox_mode": true
                    },
                    "file": {
                      "enabled": true,
                      "sandbox_mode": true
                    },
                    "inline": {
                      "enabled": true,
                      "sandbox_mode": true
                    }
                  },
                  "reindex_whitelist": [
                    "string"
                  ],
                  "auto_create_index": true,
                  "enable_close_index": true,
                  "destructive_requires_name": true,
                  "watcher_trigger_engine": "string",
                  "default_shards_per_index": 42,
                  "monitoring_collection_interval": 42,
                  "monitoring_history_duration": "string"
                },
                "user_settings_json": {},
                "user_settings_yaml": "string",
                "user_settings_override_json": {},
                "user_settings_override_yaml": "string",
                "enabled_built_in_plugins": [
                  "string"
                ],
                "user_plugins": [
                  {
                    "name": "string",
                    "url": "string",
                    "elasticsearch_version": "string"
                  }
                ],
                "user_bundles": [
                  {
                    "name": "string",
                    "url": "string",
                    "elasticsearch_version": "string"
                  }
                ],
                "curation": {
                  "from_instance_configuration_id": "string",
                  "to_instance_configuration_id": "string"
                },
                "node_attributes": {
                  "additionalProperty1": "string",
                  "additionalProperty2": "string"
                }
              },
              "deployment_template": {
                "id": "string",
                "version": "string"
              },
              "transient": {
                "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": {}
              },
              "autoscaling_enabled": true
            },
            "settings": {
              "snapshot": {
                "repository": {
                  "static": {
                    "repository_type": "string",
                    "settings": {}
                  },
                  "reference": {
                    "repository_name": "string"
                  },
                  "default": {}
                },
                "interval": "string",
                "pending_interval": "string",
                "wait_time_after_snapshotting": "string",
                "enabled": true,
                "suspended": [
                  "string"
                ],
                "retention": {
                  "snapshots": 42,
                  "max_age": "string"
                },
                "slm": true,
                "cron_expression": "string"
              },
              "monitoring": {
                "target_cluster_id": "string"
              },
              "metadata": {
                "name": "string",
                "owner_id": "string",
                "organization_id": "string",
                "subscription_level": "string",
                "system_owned": true,
                "contact_email": "string",
                "hidden": true,
                "resources": {
                  "cpu": {
                    "boost": true,
                    "hard_limit": true
                  }
                }
              },
              "curation": {
                "specs": [
                  {
                    "index_pattern": "string",
                    "trigger_interval_seconds": 42
                  }
                ]
              },
              "dedicated_masters_threshold": 42,
              "traffic_filter": {
                "rulesets": [
                  "string"
                ]
              },
              "trust": {
                "accounts": [
                  {
                    "account_id": "string",
                    "name": "string",
                    "trust_all": true,
                    "trust_allowlist": [
                      "string"
                    ]
                  }
                ],
                "external": [
                  {
                    "trust_relationship_id": "string",
                    "name": "string",
                    "trust_all": true,
                    "trust_allowlist": [
                      "string"
                    ]
                  }
                ],
                "direct": [
                  {
                    "uid": "string",
                    "name": "string",
                    "type": "ECE",
                    "trust_all": true,
                    "trust_allowlist": [
                      "string"
                    ],
                    "scope_id": "abc123",
                    "additional_node_names": [
                      "string"
                    ],
                    "certificates": [
                      {
                        "pem": "string",
                        "metadata": {
                          "fingerprint": "string",
                          "valid_to": "2025-05-04T09:42:00+00:00",
                          "valid_from": "2025-05-04T09:42:00+00:00",
                          "also_trusted_by": [
                            "string"
                          ]
                        }
                      }
                    ]
                  }
                ]
              },
              "keystore_contents": {
                "secrets": {
                  "additionalProperty1": {
                    "value": {},
                    "as_file": true
                  },
                  "additionalProperty2": {
                    "value": {},
                    "as_file": true
                  }
                }
              }
            }
          }
        ],
        "kibana": [
          {
            "ref_id": "string",
            "elasticsearch_cluster_ref_id": "string",
            "display_name": "string",
            "region": "string",
            "plan": {
              "cluster_topology": [
                {
                  "memory_per_node": 42,
                  "node_count_per_zone": 42,
                  "instance_configuration_id": "string",
                  "instance_configuration_version": 42,
                  "size": {
                    "value": 42,
                    "resource": "memory"
                  },
                  "zone_count": 42,
                  "kibana": {
                    "version": "string",
                    "docker_image": "string",
                    "system_settings": {
                      "elasticsearch_url": "string",
                      "elasticsearch_username": "string",
                      "elasticsearch_password": "string"
                    },
                    "user_settings_json": {},
                    "user_settings_yaml": "string",
                    "user_settings_override_json": {},
                    "user_settings_override_yaml": "string"
                  }
                }
              ],
              "kibana": {
                "version": "string",
                "docker_image": "string",
                "system_settings": {
                  "elasticsearch_url": "string",
                  "elasticsearch_username": "string",
                  "elasticsearch_password": "string"
                },
                "user_settings_json": {},
                "user_settings_yaml": "string",
                "user_settings_override_json": {},
                "user_settings_override_yaml": "string"
              },
              "transient": {
                "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
                }
              }
            },
            "settings": {
              "metadata": {
                "name": "string",
                "owner_id": "string",
                "organization_id": "string",
                "subscription_level": "string",
                "system_owned": true,
                "contact_email": "string",
                "hidden": true,
                "resources": {
                  "cpu": {
                    "boost": true,
                    "hard_limit": true
                  }
                }
              }
            }
          }
        ],
        "apm": [
          {
            "ref_id": "string",
            "elasticsearch_cluster_ref_id": "string",
            "display_name": "string",
            "region": "string",
            "plan": {
              "cluster_topology": [
                {
                  "instance_configuration_id": "string",
                  "instance_configuration_version": 42,
                  "size": {
                    "value": 42,
                    "resource": "memory"
                  },
                  "zone_count": 42,
                  "apm": {
                    "version": "string",
                    "docker_image": "string",
                    "system_settings": {
                      "elasticsearch_url": "string",
                      "kibana_url": "string",
                      "elasticsearch_username": "string",
                      "elasticsearch_password": "string",
                      "secret_token": "string",
                      "debug_enabled": true
                    },
                    "user_settings_json": {},
                    "user_settings_yaml": "string",
                    "user_settings_override_json": {},
                    "user_settings_override_yaml": "string"
                  }
                }
              ],
              "apm": {
                "version": "string",
                "docker_image": "string",
                "system_settings": {
                  "elasticsearch_url": "string",
                  "kibana_url": "string",
                  "elasticsearch_username": "string",
                  "elasticsearch_password": "string",
                  "secret_token": "string",
                  "debug_enabled": true
                },
                "user_settings_json": {},
                "user_settings_yaml": "string",
                "user_settings_override_json": {},
                "user_settings_override_yaml": "string"
              },
              "transient": {
                "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
                }
              }
            },
            "settings": {
              "metadata": {
                "name": "string",
                "owner_id": "string",
                "organization_id": "string",
                "subscription_level": "string",
                "system_owned": true,
                "contact_email": "string",
                "hidden": true,
                "resources": {
                  "cpu": {
                    "boost": true,
                    "hard_limit": true
                  }
                }
              }
            }
          }
        ],
        "appsearch": [
          {
            "ref_id": "string",
            "elasticsearch_cluster_ref_id": "string",
            "display_name": "string",
            "region": "string",
            "plan": {
              "cluster_topology": [
                {
                  "node_type": {
                    "appserver": true,
                    "worker": true
                  },
                  "instance_configuration_id": "string",
                  "instance_configuration_version": 42,
                  "size": {
                    "value": 42,
                    "resource": "memory"
                  },
                  "zone_count": 42,
                  "appsearch": {
                    "version": "string",
                    "docker_image": "string",
                    "system_settings": {
                      "elasticsearch_url": "string",
                      "elasticsearch_username": "string",
                      "elasticsearch_password": "string",
                      "secret_session_key": "string"
                    },
                    "user_settings_json": {},
                    "user_settings_yaml": "string",
                    "user_settings_override_json": {},
                    "user_settings_override_yaml": "string"
                  }
                }
              ],
              "appsearch": {
                "version": "string",
                "docker_image": "string",
                "system_settings": {
                  "elasticsearch_url": "string",
                  "elasticsearch_username": "string",
                  "elasticsearch_password": "string",
                  "secret_session_key": "string"
                },
                "user_settings_json": {},
                "user_settings_yaml": "string",
                "user_settings_override_json": {},
                "user_settings_override_yaml": "string"
              },
              "transient": {
                "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
                }
              }
            },
            "settings": {
              "metadata": {
                "name": "string",
                "owner_id": "string",
                "organization_id": "string",
                "subscription_level": "string",
                "system_owned": true,
                "contact_email": "string",
                "hidden": true,
                "resources": {
                  "cpu": {
                    "boost": true,
                    "hard_limit": true
                  }
                }
              }
            }
          }
        ],
        "enterprise_search": [
          {
            "ref_id": "string",
            "elasticsearch_cluster_ref_id": "string",
            "display_name": "string",
            "region": "string",
            "plan": {
              "cluster_topology": [
                {
                  "node_type": {
                    "appserver": true,
                    "worker": true,
                    "connector": true
                  },
                  "instance_configuration_id": "string",
                  "instance_configuration_version": 42,
                  "size": {
                    "value": 42,
                    "resource": "memory"
                  },
                  "zone_count": 42,
                  "enterprise_search": {
                    "version": "string",
                    "docker_image": "string",
                    "system_settings": {
                      "elasticsearch_url": "string",
                      "elasticsearch_username": "string",
                      "elasticsearch_password": "string",
                      "secret_session_key": "string"
                    },
                    "user_settings_json": {},
                    "user_settings_yaml": "string",
                    "user_settings_override_json": {},
                    "user_settings_override_yaml": "string"
                  },
                  "allocator_filter": {},
                  "node_configuration": "string",
                  "memory_per_node": {},
                  "node_count_per_zone": {}
                }
              ],
              "enterprise_search": {
                "version": "string",
                "docker_image": "string",
                "system_settings": {
                  "elasticsearch_url": "string",
                  "elasticsearch_username": "string",
                  "elasticsearch_password": "string",
                  "secret_session_key": "string"
                },
                "user_settings_json": {},
                "user_settings_yaml": "string",
                "user_settings_override_json": {},
                "user_settings_override_yaml": "string"
              },
              "transient": {
                "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
                }
              }
            },
            "settings": {
              "metadata": {
                "name": "string",
                "owner_id": "string",
                "organization_id": "string",
                "subscription_level": "string",
                "system_owned": true,
                "contact_email": "string",
                "hidden": true,
                "resources": {
                  "cpu": {
                    "boost": true,
                    "hard_limit": true
                  }
                }
              }
            }
          }
        ],
        "integrations_server": [
          {
            "ref_id": "string",
            "elasticsearch_cluster_ref_id": "string",
            "display_name": "string",
            "region": "string",
            "plan": {
              "cluster_topology": [
                {
                  "instance_configuration_id": "string",
                  "instance_configuration_version": 42,
                  "size": {
                    "value": 42,
                    "resource": "memory"
                  },
                  "zone_count": 42,
                  "integrations_server": {
                    "version": "string",
                    "docker_image": "string",
                    "system_settings": {
                      "elasticsearch_url": "string",
                      "kibana_url": "string",
                      "elasticsearch_username": "string",
                      "elasticsearch_password": "string",
                      "secret_token": "string",
                      "debug_enabled": true
                    },
                    "user_settings_json": {},
                    "user_settings_yaml": "string",
                    "user_settings_override_json": {},
                    "user_settings_override_yaml": "string",
                    "mode": "standalone"
                  }
                }
              ],
              "integrations_server": {
                "version": "string",
                "docker_image": "string",
                "system_settings": {
                  "elasticsearch_url": "string",
                  "kibana_url": "string",
                  "elasticsearch_username": "string",
                  "elasticsearch_password": "string",
                  "secret_token": "string",
                  "debug_enabled": true
                },
                "user_settings_json": {},
                "user_settings_yaml": "string",
                "user_settings_override_json": {},
                "user_settings_override_yaml": "string",
                "mode": "standalone"
              },
              "transient": {
                "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
                }
              }
            },
            "settings": {
              "metadata": {
                "name": "string",
                "owner_id": "string",
                "organization_id": "string",
                "subscription_level": "string",
                "system_owned": true,
                "contact_email": "string",
                "hidden": true,
                "resources": {
                  "cpu": {
                    "boost": true,
                    "hard_limit": true
                  }
                }
              }
            }
          }
        ]
      },
      "settings": {
        "traffic_filter_settings": {
          "rulesets": [
            "string"
          ]
        },
        "observability": {
          "logging": {
            "destination": {
              "deployment_id": "string",
              "ref_id": "string"
            }
          },
          "metrics": {
            "destination": {
              "deployment_id": "string",
              "ref_id": "string"
            },
            "force_legacy_monitoring": true
          }
        },
        "autoscaling_enabled": true
      },
      "metadata": {
        "system_owned": true,
        "tags": [
          {
            "key": "string",
            "value": "string"
          }
        ]
      },
      "alias": "string",
      "region": "string",
      "version": "string"
    },
    "system_owned": true,
    "source": {
      "facilitator": "string",
      "action": "string",
      "date": "2025-05-04T09:42:00+00:00",
      "user_id": "string",
      "admin_id": "string",
      "remote_addresses": [
        "string"
      ]
    },
    "metadata": [
      {
        "key": "string",
        "value": "string"
      }
    ],
    "instance_configurations": [
      {
        "id": "string",
        "name": "string",
        "config_version": 42,
        "description": "string",
        "instance_type": "elasticsearch",
        "node_types": [
          "string"
        ],
        "discrete_sizes": {
          "sizes": [
            42
          ],
          "default_size": 42,
          "resource": "memory"
        },
        "storage_multiplier": 42.0,
        "cpu_multiplier": 42.0,
        "metadata": {},
        "max_zones": 42
      }
    ],
    "order": 42,
    "hidden": true,
    "min_version": "string",
    "template_category_id": "string",
    "kibana_deeplink": [
      {
        "semver": "string",
        "uri": "string"
      }
    ]
  }
]
Response examples (400)
# Headers
x-cloud-error-codes: templates.region_not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (401)
# Headers
x-cloud-error-codes: templates.region_not_allowed

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}




Get deployment template

GET /deployments/templates/{template_id}

Retrieves a deployment template by id.

Path parameters

  • template_id string Required

    The identifier for the deployment template.

Query parameters

  • If true, will return details for each instance configuration referenced by the template.

    Default value is true.

  • If true, will populate the max_zones field in the instance configurations. Only relevant if show_instance_configurations=true.

    Default value is false.

  • If present, it will cause the returned deployment template to be adapted to return only the elements allowed in that version.

  • region string Required

    Region of the deployment template

Responses

  • The deployment template was found and returned successfully.

    Hide response attributes Show response attributes object
    • id string Required

      The unique identifier for the template.

    • name string Required

      A human readable name for the template.

    • An optional description for the template.

    • deployment_template object Required

      A request for creating a new Deployment consisting of multiple clusters

      Additional properties are allowed.

      Hide deployment_template attributes Show deployment_template attributes object
      • name string

        A name for the deployment; otherwise this will be the generated deployment id

      • The Resources that will belong to this Deployment

        Additional properties are allowed.

        Hide resources attributes Show resources attributes object
        • elasticsearch array[object]

          A list of payloads for Elasticsearch cluster creation.

          Hide elasticsearch attributes Show elasticsearch attributes object
          • ref_id string Required

            A locally-unique user-specified id for this Elasticsearch cluster

          • The human readable name for the cluster (defaults to the generated cluster id if not specified)

          • region string Required

            The region where this resource exists

          • plan object Required

            The plan for building this Elasticsearch cluster

            Additional properties are allowed.

            Hide plan attributes Show plan attributes object
            • cluster_topology array[object] Required
              Hide cluster_topology attributes Show cluster_topology attributes object
              • id string

                Unique identifier of this topology element

              • Controls the combinations of Elasticsearch node types. TIP: By default, the Elasticsearch node is master eligible, can hold data, and run ingest pipelines. WARNING: Do not set for tiebreaker topologies.

                Additional properties are allowed.

                Hide node_type attributes Show node_type attributes object
                • master boolean

                  Defines whether this node can be elected master (default: false)

                • data boolean

                  Defines whether this node can hold data (default: false)

                • ingest boolean

                  Defines whether this node can run an ingest pipeline (default: false)

                • ml boolean

                  Defines whether this node can run ml jobs, valid only for versions 5.4.0 or greater (default: false)

              • node_roles array[string]

                The list of node roles for this topology element (ES version >= 7.10). Allowable values are: master, ingest, ml, data_hot, data_content, data_warm, data_cold, data_frozen, remote_cluster_client, transform

                Values are master, ingest, ml, data_hot, data_content, data_warm, data_cold, data_frozen, remote_cluster_client, or transform.

              • memory_per_node integer(int32)

                The memory capacity in MB for each node of this type built in each zone.

              • node_count_per_zone integer(int32)

                The number of nodes of this type that are allocated within each zone. (i.e. total capacity per zone = node_count_per_zone * memory_per_node in MB). Cannot be set for tiebreaker topologies. For dedicated master nodes, must be 1 if an entry exists.

              • zone_count integer(int32)

                The default number of zones in which data nodes will be placed

              • The Elasticsearch cluster settings. When specified at the top level, provides a field-by-field default. When specified at the topology level, provides the override settings.

                Additional properties are allowed.

                Hide elasticsearch attributes Show elasticsearch attributes object
                • version string

                  The version of the Elasticsearch cluster (must be one of the ECE supported versions). Currently cannot be different across the topology (and is generally specified in the globals). Defaults to the latest version if not specified.

                • A docker URI that allows overriding of the default docker image specified for this version

                • A subset of Elasticsearch settings. TIP: To define the complete set of Elasticsearch settings, use ElasticsearchSystemSettings with user_settings_override* and user_settings*.

                  Additional properties are allowed.

                  Hide system_settings attributes Show system_settings attributes object
                  • Controls the languages supported by the Elasticsearch cluster, such as Painless, Mustache, and Expressions. Controls how the languages are used, such as file, index, and inline. TIP: For complex configurations, leave these blank and configure these settings in the user YAML or JSON.

                    Additional properties are allowed.

                    Hide scripting attributes Show scripting attributes object
                    • (5.x+ only) If enabled (the default) then the painless scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.painless.[file|stored|inline]')

                    • (5.x+ only) If enabled (the default) then the mustache scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.mustache.[file|stored|inline]')

                    • (5.x+ only) If enabled (the default) then the expressions scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.expression.[file|stored|inline]')

                    • stored object

                      Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                      Additional properties are allowed.

                      Hide stored attributes Show stored attributes object
                      • enabled boolean

                        If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                      • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                    • file object

                      Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                      Additional properties are allowed.

                      Hide file attributes Show file attributes object
                      • enabled boolean

                        If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                      • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                    • inline object

                      Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                      Additional properties are allowed.

                      Hide inline attributes Show inline attributes object
                      • enabled boolean

                        If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                      • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                  • reindex_whitelist array[string]

                    Limits remote Elasticsearch clusters that can be used as the source for '_reindex' API commands

                  • If true (the default), then any write operation on an index that does not currently exist will create it. NOTES: (Corresponds to the parameter 'action.auto_create_index')

                  • Defaults to false on versions <= 7.2.0, true otherwise. If false, then the API commands to close indices are disabled. This is important because Elasticsearch does not snapshot or migrate close indices on versions under 7.2.0, therefore standard Elastic Cloud configuration operations will cause irretrievable loss of indices' data. NOTES: (Corresponds to the parameter 'cluster.indices.close.enable')

                  • If true (default is false) then the index deletion API will not support wildcards or '_all'. NOTES: (Corresponds to the parameter 'action.destructive_requires_name')

                  • The trigger engine for Watcher, defaults to 'scheduler' - see the xpack documentation for more information. NOTES: (Corresponds to the parameter '(xpack.)watcher.trigger.schedule.engine', depending on version. Ignored from 6.x onwards.)

                  • (2.x only - to get the same result in 5.x template mappings must be used) Sets the default number of shards per index, defaulting to 1 if not specified. (Corresponds to the parameter 'index.number_of_shards' in 2.x, not supported in 5.x)

                  • The default interval at which monitoring information from the cluster if collected, if monitoring is enabled. NOTES: (Corresponds to the parameter 'marvel.agent.interval' in 2.x and 'xpack.monitoring.collection.interval' in 5.x)

                  • The duration for which monitoring history is stored (format '(NUMBER)d' eg '3d' for 3 days). NOTES: ('Corresponds to the parameter xpack.monitoring.history.duration' in 5.x, defaults to '7d')

                • An arbitrary JSON object allowing cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters arey are on the allowlist and not on the denylist. NOTES: (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Elasticsearch settings)

                  Additional properties are allowed.

                • An arbitrary YAML object allowing cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters arey are on the allowlist and not on the denylist. NOTES: (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Elasticsearch settings)

                • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. NOTES: (This field together with 'system_settings' and 'user_settings*' defines the total set of Elasticsearch settings)

                  Additional properties are allowed.

                • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. NOTES: (This field together with 'system_settings' and 'user_settings*' defines the total set of Elasticsearch settings)

                • A list of plugin names from the Elastic-supported subset that are bundled with the version images. NOTES: (Users should consult the Elastic stack objects to see what plugins are available, this is currently only available from the UI)

                • user_plugins array[object]

                  A list of admin-uploaded plugin objects that are available for this user.

                  Hide user_plugins attributes Show user_plugins attributes object
                  • name string Required

                    The name of the plugin

                  • url string Required

                    The URL of the plugin (must be accessible from the ECE infrastructure)

                  • elasticsearch_version string Required

                    The supported Elasticsearch version (must match the version in the plan)

                • user_bundles array[object]

                  A list of admin-uploaded bundle objects (eg scripts, synonym files) that are available for this user.

                  Hide user_bundles attributes Show user_bundles attributes object
                  • name string Required

                    The name of the bundle

                  • url string Required

                    The URL of the bundle, which must be accessible from the ECE infrastructure. This URL could be cached by platform, make sure to change it when updating the bundle

                  • elasticsearch_version string Required

                    The supported Elasticsearch version (must match the version in the plan)

                • curation object

                  Defines the index curation routing for the cluster

                  Additional properties are allowed.

                  Hide curation attributes Show curation attributes object
                • Defines the Elasticsearch node attributes for the instances in the topology

                  Hide node_attributes attribute Show node_attributes attribute object
                  • * string Additional properties
              • Controls the allocation of this topology element as well as allowed sizes and node_types. It needs to match the id of an existing instance configuration.

              • The version of the Instance Configuration Id. If it is unset, the meaning depends on read vs writes. For deployment reads, it is equivalent to version 0 (or the IC is unversioned); for deployment creates and deployment template use, it is equivalent to 'the latest version'; and for deployment updates, it is equivalent to 'retain the current version'.

              • size object

                Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                Additional properties are allowed.

                Hide size attributes Show size attributes object
                • value integer(int32) Required

                  Amount of resource

                • resource string Required

                  Type of resource

                  Values are memory or storage.

              • Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                Additional properties are allowed.

                Hide autoscaling_min attributes Show autoscaling_min attributes object
                • value integer(int32) Required

                  Amount of resource

                • resource string Required

                  Type of resource

                  Values are memory or storage.

              • Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                Additional properties are allowed.

                Hide autoscaling_max attributes Show autoscaling_max attributes object
                • value integer(int32) Required

                  Amount of resource

                • resource string Required

                  Type of resource

                  Values are memory or storage.

              • An arbitrary JSON object overriding the default autoscaling policy. Don't set unless you really know what you are doing.

                Additional properties are allowed.

              • Controls for the topology element. Only used as part of the deployment template. Ignored if included as part of a deployment.

                Additional properties are allowed.

                Hide topology_element_control attribute Show topology_element_control attribute object
                • min object Required

                  Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                  Additional properties are allowed.

                  Hide min attributes Show min attributes object
                  • value integer(int32) Required

                    Amount of resource

                  • resource string Required

                    Type of resource

                    Values are memory or storage.

              • Set to true to enable autoscaling for this topology element, even if the cluster-level 'autoscaling_enabled' field is false. Note that 'autoscaling_tier_override' cannot be set to false if cluster-level 'autoscaling_enabled' is true. Currently only supported for the 'ml' tier

            • elasticsearch object Required

              The Elasticsearch cluster settings. When specified at the top level, provides a field-by-field default. When specified at the topology level, provides the override settings.

              Additional properties are allowed.

              Hide elasticsearch attributes Show elasticsearch attributes object
              • version string

                The version of the Elasticsearch cluster (must be one of the ECE supported versions). Currently cannot be different across the topology (and is generally specified in the globals). Defaults to the latest version if not specified.

              • A docker URI that allows overriding of the default docker image specified for this version

              • A subset of Elasticsearch settings. TIP: To define the complete set of Elasticsearch settings, use ElasticsearchSystemSettings with user_settings_override* and user_settings*.

                Additional properties are allowed.

                Hide system_settings attributes Show system_settings attributes object
                • Controls the languages supported by the Elasticsearch cluster, such as Painless, Mustache, and Expressions. Controls how the languages are used, such as file, index, and inline. TIP: For complex configurations, leave these blank and configure these settings in the user YAML or JSON.

                  Additional properties are allowed.

                  Hide scripting attributes Show scripting attributes object
                  • (5.x+ only) If enabled (the default) then the painless scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.painless.[file|stored|inline]')

                  • (5.x+ only) If enabled (the default) then the mustache scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.mustache.[file|stored|inline]')

                  • (5.x+ only) If enabled (the default) then the expressions scripting engine is allowed as a sandboxed language. Sandboxed languages are the only ones allowed if 'sandbox_mode' is set to true. NOTES: (Corresponds to the parameters 'script.engine.expression.[file|stored|inline]')

                  • stored object

                    Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                    Additional properties are allowed.

                    Hide stored attributes Show stored attributes object
                    • enabled boolean

                      If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                    • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                  • file object

                    Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                    Additional properties are allowed.

                    Hide file attributes Show file attributes object
                    • enabled boolean

                      If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                    • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                  • inline object

                    Enables scripting for the specified type and controls other parameters. Store scripts in indexes (stored), upload in file bundles (file), or use in API requests (inline).

                    Additional properties are allowed.

                    Hide inline attributes Show inline attributes object
                    • enabled boolean

                      If enabled (default: true) then scripts are enabled, either for sandboxing languages (by default), or for all installed languages if 'sandbox_mode' is disabled (or for 6.x). NOTES: (Corresponds to the parameter 'script.file|stored/indexed|inline')

                    • If enabled (default: true) and this script type is enabled, then only the sandbox languages are allowed. By default the sandbox languages are painless, expressions and mustache, but this can be restricted via the 'painless_enabled', 'mustache_enabled' 'expression_enabled' settings.NOTES: Not supported in 6.x. (Corresponds to the parameters 'script.engine.[painless|mustache|expressions].[file|stored|inline]')

                • reindex_whitelist array[string]

                  Limits remote Elasticsearch clusters that can be used as the source for '_reindex' API commands

                • If true (the default), then any write operation on an index that does not currently exist will create it. NOTES: (Corresponds to the parameter 'action.auto_create_index')

                • Defaults to false on versions <= 7.2.0, true otherwise. If false, then the API commands to close indices are disabled. This is important because Elasticsearch does not snapshot or migrate close indices on versions under 7.2.0, therefore standard Elastic Cloud configuration operations will cause irretrievable loss of indices' data. NOTES: (Corresponds to the parameter 'cluster.indices.close.enable')

                • If true (default is false) then the index deletion API will not support wildcards or '_all'. NOTES: (Corresponds to the parameter 'action.destructive_requires_name')

                • The trigger engine for Watcher, defaults to 'scheduler' - see the xpack documentation for more information. NOTES: (Corresponds to the parameter '(xpack.)watcher.trigger.schedule.engine', depending on version. Ignored from 6.x onwards.)

                • (2.x only - to get the same result in 5.x template mappings must be used) Sets the default number of shards per index, defaulting to 1 if not specified. (Corresponds to the parameter 'index.number_of_shards' in 2.x, not supported in 5.x)

                • The default interval at which monitoring information from the cluster if collected, if monitoring is enabled. NOTES: (Corresponds to the parameter 'marvel.agent.interval' in 2.x and 'xpack.monitoring.collection.interval' in 5.x)

                • The duration for which monitoring history is stored (format '(NUMBER)d' eg '3d' for 3 days). NOTES: ('Corresponds to the parameter xpack.monitoring.history.duration' in 5.x, defaults to '7d')

              • An arbitrary JSON object allowing cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters arey are on the allowlist and not on the denylist. NOTES: (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Elasticsearch settings)

                Additional properties are allowed.

              • An arbitrary YAML object allowing cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters arey are on the allowlist and not on the denylist. NOTES: (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Elasticsearch settings)

              • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. NOTES: (This field together with 'system_settings' and 'user_settings*' defines the total set of Elasticsearch settings)

                Additional properties are allowed.

              • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. NOTES: (This field together with 'system_settings' and 'user_settings*' defines the total set of Elasticsearch settings)

              • A list of plugin names from the Elastic-supported subset that are bundled with the version images. NOTES: (Users should consult the Elastic stack objects to see what plugins are available, this is currently only available from the UI)

              • user_plugins array[object]

                A list of admin-uploaded plugin objects that are available for this user.

                Hide user_plugins attributes Show user_plugins attributes object
                • name string Required

                  The name of the plugin

                • url string Required

                  The URL of the plugin (must be accessible from the ECE infrastructure)

                • elasticsearch_version string Required

                  The supported Elasticsearch version (must match the version in the plan)

              • user_bundles array[object]

                A list of admin-uploaded bundle objects (eg scripts, synonym files) that are available for this user.

                Hide user_bundles attributes Show user_bundles attributes object
                • name string Required

                  The name of the bundle

                • url string Required

                  The URL of the bundle, which must be accessible from the ECE infrastructure. This URL could be cached by platform, make sure to change it when updating the bundle

                • elasticsearch_version string Required

                  The supported Elasticsearch version (must match the version in the plan)

              • curation object

                Defines the index curation routing for the cluster

                Additional properties are allowed.

                Hide curation attributes Show curation attributes object
              • Defines the Elasticsearch node attributes for the instances in the topology

                Hide node_attributes attribute Show node_attributes attribute object
                • * string Additional properties
            • Documents which deployment template was used in the creation of this plan

              Additional properties are allowed.

              Hide deployment_template attributes Show deployment_template attributes object
              • id string Required

                The unique identifier of the deployment template

              • version string

                A version identifier to disambiguate multiple revisions of the same template

            • Defines the configuration parameters that control how the plan is applied. For example, the Elasticsearch cluster topology and Elasticsearch settings.

              Additional properties are allowed.

              Hide transient attributes Show transient attributes object
              • strategy object

                The options for performing a plan change. Specify only one property each time. The default is grow_and_shrink.

                Additional properties are allowed.

                Hide strategy attributes Show strategy attributes object
                • rolling object

                  Performs inline, rolling configuration changes that mutate existing containers. TIP: This is the fastest way to update a plan, but can fail for complex plan changes, such as topology changes. Also, this is less safe for configuration changes that leave a cluster in a non running state. NOTE: When you perform a major version upgrade, and 'group_by' is set to 'pass:macros[all]';, rolling is required.

                  Additional properties are allowed.

                  Hide rolling attributes Show rolling attributes object
                  • group_by string

                    Specifies the grouping attribute to use when rolling several instances. Instances that share the same value for the provided attribute key are rolled together as a unit. Examples that make sense to use are '__all__' (roll all instances as a single unit), 'logical_zone_name' (roll instances by zone), '__name__' (roll one instance at a time, the default if not specified). Note that '__all__' is required when performing a major version upgrade

                  • Whether we allow changing the capacity of instances (default false). This is currently implemented by stopping, re-creating then starting the affected instance on its associated allocator when performing the changes. NOTES: This requires a round-trip through the allocation infrastructure of the active constructor, as it has to reserve the target capacity without over-committing

                  • Whether to skip attempting to do a synced flush on the filesystem of the container (default: false), which is less safe but may be required if the container is unhealthy

                  • shard_init_wait_time integer(int64)

                    The time, in seconds, to wait for shards that show no progress of initializing before rolling the next group (default: 10 minutes)

                • A strategy that creates instances with the new plan, migrates data from the old instances, then shuts down the old instances. GrowShrinkStrategyConfig is safer than 'rolling' and ensures single node availability during a plan change, but can be a lot slower on larger clusters.

                  Additional properties are allowed.

                • A strategy that creates new Elasticsearch instances, Kibana instances, and APM Servers with the new plan, then migrates the node data to minimize the amount of spare capacity.

                  Additional properties are allowed.

                • A strategy that lets constructor choose the most optimal way to execute the plan.

                  Additional properties are allowed.

              • The configuration settings for the timeout and fallback parameters.

                Additional properties are allowed.

                Hide plan_configuration attributes Show plan_configuration attributes object
                • timeout integer(int64)

                  The total timeout in seconds after which the plan is cancelled even if it is not complete. Defaults to 4x the max memory capacity per node (in MB). NOTES: A 3 zone cluster with 2 nodes of 2048 each would have a timeout of 4*2048=8192 seconds. Timeout does not include time required to run rollback actions.

                • calm_wait_time integer(int64)

                  This timeout determines how long to give a cluster after it responds to API calls before performing actual operations on it. It defaults to 5s

                • move_instances array[object]
                  Hide move_instances attributes Show move_instances attributes object
                  • from string Required

                    The instance id that is going to be moved

                  • to array[string]

                    An optional list of allocator ids to which the instance should be moved. If not specified then any available allocator can be used (including the current one if it is healthy)

                  • Tells the infrastructure that the instance should be considered as permanently down when deciding how to migrate data to new nodes. If left blank then the system will automatically decide (currently: will treat the instances as up)

                • move_allocators array[object]
                  Hide move_allocators attributes Show move_allocators attributes object
                  • from string Required

                    The allocator id off which all instances in the cluster should be moved

                  • to array[string]

                    An optional list of allocator ids to which the instance(s) should be moved. If not specified then any available allocator can be used (including the current one if it is healthy)

                  • Tells the infrastructure that all instances on the allocator should be considered as permanently down when deciding how to migrate data to new nodes. If left blank then the system will auto-decide (currently: will treat the allocator as up)

                • move_only boolean

                  If true (default: false) only move_instances and move_allocators instructions will be executed, all other changes will be ignored

                • If true (default: false) does not allow re-using any existing instances currently in the cluster, ie even unchanged instances will be re-created

                • List of allocators on which instances are placed if possible (if not possible/not specified then any available allocator with space is used)

                • Map containing allocators tags in form of key value pairs, increasing the likelihood during move requests for allocators with matching tags, to be selected as target allocators

                  Hide preferred_allocator_tags attribute Show preferred_allocator_tags attribute object
                  • * string Additional properties
                • If true (default: false), does not take (or require) a successful snapshot to be taken before performing any potentially destructive changes to this cluster

                • If taking a snapshot (ie unless 'skip_snapshots': true) then will retry on failure at most this number of times (default: 5)

                • max_snapshot_age integer(int64)

                  When you take a snapshot and 'skip_snapshots' is false, specifies the maximum age in seconds of the most recent snapshot before a new snapshot is created. Default is 300

                • If true (default false), does not clear the maintenance flag (which prevents its API from being accessed except by the constructor) on new instances added until after a snapshot has been restored, otherwise, the maintenance flag is cleared once the new instances successfully join the new cluster

                • Set to 'forced' to force a reboot as part of the upgrade plan. NOTES: (ie taking an existing plan and leaving it alone except for setting 'transient.plan_configuration.cluster_reboot': 'forced' will reboot the cluster)

                  Value is forced.

                • If false (the default) then the plan will fail out if it believes the requested sequence of operations can result in data loss - this flag will override some of these restraints

                • If true (default: false) then the plan will not wait for data to be migrated from old instances to new instances before continuing the plan (potentially deleting the old instances and losing data)

                • If false, the cluster is checked for issues that should be resolved before migration (eg contains old Lucene segments), if true this is bypassed

                • If false (the default), the cluster will run (currently) 2.x->5.x operations for any plan change ending with a 5.x cluster (eg apply a cluster license, ensure Monitoring is configured)

                • If false (the default), the cluster will perform a snapshot after a major version upgrade takes place

              • Restores a snapshot from a local or remote repository.

                Additional properties are allowed.

                Hide restore_snapshot attributes Show restore_snapshot attributes object
                • If specified, contains the name of the snapshot repository - else will default to the Elastic Cloud system repo ('found-snapshots')

                • snapshot_name string Required

                  The name of the snapshot to restore. Use '__latest_success__' to get the most recent snapshot from the specified repository

                • Raw remote snapshot restore settings. Do not send this if you are sending source_cluster_id

                  Additional properties are allowed.

                  Hide repository_config attribute Show repository_config attribute object
                  • The remote snapshot settings raw JSON - see the Elasticsearch '_snapshot' documentation for more details on supported formats

                    Additional properties are allowed.

                • The configuration for the restore command, such as which indices you want to restore.

                  Additional properties are allowed.

                  Hide restore_payload attributes Show restore_payload attributes object
                  • indices array[string]

                    The list of indices to restore (supports +ve and -ve selection and wildcarding - see the default Elasticsearch index format documentation)

                  • This JSON object (merged with the 'indices' field (if present) is passed untouched into the restore command - see the Elasticsearch '_snapshot' documentation for more details on supported formats

                    Additional properties are allowed.

                • strategy string

                  The restore strategy to use. Defaults to a full restore. Partial restore will attempt to restore unavailable indices only

                  Values are partial, full, or recovery.

                • If specified, contains the name of the source cluster id. Do not send this if you are sending repository_config

              • The list of resources that will be configured as remote clusters

                Additional properties are allowed.

                Hide remote_clusters attribute Show remote_clusters attribute object
                • resources array[object] Required

                  The remote resources

                  Hide resources attributes Show resources attributes object
                  • deployment_id string Required

                    The id of the deployment

                  • elasticsearch_ref_id string Required

                    The locally-unique user-specified id of an Elasticsearch Resource

                  • alias string Required

                    The alias for this remote cluster. Aliases must only contain letters, digits, dashes and underscores

                  • If true, skip this cluster during search if it is disconnected. Default: false

                  • info object

                    Information about a Remote Cluster.

                    Additional properties are allowed.

                    Hide info attributes Show info attributes object
                    • healthy boolean Required

                      Whether or not the remote cluster is healthy

                    • connected boolean Required

                      Whether or not there is at least one connection to the remote cluster.

                    • compatible boolean Required

                      Whether or not the remote cluster version is compatible with this cluster version.

                    • trusted boolean Required

                      Whether or not the remote cluster is trusted by this cluster.

                    • trusted_back boolean Required

                      Whether or not the remote cluster trusts this cluster back.

              • If specified, contains transient settings to be applied to an Elasticsearch cluster during changes,default values shown below applied. These can be overridden by specifying them in the map (or null to unset). Additional settings can also be set. Settings will be cleared after the plan has finished. If not specified, no settings will be applied. NOTE: These settings are only explicitly cleared for 5.x+ clusters, they must be hand-reset to their defaults in 2.x- (or a cluster reboot will clear them).

                • indices.store.throttle.max_bytes_per_sec: 120Mb
                • indices.recovery.max_bytes_per_sec: 120Mb
                • cluster.routing.allocation.cluster_concurrent_rebalance: 5
                • cluster.routing.allocation.node_initial_primaries_recoveries: 5
                • cluster.routing.allocation.node_concurrent_incoming_recoveries: 5 For version 8.1 and later no defaults are provided through this mechanism, but instead hardware dependent settings are provided to each instance.

                Additional properties are allowed.

            • Enable autoscaling for this Elasticsearch cluster.

          • settings object

            The settings for building this Elasticsearch cluster

            Additional properties are allowed.

            Hide settings attributes Show settings attributes object
            • snapshot object

              The snapshot settings for this deployment. When provided, snapshot settings are changed as specified. A null value reverts the field to the default value. Otherwise, all snapshot settings remain as they were set previously.

              Additional properties are allowed.

              Hide snapshot attributes Show snapshot attributes object
              • Snapshot repository configuration

                Additional properties are allowed.

                Hide repository attributes Show repository attributes object
                • static object

                  Cluster snapshot static repository settings, containing repository type and settings

                  Additional properties are allowed.

                  Hide static attributes Show static attributes object
                  • Type of snapshot repository, ie: S3

                  • settings object

                    Settings associated with snapshot repository

                    Additional properties are allowed.

                • Cluster snapshot reference repository settings, containing the repository name in ECE fashion

                  Additional properties are allowed.

                  Hide reference attribute Show reference attribute object
                  • ECE snapshot repository name, from the '/platform/configuration/snapshots/repositories' endpoint

                • default object

                  Cluster snapshot default repository settings

                  Additional properties are allowed.

              • interval string

                Interval between snapshots, with the format 'length unit' (space is optional), where unit can be one of: d (day), h (hour), min (minute). Default is 30 minutes

              • Interval between snapshot progress checks, with the format 'length unit' (space is optional), where unit can be one of: d (day), h (hour), min (minute). Default is 1 minute

              • The time to wait between snapshot phases (snapshot, purge), with the format 'length unit' (space is optional), where unit can be one of: d (day), h (hour), min (minute). Default is 10 minutes

              • enabled boolean

                Indicates if Snapshotting is enabled

              • suspended array[string]

                List of temporary snapshot suspensions

              • Cluster snapshot retention information

                Additional properties are allowed.

                Hide retention attributes Show retention attributes object
                • snapshots integer(int32)

                  Number of snapshots to retain

                • max_age string

                  Total retention period for all snapshots, with the format 'length unit' (space is optional), where unit can be one of: d (day), h (hour), min (minute)

              • slm boolean

                When set to true, the deployment will have SLM enabled. Default value is true.

              • Cron expression indicating when should snapshots be taken. This can be enabled only if SLM is enabled for the deployment and 'interval' is not present

            • The monitoring settings for this deployment. When provided, monitoring settings are changed as specified. A null value reverts the field to the default value. Otherwise, all monitoring settings remain as they were set previously.

              Additional properties are allowed.

              Hide monitoring attribute Show monitoring attribute object
              • target_cluster_id string Required

                The Id of the target cluster to which to send monitoring information

            • metadata object

              The top-level configuration settings for the Elasticsearch cluster.

              Additional properties are allowed.

              Hide metadata attributes Show metadata attributes object
              • name string

                The display name of the cluster

              • owner_id string

                The user id (referencing whatever user database is in use) of the cluster owner

              • The organization that owns the deployment

              • Subscription level of the cluster

              • Indicates if a cluster is system owned (restricts the set of operations that can be performed on it)

              • Contact email for the cluster

              • hidden boolean

                Whether or not this cluster is hidden from the normal clusters list

              • The top-level configuration settings for the Elasticsearch cluster resources.

                Additional properties are allowed.

                Hide resources attribute Show resources attribute object
                • cpu object

                  Specifies the CPU resource settings for the Elasticsearch cluster.

                  Additional properties are allowed.

                  Hide cpu attributes Show cpu attributes object
                  • boost boolean

                    Indicates if the CPU boost flag is enabled or not.

                  • hard_limit boolean

                    Indicates if the CPU hard limit flag is enabled or not. When set to true (default), allocates CPU timeshare based on the total CPU time multiplied by the relative RAM capacity of the instance on a given host. When set to false, delegates CPU allocation to the operating system to schedule CPU timeshares.

            • curation object

              The curation settings for this deployment. When provided, curation settings are changed as specified. A null value reverts the field to the default value. Otherwise, all curation settings remain as they were set previously.

              Additional properties are allowed.

              Hide curation attribute Show curation attribute object
              • specs array[object] Required

                Specifications for curation

                Hide specs attributes Show specs attributes object
            • Threshold starting from which the number of instances in the cluster results in the introduction of dedicated masters. If the cluster is downscaled to a number of nodes below this one, dedicated masters will be removed. Limit is inclusive. When provided the threshold setting is updated. A null value removes the field. Otherwise, the setting remains as it was set previously.

            • The rulesets to apply to all resources in this cluster. When specified, the set of rulesets is updated and the same rulesets will be applied to Kibana and APM clusters as well. If not specified, the rulesets remain as they were set previously.

              Additional properties are allowed.

              Hide traffic_filter attribute Show traffic_filter attribute object
              • rulesets array[string] Required

                IDs of the traffic filter rulesets

            • trust object

              Configuration of trust with other clusters. When provided, trust settings are changed as specified. A null value reverts the field to the default value. Otherwise, all trust settings remain as they were set previously.

              Additional properties are allowed.

              Hide trust attributes Show trust attributes object
              • accounts array[object]

                The list of trust relationships with different accounts

                Hide accounts attributes Show accounts attributes object
                • account_id string Required

                  the ID of the Account

                • name string

                  A human readable name of the trust relationship

                • trust_all boolean Required

                  If true, all clusters in this account will by default be trusted and the trust_allowlist is ignored.

                • trust_allowlist array[string]

                  The list of clusters to trust. Only used when trust_all is false.

              • external array[object]

                The list of trust relationships with external entities

                Hide external attributes Show external attributes object
                • trust_relationship_id string Required

                  The ID of the external trust relationship

                • name string

                  The name of the external trust relationship. Retrieved from the TrustRelationship and ignored on write.

                • trust_all boolean Required

                  If true, all clusters in this external entity will be trusted and the trust_allowlist is ignored.

                • trust_allowlist array[string]

                  The list of clusters to trust. Only used when trust_all is false.

              • direct array[object]

                The list of trust relationships where the certificate is bundled with the trust setting. Allows configuring trust for clusters running outside of an Elastic Cloud managed environment or in an Elastic Cloud environment without an environment level trust established.

                Hide direct attributes Show direct attributes object
                • uid string

                  Auto generated identifier for this trust, allows distinguishing between update vs remove and add.

                • name string Required

                  a human readable name of the trust relationship

                • type string

                  The type can either be ESS, ECE, generic or proxy. If none is specified, then generic is assumed. If proxy is specified, trust_all should be false and trust_allowlist, scope_id and additional_node_names should be omitted.

                  Values are ECE, ESS, generic, or proxy.

                • trust_all boolean Required

                  If true, scope_id is required and the trust_allowlist is ignored and all clusters matching the scope id will be trusted.

                • trust_allowlist array[string]

                  The list of clusters with matching scope to trust. Only used when trust_all is false. Providing one or more clusters makes scope_id mandatory.

                • scope_id string

                  A lowercase alphanumerical string of max 32 characters. Usually an organization id or an environment id, but could really be any suitable suffix for clusters using the CA certificate of this trust. Required unless trust_all is false and trust_allowlist is empty.

                • A list of node names trusted in addition to those deducible from trust_allowlist and scope id. Allows trusting nodes that don't have a scoped name at the cost of maintaining the list. Mandatory if scope id is not defined. Wildcards are not allowed.

                • certificates array[object] Required

                  The public ca certificate(s) to trust. Only one is required, but it is possible to specify multiple certificates in order to facilitate key rotation.

                  Hide certificates attributes Show certificates attributes object
                  • pem string Required

                    The public ca certificate as string in PEM format.

                  • metadata object

                    Metadata about the certificate, including fingerprint and expiry date. Generated by the Cloud service and ignored on write.

                    Additional properties are allowed.

                    Hide metadata attributes Show metadata attributes object
                    • fingerprint string Required

                      The fingerprint of the certificate

                    • valid_to string(date-time) Required

                      The expiry date of the certificate in UTC

                    • valid_from string(date-time) Required

                      The valid from date of the certificate in UTC

                    • also_trusted_by array[string]

                      Other deployments also trusting this certificate

            • The contents of the Elasticsearch keystore. It's a write only field.

              Additional properties are allowed.

              Hide keystore_contents attribute Show keystore_contents attribute object
              • secrets object Required

                List of secrets

                Hide secrets attribute Show secrets attribute object
                • * object Additional properties

                  The value that you configure for the Elasticsearch keystore secret.

                  Additional properties are allowed.

                  Hide * attributes Show * attributes object
                  • value object

                    Value of this setting. This can either be a string or a JSON object that is stored as a JSON string in the keystore. NOTE: When the keystore secret is unspecified, it is removed.

                    Additional properties are allowed.

                  • as_file boolean

                    Stores the keystore secret as a file. The default is false, which stores the keystore secret as string when value is a plain string, or true when value is an object.

        • kibana array[object]

          A list of payloads for Kibana creation.

          Hide kibana attributes Show kibana attributes object
          • ref_id string Required

            A locally-unique user-specified id for Kibana

          • Alias to the Elasticsearch Cluster to attach Kibana to

          • The human readable name for the Kibana cluster (default: takes the name of its Elasticsearch cluster)

          • region string Required

            The region where this resource exists

          • plan object Required

            The plan for the Kibana instance.

            Additional properties are allowed.

            Hide plan attributes Show plan attributes object
            • cluster_topology array[object]
              Hide cluster_topology attributes Show cluster_topology attributes object
              • memory_per_node integer(int32)

                The memory capacity in MB for each node of this type built in each zone.

              • node_count_per_zone integer(int32)

                The number of nodes of this type that are allocated within each zone (i.e. total capacity per zone = node_count_per_zone * memory_per_node in MB).

              • Controls the allocation of this topology element as well as allowed sizes and node_types. It needs to match the id of an existing instance configuration.

              • The version of the Instance Configuration Id. If it is unset, the meaning depends on read vs writes. For deployment reads, it is equivalent to version 0 (or the IC is unversioned); for deployment creates and deployment template use, it is equivalent to 'the latest version'; and for deployment updates, it is equivalent to 'retain the current version'.

              • size object

                Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                Additional properties are allowed.

                Hide size attributes Show size attributes object
                • value integer(int32) Required

                  Amount of resource

                • resource string Required

                  Type of resource

                  Values are memory or storage.

              • zone_count integer(int32)

                number of zones in which nodes will be placed

              • kibana object

                The Kibana instance settings. When specified at the top level, provides a field-by-field default. When specified at the topology level, provides the override settings.

                Additional properties are allowed.

                Hide kibana attributes Show kibana attributes object
                • version string

                  The version of the Kibana cluster (must be one of the ECE supported versions, and won't work unless it matches the Elasticsearch version. Leave blank to auto-detect version.)

                • A docker URI that allows overriding of the default docker image specified for this version

                • A subset of Kibana settings. TIP: To define the complete set of Elasticsearch settings, use KibanaSystemSettings with user_settings_override_ and user_settings_.

                  Additional properties are allowed.

                  Hide system_settings attributes Show system_settings attributes object
                  • DEPRECATED: Scheduled for removal in a future version of the API.

                    Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                  • Optionally override the account within Elasticsearch - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

                  • Optionally override the account within Elasticsearch - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

                • An arbitrary JSON object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters are on the allowlist and not on the denylist. (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Kibana settings)

                  Additional properties are allowed.

                • An arbitrary YAML object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters are on the allowlist and not on the denylist. (These field together with 'user_settings_override*' and 'system_settings' defines the total set of Kibana settings)

                • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Kibana settings)

                  Additional properties are allowed.

                • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Kibana settings)

            • kibana object Required

              The Kibana instance settings. When specified at the top level, provides a field-by-field default. When specified at the topology level, provides the override settings.

              Additional properties are allowed.

              Hide kibana attributes Show kibana attributes object
              • version string

                The version of the Kibana cluster (must be one of the ECE supported versions, and won't work unless it matches the Elasticsearch version. Leave blank to auto-detect version.)

              • A docker URI that allows overriding of the default docker image specified for this version

              • A subset of Kibana settings. TIP: To define the complete set of Elasticsearch settings, use KibanaSystemSettings with user_settings_override_ and user_settings_.

                Additional properties are allowed.

                Hide system_settings attributes Show system_settings attributes object
                • DEPRECATED: Scheduled for removal in a future version of the API.

                  Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                • Optionally override the account within Elasticsearch - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

                • Optionally override the account within Elasticsearch - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

              • An arbitrary JSON object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters are on the allowlist and not on the denylist. (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Kibana settings)

                Additional properties are allowed.

              • An arbitrary YAML object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters are on the allowlist and not on the denylist. (These field together with 'user_settings_override*' and 'system_settings' defines the total set of Kibana settings)

              • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Kibana settings)

                Additional properties are allowed.

              • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Kibana settings)

            • 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 transient attributes Show transient attributes object
              • strategy object

                The options for performing a plan change. Specify only one property each time. The default is grow_and_shrink.

                Additional properties are allowed.

                Hide strategy attributes Show strategy attributes object
                • rolling object

                  Performs inline, rolling configuration changes that mutate existing containers. TIP: This is the fastest way to update a plan, but can fail for complex plan changes, such as topology changes. Also, this is less safe for configuration changes that leave a cluster in a non running state. NOTE: When you perform a major version upgrade, and 'group_by' is set to 'pass:macros[all]';, rolling is required.

                  Additional properties are allowed.

                  Hide rolling attributes Show rolling attributes object
                  • group_by string

                    Specifies the grouping attribute to use when rolling several instances. Instances that share the same value for the provided attribute key are rolled together as a unit. Examples that make sense to use are '__all__' (roll all instances as a single unit), 'logical_zone_name' (roll instances by zone), '__name__' (roll one instance at a time, the default if not specified). Note that '__all__' is required when performing a major version upgrade

                  • Whether we allow changing the capacity of instances (default false). This is currently implemented by stopping, re-creating then starting the affected instance on its associated allocator when performing the changes. NOTES: This requires a round-trip through the allocation infrastructure of the active constructor, as it has to reserve the target capacity without over-committing

                  • Whether to skip attempting to do a synced flush on the filesystem of the container (default: false), which is less safe but may be required if the container is unhealthy

                  • shard_init_wait_time integer(int64)

                    The time, in seconds, to wait for shards that show no progress of initializing before rolling the next group (default: 10 minutes)

                • A strategy that creates instances with the new plan, migrates data from the old instances, then shuts down the old instances. GrowShrinkStrategyConfig is safer than 'rolling' and ensures single node availability during a plan change, but can be a lot slower on larger clusters.

                  Additional properties are allowed.

                • A strategy that creates new Elasticsearch instances, Kibana instances, and APM Servers with the new plan, then migrates the node data to minimize the amount of spare capacity.

                  Additional properties are allowed.

                • A strategy that lets constructor choose the most optimal way to execute the plan.

                  Additional properties are allowed.

              • The configuration settings for the timeout and fallback parameters.

                Additional properties are allowed.

                Hide plan_configuration attributes Show plan_configuration attributes object
                • timeout integer(int64)

                  The total timeout in seconds after which the plan is cancelled even if it is not complete. Defaults to 4x the max memory capacity per node (in MB)

                • 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.

          • settings object

            The settings for building this Kibana cluster

            Additional properties are allowed.

            Hide settings attribute Show settings attribute object
            • metadata object

              The top-level configuration settings for the Elasticsearch cluster.

              Additional properties are allowed.

              Hide metadata attributes Show metadata attributes object
              • name string

                The display name of the cluster

              • owner_id string

                The user id (referencing whatever user database is in use) of the cluster owner

              • The organization that owns the deployment

              • Subscription level of the cluster

              • Indicates if a cluster is system owned (restricts the set of operations that can be performed on it)

              • Contact email for the cluster

              • hidden boolean

                Whether or not this cluster is hidden from the normal clusters list

              • The top-level configuration settings for the Elasticsearch cluster resources.

                Additional properties are allowed.

                Hide resources attribute Show resources attribute object
                • cpu object

                  Specifies the CPU resource settings for the Elasticsearch cluster.

                  Additional properties are allowed.

                  Hide cpu attributes Show cpu attributes object
                  • boost boolean

                    Indicates if the CPU boost flag is enabled or not.

                  • hard_limit boolean

                    Indicates if the CPU hard limit flag is enabled or not. When set to true (default), allocates CPU timeshare based on the total CPU time multiplied by the relative RAM capacity of the instance on a given host. When set to false, delegates CPU allocation to the operating system to schedule CPU timeshares.

        • apm array[object]

          A list of payloads for APM creation. WARNING: For stack versions 8.0.0 and higher the integrations_server payload should be used instead, as this field becomes deprecated.

          Hide apm attributes Show apm attributes object
          • ref_id string Required

            A locally-unique user-specified id for APM

          • Alias to the Elasticsearch Cluster to attach APM to

          • The human readable name for the APM cluster (default: takes the name of its Elasticsearch cluster)

          • region string Required

            The region where this resource exists

          • plan object Required

            The plan for the APM Server.

            Additional properties are allowed.

            Hide plan attributes Show plan attributes object
            • cluster_topology array[object]
              Hide cluster_topology attributes Show cluster_topology attributes object
              • Controls the allocation of this topology element as well as allowed sizes and node_types. It needs to match the id of an existing instance configuration.

              • The version of the Instance Configuration Id. If it is unset, the meaning depends on read vs writes. For deployment reads, it is equivalent to version 0 (or the IC is unversioned); for deployment creates and deployment template use, it is equivalent to 'the latest version'; and for deployment updates, it is equivalent to 'retain the current version'.

              • size object

                Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                Additional properties are allowed.

                Hide size attributes Show size attributes object
                • value integer(int32) Required

                  Amount of resource

                • resource string Required

                  Type of resource

                  Values are memory or storage.

              • zone_count integer(int32)

                number of zones in which nodes will be placed

              • apm object

                The configuration options for the APM Server.

                Additional properties are allowed.

                Hide apm attributes Show apm attributes object
                • version string

                  The version of the Apm cluster (must be one of the ECE supported versions, and won't work unless it matches the APM version. Leave blank to auto-detect version.)

                • A docker URI that allows overriding of the default docker image specified for this version

                • A structure that defines a curated subset of the APM Server settings. TIP: To define the complete set of APM Server setting, use ApmSystemSettings with user_settings_override_ and user_settings_.

                  Additional properties are allowed.

                  Hide system_settings attributes Show system_settings attributes object
                  • DEPRECATED: Scheduled for removal in a future version of the API.

                    Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                  • DEPRECATED: Scheduled for removal in a future version of the API.

                    Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                  • Optionally override the account within APM - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

                  • Optionally override the account within APM - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

                  • Optionally override the secret token within APM - defaults to the previously existing secretToken

                  • Optionally enable debug mode for APM servers - defaults false

                • An arbitrary JSON object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters are on the allowlist and not on the denylist. (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Apm settings)

                  Additional properties are allowed.

                • An arbitrary YAML object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters are on the allowlist and not on the denylist. (These field together with 'user_settings_override*' and 'system_settings' defines the total set of Apm settings)

                • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Apm settings)

                  Additional properties are allowed.

                • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Apm settings)

            • apm object Required

              The configuration options for the APM Server.

              Additional properties are allowed.

              Hide apm attributes Show apm attributes object
              • version string

                The version of the Apm cluster (must be one of the ECE supported versions, and won't work unless it matches the APM version. Leave blank to auto-detect version.)

              • A docker URI that allows overriding of the default docker image specified for this version

              • A structure that defines a curated subset of the APM Server settings. TIP: To define the complete set of APM Server setting, use ApmSystemSettings with user_settings_override_ and user_settings_.

                Additional properties are allowed.

                Hide system_settings attributes Show system_settings attributes object
                • DEPRECATED: Scheduled for removal in a future version of the API.

                  Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                • DEPRECATED: Scheduled for removal in a future version of the API.

                  Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                • Optionally override the account within APM - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

                • Optionally override the account within APM - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

                • Optionally override the secret token within APM - defaults to the previously existing secretToken

                • Optionally enable debug mode for APM servers - defaults false

              • An arbitrary JSON object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters are on the allowlist and not on the denylist. (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Apm settings)

                Additional properties are allowed.

              • An arbitrary YAML object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters are on the allowlist and not on the denylist. (These field together with 'user_settings_override*' and 'system_settings' defines the total set of Apm settings)

              • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Apm settings)

                Additional properties are allowed.

              • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Apm settings)

            • 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 transient attributes Show transient attributes object
              • strategy object

                The options for performing a plan change. Specify only one property each time. The default is grow_and_shrink.

                Additional properties are allowed.

                Hide strategy attributes Show strategy attributes object
                • rolling object

                  Performs inline, rolling configuration changes that mutate existing containers. TIP: This is the fastest way to update a plan, but can fail for complex plan changes, such as topology changes. Also, this is less safe for configuration changes that leave a cluster in a non running state. NOTE: When you perform a major version upgrade, and 'group_by' is set to 'pass:macros[all]';, rolling is required.

                  Additional properties are allowed.

                  Hide rolling attributes Show rolling attributes object
                  • group_by string

                    Specifies the grouping attribute to use when rolling several instances. Instances that share the same value for the provided attribute key are rolled together as a unit. Examples that make sense to use are '__all__' (roll all instances as a single unit), 'logical_zone_name' (roll instances by zone), '__name__' (roll one instance at a time, the default if not specified). Note that '__all__' is required when performing a major version upgrade

                  • Whether we allow changing the capacity of instances (default false). This is currently implemented by stopping, re-creating then starting the affected instance on its associated allocator when performing the changes. NOTES: This requires a round-trip through the allocation infrastructure of the active constructor, as it has to reserve the target capacity without over-committing

                  • Whether to skip attempting to do a synced flush on the filesystem of the container (default: false), which is less safe but may be required if the container is unhealthy

                  • shard_init_wait_time integer(int64)

                    The time, in seconds, to wait for shards that show no progress of initializing before rolling the next group (default: 10 minutes)

                • A strategy that creates instances with the new plan, migrates data from the old instances, then shuts down the old instances. GrowShrinkStrategyConfig is safer than 'rolling' and ensures single node availability during a plan change, but can be a lot slower on larger clusters.

                  Additional properties are allowed.

                • A strategy that creates new Elasticsearch instances, Kibana instances, and APM Servers with the new plan, then migrates the node data to minimize the amount of spare capacity.

                  Additional properties are allowed.

                • A strategy that lets constructor choose the most optimal way to execute the plan.

                  Additional properties are allowed.

              • The 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.

          • settings object

            The settings for building this APM cluster

            Additional properties are allowed.

            Hide settings attribute Show settings attribute object
            • metadata object

              The top-level configuration settings for the Elasticsearch cluster.

              Additional properties are allowed.

              Hide metadata attributes Show metadata attributes object
              • name string

                The display name of the cluster

              • owner_id string

                The user id (referencing whatever user database is in use) of the cluster owner

              • The organization that owns the deployment

              • Subscription level of the cluster

              • Indicates if a cluster is system owned (restricts the set of operations that can be performed on it)

              • Contact email for the cluster

              • hidden boolean

                Whether or not this cluster is hidden from the normal clusters list

              • The top-level configuration settings for the Elasticsearch cluster resources.

                Additional properties are allowed.

                Hide resources attribute Show resources attribute object
                • cpu object

                  Specifies the CPU resource settings for the Elasticsearch cluster.

                  Additional properties are allowed.

                  Hide cpu attributes Show cpu attributes object
                  • boost boolean

                    Indicates if the CPU boost flag is enabled or not.

                  • hard_limit boolean

                    Indicates if the CPU hard limit flag is enabled or not. When set to true (default), allocates CPU timeshare based on the total CPU time multiplied by the relative RAM capacity of the instance on a given host. When set to false, delegates CPU allocation to the operating system to schedule CPU timeshares.

        • appsearch array[object]

          A list of payloads for AppSearch updates. AppSearch has been replaced by Enterprise Search in the Elastic Stack 7.7 and higher.

          Hide appsearch attributes Show appsearch attributes object
          • ref_id string Required

            A locally-unique user-specified id for AppSearch

          • Alias to the Elasticsearch Cluster to attach AppSearch to

          • The human readable name for the AppSearch cluster (default: takes the name of its Elasticsearch cluster)

          • region string Required

            The region where this resource exists

          • plan object Required

            The plan for the App Search cluster.

            Additional properties are allowed.

            Hide plan attributes Show plan attributes object
            • cluster_topology array[object]
              Hide cluster_topology attributes Show cluster_topology attributes object
              • Defines the AppSearch node type

                Additional properties are allowed.

                Hide node_type attributes Show node_type attributes object
                • appserver boolean Required

                  Defines whether this instance should run as Application/API server

                • worker boolean Required

                  Defines whether this instance should run as background worker

              • Controls the allocation of this topology element as well as allowed sizes and node_types. It needs to match the id of an existing instance configuration.

              • The version of the Instance Configuration Id. If it is unset, the meaning depends on read vs writes. For deployment reads, it is equivalent to version 0 (or the IC is unversioned); for deployment creates and deployment template use, it is equivalent to 'the latest version'; and for deployment updates, it is equivalent to 'retain the current version'.

              • size object

                Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                Additional properties are allowed.

                Hide size attributes Show size attributes object
                • value integer(int32) Required

                  Amount of resource

                • resource string Required

                  Type of resource

                  Values are memory or storage.

              • zone_count integer(int32)

                number of zones in which nodes will be placed

              • Additional properties are allowed.

                Hide appsearch attributes Show appsearch attributes object
                • version string

                  The version of the AppSearch cluster (must be one of the ECE supported versions, and won't work unless it matches the Elasticsearch version. Leave blank to auto-detect version.)

                • A docker URI that allows overriding of the default docker image specified for this version

                • This structure defines a curated subset of the AppSearch settings. (This field together with 'user_settings_override*' and 'user_settings*' defines the total set of AppSearch settings)

                  Additional properties are allowed.

                  Hide system_settings attributes Show system_settings attributes object
                  • Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                  • Optionally override the account within App Search - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

                  • Optionally override the account within App Search - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

                  • Optionally override the secret session key within App Search - defaults to the previously existing secretSession. Note that this field is never returned from the API, it is write only.

                • An arbitrary JSON object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters are on the allowlist and not on the denylist. (This field together with 'user_settings_override*' and 'system_settings' defines the total set of AppSearch settings)

                  Additional properties are allowed.

                • An arbitrary YAML object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters are on the allowlist and not on the denylist. (These field together with 'user_settings_override*' and 'system_settings' defines the total set of AppSearch settings)

                • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of AppSearch settings)

                  Additional properties are allowed.

                • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of AppSearch settings)

            • appsearch object Required

              Additional properties are allowed.

              Hide appsearch attributes Show appsearch attributes object
              • version string

                The version of the AppSearch cluster (must be one of the ECE supported versions, and won't work unless it matches the Elasticsearch version. Leave blank to auto-detect version.)

              • A docker URI that allows overriding of the default docker image specified for this version

              • This structure defines a curated subset of the AppSearch settings. (This field together with 'user_settings_override*' and 'user_settings*' defines the total set of AppSearch settings)

                Additional properties are allowed.

                Hide system_settings attributes Show system_settings attributes object
                • Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                • Optionally override the account within App Search - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

                • Optionally override the account within App Search - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

                • Optionally override the secret session key within App Search - defaults to the previously existing secretSession. Note that this field is never returned from the API, it is write only.

              • An arbitrary JSON object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters are on the allowlist and not on the denylist. (This field together with 'user_settings_override*' and 'system_settings' defines the total set of AppSearch settings)

                Additional properties are allowed.

              • An arbitrary YAML object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters are on the allowlist and not on the denylist. (These field together with 'user_settings_override*' and 'system_settings' defines the total set of AppSearch settings)

              • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of AppSearch settings)

                Additional properties are allowed.

              • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of AppSearch settings)

            • Defines configuration parameters that control how the plan (ie consisting of the cluster topology and AppSearch settings) is applied

              Additional properties are allowed.

              Hide transient attributes Show transient attributes object
              • strategy object

                The options for performing a plan change. Specify only one property each time. The default is grow_and_shrink.

                Additional properties are allowed.

                Hide strategy attributes Show strategy attributes object
                • rolling object

                  Performs inline, rolling configuration changes that mutate existing containers. TIP: This is the fastest way to update a plan, but can fail for complex plan changes, such as topology changes. Also, this is less safe for configuration changes that leave a cluster in a non running state. NOTE: When you perform a major version upgrade, and 'group_by' is set to 'pass:macros[all]';, rolling is required.

                  Additional properties are allowed.

                  Hide rolling attributes Show rolling attributes object
                  • group_by string

                    Specifies the grouping attribute to use when rolling several instances. Instances that share the same value for the provided attribute key are rolled together as a unit. Examples that make sense to use are '__all__' (roll all instances as a single unit), 'logical_zone_name' (roll instances by zone), '__name__' (roll one instance at a time, the default if not specified). Note that '__all__' is required when performing a major version upgrade

                  • Whether we allow changing the capacity of instances (default false). This is currently implemented by stopping, re-creating then starting the affected instance on its associated allocator when performing the changes. NOTES: This requires a round-trip through the allocation infrastructure of the active constructor, as it has to reserve the target capacity without over-committing

                  • Whether to skip attempting to do a synced flush on the filesystem of the container (default: false), which is less safe but may be required if the container is unhealthy

                  • shard_init_wait_time integer(int64)

                    The time, in seconds, to wait for shards that show no progress of initializing before rolling the next group (default: 10 minutes)

                • A strategy that creates instances with the new plan, migrates data from the old instances, then shuts down the old instances. GrowShrinkStrategyConfig is safer than 'rolling' and ensures single node availability during a plan change, but can be a lot slower on larger clusters.

                  Additional properties are allowed.

                • A strategy that creates new Elasticsearch instances, Kibana instances, and APM Servers with the new plan, then migrates the node data to minimize the amount of spare capacity.

                  Additional properties are allowed.

                • A strategy that lets constructor choose the most optimal way to execute the plan.

                  Additional properties are allowed.

              • 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.

          • settings object

            The settings for building this AppSearch cluster

            Additional properties are allowed.

            Hide settings attribute Show settings attribute object
            • metadata object

              The top-level configuration settings for the Elasticsearch cluster.

              Additional properties are allowed.

              Hide metadata attributes Show metadata attributes object
              • name string

                The display name of the cluster

              • owner_id string

                The user id (referencing whatever user database is in use) of the cluster owner

              • The organization that owns the deployment

              • Subscription level of the cluster

              • Indicates if a cluster is system owned (restricts the set of operations that can be performed on it)

              • Contact email for the cluster

              • hidden boolean

                Whether or not this cluster is hidden from the normal clusters list

              • The top-level configuration settings for the Elasticsearch cluster resources.

                Additional properties are allowed.

                Hide resources attribute Show resources attribute object
                • cpu object

                  Specifies the CPU resource settings for the Elasticsearch cluster.

                  Additional properties are allowed.

                  Hide cpu attributes Show cpu attributes object
                  • boost boolean

                    Indicates if the CPU boost flag is enabled or not.

                  • hard_limit boolean

                    Indicates if the CPU hard limit flag is enabled or not. When set to true (default), allocates CPU timeshare based on the total CPU time multiplied by the relative RAM capacity of the instance on a given host. When set to false, delegates CPU allocation to the operating system to schedule CPU timeshares.

        • integrations_server array[object]

          A list of payloads for Integrations Server creation.

          Hide integrations_server attributes Show integrations_server attributes object
          • ref_id string Required

            A locally-unique user-specified id for the Integrations Server

          • Alias to the Elasticsearch Cluster to attach the Integrations Server to

          • The human readable name for the Integrations Server cluster (default: takes the name of its Elasticsearch cluster)

          • region string Required

            The region where this resource exists

          • plan object Required

            The plan for the Integrations Server.

            Additional properties are allowed.

            Hide plan attributes Show plan attributes object
            • cluster_topology array[object]
              Hide cluster_topology attributes Show cluster_topology attributes object
              • Controls the allocation of this topology element as well as allowed sizes and node_types. It needs to match the id of an existing instance configuration.

              • The version of the Instance Configuration Id. If it is unset, the meaning depends on read vs writes. For deployment reads, it is equivalent to version 0 (or the IC is unversioned); for deployment creates and deployment template use, it is equivalent to 'the latest version'; and for deployment updates, it is equivalent to 'retain the current version'.

              • size object

                Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

                Additional properties are allowed.

                Hide size attributes Show size attributes object
                • value integer(int32) Required

                  Amount of resource

                • resource string Required

                  Type of resource

                  Values are memory or storage.

              • zone_count integer(int32)

                number of zones in which nodes will be placed

              • The configuration options for the Integrations Server.

                Additional properties are allowed.

                Hide integrations_server attributes Show integrations_server attributes object
                • version string

                  The version of the Integrations Server cluster (must be one of the ECE supported versions, and won't work unless it matches the Integrations Server version. Leave blank to auto-detect version.)

                • A docker URI that allows overriding of the default docker image specified for this version

                • A structure that defines a curated subset of the Integrations Server settings. TIP: To define the complete set of Integrations Server setting, use IntegrationsSystemSettings with user_settings_override_ and user_settings_.

                  Additional properties are allowed.

                  Hide system_settings attributes Show system_settings attributes object
                  • DEPRECATED: Scheduled for removal in a future version of the API.

                    Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                  • DEPRECATED: Scheduled for removal in a future version of the API.

                    Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                  • Optionally override the account within Integrations Server - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

                  • Optionally override the account within Integrations Server - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

                  • Optionally override the secret token within Integrations Server - defaults to the previously existing secretToken

                  • Optionally enable debug mode for Integrations Server - defaults false

                • An arbitrary JSON object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters are on the allowlist and not on the denylist. (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Integrations Server settings)

                  Additional properties are allowed.

                • An arbitrary YAML object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters are on the allowlist and not on the denylist. (These field together with 'user_settings_override*' and 'system_settings' defines the total set of Integrations Server settings)

                • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Integrations Server settings)

                  Additional properties are allowed.

                • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Integrations Server settings)

                • mode string

                  The mode the Integrations Server is operating in.

                  Values are standalone or managed.

            • integrations_server object Required

              The configuration options for the Integrations Server.

              Additional properties are allowed.

              Hide integrations_server attributes Show integrations_server attributes object
              • version string

                The version of the Integrations Server cluster (must be one of the ECE supported versions, and won't work unless it matches the Integrations Server version. Leave blank to auto-detect version.)

              • A docker URI that allows overriding of the default docker image specified for this version

              • A structure that defines a curated subset of the Integrations Server settings. TIP: To define the complete set of Integrations Server setting, use IntegrationsSystemSettings with user_settings_override_ and user_settings_.

                Additional properties are allowed.

                Hide system_settings attributes Show system_settings attributes object
                • DEPRECATED: Scheduled for removal in a future version of the API.

                  Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                • DEPRECATED: Scheduled for removal in a future version of the API.

                  Optionally override the URL to which to send data (for advanced users only, if unspecified the system selects an internal URL)

                • Optionally override the account within Integrations Server - defaults to a system account that always exists (if specified, the password must also be specified). Note that this field is never returned from the API, it is write only.

                • Optionally override the account within Integrations Server - defaults to a system account that always exists (if specified, the username must also be specified). Note that this field is never returned from the API, it is write only.

                • Optionally override the secret token within Integrations Server - defaults to the previously existing secretToken

                • Optionally enable debug mode for Integrations Server - defaults false

              • An arbitrary JSON object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_yaml' is allowed), provided the parameters are on the allowlist and not on the denylist. (This field together with 'user_settings_override*' and 'system_settings' defines the total set of Integrations Server settings)

                Additional properties are allowed.

              • An arbitrary YAML object allowing (non-admin) cluster owners to set their parameters (only one of this and 'user_settings_json' is allowed), provided the parameters are on the allowlist and not on the denylist. (These field together with 'user_settings_override*' and 'system_settings' defines the total set of Integrations Server settings)

              • An arbitrary JSON object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_yaml' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Integrations Server settings)

                Additional properties are allowed.

              • An arbitrary YAML object allowing ECE admins owners to set clusters' parameters (only one of this and 'user_settings_override_json' is allowed), ie in addition to the documented 'system_settings'. (This field together with 'system_settings' and 'user_settings*' defines the total set of Integrations Server settings)

              • mode string

                The mode the Integrations Server is operating in.

                Values are standalone or managed.

            • Defines the configuration parameters that control how the plan is applied. For example, the Elasticsearch cluster topology and Integrations Server settings.

              Additional properties are allowed.

              Hide transient attributes Show transient attributes object
              • strategy object

                The options for performing a plan change. Specify only one property each time. The default is grow_and_shrink.

                Additional properties are allowed.

                Hide strategy attributes Show strategy attributes object
                • rolling object

                  Performs inline, rolling configuration changes that mutate existing containers. TIP: This is the fastest way to update a plan, but can fail for complex plan changes, such as topology changes. Also, this is less safe for configuration changes that leave a cluster in a non running state. NOTE: When you perform a major version upgrade, and 'group_by' is set to 'pass:macros[all]';, rolling is required.

                  Additional properties are allowed.

                  Hide rolling attributes Show rolling attributes object
                  • group_by string

                    Specifies the grouping attribute to use when rolling several instances. Instances that share the same value for the provided attribute key are rolled together as a unit. Examples that make sense to use are '__all__' (roll all instances as a single unit), 'logical_zone_name' (roll instances by zone), '__name__' (roll one instance at a time, the default if not specified). Note that '__all__' is required when performing a major version upgrade

                  • Whether we allow changing the capacity of instances (default false). This is currently implemented by stopping, re-creating then starting the affected instance on its associated allocator when performing the changes. NOTES: This requires a round-trip through the allocation infrastructure of the active constructor, as it has to reserve the target capacity without over-committing

                  • Whether to skip attempting to do a synced flush on the filesystem of the container (default: false), which is less safe but may be required if the container is unhealthy

                  • shard_init_wait_time integer(int64)

                    The time, in seconds, to wait for shards that show no progress of initializing before rolling the next group (default: 10 minutes)

                • A strategy that creates instances with the new plan, migrates data from the old instances, then shuts down the old instances. GrowShrinkStrategyConfig is safer than 'rolling' and ensures single node availability during a plan change, but can be a lot slower on larger clusters.

                  Additional properties are allowed.

                • A strategy that creates new Elasticsearch instances, Kibana instances, and APM Servers with the new plan, then migrates the node data to minimize the amount of spare capacity.

                  Additional properties are allowed.

                • A strategy that lets constructor choose the most optimal way to execute the plan.

                  Additional properties are allowed.

              • The plan control configuration options for the Integrations 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.

          • settings object

            The settings for building this Integrations Server cluster

            Additional properties are allowed.

            Hide settings attribute Show settings attribute object
            • metadata object

              The top-level configuration settings for the Elasticsearch cluster.

              Additional properties are allowed.

              Hide metadata attributes Show metadata attributes object
              • name string

                The display name of the cluster

              • owner_id string

                The user id (referencing whatever user database is in use) of the cluster owner

              • The organization that owns the deployment

              • Subscription level of the cluster

              • Indicates if a cluster is system owned (restricts the set of operations that can be performed on it)

              • Contact email for the cluster

              • hidden boolean

                Whether or not this cluster is hidden from the normal clusters list

              • The top-level configuration settings for the Elasticsearch cluster resources.

                Additional properties are allowed.

                Hide resources attribute Show resources attribute object
                • cpu object

                  Specifies the CPU resource settings for the Elasticsearch cluster.

                  Additional properties are allowed.

                  Hide cpu attributes Show cpu attributes object
                  • boost boolean

                    Indicates if the CPU boost flag is enabled or not.

                  • hard_limit boolean

                    Indicates if the CPU hard limit flag is enabled or not. When set to true (default), allocates CPU timeshare based on the total CPU time multiplied by the relative RAM capacity of the instance on a given host. When set to false, delegates CPU allocation to the operating system to schedule CPU timeshares.

      • settings object

        Additional configuration for this Deployment

        Additional properties are allowed.

        Hide settings attributes Show settings attributes object
        • The rulesets to apply to all resources in this cluster. When specified, the set of rulesets is updated and the same rulesets will be applied to Kibana and APM clusters as well. If not specified, the rulesets remain as they were set previously.

          Additional properties are allowed.

          Hide traffic_filter_settings attribute Show traffic_filter_settings attribute object
          • rulesets array[string] Required

            IDs of the traffic filter rulesets

        • Observability settings for this deployment

          Additional properties are allowed.

          Hide observability attributes Show observability attributes object
          • logging object

            The logging settings for the deployment

            Additional properties are allowed.

            Hide logging attribute Show logging attribute object
            • destination object Required

              The destination deployment that this deployment's logs will be sent to

              Additional properties are allowed.

              Hide destination attributes Show destination attributes object
              • deployment_id string Required

                The deployment to send logs and/or metrics to. Contains either the deployment's ID or 'self'.

              • ref_id string

                RefId of the Elasticsearch cluster to send logs and/or metrics to. If not specified, refId is resolved automatically as long as the destination deployment contains a single Elasticsearch resource.

          • metrics object

            The metrics settings for the deployment

            Additional properties are allowed.

            Hide metrics attributes Show metrics attributes object
            • destination object Required

              The destination deployment that this deployment's logs will be sent to

              Additional properties are allowed.

              Hide destination attributes Show destination attributes object
              • deployment_id string Required

                The deployment to send logs and/or metrics to. Contains either the deployment's ID or 'self'.

              • ref_id string

                RefId of the Elasticsearch cluster to send logs and/or metrics to. If not specified, refId is resolved automatically as long as the destination deployment contains a single Elasticsearch resource.

            • Set to true to force the deployment to use legacy monitoring instead of Metricbeat-based monitoring.

        • Enable autoscaling for this deployment.

      • metadata object

        Additional information about this deployment

        Additional properties are allowed.

        Hide metadata attributes Show metadata attributes object
        • Indicates if a deployment is system owned (restricts the set of operations that can be performed on it)

        • tags array[object]

          Arbitrary user-defined metadata associated with this deployment

          Hide tags attributes Show tags attributes object
          • key string Required

            The metadata field name

          • value string Required

            The metadata value

      • alias string

        A user-defined alias to use in place of Cluster IDs for user-friendly URLs

      • region string

        Identifier of the region to be used as the default for all the resources of the deployment

      • version string

        The version for all the resources of the deployment (must be one of the supported versions). Defaults to the latest version if not specified.

    • Whether or not if this is system owned template.

    • source object

      Information describing the source that facilitated the plans current state

      Additional properties are allowed.

      Hide source attributes Show source attributes object
      • facilitator string Required

        The service where the change originated from

      • action string Required

        The type of plan change that was initiated

      • date string(date-time) Required

        The time the change was initiated

      • user_id string

        The user that requested the change

      • admin_id string

        The admin user that requested the change

      • remote_addresses array[string]

        The host addresses of the user that originated the change

    • metadata array[object]

      Optional arbitrary metadata to associate with this template.

      Hide metadata attributes Show metadata attributes object
      • key string Required

        The metadata field name

      • value string Required

        The metadata value

    • instance_configurations array[object] Required

      List of instance configurations used in the cluster template.

      Hide instance_configurations attributes Show instance_configurations attributes object
      • id string

        Unique identifier for the instance configuration

      • name string Required

        Display name for the instance configuration.

      • config_version integer(int32)

        If the IC is configuration controlled, this field is the version either being read back (reads return the latest IC unless specified by the 'config_version' URL param), or the version to update. Cannot be used in creates. For unversioned IC reads it is left empty.

      • Optional description for the instance configuration

      • The type of instance. For instance configurations where the type is specified in the 'id', the default value of 'instance_type' will be automatically inferred.

        Values are elasticsearch, kibana, apm, integrations_server, appsearch, or enterprise_search.

      • node_types array[string]

        Node types (master, data) for the instance. For instance configurations where the type (and tier) is specified in the 'id', the default value of 'node_types' will be automatically inferred.

      • discrete_sizes object Required

        Numerics representing possible instance sizes that the instance configuration supports.

        Additional properties are allowed.

        Hide discrete_sizes attributes Show discrete_sizes attributes object
        • sizes array[integer(int32)] Required

          List of supported sizes

        • default_size integer(int32)

          The default size

        • resource string

          The unit that each size represents. If not specified, it will default to 'memory'.

          Values are memory or storage.

      • storage_multiplier number(double)

        Settings for the instance storage multiplier

      • cpu_multiplier number(double)

        Settings for the instance CPU multiplier

      • metadata object

        Optional arbitrary metadata to associate with this template.

        Additional properties are allowed.

      • max_zones integer(int32)

        The maximum number of availability zones in which this instance configuration has allocators. This field will be missing unless explicitly requested with the show_max_zones parameter.

    • order integer(int32)

      Determines the order in which this template should be returned when listed. Templates are returned in ascending order. If not specified, then the template willbe appended to the end of the list.

    • hidden boolean

      Whether or not the deployment template is hidden by default.

    • Minimum stack version required by this template, if any.

    • Provider and version agnostic template identifier used for grouping related template types.

  • The requested region is not supported. (code: templates.region_not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is templates.region_not_found.

    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 user is not authorized to access requested region. (code: templates.region_not_allowed)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is templates.region_not_allowed.

    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 deployment template specified by {template_id} cannot be found. (code: templates.template_not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is templates.template_not_found.

    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

GET /deployments/templates/{template_id}
curl \
 -X GET https://{{hostname}}/api/v1/deployments/templates/{template_id}?region=string
Response examples (200)
{
  "id": "string",
  "name": "string",
  "description": "string",
  "deployment_template": {
    "name": "string",
    "resources": {
      "elasticsearch": [
        {
          "ref_id": "string",
          "display_name": "string",
          "region": "string",
          "plan": {
            "cluster_topology": [
              {
                "id": "string",
                "node_type": {
                  "master": true,
                  "data": true,
                  "ingest": true,
                  "ml": true
                },
                "node_roles": [
                  "master"
                ],
                "memory_per_node": 42,
                "node_count_per_zone": 42,
                "zone_count": 42,
                "elasticsearch": {
                  "version": "string",
                  "docker_image": "string",
                  "system_settings": {
                    "scripting": {
                      "painless_enabled": true,
                      "mustache_enabled": true,
                      "expressions_enabled": true,
                      "stored": {
                        "enabled": true,
                        "sandbox_mode": true
                      },
                      "file": {
                        "enabled": true,
                        "sandbox_mode": true
                      },
                      "inline": {
                        "enabled": true,
                        "sandbox_mode": true
                      }
                    },
                    "reindex_whitelist": [
                      "string"
                    ],
                    "auto_create_index": true,
                    "enable_close_index": true,
                    "destructive_requires_name": true,
                    "watcher_trigger_engine": "string",
                    "default_shards_per_index": 42,
                    "monitoring_collection_interval": 42,
                    "monitoring_history_duration": "string"
                  },
                  "user_settings_json": {},
                  "user_settings_yaml": "string",
                  "user_settings_override_json": {},
                  "user_settings_override_yaml": "string",
                  "enabled_built_in_plugins": [
                    "string"
                  ],
                  "user_plugins": [
                    {
                      "name": "string",
                      "url": "string",
                      "elasticsearch_version": "string"
                    }
                  ],
                  "user_bundles": [
                    {
                      "name": "string",
                      "url": "string",
                      "elasticsearch_version": "string"
                    }
                  ],
                  "curation": {
                    "from_instance_configuration_id": "string",
                    "to_instance_configuration_id": "string"
                  },
                  "node_attributes": {
                    "additionalProperty1": "string",
                    "additionalProperty2": "string"
                  }
                },
                "instance_configuration_id": "string",
                "instance_configuration_version": 42,
                "size": {
                  "value": 42,
                  "resource": "memory"
                },
                "autoscaling_min": {
                  "value": 42,
                  "resource": "memory"
                },
                "autoscaling_max": {
                  "value": 42,
                  "resource": "memory"
                },
                "autoscaling_policy_override_json": {},
                "topology_element_control": {
                  "min": {
                    "value": 42,
                    "resource": "memory"
                  }
                },
                "autoscaling_tier_override": true
              }
            ],
            "elasticsearch": {
              "version": "string",
              "docker_image": "string",
              "system_settings": {
                "scripting": {
                  "painless_enabled": true,
                  "mustache_enabled": true,
                  "expressions_enabled": true,
                  "stored": {
                    "enabled": true,
                    "sandbox_mode": true
                  },
                  "file": {
                    "enabled": true,
                    "sandbox_mode": true
                  },
                  "inline": {
                    "enabled": true,
                    "sandbox_mode": true
                  }
                },
                "reindex_whitelist": [
                  "string"
                ],
                "auto_create_index": true,
                "enable_close_index": true,
                "destructive_requires_name": true,
                "watcher_trigger_engine": "string",
                "default_shards_per_index": 42,
                "monitoring_collection_interval": 42,
                "monitoring_history_duration": "string"
              },
              "user_settings_json": {},
              "user_settings_yaml": "string",
              "user_settings_override_json": {},
              "user_settings_override_yaml": "string",
              "enabled_built_in_plugins": [
                "string"
              ],
              "user_plugins": [
                {
                  "name": "string",
                  "url": "string",
                  "elasticsearch_version": "string"
                }
              ],
              "user_bundles": [
                {
                  "name": "string",
                  "url": "string",
                  "elasticsearch_version": "string"
                }
              ],
              "curation": {
                "from_instance_configuration_id": "string",
                "to_instance_configuration_id": "string"
              },
              "node_attributes": {
                "additionalProperty1": "string",
                "additionalProperty2": "string"
              }
            },
            "deployment_template": {
              "id": "string",
              "version": "string"
            },
            "transient": {
              "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": {}
            },
            "autoscaling_enabled": true
          },
          "settings": {
            "snapshot": {
              "repository": {
                "static": {
                  "repository_type": "string",
                  "settings": {}
                },
                "reference": {
                  "repository_name": "string"
                },
                "default": {}
              },
              "interval": "string",
              "pending_interval": "string",
              "wait_time_after_snapshotting": "string",
              "enabled": true,
              "suspended": [
                "string"
              ],
              "retention": {
                "snapshots": 42,
                "max_age": "string"
              },
              "slm": true,
              "cron_expression": "string"
            },
            "monitoring": {
              "target_cluster_id": "string"
            },
            "metadata": {
              "name": "string",
              "owner_id": "string",
              "organization_id": "string",
              "subscription_level": "string",
              "system_owned": true,
              "contact_email": "string",
              "hidden": true,
              "resources": {
                "cpu": {
                  "boost": true,
                  "hard_limit": true
                }
              }
            },
            "curation": {
              "specs": [
                {
                  "index_pattern": "string",
                  "trigger_interval_seconds": 42
                }
              ]
            },
            "dedicated_masters_threshold": 42,
            "traffic_filter": {
              "rulesets": [
                "string"
              ]
            },
            "trust": {
              "accounts": [
                {
                  "account_id": "string",
                  "name": "string",
                  "trust_all": true,
                  "trust_allowlist": [
                    "string"
                  ]
                }
              ],
              "external": [
                {
                  "trust_relationship_id": "string",
                  "name": "string",
                  "trust_all": true,
                  "trust_allowlist": [
                    "string"
                  ]
                }
              ],
              "direct": [
                {
                  "uid": "string",
                  "name": "string",
                  "type": "ECE",
                  "trust_all": true,
                  "trust_allowlist": [
                    "string"
                  ],
                  "scope_id": "abc123",
                  "additional_node_names": [
                    "string"
                  ],
                  "certificates": [
                    {
                      "pem": "string",
                      "metadata": {
                        "fingerprint": "string",
                        "valid_to": "2025-05-04T09:42:00+00:00",
                        "valid_from": "2025-05-04T09:42:00+00:00",
                        "also_trusted_by": [
                          "string"
                        ]
                      }
                    }
                  ]
                }
              ]
            },
            "keystore_contents": {
              "secrets": {
                "additionalProperty1": {
                  "value": {},
                  "as_file": true
                },
                "additionalProperty2": {
                  "value": {},
                  "as_file": true
                }
              }
            }
          }
        }
      ],
      "kibana": [
        {
          "ref_id": "string",
          "elasticsearch_cluster_ref_id": "string",
          "display_name": "string",
          "region": "string",
          "plan": {
            "cluster_topology": [
              {
                "memory_per_node": 42,
                "node_count_per_zone": 42,
                "instance_configuration_id": "string",
                "instance_configuration_version": 42,
                "size": {
                  "value": 42,
                  "resource": "memory"
                },
                "zone_count": 42,
                "kibana": {
                  "version": "string",
                  "docker_image": "string",
                  "system_settings": {
                    "elasticsearch_url": "string",
                    "elasticsearch_username": "string",
                    "elasticsearch_password": "string"
                  },
                  "user_settings_json": {},
                  "user_settings_yaml": "string",
                  "user_settings_override_json": {},
                  "user_settings_override_yaml": "string"
                }
              }
            ],
            "kibana": {
              "version": "string",
              "docker_image": "string",
              "system_settings": {
                "elasticsearch_url": "string",
                "elasticsearch_username": "string",
                "elasticsearch_password": "string"
              },
              "user_settings_json": {},
              "user_settings_yaml": "string",
              "user_settings_override_json": {},
              "user_settings_override_yaml": "string"
            },
            "transient": {
              "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
              }
            }
          },
          "settings": {
            "metadata": {
              "name": "string",
              "owner_id": "string",
              "organization_id": "string",
              "subscription_level": "string",
              "system_owned": true,
              "contact_email": "string",
              "hidden": true,
              "resources": {
                "cpu": {
                  "boost": true,
                  "hard_limit": true
                }
              }
            }
          }
        }
      ],
      "apm": [
        {
          "ref_id": "string",
          "elasticsearch_cluster_ref_id": "string",
          "display_name": "string",
          "region": "string",
          "plan": {
            "cluster_topology": [
              {
                "instance_configuration_id": "string",
                "instance_configuration_version": 42,
                "size": {
                  "value": 42,
                  "resource": "memory"
                },
                "zone_count": 42,
                "apm": {
                  "version": "string",
                  "docker_image": "string",
                  "system_settings": {
                    "elasticsearch_url": "string",
                    "kibana_url": "string",
                    "elasticsearch_username": "string",
                    "elasticsearch_password": "string",
                    "secret_token": "string",
                    "debug_enabled": true
                  },
                  "user_settings_json": {},
                  "user_settings_yaml": "string",
                  "user_settings_override_json": {},
                  "user_settings_override_yaml": "string"
                }
              }
            ],
            "apm": {
              "version": "string",
              "docker_image": "string",
              "system_settings": {
                "elasticsearch_url": "string",
                "kibana_url": "string",
                "elasticsearch_username": "string",
                "elasticsearch_password": "string",
                "secret_token": "string",
                "debug_enabled": true
              },
              "user_settings_json": {},
              "user_settings_yaml": "string",
              "user_settings_override_json": {},
              "user_settings_override_yaml": "string"
            },
            "transient": {
              "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
              }
            }
          },
          "settings": {
            "metadata": {
              "name": "string",
              "owner_id": "string",
              "organization_id": "string",
              "subscription_level": "string",
              "system_owned": true,
              "contact_email": "string",
              "hidden": true,
              "resources": {
                "cpu": {
                  "boost": true,
                  "hard_limit": true
                }
              }
            }
          }
        }
      ],
      "appsearch": [
        {
          "ref_id": "string",
          "elasticsearch_cluster_ref_id": "string",
          "display_name": "string",
          "region": "string",
          "plan": {
            "cluster_topology": [
              {
                "node_type": {
                  "appserver": true,
                  "worker": true
                },
                "instance_configuration_id": "string",
                "instance_configuration_version": 42,
                "size": {
                  "value": 42,
                  "resource": "memory"
                },
                "zone_count": 42,
                "appsearch": {
                  "version": "string",
                  "docker_image": "string",
                  "system_settings": {
                    "elasticsearch_url": "string",
                    "elasticsearch_username": "string",
                    "elasticsearch_password": "string",
                    "secret_session_key": "string"
                  },
                  "user_settings_json": {},
                  "user_settings_yaml": "string",
                  "user_settings_override_json": {},
                  "user_settings_override_yaml": "string"
                }
              }
            ],
            "appsearch": {
              "version": "string",
              "docker_image": "string",
              "system_settings": {
                "elasticsearch_url": "string",
                "elasticsearch_username": "string",
                "elasticsearch_password": "string",
                "secret_session_key": "string"
              },
              "user_settings_json": {},
              "user_settings_yaml": "string",
              "user_settings_override_json": {},
              "user_settings_override_yaml": "string"
            },
            "transient": {
              "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
              }
            }
          },
          "settings": {
            "metadata": {
              "name": "string",
              "owner_id": "string",
              "organization_id": "string",
              "subscription_level": "string",
              "system_owned": true,
              "contact_email": "string",
              "hidden": true,
              "resources": {
                "cpu": {
                  "boost": true,
                  "hard_limit": true
                }
              }
            }
          }
        }
      ],
      "enterprise_search": [
        {
          "ref_id": "string",
          "elasticsearch_cluster_ref_id": "string",
          "display_name": "string",
          "region": "string",
          "plan": {
            "cluster_topology": [
              {
                "node_type": {
                  "appserver": true,
                  "worker": true,
                  "connector": true
                },
                "instance_configuration_id": "string",
                "instance_configuration_version": 42,
                "size": {
                  "value": 42,
                  "resource": "memory"
                },
                "zone_count": 42,
                "enterprise_search": {
                  "version": "string",
                  "docker_image": "string",
                  "system_settings": {
                    "elasticsearch_url": "string",
                    "elasticsearch_username": "string",
                    "elasticsearch_password": "string",
                    "secret_session_key": "string"
                  },
                  "user_settings_json": {},
                  "user_settings_yaml": "string",
                  "user_settings_override_json": {},
                  "user_settings_override_yaml": "string"
                },
                "allocator_filter": {},
                "node_configuration": "string",
                "memory_per_node": {},
                "node_count_per_zone": {}
              }
            ],
            "enterprise_search": {
              "version": "string",
              "docker_image": "string",
              "system_settings": {
                "elasticsearch_url": "string",
                "elasticsearch_username": "string",
                "elasticsearch_password": "string",
                "secret_session_key": "string"
              },
              "user_settings_json": {},
              "user_settings_yaml": "string",
              "user_settings_override_json": {},
              "user_settings_override_yaml": "string"
            },
            "transient": {
              "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
              }
            }
          },
          "settings": {
            "metadata": {
              "name": "string",
              "owner_id": "string",
              "organization_id": "string",
              "subscription_level": "string",
              "system_owned": true,
              "contact_email": "string",
              "hidden": true,
              "resources": {
                "cpu": {
                  "boost": true,
                  "hard_limit": true
                }
              }
            }
          }
        }
      ],
      "integrations_server": [
        {
          "ref_id": "string",
          "elasticsearch_cluster_ref_id": "string",
          "display_name": "string",
          "region": "string",
          "plan": {
            "cluster_topology": [
              {
                "instance_configuration_id": "string",
                "instance_configuration_version": 42,
                "size": {
                  "value": 42,
                  "resource": "memory"
                },
                "zone_count": 42,
                "integrations_server": {
                  "version": "string",
                  "docker_image": "string",
                  "system_settings": {
                    "elasticsearch_url": "string",
                    "kibana_url": "string",
                    "elasticsearch_username": "string",
                    "elasticsearch_password": "string",
                    "secret_token": "string",
                    "debug_enabled": true
                  },
                  "user_settings_json": {},
                  "user_settings_yaml": "string",
                  "user_settings_override_json": {},
                  "user_settings_override_yaml": "string",
                  "mode": "standalone"
                }
              }
            ],
            "integrations_server": {
              "version": "string",
              "docker_image": "string",
              "system_settings": {
                "elasticsearch_url": "string",
                "kibana_url": "string",
                "elasticsearch_username": "string",
                "elasticsearch_password": "string",
                "secret_token": "string",
                "debug_enabled": true
              },
              "user_settings_json": {},
              "user_settings_yaml": "string",
              "user_settings_override_json": {},
              "user_settings_override_yaml": "string",
              "mode": "standalone"
            },
            "transient": {
              "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
              }
            }
          },
          "settings": {
            "metadata": {
              "name": "string",
              "owner_id": "string",
              "organization_id": "string",
              "subscription_level": "string",
              "system_owned": true,
              "contact_email": "string",
              "hidden": true,
              "resources": {
                "cpu": {
                  "boost": true,
                  "hard_limit": true
                }
              }
            }
          }
        }
      ]
    },
    "settings": {
      "traffic_filter_settings": {
        "rulesets": [
          "string"
        ]
      },
      "observability": {
        "logging": {
          "destination": {
            "deployment_id": "string",
            "ref_id": "string"
          }
        },
        "metrics": {
          "destination": {
            "deployment_id": "string",
            "ref_id": "string"
          },
          "force_legacy_monitoring": true
        }
      },
      "autoscaling_enabled": true
    },
    "metadata": {
      "system_owned": true,
      "tags": [
        {
          "key": "string",
          "value": "string"
        }
      ]
    },
    "alias": "string",
    "region": "string",
    "version": "string"
  },
  "system_owned": true,
  "source": {
    "facilitator": "string",
    "action": "string",
    "date": "2025-05-04T09:42:00+00:00",
    "user_id": "string",
    "admin_id": "string",
    "remote_addresses": [
      "string"
    ]
  },
  "metadata": [
    {
      "key": "string",
      "value": "string"
    }
  ],
  "instance_configurations": [
    {
      "id": "string",
      "name": "string",
      "config_version": 42,
      "description": "string",
      "instance_type": "elasticsearch",
      "node_types": [
        "string"
      ],
      "discrete_sizes": {
        "sizes": [
          42
        ],
        "default_size": 42,
        "resource": "memory"
      },
      "storage_multiplier": 42.0,
      "cpu_multiplier": 42.0,
      "metadata": {},
      "max_zones": 42
    }
  ],
  "order": 42,
  "hidden": true,
  "min_version": "string",
  "template_category_id": "string",
  "kibana_deeplink": [
    {
      "semver": "string",
      "uri": "string"
    }
  ]
}
Response examples (400)
# Headers
x-cloud-error-codes: templates.region_not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (401)
# Headers
x-cloud-error-codes: templates.region_not_allowed

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (404)
# Headers
x-cloud-error-codes: templates.template_not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}













List traffic filter claimed link id

GET /deployments/traffic-filter/link-ids

List all of the traffic filter claimed link id.

GET /deployments/traffic-filter/link-ids
curl \
 -X GET https://{{hostname}}/api/v1/deployments/traffic-filter/link-ids
Response examples (200)
{
  "claimed_link_ids": [
    {
      "link_id": "string",
      "azure_endpoint_name": "string",
      "azure_endpoint_guid": "string",
      "region": "string"
    }
  ]
}
Response examples (500)
# Headers
x-cloud-error-codes: traffic_filter_claimed_link_id.request_execution_failed

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}












Create a ruleset

POST /deployments/traffic-filter/rulesets

Creates a ruleset that consists of a set of rules.

Body Required

The specification for traffic filter ruleset.

  • name string Required

    Name of the ruleset

  • Description of the ruleset

  • type string Required

    Type of the ruleset

  • include_by_default boolean Required

    Should the ruleset be automatically included in the new deployments

  • region string Required

    The ruleset can be attached only to deployments in the specific region

  • rules array[object] Required

    List of rules

    Hide rules attributes Show rules attributes object
    • id string

      The rule ID

    • The remote cluster organization ID

    • The remote cluster ID

    • Description of the rule

    • source string

      Allowed traffic filter source: IP address, CIDR mask, or VPC endpoint ID

    • Name of the Azure Private Endpoint to allow connections from

    • Resource GUID of the Azure Private Endpoint to allow connections from

    • An egress traffic filter rule

      Additional properties are allowed.

      Hide egress_rule attributes Show egress_rule attributes object
      • target string Required

        Allowed traffic filter egress target: IP address or CIDR mask

      • ports array[integer(int32)]

        A list of target ports for an egress rule

      • protocol string Required

        The target protocol for an egress rule

        Values are all, tcp, or udp.

Responses

  • The ruleset definition is valid and the creation has started.

    Hide response attribute Show response attribute object
    • id string Required

      The new ruleset ID

  • Error creating the traffic filter ruleset. (code: traffic_filter.request_execution_failed)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is traffic_filter.request_execution_failed.

    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 /deployments/traffic-filter/rulesets
curl \
 -X POST https://{{hostname}}/api/v1/deployments/traffic-filter/rulesets \
 -d '{"name":"string","description":"string","type":"string","include_by_default":true,"region":"string","rules":[{"id":"string","remote_cluster_org_id":"string","remote_cluster_id":"string","description":"string","source":"string","azure_endpoint_name":"string","azure_endpoint_guid":"string","egress_rule":{"target":"string","ports":[42],"protocol":"all"}}]}'
Request examples
{
  "name": "string",
  "description": "string",
  "type": "string",
  "include_by_default": true,
  "region": "string",
  "rules": [
    {
      "id": "string",
      "remote_cluster_org_id": "string",
      "remote_cluster_id": "string",
      "description": "string",
      "source": "string",
      "azure_endpoint_name": "string",
      "azure_endpoint_guid": "string",
      "egress_rule": {
        "target": "string",
        "ports": [
          42
        ],
        "protocol": "all"
      }
    }
  ]
}
Response examples (201)
{
  "id": "string"
}
Response examples (500)
# Headers
x-cloud-error-codes: traffic_filter.request_execution_failed

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}

Retrieves the ruleset by ID.

GET /deployments/traffic-filter/rulesets/{ruleset_id}

Retrieves a list of resources that are associated to the specified ruleset.

Path parameters

Query parameters

  • Retrieves a list of resources that are associated to the specified ruleset.

    Default value is false.

Responses

  • The container for a set of traffic filter rules.

    Hide response attributes Show response attributes object
    • id string Required

      The ruleset ID

    • name string Required

      Name of the ruleset

    • Description of the ruleset

    • type string Required

      Type of the ruleset

    • include_by_default boolean Required

      Should the ruleset be automatically included in the new deployments

    • region string Required

      The ruleset can be attached only to deployments in the specific region

    • rules array[object] Required

      List of rules

      Hide rules attributes Show rules attributes object
      • id string

        The rule ID

      • The remote cluster organization ID

      • The remote cluster ID

      • Description of the rule

      • source string

        Allowed traffic filter source: IP address, CIDR mask, or VPC endpoint ID

      • Name of the Azure Private Endpoint to allow connections from

      • Resource GUID of the Azure Private Endpoint to allow connections from

      • An egress traffic filter rule

        Additional properties are allowed.

        Hide egress_rule attributes Show egress_rule attributes object
        • target string Required

          Allowed traffic filter egress target: IP address or CIDR mask

        • ports array[integer(int32)]

          A list of target ports for an egress rule

        • protocol string Required

          The target protocol for an egress rule

          Values are all, tcp, or udp.

    • associations array[object]

      List of associations. Returned only when include_associations query parameter is true

      Hide associations attributes Show associations attributes object
      • entity_type string Required

        Type of the traffic filter ruleset association, such as 'deployment', 'cluster'

      • id string Required

        ID of the entity, such as the deployment ID or Elasticsearch cluster ID.

    • total_associations integer(int32)

      Total number of associations. This includes associations the user does not have permission to view.Returned only when include_associations query parameter is true

  • The traffic filter ruleset specified by {ruleset_id} cannot be found. (code: traffic_filter.not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is traffic_filter.not_found.

    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

  • Error reading the traffic filter ruleset. (code: traffic_filter.request_execution_failed)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is traffic_filter.request_execution_failed.

    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

GET /deployments/traffic-filter/rulesets/{ruleset_id}
curl \
 -X GET https://{{hostname}}/api/v1/deployments/traffic-filter/rulesets/{ruleset_id}
Response examples (200)
{
  "id": "string",
  "name": "string",
  "description": "string",
  "type": "string",
  "include_by_default": true,
  "region": "string",
  "rules": [
    {
      "id": "string",
      "remote_cluster_org_id": "string",
      "remote_cluster_id": "string",
      "description": "string",
      "source": "string",
      "azure_endpoint_name": "string",
      "azure_endpoint_guid": "string",
      "egress_rule": {
        "target": "string",
        "ports": [
          42
        ],
        "protocol": "all"
      }
    }
  ],
  "associations": [
    {
      "entity_type": "string",
      "id": "string"
    }
  ],
  "total_associations": 42
}
Response examples (404)
# Headers
x-cloud-error-codes: traffic_filter.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (500)
# Headers
x-cloud-error-codes: traffic_filter.request_execution_failed

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}




Delete a ruleset

DELETE /deployments/traffic-filter/rulesets/{ruleset_id}

Deletes the ruleset by ID.

Path parameters

Query parameters

  • When true, ignores the associations and deletes the ruleset. When false, recognizes the associations, which prevents the deletion of the rule set.

    Default value is false.

Responses

  • The traffic filter ruleset was successfully deleted.

    Additional properties are allowed.

  • The traffic filter ruleset specified by {ruleset_id} cannot be found. (code: traffic_filter.not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is traffic_filter.not_found.

    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

  • Error deleting the traffic filter ruleset. (code: traffic_filter.request_execution_failed)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is traffic_filter.request_execution_failed.

    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

DELETE /deployments/traffic-filter/rulesets/{ruleset_id}
curl \
 -X DELETE https://{{hostname}}/api/v1/deployments/traffic-filter/rulesets/{ruleset_id}
Response examples (200)
{}
Response examples (404)
# Headers
x-cloud-error-codes: traffic_filter.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (500)
# Headers
x-cloud-error-codes: traffic_filter.request_execution_failed

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}





























List organizations

GET /organizations

Fetch organizations available to the current user. Currently unavailable in self-hosted ECE.

Responses

  • Organizations fetched successfully

    Hide response attributes Show response attributes object
  • User not found. (code: user.not_found)

    Hide headers attribute Show headers attribute
    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

GET /organizations
curl \
 -X GET https://{{hostname}}/api/v1/organizations
Response examples (200)
{
  "organizations": [
    {
      "id": "string",
      "name": "string",
      "default_disk_usage_alerts_enabled": true,
      "notifications_allowed_email_domains": [
        "string"
      ],
      "billing_contacts": [
        "string"
      ],
      "operational_contacts": [
        "string"
      ]
    }
  ],
  "next_page": "string"
}
Response examples (401)
# Headers
x-cloud-error-codes: user.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}












Update organization

PUT /organizations/{organization_id}

WARNING This endpoint is deprecated and scheduled to be removed in the next major version.

Updates an existing organization. Currently unavailable in self-hosted ECE.

Path parameters

Body Required

The organization to update

Responses

  • Organization updated successfully

    Hide response attributes Show response attributes object
    • Name must be between 2 and 30 characters. (code: organization.invalid_name)
    • User already has an organization. (code: organization.user_organization_already_exists)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are organization.invalid_name or organization.user_organization_already_exists.

    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

  • You are not authorized to perform this action

    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 current user does not have access to the requested organization. (code: organization.invalid_access)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is organization.invalid_access.

    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

  • Organization not found. (code: organization.not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is organization.not_found.

    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

PUT /organizations/{organization_id}
curl \
 -X PUT https://{{hostname}}/api/v1/organizations/{organization_id} \
 -d '{"name":"string","default_disk_usage_alerts_enabled":true,"notifications_allowed_email_domains":["string"],"billing_contacts":["string"],"operational_contacts":["string"]}'
Request examples
{
  "name": "string",
  "default_disk_usage_alerts_enabled": true,
  "notifications_allowed_email_domains": [
    "string"
  ],
  "billing_contacts": [
    "string"
  ],
  "operational_contacts": [
    "string"
  ]
}
Response examples (200)
{
  "id": "string",
  "name": "string",
  "default_disk_usage_alerts_enabled": true,
  "notifications_allowed_email_domains": [
    "string"
  ],
  "billing_contacts": [
    "string"
  ],
  "operational_contacts": [
    "string"
  ]
}
Response examples (400)
# Headers
x-cloud-error-codes: organization.invalid_name

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (401)
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (403)
# Headers
x-cloud-error-codes: organization.invalid_access

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (404)
# Headers
x-cloud-error-codes: organization.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}




Create organization invitations

POST /organizations/{organization_id}/invitations

Creates or refreshes organization invitations. Currently unavailable in self-hosted ECE.

Path parameters

Body Required

The organization invitations to create or refresh

  • emails array[string] Required

    The email addresses to invite to the organization

  • The date and time when the invitation expires. Defaults to three days from now.

Responses

  • Organization invitations created successfully

    Hide response attribute Show response attribute object
    • invitations array[object] Required

      The list of organization invitations

      Hide invitations attributes Show invitations attributes object
      • token string Required

        The token used to accept the invitation

      • email string Required

        The email address to invite to the organization

      • created_at string(date-time) Required

        The date and time when the invitation was created

      • expires_at string(date-time) Required

        The date and time when the invitation expires

      • expired boolean Required

        True if the invitation is expired

      • accepted_at string(date-time)

        The date and time when the invitation was accepted

      • organization object Required

        An organization

        Additional properties are allowed.

        Hide organization attributes Show organization attributes object
    • Invitation email was not valid. (code: organization.invitation_invalid_email)
    • Invitation already sent. (code: organization.invitation_already_exists)
    • User already belongs to organization. (code: organization.user_organization_already_belongs)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are organization.invitation_invalid_email, organization.invitation_already_exists, or organization.user_organization_already_belongs.

    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 current user authentication is not valid. (code: root.invalid_authentication)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is root.invalid_authentication.

    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

    • Organization not found. (code: organization.not_found)
    • User not found. (code: user.not_found)
    • Invitation sender does not belong to organization. (code: organization.user_organization_does_not_belong)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are organization.not_found, user.not_found, or organization.user_organization_does_not_belong.

    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

  • Request exceeds organization invitation creation rate limits. (code: organization.invitations_rate_limit_exceeded)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is organization.invitations_rate_limit_exceeded.

    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 /organizations/{organization_id}/invitations
curl \
 -X POST https://{{hostname}}/api/v1/organizations/{organization_id}/invitations \
 -d '{"emails":["string"],"expires_in":"string"}'
Request examples
{
  "emails": [
    "string"
  ],
  "expires_in": "string"
}
Response examples (201)
{
  "invitations": [
    {
      "token": "string",
      "email": "string",
      "created_at": "2025-05-04T09:42:00+00:00",
      "expires_at": "2025-05-04T09:42:00+00:00",
      "expired": true,
      "accepted_at": "2025-05-04T09:42:00+00:00",
      "organization": {
        "id": "string",
        "name": "string",
        "default_disk_usage_alerts_enabled": true,
        "notifications_allowed_email_domains": [
          "string"
        ],
        "billing_contacts": [
          "string"
        ],
        "operational_contacts": [
          "string"
        ]
      }
    }
  ]
}
Response examples (400)
# Headers
x-cloud-error-codes: organization.invitation_invalid_email

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (403)
# Headers
x-cloud-error-codes: root.invalid_authentication

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (404)
# Headers
x-cloud-error-codes: organization.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (429)
# Headers
x-cloud-error-codes: organization.invitations_rate_limit_exceeded

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}

Delete organization invitations

DELETE /organizations/{organization_id}/invitations/{invitation_tokens}

Deletes one or more organization invitations. Currently unavailable in self-hosted ECE.

Path parameters

Responses

  • Organization invitations deleted successfully

    Additional properties are allowed.

  • No valid invitation token was supplied. (code: root.invalid_data)

    Hide headers attribute Show headers attribute
    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

    • Organization not found. (code: organization.not_found)
    • Invitation not found. (code: organization.invitation_not_found)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are organization.not_found or organization.invitation_not_found.

    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

DELETE /organizations/{organization_id}/invitations/{invitation_tokens}
curl \
 -X DELETE https://{{hostname}}/api/v1/organizations/{organization_id}/invitations/{invitation_tokens}
Response examples (200)
{}
Response examples (400)
# Headers
x-cloud-error-codes: root.invalid_data

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (404)
# Headers
x-cloud-error-codes: organization.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}




Delete organization memberships

DELETE /organizations/{organization_id}/members/{user_ids}

Deletes one or more organization memberships. Currently unavailable in self-hosted ECE.

Path parameters

Query parameters

  • force boolean

    Whether or not to force the removal of Org memberships (effective only for Platform Admins)

    Default value is false.

Responses

  • Organization membership deleted successfully

    Additional properties are allowed.

    • User not found. (code: user.not_found)
    • Organization not found. (code: organization.not_found)
    • Organization membership not found. (code: organization.membership_not_found)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are user.not_found, organization.not_found, or organization.membership_not_found.

    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

DELETE /organizations/{organization_id}/members/{user_ids}
curl \
 -X DELETE https://{{hostname}}/api/v1/organizations/{organization_id}/members/{user_ids}
Response examples (200)
{}
Response examples (404)
# Headers
x-cloud-error-codes: user.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}

Get platform info

GET /platform

Retrieves information about the active platform.

Responses

  • The platform information is retrieved.

    Hide response attributes Show response attributes object
    • version string Required

      Platform version

    • services array[object] Required
      Hide services attributes Show services attributes object
      • type string Required

        Name of service

      • image array[object] Required
        Hide image attributes Show image attributes object
        • id string Required

          Id of runner that hosts the container

        • tag string Required

          Image tag

        • version string Required

          Version of service

        • hash string Required

          Image hash code

    • phone_home_enabled boolean Required

      Is the phone-home service, which returns anonymized usage statistics to Elastic, enabled

    • eula_accepted boolean Required

      Indicates if the End User License Agreement been accepted

    • regions array[object] Required

      Information on regions

      Hide regions attributes Show regions attributes object
      • region_id string Required

        Identifier of this region

      • zookeeper_states object Required

        Information about the Zookeeper state

        Additional properties are allowed.

        Hide zookeeper_states attribute Show zookeeper_states attribute object
        • states array[object] Required

          Information about the nodes

          Hide states attributes Show states attributes object
          • id string Required

            Identifier of this ZooKeeper node

          • state string Required

            State of the ZooKeeper node

            Values are connected, suspended, reconnected, lost, or read_only.

      • allocators object Required

        Information about allocators

        Additional properties are allowed.

        Hide allocators attributes Show allocators attributes object
      • runners object Required

        Information about runners

        Additional properties are allowed.

        Hide runners attributes Show runners attributes object
      • proxies object Required

        Information about proxies

        Additional properties are allowed.

        Hide proxies attributes Show proxies attributes object
        • healthy boolean Required

          Whether all proxies are healthy

        • expected_proxies_count integer(int32) Required

          Expected number of proxies

        • proxies_count integer(int32) Required

          Total number of proxies

        • proxies array[object] Required

          Summarized information about each proxy

          Hide proxies attributes Show proxies attributes object
          • proxy_id string Required

            The proxy identifier

          • healthy boolean Required

            Whether this proxy is healthy

      • container_sets_status object Required

        Information about container sets

        Additional properties are allowed.

        Hide container_sets_status attributes Show container_sets_status attributes object
      • constructors object Required

        Information about constructors

        Additional properties are allowed.

        Hide constructors attribute Show constructors attribute object
        • constructors array[object] Required
          Hide constructors attributes Show constructors attributes object
          • status object Required

            The health status of the constructor.

            Additional properties are allowed.

            Hide status attributes Show status attributes object
            • connected boolean Required

              Whether the constructor is connected

            • maintenance_mode boolean Required

              Whether the constructor is in maintenance mode

          • constructor_id string Required

            Identifier for this constructor

      • coordinators object Required

        Information about coordinators

        Additional properties are allowed.

        Hide coordinators attribute Show coordinators attribute object
        • coordinators array[object] Required

          Summarized information on each coordinator

          Hide coordinators attributes Show coordinators attributes object
          • name string Required

            Name of this coordinator

          • public_hostname string Required

            Public hostname of this coordinator

          • leader_port integer(int32) Required

            Leader port of this coordinator

          • election_port integer(int32) Required

            Election port of this coordinator

          • client_port integer(int32) Required

            Client port of this coordinator

          • attributes object Required

            Attributes of this coordinator

            Hide attributes attribute Show attributes attribute object
            • * string Additional properties
      • resources object Required

        Information about resources

        Additional properties are allowed.

        Hide resources attributes Show resources attributes object
    • unreachable_regions array[object] Required

      Information on currently unreachable regions

      Hide unreachable_regions attribute Show unreachable_regions attribute object
GET /platform
curl \
 -X GET https://{{hostname}}/api/v1/platform
Response examples (200)
{
  "version": "string",
  "services": [
    {
      "type": "string",
      "image": [
        {
          "id": "docker.elastic.co/elastic-cloud-enterprise:1.0.0-GA",
          "tag": "docker.elastic.co/elastic-cloud-enterprise:1.0.0-GA",
          "version": "1.0.0-GA",
          "hash": "sha256:04a5be1ab07de64269ffa52da26044e0ecc36fa1164e7914468e69d65a2090d4"
        }
      ]
    }
  ],
  "phone_home_enabled": true,
  "eula_accepted": true,
  "regions": [
    {
      "region_id": "string",
      "zookeeper_states": {
        "states": [
          {
            "id": "string",
            "state": "connected"
          }
        ]
      },
      "allocators": {
        "healthy": true,
        "zone_summaries": [
          {
            "zone_id": "string",
            "total_allocators": 42,
            "healthy_allocators": 42,
            "connected_allocators": 42,
            "disconnected_allocators": 42,
            "in_maintenance_allocators": 42,
            "connected_capacity": 42,
            "max_available_capacity": 42,
            "instances": 42
          }
        ]
      },
      "runners": {
        "healthy": true,
        "total_runners": 42,
        "healthy_runners": 42,
        "connected_runners": 42,
        "connected_capacity": 42,
        "max_available_capacity": 42,
        "containers_count": 42
      },
      "proxies": {
        "healthy": true,
        "expected_proxies_count": 42,
        "proxies_count": 42,
        "proxies": [
          {
            "proxy_id": "string",
            "healthy": true
          }
        ]
      },
      "container_sets_status": {
        "healthy": true,
        "healthy_container_sets_count": 42,
        "unhealthy_container_sets_count": 42,
        "unhealthy_container_sets": [
          {
            "container_set_id": "string",
            "healthy": true,
            "hidden": true,
            "containers_created_count": 42,
            "containers_started_count": 42,
            "containers_running_count": 42,
            "containers_expected_running_count": 42
          }
        ]
      },
      "constructors": {
        "constructors": [
          {
            "status": {
              "connected": true,
              "maintenance_mode": true
            },
            "constructor_id": "string"
          }
        ]
      },
      "coordinators": {
        "coordinators": [
          {
            "name": "string",
            "public_hostname": "string",
            "leader_port": 42,
            "election_port": 42,
            "client_port": 42,
            "attributes": {
              "additionalProperty1": "string",
              "additionalProperty2": "string"
            }
          }
        ]
      },
      "resources": {
        "healthy": true,
        "available_count": 42,
        "used_count": 42,
        "missing_count": 42,
        "minimum_available_count": 42,
        "account_count": 42
      }
    }
  ],
  "unreachable_regions": [
    {
      "region_id": "string"
    }
  ]
}

List extra certificates

GET /platform/configuration/security/extra_certs

List all of the extra certificates.

Responses

  • The collection of all available extra certificates public chains

    Hide response attribute Show response attribute object
    • certs object Required

      The map of extra certificate ids to their public certificate chains

      Hide certs attribute Show certs attribute object
      • * object Additional properties

        The public portion of the certificate chain that contains the PEM encoded server certificate, intermediate certificates, and the CA certificate. NOTE: The private key, normally included in certificate chains, is omitted.

        Additional properties are allowed.

        Hide * attribute Show * attribute object
        • chain array[string] Required

          The list of PEM encoded X509 certificates that make up the certificate chain

GET /platform/configuration/security/extra_certs
curl \
 -X GET https://{{hostname}}/api/v1/platform/configuration/security/extra_certs
Response examples (200)
{
  "certs": {
    "additionalProperty1": {
      "chain": [
        "string"
      ]
    },
    "additionalProperty2": {
      "chain": [
        "string"
      ]
    }
  }
}




Update extra certificate

PUT /platform/configuration/security/extra_certs/{cert_id}

Add or update an extra certificate.

Path parameters

  • cert_id string Required

    The extra certificate Id. For example, star_my_domain_com.

Body Required

Extra certificate bundle

string string

Responses

  • Updates extra certificate under given id

    Additional properties are allowed.

  • Certificate uses unknown cryptographic algorithm. (code: cert.unknown_cert_algorithm)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is cert.unknown_cert_algorithm.

    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

PUT /platform/configuration/security/extra_certs/{cert_id}
curl \
 -X PUT https://{{hostname}}/api/v1/platform/configuration/security/extra_certs/{cert_id} \
 -d '"string"'
Request examples
string
Response examples (200)
{}
Response examples (400)
# Headers
x-cloud-error-codes: cert.unknown_cert_algorithm

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}




















Delete a instance configuration

DELETE /platform/configuration/instances/{id}

Delete the instance configuration with the given id.

Path parameters

  • id string Required

    ID of the instance configuration

Query parameters

  • version integer

    This is a database-level field, not related to the application-level 'config_version', except as described in the following docs. If specified, checks for conflicts against 'x-cloud-resource-version' from the GET request (the GET's 'config_version' should be left blank if the IC is configuration controlled, ie to get the latest configuration)

Responses

  • Instance configuration specified by {id} was deleted

    Additional properties are allowed.

  • Instance configuration specified by {id} is system owned (code: 'configuration.system_owned')

    Hide response attribute Show response attribute object
    • errors array[object] Required

      A list of errors that occurred in the failing request

      Hide errors attributes Show errors attributes object
      • code string Required

        A structured code representing the error type that occurred

      • message string Required

        A human readable message describing the error that occurred

      • fields array[string]

        If the error can be tied to a specific field or fields in the user request, this lists those fields

  • Instance configuration specified by {id} cannot be found or the operation failed (code: 'configuration.instance_configuration_not_found')

    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

DELETE /platform/configuration/instances/{id}
curl \
 -X DELETE https://{{hostname}}/api/v1/platform/configuration/instances/{id}
Response examples (200)
{}
Response examples (403)
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (404)
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}

Get current security deployment

GET /platform/configuration/security/deployment

Retrieves the current security deployment.

Responses

  • The security deployment was successfully returned

    Hide headers attributes Show headers attributes
    Hide response attributes Show response attributes object
    • cluster_id string Required

      The identifier for the security deployment cluster

    • The identifier for the security deployment

    • name string Required

      The name of the security deployment cluster

    • version string

      The version of the Elasticsearch cluster

    • status string Required

      The current status of the cluster

      Values are initializing, stopping, stopped, rebooting, restarting, reconfiguring, or started.

    • has_pending_plan boolean Required

      True if a pending plan is in progress

    • is_healthy boolean Required

      True if the cluster is healthy

    • is_enabled boolean Required

      True if the security cluster is currently enabled

  • The realm specified by {realm_id} cannot be found. (code: security_deployment.not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is security_deployment.not_found.

    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

GET /platform/configuration/security/deployment
curl \
 -X GET https://{{hostname}}/api/v1/platform/configuration/security/deployment
Response examples (200)
# Headers
x-cloud-resource-version: string
x-cloud-resource-created: string
x-cloud-resource-last-modified: string

# Payload
{
  "cluster_id": "string",
  "deployment_id": "string",
  "name": "string",
  "version": "string",
  "status": "initializing",
  "has_pending_plan": true,
  "is_healthy": true,
  "is_enabled": true
}
Response examples (404)
# Headers
x-cloud-error-codes: security_deployment.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}




Create security deployment

POST /platform/configuration/security/deployment

Creates a new security deployment configuration.

Body Required

The deployment request

  • name string

    The name of the security deployment cluster

  • version string

    The version of the Elasticsearch cluster

  • topology object

    The cluster topology used to create the security deployment cluster

    Additional properties are allowed.

    Hide topology attributes Show topology attributes object
    • size object

      Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.

      Additional properties are allowed.

      Hide size attributes Show size attributes object
      • value integer(int32) Required

        Amount of resource

      • resource string Required

        Type of resource

        Values are memory or storage.

    • zone_count integer(int32)

      The number of zones in which data nodes will be placed

Responses

  • The security deployment was successfully created

    Hide headers attributes Show headers attributes
    Hide response attribute Show response attribute object
    • id string Required

      The ID

    • There is a version conflict. (code: security_deployment.version_conflict)
    • There is a version conflict. (code: security_deployment.already_exists)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are security_deployment.version_conflict or security_deployment.already_exists.

    Hide response attribute Show response attribute object
    • errors array[object] Required

      A list of errors that occurred in the failing request

      Hide errors attributes Show errors attributes object
      • code string Required

        A structured code representing the error type that occurred

      • message string Required

        A human readable message describing the error that occurred

      • fields array[string]

        If the error can be tied to a specific field or fields in the user request, this lists those fields

POST /platform/configuration/security/deployment
curl \
 -X POST https://{{hostname}}/api/v1/platform/configuration/security/deployment \
 -d '{"name":"string","version":"string","topology":{"size":{"value":42,"resource":"memory"},"zone_count":42}}'
Request examples
{
  "name": "string",
  "version": "string",
  "topology": {
    "size": {
      "value": 42,
      "resource": "memory"
    },
    "zone_count": 42
  }
}
Response examples (201)
# Headers
x-cloud-resource-version: string
x-cloud-resource-created: string
x-cloud-resource-last-modified: string

# Payload
{
  "id": "string"
}
Response examples (409)
# Headers
x-cloud-error-codes: security_deployment.version_conflict

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
















Reorder security realms

POST /platform/configuration/security/realms/_reorder

Reorder security realms.

Body Required

The reorder request

  • realms array[string] Required

    The list of security realms in the desired order

Responses

  • The reorder request was successful

    Additional properties are allowed.

    • Invalid ids . (code: security_realm.invalid_ids)
    • Missing ids . (code: security_realm.missing_ids)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are security_realm.invalid_ids or security_realm.missing_ids.

    Hide response attribute Show response attribute object
    • errors array[object] Required

      A list of errors that occurred in the failing request

      Hide errors attributes Show errors attributes object
      • code string Required

        A structured code representing the error type that occurred

      • message string Required

        A human readable message describing the error that occurred

      • fields array[string]

        If the error can be tied to a specific field or fields in the user request, this lists those fields

POST /platform/configuration/security/realms/_reorder
curl \
 -X POST https://{{hostname}}/api/v1/platform/configuration/security/realms/_reorder \
 -d '{"realms":["string"]}'
Request examples
{
  "realms": [
    "string"
  ]
}
Response examples (200)
{}
Response examples (400)
# Headers
x-cloud-error-codes: security_realm.invalid_ids

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}












Delete Active Directory configuration

DELETE /platform/configuration/security/realms/active-directory/{realm_id}

Deletes a single Active Directory configuration.

Path parameters

  • realm_id string Required

    The Elasticsearch Security realm identifier.

Query parameters

  • version string

    When specified, checks for conflicts against the version stored in the persistent store (returned in 'x-cloud-resource-version' of the GET request)

Responses

  • The Active Directory configuration was successfully deleted

    Additional properties are allowed.

  • The realm specified by {realm_id} cannot be found. (code: security_realm.not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is security_realm.not_found.

    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

  • There is a version conflict. (code: security_realm.version_conflict)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is security_realm.version_conflict.

    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

DELETE /platform/configuration/security/realms/active-directory/{realm_id}
curl \
 -X DELETE https://{{hostname}}/api/v1/platform/configuration/security/realms/active-directory/{realm_id}
Response examples (200)
{}
Response examples (404)
# Headers
x-cloud-error-codes: security_realm.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (409)
# Headers
x-cloud-error-codes: security_realm.version_conflict

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}

Create LDAP configuration

POST /platform/configuration/security/realms/ldap

Creates a new LDAP configuration.

Body Required

The LDAP configuration

  • id string Required

    The identifier for the security realm

  • name string Required

    The friendly name of the security realm

  • urls array[string] Required

    The LDAP URLs used to authenticate against, in the format ldap[s]://server:port. Note that ldap and ldaps protocols cannot be mixed together.

  • bind_anonymously boolean Required

    When true, bindDb credentials are ignored

  • bind_type string Required

    The type of user binding to apply

    Values are user_search or user_templates.

  • user_dn_templates array[string]

    The distinguished name template that replaces the user name with the string {0}. Only used when bind_type is set to 'user_templates'.

  • bind_dn string

    The distinguished name of the user that is used to bind to the LDAP and perform searches. Only used when bind_type is set to 'user_search'.

  • The user password that is used to bind to the LDAP server. Only used when bind_type is set to 'user_search'.

  • Specifies the attribute to examine on the user for group membership. If any 'group_search' settings are specified, this setting is ignored. Defaults to 'memberOf'.

  • The LDAP load balancing behavior

    Additional properties are allowed.

    Hide load_balance attributes Show load_balance attributes object
    • type string

      The behavior to use when there are multiple LDAP URLs defined

      Values are failover, dns_failover, round_robin, or dns_round_robin.

    • When using dns_failover or dns_round_robin as the load balancing type, this setting controls the amount of time to cache DNS lookups. Defaults to 1h.

  • The SSL trusted CA certificate bundle URL. The bundle should be a zip file containing a single keystore file 'keystore.ks' in the directory '/ldap/:id/truststore', where :id is the value of the [id] field.

  • The password to the certificate bundle URL truststore

  • The format of the truststore file. Should be jks to use the Java Keystore format or PKCS12 to use PKCS#12 files. The default is jks.

    Values are jks or PKCS12.

  • The role mapping rules associated with the security realm

    Additional properties are allowed.

    Hide role_mappings attributes Show role_mappings attributes object
    • default_roles array[string] Required

      The default roles applied to all users

    • rules array[object] Required

      The role mapping rules to evaluate

      Hide rules attributes Show rules attributes object
      • type string Required

        The type of role mapping rule

        Values are user_dn or group_dn.

      • roles array[string] Required

        The roles that are applied when the mapping rule is successfully evaluated

      • value string Required

        The value to match when evaluating this rule

  • enabled boolean

    When true, enables the security realm

  • order integer(int32)

    The order that the security realm is evaluated

  • Advanced configuration options in YAML format. Any settings defined here will override any configuration set via the API. Note that all keys should omit the 'xpack.security.authc.realms.ldap.{realm_id}' prefix. For example, when the realm ID is set to 'ldap1', the advanced configuration 'xpack.security.authc.realms.ldap.ldap1.ssl.verification_mode: full' should be added as 'ssl.verification_mode: full'.

Responses

  • The LDAP configuration was successfully created

    Hide headers attributes Show headers attributes

    Additional properties are allowed.

    • The realm id is already in use. (code: security_realm.id_conflict)
    • The selected id is not valid. (code: security_realm.invalid_id)
    • Order must be greater than zero. (code: security_realm.invalid_order)
    • Invalid Elasticsearch Security realm type. (code: security_realm.invalid_type)
    • The realm order is already in use. (code: security_realm.order_conflict)
    • Advanced YAML format is invalid. (code: security_realm.invalid_yaml)
    • The url format is invalid. (code: security_realm.invalid_url)
    • Invalid LDAP URL. (code: security_realm.ldap.invalid_url)
    • Invalid certificate bundle URL. (code: security_realm.invalid_bundle_url)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are security_realm.id_conflict, security_realm.invalid_id, security_realm.invalid_order, security_realm.invalid_type, security_realm.order_conflict, security_realm.invalid_yaml, security_realm.invalid_url, security_realm.ldap.invalid_url, or security_realm.invalid_bundle_url.

    Hide response attribute Show response attribute object
    • errors array[object] Required

      A list of errors that occurred in the failing request

      Hide errors attributes Show errors attributes object
      • code string Required

        A structured code representing the error type that occurred

      • message string Required

        A human readable message describing the error that occurred

      • fields array[string]

        If the error can be tied to a specific field or fields in the user request, this lists those fields

POST /platform/configuration/security/realms/ldap
curl \
 -X POST https://{{hostname}}/api/v1/platform/configuration/security/realms/ldap \
 -d '{"id":"string","name":"string","urls":["string"],"bind_anonymously":true,"bind_type":"user_search","group_search":{"base_dn":"string","scope":"sub_tree","filter":"string","user_attribute":"string"},"user_search":{"base_dn":"string","scope":"sub_tree","filter":"string"},"user_dn_templates":["string"],"bind_dn":"string","bind_password":"string","user_group_attribute":"string","load_balance":{"type":"failover","cache_ttl":"string"},"certificate_url":"string","certificate_url_truststore_password":"string","certificate_url_truststore_type":"jks","role_mappings":{"default_roles":["string"],"rules":[{"type":"user_dn","roles":["string"],"value":"string"}]},"enabled":true,"order":42,"override_yaml":"string"}'
Request examples
{
  "id": "string",
  "name": "string",
  "urls": [
    "string"
  ],
  "bind_anonymously": true,
  "bind_type": "user_search",
  "group_search": {
    "base_dn": "string",
    "scope": "sub_tree",
    "filter": "string",
    "user_attribute": "string"
  },
  "user_search": {
    "base_dn": "string",
    "scope": "sub_tree",
    "filter": "string"
  },
  "user_dn_templates": [
    "string"
  ],
  "bind_dn": "string",
  "bind_password": "string",
  "user_group_attribute": "string",
  "load_balance": {
    "type": "failover",
    "cache_ttl": "string"
  },
  "certificate_url": "string",
  "certificate_url_truststore_password": "string",
  "certificate_url_truststore_type": "jks",
  "role_mappings": {
    "default_roles": [
      "string"
    ],
    "rules": [
      {
        "type": "user_dn",
        "roles": [
          "string"
        ],
        "value": "string"
      }
    ]
  },
  "enabled": true,
  "order": 42,
  "override_yaml": "string"
}
Response examples (201)
# Headers
x-cloud-resource-version: string
x-cloud-resource-created: string
x-cloud-resource-last-modified: string

# Payload
{}
Response examples (400)
# Headers
x-cloud-error-codes: security_realm.id_conflict

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
















Get SAML configuration

GET /platform/configuration/security/realms/saml/{realm_id}

Retrieves a single SAML security realm configuration.

Path parameters

  • realm_id string Required

    The Elasticsearch Security realm identifier.

Responses

  • The SAML configuration was successfully retrieved

    Hide headers attributes Show headers attributes
    Hide response attributes Show response attributes object
    • id string Required

      The identifier for the security realm

    • name string Required

      The friendly name of the security realm

    • idp object Required

      The SAML Identity Provider configuration

      Additional properties are allowed.

      Hide idp attributes Show idp attributes object
      • entity_id string Required

        The Entity ID of the SAML Identity Provider. An Entity ID is a URI with a maximum length of 1024 characters. It can be a URL or a URN and can be found in the configuration or the SAML metadata of the Identity Provider.

      • metadata_path string Required

        The URL to a SAML 2.0 metadata file describing the capabilities and configuration of the Identity Provider

      • Indicates whether to utilise the Identity Provider's Single Logout service

    • sp object Required

      The SAML Service Provider configuration

      Additional properties are allowed.

      Hide sp attributes Show sp attributes object
      • entity_id string Required

        The Entity ID to use for this SAML Service Provider. This should be entered as a URI.

      • acs string Required

        The URL of the Assertion Consumer service

      • logout string Required

        The URL of the Single Logout service

    • attributes object Required

      The SAML attribute mapping configuration

      Additional properties are allowed.

      Hide attributes attributes Show attributes attributes object
      • principal string Required

        The name of the SAML attribute that contains the user's principal (username). This name should map to a value that does not contain commas or slashes.

      • groups string Required

        The name of the SAML attribute that contains the user's groups

      • name string

        The name of the SAML attribute that contains the user's full name

      • mail string

        The name of the SAML attribute that contains the user's email address

      • dn string

        The name of the SAML attribute that contains the user's X.50 Distinguished Name

    • The NameID format. If not specified the IdP default is used. Example: 'urn:oasis:names:tc:SAML:2.0:nameid-format:persistent'

    • The role mapping rules associated with the security realm

      Additional properties are allowed.

      Hide role_mappings attributes Show role_mappings attributes object
      • default_roles array[string] Required

        The default roles applied to all users

      • rules array[object] Required

        The role mapping rules to evaluate

        Hide rules attributes Show rules attributes object
        • type string Required

          The type of role mapping rule

          Values are username, groups, or dn.

        • roles array[string] Required

          The roles that are applied when the mapping rule is successfully evaluated

        • value string Required

          The value to match when evaluating this rule

    • enabled boolean

      When true, enables the security realm

    • order integer(int32)

      The order that the security realm is evaluated

    • Specifies whether to set the ForceAuthn attribute when requesting that the IdP authenticate the current user. If set to true, the IdP is required to verify the user's identity, irrespective of any existing sessions they might have.

    • The SAML signing certificate bundle URL. The bundle should be a zip file containing 'signing.key' and 'signing.pem' files in the directory '/saml/:id', where :id is the value of the [id] field.

    • The password to the signing certificate bundle

    • A list of SAML message types that should be signed. Each element in the list should be the local name of a SAML XML Element. Supported element types are AuthnRequest, LogoutRequest and LogoutResponse. Only valid if a signing certificate is also specified.

    • The SAML encryption certificate bundle URL. The bundle should be a zip file containing 'encryption.key' and 'encryption.pem' files in the directory '/saml/:id', where :id is the value of the [id] field.

    • The password to the encryption certificate bundle

    • The SSL trusted CA certificate bundle URL. The bundle should be a zip file containing a single keystore file 'keystore.ks' Note that all keys should omit the 'xpack.security.authc.realms.saml.{realm_id}' prefix. For example, when the realm ID is set to 'saml1', the advanced configuration 'xpack.security.authc.realms.saml.saml1.ssl.verification_mode: full' should be added as 'ssl.verification_mode: full'.

    • The password to the SSL certificate bundle URL truststore

    • The format of the keystore file. Should be jks to use the Java Keystore format or PKCS12 to use PKCS#12 files. The default is jks.

      Values are jks or PKCS12.

    • Advanced configuration options in YAML format. Any settings defined here will override any configuration set via the API. Note that all keys should omit 'xpack.security.authc.realms.{realm_type}.{realm_id}'.

  • The realm specified by {realm_id} cannot be found. (code: security_realm.not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is security_realm.not_found.

    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

GET /platform/configuration/security/realms/saml/{realm_id}
curl \
 -X GET https://{{hostname}}/api/v1/platform/configuration/security/realms/saml/{realm_id}
Response examples (200)
# Headers
x-cloud-resource-version: string
x-cloud-resource-created: string
x-cloud-resource-last-modified: string

# Payload
{
  "id": "string",
  "name": "string",
  "idp": {
    "entity_id": "string",
    "metadata_path": "string",
    "use_single_logout": true
  },
  "sp": {
    "entity_id": "string",
    "acs": "string",
    "logout": "string"
  },
  "attributes": {
    "principal": "string",
    "groups": "string",
    "name": "string",
    "mail": "string",
    "dn": "string"
  },
  "nameid_format": "string",
  "role_mappings": {
    "default_roles": [
      "string"
    ],
    "rules": [
      {
        "type": "username",
        "roles": [
          "string"
        ],
        "value": "string"
      }
    ]
  },
  "enabled": true,
  "order": 42,
  "force_authn": true,
  "signing_certificate_url": "string",
  "signing_certificate_url_password": "string",
  "signing_saml_messages": [
    "string"
  ],
  "encryption_certificate_url": "string",
  "encryption_certificate_url_password": "string",
  "ssl_certificate_url": "string",
  "ssl_certificate_url_truststore_password": "string",
  "ssl_certificate_url_truststore_type": "jks",
  "override_yaml": "string"
}
Response examples (404)
# Headers
x-cloud-error-codes: security_realm.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}




Delete SAML configuration

DELETE /platform/configuration/security/realms/saml/{realm_id}

Deletes a single SAML configuration.

Path parameters

  • realm_id string Required

    The Elasticsearch Security realm identifier.

Query parameters

  • version string

    When specified, checks for conflicts against the version stored in the persistent store (returned in 'x-cloud-resource-version' of the GET request)

Responses

  • The SAML configuration was successfully deleted

    Additional properties are allowed.

  • The realm specified by {realm_id} cannot be found. (code: security_realm.not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is security_realm.not_found.

    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

  • There is a version conflict. (code: security_realm.version_conflict)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is security_realm.version_conflict.

    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

DELETE /platform/configuration/security/realms/saml/{realm_id}
curl \
 -X DELETE https://{{hostname}}/api/v1/platform/configuration/security/realms/saml/{realm_id}
Response examples (200)
{}
Response examples (404)
# Headers
x-cloud-error-codes: security_realm.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (409)
# Headers
x-cloud-error-codes: security_realm.version_conflict

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}




Set TLS certificate

POST /platform/configuration/security/tls/{service_name}

Creates or updates the TLS certificate chain.

Path parameters

  • service_name string Required

    The service certificate chain to read.

    Values are adminconsole, proxy, ui, or internalca.

Body Required

New certificate chain: the PEM encoded RSA private key, followed by the server certificate, followed by the CA certificate

string string

Responses

  • The TLS update has been accepted for the given service and will take effect throughout the system

    Hide response attribute Show response attribute object
    • service string Required

      The service certificate chain that has been updated

      Values are adminconsole, proxy, ui, or internalca.

POST /platform/configuration/security/tls/{service_name}
curl \
 -X POST https://{{hostname}}/api/v1/platform/configuration/security/tls/{service_name} \
 -d '"string"'
Request examples
string
Response examples (202)
{
  "service": "adminconsole"
}




















Platform - Infrastructure

Manage the admin console, allocators, constructors, coordinators, licenses, proxies, roles, and runners.









List Config Store Option

GET /platform/configuration/store

List all existing Config Store Option.

Responses

  • List of existing Config Store Option

    Hide response attribute Show response attribute object
    • values array[object] Required

      List of Config Store Options

      Hide values attributes Show values attributes object
      • name string Required

        Name of this Config Store Option

      • value string Required

        Value of this Config Store Option

      • changed boolean Required

        Whether or not this Config Store Option has changed

GET /platform/configuration/store
curl \
 -X GET https://{{hostname}}/api/v1/platform/configuration/store
Response examples (200)
{
  "values": [
    {
      "name": "string",
      "value": "string",
      "changed": true
    }
  ]
}

Find Config Store Option by name

GET /platform/configuration/store/{config_option_id}

Find Config Store Option by name.

Path parameters

  • config_option_id string Required

    Name of the Config Store Option that you would like to find

Responses

  • Config Store Option retrieved successfully

    Hide headers attributes Show headers attributes
    Hide response attributes Show response attributes object
    • name string Required

      Name of this Config Store Option

    • value string Required

      Value of this Config Store Option

    • changed boolean Required

      Whether or not this Config Store Option has changed

  • Config Store Option do not exist by that name. (code: platform.config.store.not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is platform.config.store.not_found.

    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

GET /platform/configuration/store/{config_option_id}
curl \
 -X GET https://{{hostname}}/api/v1/platform/configuration/store/{config_option_id}
Response examples (200)
# Headers
x-cloud-resource-version: string
x-cloud-resource-created: string
x-cloud-resource-last-modified: string

# Payload
{
  "name": "string",
  "value": "string",
  "changed": true
}
Response examples (404)
# Headers
x-cloud-error-codes: platform.config.store.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}








Delete Config Store Option by name

DELETE /platform/configuration/store/{config_option_id}

Delete Config Store Option by name.

Path parameters

  • config_option_id string Required

    Name of the Config Store Option that you would like to delete

Responses

  • Config Store Option deleted successfully

    Hide headers attributes Show headers attributes

    Additional properties are allowed.

  • Config Store Option do not exist by that name. (code: platform.config.store.not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is platform.config.store.not_found.

    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

DELETE /platform/configuration/store/{config_option_id}
curl \
 -X DELETE https://{{hostname}}/api/v1/platform/configuration/store/{config_option_id}
Response examples (200)
# Headers
x-cloud-resource-version: string
x-cloud-resource-created: string
x-cloud-resource-last-modified: string

# Payload
{}
Response examples (404)
# Headers
x-cloud-error-codes: platform.config.store.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}




Reindex region indices

POST /platform/infrastructure/adminconsoles/_reindex

Start reindex of all regional indices.

Responses

  • Started reindexing of regional indices.

    Additional properties are allowed.

POST /platform/infrastructure/adminconsoles/_reindex
curl \
 -X POST https://{{hostname}}/api/v1/platform/infrastructure/adminconsoles/_reindex
Response examples (202)
{}




Set adminconsole logging settings

PUT /platform/infrastructure/adminconsoles/{adminconsole_id}/logging_settings

Set the logging settings for this adminconsole instance.

Path parameters

Body Required

The new logging settings for the adminconsole instance

  • logging_levels object Required

    Overridden logging levels. Keys are logging levels. Allowable values are OFF, ERROR, WARN, INFO, DEBUG, TRACE, ALL

    Hide logging_levels attribute Show logging_levels attribute object
    • * string Additional properties

Responses

  • The updated logging settings for the adminconsole instance

    Hide headers attributes Show headers attributes
    Hide response attribute Show response attribute object
    • logging_levels object Required

      Overridden logging levels. Keys are logging levels. Allowable values are OFF, ERROR, WARN, INFO, DEBUG, TRACE, ALL

      Hide logging_levels attribute Show logging_levels attribute object
      • * string Additional properties
  • The logging settings for this adminconsole were not found. (code: adminconsoles.logging_settings.not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is adminconsoles.logging_settings.not_found.

    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

PUT /platform/infrastructure/adminconsoles/{adminconsole_id}/logging_settings
curl \
 -X PUT https://{{hostname}}/api/v1/platform/infrastructure/adminconsoles/{adminconsole_id}/logging_settings \
 -d '{"logging_levels":{"additionalProperty1":"string","additionalProperty2":"string"}}'
Request examples
{
  "logging_levels": {
    "additionalProperty1": "string",
    "additionalProperty2": "string"
  }
}
Response examples (200)
# Headers
x-cloud-resource-version: string
x-cloud-resource-created: string
x-cloud-resource-last-modified: string

# Payload
{
  "logging_levels": {
    "additionalProperty1": "string",
    "additionalProperty2": "string"
  }
}
Response examples (404)
# Headers
x-cloud-error-codes: adminconsoles.logging_settings.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}




Update adminconsole logging settings

PATCH /platform/infrastructure/adminconsoles/{adminconsole_id}/logging_settings

All changes in the specified object are applied to the logging settings for this adminconsole instance according to the JSON Merge Patch processing rules. Omitting existing fields causes the same values to be reapplied. Specifying a null value reverts the field to the default value, or removes the field when no default value exists.

Path parameters

Body Required

The logging settings to update

string string

Responses

  • The updated logging settings for the adminconsole instance

    Hide headers attributes Show headers attributes
    Hide response attribute Show response attribute object
    • logging_levels object Required

      Overridden logging levels. Keys are logging levels. Allowable values are OFF, ERROR, WARN, INFO, DEBUG, TRACE, ALL

      Hide logging_levels attribute Show logging_levels attribute object
      • * string Additional properties
  • The update request is invalid. (code: patch.request_malformed)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is patch.request_malformed.

    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 logging settings for this adminconsole were not found. (code: adminconsoles.logging_settings.not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is adminconsoles.logging_settings.not_found.

    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

PATCH /platform/infrastructure/adminconsoles/{adminconsole_id}/logging_settings
curl \
 -X PATCH https://{{hostname}}/api/v1/platform/infrastructure/adminconsoles/{adminconsole_id}/logging_settings \
 -d '"string"'
Request examples
string
Response examples (200)
# Headers
x-cloud-resource-version: string
x-cloud-resource-created: string
x-cloud-resource-last-modified: string

# Payload
{
  "logging_levels": {
    "additionalProperty1": "string",
    "additionalProperty2": "string"
  }
}
Response examples (400)
# Headers
x-cloud-error-codes: patch.request_malformed

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (404)
# Headers
x-cloud-error-codes: adminconsoles.logging_settings.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}




















Resynchronize allocator

POST /platform/infrastructure/allocators/{allocator_id}/_resync

Immediately synchronizes the allocator information in the back-end search index and caches.

Path parameters

Responses

  • The allocator resync operation executed successfully

    Additional properties are allowed.

  • The allocator resync operation failed for allocator {allocator_id}. (code: allocators.resync_failed)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is allocators.resync_failed.

    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}/_resync
curl \
 -X POST https://{{hostname}}/api/v1/platform/infrastructure/allocators/{allocator_id}/_resync
Response examples (200)
{}
Response examples (500)
# Headers
x-cloud-error-codes: allocators.resync_failed

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}












Set allocator logging settings

PUT /platform/infrastructure/allocators/{allocator_id}/logging_settings

Set the logging settings for this allocator instance.

Path parameters

Body Required

The new logging settings for the allocator instance

  • logging_levels object Required

    Overridden logging levels. Keys are logging levels. Allowable values are OFF, ERROR, WARN, INFO, DEBUG, TRACE, ALL

    Hide logging_levels attribute Show logging_levels attribute object
    • * string Additional properties

Responses

  • The updated logging settings for the allocator instance

    Hide headers attributes Show headers attributes
    Hide response attribute Show response attribute object
    • logging_levels object Required

      Overridden logging levels. Keys are logging levels. Allowable values are OFF, ERROR, WARN, INFO, DEBUG, TRACE, ALL

      Hide logging_levels attribute Show logging_levels attribute object
      • * string Additional properties
  • The logging settings for this allocator were not found. (code: allocators.logging_settings.not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is allocators.logging_settings.not_found.

    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

PUT /platform/infrastructure/allocators/{allocator_id}/logging_settings
curl \
 -X PUT https://{{hostname}}/api/v1/platform/infrastructure/allocators/{allocator_id}/logging_settings \
 -d '{"logging_levels":{"additionalProperty1":"string","additionalProperty2":"string"}}'
Request examples
{
  "logging_levels": {
    "additionalProperty1": "string",
    "additionalProperty2": "string"
  }
}
Response examples (200)
# Headers
x-cloud-resource-version: string
x-cloud-resource-created: string
x-cloud-resource-last-modified: string

# Payload
{
  "logging_levels": {
    "additionalProperty1": "string",
    "additionalProperty2": "string"
  }
}
Response examples (404)
# Headers
x-cloud-error-codes: allocators.logging_settings.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}

Delete allocator logging settings

DELETE /platform/infrastructure/allocators/{allocator_id}/logging_settings

Reset the default logging settings for this allocator instance.

Path parameters

Responses

  • The updated logging settings for the allocator instance

    Hide headers attributes Show headers attributes
    Hide response attribute Show response attribute object
    • logging_levels object Required

      Overridden logging levels. Keys are logging levels. Allowable values are OFF, ERROR, WARN, INFO, DEBUG, TRACE, ALL

      Hide logging_levels attribute Show logging_levels attribute object
      • * string Additional properties
  • The logging settings for this allocator were not found. (code: allocators.logging_settings.not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is allocators.logging_settings.not_found.

    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

DELETE /platform/infrastructure/allocators/{allocator_id}/logging_settings
curl \
 -X DELETE https://{{hostname}}/api/v1/platform/infrastructure/allocators/{allocator_id}/logging_settings
Response examples (200)
# Headers
x-cloud-resource-version: string
x-cloud-resource-created: string
x-cloud-resource-last-modified: string

# Payload
{
  "logging_levels": {
    "additionalProperty1": "string",
    "additionalProperty2": "string"
  }
}
Response examples (404)
# Headers
x-cloud-error-codes: allocators.logging_settings.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}




























Get allocator settings

GET /platform/infrastructure/allocators/{allocator_id}/settings

Retrieves the allocator override settings.

Path parameters

Responses

  • Returns the settings for the specified Allocator

    Hide headers attributes Show headers attributes
    Hide response attribute Show response attribute object
    • capacity integer(int32)

      A memory capacity (in MB) that overrides the capacity defined during installation - requires separate restart of Allocator services on each host to take full effect.

  • The allocator specified by {allocator_id} cannot be found. (code: allocators.allocator_not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is allocators.allocator_not_found.

    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

GET /platform/infrastructure/allocators/{allocator_id}/settings
curl \
 -X GET https://{{hostname}}/api/v1/platform/infrastructure/allocators/{allocator_id}/settings
Response examples (200)
# Headers
x-cloud-resource-version: string
x-cloud-resource-created: string
x-cloud-resource-last-modified: string

# Payload
{
  "capacity": 42
}
Response examples (404)
# Headers
x-cloud-error-codes: allocators.allocator_not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}




Update allocator settings

PATCH /platform/infrastructure/allocators/{allocator_id}/settings

Applies the settings as a patch. Only the fields that are referenced in the update are altered.

Path parameters

Query parameters

  • version string

    Checks for conflicts against the metadata version, then returns the value in the x-cloud-resource-version header.

Body Required

The allocator settings to update

string string

Responses

  • Returns the updated settings for the specified allocator

    Hide response attribute Show response attribute object
    • capacity integer(int32)

      A memory capacity (in MB) that overrides the capacity defined during installation - requires separate restart of Allocator services on each host to take full effect.

  • The allocator specified by {allocator_id} cannot be found. (code: allocators.allocator_not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is allocators.allocator_not_found.

    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

PATCH /platform/infrastructure/allocators/{allocator_id}/settings
curl \
 -X PATCH https://{{hostname}}/api/v1/platform/infrastructure/allocators/{allocator_id}/settings \
 -d '"string"'
Request examples
string
Response examples (200)
{
  "capacity": 42
}
Response examples (404)
# Headers
x-cloud-error-codes: allocators.allocator_not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}

List roles

GET /platform/infrastructure/blueprinter/roles

Retrieve all persisted roles.

Responses

  • The role aggregates.

    Hide response attribute Show response attribute object
    • values array[object] Required

      The list

      Hide values attributes Show values attributes object
      • id string Required

        The unique id of this role

      • role object Required

        The role data with metadata

        Additional properties are allowed.

        Hide role attributes Show role attributes object
        • value object Required

          The pending stages

          Additional properties are allowed.

          Hide value attributes Show value attributes object
          • id string Required

            The unique id of this role

          • auto_blessed boolean Required

            Whether runners are automatically allowed to be assigned the containers of this role.

          • containers array[object] Required

            The containers that are part of this role

            Hide containers attributes Show containers attributes object
            • name string Required

              Name of the association

            • container_set_name string Required

              The container set name (id)

            • kind string Required

              The kind of container set, should be one of 'docker', 'elasticsearch', 'kibana', or 'apm'

            • options object Required

              The container options

              Additional properties are allowed.

              Hide options attributes Show options attributes object
              • enabled boolean Required

                Whether this allocation is active and should be created.

              • auths array[object] Required

                ZooKeeper Auths associated with this allocation

                Hide auths attributes Show auths attributes object
                • scheme string Required

                  Scheme identifier, usually "digest"

                • auth string Required

                  Plain-text auth. For the "digest" scheme

              • acls array[object] Required

                ZooKeeper ACLs associated with this allocation

                Hide acls attributes Show acls attributes object
                • id string Required

                  Identity within the provided scheme.

                • perms integer(int32) Required

                  Permissions

                • scheme string Required

                  Auth scheme, in Elastic Cloud this is usually "digest"

              • Secret shared between the runners that have containers in this container set allocated.

              • Secret shared between the containers that are part of this container set.

              • A named feature flag to check whether this container is enabled or not

              • Allocation-specific overrides for the allocated containers

                Additional properties are allowed.

                Hide overrides attribute Show overrides attribute object
                • Overrides for the container allocation.

                  Additional properties are allowed.

                  Hide container_config attributes Show container_config attributes object
                  • env array[string] Required

                    List of environment variables on the form KEY=value

                  • Docker host config

                    Additional properties are allowed.

                    Hide host_config attributes Show host_config attributes object
                    • extra_hosts array[string] Required

                      Ports that are exposed by the container.

                    • Sets the networking mode for the container.

                    • cpu_period integer(int32)

                      The length of a CPU period in microsecond

                    • Docker behavior to apply when a container exits

                      Additional properties are allowed.

                      Hide restart_policy attributes Show restart_policy attributes object
                      • name string Required

                        Identifier for the policy.

                      • maximum_retry_count integer(int32)

                        Maximum number of times to re-try before giving up

                    • port_bindings object Required

                      Map of ports that should be exposed on the host.

                      Hide port_bindings attribute Show port_bindings attribute object
                      • * array[object] Additional properties
                        Hide * attributes Show * attributes object
                        • host_port string Required

                          Port as observed by the host.

                        • host_ip string

                          IP to bind to on the host. I.e {@code 0.0.0.0}

                    • binds array[string] Required

                      Volume bindings for the container.

                    • privileged boolean Required

                      List of environment variables on the form KEY=value

        • meta object Required

          The metadata

          Additional properties are allowed.

          Hide meta attributes Show meta attributes object
      • The blessings data associated with the role

        Additional properties are allowed.

        Hide blessings attributes Show blessings attributes object
        • value object Required

          The blessings

          Additional properties are allowed.

          Hide value attribute Show value attribute object
          • runner_ids_to_blessing object Required

            A mapping of Runner Ids to whether or not they are blessed to run the associated role

            Hide runner_ids_to_blessing attribute Show runner_ids_to_blessing attribute object
            • * object Additional properties

              Whether something is blessed or not

              Additional properties are allowed.

              Hide * attribute Show * attribute object
              • value boolean Required

                Whether something is blessed or not

        • meta object Required

          The metadata

          Additional properties are allowed.

          Hide meta attributes Show meta attributes object
      • pending object

        The pending states data associated with the role

        Additional properties are allowed.

        Hide pending attributes Show pending attributes object
        • value object Required

          The pending stages

          Additional properties are allowed.

          Hide value attribute Show value attribute object
          • A mapping of Runner Ids to whether or not they are waiting to be blessed to run the associated role

            Hide runner_ids_to_pending_state attribute Show runner_ids_to_pending_state attribute object
            • * object Additional properties

              Pending state

              Additional properties are allowed.

              Hide * attribute Show * attribute object
              • value boolean Required

                Whether a runner is pending blessings or not

        • meta object Required

          The metadata

          Additional properties are allowed.

          Hide meta attributes Show meta attributes object
GET /platform/infrastructure/blueprinter/roles
curl \
 -X GET https://{{hostname}}/api/v1/platform/infrastructure/blueprinter/roles
Response examples (200)
{
  "values": [
    {
      "id": "constructor",
      "role": {
        "value": {
          "id": "constructor",
          "auto_blessed": true,
          "containers": [
            {
              "name": "string",
              "container_set_name": "string",
              "kind": "string",
              "options": {
                "enabled": true,
                "auths": [
                  {
                    "scheme": "digest",
                    "auth": "string"
                  }
                ],
                "acls": [
                  {
                    "id": "string",
                    "perms": 42,
                    "scheme": "string"
                  }
                ],
                "runners_secret": "string",
                "container_set_secret": "string",
                "enabled_by_named_feature_flag": "string",
                "overrides": {
                  "container_config": {
                    "env": [
                      "DB=localhost:4567"
                    ],
                    "host_config": {
                      "extra_hosts": [
                        "string"
                      ],
                      "network_mode": "string",
                      "cpu_period": 42,
                      "restart_policy": {
                        "name": "string",
                        "maximum_retry_count": 42
                      },
                      "port_bindings": {
                        "additionalProperty1": [
                          {
                            "host_port": "string",
                            "host_ip": "0.0.0.0"
                          }
                        ],
                        "additionalProperty2": [
                          {
                            "host_port": "string",
                            "host_ip": "0.0.0.0"
                          }
                        ]
                      },
                      "binds": [
                        "string"
                      ],
                      "privileged": true
                    }
                  }
                }
              }
            }
          ]
        },
        "meta": {
          "created_time": "2025-05-04T09:42:00+00:00",
          "modified_time": "2025-05-04T09:42:00+00:00",
          "version": "string"
        }
      },
      "blessings": {
        "value": {
          "runner_ids_to_blessing": {
            "additionalProperty1": {
              "value": true
            },
            "additionalProperty2": {
              "value": true
            }
          }
        },
        "meta": {
          "created_time": "2025-05-04T09:42:00+00:00",
          "modified_time": "2025-05-04T09:42:00+00:00",
          "version": "string"
        }
      },
      "pending": {
        "value": {
          "runner_ids_to_pending_state": {
            "additionalProperty1": {
              "value": true
            },
            "additionalProperty2": {
              "value": true
            }
          }
        },
        "meta": {
          "created_time": "2025-05-04T09:42:00+00:00",
          "modified_time": "2025-05-04T09:42:00+00:00",
          "version": "string"
        }
      }
    }
  ]
}

Create a role

POST /platform/infrastructure/blueprinter/roles

Create a Blueprinter role.

Body Required

The data you want to use for creating a role.

  • role object Required

    The pending stages

    Additional properties are allowed.

    Hide role attributes Show role attributes object
    • id string Required

      The unique id of this role

    • auto_blessed boolean Required

      Whether runners are automatically allowed to be assigned the containers of this role.

    • containers array[object] Required

      The containers that are part of this role

      Hide containers attributes Show containers attributes object
      • name string Required

        Name of the association

      • container_set_name string Required

        The container set name (id)

      • kind string Required

        The kind of container set, should be one of 'docker', 'elasticsearch', 'kibana', or 'apm'

      • options object Required

        The container options

        Additional properties are allowed.

        Hide options attributes Show options attributes object
        • enabled boolean Required

          Whether this allocation is active and should be created.

        • auths array[object] Required

          ZooKeeper Auths associated with this allocation

          Hide auths attributes Show auths attributes object
          • scheme string Required

            Scheme identifier, usually "digest"

          • auth string Required

            Plain-text auth. For the "digest" scheme

        • acls array[object] Required

          ZooKeeper ACLs associated with this allocation

          Hide acls attributes Show acls attributes object
          • id string Required

            Identity within the provided scheme.

          • perms integer(int32) Required

            Permissions

          • scheme string Required

            Auth scheme, in Elastic Cloud this is usually "digest"

        • Secret shared between the runners that have containers in this container set allocated.

        • Secret shared between the containers that are part of this container set.

        • A named feature flag to check whether this container is enabled or not

        • Allocation-specific overrides for the allocated containers

          Additional properties are allowed.

          Hide overrides attribute Show overrides attribute object
          • Overrides for the container allocation.

            Additional properties are allowed.

            Hide container_config attributes Show container_config attributes object
            • env array[string] Required

              List of environment variables on the form KEY=value

            • Docker host config

              Additional properties are allowed.

              Hide host_config attributes Show host_config attributes object
              • extra_hosts array[string] Required

                Ports that are exposed by the container.

              • Sets the networking mode for the container.

              • cpu_period integer(int32)

                The length of a CPU period in microsecond

              • Docker behavior to apply when a container exits

                Additional properties are allowed.

                Hide restart_policy attributes Show restart_policy attributes object
                • name string Required

                  Identifier for the policy.

                • maximum_retry_count integer(int32)

                  Maximum number of times to re-try before giving up

              • port_bindings object Required

                Map of ports that should be exposed on the host.

                Hide port_bindings attribute Show port_bindings attribute object
                • * array[object] Additional properties
                  Hide * attributes Show * attributes object
                  • host_port string Required

                    Port as observed by the host.

                  • host_ip string

                    IP to bind to on the host. I.e {@code 0.0.0.0}

              • binds array[string] Required

                Volume bindings for the container.

              • privileged boolean Required

                List of environment variables on the form KEY=value

  • The blessings

    Additional properties are allowed.

    Hide blessings attribute Show blessings attribute object
    • runner_ids_to_blessing object Required

      A mapping of Runner Ids to whether or not they are blessed to run the associated role

      Hide runner_ids_to_blessing attribute Show runner_ids_to_blessing attribute object
      • * object Additional properties

        Whether something is blessed or not

        Additional properties are allowed.

        Hide * attribute Show * attribute object
        • value boolean Required

          Whether something is blessed or not

Responses

  • The role aggregate that was just created.

    Hide response attributes Show response attributes object
    • id string Required

      The unique id of this role

    • role object Required

      The role data with metadata

      Additional properties are allowed.

      Hide role attributes Show role attributes object
      • value object Required

        The pending stages

        Additional properties are allowed.

        Hide value attributes Show value attributes object
        • id string Required

          The unique id of this role

        • auto_blessed boolean Required

          Whether runners are automatically allowed to be assigned the containers of this role.

        • containers array[object] Required

          The containers that are part of this role

          Hide containers attributes Show containers attributes object
          • name string Required

            Name of the association

          • container_set_name string Required

            The container set name (id)

          • kind string Required

            The kind of container set, should be one of 'docker', 'elasticsearch', 'kibana', or 'apm'

          • options object Required

            The container options

            Additional properties are allowed.

            Hide options attributes Show options attributes object
            • enabled boolean Required

              Whether this allocation is active and should be created.

            • auths array[object] Required

              ZooKeeper Auths associated with this allocation

              Hide auths attributes Show auths attributes object
              • scheme string Required

                Scheme identifier, usually "digest"

              • auth string Required

                Plain-text auth. For the "digest" scheme

            • acls array[object] Required

              ZooKeeper ACLs associated with this allocation

              Hide acls attributes Show acls attributes object
              • id string Required

                Identity within the provided scheme.

              • perms integer(int32) Required

                Permissions

              • scheme string Required

                Auth scheme, in Elastic Cloud this is usually "digest"

            • Secret shared between the runners that have containers in this container set allocated.

            • Secret shared between the containers that are part of this container set.

            • A named feature flag to check whether this container is enabled or not

            • Allocation-specific overrides for the allocated containers

              Additional properties are allowed.

              Hide overrides attribute Show overrides attribute object
              • Overrides for the container allocation.

                Additional properties are allowed.

                Hide container_config attributes Show container_config attributes object
                • env array[string] Required

                  List of environment variables on the form KEY=value

                • Docker host config

                  Additional properties are allowed.

                  Hide host_config attributes Show host_config attributes object
                  • extra_hosts array[string] Required

                    Ports that are exposed by the container.

                  • Sets the networking mode for the container.

                  • cpu_period integer(int32)

                    The length of a CPU period in microsecond

                  • Docker behavior to apply when a container exits

                    Additional properties are allowed.

                    Hide restart_policy attributes Show restart_policy attributes object
                    • name string Required

                      Identifier for the policy.

                    • maximum_retry_count integer(int32)

                      Maximum number of times to re-try before giving up

                  • port_bindings object Required

                    Map of ports that should be exposed on the host.

                    Hide port_bindings attribute Show port_bindings attribute object
                    • * array[object] Additional properties
                      Hide * attributes Show * attributes object
                      • host_port string Required

                        Port as observed by the host.

                      • host_ip string

                        IP to bind to on the host. I.e {@code 0.0.0.0}

                  • binds array[string] Required

                    Volume bindings for the container.

                  • privileged boolean Required

                    List of environment variables on the form KEY=value

      • meta object Required

        The metadata

        Additional properties are allowed.

        Hide meta attributes Show meta attributes object
    • The blessings data associated with the role

      Additional properties are allowed.

      Hide blessings attributes Show blessings attributes object
      • value object Required

        The blessings

        Additional properties are allowed.

        Hide value attribute Show value attribute object
        • runner_ids_to_blessing object Required

          A mapping of Runner Ids to whether or not they are blessed to run the associated role

          Hide runner_ids_to_blessing attribute Show runner_ids_to_blessing attribute object
          • * object Additional properties

            Whether something is blessed or not

            Additional properties are allowed.

            Hide * attribute Show * attribute object
            • value boolean Required

              Whether something is blessed or not

      • meta object Required

        The metadata

        Additional properties are allowed.

        Hide meta attributes Show meta attributes object
    • pending object

      The pending states data associated with the role

      Additional properties are allowed.

      Hide pending attributes Show pending attributes object
      • value object Required

        The pending stages

        Additional properties are allowed.

        Hide value attribute Show value attribute object
        • A mapping of Runner Ids to whether or not they are waiting to be blessed to run the associated role

          Hide runner_ids_to_pending_state attribute Show runner_ids_to_pending_state attribute object
          • * object Additional properties

            Pending state

            Additional properties are allowed.

            Hide * attribute Show * attribute object
            • value boolean Required

              Whether a runner is pending blessings or not

      • meta object Required

        The metadata

        Additional properties are allowed.

        Hide meta attributes Show meta attributes object
  • The role ID you specified is already in use. (code: roles.already_exists)

    Hide headers attribute Show headers attribute
    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/blueprinter/roles
curl \
 -X POST https://{{hostname}}/api/v1/platform/infrastructure/blueprinter/roles \
 -d '{"role":{"id":"constructor","auto_blessed":true,"containers":[{"name":"string","container_set_name":"string","kind":"string","options":{"enabled":true,"auths":[{"scheme":"digest","auth":"string"}],"acls":[{"id":"string","perms":42,"scheme":"string"}],"runners_secret":"string","container_set_secret":"string","enabled_by_named_feature_flag":"string","overrides":{"container_config":{"env":["DB=localhost:4567"],"host_config":{"extra_hosts":["string"],"network_mode":"string","cpu_period":42,"restart_policy":{"name":"string","maximum_retry_count":42},"port_bindings":{"additionalProperty1":[{"host_port":"string","host_ip":"0.0.0.0"}],"additionalProperty2":[{"host_port":"string","host_ip":"0.0.0.0"}]},"binds":["string"],"privileged":true}}}}}]},"blessings":{"runner_ids_to_blessing":{"additionalProperty1":{"value":true},"additionalProperty2":{"value":true}}}}'
Request examples
{
  "role": {
    "id": "constructor",
    "auto_blessed": true,
    "containers": [
      {
        "name": "string",
        "container_set_name": "string",
        "kind": "string",
        "options": {
          "enabled": true,
          "auths": [
            {
              "scheme": "digest",
              "auth": "string"
            }
          ],
          "acls": [
            {
              "id": "string",
              "perms": 42,
              "scheme": "string"
            }
          ],
          "runners_secret": "string",
          "container_set_secret": "string",
          "enabled_by_named_feature_flag": "string",
          "overrides": {
            "container_config": {
              "env": [
                "DB=localhost:4567"
              ],
              "host_config": {
                "extra_hosts": [
                  "string"
                ],
                "network_mode": "string",
                "cpu_period": 42,
                "restart_policy": {
                  "name": "string",
                  "maximum_retry_count": 42
                },
                "port_bindings": {
                  "additionalProperty1": [
                    {
                      "host_port": "string",
                      "host_ip": "0.0.0.0"
                    }
                  ],
                  "additionalProperty2": [
                    {
                      "host_port": "string",
                      "host_ip": "0.0.0.0"
                    }
                  ]
                },
                "binds": [
                  "string"
                ],
                "privileged": true
              }
            }
          }
        }
      }
    ]
  },
  "blessings": {
    "runner_ids_to_blessing": {
      "additionalProperty1": {
        "value": true
      },
      "additionalProperty2": {
        "value": true
      }
    }
  }
}
Response examples (201)
{
  "id": "constructor",
  "role": {
    "value": {
      "id": "constructor",
      "auto_blessed": true,
      "containers": [
        {
          "name": "string",
          "container_set_name": "string",
          "kind": "string",
          "options": {
            "enabled": true,
            "auths": [
              {
                "scheme": "digest",
                "auth": "string"
              }
            ],
            "acls": [
              {
                "id": "string",
                "perms": 42,
                "scheme": "string"
              }
            ],
            "runners_secret": "string",
            "container_set_secret": "string",
            "enabled_by_named_feature_flag": "string",
            "overrides": {
              "container_config": {
                "env": [
                  "DB=localhost:4567"
                ],
                "host_config": {
                  "extra_hosts": [
                    "string"
                  ],
                  "network_mode": "string",
                  "cpu_period": 42,
                  "restart_policy": {
                    "name": "string",
                    "maximum_retry_count": 42
                  },
                  "port_bindings": {
                    "additionalProperty1": [
                      {
                        "host_port": "string",
                        "host_ip": "0.0.0.0"
                      }
                    ],
                    "additionalProperty2": [
                      {
                        "host_port": "string",
                        "host_ip": "0.0.0.0"
                      }
                    ]
                  },
                  "binds": [
                    "string"
                  ],
                  "privileged": true
                }
              }
            }
          }
        }
      ]
    },
    "meta": {
      "created_time": "2025-05-04T09:42:00+00:00",
      "modified_time": "2025-05-04T09:42:00+00:00",
      "version": "string"
    }
  },
  "blessings": {
    "value": {
      "runner_ids_to_blessing": {
        "additionalProperty1": {
          "value": true
        },
        "additionalProperty2": {
          "value": true
        }
      }
    },
    "meta": {
      "created_time": "2025-05-04T09:42:00+00:00",
      "modified_time": "2025-05-04T09:42:00+00:00",
      "version": "string"
    }
  },
  "pending": {
    "value": {
      "runner_ids_to_pending_state": {
        "additionalProperty1": {
          "value": true
        },
        "additionalProperty2": {
          "value": true
        }
      }
    },
    "meta": {
      "created_time": "2025-05-04T09:42:00+00:00",
      "modified_time": "2025-05-04T09:42:00+00:00",
      "version": "string"
    }
  }
}
Response examples (409)
# Headers
x-cloud-error-codes: roles.already_exists

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}

Get role

GET /platform/infrastructure/blueprinter/roles/{blueprinter_role_id}

Retrieve a role.

Path parameters

Responses

  • The role aggregate definition.

    Hide response attributes Show response attributes object
    • id string Required

      The unique id of this role

    • role object Required

      The role data with metadata

      Additional properties are allowed.

      Hide role attributes Show role attributes object
      • value object Required

        The pending stages

        Additional properties are allowed.

        Hide value attributes Show value attributes object
        • id string Required

          The unique id of this role

        • auto_blessed boolean Required

          Whether runners are automatically allowed to be assigned the containers of this role.

        • containers array[object] Required

          The containers that are part of this role

          Hide containers attributes Show containers attributes object
          • name string Required

            Name of the association

          • container_set_name string Required

            The container set name (id)

          • kind string Required

            The kind of container set, should be one of 'docker', 'elasticsearch', 'kibana', or 'apm'

          • options object Required

            The container options

            Additional properties are allowed.

            Hide options attributes Show options attributes object
            • enabled boolean Required

              Whether this allocation is active and should be created.

            • auths array[object] Required

              ZooKeeper Auths associated with this allocation

              Hide auths attributes Show auths attributes object
              • scheme string Required

                Scheme identifier, usually "digest"

              • auth string Required

                Plain-text auth. For the "digest" scheme

            • acls array[object] Required

              ZooKeeper ACLs associated with this allocation

              Hide acls attributes Show acls attributes object
              • id string Required

                Identity within the provided scheme.

              • perms integer(int32) Required

                Permissions

              • scheme string Required

                Auth scheme, in Elastic Cloud this is usually "digest"

            • Secret shared between the runners that have containers in this container set allocated.

            • Secret shared between the containers that are part of this container set.

            • A named feature flag to check whether this container is enabled or not

            • Allocation-specific overrides for the allocated containers

              Additional properties are allowed.

              Hide overrides attribute Show overrides attribute object
              • Overrides for the container allocation.

                Additional properties are allowed.

                Hide container_config attributes Show container_config attributes object
                • env array[string] Required

                  List of environment variables on the form KEY=value

                • Docker host config

                  Additional properties are allowed.

                  Hide host_config attributes Show host_config attributes object
                  • extra_hosts array[string] Required

                    Ports that are exposed by the container.

                  • Sets the networking mode for the container.

                  • cpu_period integer(int32)

                    The length of a CPU period in microsecond

                  • Docker behavior to apply when a container exits

                    Additional properties are allowed.

                    Hide restart_policy attributes Show restart_policy attributes object
                    • name string Required

                      Identifier for the policy.

                    • maximum_retry_count integer(int32)

                      Maximum number of times to re-try before giving up

                  • port_bindings object Required

                    Map of ports that should be exposed on the host.

                    Hide port_bindings attribute Show port_bindings attribute object
                    • * array[object] Additional properties
                      Hide * attributes Show * attributes object
                      • host_port string Required

                        Port as observed by the host.

                      • host_ip string

                        IP to bind to on the host. I.e {@code 0.0.0.0}

                  • binds array[string] Required

                    Volume bindings for the container.

                  • privileged boolean Required

                    List of environment variables on the form KEY=value

      • meta object Required

        The metadata

        Additional properties are allowed.

        Hide meta attributes Show meta attributes object
    • The blessings data associated with the role

      Additional properties are allowed.

      Hide blessings attributes Show blessings attributes object
      • value object Required

        The blessings

        Additional properties are allowed.

        Hide value attribute Show value attribute object
        • runner_ids_to_blessing object Required

          A mapping of Runner Ids to whether or not they are blessed to run the associated role

          Hide runner_ids_to_blessing attribute Show runner_ids_to_blessing attribute object
          • * object Additional properties

            Whether something is blessed or not

            Additional properties are allowed.

            Hide * attribute Show * attribute object
            • value boolean Required

              Whether something is blessed or not

      • meta object Required

        The metadata

        Additional properties are allowed.

        Hide meta attributes Show meta attributes object
    • pending object

      The pending states data associated with the role

      Additional properties are allowed.

      Hide pending attributes Show pending attributes object
      • value object Required

        The pending stages

        Additional properties are allowed.

        Hide value attribute Show value attribute object
        • A mapping of Runner Ids to whether or not they are waiting to be blessed to run the associated role

          Hide runner_ids_to_pending_state attribute Show runner_ids_to_pending_state attribute object
          • * object Additional properties

            Pending state

            Additional properties are allowed.

            Hide * attribute Show * attribute object
            • value boolean Required

              Whether a runner is pending blessings or not

      • meta object Required

        The metadata

        Additional properties are allowed.

        Hide meta attributes Show meta attributes object
  • The role can't be found. (code: roles.not_found)

    Hide headers attribute Show headers attribute
    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

GET /platform/infrastructure/blueprinter/roles/{blueprinter_role_id}
curl \
 -X GET https://{{hostname}}/api/v1/platform/infrastructure/blueprinter/roles/{blueprinter_role_id}
Response examples (200)
{
  "id": "constructor",
  "role": {
    "value": {
      "id": "constructor",
      "auto_blessed": true,
      "containers": [
        {
          "name": "string",
          "container_set_name": "string",
          "kind": "string",
          "options": {
            "enabled": true,
            "auths": [
              {
                "scheme": "digest",
                "auth": "string"
              }
            ],
            "acls": [
              {
                "id": "string",
                "perms": 42,
                "scheme": "string"
              }
            ],
            "runners_secret": "string",
            "container_set_secret": "string",
            "enabled_by_named_feature_flag": "string",
            "overrides": {
              "container_config": {
                "env": [
                  "DB=localhost:4567"
                ],
                "host_config": {
                  "extra_hosts": [
                    "string"
                  ],
                  "network_mode": "string",
                  "cpu_period": 42,
                  "restart_policy": {
                    "name": "string",
                    "maximum_retry_count": 42
                  },
                  "port_bindings": {
                    "additionalProperty1": [
                      {
                        "host_port": "string",
                        "host_ip": "0.0.0.0"
                      }
                    ],
                    "additionalProperty2": [
                      {
                        "host_port": "string",
                        "host_ip": "0.0.0.0"
                      }
                    ]
                  },
                  "binds": [
                    "string"
                  ],
                  "privileged": true
                }
              }
            }
          }
        }
      ]
    },
    "meta": {
      "created_time": "2025-05-04T09:42:00+00:00",
      "modified_time": "2025-05-04T09:42:00+00:00",
      "version": "string"
    }
  },
  "blessings": {
    "value": {
      "runner_ids_to_blessing": {
        "additionalProperty1": {
          "value": true
        },
        "additionalProperty2": {
          "value": true
        }
      }
    },
    "meta": {
      "created_time": "2025-05-04T09:42:00+00:00",
      "modified_time": "2025-05-04T09:42:00+00:00",
      "version": "string"
    }
  },
  "pending": {
    "value": {
      "runner_ids_to_pending_state": {
        "additionalProperty1": {
          "value": true
        },
        "additionalProperty2": {
          "value": true
        }
      }
    },
    "meta": {
      "created_time": "2025-05-04T09:42:00+00:00",
      "modified_time": "2025-05-04T09:42:00+00:00",
      "version": "string"
    }
  }
}
Response examples (404)
# Headers
x-cloud-error-codes: roles.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}

Update role

PUT /platform/infrastructure/blueprinter/roles/{blueprinter_role_id}

Update a role.

Path parameters

Query parameters

  • version integer

    When specified, checks for conflicts against the version stored in the persistent store (returned in 'x-cloud-resource-version' of the GET request)

Body Required

The role update data.

  • id string Required

    The unique id of this role

  • auto_blessed boolean Required

    Whether runners are automatically allowed to be assigned the containers of this role.

  • containers array[object] Required

    The containers that are part of this role

    Hide containers attributes Show containers attributes object
    • name string Required

      Name of the association

    • container_set_name string Required

      The container set name (id)

    • kind string Required

      The kind of container set, should be one of 'docker', 'elasticsearch', 'kibana', or 'apm'

    • options object Required

      The container options

      Additional properties are allowed.

      Hide options attributes Show options attributes object
      • enabled boolean Required

        Whether this allocation is active and should be created.

      • auths array[object] Required

        ZooKeeper Auths associated with this allocation

        Hide auths attributes Show auths attributes object
        • scheme string Required

          Scheme identifier, usually "digest"

        • auth string Required

          Plain-text auth. For the "digest" scheme

      • acls array[object] Required

        ZooKeeper ACLs associated with this allocation

        Hide acls attributes Show acls attributes object
        • id string Required

          Identity within the provided scheme.

        • perms integer(int32) Required

          Permissions

        • scheme string Required

          Auth scheme, in Elastic Cloud this is usually "digest"

      • Secret shared between the runners that have containers in this container set allocated.

      • Secret shared between the containers that are part of this container set.

      • A named feature flag to check whether this container is enabled or not

      • Allocation-specific overrides for the allocated containers

        Additional properties are allowed.

        Hide overrides attribute Show overrides attribute object
        • Overrides for the container allocation.

          Additional properties are allowed.

          Hide container_config attributes Show container_config attributes object
          • env array[string] Required

            List of environment variables on the form KEY=value

          • Docker host config

            Additional properties are allowed.

            Hide host_config attributes Show host_config attributes object
            • extra_hosts array[string] Required

              Ports that are exposed by the container.

            • Sets the networking mode for the container.

            • cpu_period integer(int32)

              The length of a CPU period in microsecond

            • Docker behavior to apply when a container exits

              Additional properties are allowed.

              Hide restart_policy attributes Show restart_policy attributes object
              • name string Required

                Identifier for the policy.

              • maximum_retry_count integer(int32)

                Maximum number of times to re-try before giving up

            • port_bindings object Required

              Map of ports that should be exposed on the host.

              Hide port_bindings attribute Show port_bindings attribute object
              • * array[object] Additional properties
                Hide * attributes Show * attributes object
                • host_port string Required

                  Port as observed by the host.

                • host_ip string

                  IP to bind to on the host. I.e {@code 0.0.0.0}

            • binds array[string] Required

              Volume bindings for the container.

            • privileged boolean Required

              List of environment variables on the form KEY=value

Responses

  • The role was successfully updated.

    Hide response attributes Show response attributes object
    • id string Required

      The unique id of this role

    • role object Required

      The role data with metadata

      Additional properties are allowed.

      Hide role attributes Show role attributes object
      • value object Required

        The pending stages

        Additional properties are allowed.

        Hide value attributes Show value attributes object
        • id string Required

          The unique id of this role

        • auto_blessed boolean Required

          Whether runners are automatically allowed to be assigned the containers of this role.

        • containers array[object] Required

          The containers that are part of this role

          Hide containers attributes Show containers attributes object
          • name string Required

            Name of the association

          • container_set_name string Required

            The container set name (id)

          • kind string Required

            The kind of container set, should be one of 'docker', 'elasticsearch', 'kibana', or 'apm'

          • options object Required

            The container options

            Additional properties are allowed.

            Hide options attributes Show options attributes object
            • enabled boolean Required

              Whether this allocation is active and should be created.

            • auths array[object] Required

              ZooKeeper Auths associated with this allocation

              Hide auths attributes Show auths attributes object
              • scheme string Required

                Scheme identifier, usually "digest"

              • auth string Required

                Plain-text auth. For the "digest" scheme

            • acls array[object] Required

              ZooKeeper ACLs associated with this allocation

              Hide acls attributes Show acls attributes object
              • id string Required

                Identity within the provided scheme.

              • perms integer(int32) Required

                Permissions

              • scheme string Required

                Auth scheme, in Elastic Cloud this is usually "digest"

            • Secret shared between the runners that have containers in this container set allocated.

            • Secret shared between the containers that are part of this container set.

            • A named feature flag to check whether this container is enabled or not

            • Allocation-specific overrides for the allocated containers

              Additional properties are allowed.

              Hide overrides attribute Show overrides attribute object
              • Overrides for the container allocation.

                Additional properties are allowed.

                Hide container_config attributes Show container_config attributes object
                • env array[string] Required

                  List of environment variables on the form KEY=value

                • Docker host config

                  Additional properties are allowed.

                  Hide host_config attributes Show host_config attributes object
                  • extra_hosts array[string] Required

                    Ports that are exposed by the container.

                  • Sets the networking mode for the container.

                  • cpu_period integer(int32)

                    The length of a CPU period in microsecond

                  • Docker behavior to apply when a container exits

                    Additional properties are allowed.

                    Hide restart_policy attributes Show restart_policy attributes object
                    • name string Required

                      Identifier for the policy.

                    • maximum_retry_count integer(int32)

                      Maximum number of times to re-try before giving up

                  • port_bindings object Required

                    Map of ports that should be exposed on the host.

                    Hide port_bindings attribute Show port_bindings attribute object
                    • * array[object] Additional properties
                      Hide * attributes Show * attributes object
                      • host_port string Required

                        Port as observed by the host.

                      • host_ip string

                        IP to bind to on the host. I.e {@code 0.0.0.0}

                  • binds array[string] Required

                    Volume bindings for the container.

                  • privileged boolean Required

                    List of environment variables on the form KEY=value

      • meta object Required

        The metadata

        Additional properties are allowed.

        Hide meta attributes Show meta attributes object
    • The blessings data associated with the role

      Additional properties are allowed.

      Hide blessings attributes Show blessings attributes object
      • value object Required

        The blessings

        Additional properties are allowed.

        Hide value attribute Show value attribute object
        • runner_ids_to_blessing object Required

          A mapping of Runner Ids to whether or not they are blessed to run the associated role

          Hide runner_ids_to_blessing attribute Show runner_ids_to_blessing attribute object
          • * object Additional properties

            Whether something is blessed or not

            Additional properties are allowed.

            Hide * attribute Show * attribute object
            • value boolean Required

              Whether something is blessed or not

      • meta object Required

        The metadata

        Additional properties are allowed.

        Hide meta attributes Show meta attributes object
    • pending object

      The pending states data associated with the role

      Additional properties are allowed.

      Hide pending attributes Show pending attributes object
      • value object Required

        The pending stages

        Additional properties are allowed.

        Hide value attribute Show value attribute object
        • A mapping of Runner Ids to whether or not they are waiting to be blessed to run the associated role

          Hide runner_ids_to_pending_state attribute Show runner_ids_to_pending_state attribute object
          • * object Additional properties

            Pending state

            Additional properties are allowed.

            Hide * attribute Show * attribute object
            • value boolean Required

              Whether a runner is pending blessings or not

      • meta object Required

        The metadata

        Additional properties are allowed.

        Hide meta attributes Show meta attributes object
  • The role is currently running container sets. (code: roles.in_use)

    Hide headers attribute Show headers attribute
    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 role can't be found. (code: roles.not_found)

    Hide headers attribute Show headers attribute
    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

  • Your request failed because the specified version does not match the persisted version. (code: roles.version_conflict)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is roles.version_conflict.

    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

PUT /platform/infrastructure/blueprinter/roles/{blueprinter_role_id}
curl \
 -X PUT https://{{hostname}}/api/v1/platform/infrastructure/blueprinter/roles/{blueprinter_role_id} \
 -d '{"id":"constructor","auto_blessed":true,"containers":[{"name":"string","container_set_name":"string","kind":"string","options":{"enabled":true,"auths":[{"scheme":"digest","auth":"string"}],"acls":[{"id":"string","perms":42,"scheme":"string"}],"runners_secret":"string","container_set_secret":"string","enabled_by_named_feature_flag":"string","overrides":{"container_config":{"env":["DB=localhost:4567"],"host_config":{"extra_hosts":["string"],"network_mode":"string","cpu_period":42,"restart_policy":{"name":"string","maximum_retry_count":42},"port_bindings":{"additionalProperty1":[{"host_port":"string","host_ip":"0.0.0.0"}],"additionalProperty2":[{"host_port":"string","host_ip":"0.0.0.0"}]},"binds":["string"],"privileged":true}}}}}]}'
Request examples
{
  "id": "constructor",
  "auto_blessed": true,
  "containers": [
    {
      "name": "string",
      "container_set_name": "string",
      "kind": "string",
      "options": {
        "enabled": true,
        "auths": [
          {
            "scheme": "digest",
            "auth": "string"
          }
        ],
        "acls": [
          {
            "id": "string",
            "perms": 42,
            "scheme": "string"
          }
        ],
        "runners_secret": "string",
        "container_set_secret": "string",
        "enabled_by_named_feature_flag": "string",
        "overrides": {
          "container_config": {
            "env": [
              "DB=localhost:4567"
            ],
            "host_config": {
              "extra_hosts": [
                "string"
              ],
              "network_mode": "string",
              "cpu_period": 42,
              "restart_policy": {
                "name": "string",
                "maximum_retry_count": 42
              },
              "port_bindings": {
                "additionalProperty1": [
                  {
                    "host_port": "string",
                    "host_ip": "0.0.0.0"
                  }
                ],
                "additionalProperty2": [
                  {
                    "host_port": "string",
                    "host_ip": "0.0.0.0"
                  }
                ]
              },
              "binds": [
                "string"
              ],
              "privileged": true
            }
          }
        }
      }
    }
  ]
}
Response examples (200)
{
  "id": "constructor",
  "role": {
    "value": {
      "id": "constructor",
      "auto_blessed": true,
      "containers": [
        {
          "name": "string",
          "container_set_name": "string",
          "kind": "string",
          "options": {
            "enabled": true,
            "auths": [
              {
                "scheme": "digest",
                "auth": "string"
              }
            ],
            "acls": [
              {
                "id": "string",
                "perms": 42,
                "scheme": "string"
              }
            ],
            "runners_secret": "string",
            "container_set_secret": "string",
            "enabled_by_named_feature_flag": "string",
            "overrides": {
              "container_config": {
                "env": [
                  "DB=localhost:4567"
                ],
                "host_config": {
                  "extra_hosts": [
                    "string"
                  ],
                  "network_mode": "string",
                  "cpu_period": 42,
                  "restart_policy": {
                    "name": "string",
                    "maximum_retry_count": 42
                  },
                  "port_bindings": {
                    "additionalProperty1": [
                      {
                        "host_port": "string",
                        "host_ip": "0.0.0.0"
                      }
                    ],
                    "additionalProperty2": [
                      {
                        "host_port": "string",
                        "host_ip": "0.0.0.0"
                      }
                    ]
                  },
                  "binds": [
                    "string"
                  ],
                  "privileged": true
                }
              }
            }
          }
        }
      ]
    },
    "meta": {
      "created_time": "2025-05-04T09:42:00+00:00",
      "modified_time": "2025-05-04T09:42:00+00:00",
      "version": "string"
    }
  },
  "blessings": {
    "value": {
      "runner_ids_to_blessing": {
        "additionalProperty1": {
          "value": true
        },
        "additionalProperty2": {
          "value": true
        }
      }
    },
    "meta": {
      "created_time": "2025-05-04T09:42:00+00:00",
      "modified_time": "2025-05-04T09:42:00+00:00",
      "version": "string"
    }
  },
  "pending": {
    "value": {
      "runner_ids_to_pending_state": {
        "additionalProperty1": {
          "value": true
        },
        "additionalProperty2": {
          "value": true
        }
      }
    },
    "meta": {
      "created_time": "2025-05-04T09:42:00+00:00",
      "modified_time": "2025-05-04T09:42:00+00:00",
      "version": "string"
    }
  }
}
Response examples (400)
# Headers
x-cloud-error-codes: roles.in_use

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (404)
# Headers
x-cloud-error-codes: roles.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (409)
# Headers
x-cloud-error-codes: roles.version_conflict

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}




Set blessings

PUT /platform/infrastructure/blueprinter/roles/{blueprinter_role_id}/blessings

Set blessings for a role.

Path parameters

Query parameters

  • version integer

    When specified, checks for conflicts against the version stored in the persistent store (returned in 'x-cloud-resource-version' of the GET request)

Body Required

The blessings to set.

  • runner_ids_to_blessing object Required

    A mapping of Runner Ids to whether or not they are blessed to run the associated role

    Hide runner_ids_to_blessing attribute Show runner_ids_to_blessing attribute object
    • * object Additional properties

      Whether something is blessed or not

      Additional properties are allowed.

      Hide * attribute Show * attribute object
      • value boolean Required

        Whether something is blessed or not

Responses

  • The blessings were successfully set.

    Hide response attributes Show response attributes object
    • id string Required

      The unique id of this role

    • role object Required

      The role data with metadata

      Additional properties are allowed.

      Hide role attributes Show role attributes object
      • value object Required

        The pending stages

        Additional properties are allowed.

        Hide value attributes Show value attributes object
        • id string Required

          The unique id of this role

        • auto_blessed boolean Required

          Whether runners are automatically allowed to be assigned the containers of this role.

        • containers array[object] Required

          The containers that are part of this role

          Hide containers attributes Show containers attributes object
          • name string Required

            Name of the association

          • container_set_name string Required

            The container set name (id)

          • kind string Required

            The kind of container set, should be one of 'docker', 'elasticsearch', 'kibana', or 'apm'

          • options object Required

            The container options

            Additional properties are allowed.

            Hide options attributes Show options attributes object
            • enabled boolean Required

              Whether this allocation is active and should be created.

            • auths array[object] Required

              ZooKeeper Auths associated with this allocation

              Hide auths attributes Show auths attributes object
              • scheme string Required

                Scheme identifier, usually "digest"

              • auth string Required

                Plain-text auth. For the "digest" scheme

            • acls array[object] Required

              ZooKeeper ACLs associated with this allocation

              Hide acls attributes Show acls attributes object
              • id string Required

                Identity within the provided scheme.

              • perms integer(int32) Required

                Permissions

              • scheme string Required

                Auth scheme, in Elastic Cloud this is usually "digest"

            • Secret shared between the runners that have containers in this container set allocated.

            • Secret shared between the containers that are part of this container set.

            • A named feature flag to check whether this container is enabled or not

            • Allocation-specific overrides for the allocated containers

              Additional properties are allowed.

              Hide overrides attribute Show overrides attribute object
              • Overrides for the container allocation.

                Additional properties are allowed.

                Hide container_config attributes Show container_config attributes object
                • env array[string] Required

                  List of environment variables on the form KEY=value

                • Docker host config

                  Additional properties are allowed.

                  Hide host_config attributes Show host_config attributes object
                  • extra_hosts array[string] Required

                    Ports that are exposed by the container.

                  • Sets the networking mode for the container.

                  • cpu_period integer(int32)

                    The length of a CPU period in microsecond

                  • Docker behavior to apply when a container exits

                    Additional properties are allowed.

                    Hide restart_policy attributes Show restart_policy attributes object
                    • name string Required

                      Identifier for the policy.

                    • maximum_retry_count integer(int32)

                      Maximum number of times to re-try before giving up

                  • port_bindings object Required

                    Map of ports that should be exposed on the host.

                    Hide port_bindings attribute Show port_bindings attribute object
                    • * array[object] Additional properties
                      Hide * attributes Show * attributes object
                      • host_port string Required

                        Port as observed by the host.

                      • host_ip string

                        IP to bind to on the host. I.e {@code 0.0.0.0}

                  • binds array[string] Required

                    Volume bindings for the container.

                  • privileged boolean Required

                    List of environment variables on the form KEY=value

      • meta object Required

        The metadata

        Additional properties are allowed.

        Hide meta attributes Show meta attributes object
    • The blessings data associated with the role

      Additional properties are allowed.

      Hide blessings attributes Show blessings attributes object
      • value object Required

        The blessings

        Additional properties are allowed.

        Hide value attribute Show value attribute object
        • runner_ids_to_blessing object Required

          A mapping of Runner Ids to whether or not they are blessed to run the associated role

          Hide runner_ids_to_blessing attribute Show runner_ids_to_blessing attribute object
          • * object Additional properties

            Whether something is blessed or not

            Additional properties are allowed.

            Hide * attribute Show * attribute object
            • value boolean Required

              Whether something is blessed or not

      • meta object Required

        The metadata

        Additional properties are allowed.

        Hide meta attributes Show meta attributes object
    • pending object

      The pending states data associated with the role

      Additional properties are allowed.

      Hide pending attributes Show pending attributes object
      • value object Required

        The pending stages

        Additional properties are allowed.

        Hide value attribute Show value attribute object
        • A mapping of Runner Ids to whether or not they are waiting to be blessed to run the associated role

          Hide runner_ids_to_pending_state attribute Show runner_ids_to_pending_state attribute object
          • * object Additional properties

            Pending state

            Additional properties are allowed.

            Hide * attribute Show * attribute object
            • value boolean Required

              Whether a runner is pending blessings or not

      • meta object Required

        The metadata

        Additional properties are allowed.

        Hide meta attributes Show meta attributes object
  • The role can't be found. (code: roles.not_found)

    Hide headers attribute Show headers attribute
    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

  • Your request failed because the specified version does not match the persisted version. (code: roles.version_conflict)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is roles.version_conflict.

    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

PUT /platform/infrastructure/blueprinter/roles/{blueprinter_role_id}/blessings
curl \
 -X PUT https://{{hostname}}/api/v1/platform/infrastructure/blueprinter/roles/{blueprinter_role_id}/blessings \
 -d '{"runner_ids_to_blessing":{"additionalProperty1":{"value":true},"additionalProperty2":{"value":true}}}'
Request examples
{
  "runner_ids_to_blessing": {
    "additionalProperty1": {
      "value": true
    },
    "additionalProperty2": {
      "value": true
    }
  }
}
Response examples (200)
{
  "id": "constructor",
  "role": {
    "value": {
      "id": "constructor",
      "auto_blessed": true,
      "containers": [
        {
          "name": "string",
          "container_set_name": "string",
          "kind": "string",
          "options": {
            "enabled": true,
            "auths": [
              {
                "scheme": "digest",
                "auth": "string"
              }
            ],
            "acls": [
              {
                "id": "string",
                "perms": 42,
                "scheme": "string"
              }
            ],
            "runners_secret": "string",
            "container_set_secret": "string",
            "enabled_by_named_feature_flag": "string",
            "overrides": {
              "container_config": {
                "env": [
                  "DB=localhost:4567"
                ],
                "host_config": {
                  "extra_hosts": [
                    "string"
                  ],
                  "network_mode": "string",
                  "cpu_period": 42,
                  "restart_policy": {
                    "name": "string",
                    "maximum_retry_count": 42
                  },
                  "port_bindings": {
                    "additionalProperty1": [
                      {
                        "host_port": "string",
                        "host_ip": "0.0.0.0"
                      }
                    ],
                    "additionalProperty2": [
                      {
                        "host_port": "string",
                        "host_ip": "0.0.0.0"
                      }
                    ]
                  },
                  "binds": [
                    "string"
                  ],
                  "privileged": true
                }
              }
            }
          }
        }
      ]
    },
    "meta": {
      "created_time": "2025-05-04T09:42:00+00:00",
      "modified_time": "2025-05-04T09:42:00+00:00",
      "version": "string"
    }
  },
  "blessings": {
    "value": {
      "runner_ids_to_blessing": {
        "additionalProperty1": {
          "value": true
        },
        "additionalProperty2": {
          "value": true
        }
      }
    },
    "meta": {
      "created_time": "2025-05-04T09:42:00+00:00",
      "modified_time": "2025-05-04T09:42:00+00:00",
      "version": "string"
    }
  },
  "pending": {
    "value": {
      "runner_ids_to_pending_state": {
        "additionalProperty1": {
          "value": true
        },
        "additionalProperty2": {
          "value": true
        }
      }
    },
    "meta": {
      "created_time": "2025-05-04T09:42:00+00:00",
      "modified_time": "2025-05-04T09:42:00+00:00",
      "version": "string"
    }
  }
}
Response examples (404)
# Headers
x-cloud-error-codes: roles.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (409)
# Headers
x-cloud-error-codes: roles.version_conflict

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}

Add Blessing

PUT /platform/infrastructure/blueprinter/roles/{blueprinter_role_id}/blessings/{runner_id}

Add a Blessing for a runner to a role.

Path parameters

Query parameters

  • version integer

    When specified, checks for conflicts against the version stored in the persistent store (returned in 'x-cloud-resource-version' of the GET request)

Body Required

The blessing to add.

  • value boolean Required

    Whether something is blessed or not

Responses

  • Blessing added successfully.

    Hide response attributes Show response attributes object
    • id string Required

      The unique id of this role

    • role object Required

      The role data with metadata

      Additional properties are allowed.

      Hide role attributes Show role attributes object
      • value object Required

        The pending stages

        Additional properties are allowed.

        Hide value attributes Show value attributes object
        • id string Required

          The unique id of this role

        • auto_blessed boolean Required

          Whether runners are automatically allowed to be assigned the containers of this role.

        • containers array[object] Required

          The containers that are part of this role

          Hide containers attributes Show containers attributes object
          • name string Required

            Name of the association

          • container_set_name string Required

            The container set name (id)

          • kind string Required

            The kind of container set, should be one of 'docker', 'elasticsearch', 'kibana', or 'apm'

          • options object Required

            The container options

            Additional properties are allowed.

            Hide options attributes Show options attributes object
            • enabled boolean Required

              Whether this allocation is active and should be created.

            • auths array[object] Required

              ZooKeeper Auths associated with this allocation

              Hide auths attributes Show auths attributes object
              • scheme string Required

                Scheme identifier, usually "digest"

              • auth string Required

                Plain-text auth. For the "digest" scheme

            • acls array[object] Required

              ZooKeeper ACLs associated with this allocation

              Hide acls attributes Show acls attributes object
              • id string Required

                Identity within the provided scheme.

              • perms integer(int32) Required

                Permissions

              • scheme string Required

                Auth scheme, in Elastic Cloud this is usually "digest"

            • Secret shared between the runners that have containers in this container set allocated.

            • Secret shared between the containers that are part of this container set.

            • A named feature flag to check whether this container is enabled or not

            • Allocation-specific overrides for the allocated containers

              Additional properties are allowed.

              Hide overrides attribute Show overrides attribute object
              • Overrides for the container allocation.

                Additional properties are allowed.

                Hide container_config attributes Show container_config attributes object
                • env array[string] Required

                  List of environment variables on the form KEY=value

                • Docker host config

                  Additional properties are allowed.

                  Hide host_config attributes Show host_config attributes object
                  • extra_hosts array[string] Required

                    Ports that are exposed by the container.

                  • Sets the networking mode for the container.

                  • cpu_period integer(int32)

                    The length of a CPU period in microsecond

                  • Docker behavior to apply when a container exits

                    Additional properties are allowed.

                    Hide restart_policy attributes Show restart_policy attributes object
                    • name string Required

                      Identifier for the policy.

                    • maximum_retry_count integer(int32)

                      Maximum number of times to re-try before giving up

                  • port_bindings object Required

                    Map of ports that should be exposed on the host.

                    Hide port_bindings attribute Show port_bindings attribute object
                    • * array[object] Additional properties
                      Hide * attributes Show * attributes object
                      • host_port string Required

                        Port as observed by the host.

                      • host_ip string

                        IP to bind to on the host. I.e {@code 0.0.0.0}

                  • binds array[string] Required

                    Volume bindings for the container.

                  • privileged boolean Required

                    List of environment variables on the form KEY=value

      • meta object Required

        The metadata

        Additional properties are allowed.

        Hide meta attributes Show meta attributes object
    • The blessings data associated with the role

      Additional properties are allowed.

      Hide blessings attributes Show blessings attributes object
      • value object Required

        The blessings

        Additional properties are allowed.

        Hide value attribute Show value attribute object
        • runner_ids_to_blessing object Required

          A mapping of Runner Ids to whether or not they are blessed to run the associated role

          Hide runner_ids_to_blessing attribute Show runner_ids_to_blessing attribute object
          • * object Additional properties

            Whether something is blessed or not

            Additional properties are allowed.

            Hide * attribute Show * attribute object
            • value boolean Required

              Whether something is blessed or not

      • meta object Required

        The metadata

        Additional properties are allowed.

        Hide meta attributes Show meta attributes object
    • pending object

      The pending states data associated with the role

      Additional properties are allowed.

      Hide pending attributes Show pending attributes object
      • value object Required

        The pending stages

        Additional properties are allowed.

        Hide value attribute Show value attribute object
        • A mapping of Runner Ids to whether or not they are waiting to be blessed to run the associated role

          Hide runner_ids_to_pending_state attribute Show runner_ids_to_pending_state attribute object
          • * object Additional properties

            Pending state

            Additional properties are allowed.

            Hide * attribute Show * attribute object
            • value boolean Required

              Whether a runner is pending blessings or not

      • meta object Required

        The metadata

        Additional properties are allowed.

        Hide meta attributes Show meta attributes object
  • The role can't be found. (code: roles.not_found)

    Hide headers attribute Show headers attribute
    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

  • Your request failed because the specified version does not match the persisted version. (code: roles.version_conflict)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is roles.version_conflict.

    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

PUT /platform/infrastructure/blueprinter/roles/{blueprinter_role_id}/blessings/{runner_id}
curl \
 -X PUT https://{{hostname}}/api/v1/platform/infrastructure/blueprinter/roles/{blueprinter_role_id}/blessings/{runner_id} \
 -d '{"value":true}'
Request examples
{
  "value": true
}
Response examples (200)
{
  "id": "constructor",
  "role": {
    "value": {
      "id": "constructor",
      "auto_blessed": true,
      "containers": [
        {
          "name": "string",
          "container_set_name": "string",
          "kind": "string",
          "options": {
            "enabled": true,
            "auths": [
              {
                "scheme": "digest",
                "auth": "string"
              }
            ],
            "acls": [
              {
                "id": "string",
                "perms": 42,
                "scheme": "string"
              }
            ],
            "runners_secret": "string",
            "container_set_secret": "string",
            "enabled_by_named_feature_flag": "string",
            "overrides": {
              "container_config": {
                "env": [
                  "DB=localhost:4567"
                ],
                "host_config": {
                  "extra_hosts": [
                    "string"
                  ],
                  "network_mode": "string",
                  "cpu_period": 42,
                  "restart_policy": {
                    "name": "string",
                    "maximum_retry_count": 42
                  },
                  "port_bindings": {
                    "additionalProperty1": [
                      {
                        "host_port": "string",
                        "host_ip": "0.0.0.0"
                      }
                    ],
                    "additionalProperty2": [
                      {
                        "host_port": "string",
                        "host_ip": "0.0.0.0"
                      }
                    ]
                  },
                  "binds": [
                    "string"
                  ],
                  "privileged": true
                }
              }
            }
          }
        }
      ]
    },
    "meta": {
      "created_time": "2025-05-04T09:42:00+00:00",
      "modified_time": "2025-05-04T09:42:00+00:00",
      "version": "string"
    }
  },
  "blessings": {
    "value": {
      "runner_ids_to_blessing": {
        "additionalProperty1": {
          "value": true
        },
        "additionalProperty2": {
          "value": true
        }
      }
    },
    "meta": {
      "created_time": "2025-05-04T09:42:00+00:00",
      "modified_time": "2025-05-04T09:42:00+00:00",
      "version": "string"
    }
  },
  "pending": {
    "value": {
      "runner_ids_to_pending_state": {
        "additionalProperty1": {
          "value": true
        },
        "additionalProperty2": {
          "value": true
        }
      }
    },
    "meta": {
      "created_time": "2025-05-04T09:42:00+00:00",
      "modified_time": "2025-05-04T09:42:00+00:00",
      "version": "string"
    }
  }
}
Response examples (404)
# Headers
x-cloud-error-codes: roles.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (409)
# Headers
x-cloud-error-codes: roles.version_conflict

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}

Get constructors

GET /platform/infrastructure/constructors

Retrieves an overview of all constructors in an ECE installation.

Responses

  • An overview of all constructors.

    Hide response attribute Show response attribute object
    • constructors array[object] Required
      Hide constructors attributes Show constructors attributes object
      • status object Required

        The health status of the constructor.

        Additional properties are allowed.

        Hide status attributes Show status attributes object
        • connected boolean Required

          Whether the constructor is connected

        • maintenance_mode boolean Required

          Whether the constructor is in maintenance mode

      • constructor_id string Required

        Identifier for this constructor

GET /platform/infrastructure/constructors
curl \
 -X GET https://{{hostname}}/api/v1/platform/infrastructure/constructors
Response examples (200)
{
  "constructors": [
    {
      "status": {
        "connected": true,
        "maintenance_mode": true
      },
      "constructor_id": "string"
    }
  ]
}

Resynchronize constructors

POST /platform/infrastructure/constructors/_resync

Asynchronously synchronizes all constructor information in the back-end search index.

Query parameters

  • When true, skips the document indexing when the version matches the in-memory copy.

    Default value is true.

Responses

  • The ids of documents, organized by model version, that will be synchronized.

    Hide response attribute Show response attribute object
    • results object Required

      The results of synchronizing indices organized by model version

      Hide results attribute Show results attribute object
      • * object Additional properties

        Results from synchronizing indices

        Additional properties are allowed.

        Hide * attributes Show * attributes object
        • created array[string] Required

          The ids of documents created in the index by index version

        • updated array[string] Required

          The ids of documents updated in the index by index version

        • deleted array[string] Required

          The ids of documents deleted from the index by index version

        • errors array[string] Required

          The regions where document synchronization may have failed

POST /platform/infrastructure/constructors/_resync
curl \
 -X POST https://{{hostname}}/api/v1/platform/infrastructure/constructors/_resync
Response examples (202)
{
  "results": {
    "additionalProperty1": {
      "created": [
        "string"
      ],
      "updated": [
        "string"
      ],
      "deleted": [
        "string"
      ],
      "errors": [
        "string"
      ]
    },
    "additionalProperty2": {
      "created": [
        "string"
      ],
      "updated": [
        "string"
      ],
      "deleted": [
        "string"
      ],
      "errors": [
        "string"
      ]
    }
  }
}












Set constructor logging settings

PUT /platform/infrastructure/constructors/{constructor_id}/logging_settings

Set the logging settings for this constructor instance.

Path parameters

Body Required

The new logging settings for the constructor instance

  • logging_levels object Required

    Overridden logging levels. Keys are logging levels. Allowable values are OFF, ERROR, WARN, INFO, DEBUG, TRACE, ALL

    Hide logging_levels attribute Show logging_levels attribute object
    • * string Additional properties

Responses

  • The updated logging settings for the constructor instance

    Hide headers attributes Show headers attributes
    Hide response attribute Show response attribute object
    • logging_levels object Required

      Overridden logging levels. Keys are logging levels. Allowable values are OFF, ERROR, WARN, INFO, DEBUG, TRACE, ALL

      Hide logging_levels attribute Show logging_levels attribute object
      • * string Additional properties
  • The logging settings for this constructor were not found. (code: constructors.logging_settings.not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is constructors.logging_settings.not_found.

    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

PUT /platform/infrastructure/constructors/{constructor_id}/logging_settings
curl \
 -X PUT https://{{hostname}}/api/v1/platform/infrastructure/constructors/{constructor_id}/logging_settings \
 -d '{"logging_levels":{"additionalProperty1":"string","additionalProperty2":"string"}}'
Request examples
{
  "logging_levels": {
    "additionalProperty1": "string",
    "additionalProperty2": "string"
  }
}
Response examples (200)
# Headers
x-cloud-resource-version: string
x-cloud-resource-created: string
x-cloud-resource-last-modified: string

# Payload
{
  "logging_levels": {
    "additionalProperty1": "string",
    "additionalProperty2": "string"
  }
}
Response examples (404)
# Headers
x-cloud-error-codes: constructors.logging_settings.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}












Stop maintenance mode

POST /platform/infrastructure/constructors/{constructor_id}/maintenance-mode/_stop

Stop maintenance mode of a constructor. It will resume the construction of submitted plans.

Path parameters

Responses

  • The stop maintenance mode command was issued successfully

    Additional properties are allowed.

  • The stop maintenance mode command was prohibited for the given constructor. (code: constructors.command_prohibited)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is constructors.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

  • The constructor specified by {constructor_id} cannot be found. (code: constructors.constructor_not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is constructors.constructor_not_found.

    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/constructors/{constructor_id}/maintenance-mode/_stop
curl \
 -X POST https://{{hostname}}/api/v1/platform/infrastructure/constructors/{constructor_id}/maintenance-mode/_stop
Response examples (202)
{}
Response examples (403)
# Headers
x-cloud-error-codes: constructors.command_prohibited

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (404)
# Headers
x-cloud-error-codes: constructors.constructor_not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}








Get a coordinator candidate

GET /platform/infrastructure/coordinators/candidates/{coordinator_candidate_id}

Retrieve a coordinator candidate.

Path parameters

Responses

  • Info about a coordinator candidate.

    Hide response attributes Show response attributes object
    • name string Required

      Name of this coordinator candidate.

    • public_hostname string Required

      Public hostname of this coordinator candidate

    • acl object Required

      Zookeeper ACL of nodes this coordinator candidate is allowed to read

      Additional properties are allowed.

      Hide acl attributes Show acl attributes object
      • perms integer(int32) Required

        ZK static permissions for admin/all/create/read/write/delete

      • scheme string Required

        Zookeeper ACL scheme

      • id string Required

        Identity within provided scheme

    • id integer(int32)

      Zookeeper server identifier corresponding to this coordinator candidate

    • attributes object Required

      Attributes of this coordinator candidate

      Hide attributes attribute Show attributes attribute object
      • * string Additional properties
    • state string Required

      State of the candidate

      Values are accepted or pending.

  • Unable to find coordinator candidate {coordinator_candidate_id}. Edit your request, then try again. (code: coordinators.candidate_not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is coordinators.candidate_not_found.

    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

GET /platform/infrastructure/coordinators/candidates/{coordinator_candidate_id}
curl \
 -X GET https://{{hostname}}/api/v1/platform/infrastructure/coordinators/candidates/{coordinator_candidate_id}
Response examples (200)
{
  "name": "string",
  "public_hostname": "string",
  "acl": {
    "perms": 42,
    "scheme": "string",
    "id": "string"
  },
  "id": 42,
  "attributes": {
    "additionalProperty1": "string",
    "additionalProperty2": "string"
  },
  "state": "accepted"
}
Response examples (404)
# Headers
x-cloud-error-codes: coordinators.candidate_not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}








Get a coordinator

GET /platform/infrastructure/coordinators/{coordinator_id}

Retrieve overview of a single coordinator.

Path parameters

Responses

  • An overview of a coordinator instance.

    Hide response attributes Show response attributes object
    • name string Required

      Name of this coordinator

    • public_hostname string Required

      Public hostname of this coordinator

    • leader_port integer(int32) Required

      Leader port of this coordinator

    • election_port integer(int32) Required

      Election port of this coordinator

    • client_port integer(int32) Required

      Client port of this coordinator

    • attributes object Required

      Attributes of this coordinator

      Hide attributes attribute Show attributes attribute object
      • * string Additional properties
  • Unable to find coordinator {coordinator_id}. Edit your request, then try again. (code: coordinators.coordinator_not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is coordinators.coordinator_not_found.

    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

GET /platform/infrastructure/coordinators/{coordinator_id}
curl \
 -X GET https://{{hostname}}/api/v1/platform/infrastructure/coordinators/{coordinator_id}
Response examples (200)
{
  "name": "string",
  "public_hostname": "string",
  "leader_port": 42,
  "election_port": 42,
  "client_port": 42,
  "attributes": {
    "additionalProperty1": "string",
    "additionalProperty2": "string"
  }
}
Response examples (404)
# Headers
x-cloud-error-codes: coordinators.coordinator_not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}




Get proxies

GET /platform/infrastructure/proxies

Retrieves an overview of all proxies.

Responses

  • An overview of all proxies.

    Hide response attributes Show response attributes object
    • proxies_count integer(int32) Required

      Number of proxies

    • settings object Required

      Settings

      Additional properties are allowed.

      Hide settings attributes Show settings attributes object
    • proxies array[object] Required

      Proxies

      Hide proxies attributes Show proxies attributes object
      • proxy_id string Required

        The proxy identifier

      • Identifier of the runner for the proxy

      • host_ip string Required

        IP of the host the proxy runs on

      • public_hostname string Required

        Public hostname of the host the proxy runs on

      • metadata object Required

        Arbitrary metadata associated with the proxy

        Additional properties are allowed.

      • healthy boolean Required

        Specifies if the proxy is healthy

      • zone string

        The zone.

      • allocations array[object] Required

        Allocation information by type.

        Hide allocations attributes Show allocations attributes object
        • allocations_type string Required

          The type of proxy allocations

          Values are elasticsearch, kibana, apm, integrations_server, appsearch, or enterprise_search.

        • counts object Required

          Proxy allocation counts.

          Additional properties are allowed.

          Hide counts attributes Show counts attributes object
GET /platform/infrastructure/proxies
curl \
 -X GET https://{{hostname}}/api/v1/platform/infrastructure/proxies
Response examples (200)
{
  "proxies_count": 42,
  "settings": {
    "expected_proxies_count": 42,
    "signature_secret": "string",
    "signature_valid_for_millis": 42,
    "http_settings": {
      "disconnected_cutoff": 42,
      "minimum_proxy_services": 42,
      "sso_settings": {
        "max_age": 42,
        "sso_secret": "string",
        "cookie_name": "string",
        "dont_log_requests": true,
        "default_redirect_path": "string",
        "maintenance_bypass_cookie_name": "string"
      },
      "dashboards_base_url": "string",
      "cookie_secret": "string",
      "user_cookie_key": "string"
    }
  },
  "proxies": [
    {
      "proxy_id": "string",
      "runner_id": "string",
      "host_ip": "string",
      "public_hostname": "string",
      "metadata": {},
      "healthy": true,
      "zone": "string",
      "allocations": [
        {
          "allocations_type": "elasticsearch",
          "counts": {
            "allocations": 42,
            "connectors": 42
          }
        }
      ]
    }
  ]
}




Get filtered group of proxies

GET /platform/infrastructure/proxies/filtered-groups/{proxies_filtered_group_id}

Get data for a filtered group of proxies.

Path parameters

Responses

  • Data for the filtered group of proxies identified by {proxies_filtered_group_id}

    Hide headers attributes Show headers attributes
    Hide response attributes Show response attributes object
    • id string

      Identifier of the filtered group of proxies

    • filters array[object] Required

      Filters to be matched

      Hide filters attributes Show filters attributes object
      • key string Required

        Key of the proxy metadata item to be matched

      • value string Required

        Value of the proxy metadata item to be matched

    • expected_proxies_count integer(int32) Required

      Expected minimum number of proxies matching all filters in this group

  • Unable to find the {proxies_filtered_group_id} specified filtered group of proxies. Edit your request, then try again. (code: proxies.proxies_filtered_group_not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is proxies.proxies_filtered_group_not_found.

    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

GET /platform/infrastructure/proxies/filtered-groups/{proxies_filtered_group_id}
curl \
 -X GET https://{{hostname}}/api/v1/platform/infrastructure/proxies/filtered-groups/{proxies_filtered_group_id}
Response examples (200)
# Headers
x-cloud-resource-version: string
x-cloud-resource-created: string
x-cloud-resource-last-modified: string

# Payload
{
  "id": "string",
  "filters": [
    {
      "key": "string",
      "value": "string"
    }
  ],
  "expected_proxies_count": 42
}
Response examples (404)
# Headers
x-cloud-error-codes: proxies.proxies_filtered_group_not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}








Get health for a filtered group of proxies

GET /platform/infrastructure/proxies/filtered-groups/{proxies_filtered_group_id}/health

Get the health status of a filtered group of proxies.

Path parameters

Query parameters

Responses

  • Returns health information on a filtered group of proxies

    Hide response attributes Show response attributes object
    • group object Required

      A set of proxy filters with an expected number of matching proxies.

      Additional properties are allowed.

      Hide group attributes Show group attributes object
      • id string

        Identifier of the filtered group of proxies

      • filters array[object] Required

        Filters to be matched

        Hide filters attributes Show filters attributes object
        • key string Required

          Key of the proxy metadata item to be matched

        • value string Required

          Value of the proxy metadata item to be matched

      • expected_proxies_count integer(int32) Required

        Expected minimum number of proxies matching all filters in this group

    • observed_proxies_count integer(int32) Required

      The number of proxies that match all of the filters in the group

    • status string Required

      "Health status for this filtered group. One of "Green", "Yellow" or "Red"

  • The health status is worse than the expected one.

    Hide response attributes Show response attributes object
    • group object Required

      A set of proxy filters with an expected number of matching proxies.

      Additional properties are allowed.

      Hide group attributes Show group attributes object
      • id string

        Identifier of the filtered group of proxies

      • filters array[object] Required

        Filters to be matched

        Hide filters attributes Show filters attributes object
        • key string Required

          Key of the proxy metadata item to be matched

        • value string Required

          Value of the proxy metadata item to be matched

      • expected_proxies_count integer(int32) Required

        Expected minimum number of proxies matching all filters in this group

    • observed_proxies_count integer(int32) Required

      The number of proxies that match all of the filters in the group

    • status string Required

      "Health status for this filtered group. One of "Green", "Yellow" or "Red"

GET /platform/infrastructure/proxies/filtered-groups/{proxies_filtered_group_id}/health
curl \
 -X GET https://{{hostname}}/api/v1/platform/infrastructure/proxies/filtered-groups/{proxies_filtered_group_id}/health
Response examples (200)
{
  "group": {
    "id": "string",
    "filters": [
      {
        "key": "string",
        "value": "string"
      }
    ],
    "expected_proxies_count": 42
  },
  "observed_proxies_count": 42,
  "status": "string"
}
Response examples (417)
{
  "group": {
    "id": "string",
    "filters": [
      {
        "key": "string",
        "value": "string"
      }
    ],
    "expected_proxies_count": 42
  },
  "observed_proxies_count": 42,
  "status": "string"
}

Get proxy health

GET /platform/infrastructure/proxies/health

Get the health status of all proxies.

Query parameters

Responses

  • Returns health information on all the proxies

    Hide response attributes Show response attributes object
    • observed_proxies_count integer(int32) Required

      Total number of proxies

    • expected_proxies_count integer(int32) Required

      Expected minimum number of proxies

    • allocations array[object] Required

      Allocations for proxies

      Hide allocations attributes Show allocations attributes object
    • filtered_groups array[object] Required

      Filtered groups of proxies with associated status

      Hide filtered_groups attributes Show filtered_groups attributes object
      • group object Required

        A set of proxy filters with an expected number of matching proxies.

        Additional properties are allowed.

        Hide group attributes Show group attributes object
        • id string

          Identifier of the filtered group of proxies

        • filters array[object] Required

          Filters to be matched

          Hide filters attributes Show filters attributes object
          • key string Required

            Key of the proxy metadata item to be matched

          • value string Required

            Value of the proxy metadata item to be matched

        • expected_proxies_count integer(int32) Required

          Expected minimum number of proxies matching all filters in this group

      • observed_proxies_count integer(int32) Required

        The number of proxies that match all of the filters in the group

      • status string Required

        "Health status for this filtered group. One of "Green", "Yellow" or "Red"

    • status string Required

      "Health status for all proxies. One of "Green", "Yellow" or "Red"

  • The health status is worse than the expected one.

    Hide response attributes Show response attributes object
    • observed_proxies_count integer(int32) Required

      Total number of proxies

    • expected_proxies_count integer(int32) Required

      Expected minimum number of proxies

    • allocations array[object] Required

      Allocations for proxies

      Hide allocations attributes Show allocations attributes object
    • filtered_groups array[object] Required

      Filtered groups of proxies with associated status

      Hide filtered_groups attributes Show filtered_groups attributes object
      • group object Required

        A set of proxy filters with an expected number of matching proxies.

        Additional properties are allowed.

        Hide group attributes Show group attributes object
        • id string

          Identifier of the filtered group of proxies

        • filters array[object] Required

          Filters to be matched

          Hide filters attributes Show filters attributes object
          • key string Required

            Key of the proxy metadata item to be matched

          • value string Required

            Value of the proxy metadata item to be matched

        • expected_proxies_count integer(int32) Required

          Expected minimum number of proxies matching all filters in this group

      • observed_proxies_count integer(int32) Required

        The number of proxies that match all of the filters in the group

      • status string Required

        "Health status for this filtered group. One of "Green", "Yellow" or "Red"

    • status string Required

      "Health status for all proxies. One of "Green", "Yellow" or "Red"

GET /platform/infrastructure/proxies/health
curl \
 -X GET https://{{hostname}}/api/v1/platform/infrastructure/proxies/health
Response examples (200)
{
  "observed_proxies_count": 42,
  "expected_proxies_count": 42,
  "allocations": [
    {
      "allocations_type": "string",
      "max_allocations": 42,
      "proxies_at_max_allocations": 42
    }
  ],
  "filtered_groups": [
    {
      "group": {
        "id": "string",
        "filters": [
          {
            "key": "string",
            "value": "string"
          }
        ],
        "expected_proxies_count": 42
      },
      "observed_proxies_count": 42,
      "status": "string"
    }
  ],
  "status": "string"
}
Response examples (417)
{
  "observed_proxies_count": 42,
  "expected_proxies_count": 42,
  "allocations": [
    {
      "allocations_type": "string",
      "max_allocations": 42,
      "proxies_at_max_allocations": 42
    }
  ],
  "filtered_groups": [
    {
      "group": {
        "id": "string",
        "filters": [
          {
            "key": "string",
            "value": "string"
          }
        ],
        "expected_proxies_count": 42
      },
      "observed_proxies_count": 42,
      "status": "string"
    }
  ],
  "status": "string"
}

Get proxies settings

GET /platform/infrastructure/proxies/settings

WARNING This endpoint is deprecated and scheduled to be removed in the next major version.

Retrieves the settings for all proxies.

Responses

GET /platform/infrastructure/proxies/settings
curl \
 -X GET https://{{hostname}}/api/v1/platform/infrastructure/proxies/settings
Response examples (200)
{
  "expected_proxies_count": 42,
  "signature_secret": "string",
  "signature_valid_for_millis": 42,
  "http_settings": {
    "disconnected_cutoff": 42,
    "minimum_proxy_services": 42,
    "sso_settings": {
      "max_age": 42,
      "sso_secret": "string",
      "cookie_name": "string",
      "dont_log_requests": true,
      "default_redirect_path": "string",
      "maintenance_bypass_cookie_name": "string"
    },
    "dashboards_base_url": "string",
    "cookie_secret": "string",
    "user_cookie_key": "string"
  }
}




Update proxy settings

PATCH /platform/infrastructure/proxies/settings

WARNING This endpoint is deprecated and scheduled to be removed in the next major version.

Applies the settings as a patch. Only the fields that are referenced in the update are changed.

Query parameters

  • version string

    If specified, checks for conflicts against the version of the repository configuration (returned in 'x-cloud-resource-version' of the GET request)

Body Required

A JSON to merge with the existing settings

string string

Responses

  • Returns the updated settings

    Hide response attributes Show response attributes object
  • There is a version conflict. (code: proxies.version_conflict)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is proxies.version_conflict.

    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

PATCH /platform/infrastructure/proxies/settings
curl \
 -X PATCH https://{{hostname}}/api/v1/platform/infrastructure/proxies/settings \
 -d '"string"'
Request examples
string
Response examples (200)
{
  "expected_proxies_count": 42,
  "signature_secret": "string",
  "signature_valid_for_millis": 42,
  "http_settings": {
    "disconnected_cutoff": 42,
    "minimum_proxy_services": 42,
    "sso_settings": {
      "max_age": 42,
      "sso_secret": "string",
      "cookie_name": "string",
      "dont_log_requests": true,
      "default_redirect_path": "string",
      "maintenance_bypass_cookie_name": "string"
    },
    "dashboards_base_url": "string",
    "cookie_secret": "string",
    "user_cookie_key": "string"
  }
}
Response examples (409)
# Headers
x-cloud-error-codes: proxies.version_conflict

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
















Get runner

GET /platform/infrastructure/runners/{runner_id}

Retrieves a runner by id.

Path parameters

  • runner_id string Required

    The identifier for the runner

Responses

  • The information for the runner specified by {runner_id}.

    Hide response attributes Show response attributes object
    • runner_id string Required

      The runner identifier

    • The runner name

    • zone string

      Identifier of the zone

    • tags object

      Meta data of the runner, like image ID or processor architecture

      Hide tags attribute Show tags attribute object
      • * string Additional properties
    • features object

      State of features of the runner

      Hide features attribute Show features attribute object
      • * boolean Additional properties
    • Build Info of the container artifact

      Additional properties are allowed.

      Hide build_info attributes Show build_info attributes object
    • host_ip string Required

      Host IP for the runner

    • public_hostname string Required

      Public hostname for the runner

    • containers array[object] Required

      Containers for the runner

      Hide containers attributes Show containers attributes object
    • roles array[object] Required

      Roles for the runner

      Hide roles attribute Show roles attribute object
    • connected boolean Required

      Specifies if the runner is connected

    • healthy boolean Required

      Specifies if the runner is healthy

    • Checks used to determine if a runner is healthy or not

      Additional properties are allowed.

      Hide health_checks attributes Show health_checks attributes object
    • region string

      The region that this runner belongs to. Only populated in SaaS or federated ECE.

  • Unable to find the {runner_id} specified runner. Edit your request, then try again. (code: runners.runner_not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is runners.runner_not_found.

    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

GET /platform/infrastructure/runners/{runner_id}
curl \
 -X GET https://{{hostname}}/api/v1/platform/infrastructure/runners/{runner_id}
Response examples (200)
{
  "runner_id": "string",
  "runner_name": "string",
  "zone": "string",
  "tags": {
    "additionalProperty1": "string",
    "additionalProperty2": "string"
  },
  "features": {
    "additionalProperty1": true,
    "additionalProperty2": true
  },
  "build_info": {
    "commit_hash": "string",
    "version": "string"
  },
  "host_ip": "string",
  "public_hostname": "string",
  "containers": [
    {
      "container_name": "string",
      "container_set_name": "string"
    }
  ],
  "roles": [
    {
      "role_name": "string"
    }
  ],
  "connected": true,
  "healthy": true,
  "health_checks": {
    "is_docker_healthy": true,
    "is_connected_to_zk": true,
    "has_containers": true
  },
  "region": "string"
}
Response examples (404)
# Headers
x-cloud-error-codes: runners.runner_not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}

Delete runner

DELETE /platform/infrastructure/runners/{runner_id}

Delete a runner by id.

Path parameters

  • runner_id string Required

    The identifier for the runner

Responses

  • The runner specified by {runner_id} was deleted.

    Additional properties are allowed.

  • The runner specified by {runner_id} could not be deleted. (code: runners.runner_deletion_failed)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is runners.runner_deletion_failed.

    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 runner specified by {runner_id} cannot be found. (code: runners.runner_not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is runners.runner_not_found.

    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

DELETE /platform/infrastructure/runners/{runner_id}
curl \
 -X DELETE https://{{hostname}}/api/v1/platform/infrastructure/runners/{runner_id}
Response examples (200)
{}
Response examples (400)
# Headers
x-cloud-error-codes: runners.runner_deletion_failed

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (404)
# Headers
x-cloud-error-codes: runners.runner_not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}




















Set runner roles

PUT /platform/infrastructure/runners/{runner_id}/roles

Set runner roles.

Path parameters

  • runner_id string Required

    The identifier for the runner

Query parameters

  • bless boolean

    Assigns the runner to the roles.

Body Required

The roles for the runner that you want to apply.

  • roles array[object] Required

    List of roles

    Hide roles attribute Show roles attribute object

Responses

  • The roles for the {runner_id} specified runner are assigned.

    Hide response attribute Show response attribute object
    • roles array[object] Required

      List of roles

      Hide roles attribute Show roles attribute object
  • There was an error while assigning the roles for the {runner_id} specified runner. Try your request again. (code: runners.runner_set_roles_failed)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is runners.runner_set_roles_failed.

    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

  • Unable to find the {runner_id} specified runner. Edit your request, then try again. (code: runners.runner_not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is runners.runner_not_found.

    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

PUT /platform/infrastructure/runners/{runner_id}/roles
curl \
 -X PUT https://{{hostname}}/api/v1/platform/infrastructure/runners/{runner_id}/roles \
 -d '{"roles":[{"role_name":"string"}]}'
Request examples
{
  "roles": [
    {
      "role_name": "string"
    }
  ]
}
Response examples (200)
{
  "roles": [
    {
      "role_name": "string"
    }
  ]
}
Response examples (400)
# Headers
x-cloud-error-codes: runners.runner_set_roles_failed

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (404)
# Headers
x-cloud-error-codes: runners.runner_not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}

Get license

GET /platform/license

Retrieves the license.

Responses

  • The information for the license.

    Hide response attributes Show response attributes object
    • license object Required

      License data

      Additional properties are allowed.

      Hide license attributes Show license attributes object
      • version integer(int32)

        Version of the license

      • uid string Required

        Unique identifier of the license

      • issuer string Required

        Issuer of the license

      • issued_to string Required

        Entity the license was issued to

      • issue_date_in_millis integer(int64) Required

        When the license was issued, in milliseconds since the Unix epoch

      • type string Required

        Type of the license

      • Type of the license subscription

      • signature string Required

        Digital signature

      • start_date_in_millis integer(int64) Required

        Initial validity of the license, in milliseconds since the Unix epoch

      • expiry_date_in_millis integer(int64) Required

        When the license expires, in milliseconds since the Unix epoch

      • max_allocators integer(int32)

        Maximum number of allocators. Empty for version >= 3

      • Maximum RAM per allocator in MB. Empty for version >= 3

      • max_instances integer(int32)

        Maximum number of instances. Only present for version 3

      • max_resource_units integer(int32)

        Maximum number of resource units, where each unit is 64GB. Only present for version > 3

      • Operation mode

      • cluster_licenses array[object]

        List of cluster licenses

        Hide cluster_licenses attribute Show cluster_licenses attribute object
        • license object Required

          Object containing the cluster license data

          Additional properties are allowed.

    • Information about current usage.

      Additional properties are allowed.

      Hide usage_stats attribute Show usage_stats attribute object
  • The license cannot be found. (code: license.license_not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is license.license_not_found.

    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

GET /platform/license
curl \
 -X GET https://{{hostname}}/api/v1/platform/license
Response examples (200)
{
  "license": {
    "version": 42,
    "uid": "string",
    "issuer": "string",
    "issued_to": "string",
    "issue_date_in_millis": 42,
    "type": "string",
    "subscription_type": "string",
    "signature": "string",
    "start_date_in_millis": 42,
    "expiry_date_in_millis": 42,
    "max_allocators": 42,
    "max_ram_per_allocator_mb": 42,
    "max_instances": 42,
    "max_resource_units": 42,
    "operation_mode": "string",
    "cluster_licenses": [
      {
        "license": {}
      }
    ]
  },
  "usage_stats": {
    "total_connected_memory_total": 42
  }
}
Response examples (404)
# Headers
x-cloud-error-codes: license.license_not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}

Add or update license

PUT /platform/license

Adds a new or updates an existing license.

Body Required

The license to add or update.

  • license object Required

    License data

    Additional properties are allowed.

    Hide license attributes Show license attributes object
    • version integer(int32)

      Version of the license

    • uid string Required

      Unique identifier of the license

    • issuer string Required

      Issuer of the license

    • issued_to string Required

      Entity the license was issued to

    • issue_date_in_millis integer(int64) Required

      When the license was issued, in milliseconds since the Unix epoch

    • type string Required

      Type of the license

    • Type of the license subscription

    • signature string Required

      Digital signature

    • start_date_in_millis integer(int64) Required

      Initial validity of the license, in milliseconds since the Unix epoch

    • expiry_date_in_millis integer(int64) Required

      When the license expires, in milliseconds since the Unix epoch

    • max_allocators integer(int32)

      Maximum number of allocators. Empty for version >= 3

    • Maximum RAM per allocator in MB. Empty for version >= 3

    • max_instances integer(int32)

      Maximum number of instances. Only present for version 3

    • max_resource_units integer(int32)

      Maximum number of resource units, where each unit is 64GB. Only present for version > 3

    • Operation mode

    • cluster_licenses array[object]

      List of cluster licenses

      Hide cluster_licenses attribute Show cluster_licenses attribute object
      • license object Required

        Object containing the cluster license data

        Additional properties are allowed.

Responses

  • The license was updated.

    Additional properties are allowed.

  • The license could not be updated. (code: license.invalid_license)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is license.invalid_license.

    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

PUT /platform/license
curl \
 -X PUT https://{{hostname}}/api/v1/platform/license \
 -d '{"license":{"version":42,"uid":"string","issuer":"string","issued_to":"string","issue_date_in_millis":42,"type":"string","subscription_type":"string","signature":"string","start_date_in_millis":42,"expiry_date_in_millis":42,"max_allocators":42,"max_ram_per_allocator_mb":42,"max_instances":42,"max_resource_units":42,"operation_mode":"string","cluster_licenses":[{"license":{}}]}}'
Request examples
{
  "license": {
    "version": 42,
    "uid": "string",
    "issuer": "string",
    "issued_to": "string",
    "issue_date_in_millis": 42,
    "type": "string",
    "subscription_type": "string",
    "signature": "string",
    "start_date_in_millis": 42,
    "expiry_date_in_millis": 42,
    "max_allocators": 42,
    "max_ram_per_allocator_mb": 42,
    "max_instances": 42,
    "max_resource_units": 42,
    "operation_mode": "string",
    "cluster_licenses": [
      {
        "license": {}
      }
    ]
  }
}
Response examples (200)
{}
Response examples (400)
# Headers
x-cloud-error-codes: license.invalid_license

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}













Set snapshot repository

PUT /platform/configuration/snapshots/repositories/{repository_name}

Creates or updates the snapshot repository configuration.

Path parameters

Query parameters

  • version integer

    Checks for conflicts against the metadata version, then returns the value in the x-cloud-resource-version header.

Body Required

The Elasticsearch snapshot repository configuration

  • type string Required

    Repository type, (Currently supported: 's3')

  • settings object Required

    Elasticsearch repository configuration settings JSON. See Elasticsearch documentation for more information

    Additional properties are allowed.

Responses

  • New snapshot repository config

    Hide response attributes Show response attributes object
    • repository_name string Required

      Elasticsearch snapshot repository name

    • config object Required

      Elasticsearch configuration JSON for a snapshot repository

      Additional properties are allowed.

PUT /platform/configuration/snapshots/repositories/{repository_name}
curl \
 -X PUT https://{{hostname}}/api/v1/platform/configuration/snapshots/repositories/{repository_name} \
 -d '{"type":"string","settings":{}}'
Request examples
{
  "type": "string",
  "settings": {}
}
Response examples (200)
{
  "repository_name": "string",
  "config": {}
}













Upload stack pack

POST /stack/versions

Creates or updates an Elastic Stack pack and template. The endpoint supports multipart/form-data requests, as well as application/zip and application/octet-stream requests with a binary body. The maximum size of the payload is 1Mb. When the archive contains an Elastic Stack configuration that is available through the API, the configuration and template are overwritten.

Responses

  • The Elastic Stack pack successfully processed.

    Hide response attributes Show response attributes object
    • stacks array[object] Required
      Hide stacks attributes Show stacks attributes object
      • version string

        Stack version

      • template object Required

        The template information for an Elastic Stack version.

        Additional properties are allowed.

        Hide template attributes Show template attributes object
        • Template version

        • hashes array[object]

          Relative paths of files with SHA-256 hashes that contains the template

          Hide hashes attributes Show hashes attributes object
          • path string Required

            File path relative to template's root

          • hash string Required

            SHA-256 hash of a file

      • elasticsearch object Required

        The Elasticsearch configuration for an Elastic Stack version.

        Additional properties are allowed.

        Hide elasticsearch attributes Show elasticsearch attributes object
        • docker_image string Required

          Docker image for the Elasticsearch

        • plugins array[string] Required

          List of available plugins

        • default_plugins array[string] Required

          List of default plugins

        • blacklist array[string] Required

          List of configuration options that cannot be overridden by user settings

        • node_types array[object]

          Node types that are supported by this stack version

          Hide node_types attributes Show node_types attributes object
          • node_type string Required

            Type of the node (master, data, ...)

          • name string Required

            Name of the node type

          • description string Required

            Description of the node type

          • settings object

            Settings that are applied to all nodes of this type

            Additional properties are allowed.

          • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

            Capacity constraints for the node type

            Additional properties are allowed.

            Hide capacity_constraints attributes Show capacity_constraints attributes object
            • min integer(int32) Required

              Min capacity of the instances

            • max integer(int32) Required

              Max capacity of the instances

          • Node types that are compatible with this one

          • mandatory boolean

            Flag to specify a node type is mandatory in a cluster's plan

        • settings object

          Settings that are applied to all nodes of this type

          Additional properties are allowed.

        • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

          Capacity constraints for the node type

          Additional properties are allowed.

          Hide capacity_constraints attributes Show capacity_constraints attributes object
          • min integer(int32) Required

            Min capacity of the instances

          • max integer(int32) Required

            Max capacity of the instances

        • Node types that are compatible with this one

      • kibana object Required

        The Kibana configuration for an Elastic Stack version.

        Additional properties are allowed.

        Hide kibana attributes Show kibana attributes object
        • version string

          Version of Kibana

        • docker_image string Required

          Docker image for the kibana

        • blacklist array[string] Required

          List of configuration options that cannot be overridden by user settings

        • settings object

          Settings that are applied to all nodes of this type

          Additional properties are allowed.

        • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

          Capacity constraints for the node type

          Additional properties are allowed.

          Hide capacity_constraints attributes Show capacity_constraints attributes object
          • min integer(int32) Required

            Min capacity of the instances

          • max integer(int32) Required

            Max capacity of the instances

        • Node types that are compatible with this one

      • apm object

        The APM Server configuration for an Elastic Stack version.

        Additional properties are allowed.

        Hide apm attributes Show apm attributes object
        • version string

          Version of APM

        • docker_image string Required

          Docker image for the APM

        • blacklist array[string] Required

          List of configuration options that cannot be overridden by user settings

        • settings object

          Settings that are applied to all nodes of this type

          Additional properties are allowed.

        • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

          Capacity constraints for the node type

          Additional properties are allowed.

          Hide capacity_constraints attributes Show capacity_constraints attributes object
          • min integer(int32) Required

            Min capacity of the instances

          • max integer(int32) Required

            Max capacity of the instances

        • Node types that are compatible with this one

      • AppSearch related configuration of an Elastic Stack version

        Additional properties are allowed.

        Hide appsearch attributes Show appsearch attributes object
        • version string

          Version of AppSearch

        • docker_image string Required

          Docker image for the AppSearch

        • blacklist array[string] Required

          List of configuration options that cannot be overridden by user settings

        • settings object

          Settings that are applied to all nodes of this type

          Additional properties are allowed.

        • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

          Capacity constraints for the node type

          Additional properties are allowed.

          Hide capacity_constraints attributes Show capacity_constraints attributes object
          • min integer(int32) Required

            Min capacity of the instances

          • max integer(int32) Required

            Max capacity of the instances

        • Node types that are compatible with this one

        • node_types array[object]

          Node types that are supported by this stack version

          Hide node_types attributes Show node_types attributes object
          • node_type string Required

            Type of the node (master, data, ...)

          • name string Required

            Name of the node type

          • description string Required

            Description of the node type

          • settings object

            Settings that are applied to all nodes of this type

            Additional properties are allowed.

          • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

            Capacity constraints for the node type

            Additional properties are allowed.

            Hide capacity_constraints attributes Show capacity_constraints attributes object
            • min integer(int32) Required

              Min capacity of the instances

            • max integer(int32) Required

              Max capacity of the instances

          • Node types that are compatible with this one

          • mandatory boolean

            Flag to specify a node type is mandatory in a cluster's plan

      • metadata object

        The metadata for the Elastic Stack.

        Additional properties are allowed.

        Hide metadata attributes Show metadata attributes object
      • deleted boolean

        Identifies that the Elastic Stack version is marked for deletion

      • upgradable_to array[string] Required

        Stack Versions that this version can upgrade to

      • The minimum version recommended to upgrade this version.

      • Whether or not this version is whitelisted. This is only relevant in EC (SaaS) and is not sent in ECE.

      • accessible boolean

        Whether or not this version is accessible by the calling user. This is only relevant in EC (SaaS) and is not sent in ECE.

    • errors array[object] Required

      Errors occurred while processing the Elastic Stack pack. Key: stack version, Value: List of errors

      Hide errors attributes Show errors attributes object
      • stack_version string Required

        Version of the stack (ie directory name in archive root)

      • errors object Required

        Additional properties are allowed.

        Hide errors attribute Show errors 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

    • There is an error in the file. Choose a different file, then try again. (code: stackpack.bad_archive)
    • Some unexpected error occurred. (code: stackpack.unknown_internal_error)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are stackpack.bad_archive or stackpack.unknown_internal_error.

    Hide response attributes Show response attributes object
    • stacks array[object] Required
      Hide stacks attributes Show stacks attributes object
      • version string

        Stack version

      • template object Required

        The template information for an Elastic Stack version.

        Additional properties are allowed.

        Hide template attributes Show template attributes object
        • Template version

        • hashes array[object]

          Relative paths of files with SHA-256 hashes that contains the template

          Hide hashes attributes Show hashes attributes object
          • path string Required

            File path relative to template's root

          • hash string Required

            SHA-256 hash of a file

      • elasticsearch object Required

        The Elasticsearch configuration for an Elastic Stack version.

        Additional properties are allowed.

        Hide elasticsearch attributes Show elasticsearch attributes object
        • docker_image string Required

          Docker image for the Elasticsearch

        • plugins array[string] Required

          List of available plugins

        • default_plugins array[string] Required

          List of default plugins

        • blacklist array[string] Required

          List of configuration options that cannot be overridden by user settings

        • node_types array[object]

          Node types that are supported by this stack version

          Hide node_types attributes Show node_types attributes object
          • node_type string Required

            Type of the node (master, data, ...)

          • name string Required

            Name of the node type

          • description string Required

            Description of the node type

          • settings object

            Settings that are applied to all nodes of this type

            Additional properties are allowed.

          • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

            Capacity constraints for the node type

            Additional properties are allowed.

            Hide capacity_constraints attributes Show capacity_constraints attributes object
            • min integer(int32) Required

              Min capacity of the instances

            • max integer(int32) Required

              Max capacity of the instances

          • Node types that are compatible with this one

          • mandatory boolean

            Flag to specify a node type is mandatory in a cluster's plan

        • settings object

          Settings that are applied to all nodes of this type

          Additional properties are allowed.

        • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

          Capacity constraints for the node type

          Additional properties are allowed.

          Hide capacity_constraints attributes Show capacity_constraints attributes object
          • min integer(int32) Required

            Min capacity of the instances

          • max integer(int32) Required

            Max capacity of the instances

        • Node types that are compatible with this one

      • kibana object Required

        The Kibana configuration for an Elastic Stack version.

        Additional properties are allowed.

        Hide kibana attributes Show kibana attributes object
        • version string

          Version of Kibana

        • docker_image string Required

          Docker image for the kibana

        • blacklist array[string] Required

          List of configuration options that cannot be overridden by user settings

        • settings object

          Settings that are applied to all nodes of this type

          Additional properties are allowed.

        • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

          Capacity constraints for the node type

          Additional properties are allowed.

          Hide capacity_constraints attributes Show capacity_constraints attributes object
          • min integer(int32) Required

            Min capacity of the instances

          • max integer(int32) Required

            Max capacity of the instances

        • Node types that are compatible with this one

      • apm object

        The APM Server configuration for an Elastic Stack version.

        Additional properties are allowed.

        Hide apm attributes Show apm attributes object
        • version string

          Version of APM

        • docker_image string Required

          Docker image for the APM

        • blacklist array[string] Required

          List of configuration options that cannot be overridden by user settings

        • settings object

          Settings that are applied to all nodes of this type

          Additional properties are allowed.

        • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

          Capacity constraints for the node type

          Additional properties are allowed.

          Hide capacity_constraints attributes Show capacity_constraints attributes object
          • min integer(int32) Required

            Min capacity of the instances

          • max integer(int32) Required

            Max capacity of the instances

        • Node types that are compatible with this one

      • AppSearch related configuration of an Elastic Stack version

        Additional properties are allowed.

        Hide appsearch attributes Show appsearch attributes object
        • version string

          Version of AppSearch

        • docker_image string Required

          Docker image for the AppSearch

        • blacklist array[string] Required

          List of configuration options that cannot be overridden by user settings

        • settings object

          Settings that are applied to all nodes of this type

          Additional properties are allowed.

        • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

          Capacity constraints for the node type

          Additional properties are allowed.

          Hide capacity_constraints attributes Show capacity_constraints attributes object
          • min integer(int32) Required

            Min capacity of the instances

          • max integer(int32) Required

            Max capacity of the instances

        • Node types that are compatible with this one

        • node_types array[object]

          Node types that are supported by this stack version

          Hide node_types attributes Show node_types attributes object
          • node_type string Required

            Type of the node (master, data, ...)

          • name string Required

            Name of the node type

          • description string Required

            Description of the node type

          • settings object

            Settings that are applied to all nodes of this type

            Additional properties are allowed.

          • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

            Capacity constraints for the node type

            Additional properties are allowed.

            Hide capacity_constraints attributes Show capacity_constraints attributes object
            • min integer(int32) Required

              Min capacity of the instances

            • max integer(int32) Required

              Max capacity of the instances

          • Node types that are compatible with this one

          • mandatory boolean

            Flag to specify a node type is mandatory in a cluster's plan

      • metadata object

        The metadata for the Elastic Stack.

        Additional properties are allowed.

        Hide metadata attributes Show metadata attributes object
      • deleted boolean

        Identifies that the Elastic Stack version is marked for deletion

      • upgradable_to array[string] Required

        Stack Versions that this version can upgrade to

      • The minimum version recommended to upgrade this version.

      • Whether or not this version is whitelisted. This is only relevant in EC (SaaS) and is not sent in ECE.

      • accessible boolean

        Whether or not this version is accessible by the calling user. This is only relevant in EC (SaaS) and is not sent in ECE.

    • errors array[object] Required

      Errors occurred while processing the Elastic Stack pack. Key: stack version, Value: List of errors

      Hide errors attributes Show errors attributes object
      • stack_version string Required

        Version of the stack (ie directory name in archive root)

      • errors object Required

        Additional properties are allowed.

        Hide errors attribute Show errors 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 /stack/versions
curl \
 -X POST https://{{hostname}}/api/v1/stack/versions
Response examples (200)
{
  "stacks": [
    {
      "version": "string",
      "template": {
        "template_version": "string",
        "hashes": [
          {
            "path": "string",
            "hash": "string"
          }
        ]
      },
      "elasticsearch": {
        "docker_image": "string",
        "plugins": [
          "string"
        ],
        "default_plugins": [
          "string"
        ],
        "blacklist": [
          "string"
        ],
        "node_types": [
          {
            "node_type": "string",
            "name": "string",
            "description": "string",
            "settings": {},
            "capacity_constraints": {
              "min": 42,
              "max": 42
            },
            "compatible_node_types": [
              "string"
            ],
            "mandatory": true
          }
        ],
        "settings": {},
        "capacity_constraints": {
          "min": 42,
          "max": 42
        },
        "compatible_node_types": [
          "string"
        ]
      },
      "kibana": {
        "version": "string",
        "docker_image": "string",
        "blacklist": [
          "string"
        ],
        "settings": {},
        "capacity_constraints": {
          "min": 42,
          "max": 42
        },
        "compatible_node_types": [
          "string"
        ]
      },
      "apm": {
        "version": "string",
        "docker_image": "string",
        "blacklist": [
          "string"
        ],
        "settings": {},
        "capacity_constraints": {
          "min": 42,
          "max": 42
        },
        "compatible_node_types": [
          "string"
        ]
      },
      "appsearch": {
        "version": "string",
        "docker_image": "string",
        "blacklist": [
          "string"
        ],
        "settings": {},
        "capacity_constraints": {
          "min": 42,
          "max": 42
        },
        "compatible_node_types": [
          "string"
        ],
        "node_types": [
          {
            "node_type": "string",
            "name": "string",
            "description": "string",
            "settings": {},
            "capacity_constraints": {
              "min": 42,
              "max": 42
            },
            "compatible_node_types": [
              "string"
            ],
            "mandatory": true
          }
        ]
      },
      "enterprise_search": {
        "version": "string",
        "docker_image": "string",
        "blacklist": [
          "string"
        ],
        "settings": {},
        "capacity_constraints": {
          "min": 42,
          "max": 42
        },
        "compatible_node_types": [
          "string"
        ],
        "node_types": [
          {
            "node_type": "string",
            "name": "string",
            "description": "string",
            "settings": {},
            "capacity_constraints": {
              "min": 42,
              "max": 42
            },
            "compatible_node_types": [
              "string"
            ],
            "mandatory": true
          }
        ]
      },
      "metadata": {
        "notes": "string",
        "pre_release": true,
        "min_platform_version": "string",
        "min_wire_compatibility_version": "string",
        "min_index_compatibility_version": "string",
        "schema_version": 42
      },
      "deleted": true,
      "upgradable_to": [
        "string"
      ],
      "min_upgradable_from": "6.7.0",
      "whitelisted": true,
      "accessible": true
    }
  ],
  "errors": [
    {
      "stack_version": "string",
      "errors": {
        "errors": [
          {
            "code": "string",
            "message": "string",
            "fields": [
              "string"
            ]
          }
        ]
      }
    }
  ]
}
Response examples (400)
# Headers
x-cloud-error-codes: stackpack.bad_archive

# Payload
{
  "stacks": [
    {
      "version": "string",
      "template": {
        "template_version": "string",
        "hashes": [
          {
            "path": "string",
            "hash": "string"
          }
        ]
      },
      "elasticsearch": {
        "docker_image": "string",
        "plugins": [
          "string"
        ],
        "default_plugins": [
          "string"
        ],
        "blacklist": [
          "string"
        ],
        "node_types": [
          {
            "node_type": "string",
            "name": "string",
            "description": "string",
            "settings": {},
            "capacity_constraints": {
              "min": 42,
              "max": 42
            },
            "compatible_node_types": [
              "string"
            ],
            "mandatory": true
          }
        ],
        "settings": {},
        "capacity_constraints": {
          "min": 42,
          "max": 42
        },
        "compatible_node_types": [
          "string"
        ]
      },
      "kibana": {
        "version": "string",
        "docker_image": "string",
        "blacklist": [
          "string"
        ],
        "settings": {},
        "capacity_constraints": {
          "min": 42,
          "max": 42
        },
        "compatible_node_types": [
          "string"
        ]
      },
      "apm": {
        "version": "string",
        "docker_image": "string",
        "blacklist": [
          "string"
        ],
        "settings": {},
        "capacity_constraints": {
          "min": 42,
          "max": 42
        },
        "compatible_node_types": [
          "string"
        ]
      },
      "appsearch": {
        "version": "string",
        "docker_image": "string",
        "blacklist": [
          "string"
        ],
        "settings": {},
        "capacity_constraints": {
          "min": 42,
          "max": 42
        },
        "compatible_node_types": [
          "string"
        ],
        "node_types": [
          {
            "node_type": "string",
            "name": "string",
            "description": "string",
            "settings": {},
            "capacity_constraints": {
              "min": 42,
              "max": 42
            },
            "compatible_node_types": [
              "string"
            ],
            "mandatory": true
          }
        ]
      },
      "enterprise_search": {
        "version": "string",
        "docker_image": "string",
        "blacklist": [
          "string"
        ],
        "settings": {},
        "capacity_constraints": {
          "min": 42,
          "max": 42
        },
        "compatible_node_types": [
          "string"
        ],
        "node_types": [
          {
            "node_type": "string",
            "name": "string",
            "description": "string",
            "settings": {},
            "capacity_constraints": {
              "min": 42,
              "max": 42
            },
            "compatible_node_types": [
              "string"
            ],
            "mandatory": true
          }
        ]
      },
      "metadata": {
        "notes": "string",
        "pre_release": true,
        "min_platform_version": "string",
        "min_wire_compatibility_version": "string",
        "min_index_compatibility_version": "string",
        "schema_version": 42
      },
      "deleted": true,
      "upgradable_to": [
        "string"
      ],
      "min_upgradable_from": "6.7.0",
      "whitelisted": true,
      "accessible": true
    }
  ],
  "errors": [
    {
      "stack_version": "string",
      "errors": {
        "errors": [
          {
            "code": "string",
            "message": "string",
            "fields": [
              "string"
            ]
          }
        ]
      }
    }
  ]
}




Update stack version

PUT /stack/versions/{version}

Updates the Elastic Stack version configuration.

Path parameters

  • version string Required

    The Elastic Stack version. For example, 5.3.1 or 5.0.0-RC4.

Body Required

Elastic Stack configuration object

  • elasticsearch object Required

    The Elasticsearch configuration for an Elastic Stack version.

    Additional properties are allowed.

    Hide elasticsearch attributes Show elasticsearch attributes object
    • docker_image string Required

      Docker image for the Elasticsearch

    • plugins array[string] Required

      List of available plugins

    • default_plugins array[string] Required

      List of default plugins

    • blacklist array[string] Required

      List of configuration options that cannot be overridden by user settings

    • node_types array[object]

      Node types that are supported by this stack version

      Hide node_types attributes Show node_types attributes object
      • node_type string Required

        Type of the node (master, data, ...)

      • name string Required

        Name of the node type

      • description string Required

        Description of the node type

      • settings object

        Settings that are applied to all nodes of this type

        Additional properties are allowed.

      • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

        Capacity constraints for the node type

        Additional properties are allowed.

        Hide capacity_constraints attributes Show capacity_constraints attributes object
        • min integer(int32) Required

          Min capacity of the instances

        • max integer(int32) Required

          Max capacity of the instances

      • Node types that are compatible with this one

      • mandatory boolean

        Flag to specify a node type is mandatory in a cluster's plan

    • settings object

      Settings that are applied to all nodes of this type

      Additional properties are allowed.

    • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

      Capacity constraints for the node type

      Additional properties are allowed.

      Hide capacity_constraints attributes Show capacity_constraints attributes object
      • min integer(int32) Required

        Min capacity of the instances

      • max integer(int32) Required

        Max capacity of the instances

    • Node types that are compatible with this one

  • kibana object Required

    The Kibana configuration for an Elastic Stack version.

    Additional properties are allowed.

    Hide kibana attributes Show kibana attributes object
    • version string

      Version of Kibana

    • docker_image string Required

      Docker image for the kibana

    • blacklist array[string] Required

      List of configuration options that cannot be overridden by user settings

    • settings object

      Settings that are applied to all nodes of this type

      Additional properties are allowed.

    • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

      Capacity constraints for the node type

      Additional properties are allowed.

      Hide capacity_constraints attributes Show capacity_constraints attributes object
      • min integer(int32) Required

        Min capacity of the instances

      • max integer(int32) Required

        Max capacity of the instances

    • Node types that are compatible with this one

  • apm object

    The APM Server configuration for an Elastic Stack version.

    Additional properties are allowed.

    Hide apm attributes Show apm attributes object
    • version string

      Version of APM

    • docker_image string Required

      Docker image for the APM

    • blacklist array[string] Required

      List of configuration options that cannot be overridden by user settings

    • settings object

      Settings that are applied to all nodes of this type

      Additional properties are allowed.

    • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

      Capacity constraints for the node type

      Additional properties are allowed.

      Hide capacity_constraints attributes Show capacity_constraints attributes object
      • min integer(int32) Required

        Min capacity of the instances

      • max integer(int32) Required

        Max capacity of the instances

    • Node types that are compatible with this one

  • The Integrations Server configuration for an Elastic Stack version.

    Additional properties are allowed.

    Hide integrations_server attributes Show integrations_server attributes object
    • version string

      Version of Integrations Server

    • docker_image string Required

      Docker image for the Integrations Server

    • blacklist array[string] Required

      List of configuration options that cannot be overridden by user settings

    • settings object

      Settings that are applied to all nodes of this type

      Additional properties are allowed.

    • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

      Capacity constraints for the node type

      Additional properties are allowed.

      Hide capacity_constraints attributes Show capacity_constraints attributes object
      • min integer(int32) Required

        Min capacity of the instances

      • max integer(int32) Required

        Max capacity of the instances

    • Node types that are compatible with this one

  • AppSearch related configuration of an Elastic Stack version

    Additional properties are allowed.

    Hide appsearch attributes Show appsearch attributes object
    • version string

      Version of AppSearch

    • docker_image string Required

      Docker image for the AppSearch

    • blacklist array[string] Required

      List of configuration options that cannot be overridden by user settings

    • settings object

      Settings that are applied to all nodes of this type

      Additional properties are allowed.

    • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

      Capacity constraints for the node type

      Additional properties are allowed.

      Hide capacity_constraints attributes Show capacity_constraints attributes object
      • min integer(int32) Required

        Min capacity of the instances

      • max integer(int32) Required

        Max capacity of the instances

    • Node types that are compatible with this one

    • node_types array[object]

      Node types that are supported by this stack version

      Hide node_types attributes Show node_types attributes object
      • node_type string Required

        Type of the node (master, data, ...)

      • name string Required

        Name of the node type

      • description string Required

        Description of the node type

      • settings object

        Settings that are applied to all nodes of this type

        Additional properties are allowed.

      • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

        Capacity constraints for the node type

        Additional properties are allowed.

        Hide capacity_constraints attributes Show capacity_constraints attributes object
        • min integer(int32) Required

          Min capacity of the instances

        • max integer(int32) Required

          Max capacity of the instances

      • Node types that are compatible with this one

      • mandatory boolean

        Flag to specify a node type is mandatory in a cluster's plan

  • metadata object

    The metadata for the Elastic Stack.

    Additional properties are allowed.

    Hide metadata attributes Show metadata attributes object

Responses

  • The Elastic Stack version successfully updated.

    Hide response attributes Show response attributes object
    • version string

      Stack version

    • template object Required

      The template information for an Elastic Stack version.

      Additional properties are allowed.

      Hide template attributes Show template attributes object
      • Template version

      • hashes array[object]

        Relative paths of files with SHA-256 hashes that contains the template

        Hide hashes attributes Show hashes attributes object
        • path string Required

          File path relative to template's root

        • hash string Required

          SHA-256 hash of a file

    • elasticsearch object Required

      The Elasticsearch configuration for an Elastic Stack version.

      Additional properties are allowed.

      Hide elasticsearch attributes Show elasticsearch attributes object
      • docker_image string Required

        Docker image for the Elasticsearch

      • plugins array[string] Required

        List of available plugins

      • default_plugins array[string] Required

        List of default plugins

      • blacklist array[string] Required

        List of configuration options that cannot be overridden by user settings

      • node_types array[object]

        Node types that are supported by this stack version

        Hide node_types attributes Show node_types attributes object
        • node_type string Required

          Type of the node (master, data, ...)

        • name string Required

          Name of the node type

        • description string Required

          Description of the node type

        • settings object

          Settings that are applied to all nodes of this type

          Additional properties are allowed.

        • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

          Capacity constraints for the node type

          Additional properties are allowed.

          Hide capacity_constraints attributes Show capacity_constraints attributes object
          • min integer(int32) Required

            Min capacity of the instances

          • max integer(int32) Required

            Max capacity of the instances

        • Node types that are compatible with this one

        • mandatory boolean

          Flag to specify a node type is mandatory in a cluster's plan

      • settings object

        Settings that are applied to all nodes of this type

        Additional properties are allowed.

      • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

        Capacity constraints for the node type

        Additional properties are allowed.

        Hide capacity_constraints attributes Show capacity_constraints attributes object
        • min integer(int32) Required

          Min capacity of the instances

        • max integer(int32) Required

          Max capacity of the instances

      • Node types that are compatible with this one

    • kibana object Required

      The Kibana configuration for an Elastic Stack version.

      Additional properties are allowed.

      Hide kibana attributes Show kibana attributes object
      • version string

        Version of Kibana

      • docker_image string Required

        Docker image for the kibana

      • blacklist array[string] Required

        List of configuration options that cannot be overridden by user settings

      • settings object

        Settings that are applied to all nodes of this type

        Additional properties are allowed.

      • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

        Capacity constraints for the node type

        Additional properties are allowed.

        Hide capacity_constraints attributes Show capacity_constraints attributes object
        • min integer(int32) Required

          Min capacity of the instances

        • max integer(int32) Required

          Max capacity of the instances

      • Node types that are compatible with this one

    • apm object

      The APM Server configuration for an Elastic Stack version.

      Additional properties are allowed.

      Hide apm attributes Show apm attributes object
      • version string

        Version of APM

      • docker_image string Required

        Docker image for the APM

      • blacklist array[string] Required

        List of configuration options that cannot be overridden by user settings

      • settings object

        Settings that are applied to all nodes of this type

        Additional properties are allowed.

      • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

        Capacity constraints for the node type

        Additional properties are allowed.

        Hide capacity_constraints attributes Show capacity_constraints attributes object
        • min integer(int32) Required

          Min capacity of the instances

        • max integer(int32) Required

          Max capacity of the instances

      • Node types that are compatible with this one

    • AppSearch related configuration of an Elastic Stack version

      Additional properties are allowed.

      Hide appsearch attributes Show appsearch attributes object
      • version string

        Version of AppSearch

      • docker_image string Required

        Docker image for the AppSearch

      • blacklist array[string] Required

        List of configuration options that cannot be overridden by user settings

      • settings object

        Settings that are applied to all nodes of this type

        Additional properties are allowed.

      • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

        Capacity constraints for the node type

        Additional properties are allowed.

        Hide capacity_constraints attributes Show capacity_constraints attributes object
        • min integer(int32) Required

          Min capacity of the instances

        • max integer(int32) Required

          Max capacity of the instances

      • Node types that are compatible with this one

      • node_types array[object]

        Node types that are supported by this stack version

        Hide node_types attributes Show node_types attributes object
        • node_type string Required

          Type of the node (master, data, ...)

        • name string Required

          Name of the node type

        • description string Required

          Description of the node type

        • settings object

          Settings that are applied to all nodes of this type

          Additional properties are allowed.

        • WARNING This endpoint is deprecated and scheduled to be removed in the next major version. This field will soon be removed in favor of having a global capacity constraint for all node types.

          Capacity constraints for the node type

          Additional properties are allowed.

          Hide capacity_constraints attributes Show capacity_constraints attributes object
          • min integer(int32) Required

            Min capacity of the instances

          • max integer(int32) Required

            Max capacity of the instances

        • Node types that are compatible with this one

        • mandatory boolean

          Flag to specify a node type is mandatory in a cluster's plan

    • metadata object

      The metadata for the Elastic Stack.

      Additional properties are allowed.

      Hide metadata attributes Show metadata attributes object
    • deleted boolean

      Identifies that the Elastic Stack version is marked for deletion

    • upgradable_to array[string] Required

      Stack Versions that this version can upgrade to

    • The minimum version recommended to upgrade this version.

    • Whether or not this version is whitelisted. This is only relevant in EC (SaaS) and is not sent in ECE.

    • accessible boolean

      Whether or not this version is accessible by the calling user. This is only relevant in EC (SaaS) and is not sent in ECE.

  • The Elastic Stack version can't be found. (code: stackpack.missing_platform_version)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is stackpack.missing_platform_version.

    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

PUT /stack/versions/{version}
curl \
 -X PUT https://{{hostname}}/api/v1/stack/versions/{version} \
 -d '{"elasticsearch":{"docker_image":"string","plugins":["string"],"default_plugins":["string"],"blacklist":["string"],"node_types":[{"node_type":"string","name":"string","description":"string","settings":{},"capacity_constraints":{"min":42,"max":42},"compatible_node_types":["string"],"mandatory":true}],"settings":{},"capacity_constraints":{"min":42,"max":42},"compatible_node_types":["string"]},"kibana":{"version":"string","docker_image":"string","blacklist":["string"],"settings":{},"capacity_constraints":{"min":42,"max":42},"compatible_node_types":["string"]},"apm":{"version":"string","docker_image":"string","blacklist":["string"],"settings":{},"capacity_constraints":{"min":42,"max":42},"compatible_node_types":["string"]},"integrations_server":{"version":"string","docker_image":"string","blacklist":["string"],"settings":{},"capacity_constraints":{"min":42,"max":42},"compatible_node_types":["string"]},"appsearch":{"version":"string","docker_image":"string","blacklist":["string"],"settings":{},"capacity_constraints":{"min":42,"max":42},"compatible_node_types":["string"],"node_types":[{"node_type":"string","name":"string","description":"string","settings":{},"capacity_constraints":{"min":42,"max":42},"compatible_node_types":["string"],"mandatory":true}]},"enterprise_search":{"version":"string","docker_image":"string","blacklist":["string"],"settings":{},"capacity_constraints":{"min":42,"max":42},"compatible_node_types":["string"],"node_types":[{"node_type":"string","name":"string","description":"string","settings":{},"capacity_constraints":{"min":42,"max":42},"compatible_node_types":["string"],"mandatory":true}]},"metadata":{"notes":"string","pre_release":true,"min_platform_version":"string","min_wire_compatibility_version":"string","min_index_compatibility_version":"string","schema_version":42}}'
Request examples
{
  "elasticsearch": {
    "docker_image": "string",
    "plugins": [
      "string"
    ],
    "default_plugins": [
      "string"
    ],
    "blacklist": [
      "string"
    ],
    "node_types": [
      {
        "node_type": "string",
        "name": "string",
        "description": "string",
        "settings": {},
        "capacity_constraints": {
          "min": 42,
          "max": 42
        },
        "compatible_node_types": [
          "string"
        ],
        "mandatory": true
      }
    ],
    "settings": {},
    "capacity_constraints": {
      "min": 42,
      "max": 42
    },
    "compatible_node_types": [
      "string"
    ]
  },
  "kibana": {
    "version": "string",
    "docker_image": "string",
    "blacklist": [
      "string"
    ],
    "settings": {},
    "capacity_constraints": {
      "min": 42,
      "max": 42
    },
    "compatible_node_types": [
      "string"
    ]
  },
  "apm": {
    "version": "string",
    "docker_image": "string",
    "blacklist": [
      "string"
    ],
    "settings": {},
    "capacity_constraints": {
      "min": 42,
      "max": 42
    },
    "compatible_node_types": [
      "string"
    ]
  },
  "integrations_server": {
    "version": "string",
    "docker_image": "string",
    "blacklist": [
      "string"
    ],
    "settings": {},
    "capacity_constraints": {
      "min": 42,
      "max": 42
    },
    "compatible_node_types": [
      "string"
    ]
  },
  "appsearch": {
    "version": "string",
    "docker_image": "string",
    "blacklist": [
      "string"
    ],
    "settings": {},
    "capacity_constraints": {
      "min": 42,
      "max": 42
    },
    "compatible_node_types": [
      "string"
    ],
    "node_types": [
      {
        "node_type": "string",
        "name": "string",
        "description": "string",
        "settings": {},
        "capacity_constraints": {
          "min": 42,
          "max": 42
        },
        "compatible_node_types": [
          "string"
        ],
        "mandatory": true
      }
    ]
  },
  "enterprise_search": {
    "version": "string",
    "docker_image": "string",
    "blacklist": [
      "string"
    ],
    "settings": {},
    "capacity_constraints": {
      "min": 42,
      "max": 42
    },
    "compatible_node_types": [
      "string"
    ],
    "node_types": [
      {
        "node_type": "string",
        "name": "string",
        "description": "string",
        "settings": {},
        "capacity_constraints": {
          "min": 42,
          "max": 42
        },
        "compatible_node_types": [
          "string"
        ],
        "mandatory": true
      }
    ]
  },
  "metadata": {
    "notes": "string",
    "pre_release": true,
    "min_platform_version": "string",
    "min_wire_compatibility_version": "string",
    "min_index_compatibility_version": "string",
    "schema_version": 42
  }
}
Response examples (200)
{
  "version": "string",
  "template": {
    "template_version": "string",
    "hashes": [
      {
        "path": "string",
        "hash": "string"
      }
    ]
  },
  "elasticsearch": {
    "docker_image": "string",
    "plugins": [
      "string"
    ],
    "default_plugins": [
      "string"
    ],
    "blacklist": [
      "string"
    ],
    "node_types": [
      {
        "node_type": "string",
        "name": "string",
        "description": "string",
        "settings": {},
        "capacity_constraints": {
          "min": 42,
          "max": 42
        },
        "compatible_node_types": [
          "string"
        ],
        "mandatory": true
      }
    ],
    "settings": {},
    "capacity_constraints": {
      "min": 42,
      "max": 42
    },
    "compatible_node_types": [
      "string"
    ]
  },
  "kibana": {
    "version": "string",
    "docker_image": "string",
    "blacklist": [
      "string"
    ],
    "settings": {},
    "capacity_constraints": {
      "min": 42,
      "max": 42
    },
    "compatible_node_types": [
      "string"
    ]
  },
  "apm": {
    "version": "string",
    "docker_image": "string",
    "blacklist": [
      "string"
    ],
    "settings": {},
    "capacity_constraints": {
      "min": 42,
      "max": 42
    },
    "compatible_node_types": [
      "string"
    ]
  },
  "appsearch": {
    "version": "string",
    "docker_image": "string",
    "blacklist": [
      "string"
    ],
    "settings": {},
    "capacity_constraints": {
      "min": 42,
      "max": 42
    },
    "compatible_node_types": [
      "string"
    ],
    "node_types": [
      {
        "node_type": "string",
        "name": "string",
        "description": "string",
        "settings": {},
        "capacity_constraints": {
          "min": 42,
          "max": 42
        },
        "compatible_node_types": [
          "string"
        ],
        "mandatory": true
      }
    ]
  },
  "enterprise_search": {
    "version": "string",
    "docker_image": "string",
    "blacklist": [
      "string"
    ],
    "settings": {},
    "capacity_constraints": {
      "min": 42,
      "max": 42
    },
    "compatible_node_types": [
      "string"
    ],
    "node_types": [
      {
        "node_type": "string",
        "name": "string",
        "description": "string",
        "settings": {},
        "capacity_constraints": {
          "min": 42,
          "max": 42
        },
        "compatible_node_types": [
          "string"
        ],
        "mandatory": true
      }
    ]
  },
  "metadata": {
    "notes": "string",
    "pre_release": true,
    "min_platform_version": "string",
    "min_wire_compatibility_version": "string",
    "min_index_compatibility_version": "string",
    "schema_version": 42
  },
  "deleted": true,
  "upgradable_to": [
    "string"
  ],
  "min_upgradable_from": "6.7.0",
  "whitelisted": true,
  "accessible": true
}
Response examples (404)
# Headers
x-cloud-error-codes: stackpack.missing_platform_version

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}

Delete stack version

DELETE /stack/versions/{version}

Uses the deleted flag, which removes only that version of the Elastic Stack from the list of available versions. To restore the version, send an update request. For more information, see the PUT request.

Path parameters

  • version string Required

    The Elastic Stack version. For example, 5.3.1 or 5.0.0-RC4.

Responses

  • The deleted flag is applied to the specified Elastic Stack version.

    Additional properties are allowed.

  • The Elastic Stack version can't be found. (code: stackpack.version_not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is stackpack.version_not_found.

    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

DELETE /stack/versions/{version}
curl \
 -X DELETE https://{{hostname}}/api/v1/stack/versions/{version}
Response examples (200)
{}
Response examples (404)
# Headers
x-cloud-error-codes: stackpack.version_not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}

Telemetry

Manage your Elasticsearch Cloud Enterprise telemetry configuration.









Get all templates cross region.

GET /platform/configuration/templates/deployments/global

Global deployment template endpoint which fetches the deployment templates across all region services.

Responses

  • The deployment templates were returned successfully.

    Hide response attributes Show response attributes object
    • Provider agnostic template identifier.

    • name string Required

      Long name of the Template

    • description string Required

      An optional description for the template.

    • order integer(int32) Required

      The order in which the templates should be displayed in the front-end.

    • metadata array[object]

      Optional arbitrary metadata to associate with this template.

      Hide metadata attributes Show metadata attributes object
      • key string Required

        The metadata field name

      • value string Required

        The metadata value

    • regions array[object] Required

      List of regions this template is used in.

      Hide regions attributes Show regions attributes object
      • region_id string Required

        The region identifier.

      • deployment_template_id string Required

        The (region-specific) ID of the deployment template.

      • versions array[string] Required

        Versions supported in this region.

GET /platform/configuration/templates/deployments/global
curl \
 -X GET https://{{hostname}}/api/v1/platform/configuration/templates/deployments/global
Response examples (200)
[
  {
    "template_category_id": "string",
    "name": "string",
    "description": "string",
    "order": 42,
    "metadata": [
      {
        "key": "string",
        "value": "string"
      }
    ],
    "regions": [
      {
        "region_id": "string",
        "deployment_template_id": "string",
        "versions": [
          "string"
        ],
        "kibana_deeplink": [
          {
            "semver": "string",
            "uri": "string"
          }
        ]
      }
    ]
  }
]

Trusted environments

Get the list of trusted environments for the organization.

Get trusted environments

GET /trusted-environments

Returns the list of trusted environments for the organization. If no organization is passed in, the organization attached to the user is assumed.

Query parameters

  • (Optional) Organization Id for which to retrieve the trusted environments

Responses

  • Trusted environments for this organization

    Hide response attributes Show response attributes object
    • accounts array[object]

      The list of trust relationships with different accounts

      Hide accounts attributes Show accounts attributes object
      • account_id string Required

        the ID of the Account

      • name string

        A human readable name of the trust relationship

      • trust_all boolean Required

        If true, all clusters in this account will by default be trusted and the trust_allowlist is ignored.

      • trust_allowlist array[string]

        The list of clusters to trust. Only used when trust_all is false.

    • external array[object]

      The list of trust relationships with external entities

      Hide external attributes Show external attributes object
      • trust_relationship_id string Required

        The ID of the external trust relationship

      • name string

        The name of the external trust relationship. Retrieved from the TrustRelationship and ignored on write.

      • trust_all boolean Required

        If true, all clusters in this external entity will be trusted and the trust_allowlist is ignored.

      • trust_allowlist array[string]

        The list of clusters to trust. Only used when trust_all is false.

    • direct array[object]

      The list of trust relationships where the certificate is bundled with the trust setting. Allows configuring trust for clusters running outside of an Elastic Cloud managed environment or in an Elastic Cloud environment without an environment level trust established.

      Hide direct attributes Show direct attributes object
      • uid string

        Auto generated identifier for this trust, allows distinguishing between update vs remove and add.

      • name string Required

        a human readable name of the trust relationship

      • type string

        The type can either be ESS, ECE, generic or proxy. If none is specified, then generic is assumed. If proxy is specified, trust_all should be false and trust_allowlist, scope_id and additional_node_names should be omitted.

        Values are ECE, ESS, generic, or proxy.

      • trust_all boolean Required

        If true, scope_id is required and the trust_allowlist is ignored and all clusters matching the scope id will be trusted.

      • trust_allowlist array[string]

        The list of clusters with matching scope to trust. Only used when trust_all is false. Providing one or more clusters makes scope_id mandatory.

      • scope_id string

        A lowercase alphanumerical string of max 32 characters. Usually an organization id or an environment id, but could really be any suitable suffix for clusters using the CA certificate of this trust. Required unless trust_all is false and trust_allowlist is empty.

      • A list of node names trusted in addition to those deducible from trust_allowlist and scope id. Allows trusting nodes that don't have a scoped name at the cost of maintaining the list. Mandatory if scope id is not defined. Wildcards are not allowed.

      • certificates array[object] Required

        The public ca certificate(s) to trust. Only one is required, but it is possible to specify multiple certificates in order to facilitate key rotation.

        Hide certificates attributes Show certificates attributes object
        • pem string Required

          The public ca certificate as string in PEM format.

        • metadata object

          Metadata about the certificate, including fingerprint and expiry date. Generated by the Cloud service and ignored on write.

          Additional properties are allowed.

          Hide metadata attributes Show metadata attributes object
          • fingerprint string Required

            The fingerprint of the certificate

          • valid_to string(date-time) Required

            The expiry date of the certificate in UTC

          • valid_from string(date-time) Required

            The valid from date of the certificate in UTC

          • also_trusted_by array[string]

            Other deployments also trusting this certificate

  • Organization not found. (code: organization.not_found)

    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Value is organization.not_found.

    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

GET /trusted-environments
curl \
 -X GET https://{{hostname}}/api/v1/trusted-environments
Response examples (200)
{
  "accounts": [
    {
      "account_id": "string",
      "name": "string",
      "trust_all": true,
      "trust_allowlist": [
        "string"
      ]
    }
  ],
  "external": [
    {
      "trust_relationship_id": "string",
      "name": "string",
      "trust_all": true,
      "trust_allowlist": [
        "string"
      ]
    }
  ],
  "direct": [
    {
      "uid": "string",
      "name": "string",
      "type": "ECE",
      "trust_all": true,
      "trust_allowlist": [
        "string"
      ],
      "scope_id": "abc123",
      "additional_node_names": [
        "string"
      ],
      "certificates": [
        {
          "pem": "string",
          "metadata": {
            "fingerprint": "string",
            "valid_to": "2025-05-04T09:42:00+00:00",
            "valid_from": "2025-05-04T09:42:00+00:00",
            "also_trusted_by": [
              "string"
            ]
          }
        }
      ]
    }
  ]
}
Response examples (404)
# Headers
x-cloud-error-codes: organization.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}

Users

Manage your Elasticsearch Cloud Enterprise users.





Updates the current user

PATCH /user

Updates the current user.

Body Required

All changes in the specified object are applied to the current user according to the JSON Merge Patch processing rules. Omitting existing fields causes the same values to be reapplied. Specifying a null value reverts the field to the default value, or removes the field when no default value exists.

string string

Responses

  • User successfully updated

    Hide response attributes Show response attributes object
    • user_name string Required

      The user's identifier

    • security object Required

      The user's security information

      Additional properties are allowed.

      Hide security attributes Show security attributes object
      • roles array[string]

        The set of roles assigned to a user

      • permissions array[string]

        The distinct set of permissions allowed by the user's roles. These correspond to operationId values in the OpenAPI definition.

      • The user's elevated permission status

        Additional properties are allowed.

        Hide elevated_permissions attributes Show elevated_permissions attributes object
        • enabled boolean Required

          True if the user has elevated permissions

        • expires_at string(date-time)

          The time at which the user's elevated permissions expire

      • password string

        The user's password. Only used when modifying a user.

      • enabled boolean

        True if the user is enabled

      • The user's security realm

        Additional properties are allowed.

        Hide security_realm attributes Show security_realm attributes object
        • type string Required

          The type of the security realm

          Values are native, ldap, saml, or active_directory.

        • id string Required

          The identifier for the security realm

    • metadata object

      The users metadata

      Additional properties are allowed.

      Hide metadata attributes Show metadata attributes object
      • The Id of the user that created this user

      • created_at string(date-time)

        The date and time when the user was created

      • The Id of the user that last updated this user

      • updated_at string(date-time)

        The date and time when the user was last updated

      • first_login_at string(date-time)

        The date and time when the user first logged in

      • last_login_at string(date-time)

        The date and time when the user last logged in

    • The user's optional full name

    • email string

      The user's optional email address

    • builtin boolean

      True if the user is a built-in read-only user

    • Some of the provided roles are invalid. (code: user.roles.invalid)
    • Some of the provided roles are forbidden. (code: user.roles.forbidden)
    • Trying to set a restricted field. (code: user.restricted_field)
    • External users cannot be modified. (code: user.cannot_modify_external)
    • Built-in users cannot be modified. (code: user.cannot_modify)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are user.roles.invalid, user.roles.forbidden, user.restricted_field, user.cannot_modify_external, or user.cannot_modify.

    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

  • User not found. (code: user.not_found)

    Hide headers attribute Show headers attribute
    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

PATCH /user
curl \
 -X PATCH https://{{hostname}}/api/v1/user \
 -d '"string"'
Request examples
string
Response examples (200)
{
  "user_name": "string",
  "security": {
    "roles": [
      "string"
    ],
    "permissions": [
      "string"
    ],
    "elevated_permissions": {
      "enabled": true,
      "expires_at": "2025-05-04T09:42:00+00:00"
    },
    "password": "string",
    "enabled": true,
    "security_realm": {
      "type": "native",
      "id": "string"
    }
  },
  "metadata": {
    "created_by": "string",
    "created_at": "2025-05-04T09:42:00+00:00",
    "updated_by": "string",
    "updated_at": "2025-05-04T09:42:00+00:00",
    "first_login_at": "2025-05-04T09:42:00+00:00",
    "last_login_at": "2025-05-04T09:42:00+00:00"
  },
  "full_name": "string",
  "email": "string",
  "builtin": true
}
Response examples (400)
# Headers
x-cloud-error-codes: user.roles.invalid

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (404)
# Headers
x-cloud-error-codes: user.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
















Updates an existing user

PATCH /users/{user_name}

Updates an existing user.

Path parameters

Body Required

All changes in the specified object are applied to the user according to the JSON Merge Patch processing rules. Omitting existing fields causes the same values to be reapplied. Specifying a null value reverts the field to the default value, or removes the field when no default value exists.

string string

Responses

  • User successfully updated

    Hide response attributes Show response attributes object
    • user_name string Required

      The user's identifier

    • security object Required

      The user's security information

      Additional properties are allowed.

      Hide security attributes Show security attributes object
      • roles array[string]

        The set of roles assigned to a user

      • permissions array[string]

        The distinct set of permissions allowed by the user's roles. These correspond to operationId values in the OpenAPI definition.

      • The user's elevated permission status

        Additional properties are allowed.

        Hide elevated_permissions attributes Show elevated_permissions attributes object
        • enabled boolean Required

          True if the user has elevated permissions

        • expires_at string(date-time)

          The time at which the user's elevated permissions expire

      • password string

        The user's password. Only used when modifying a user.

      • enabled boolean

        True if the user is enabled

      • The user's security realm

        Additional properties are allowed.

        Hide security_realm attributes Show security_realm attributes object
        • type string Required

          The type of the security realm

          Values are native, ldap, saml, or active_directory.

        • id string Required

          The identifier for the security realm

    • metadata object

      The users metadata

      Additional properties are allowed.

      Hide metadata attributes Show metadata attributes object
      • The Id of the user that created this user

      • created_at string(date-time)

        The date and time when the user was created

      • The Id of the user that last updated this user

      • updated_at string(date-time)

        The date and time when the user was last updated

      • first_login_at string(date-time)

        The date and time when the user first logged in

      • last_login_at string(date-time)

        The date and time when the user last logged in

    • The user's optional full name

    • email string

      The user's optional email address

    • builtin boolean

      True if the user is a built-in read-only user

    • Some of the provided roles are invalid. (code: user.roles.invalid)
    • Some of the provided roles are forbidden. (code: user.roles.forbidden)
    • Trying to set a restricted field. (code: user.restricted_field)
    • External users cannot be modified. (code: user.cannot_modify_external)
    • Built-in users cannot be modified. (code: user.cannot_modify)
    Hide headers attribute Show headers attribute
    • The error codes associated with the response

      Values are user.roles.invalid, user.roles.forbidden, user.restricted_field, user.cannot_modify_external, or user.cannot_modify.

    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

  • User not found. (code: user.not_found)

    Hide headers attribute Show headers attribute
    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

PATCH /users/{user_name}
curl \
 -X PATCH https://{{hostname}}/api/v1/users/{user_name} \
 -d '"string"'
Request examples
string
Response examples (200)
{
  "user_name": "string",
  "security": {
    "roles": [
      "string"
    ],
    "permissions": [
      "string"
    ],
    "elevated_permissions": {
      "enabled": true,
      "expires_at": "2025-05-04T09:42:00+00:00"
    },
    "password": "string",
    "enabled": true,
    "security_realm": {
      "type": "native",
      "id": "string"
    }
  },
  "metadata": {
    "created_by": "string",
    "created_at": "2025-05-04T09:42:00+00:00",
    "updated_by": "string",
    "updated_at": "2025-05-04T09:42:00+00:00",
    "first_login_at": "2025-05-04T09:42:00+00:00",
    "last_login_at": "2025-05-04T09:42:00+00:00"
  },
  "full_name": "string",
  "email": "string",
  "builtin": true
}
Response examples (400)
# Headers
x-cloud-error-codes: user.roles.invalid

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}
Response examples (404)
# Headers
x-cloud-error-codes: user.not_found

# Payload
{
  "errors": [
    {
      "code": "string",
      "message": "string",
      "fields": [
        "string"
      ]
    }
  ]
}