Get SKU availability
curl --request GET \
--url https://api.sfcompute.com/v2/skus/{id}/availability \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.sfcompute.com/v2/skus/{id}/availability"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.sfcompute.com/v2/skus/{id}/availability', 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.sfcompute.com/v2/skus/{id}/availability",
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://api.sfcompute.com/v2/skus/{id}/availability"
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://api.sfcompute.com/v2/skus/{id}/availability")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sfcompute.com/v2/skus/{id}/availability")
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{
"object": "sku_availability",
"sku": {
"object": "sku",
"id": "<string>",
"alias": "<string>"
},
"schedule": [
{
"start_at": 1738972800,
"node_count": 123,
"end_at": 1738972800
}
]
}{
"error": {
"type": "invalid_request_error",
"message": "<string>",
"details": [
{
"code": "<string>",
"message": "<string>",
"field": "<string>"
}
]
}
}{
"error": {
"type": "authentication_error",
"message": "<string>"
}
}{
"error": {
"type": "not_found",
"message": "<string>"
}
}{
"error": {
"type": "api_error",
"message": "<string>"
}
}{
"error": {
"type": "service_unavailable",
"message": "<string>"
}
}SKUs
Get SKU availability
The purchasable-capacity schedule of one SKU.
GET
/
v2
/
skus
/
{id}
/
availability
Get SKU availability
curl --request GET \
--url https://api.sfcompute.com/v2/skus/{id}/availability \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.sfcompute.com/v2/skus/{id}/availability"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.sfcompute.com/v2/skus/{id}/availability', 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.sfcompute.com/v2/skus/{id}/availability",
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://api.sfcompute.com/v2/skus/{id}/availability"
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://api.sfcompute.com/v2/skus/{id}/availability")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.sfcompute.com/v2/skus/{id}/availability")
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{
"object": "sku_availability",
"sku": {
"object": "sku",
"id": "<string>",
"alias": "<string>"
},
"schedule": [
{
"start_at": 1738972800,
"node_count": 123,
"end_at": 1738972800
}
]
}{
"error": {
"type": "invalid_request_error",
"message": "<string>",
"details": [
{
"code": "<string>",
"message": "<string>",
"field": "<string>"
}
]
}
}{
"error": {
"type": "authentication_error",
"message": "<string>"
}
}{
"error": {
"type": "not_found",
"message": "<string>"
}
}{
"error": {
"type": "api_error",
"message": "<string>"
}
}{
"error": {
"type": "service_unavailable",
"message": "<string>"
}
}Authorizations
Create an API token using sf tokens create or at https://sfcompute.com/account/api-keys.
Path Parameters
SKU ID
Pattern:
sku_[0-9a-zA-Z_-]{1,21}Example:
"sku_k3R-nX9vLm7Qp2Yw5Jd8F"
Response
The SKU's availability.
One SKU's purchasable-capacity schedule.
Allowed value:
"sku_availability"A SKU referenced by id and alias.
Show child attributes
Show child attributes
Node counts available for purchase over time. Empty when the SKU has no published availability.
Show child attributes
Show child attributes
⌘I