List GPU Products
curl --request GET \
--url https://api.novita.ai/gpu-instance/openapi/v1/products \
--header 'Authorization: <authorization>' \
--header 'Content-Type: <content-type>'import requests
url = "https://api.novita.ai/gpu-instance/openapi/v1/products"
headers = {
"Content-Type": "<content-type>",
"Authorization": "<authorization>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'Content-Type': '<content-type>', Authorization: '<authorization>'}
};
fetch('https://api.novita.ai/gpu-instance/openapi/v1/products', 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.novita.ai/gpu-instance/openapi/v1/products",
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: <authorization>",
"Content-Type: <content-type>"
],
]);
$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.novita.ai/gpu-instance/openapi/v1/products"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Content-Type", "<content-type>")
req.Header.Add("Authorization", "<authorization>")
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.novita.ai/gpu-instance/openapi/v1/products")
.header("Content-Type", "<content-type>")
.header("Authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.novita.ai/gpu-instance/openapi/v1/products")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Content-Type"] = '<content-type>'
request["Authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body{
"data": [
{
"id": "<string>",
"name": "<string>",
"cpuPerGpu": 123,
"memoryPerGpu": 123,
"diskPerGpu": 123,
"availableDeploy": true,
"minRootFS": 123,
"maxRootFS": 123,
"minLocalStorage": 123,
"maxLocalStorage": 123,
"regions": {},
"price": 123,
"monthlyPrice": [
{
"price": 123,
"month": 123
}
],
"billingMethods": [
"<string>"
],
"spotPrice": "<string>",
"inventoryState": "<string>"
}
]
}Product
List GPU Products
GET
/
gpu-instance
/
openapi
/
v1
/
products
List GPU Products
curl --request GET \
--url https://api.novita.ai/gpu-instance/openapi/v1/products \
--header 'Authorization: <authorization>' \
--header 'Content-Type: <content-type>'import requests
url = "https://api.novita.ai/gpu-instance/openapi/v1/products"
headers = {
"Content-Type": "<content-type>",
"Authorization": "<authorization>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'Content-Type': '<content-type>', Authorization: '<authorization>'}
};
fetch('https://api.novita.ai/gpu-instance/openapi/v1/products', 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.novita.ai/gpu-instance/openapi/v1/products",
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: <authorization>",
"Content-Type: <content-type>"
],
]);
$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.novita.ai/gpu-instance/openapi/v1/products"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Content-Type", "<content-type>")
req.Header.Add("Authorization", "<authorization>")
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.novita.ai/gpu-instance/openapi/v1/products")
.header("Content-Type", "<content-type>")
.header("Authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.novita.ai/gpu-instance/openapi/v1/products")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Content-Type"] = '<content-type>'
request["Authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body{
"data": [
{
"id": "<string>",
"name": "<string>",
"cpuPerGpu": 123,
"memoryPerGpu": 123,
"diskPerGpu": 123,
"availableDeploy": true,
"minRootFS": 123,
"maxRootFS": 123,
"minLocalStorage": 123,
"maxLocalStorage": 123,
"regions": {},
"price": 123,
"monthlyPrice": [
{
"price": 123,
"month": 123
}
],
"billingMethods": [
"<string>"
],
"spotPrice": "<string>",
"inventoryState": "<string>"
}
]
}Request Headers
string
erforderlich
Enum:
application/jsonstring
erforderlich
Bearer authentication format, for example: Bearer {{API Key}}.
Query Parameters
string
Filter by specified cluster ID. String, length limit: 0-255 characters.
integer
Filter by number of GPUs. Integer, valid range: [0, 8].
string
Filter by product name (fuzzy match). String, length limit: 0-255 characters.
integer
Filter by minimum CPU cores per GPU. Integer, value must be greater than or equal to 0.
integer
Filter by minimum memory per GPU (GB). Integer, value must be greater than or equal to 0.
integer
Filter by minimum root filesystem size per GPU (GB). Integer, value must be greater than or equal to 0.
string
Filter by billing method. Options:
onDemand: Pay-as-you-go instance (default)monthly: Subscription instance (monthly or yearly)spot: Spot instance billing
Response
object[]
erforderlich
GPU product information.
Ausblenden properties
Ausblenden properties
string
erforderlich
Product ID.
string
erforderlich
Product name.
integer
erforderlich
Number of CPU cores per GPU.
integer
erforderlich
Memory size per GPU (GB).
integer
erforderlich
Disk size per GPU (GB).
boolean
erforderlich
Whether this product can be used to create an instance. Values:
- true: The product can be used to create an instance.
- false: Insufficient resources, cannot create an instance.
integer
erforderlich
Minimum available root filesystem size (GB).
integer
erforderlich
Maximum available root filesystem size (GB).
integer
erforderlich
Minimum available local storage size (GB).
integer
erforderlich
Maximum available local storage size (GB).
[string]
erforderlich
Available clusters. Indicates that this product is only available in the specified clusters. If the list is empty, the product is available in all clusters.
integer
erforderlich
Price for creating a pay-as-you-go instance with this product.
object[]
erforderlich
string[]
erforderlich
The billing methods supported by this product. Valid values:
onDemand: Pay-as-you-go billingmonthly: Monthly subscription billingspot: Spot instance billing
string
Spot billing instance price.
string
Product inventory status:
none: Out of stocklow: Low stocknormal: Normal stockhigh: Sufficient stock
Zuletzt geändert am 15. Mai 2026
⌘I