Service-account key gets 403 on a Format run: use a user or team key
Sume service-account keys cannot create Format runs and fail with 403 insufficient_scope and a service_account_format_runs_unsupported reason. Here is the fix.

If a Format run fails with 403 insufficient_scope and details.reason of service_account_format_runs_unsupported, the key is a service-account key. The Format docs say these keys cannot create Format runs. Create a user key with the formats:read and formats:write scopes instead, or a team-workspace key if the Format belongs to a team.
The 403 family
The Format API separates three 403 and 404 cases that look alike. Read error.code and details.
| Response | Cause | Fix |
|---|---|---|
403 insufficient_scope | Key lacks formats:read or formats:write; details.required_scope names it | Mint a new key and rotate; scopes cannot be added |
403 insufficient_scope with service_account_format_runs_unsupported | A service-account key on a run create | Use a user or team key |
403 workspace_key_required | Personal key on a team Format; details.workspace_id names the workspace | Create a key in that workspace |
404 format_not_found | Unknown, archived, hidden or no longer shared | Check the address and the grant |
Fixing it
Open API keys in the dashboard, create a key in the workspace that owns the Format, and tick the Formats scopes. Keys made before the Formats API shipped do not carry those scopes and fail every Format call with 403 insufficient_scope, never a 404. Rotate to the new key; you cannot patch scopes onto an old one.
Keep the key server-side and store it as a secret. If your automation runs under a service account for other Sume calls, give the Formats job its own key and its own variable so the two do not get mixed up.
- One key per purpose, with only the scopes needed.
- For a team Format the key must come from the team workspace.
- Membership alone does not stand in for a team key.
Auditing your keys
List the keys your automation uses and write down which scopes each carries. Mixed scopes are the usual cause of this class of error: a key that works for media jobs but was minted before the Formats scopes existed. A short inventory, with the workspace each key belongs to, answers most 403 questions in a minute.
Limits
This is the documented behaviour of the Format run endpoints; other Sume endpoints may treat service accounts differently, and the Agent Completions docs separately say service accounts are refused there. Check each page before you plan around it. A 401 is a different problem: no key, a malformed key, two credentials at once, or a revoked key.
Related posts
More in Formats
- Before/after ad from one packshot: how the Sume Format builds it
sume-before-after builds a matched first frame with ChatGPT Image 2, then animates a reveal with Seedance 2.5. What to brief, what to check, and the limits.
- Gift set image for holiday listings: the Editorial Product Set Format
Turn a packshot of a three-item gift set into a clean editorial image for holiday listings and ads. What sume-editorial-product-set returns and its limits.
- A brand end card for holiday ads with the Logo Motion Design Format
Make a short animated logo end card for Q4 video ads from one logo image. What sume-logo-motion-design takes and how to attach it to a clip with a timeline.
- The product usage demo Format: a person using your product, by API
sume-product-usage-demo makes a 9:16 clip of a person using a product from a packshot. What it takes, how to call it, and where it falls short.
Written by Sume