---
title: "Get bulk render status"
method: GET
path: "/api/render/bulk/{id}"
tags: ["Bulk Render"]
---

# Get bulk render status

`GET /api/render/bulk/{id}`

## Request

- Base URL: `https://api.zvid.io`
- URL: `https://api.zvid.io/api/render/bulk/{id}`
- Auth: one of:
  - API key in header `x-api-key`
  - HTTP bearer

Batch status with per-item job states and results.

## Path parameters

- `id` string, required

## Response `200`

Batch and child job results

- BulkRenderDetail
  - `bulk` object, required
    - `id` string, required
    - `name` string, nullable
    - `templateId` string, nullable
    - `type` 'video' | 'image'
    - `status` string, required
    - `totalJobs` integer, required
    - `creditsReserved` number
    - `counts` object, required
      - `completed` integer, required
      - `failed` integer, required
      - `pending` integer, required
    - `createdAt` string, date-time
  - `jobs` BulkJobSummary[], required
    - `id` string, required
    - `status` 'queued' | 'processing' | 'completed' | 'failed', required: Job status
    - `name` string, nullable
    - `creditsEstimated` number, nullable
    - `creditsConsumed` number, nullable
    - `videoDuration` number, nullable: Output duration in seconds (null for images)
    - `videoResolution` string, nullable
    - `outputUrl` string, nullable: CDN URL of the finished output (null before completion and after expiry)
    - `thumbnailUrl` string, nullable
    - `errorMessage` string, nullable
    - `templateId` string, nullable: Source template, when the job was rendered from one
    - `createdAt` string, date-time, required
    - `completedAt` string, date-time, nullable
    - `outputExpiresAt` string, date-time, nullable: Availability deadline based on the plan recorded for this render, starting at completion. URLs are withheld after this time.
    - `outputExpiredAt` string, date-time, nullable: When expiration cleanup was recorded. Check outputExpiresAt even while cleanup is pending.
    - `outputCleanupStatus` string, nullable: Output cleanup progress; failed storage deletion or cache purges are retried.

## Other responses

- `401`: Unauthorized
- `404`: Batch not found

---

[API](https://skmtc.dev/zvid/apis/zvid-api.md) · [All operations](https://skmtc.dev/zvid/apis/zvid-api/llms.txt) · [OpenAPI document](https://skmtc.dev/zvid/apis/zvid-api/revisions/8a665b293b37?raw)
