Cancelling a Trigger.dev run does not cancel the Sume job

Trigger.dev cancel stops the task and its child runs. A Sume job that already started generating cannot be cancelled, and still bills. Store the job id.

4 min readSume
All posts

No. Cancelling a Trigger.dev run stops your task. It sends nothing to Sume, and a Sume job that has started generating cannot be cancelled at all.

Trigger.dev facts are from its Runs docs and v4.6.1 changelog; Sume facts from Communication modes and Errors and credits, read 2026-10-01.

What does Trigger.dev cancel do?

The Runs docs say cancel stops task execution, marks the run canceled and does not retry it. In-progress child runs are canceled too. Since v4.6.1 the CLI has a runs cancel command. The docs do not say your task code gets a chance to run cleanup, so do not depend on one.

What does Sume cancel do?

POST /v1/jobs/{id}/cancel works only before generation starts. After that it returns 409 job_generation_already_started with details.cancelable: false. Cancelling an already-canceled job is idempotent. A client-side timeout or a stopped client does not cancel the job, and it still bills.

Two separate cancel switches, from the Trigger.dev and Sume docs read 2026-10-01
ActionStops your taskStops the Sume job
Trigger.dev run cancelYes, no retryNo
Sume cancel before generation startsNoYes
Sume cancel after generation startsNoNo: 409 job_generation_already_started

How do you keep the job id?

Persist the id right after the submit returns, before any waiting, so a cancelled run does not strand it. Then a separate path can cancel the job. Treat the 409 as an expected outcome, not an error: read details.cancelable and let the job finish.

curl -X POST https://api.sume.com/v1/jobs/$JOB_ID/cancel \
  -H "x-api-key: $SUME_API_KEY"

What if the job already finished?

Then there is a result and a charge. Read it with GET /v1/jobs/{id}/result; it answers 409 job_not_completed until the job completes. Poll GET /v1/jobs/{id}/status and honor next_poll_after_seconds. The same distinction applies in Temporal, covered in the Temporal cancel post.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume