Overview

The Sume Developer API is the public server-side API for api.sume.com. It is workspace-scoped and key-authenticated. It is for generation workflows that must have durable jobs, public media artifacts, usage tracking, and dashboard observability.

Base URL

All endpoint paths on this page include /v1, because the API service root serves the live OpenAPI schema.

Product, API, and media domains

Domain / URLPurpose
https://www.sume.comPublic company/product site.
https://www.sume.com/dashboardDashboard home.
https://www.sume.com/dashboard/api-keysCreate and manage Developer API keys.
https://www.sume.com/dashboard/jobsExamine jobs.
https://www.sume.com/dashboard/usageUsage and balance summary.
https://www.sume.com/dashboard/subscriptionBilling & subscription (plans and credit top-ups).
https://www.sume.com/pricing/apiPublic metered API rate card (source of truth for prices).
https://www.sume.com/playgroundAvatar playground (human experiments).
https://www.sume.com/agentsAgents product surface.
https://api.sume.com/v1Public Developer API.
https://api.sume.com/referenceSwagger UI.
https://api.sume.com/reference/jsonLive OpenAPI JSON (schema source of truth).
https://media.sume.comFirst-party media and artifact URLs that completed jobs return.

Authentication

Create an API key in the API Keys dashboard. Send the key from a server-side environment.

The API also accepts x-api-key: sume_live_.... Do not send workspace or user identifiers in request bodies. Sume resolves the scope from the API key.

Start with the Format API

Most partner integrations are one call to a saved recipe, not a chain of model invocations that you write yourself. Format API runs an authored recipe in a sandbox. It returns durable media and JSON in a schema that you supply. Refer to Structured output.

The model endpoints below are the layer below the Format API. Call them directly when you want only one model invocation and you control the orchestration yourself.

TypeScript clients

From Node, Bun, Deno, or Workers, @sume-com/sdk (@sume-com/sdk@0.2.0) wraps each operation on this page with generated types from the same OpenAPI schema. It also adds the helpers that you must otherwise write yourself: subscribeFormatRun (Format create + wait), waitForRun, waitForJob (generation jobs), uploadFile, and verifyWebhook. Start with subscribeFormatRun + webhooks. There is no SSE stream. Thus, you get the progress when you poll events_url (a phase timeline).

The SDK is a convenience layer, not a second contract. This page and the API reference stay the source of truth for fields.

Current endpoint map

