API & Webhooks are available for studios requiring custom pipeline integration. To ensure we support your specific workflow, access is currently request-only.
How it works
The API gives you programmatic access to Renderjuice. You make authenticated requests to upload assets, create jobs, check status, and retrieve results on your schedule.API workflow
When to use the API
Reach for the API when you need to control what happens on Renderjuice:Job management
- Submit renders from DCC tools – Blender addons, Maya scripts, or custom exporters can upload source files and queue jobs without touching the dashboard.
- Bulk operations – submit hundreds of shots programmatically, retry failed jobs in batches, or adjust settings across a project.
- Status monitoring – build custom dashboards that poll job progress, aggregate metrics, or triage failures.
Multi-stage workflows
- Conditional rendering – submit jobs only if upstream validation passes, or fork different render settings based on asset metadata.
- Cross-system coordination – tie Renderjuice jobs to farm nodes, compositing stages, or delivery pipelines that need precise timing control.
Ingestion flow
The first external ingestion flow uses presigned single-request uploads for small source files.Step 1: Request a presigned upload URL
Your tool asks Renderjuice for an upload target withPOST /api/external/v1/uploads. The response returns:
uploadUrl: an opaque presignedPUTURLslug: the handle to pass into job creation laterexpiresAt: when the upload URL stops working
slug. Clients should treat both uploadUrl and any storage-specific details as implementation details.
Step 2: Upload the source asset directly
Upload the.blend or .zip bytes with a single PUT request to the returned URL. Renderjuice is not expected to proxy the file upload itself.
Step 3: Create a job from the uploaded asset
After the upload completes, create a job withPOST /api/external/v1/jobs using only the slug from step 1. You do not need to send the filename again.
Step 4: Validate, render, and download
Once the job exists, the rest of the lifecycle follows the existing external endpoints:- validate the job
- start render
- poll status and progress
- download results when complete
First-release constraints
- Small
.blendand.zipuploads only - Single-request presigned uploads only
- Presigned single-request uploads are limited to files smaller than 5 GiB
- Multipart and resumable uploads are out of scope for the first public release
- Add-on uploads stay a separate workflow
Example sequence
1. Request upload URL
2. Upload file bytes
3. Create job
Getting started
Ready to implement? See the API Reference for:- Authentication and API key setup
- Upload and job lifecycle contracts
- Request/response schemas
- Interactive API playground
Best practices
- Authenticate securely – never hardcode API keys; use environment variables or secret managers.
- Handle rate limits gracefully – respect
429responses and implement exponential backoff. - Combine with webhooks – poll less frequently by relying on webhook notifications for completion events, then fetch details via the API only when needed.
- Keep uploads opaque – treat the presigned upload URL as a transport detail and keep using the returned
slugas the Renderjuice-side identifier. - Validate inputs – check file types, file sizes, and job payloads locally before submitting to catch errors early and reduce failed submissions.
Next steps
API Reference
Authentication, uploads, endpoints, and payload schemas
Job lifecycle
Upload, create, validate, render, and download
Webhooks
Pair the API with reactive event notifications

