Webhook rate limits: Zapier, Airtable, Pipedream vs a bulk of 100
Zapier, Airtable and Pipedream each publish a webhook intake limit. Compare them with a Sume bulk queue of up to 100 items and pick a receiver that fits.

A 100-item Sume bulk queue can produce up to 100 run webhooks, which is well under Zapier's published 1,000 per 5 minutes per Zap, but Airtable's five requests per second and Pipedream's 10 per second average are per-second figures that a burst of finishes can approach. Each item carries its own communication.webhook_url; the queue has none.
Sume facts are from the Bulk runs docs; every vendor figure was read 2026-09-30.
What does each receiver publish?
Zapier lists 20,000 requests per 5 minutes per user and 1,000 per Zap on legacy routes, answering 429 when exceeded. Airtable lists five requests per second and a 100kb payload. Pipedream lists an average of 10 requests per second and a 512KB body by default.
| Receiver | Rate | Body |
|---|---|---|
| Zapier per Zap, legacy routes | 1,000 per 5 minutes | 10 MB for triggers |
| Airtable When webhook received | 5 per second | 100kb |
| Pipedream HTTP trigger | 10 per second on average | 512KB by default |
| Sume bulk queue | Up to 100 items, concurrency 1 to 16 | payload: null above 1 MiB |
Does the concurrency setting spread deliveries out?
It limits how many child runs are in flight at once, from 1 to 16, so finishes trickle in as items complete rather than all at one instant. The docs do not promise a delivery rate, so measure a small batch before sizing a large one.
What should I do if the receiver pushes back?
For run webhooks, Sume retries up to 10 attempts with exponential backoff and honors Retry-After on 429 and 503. Poll GET /v1/format-run-queues/{queue_id} as the source of truth, and remember that completed means every item is terminal, not that all succeeded.
Which receiver should I pick?
Choose on your payload and rate, not the vendor name. If a receiver cannot verify signatures, as Airtable states, verify in a small relay first and forward a slim object with request_id.
Sources
Related posts
More in Developers
- Webhook receiver was down: replay missed Sume job webhooks
After a receiver outage, list completed jobs and POST /v1/jobs/{job_id}/webhook/redeliver one by one. Sume has no bulk cancel-before-cutoff call.
- Webhook signature mismatch: compare the secret fingerprint
Before filing a ticket for a Sume signature mismatch, compare the secret fingerprint header with the dashboard value. It is safe to paste into a ticket.
- What not to log from an AI API: keys, signed URLs, private media
Safe to log: request ids, job ids, status and sanitized media metadata. Unsafe: API keys, signed URLs, raw private media URLs and excess user content.
- webcrypto_modern_algorithms flag: verifying a Sume webhook
Sume's verifyWebhook runs on plain WebCrypto in Workers. The docs list no compatibility flag for it, so webcrypto_modern_algorithms is not a step to add.
Written by Sume