Get Calendar
curl --request GET \
--url https://app.opencomputer.dev/api/capacity/calendar \
--header 'X-API-Key: <api-key>'import requests
url = "https://app.opencomputer.dev/api/capacity/calendar"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://app.opencomputer.dev/api/capacity/calendar', 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://app.opencomputer.dev/api/capacity/calendar",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-Key: <api-key>"
],
]);
$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://app.opencomputer.dev/api/capacity/calendar"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://app.opencomputer.dev/api/capacity/calendar")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.opencomputer.dev/api/capacity/calendar")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"from": "2026-04-29T02:00:00Z",
"to": "2026-04-29T04:00:00Z",
"resource": "memory_gb",
"intervals": [
{
"startsAt": "2026-04-29T02:00:00Z",
"endsAt": "2026-04-29T02:15:00Z",
"reservationLimitGb": 300,
"reservedGb": 80,
"reservableGb": 220
}
]
}
Reserved Capacity
Get Calendar
GET
/
api
/
capacity
/
calendar
Get Calendar
curl --request GET \
--url https://app.opencomputer.dev/api/capacity/calendar \
--header 'X-API-Key: <api-key>'import requests
url = "https://app.opencomputer.dev/api/capacity/calendar"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://app.opencomputer.dev/api/capacity/calendar', 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://app.opencomputer.dev/api/capacity/calendar",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-Key: <api-key>"
],
]);
$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://app.opencomputer.dev/api/capacity/calendar"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://app.opencomputer.dev/api/capacity/calendar")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.opencomputer.dev/api/capacity/calendar")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"from": "2026-04-29T02:00:00Z",
"to": "2026-04-29T04:00:00Z",
"resource": "memory_gb",
"intervals": [
{
"startsAt": "2026-04-29T02:00:00Z",
"endsAt": "2026-04-29T02:15:00Z",
"reservationLimitGb": 300,
"reservedGb": 80,
"reservableGb": 220
}
]
}
Return a planning snapshot of 15-minute UTC intervals in the requested window.
One row per interval with current
reservedGb, reservableGb, and the
per-org reservationLimitGb. See
Reading the calendar for field semantics.
string
required
Window start. RFC 3339, aligned to 15 minutes, UTC.
string
required
Window end. RFC 3339, aligned to 15 minutes, UTC.
{
"from": "2026-04-29T02:00:00Z",
"to": "2026-04-29T04:00:00Z",
"resource": "memory_gb",
"intervals": [
{
"startsAt": "2026-04-29T02:00:00Z",
"endsAt": "2026-04-29T02:15:00Z",
"reservationLimitGb": 300,
"reservedGb": 80,
"reservableGb": 220
}
]
}
⌘I