POST
/
cloud
/
v3
/
gpu
/
baremetal
/
{project_id}
/
{region_id}
/
clusters
/
{cluster_id}
/
action
Execute baremetal GPU cluster action
curl --request POST \
  --url https://api.gcore.com/cloud/v3/gpu/baremetal/{project_id}/{region_id}/clusters/{cluster_id}/action \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '{
  "action": "update_tags",
  "tags": {
    "my-tag": "my-tag-value",
    "my-tag-to-remove": null
  }
}'
{
  "tasks": [
    "d478ae29-dedc-4869-82f0-96104425f565"
  ],
  "id": "<string>"
}

Authorizations

Authorization
string
header
required

API key for authentication. Make sure to include the word apikey, followed by a single space and then your token. Example: apikey 1234$abcdef

Path Parameters

project_id
integer
required

Project ID

Examples:

1

region_id
integer
required

Region ID

Examples:

7

cluster_id
string<uuid4>
required

Cluster unique identifier

Examples:

"1aaaab48-10d0-46d9-80cc-85209284ceb4"

Body

application/json
action
string
required

Action name

Allowed value: "update_tags"
Examples:

"update_tags"

tags
object | null
required

Update key-value tags using JSON Merge Patch semantics (RFC 7386). Provide key-value pairs to add or update tags. Set tag values to null to remove tags. Unspecified tags remain unchanged. Read-only tags are always preserved and cannot be modified. Examples: * Add/update tags: {'tags': {'environment': 'production', 'team': 'backend'}} adds new tags or updates existing ones. * Delete tags: {'tags': {'old_tag': null}} removes specific tags. * Remove all tags: {'tags': null} removes all user-managed tags (read-only tags are preserved). * Partial update: {'tags': {'environment': 'staging'}} only updates specified tags. * Mixed operations: {'tags': {'environment': 'production', 'cost_center': 'engineering', 'deprecated_tag': null}} adds/updates 'environment' and 'cost_center' while removing 'deprecated_tag', preserving other existing tags. * Replace all: first delete existing tags with null values, then add new ones in the same request.

Examples:
{
"my-tag": "my-tag-value",
"my-tag-to-remove": null
}

Response

200 - application/json

OK

tasks
string[]
required

List of task IDs representing asynchronous operations. Use these IDs to monitor operation progress: * GET /v1/tasks/{task_id} - Check individual task status and details Poll task status until completion (FINISHED/ERROR) before proceeding with dependent operations.

Examples:
["d478ae29-dedc-4869-82f0-96104425f565"]
id
string
required