Zoho Flow webhook trigger 100 per minute vs Sume bulk-run bursts
Zoho Flow handles 100 executions a minute on a webhook trigger. A 100-item Sume bulk run can arrive faster, so absorb the burst and dedupe on run_id.

A Sume bulk run of up to 100 items can send its per-item completion webhooks faster than a Zoho Flow webhook trigger accepts them. Zoho's FAQ says Zoho Flow supports 300 executions per minute for an app trigger and 100 per minute for a webhook trigger. Put a small buffer in front, or use the app-trigger path, and treat Sume's retries as normal.
The numbers
| Item | Value |
|---|---|
| Zoho Flow app trigger | 300 executions per minute |
| Zoho Flow webhook trigger | 100 executions per minute |
| Sume bulk-run items | Up to 100 per request |
| Sume delivery attempts | 10, 10 s timeout each |
Why bursts happen
A bulk run takes up to 100 items with a concurrency setting. Each item can carry its own webhook, because the queue has none, so items finishing close together send close together events. Each is format.run.terminal with status, outcome and a payload receipt. Lowering concurrency spreads completions.
Absorb, dedupe, acknowledge
Sume retries failed deliveries up to 10 times, with exponential backoff for run webhooks bounded at one hour and by any Retry-After you return. If Zoho rejects some deliveries during a burst, they will come back. Make the flow idempotent: key on run_id or request_id.
- Return a fast 2xx from a buffer, then feed Zoho at its own pace.
- Verify the HMAC
sume-v1=signature in the buffer. - Read
GET /v1/format-run-queues/{id}to reconcile, since canceled and skipped runs send no webhook.
Alternative: poll the queue
If a buffer is too much, skip item webhooks and have a scheduled Zoho flow read the queue endpoint. Polling reads state directly and cannot lose events. Use one method per item to avoid double handling, and replay a missed delivery with POST /v1/format-runs/{id}/webhook/redeliver.
Sources
Related posts
More in Integrations
- How to add an MCP server to ChatGPT with developer mode
Turn on ChatGPT developer mode, create an app for the server's URL, and sign in with OAuth. The steps, with Sume's hosted MCP server as the example.
- How to add subtitles to a video in Python
Add subtitles to a video in Python with Requests: POST the video URL to Sume's /v1/video-captions, poll the job, then read the captioned video_url.
- Add Sume to Claude as a custom connector (remote MCP)
Add Sume's hosted MCP server to Claude under Customize > Connectors, see what Sume's OAuth consent grants, and decide whether to allow paid tools.
- Airflow HTTP sensor: wait for an AI video job to finish
Submit an AI video job with Airflow's HttpOperator, then wait with an HttpSensor in reschedule mode that passes once the job's status is completed.
Written by Sume