Description
Subject: Video Agent (v3) sessions failing at progress 0 with no error code — intermittent, worse with longer prompts
Account API key ending: ZVMn
Date of tests: 2026-09-01, ~01:00–04:00 UTC
Summary
POST /v3/video-agents is accepted (HTTP 200, session_id returned), the agent
posts an opening message, then the session goes to status "failed" with
progress 0 — before any rendering starts. No reason is returned anywhere.
This is intermittent and correlates with prompt length: short prompts almost
always succeed, prompts of ~2.5k characters and up frequently fail. The SAME
prompt succeeded at 01:36 and failed at 03:00 with no changes.
No error information is returned
GET /v3/videos/{video_id}
{"data":{"created_at":...,"id":"...","status":"failed","title":""}}
-> no failure_code, no failure_message, despite
https://developers.heygen.com/reference/get-video documenting them
GET /v1/video_status.get?video_id=...
{"code":100,"message":"Success","data":{... "status":"failed","error":null ...}}
GET /v3/video-agents/{session_id}
keys: created_at, messages, progress, session_id, status, title, video_id
-> no error / failure_code / failure_message field at all
-> last message is the agent's own: "I'll start by creating a brand kit ...
then I'll draft the full blueprint"
Failing session IDs
4534480298564a76b31b1500534719db 290-char prompt, portrait -> failed t+60s
591999b1c13c4dd6988bbcaa72d5280d 3592-char prompt, portrait -> failed
bcc376b0544d44319c2baa67d336d5df 3592-char prompt -> failed
dd484f35feee4fda9afdbafd9bc3b180 5745-char prompt -> failed
8512749f257a4035b28ccc2095dc811b 5745-char prompt -> failed
Succeeding sessions, same key, same hours (for contrast)
a503824addd64bc7a219ea058e121f07 105-char prompt, portrait -> completed
88e940dda8ab4105a8069184fd980f90 105-char prompt, landscape -> completed
ab48ebe7c40047c9b60fe61879191c1e 3592-char prompt -> completed
a391ee1ff48c43bc8f6085d19f69f620 2394-char prompt -> completed 01:36
(the identical 2394-char prompt FAILED when resubmitted at ~03:00)
What we ruled out on our side
- Quota: 342–465 remaining throughout; exhaustion would return 429 at submit,
and these are accepted with a session_id.
- Orientation: identical prompt submitted as portrait and landscape — both
completed. Not orientation-specific.
- Prompt content: a prompt containing clinical/injection wording failed, but the
same content at 2,394 chars completed, and a completely unrelated prompt of
similar length also failed.
- Request shape: mode=generate, orientation, voice_id (VpwKdM1cvA7NWyJVaA1Y —
confirmed present in /v2/voices). With and without callback_url: no difference.
- Prompt structure: splitting one long scene into several made no difference.
Questions
- Is there a documented or undocumented prompt-size limit for /v3/video-agents?
If so, what is it, and can the API reject oversized prompts at submit time
(4xx) rather than accepting them and failing silently later?
- Why are failure_code / failure_message absent on GET /v3/videos/{video_id}
when the reference documents them? Is there another endpoint carrying the
reason?
- Were there known Video Agent incidents in this window? status.heygen.com
showed all-operational throughout.
Steps to reproduce
Steps to reproduce
-
Send a video generation request to the Video Agent with a short prompt —
two or three sentences, portrait orientation, one of your standard voices.
It is accepted, and a few minutes later the video finishes normally.
-
Send the same kind of request again, but with a longer prompt — roughly
3,000 to 6,000 characters, the sort of length a detailed brief produces.
It is accepted the same way: we get a success response and a session id
straight away.
-
Check the status of that longer request. Within about a minute it stops.
The agent has already replied with its opening message ("I'll start by
creating a brand kit, then draft the blueprint"), but the session then
reports that it failed, with progress still at zero — so it never began
rendering at all.
-
Look for a reason. There isn't one anywhere: the video status says only
"failed", the error field is empty, and none of the status responses
include a failure code or message.
-
Repeat step 2 a few times. It fails roughly half the attempts rather than
every time, and the failure rate got noticeably worse over a three-hour
period. Short prompts kept working throughout.
The clearest example we saw: one long prompt completed successfully at 01:36,
and the identical prompt — same text, same account, nothing changed — failed
at 03:00 the same morning.
Output
CLI version
Using heygen rest apis only
OS
mac0S 26.5.1
Description
Subject: Video Agent (v3) sessions failing at progress 0 with no error code — intermittent, worse with longer prompts
Account API key ending: ZVMn
Date of tests: 2026-09-01, ~01:00–04:00 UTC
Summary
POST /v3/video-agents is accepted (HTTP 200, session_id returned), the agent
posts an opening message, then the session goes to status "failed" with
progress 0 — before any rendering starts. No reason is returned anywhere.
This is intermittent and correlates with prompt length: short prompts almost
always succeed, prompts of ~2.5k characters and up frequently fail. The SAME
prompt succeeded at 01:36 and failed at 03:00 with no changes.
No error information is returned
GET /v3/videos/{video_id}
{"data":{"created_at":...,"id":"...","status":"failed","title":""}}
-> no failure_code, no failure_message, despite
https://developers.heygen.com/reference/get-video documenting them
GET /v1/video_status.get?video_id=...
{"code":100,"message":"Success","data":{... "status":"failed","error":null ...}}
GET /v3/video-agents/{session_id}
keys: created_at, messages, progress, session_id, status, title, video_id
-> no error / failure_code / failure_message field at all
-> last message is the agent's own: "I'll start by creating a brand kit ...
then I'll draft the full blueprint"
Failing session IDs
4534480298564a76b31b1500534719db 290-char prompt, portrait -> failed t+60s
591999b1c13c4dd6988bbcaa72d5280d 3592-char prompt, portrait -> failed
bcc376b0544d44319c2baa67d336d5df 3592-char prompt -> failed
dd484f35feee4fda9afdbafd9bc3b180 5745-char prompt -> failed
8512749f257a4035b28ccc2095dc811b 5745-char prompt -> failed
Succeeding sessions, same key, same hours (for contrast)
a503824addd64bc7a219ea058e121f07 105-char prompt, portrait -> completed
88e940dda8ab4105a8069184fd980f90 105-char prompt, landscape -> completed
ab48ebe7c40047c9b60fe61879191c1e 3592-char prompt -> completed
a391ee1ff48c43bc8f6085d19f69f620 2394-char prompt -> completed 01:36
(the identical 2394-char prompt FAILED when resubmitted at ~03:00)
What we ruled out on our side
and these are accepted with a session_id.
completed. Not orientation-specific.
same content at 2,394 chars completed, and a completely unrelated prompt of
similar length also failed.
confirmed present in /v2/voices). With and without callback_url: no difference.
Questions
If so, what is it, and can the API reject oversized prompts at submit time
(4xx) rather than accepting them and failing silently later?
when the reference documents them? Is there another endpoint carrying the
reason?
showed all-operational throughout.
Steps to reproduce
Steps to reproduce
Send a video generation request to the Video Agent with a short prompt —
two or three sentences, portrait orientation, one of your standard voices.
It is accepted, and a few minutes later the video finishes normally.
Send the same kind of request again, but with a longer prompt — roughly
3,000 to 6,000 characters, the sort of length a detailed brief produces.
It is accepted the same way: we get a success response and a session id
straight away.
Check the status of that longer request. Within about a minute it stops.
The agent has already replied with its opening message ("I'll start by
creating a brand kit, then draft the blueprint"), but the session then
reports that it failed, with progress still at zero — so it never began
rendering at all.
Look for a reason. There isn't one anywhere: the video status says only
"failed", the error field is empty, and none of the status responses
include a failure code or message.
Repeat step 2 a few times. It fails roughly half the attempts rather than
every time, and the failure rate got noticeably worse over a three-hour
period. Short prompts kept working throughout.
The clearest example we saw: one long prompt completed successfully at 01:36,
and the identical prompt — same text, same account, nothing changed — failed
at 03:00 the same morning.
Output
CLI version
Using heygen rest apis only
OS
mac0S 26.5.1