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
Enum:
application/jsonBearer authentication format, for example: Bearer {{API Key}}.
Request Body
Image address to prewarm.
Image registry authentication ID. Required only for private registries.
Cluster ID where the image should be prewarmed.
Product IDs to prewarm on. Leave empty to prewarm globally in the cluster.
Task note or description.
Response
Created prewarm task ID.
Last modified on September 15, 2025
Was this page helpful?
⌘I