Simple Workflow (Jobs)
The Jobs endpoint combines the entire workflow into fewer steps. Instead of managing each step individually, you create a single job that orchestrates everything.
Why Use Jobs?
Complete Flow (8+ steps)
Jobs Flow (4 steps)
1
Create a Job
POST https://api.glossi.app/api/v1/jobsHeader
Value
{
"models": [
{ "fileName": "chair.glb", "fileType": "glb" },
{ "fileName": "table.glb", "fileType": "glb" }
],
"templateId": "your-template-uuid",
"createProjects": true
}{
"models": [
{ "fileName": "chair.glb", "fileType": "glb" }
],
"templateId": "your-template-uuid",
"renderSettings": {
"renderBookmarks": true,
"imageQuality": 1
}
}{
"jobId": "job-uuid",
"status": "AWAITING_UPLOADS",
"models": [
{
"id": "model-1-uuid",
"fileName": "chair.glb",
"uploadUrl": "https://s3.../signed-url-1",
"uploadKey": "workspaces/.../model.glb"
},
{
"id": "model-2-uuid",
"fileName": "table.glb",
"uploadUrl": "https://s3.../signed-url-2",
"uploadKey": "workspaces/.../model.glb"
}
]
}3
4
Poll for Completion
GET https://api.glossi.app/api/v1/jobs/{jobId}Header
Value
{
"jobId": "job-uuid",
"status": "PROCESSING",
"progress": {
"modelsUploaded": 2,
"modelsReady": 1,
"modelsTotal": 2,
"projectsCreated": 0,
"projectsTotal": 2,
"rendersComplete": 0,
"rendersTotal": 0
}
}{
"jobId": "job-uuid",
"status": "COMPLETE",
"batchProject": {
"id": "batch-uuid",
"title": "API Job - 2025-02-10"
},
"progress": {
"modelsUploaded": 2,
"modelsReady": 2,
"modelsTotal": 2,
"projectsCreated": 2,
"projectsTotal": 2,
"rendersComplete": 0,
"rendersTotal": 0
},
"results": [
{
"model": { "id": "model-1-uuid", "name": "chair.glb" },
"project": { "id": "project-1-uuid", "name": "Chair Project" }
},
{
"model": { "id": "model-2-uuid", "name": "table.glb" },
"project": { "id": "project-2-uuid", "name": "Table Project" }
}
]
}Job Status Flow
AWAITING_UPLOADS → PROCESSING → CREATING_PROJECTS → RENDERING → COMPLETE
↓ ↓ ↓
FAILED FAILED FAILEDStatus
Description
Job Options
Field
Type
Default
Description
BatchProject
Complete Example with cURL
Using Webhooks with Jobs
Last updated
Was this helpful?