Insurance claim steps explainer: avatar video scenes and cost

Turn a five-step claims process into one avatar video with ordered video_inputs scenes. Under 60 seconds, with cost at standard and plus quality.

5 min readSume
All posts

Write the claim steps as ordered scenes in video_inputs and send them to POST /v1/avatar-1.0/talking-video. The total planned duration has to stay between 4 and 60 seconds, so a five-step process gets about 12 seconds a step at most; at plus quality a 50-second video is 50 x $0.245 = $12.25.

Shape the script

Claims explainers fail when they try to say everything. Keep to the steps a customer does, in order, and leave policy detail to the page next to the video.

Use one scene per step, plus a silence beat if you want a pause for the viewer to read a caption. Silence needs a duration and no script.

  • Scene 1: report the claim and what to have ready.
  • Scene 2: upload photos or documents.
  • Scene 3: the adjuster contacts you.
  • Scene 4: the estimate and approval.
  • Scene 5: payment and what to do if something changes.

Constraints that apply

The current execution supports one resolved avatar per final video and expects the scene backgrounds to resolve to one shared scene. Sume rejects scripts whose estimated duration is outside 4 to 60 seconds. Make longer scripts shorter, or split them into two jobs.

Cost of a 50-second claims video by quality (Sume docs, read 2026-10-05)
QualityPer second (no product image)50 seconds
standard$0.184$9.20
plus (default)$0.245$12.25
max$0.55$27.50

Request

Each voice object has a script and a duration in seconds. This sends three of the five scenes to keep the example short.

import json, os, urllib.request

scenes = [
    ("report", "Report your claim online or by phone, and keep your policy number ready.", 9),
    ("upload", "Upload photos of the damage and any receipts.", 8),
    ("adjuster", "An adjuster will contact you to review what you sent.", 8),
]
body = {
    "avatar_handle": os.environ["AVATAR_HANDLE"],
    "aspect_ratio": "16:9",
    "quality": "standard",
    "captions": {"enabled": True, "style": "punch", "language": "auto"},
    "video_inputs": [
        {"id": i, "voice": {"type": "text", "script": s, "duration": d},
         "background": {"type": "prompt", "prompt": "Calm office, soft daylight"}}
        for i, s, d in scenes
    ],
}
req = urllib.request.Request(
    "https://api.sume.com/v1/avatar-1.0/talking-video",
    data=json.dumps(body).encode(), method="POST",
    headers={"Authorization": f"Bearer {os.environ['SUME_API_KEY']}",
             "Content-Type": "application/json",
             "Idempotency-Key": "claims-explainer-001"},
)
with urllib.request.urlopen(req, timeout=30) as r:
    print(r.status, r.read().decode()[:200])

Before you publish

  • Have your compliance team approve the exact wording; Sume renders what you send.
  • Use inline captions so viewers without sound can follow. They do not create a separate caption job, but they are an add-on inside the avatar-video estimate.
  • Label the video as AI-generated where your rules require it.

What to do

Render at standard first: 25 seconds at $0.184 is $4.60. If the wording needs edits, you have not spent plus money yet.

Sources

Related posts

More in Use cases

All Use cases posts

Written by Sume