One parser for Sume run webhooks and the poll response

A Sume run webhook payload is byte-identical to the data object from the poll endpoint, so one parser serves both. Handle outcome ok, degraded and error once.

5 min readSume
All posts

Write one parser for Sume agent runs. The webhook payload is byte-identical to the data object returned by GET /v1/agent-runs/{id}, so the same code handles a delivery and a poll.

This follows Sume's Run webhooks and Agent Completions pages, read 2026-10-06.

What does the shared parser handle?

The table below lists each item as documented.

Run result fields from docs.sume.com, read 2026-10-06.
FieldValuesHandler action
outcomeokStore artifacts
outcomedegradedStore and flag for review
outcomeerrorAlert; do not retry blindly
payloadnull with payload_too_largePoll for the full object

Where do the two paths differ?

Only the envelope differs. A webhook adds signature headers you verify first; a poll needs a key with agent_completions:read. Canceled and skipped runs send no webhook, so poll for them. Poll as a backstop for deliveries that never arrived.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume