Temporal BlobSizeLimitError: pass the Sume artifact URL, not bytes

Temporal Cloud allows 2 MB per payload. Pass the Sume job_id and media.sume.com artifact URL through activities and signals, never video bytes.

4 min readSume
All posts

A rendered video will not fit in a Temporal payload, which Temporal Cloud caps at 2 MB per request. Keep the bytes on Sume and pass only the job_id and the media.sume.com artifact URL through activity results, signals and workflow input.

Limits are from the Temporal Cloud limits page; Sume behavior from Asset library and Core workflow, read 2026-09-30.

What are the Temporal limits?

The limits page links a BlobSizeLimitError guide for handling large payloads, and notes the 2 MB figure is a per-request maximum, not a throughput target.

Temporal Cloud limits, from the Temporal limits page read 2026-09-30.
LimitValue
Max payload, single request2 MB
gRPC message4 MB
Event History transaction4 MB
Event History per execution51,200 events or 50 MB

What should the activity return?

The Sume docs say completed jobs can include artifacts under https://media.sume.com, that these Sume-owned URLs are the public contract, and that integrations should store the Sume URL, not raw provider URLs. Return that URL string, plus the job_id, from the activity. Every value stays in the kilobyte range, so history size does not scale with video length.

How does the workflow learn the job finished?

Terminal webhook events carry job_id, and the docs say receivers must treat it as the idempotency key. Have the receiver signal the workflow with the job_id and artifact URL, as in Temporal: signal a workflow from an AI video webhook. Signals are retried by delivery, so ignore a job_id you have already handled.

Does Sume ever send large bodies itself?

For Format run webhooks, a receipt over 1 MiB is not delivered inline. Sume sends payload: null and an error with a result_url to fetch it from, while status still reports the real outcome. Treat that the same way: store the URL, fetch outside the workflow, and keep payloads small.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume