Replicate webhook_events_filter on Sume: terminal events only
Replicate lets webhook_events_filter pick start, output, logs and completed. Sume webhooks send terminal job events only, so there is no filter to set.

Replicate's webhook_events_filter chooses which events reach your webhook. Sume has no equivalent because it sends terminal job events only: job.completed, job.failed and job.canceled. Progress comes from polling.
Replicate details are from its receive-webhook page; Sume details from Webhooks and Jobs and results, read 2026-10-01.
What can the Replicate filter select?
The page says Replicate sends requests by default on new outputs and on finish, and that a webhook_events_filter array in the prediction request body changes that. Values: start (immediately on start), output (each time an output is generated), logs (each time log output is generated) and completed (when the prediction reaches a terminal state).
What events does Sume send?
The Sume webhooks page states that Sume sends terminal job events only, with no progress or partial deliveries.
| Replicate filter value | Sume event |
|---|---|
start | None |
output | None |
logs | None |
completed (succeeded, canceled or failed) | job.completed, job.failed, job.canceled |
How do I get progress on Sume?
Poll. The jobs docs point to GET /v1/jobs/:id/events for the event trail, or a webhook for the end. A common shape is a webhook as the main completion path with a status poll as a fallback.
What changes in a ported handler?
Delete the filter. Branch on the three terminal event names, treat job.completed as meaning a public result is available, and treat job.canceled as the canceled state. Verify the signature before trusting a body; see Go webhook signature verification for Sume and format run lifecycle, webhooks and polling.
Sources
Related posts
More in Developers
- Replicate webhook URL custom id vs Sume job_id as the key
Replicate suggests a query param like customId on the webhook URL. Sume bodies carry request_id and job_id, and job_id is the receiver's idempotency key.
- gen3a_turbo no longer available on Runway: re-read Sume's model list
Runway now fails requests for gen3a_turbo and gen4_aleph. Avoid the same break on Sume: read /v1/videos/models instead of hard-coding ids.
- Runway Model Router allow and deny lists vs Sume auto
Runway's Model Router has allow and deny lists plus per-modality credit ceilings. Sume has no lists: pin a catalog id, or send sume/auto and accept its pick.
- Runway per-generation usage export vs the Sume GET /v1/usage ledger
Runway's enterprise usage export lists credits per generation. On Sume, GET /v1/usage returns USD ledger rows per workspace, filterable by job_id.
Written by Sume