Set cluster metadata

edit

Advanced use only: Sets the internal cluster metadata (free-form JSON) for an Elasticsearch cluster. Must only be used to set a modified version of the JSON returned from the get version of the metadata.

Request

edit

POST /api/v1/clusters/elasticsearch/{cluster_id}/metadata/raw

Path parameters

edit
Name Type Required Description

cluster_id

string

Y

The Elasticsearch cluster identifier.

Query parameters

edit
Name Type Required Description

version

integer

N

Checks for conflicts against the metadata version, then returns the value in the x-cloud-resource-version header.

Request body

edit

(string) (required) The freeform JSON for the cluster (should always be based on the current version retrieved from the GET)

Responses

edit
200

(object) The cluster metadata was successfully changed (the updated JSON is returned)

Headers

x-cloud-resource-created (string)
The date-time when the resource was created (ISO format relative to UTC)
x-cloud-resource-last-modified (string)
The date-time when the resource was last modified (ISO format relative to UTC)
x-cloud-resource-version (string)
The version of the resource - used to avoid update conflicts from multiple concurrent operations
404

(BasicFailedReply) The cluster specified by {cluster_id} cannot be found (code: 'clusters.cluster_not_found')

449

(BasicFailedReply) elevated permissions are required. (code: '"root.needs_elevated_permissions"')

To perform this operation, you must be authenticated by means of one of the following methods: apiKey, basicAuth.

Request example

edit
curl -XPOST {{hostname}}/api/v1/clusters/elasticsearch/{cluster_id}/metadata/raw \
-u $CLOUD_USER:$CLOUD_KEY