Where the Sume TypeScript SDK runs: Node 18+, Bun, Deno and Workers
@sume-com/sdk has no runtime dependencies and needs only fetch and WebCrypto. Install it, create a client, and know which options and helpers it adds.

The Sume TypeScript SDK, @sume-com/sdk, runs anywhere that provides fetch and WebCrypto: Node 18 or later, Bun, Deno, and Cloudflare Workers. It is MIT licensed with no runtime dependencies. The docs list version 0.2.0 as the published release (read 2026-10-03).
Create a client and pass it
Install with npm install @sume-com/sdk, then build a client with createSumeClient({ apiKey }). Pass that client on every call: the module-level default has no key and targets production, so it exists only to make generated code compile. The client sends x-api-key only; add no Authorization header in a fetch wrapper, since both together return 401.
Options and helpers
Everything else in the package is generated from the OpenAPI schema, one function per operation, plus a few hand-written helpers.
| Item | What it does |
|---|---|
| apiKey | Required developer API key |
| baseUrl | Defaults to https://api.sume.com; dev host for development |
| fetch | Seam for instrumentation, retries or tests |
| subscribeFormatRun | Create a Format run and poll to a terminal receipt |
| waitForRun, waitForJob | Poll an existing run or a generation job |
| verifyWebhook | Check a sume-v1 signature, async |
Server-side only
An API key spends credits and there is no browser-safe variant. Never ship it in client JavaScript or a NEXT_PUBLIC_ variable; put your own endpoint in front and construct the Sume request there.
Sources
Related posts
More in Developers
- Sume video callback_url must be HTTPS: a webhook instead of polling
POST /v1/videos accepts callback_url, which must be HTTPS. Event names, the signature header, retries, and when a poll loop is still the safer choice.
- Sume video job failed: retry, new key, or switch the model?
A failed video job is final, and an Idempotency-Key replay returns the same failed job. Read the error, then retry with a new key or change models.
- Sume webhooks plus a sweeper: recover jobs whose callback never came
Webhook delivery can fail after 10 attempts while the Sume job still finishes. Run a sweeper that polls jobs stuck non-terminal in your own table.
- How to test a webhook URL before a Sume Format run uses it
POST /v1/webhooks/test-deliveries sends a signed webhook.test event to your URL. See the scope, the response fields, and the secret check, with no paid run.
Written by Sume