List placements
curl --request GET \
--url https://reservation.nks.europe-west4.nscale.com/api/v2/placements \
--header 'Authorization: Bearer <token>'import requests
url = "https://reservation.nks.europe-west4.nscale.com/api/v2/placements"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://reservation.nks.europe-west4.nscale.com/api/v2/placements', 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://reservation.nks.europe-west4.nscale.com/api/v2/placements",
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: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://reservation.nks.europe-west4.nscale.com/api/v2/placements"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://reservation.nks.europe-west4.nscale.com/api/v2/placements")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://reservation.nks.europe-west4.nscale.com/api/v2/placements")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body[
{
"metadata": {
"id": "b8ce034e-fccb-4d6c-a0e0-af3e3f346715",
"name": "training-workers",
"organizationId": "9a8c6370-4065-4d4a-9da0-7678df40cd9d",
"projectId": "e36c058a-8eba-4f5b-91f4-f6ffb983795c",
"creationTime": "2026-04-28T11:03:12Z",
"createdBy": "john.doe@example.com",
"provisioningStatus": "provisioned",
"healthStatus": "healthy",
"tags": [
{
"name": "workload",
"value": "training"
}
]
},
"spec": {
"count": 8,
"serverSpec": {
"imageId": "ubuntu-24.04",
"sshCertificateAuthorityId": "00de8f3c-77d6-424a-93c3-baf9153c7f21",
"networking": {
"securityGroups": [
"7ddfdbf0-bdbf-4630-9220-f1e6876f2dd0"
]
}
},
"constraints": {
"policy": "spread",
"maxSkew": 1,
"minDomains": 3,
"whenUnsatisfiable": "fail"
}
},
"status": {
"regionId": "c7568e2d-f9ab-453d-9a3a-51375f78426b",
"reservationId": "a64f9269-36e0-4312-b8d1-52d93d569b7b",
"networkId": "61f0ad85-3001-41cb-824a-e6a047668dfe",
"readyHostCount": 8
}
}
]{
"error": "invalid_request",
"error_description": "request body invalid",
"trace_id": "57bc14d9bd461f0b5a72db830149b67a"
}{
"error": "access_denied",
"error_description": "authentication failed",
"trace_id": "57bc14d9bd461f0b5a72db830149b67a"
}{
"error": "forbidden",
"error_description": "user credentials do not have the required privileges",
"trace_id": "57bc14d9bd461f0b5a72db830149b67a"
}{
"error": "server_error",
"error_description": "failed to token claim",
"trace_id": "57bc14d9bd461f0b5a72db830149b67a"
}Placements
List placements
List placements.
GET
/
api
/
v2
/
placements
List placements
curl --request GET \
--url https://reservation.nks.europe-west4.nscale.com/api/v2/placements \
--header 'Authorization: Bearer <token>'import requests
url = "https://reservation.nks.europe-west4.nscale.com/api/v2/placements"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://reservation.nks.europe-west4.nscale.com/api/v2/placements', 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://reservation.nks.europe-west4.nscale.com/api/v2/placements",
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: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://reservation.nks.europe-west4.nscale.com/api/v2/placements"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://reservation.nks.europe-west4.nscale.com/api/v2/placements")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://reservation.nks.europe-west4.nscale.com/api/v2/placements")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body[
{
"metadata": {
"id": "b8ce034e-fccb-4d6c-a0e0-af3e3f346715",
"name": "training-workers",
"organizationId": "9a8c6370-4065-4d4a-9da0-7678df40cd9d",
"projectId": "e36c058a-8eba-4f5b-91f4-f6ffb983795c",
"creationTime": "2026-04-28T11:03:12Z",
"createdBy": "john.doe@example.com",
"provisioningStatus": "provisioned",
"healthStatus": "healthy",
"tags": [
{
"name": "workload",
"value": "training"
}
]
},
"spec": {
"count": 8,
"serverSpec": {
"imageId": "ubuntu-24.04",
"sshCertificateAuthorityId": "00de8f3c-77d6-424a-93c3-baf9153c7f21",
"networking": {
"securityGroups": [
"7ddfdbf0-bdbf-4630-9220-f1e6876f2dd0"
]
}
},
"constraints": {
"policy": "spread",
"maxSkew": 1,
"minDomains": 3,
"whenUnsatisfiable": "fail"
}
},
"status": {
"regionId": "c7568e2d-f9ab-453d-9a3a-51375f78426b",
"reservationId": "a64f9269-36e0-4312-b8d1-52d93d569b7b",
"networkId": "61f0ad85-3001-41cb-824a-e6a047668dfe",
"readyHostCount": 8
}
}
]{
"error": "invalid_request",
"error_description": "request body invalid",
"trace_id": "57bc14d9bd461f0b5a72db830149b67a"
}{
"error": "access_denied",
"error_description": "authentication failed",
"trace_id": "57bc14d9bd461f0b5a72db830149b67a"
}{
"error": "forbidden",
"error_description": "user credentials do not have the required privileges",
"trace_id": "57bc14d9bd461f0b5a72db830149b67a"
}{
"error": "server_error",
"error_description": "failed to token claim",
"trace_id": "57bc14d9bd461f0b5a72db830149b67a"
}Authorizations
The access token received from the authorization server in the OAuth 2.0 flow.
Query Parameters
A set of tags to match against resources in the form "name=value", thus when encoded you get "?tag=foo%3Dcat&tag=bar%3Ddog".
Allows resources to be filtered by organization.
Allows resources to be filtered by project.
Allows resources to be filtered by region.
Allows placements to be filtered by reservation.
Allows placements to be filtered by network.
Was this page helpful?
⌘I