This table is only a navigation summary. The accurate request/response schemas come from live OpenAPI (https://api.sume.com/reference/json). For method/path notes, we recommend the readable API reference. For workflow prose, we recommend the model guides. Do not use duplicated Markdown tables as a second schema.

For new integrations, we recommend canonical product paths (/v1/{family}-1.0/...). Sume continues to support the /v1/models/sume/.../runs aliases for compatibility.

AreaCanonicalCompatibility / aliasesUse for
FormatsGET /v1/formats, GET /v1/formats/:handle/:slug, POST /v1/formats/:handle/:slug/runs, GET /v1/formats/:handle/:slug/runs, POST /v1/formats/:handle/:slug/bulk-runs, GET /v1/format-runs/:id, GET /v1/format-runs/:id/status, GET /v1/format-runs/:id/result, GET /v1/format-runs/:id/events, POST /v1/format-runs/:id/cancel, POST /v1/format-runs/:id/webhook/redeliver, GET /v1/format-run-queues/:idGET /v1/formats/:id, POST /v1/formats/:id/runs, POST /v1/formats/:id/bulk-runs (opaque skl_… twins)Run a saved recipe (one run, or a bulk queue). Get the receipt by webhook or poll. Read the media and the schema-shaped JSON. Refer to Format API, Create a run, Runs and results, Errors and spend, and Bulk runs.
HealthGET /v1/health—Service readiness checks.
CatalogGET /v1/catalog—Find capabilities, models, runtime readiness, and price metadata.
AccountGET /v1/me—Make sure that the API key works, and get the resolved workspace context.
Balance and usageGET /v1/balance, GET /v1/usage—Read the USD balance and the usage ledger entries.
JobsGET /v1/jobs, GET /v1/jobs/:id, GET /v1/jobs/:id/status, GET /v1/jobs/:id/result, POST /v1/jobs/:id/cancel, GET /v1/jobs/:id/events—List, inspect, poll, cancel, recover, and audit jobs.
Avatar 1.0POST /v1/avatar-1.0/generate, POST /v1/avatar-1.0/talking-video, GET /v1/avatar-1.0/avatars, GET /v1/avatar-1.0/avatars/:idPOST /v1/models/sume/avatar/v1.0/runs, POST /v1/models/sume/avatar-1.0/generate/runs, POST /v1/models/sume/avatar-1.0/talking-video/runs, GET /v1/avatars, GET /v1/avatars/:idCreate and read avatars / talking videos.
Avatar Video 1.0GET /v1/avatar-videos, GET /v1/avatar-videos/:idPOST /v1/models/sume/avatar-video/v1.0/runsProduct/scene avatar-video runs and resource reads.
Avatar Video PreviewsPOST /v1/avatar-video-previews, GET /v1/avatar-video-previews/:id, POST /v1/avatar-video-previews/:id/regenerate, POST /v1/avatar-video-previews/:id/generate-video—Preview → generate-video flow.
Avatar catalogPOST /v1/avatar-catalog/search—Search reusable catalog avatars.
Avatar Face Swap (Beta)—POST /v1/models/sume/avatar-face-swap/v1.0/runsFace-swap model runs.
Image 1.0POST /v1/image-1.0/generatePOST /v1/models/sume/image-1.0/runsImage generation.
Video 1.0POST /v1/video-1.0/generatePOST /v1/models/sume/video-1.0/runsVideo generation.
Music RouterPOST /v1/music-router/generate—Music generation. sume/music-auto selects the engine.
Music 1.0POST /v1/music-1.0/generatePOST /v1/models/sume/music-1.0/runsSume will retire it. It resolves through Music Router.
Video captionsPOST /v1/video-captions, GET /v1/video-captions/:id—Caption jobs and resource reads.
Trending videosPOST /v1/trending-videos/search—Search TikTok trending video metadata.
ActionsGET /v1/actions, GET /v1/actions/:id, POST /v1/actions/:id/runs, GET /v1/action-runs/:id, POST /v1/action-runs/:id/cancel—Recurring schedules. Refer to Scheduled.
Agent CompletionsPOST /v1/agent/completions, GET /v1/agent-runs, GET /v1/agent-runs/:id, POST /v1/agent-runs/:id/cancel—Run the Agent on an ad-hoc task. Refer to Agent Completions.

For the full method/path tables and the OpenAPI hide-list notes, refer to the API reference.

Older www.sume.so consumer-product routes are not part of the current sume.com developer platform API. Examples of these routes are /credits, /uploads/presign, /brand, /ads/videos, /face-swap, and /reference-analysis.

Internal voice capabilities, raw provider model IDs, and provider task URLs are not public API surfaces, unless they are in /v1/catalog and the OpenAPI schema.

Job-first workflow

Model-run and compatibility submit endpoints accept work, create a job, and return a response that you can poll or recover later.

We recommend that most integrations store the job ID and poll with backoff. Use webhooks if you have a public HTTPS callback endpoint. With webhooks, Sume sends terminal job events to your server.

Paid generation uses queue-first admission. Workspace concurrency limits are applicable to jobs that are in the processing state. While the queue has capacity, Sume can still accept valid submissions as queued. For tier limits, generation_limits, and queue-full behavior, refer to Generation admission.

OpenAPI

The local docs preview serves a snapshot at:

Production serves the live schema at:

Swagger UI is available from the API service at:

Use the live schema as the accurate source of truth for requests and responses. A sync refreshes the docs repo snapshot from that endpoint (refer to README / pnpm openapi:sync).