Batch Processing
Run Workflows on large batches of images and stored videos with cloud infrastructure provisioned for you.
About
Web App
Create a Batch Processing Job


Choose a Workflow
Upload Images or Videos
Configure Hardware

Start the Job
Monitor Job Progress
Run a Workflow from the App
From the Asset Library
Automatically When a Datasource Mirrors
Run a Job with the API or CLI
HTTP API
Ingest Data
Upload Video
Your Roboflow workspace identifier.
Batch identifier. Lowercase, max 64 chars: letters, digits, hyphens, underscores.
^[a-z0-9_-]+$Your Roboflow API key.
Name of the video file (e.g. my_video.mp4).
Signed URL details for uploading the video.
okPOST /data-staging/v1/external/{workspace}/batches/{batch_id}/upload/video?api_key=text&fileName=text HTTP/1.1
Host: api.roboflow.com
Accept: */*
Signed URL details for uploading the video.
{
"status": "ok",
"signedURLDetails": {
"uploadURL": "text",
"method": "PUT",
"extensionHeaders": {
"Content-Type": "application/octet-stream",
"x-goog-content-length-range": "1,1073741824"
},
"maxFileSize": 1073741824
}
}Upload Image
Your Roboflow workspace identifier.
Batch identifier. Lowercase, max 64 chars: letters, digits, hyphens, underscores.
^[a-z0-9_-]+$Your Roboflow API key.
Name of the image file.
The image file to upload.
Image uploaded successfully.
okPOST /data-staging/v1/external/{workspace}/batches/{batch_id}/upload/image?api_key=text&fileName=text HTTP/1.1
Host: api.roboflow.com
Content-Type: multipart/form-data
Accept: */*
Content-Length: 17
{
"file": "binary"
}Image uploaded successfully.
{
"status": "ok"
}Bulk Upload Images
Your Roboflow workspace identifier.
Batch identifier. Lowercase, max 64 chars: letters, digits, hyphens, underscores.
^[a-z0-9_-]+$Your Roboflow API key.
Signed URL details for uploading a tar archive.
okPOST /data-staging/v1/external/{workspace}/batches/{batch_id}/bulk-upload/image-files?api_key=text HTTP/1.1
Host: api.roboflow.com
Accept: */*
Signed URL details for uploading a tar archive.
{
"status": "ok",
"signedURLDetails": {
"shardId": "123e4567-e89b-12d3-a456-426614174000",
"uploadURL": "text",
"method": "PUT",
"extensionHeaders": {
"Content-Type": "application/x-tar",
"x-goog-content-length-range": "1,536870912"
},
"maxNumberOfImages": 500,
"maxShardSize": 536870912
}
}Check Batch Status
Your Roboflow workspace identifier.
Batch identifier. Lowercase, max 64 chars: letters, digits, hyphens, underscores.
^[a-z0-9_-]+$Your Roboflow API key.
Batch item count.
okNumber of items in the batch.
42GET /data-staging/v1/external/{workspace}/batches/{batch_id}/count?api_key=text HTTP/1.1
Host: api.roboflow.com
Accept: */*
Batch item count.
{
"status": "ok",
"count": 42
}Check Shard Upload Details
Your Roboflow workspace identifier.
Batch identifier. Lowercase, max 64 chars: letters, digits, hyphens, underscores.
^[a-z0-9_-]+$Your Roboflow API key.
Pagination token from a previous response.
Paginated list of batch shards.
okList of shard objects.
Token for fetching the next page of results. null if no more pages.
GET /data-staging/v1/external/{workspace}/batches/{batch_id}/shards?api_key=text HTTP/1.1
Host: api.roboflow.com
Accept: */*
Paginated list of batch shards.
{
"status": "ok",
"shards": [
{}
],
"nextPageToken": "text"
}Start a Job
Your Roboflow workspace identifier.
Job identifier. Lowercase, max 20 chars: letters, digits, hyphens, underscores.
^[a-z0-9_-]+$Your Roboflow API key.
Job type.
Maximum cumulative machine runtime in seconds across all parallel workers.
3600Webhook URL for job completion notifications. Custom webhook headers are not yet supported. The only header sent is Authorization: Bearer rf_{workspace_id}.
Job started successfully.
okPOST /batch-processing/v1/external/{workspace}/jobs/{job_id}?api_key=text HTTP/1.1
Host: api.roboflow.com
Content-Type: application/json
Accept: */*
Content-Length: 415
{
"type": "simple-image-processing-v1",
"jobInput": {
"type": "staging-batch-input-v1",
"batchId": "text"
},
"computeConfiguration": {
"type": "compute-configuration-v2",
"machineType": "cpu",
"workersPerMachine": 4
},
"processingTimeoutSeconds": 3600,
"processingSpecification": {
"type": "workflows-processing-specification-v1",
"workspace": "text",
"workflowId": "text",
"aggregationFormat": "jsonl"
},
"notificationsURL": "https://example.com"
}Job started successfully.
{
"status": "ok"
}Monitor Job Progress
Get Job Status
Your Roboflow workspace identifier.
Job identifier. Lowercase, max 20 chars: letters, digits, hyphens, underscores.
^[a-z0-9_-]+$Your Roboflow API key.
Job status details.
okCurrent job status (e.g. pending, processing, completed, failed).
Processing progress as a fraction between 0 and 1.
GET /batch-processing/v1/external/{workspace}/jobs/{job_id}?api_key=text HTTP/1.1
Host: api.roboflow.com
Accept: */*
Job status details.
{
"status": "ok",
"jobStatus": "text",
"progress": 1
}List Job Stages
Your Roboflow workspace identifier.
Job identifier. Lowercase, max 20 chars: letters, digits, hyphens, underscores.
^[a-z0-9_-]+$Your Roboflow API key.
List of job stages.
okList of stage objects. Each stage has an ID and an output batch ID.
GET /batch-processing/v1/external/{workspace}/jobs/{job_id}/stages?api_key=text HTTP/1.1
Host: api.roboflow.com
Accept: */*
List of job stages.
{
"status": "ok",
"stages": [
{}
]
}List Stage Tasks
Your Roboflow workspace identifier.
Job identifier. Lowercase, max 20 chars: letters, digits, hyphens, underscores.
^[a-z0-9_-]+$The stage identifier.
Your Roboflow API key.
Pagination token from a previous response.
Paginated list of tasks.
okList of task objects.
Token for fetching the next page of results. null if no more pages.
GET /batch-processing/v1/external/{workspace}/jobs/{job_id}/stages/{stage_id}/tasks?api_key=text HTTP/1.1
Host: api.roboflow.com
Accept: */*
Paginated list of tasks.
{
"status": "ok",
"tasks": [
{}
],
"nextPageToken": "text"
}Export Results
List Output Parts
Your Roboflow workspace identifier.
Batch identifier. Lowercase, max 64 chars: letters, digits, hyphens, underscores.
^[a-z0-9_-]+$Your Roboflow API key.
List of batch parts.
okGET /data-staging/v1/external/{workspace}/batches/{batch_id}/parts?api_key=text HTTP/1.1
Host: api.roboflow.com
Accept: */*
List of batch parts.
{
"status": "ok",
"parts": [
{
"partName": "text"
}
]
}List Download URLs
Your Roboflow workspace identifier.
Batch identifier. Lowercase, max 64 chars: letters, digits, hyphens, underscores.
^[a-z0-9_-]+$Your Roboflow API key.
Pagination token from a previous response.
Filter by part name (from the list parts response).
Paginated list of download URLs.
okToken for fetching the next page of results. null if no more pages.
GET /data-staging/v1/external/{workspace}/batches/{batch_id}/list?api_key=text HTTP/1.1
Host: api.roboflow.com
Accept: */*
Paginated list of download URLs.
{
"status": "ok",
"filesMetadata": [
{
"downloadURL": "text",
"fileName": "text",
"partName": "text",
"shardId": "text",
"contentType": "text",
"nestedContentType": "text"
}
],
"nextPageToken": "text"
}Webhook Notifications
CLI
Setup
Ingest Data
Images
Videos
Cloud Storage
Signed URL Ingestion
Inspect Staged Data
Start a Job
Process Images
Process Videos
Monitor Job Progress
Export Results
Webhook Automation
Data Ingestion Webhooks
Job Completion Webhooks
Cloud Storage Authentication
AWS S3 and S3-Compatible Storage
Google Cloud Storage
Azure Blob Storage
Custom Scripts
Discover All Options
Last updated
Was this helpful?