GET
/
cloud
/
v1
/
instances
/
{project_id}
/
{region_id}
import os
from gcore import Gcore

client = Gcore(
    api_key=os.environ.get("GCORE_API_KEY"),  # This is the default and can be omitted
)
page = client.cloud.instances.list(
    project_id=1,
    region_id=1,
)
page = page.results[0]
print(page.id)
{
  "count": 1,
  "results": [
    {
      "addresses": {},
      "blackhole_ports": [
        {
          "AlarmEnd": "2025-02-05 12:04:30",
          "AlarmStart": "2025-02-05 12:04:11",
          "AlarmState": "alarm",
          "AlertDuration": "2 hours",
          "DestinationIP": "80.240.114.116",
          "ID": 123
        }
      ],
      "created_at": "2023-11-29T10:56:49Z",
      "creator_task_id": "<string>",
      "ddos_profile": {
        "fields": [
          {
            "base_field": 10,
            "default": null,
            "description": "ARK server ports. Valid port values are in range 1000-65535",
            "field_type": null,
            "field_value": [
              45046,
              45047
            ],
            "id": 11,
            "name": "ARK Ports",
            "required": true,
            "validation_schema": {
              "items": {
                "maximum": 65535,
                "minimum": 1000,
                "type": "integer"
              },
              "minItems": 1,
              "type": "array"
            },
            "value": null
          }
        ],
        "id": 0,
        "options": {
          "active": true,
          "bgp": true
        },
        "profile_template": {
          "description": "description",
          "fields": [
            {
              "default": null,
              "description": "ARK server ports. Valid port values are in range 1000-65535",
              "field_type": null,
              "id": 11,
              "name": "ARK Ports",
              "required": true,
              "validation_schema": {
                "items": {
                  "maximum": 65535,
                  "minimum": 1000,
                  "type": "integer"
                },
                "minItems": 1,
                "type": "array"
              }
            }
          ],
          "id": 123,
          "name": "ICMP port"
        },
        "profile_template_description": "ARK server ports. Valid port values are in range 1000-65535",
        "protocols": [
          {
            "additionalProp1": "string",
            "additionalProp2": "string",
            "additionalProp3": "string"
          }
        ],
        "site": "ED",
        "status": {
          "error_description": "",
          "status": "Updated"
        }
      },
      "fixed_ip_assignments": [
        {
          "external": true,
          "ip_address": "123.123.123.1",
          "subnet_id": "eaafdc3c-f48b-4eb4-826f-057dfc7d6476"
        }
      ],
      "flavor": {
        "architecture": "x86_64",
        "flavor_id": "g2-standard-32-64",
        "flavor_name": "g2-standard-32-64",
        "hardware_description": {
          "ram": "16384",
          "vcpus": "16"
        },
        "os_type": "linux",
        "ram": 2048,
        "vcpus": 1
      },
      "id": "6c6aa80f-7836-4dc2-a2ae-125e248be476",
      "instance_description": "Instance description",
      "instance_isolation": {
        "reason": "Suspicious activities"
      },
      "name": "my-instance-1",
      "project_id": 111,
      "region": "Luxembourg",
      "region_id": 4,
      "security_groups": [
        {
          "name": "some_name"
        }
      ],
      "ssh_key_name": "<string>",
      "status": "ACTIVE",
      "tags": [
        {
          "key": "my-tag",
          "read_only": false,
          "value": "my-tag-value"
        }
      ],
      "task_id": null,
      "task_state": "<string>",
      "vm_state": "active",
      "volumes": [
        {
          "delete_on_termination": true,
          "id": "<string>"
        }
      ]
    }
  ]
}

Authorizations

APIKey
string
header
required

API key for authentication.

Path Parameters

project_id
integer
required

Project ID

Examples:

1

region_id
integer
required

Region ID

Examples:

1

Query Parameters

available_floating
boolean

Only show instances which are able to handle floating address

Examples:

true

changes-before
string

Filters the instances by a date and time stamp when the instances last changed.

Examples:

"2025-10-01T12:00:00Z"

changes-since
string

Filters the instances by a date and time stamp when the instances last changed status.

Examples:

"2025-10-01T12:00:00Z"

exclude_flavor_prefix
string

Exclude instances with specified flavor prefix

Examples:

"g1-"

exclude_secgroup
string

Exclude instances with specified security group name

Examples:

"secgroup_name"

flavor_id
string

Filter out instances by flavor_id. Flavor id must match exactly.

Examples:

"g2-standard-32-64"

flavor_prefix
string

Filter out instances by flavor_prefix.

Examples:

"g2-"

include_ai
boolean
default:false
deprecated

Include GPU clusters' servers

Examples:

false

include_baremetal
boolean
default:false
deprecated

Include bare metal servers. Please, use GET /v1/bminstances/ instead

Examples:

false

include_k8s
boolean
default:true

Include managed k8s worker nodes

ip
string

An IPv4 address to filter results by. Note: partial matches are allowed. For example, searching for 192.168.0.1 will return 192.168.0.1, 192.168.0.10, 192.168.0.110, and so on.

Examples:

"192.168.0.1"

limit
integer
default:1000

Optional. Limit the number of returned items

Required range: 0 < x <= 1000
Examples:

1000

name
string

Filter instances by name. You can provide a full or partial name, instances with matching names will be returned. For example, entering 'test' will return all instances that contain 'test' in their name.

offset
integer
default:0

Optional. Offset value is used to exclude the first set of records from the result

Required range: x >= 0
Examples:

0

only_isolated
boolean
default:false

Include only isolated instances

only_with_fixed_external_ip
boolean

Return bare metals only with external fixed IP addresses.

Examples:

true

order_by
enum<string>

Order by field and direction.

Available options:
created.asc,
created.desc,
name.asc,
name.desc
profile_name
string

Filter result by ddos protection profile name. Effective only with with_ddos set to true.

Examples:

"profile_name"

protection_status
enum<string>

Filter result by DDoS protection_status. if parameter is provided. Effective only with with_ddos set to true. (Active, Queued or Error)

Available options:
Active,
Queued,
Error
Examples:

"Active"

status
enum<string>

Filters instances by status.

Available options:
ACTIVE,
BUILD,
ERROR,
HARD_REBOOT,
MIGRATING,
PAUSED,
REBOOT,
REBUILD,
RESIZE,
REVERT_RESIZE,
SHELVED,
SHELVED_OFFLOADED,
SHUTOFF,
SOFT_DELETED,
SUSPENDED,
VERIFY_RESIZE
tag_key_value
string

Optional. Filter by tag key-value pairs. curl -G --data-urlencode "tag_key_value={"key": "value"}" --url "https://example.com/cloud/v1/resource/1/1"

Examples:
{ "key": "value" }
tag_value
string[]

Optional. Filter by tag values. ?tag_value=value1&tag_value=value2

Tag value. The maximum size for a value is 1024 bytes.

Examples:
["value1", "value2"]
type_ddos_profile
enum<string>

Return bare metals either only with advanced or only basic DDoS protection. Effective only with with_ddos set to true. (advanced or basic)

Available options:
basic,
advanced
Examples:

"advanced"

uuid
string

Filter the server list result by the UUID of the server. Allowed UUID part

Maximum length: 36
Examples:

"b5b4d65d-945f-4b98-ab6f-332319c724ef"

with_ddos
boolean
default:false

Include DDoS profile information in the response when set to true. Otherwise, the ddos_profile field in the response is null by default.

Examples:

true

with_interfaces_name
boolean
default:false

Include interface_name in the addresses

Examples:

true

Response

200 - application/json

OK

The response is of type object.