Skip to main content
PATCH
/
cloud
/
v2
/
loadbalancers
/
{project_id}
/
{region_id}
/
{load_balancer_id}
Update load balancer
curl --request PATCH \
  --url https://api.gcore.com/cloud/v2/loadbalancers/{project_id}/{region_id}/{load_balancer_id} \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "admin_state_up": true,
  "logging": {
    "destination_region_id": 1,
    "enabled": false,
    "retention_policy": {
      "period": 45
    },
    "topic_name": "my-log-name"
  },
  "name": "<string>",
  "preferred_connectivity": "L2",
  "tags": {
    "my-tag": "my-tag-value",
    "my-tag-to-remove": null
  }
}
'
{
  "tasks": [
    "<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

Example:

1

region_id
integer
required

Region ID

Example:

1

load_balancer_id
string<uuid4>
required

Load balancer ID

Example:

"00000000-0000-4000-8000-000000000000"

Body

application/json
admin_state_up
boolean

Administrative state of the resource. When set to true, the resource is enabled and operational. When set to false, the resource is disabled and will not process traffic. Defaults to true.

Examples:

true

false

logging
LoadbalancerLoggingSerializer · object

Logging configuration

name
string

Name.

Example:

"some_name"

preferred_connectivity
enum<string>

Preferred option to establish connectivity between load balancer and its pools members

Available options:
L2,
L3
Example:
["L2", "L3"]
tags
UpdateTagsSerializer · object

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.
Example:
{
"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.
Example:
["d478ae29-dedc-4869-82f0-96104425f565"]