curl --request POST \
--url https://api.example.com/api/v1/allocations/ \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"tenant": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"site": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"start_at": "2023-11-07T05:31:56Z",
"end_at": "2023-11-07T05:31:56Z",
"device_ids": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"annotations": {},
"tags": [
"<string>"
]
}
'import requests
url = "https://api.example.com/api/v1/allocations/"
payload = {
"tenant": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"site": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"start_at": "2023-11-07T05:31:56Z",
"end_at": "2023-11-07T05:31:56Z",
"device_ids": ["3c90c3cc-0d44-4b50-8888-8dd25736052a"],
"annotations": {},
"tags": ["<string>"]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
tenant: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
site: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
start_at: '2023-11-07T05:31:56Z',
end_at: '2023-11-07T05:31:56Z',
device_ids: ['3c90c3cc-0d44-4b50-8888-8dd25736052a'],
annotations: {},
tags: ['<string>']
})
};
fetch('https://api.example.com/api/v1/allocations/', 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.example.com/api/v1/allocations/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'tenant' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'site' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'start_at' => '2023-11-07T05:31:56Z',
'end_at' => '2023-11-07T05:31:56Z',
'device_ids' => [
'3c90c3cc-0d44-4b50-8888-8dd25736052a'
],
'annotations' => [
],
'tags' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/api/v1/allocations/"
payload := strings.NewReader("{\n \"tenant\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"site\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"start_at\": \"2023-11-07T05:31:56Z\",\n \"end_at\": \"2023-11-07T05:31:56Z\",\n \"device_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"annotations\": {},\n \"tags\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/api/v1/allocations/")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"tenant\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"site\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"start_at\": \"2023-11-07T05:31:56Z\",\n \"end_at\": \"2023-11-07T05:31:56Z\",\n \"device_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"annotations\": {},\n \"tags\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/v1/allocations/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"tenant\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"site\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"start_at\": \"2023-11-07T05:31:56Z\",\n \"end_at\": \"2023-11-07T05:31:56Z\",\n \"device_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"annotations\": {},\n \"tags\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"tenant": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"tenant_name": "<string>",
"site": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"site_name": "<string>",
"start_at": "2023-11-07T05:31:56Z",
"end_at": "2023-11-07T05:31:56Z",
"devices": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"device_names": [
"<string>"
],
"device_count": 123,
"rack_names": [
"<string>"
],
"location_names": [
"<string>"
],
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"links": {
"self": "<string>",
"collection": "<string>",
"tenant": "<string>",
"site": "<string>",
"devices": "<string>"
},
"annotations": {},
"tags": [
"<string>"
]
}{
"detail": "<string>",
"code": "error",
"field_errors": [
{
"field": "<string>",
"messages": [
"<string>"
]
}
]
}{
"detail": "<string>",
"code": "error",
"field_errors": [
{
"field": "<string>",
"messages": [
"<string>"
]
}
]
}{
"detail": "<string>",
"code": "error",
"field_errors": [
{
"field": "<string>",
"messages": [
"<string>"
]
}
]
}Create allocation
List, retrieve, create and update allocations.
Delete is intentionally omitted for data retention.
curl --request POST \
--url https://api.example.com/api/v1/allocations/ \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"tenant": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"site": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"start_at": "2023-11-07T05:31:56Z",
"end_at": "2023-11-07T05:31:56Z",
"device_ids": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"annotations": {},
"tags": [
"<string>"
]
}
'import requests
url = "https://api.example.com/api/v1/allocations/"
payload = {
"tenant": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"site": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"start_at": "2023-11-07T05:31:56Z",
"end_at": "2023-11-07T05:31:56Z",
"device_ids": ["3c90c3cc-0d44-4b50-8888-8dd25736052a"],
"annotations": {},
"tags": ["<string>"]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
tenant: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
site: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
start_at: '2023-11-07T05:31:56Z',
end_at: '2023-11-07T05:31:56Z',
device_ids: ['3c90c3cc-0d44-4b50-8888-8dd25736052a'],
annotations: {},
tags: ['<string>']
})
};
fetch('https://api.example.com/api/v1/allocations/', 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.example.com/api/v1/allocations/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'tenant' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'site' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'start_at' => '2023-11-07T05:31:56Z',
'end_at' => '2023-11-07T05:31:56Z',
'device_ids' => [
'3c90c3cc-0d44-4b50-8888-8dd25736052a'
],
'annotations' => [
],
'tags' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/api/v1/allocations/"
payload := strings.NewReader("{\n \"tenant\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"site\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"start_at\": \"2023-11-07T05:31:56Z\",\n \"end_at\": \"2023-11-07T05:31:56Z\",\n \"device_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"annotations\": {},\n \"tags\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/api/v1/allocations/")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"tenant\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"site\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"start_at\": \"2023-11-07T05:31:56Z\",\n \"end_at\": \"2023-11-07T05:31:56Z\",\n \"device_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"annotations\": {},\n \"tags\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/v1/allocations/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"tenant\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"site\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"start_at\": \"2023-11-07T05:31:56Z\",\n \"end_at\": \"2023-11-07T05:31:56Z\",\n \"device_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ],\n \"annotations\": {},\n \"tags\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"tenant": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"tenant_name": "<string>",
"site": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"site_name": "<string>",
"start_at": "2023-11-07T05:31:56Z",
"end_at": "2023-11-07T05:31:56Z",
"devices": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"device_names": [
"<string>"
],
"device_count": 123,
"rack_names": [
"<string>"
],
"location_names": [
"<string>"
],
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"links": {
"self": "<string>",
"collection": "<string>",
"tenant": "<string>",
"site": "<string>",
"devices": "<string>"
},
"annotations": {},
"tags": [
"<string>"
]
}{
"detail": "<string>",
"code": "error",
"field_errors": [
{
"field": "<string>",
"messages": [
"<string>"
]
}
]
}{
"detail": "<string>",
"code": "error",
"field_errors": [
{
"field": "<string>",
"messages": [
"<string>"
]
}
]
}{
"detail": "<string>",
"code": "error",
"field_errors": [
{
"field": "<string>",
"messages": [
"<string>"
]
}
]
}Authorizations
The access token received from the authorization server in the OAuth 2.0 flow.
Body
Serializer for Allocation model (create, read, update).
List of device UUIDs to include in the allocation.
2000Key-value annotations. Keys must start with a lowercase letter and contain only lowercase alphanumeric segments joined by hyphens or underscores (e.g. 'org-id', 'gpu_ready').
Show child attributes
Show child attributes
Tags for the resource. Must start with a lowercase letter and contain only lowercase alphanumeric segments joined by hyphens or underscores (e.g. 'gpu-ready', 'needs_review'). Stored deduplicated and sorted.
Response
Serializer for Allocation model (create, read, update).
Serializer for allocation links.
Show child attributes
Show child attributes
Key-value annotations. Keys must start with a lowercase letter and contain only lowercase alphanumeric segments joined by hyphens or underscores (e.g. 'org-id', 'gpu_ready').
Show child attributes
Show child attributes
Tags for the resource. Must start with a lowercase letter and contain only lowercase alphanumeric segments joined by hyphens or underscores (e.g. 'gpu-ready', 'needs_review'). Stored deduplicated and sorted.