Create Image Prewarm Task
curl --request POST \
--url https://api.novita.ai/gpu-instance/openapi/v1/image/prewarm \
--header 'Authorization: <authorization>' \
--header 'Content-Type: <content-type>' \
--data '
{
"imageUrl": "<string>",
"repositoryAuth": "<string>",
"clusterId": "<string>",
"productIds": [
"<string>"
],
"note": "<string>"
}
'import requests
url = "https://api.novita.ai/gpu-instance/openapi/v1/image/prewarm"
payload = {
"imageUrl": "<string>",
"repositoryAuth": "<string>",
"clusterId": "<string>",
"productIds": ["<string>"],
"note": "<string>"
}
headers = {
"Content-Type": "<content-type>",
"Authorization": "<authorization>"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': '<content-type>', Authorization: '<authorization>'},
body: JSON.stringify({
imageUrl: '<string>',
repositoryAuth: '<string>',
clusterId: '<string>',
productIds: ['<string>'],
note: '<string>'
})
};
fetch('https://api.novita.ai/gpu-instance/openapi/v1/image/prewarm', 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/image/prewarm",
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([
'imageUrl' => '<string>',
'repositoryAuth' => '<string>',
'clusterId' => '<string>',
'productIds' => [
'<string>'
],
'note' => '<string>'
]),
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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.novita.ai/gpu-instance/openapi/v1/image/prewarm"
payload := strings.NewReader("{\n \"imageUrl\": \"<string>\",\n \"repositoryAuth\": \"<string>\",\n \"clusterId\": \"<string>\",\n \"productIds\": [\n \"<string>\"\n ],\n \"note\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
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.post("https://api.novita.ai/gpu-instance/openapi/v1/image/prewarm")
.header("Content-Type", "<content-type>")
.header("Authorization", "<authorization>")
.body("{\n \"imageUrl\": \"<string>\",\n \"repositoryAuth\": \"<string>\",\n \"clusterId\": \"<string>\",\n \"productIds\": [\n \"<string>\"\n ],\n \"note\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.novita.ai/gpu-instance/openapi/v1/image/prewarm")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = '<content-type>'
request["Authorization"] = '<authorization>'
request.body = "{\n \"imageUrl\": \"<string>\",\n \"repositoryAuth\": \"<string>\",\n \"clusterId\": \"<string>\",\n \"productIds\": [\n \"<string>\"\n ],\n \"note\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>"
}Image
Create Image Prewarm Task
POST
/
gpu-instance
/
openapi
/
v1
/
image
/
prewarm
Create Image Prewarm Task
curl --request POST \
--url https://api.novita.ai/gpu-instance/openapi/v1/image/prewarm \
--header 'Authorization: <authorization>' \
--header 'Content-Type: <content-type>' \
--data '
{
"imageUrl": "<string>",
"repositoryAuth": "<string>",
"clusterId": "<string>",
"productIds": [
"<string>"
],
"note": "<string>"
}
'import requests
url = "https://api.novita.ai/gpu-instance/openapi/v1/image/prewarm"
payload = {
"imageUrl": "<string>",
"repositoryAuth": "<string>",
"clusterId": "<string>",
"productIds": ["<string>"],
"note": "<string>"
}
headers = {
"Content-Type": "<content-type>",
"Authorization": "<authorization>"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': '<content-type>', Authorization: '<authorization>'},
body: JSON.stringify({
imageUrl: '<string>',
repositoryAuth: '<string>',
clusterId: '<string>',
productIds: ['<string>'],
note: '<string>'
})
};
fetch('https://api.novita.ai/gpu-instance/openapi/v1/image/prewarm', 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/image/prewarm",
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([
'imageUrl' => '<string>',
'repositoryAuth' => '<string>',
'clusterId' => '<string>',
'productIds' => [
'<string>'
],
'note' => '<string>'
]),
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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.novita.ai/gpu-instance/openapi/v1/image/prewarm"
payload := strings.NewReader("{\n \"imageUrl\": \"<string>\",\n \"repositoryAuth\": \"<string>\",\n \"clusterId\": \"<string>\",\n \"productIds\": [\n \"<string>\"\n ],\n \"note\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
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.post("https://api.novita.ai/gpu-instance/openapi/v1/image/prewarm")
.header("Content-Type", "<content-type>")
.header("Authorization", "<authorization>")
.body("{\n \"imageUrl\": \"<string>\",\n \"repositoryAuth\": \"<string>\",\n \"clusterId\": \"<string>\",\n \"productIds\": [\n \"<string>\"\n ],\n \"note\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.novita.ai/gpu-instance/openapi/v1/image/prewarm")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = '<content-type>'
request["Authorization"] = '<authorization>'
request.body = "{\n \"imageUrl\": \"<string>\",\n \"repositoryAuth\": \"<string>\",\n \"clusterId\": \"<string>\",\n \"productIds\": [\n \"<string>\"\n ],\n \"note\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>"
}Request Headers
string
required
Enum:
application/jsonstring
required
Bearer authentication format, for example: Bearer {{API Key}}.
Request Body
string
required
Image address to prewarm.
string
Image registry authentication ID. Required only for private registries.
string
required
Cluster ID where the image should be prewarmed.
string[]
Product IDs to prewarm on. Leave empty to prewarm globally in the cluster.
string
Task note or description.
Response
string
required
Created prewarm task ID.
Last modified on September 15, 2025
Was this page helpful?
⌘I