Avatar spokesperson for 40 stores: 30 s jobs and queue_full

A 30 s Sume Avatar 1.0 clip at plus is about 485 credits (16.16/s). Forty store versions exceed a Pro queue of 24: send waves with idempotency keys.

6 min readSume
All posts

A 30-second Avatar 1.0 clip at the default plus quality with no product image is about 485 credits: the rate card lists 16.16 credits per second, and 16.16 x 30 = 484.8. Forty store-specific versions are about 19,392 credits, and 40 jobs is more than a Pro workspace will accept at once. Pro takes 24 paid jobs (4 processing plus 20 queued), so the 25th submit returns 429 queue_full. Send the forty in two waves.

Avatar videos run 4 to 60 seconds by Sume's estimate of the script. Longer scripts are rejected, so split them into several jobs. One final video uses one avatar.

Credit arithmetic per tier

Per-second credits are from the Sume pricing contract for Avatar 1.0 video; the totals are plain multiplication, and the invoice may round differently. Add a product image and the per-second rate rises (for example plus: 17.02).

Avatar 1.0 video, no product image, credits per second (Sume pricing contract, read 2026-10-13)
QualityCredits/s30 seconds40 versions
standard12.14364.214,568
plus (default)16.16484.819,392
max36.271,088.143,524

Submit with a stable key per store

Use a key that you can reproduce: store id plus script version. After a timeout, resend the same key and you get the same job, not a second charge. The script is the only per-store part, so keep the avatar handle, aspect ratio and quality fixed.

curl -X POST https://api.sume.com/v1/avatar-1.0/talking-video \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: holiday-hours-v1-store-017" \
  -d '{
    "avatar_handle": "store_host",
    "aspect_ratio": "9:16",
    "quality": "plus",
    "script": "Hi, this is the Main Street store. This week we are open late for the holidays. Come in and say hello.",
    "captions": {"enabled": true, "style": "slam", "language": "auto"}
  }'

When the queue is full

Read generation_limits on each submit response and stop adding work when queue_capacity_remaining is low. On queue_full, wait for a job to finish or cancel the queued ones you do not need, then retry with the same key. Canceling works only before generation starts.

Inline captions are free of a separate caption job. If the caption stage fails, the avatar job can still succeed with a clean video_url and captions.status=failed. Check that field before you publish.

  • Put store hours in a caption, since the spoken script can drift from the hours you mean.
  • Run a preview of the first frame once, then reuse the avatar and scene for all stores.
  • Do not increase concurrency by buying credits; it is plan-only.

Related posts

More in Sume Avatar 1.0

All Sume Avatar 1.0 posts

Written by Sume