Python
import os
from gcore import Gcore
client = Gcore(
api_key=os.environ.get("GCORE_API_KEY"), # This is the default and can be omitted
)
instance_list = client.cloud.k8s.clusters.nodes.list(
cluster_name="my-cluster",
project_id=1,
region_id=7,
)
print(instance_list.count)package main
import (
"context"
"fmt"
"github.com/G-Core/gcore-go"
"github.com/G-Core/gcore-go/cloud"
"github.com/G-Core/gcore-go/option"
)
func main() {
client := gcore.NewClient(
option.WithAPIKey("My API Key"),
)
instanceList, err := client.Cloud.K8S.Clusters.Nodes.List(
context.TODO(),
"my-cluster",
cloud.K8SClusterNodeListParams{
ProjectID: gcore.Int(1),
RegionID: gcore.Int(7),
},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", instanceList.Count)
}
curl --request GET \
--url https://api.gcore.com/cloud/v2/k8s/clusters/{project_id}/{region_id}/{cluster_name}/instances \
--header 'Authorization: <api-key>'const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.gcore.com/cloud/v2/k8s/clusters/{project_id}/{region_id}/{cluster_name}/instances', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.gcore.com/cloud/v2/k8s/clusters/{project_id}/{region_id}/{cluster_name}/instances",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}HttpResponse<String> response = Unirest.get("https://api.gcore.com/cloud/v2/k8s/clusters/{project_id}/{region_id}/{cluster_name}/instances")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gcore.com/cloud/v2/k8s/clusters/{project_id}/{region_id}/{cluster_name}/instances")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"count": 1,
"results": [
{
"addresses": {},
"blackhole_ports": [
{
"AlarmEnd": "2025-02-05 12:04:30",
"AlarmStart": "2025-02-05 12:04:11",
"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": "<unknown>",
"id": 11,
"name": "ARK Ports",
"required": true,
"validation_schema": "<unknown>"
}
],
"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": "<unknown>"
}
],
"id": 123,
"name": "ICMP port"
},
"profile_template_description": "ARK server ports. Valid port values are in range 1000-65535",
"protocols": [
{
"port": "80",
"protocols": [
"TCP",
"HTTP"
]
},
{
"port": "53",
"protocols": [
"UDP"
]
}
],
"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>",
"tags": [
{
"key": "my-tag",
"read_only": false,
"value": "my-tag-value"
}
],
"task_id": null,
"task_state": "<string>",
"volumes": [
{
"delete_on_termination": true,
"id": "<string>"
}
]
}
]
}Managed Kubernetes
List k8s cluster nodes
GET
/
cloud
/
v2
/
k8s
/
clusters
/
{project_id}
/
{region_id}
/
{cluster_name}
/
instances
Python
import os
from gcore import Gcore
client = Gcore(
api_key=os.environ.get("GCORE_API_KEY"), # This is the default and can be omitted
)
instance_list = client.cloud.k8s.clusters.nodes.list(
cluster_name="my-cluster",
project_id=1,
region_id=7,
)
print(instance_list.count)package main
import (
"context"
"fmt"
"github.com/G-Core/gcore-go"
"github.com/G-Core/gcore-go/cloud"
"github.com/G-Core/gcore-go/option"
)
func main() {
client := gcore.NewClient(
option.WithAPIKey("My API Key"),
)
instanceList, err := client.Cloud.K8S.Clusters.Nodes.List(
context.TODO(),
"my-cluster",
cloud.K8SClusterNodeListParams{
ProjectID: gcore.Int(1),
RegionID: gcore.Int(7),
},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", instanceList.Count)
}
curl --request GET \
--url https://api.gcore.com/cloud/v2/k8s/clusters/{project_id}/{region_id}/{cluster_name}/instances \
--header 'Authorization: <api-key>'const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.gcore.com/cloud/v2/k8s/clusters/{project_id}/{region_id}/{cluster_name}/instances', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.gcore.com/cloud/v2/k8s/clusters/{project_id}/{region_id}/{cluster_name}/instances",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}HttpResponse<String> response = Unirest.get("https://api.gcore.com/cloud/v2/k8s/clusters/{project_id}/{region_id}/{cluster_name}/instances")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gcore.com/cloud/v2/k8s/clusters/{project_id}/{region_id}/{cluster_name}/instances")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"count": 1,
"results": [
{
"addresses": {},
"blackhole_ports": [
{
"AlarmEnd": "2025-02-05 12:04:30",
"AlarmStart": "2025-02-05 12:04:11",
"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": "<unknown>",
"id": 11,
"name": "ARK Ports",
"required": true,
"validation_schema": "<unknown>"
}
],
"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": "<unknown>"
}
],
"id": 123,
"name": "ICMP port"
},
"profile_template_description": "ARK server ports. Valid port values are in range 1000-65535",
"protocols": [
{
"port": "80",
"protocols": [
"TCP",
"HTTP"
]
},
{
"port": "53",
"protocols": [
"UDP"
]
}
],
"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>",
"tags": [
{
"key": "my-tag",
"read_only": false,
"value": "my-tag-value"
}
],
"task_id": null,
"task_state": "<string>",
"volumes": [
{
"delete_on_termination": true,
"id": "<string>"
}
]
}
]
}Authorizations
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
Example:
1
Region ID
Example:
7
Cluster name
Example:
"my-cluster"
Query Parameters
Include DDoS profile information if set to true. Default is false.
Examples:
false
true
Was this page helpful?
⌘I