Always-on agents making video: a Sume callback_url, not polling

An always-on agent that waits on video should not poll in a loop. On Sume, pass an HTTPS callback_url and receive a signed webhook when the job finishes.

4 min readSume
All posts

OpenAI Dots are always-on ChatGPT agents that can generate video through Higgsfield's plugin. An agent that runs unattended should not sit in a polling loop for a long render. On Sume you pass an HTTPS callback_url on POST /v1/videos and the job posts a signed webhook when it reaches a terminal state.

The Dots description is from Higgsfield's September 29 changelog entry; the webhook rules are from Video generation, read 2026-10-01.

What is Dots, per the changelog?

The entry says always-on agents in ChatGPT can generate video and images on Higgsfield through its plugin, that each dot runs on GPT-6.1 Sol with its own cloud computer per OpenAI, and that chat works in ChatGPT, Slack and Teams. Availability is limited to certain plans and regions. This page does not describe Dots beyond that.

How does a Sume webhook work?

Instead of polling for job status, you receive a webhook notification when the job completes. Sume signs the raw JSON body and sends x-sume-webhook-timestamp and x-sume-webhook-signature headers. The payload is Sume's standard job envelope, and the exact shape and verification steps are in the API reference webhooks guide. Verify the signature with a non-empty secret before you trust the body.

Webhook facts from the Sume video docs, read 2026-10-01.
ItemRule
Fieldcallback_url in the request body
SchemeMust be HTTPS
Headersx-sume-webhook-timestamp, x-sume-webhook-signature
Retried createSend Idempotency-Key; a replay returns the original job

Why does this matter for a long-running agent?

Over hosted MCP, status polls and tool calls draw on budgets; see read and write budgets for MCP agents. A callback means the agent can submit, go idle, and act when the event arrives. If a delivery is missed, read the job with GET /v1/jobs/{id}/status once instead of looping.

What should the receiver do first?

Check the timestamp and signature, then return a 2xx quickly and do the work after. Treat the callback as a signal and fetch the result from the job if you need the files. Background reading: webhook security best practices.

Sources

Related posts

More in Integrations

All Integrations posts

Written by Sume