releases.shpreview

Deferred Functions: fire-and-forget background work with typed payloads

Deferred Functions are a new way to launch independent background work from inside an Inngest function. Call defer("some-id", { function, data }) and the parent run keeps executing — the deferred run is fully independent, with its own retries, concurrency, step state, and typed payload.

Key features:

  • Fire-and-forgetdefer(...) is synchronous and returns void. The parent doesn't block and never sees a result.
  • Typed payloads — Define a Standard Schema on the deferred function and data is validated on both the caller and receiver side, then typed in the handler.
  • Fully independent runs — Each call triggers its own run with its own retries, concurrency, and step state. Multiple parents can target the same deferred function.
  • Works inside steps — Call defer(...) directly in a handler or from inside step.run().

Available now in beta via createDefer from inngest/experimental in the TypeScript SDK. See the Deferred Functions reference for the full API.

Fetched June 8, 2026