Activepieces 10-minute flow timeout and long Sume video jobs
Activepieces Cloud caps a flow run at 10 active minutes. Submit the Sume job async, pause the flow, and resume on the result instead of polling in a loop.

Do not hold one Activepieces run open while a Sume job renders. Submit with the default async mode, which returns 202 with a job id immediately, then pause the flow and continue when the result arrives. The Activepieces Cloud flow run timeout is 10 minutes of active execution, and paused time does not count against it.
Activepieces limits are from its limits page and release notes; Sume behavior is from Jobs and results, read 2026-09-30.
What exactly is the Activepieces limit?
The limits page lists 10 min on Cloud for both the flow run and a single action run (AP_FLOW_TIMEOUT_SECONDS, default 600 self-hosted). It says the timeout counts only active execution time, and that flows paused by Wait for Approval or Delay do not count against it.
| Run state | Counts toward the 10 min? |
|---|---|
| Step executing | Yes |
| Waiting inside a step instead of pausing | Yes; the page excludes only paused flows |
| Paused by Delay | No |
| Paused by Wait for Approval | No |
Why not poll inside the run?
Polling keeps the run active, so every minute counts toward the 10. Sume's docs say to use exponential backoff and stop on completed, failed or canceled, and to honor next_poll_after_seconds when it is present. A loop that sleeps inside the run burns the active budget doing nothing.
What should the flow do instead?
Submit with mode: "webhook" and a webhook_url that resumes a paused step, so the run stops counting time while Sume works. Sume sends one terminal event (job.completed, job.failed or job.canceled) and the docs say to verify its signature and keep polling status_url as a backup. See the waitpoint resume pattern.
What if the run times out anyway?
Treat the timeout as a lost connection, not a failed render: the job keeps its id on Sume. Store the id at submit time so a new run can read it with GET /v1/jobs/{job_id}/status.
Sources
Related posts
More in Developers
- Activepieces subflow retried: keep Sume jobs from billing twice
A retried Activepieces subflow can re-run your Sume submit. Derive the Idempotency-Key from a stable input, not the attempt, so a retry returns the same job.
- AI SDK isLoopFinished vs the 20-step cap for Sume video jobs
ToolLoopAgent stops after 20 steps by default. How many jobs_wait calls a Sume video render needs, and the per-call guards to keep if you lift the cap.
- AI SDK MCP client close() in onEnd: Sume jobs keep running
Closing the AI SDK MCP client in onEnd ends the tool connection, not the Sume jobs already submitted. Track job ids, then read or cancel them.
- Airtable script 50-fetch limit: send 100 records as one bulk run
An Airtable automation script gets 50 fetches and a 30-second timeout. One Sume bulk-run request carries up to 100 items, so one fetch beats a per-record loop.
Written by Sume