curl --request GET \
--url https://api.example.com/api/v1/job-presets/{id}/ \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.example.com/api/v1/job-presets/{id}/"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.example.com/api/v1/job-presets/{id}/', 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.example.com/api/v1/job-presets/{id}/",
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.example.com/api/v1/job-presets/{id}/"
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.example.com/api/v1/job-presets/{id}/")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/v1/job-presets/{id}/")
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{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_by_username": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"temporal_workflow_name": "EnrollmentWorkflow",
"label": "<string>",
"is_default": true,
"nscale_preset": true,
"qualifying": true,
"device_type": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_by": 123,
"parameters": "<unknown>"
}{
"detail": "<string>",
"code": "error",
"field_errors": [
{
"field": "<string>",
"messages": [
"<string>"
]
}
]
}{
"detail": "<string>",
"code": "error",
"field_errors": [
{
"field": "<string>",
"messages": [
"<string>"
]
}
]
}{
"detail": "<string>",
"code": "error",
"field_errors": [
{
"field": "<string>",
"messages": [
"<string>"
]
}
]
}Get job preset
List, retrieve, create, update and delete job presets.
nscale presets (nscale_preset=True) are visible in list/retrieve but cannot be modified or deleted via the API.
curl --request GET \
--url https://api.example.com/api/v1/job-presets/{id}/ \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.example.com/api/v1/job-presets/{id}/"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.example.com/api/v1/job-presets/{id}/', 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.example.com/api/v1/job-presets/{id}/",
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.example.com/api/v1/job-presets/{id}/"
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.example.com/api/v1/job-presets/{id}/")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/v1/job-presets/{id}/")
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{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_by_username": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"temporal_workflow_name": "EnrollmentWorkflow",
"label": "<string>",
"is_default": true,
"nscale_preset": true,
"qualifying": true,
"device_type": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_by": 123,
"parameters": "<unknown>"
}{
"detail": "<string>",
"code": "error",
"field_errors": [
{
"field": "<string>",
"messages": [
"<string>"
]
}
]
}{
"detail": "<string>",
"code": "error",
"field_errors": [
{
"field": "<string>",
"messages": [
"<string>"
]
}
]
}{
"detail": "<string>",
"code": "error",
"field_errors": [
{
"field": "<string>",
"messages": [
"<string>"
]
}
]
}Authorizations
The access token received from the authorization server in the OAuth 2.0 flow.
Path Parameters
A UUID string identifying this job preset.
Response
Serializer for JobPreset model.
EnrollmentWorkflow- Enrollment WorkflowSingleNodeBurnInWorkflow- Single Node Burn-In WorkflowMultiNodeBurnInPairwiseWorkflow- Multi-Node Burn-In Pairwise WorkflowMultiNodeBurnInCollectiveWorkflow- Multi-Node Burn-In Collective WorkflowPrepareHardwareTestImagesWorkflow- Prepare Hardware-Test Images WorkflowReportGenerationWorkflow- Report Generation WorkflowSlurmAdoptWorkflow- Add to Test Cluster WorkflowSlurmReleaseWorkflow- Release from Test Cluster WorkflowCustomerReleaseWorkflow- Customer Release WorkflowIronicNodeCleanWorkflow- Ironic Node Clean WorkflowQuarantineWorkflow- Quarantine WorkflowReleaseWorkflow- Release WorkflowUnenrollmentWorkflow- Unenrollment WorkflowConnectivityVerificationWorkflow- Connectivity Verification WorkflowFirmwareInventoryWorkflow- Firmware Inventory WorkflowFirmwareVerificationWorkflow- Firmware Verification WorkflowFirmwarePolicyVerificationWorkflow- Firmware Policy Verification WorkflowNVSwitchFirmwarePolicyVerificationWorkflow- NVSwitch Firmware Policy Verification WorkflowNodeSwapWorkflow- Node Swap WorkflowPowerCycleWorkflow- Power Cycle WorkflowPowerOffWorkflow- Power Off WorkflowSetMaintenanceModeWorkflow- Set Maintenance Mode WorkflowDisableMaintenanceModeWorkflow- Disable Maintenance Mode WorkflowColdResetBmcWorkflow- Cold Reset BMC WorkflowSlurmDrainNodeWorkflow- Slurm Drain Node WorkflowSlurmResumeNodeWorkflow- Slurm Resume Drained Node WorkflowFrontendVrfReturnWorkflow- Frontend VRF Return WorkflowFrontendVrfIsolateWorkflow- Frontend VRF Isolate WorkflowNvLinkIsolateWorkflow- NVLink Isolate WorkflowNvLinkReturnWorkflow- NVLink Return WorkflowBackendVrfIsolateWorkflow- Back-end VRF Isolate WorkflowBackendVrfReturnWorkflow- Back-end VRF Return WorkflowImageNodeWorkflow- Image Node WorkflowUnimageNodeWorkflow- Unimage Node WorkflowNodeDiagnosticsWorkflow- Node Diagnostics Workflow
EnrollmentWorkflow, SingleNodeBurnInWorkflow, MultiNodeBurnInPairwiseWorkflow, MultiNodeBurnInCollectiveWorkflow, PrepareHardwareTestImagesWorkflow, ReportGenerationWorkflow, SlurmAdoptWorkflow, SlurmReleaseWorkflow, CustomerReleaseWorkflow, IronicNodeCleanWorkflow, QuarantineWorkflow, ReleaseWorkflow, UnenrollmentWorkflow, ConnectivityVerificationWorkflow, FirmwareInventoryWorkflow, FirmwareVerificationWorkflow, FirmwarePolicyVerificationWorkflow, NVSwitchFirmwarePolicyVerificationWorkflow, NodeSwapWorkflow, PowerCycleWorkflow, PowerOffWorkflow, SetMaintenanceModeWorkflow, DisableMaintenanceModeWorkflow, ColdResetBmcWorkflow, SlurmDrainNodeWorkflow, SlurmResumeNodeWorkflow, FrontendVrfReturnWorkflow, FrontendVrfIsolateWorkflow, NvLinkIsolateWorkflow, NvLinkReturnWorkflow, BackendVrfIsolateWorkflow, BackendVrfReturnWorkflow, ImageNodeWorkflow, UnimageNodeWorkflow, NodeDiagnosticsWorkflow 255True for presets seeded from YAML. These cannot be modified via the API.
True for burn-in presets whose test coverage satisfies every active burn-in policy's qualifying requirements for the preset's resource class. Informational only (the verdict engine keys off TestExecution.execution_mode). Derived at seed time from the active burn-in policies; only True on burn-in-workflow presets (the field exists on every preset, defaulting to False).