codegen: expose instant video creation and status commands - #396
Conversation
Command surface: 4 existing command(s) changedChanged — these already existed, so a change can break existing calls.
|
jrusso1020
left a comment
There was a problem hiding this comment.
Review at fad90016d92b912dac19aefe050b4b5e1195c223.
Verdict: APPROVE. Hold the merge until experiment-framework#54249 is deployed, as the body says. That PR has a changes request for a test fixture, and the fixture doesn't touch the spec, so this regen stays valid.
-
The regen matches the stated spec commit exactly.
make generate STRICT=1 SPEC=<EF cd0e2c49:openapi/external-api.json>on this head leavesgen/byte-identical:git statusis clean, and strict mode found no missing examples. -
The Instant Video part is only
model.goandregistry.go. Regenerating from #54249's base spec (1492b5f3) differs from this head only by theModelVideosCreate/ModelVideosGetspecs (47 lines) and their two registry lines.videos createisPOST /v3/models/videoswith--idempotency-key.videos getisGET /v3/models/videos/{video_id}.
-
Unrelated churn, flagged. It all comes from the current public spec, not this feature:
- a new
foldergroup (folder create→POST /v3/folders,folder get→GET /v3/folders/{folder_id}); - speech flags
--pitch-shift,--pitch-varianceand--speed, plus--engine; - video-agent
--membersand--idempotency-key, and the message command's summary changes from "Send Message or Request Revision" to "Send Video Agent Message"; - description-only edits in
lipsync,template,videoandvideo-translate.
All of this is already on EF master behind #54249's base, so deploying #54249 also deploys these endpoints, and releasing after that deploy is safe for them too. The release notes should mention the new
foldercommands. - a new
-
Checks:
go test ./...withHEYGEN_API_KEYunset passes, and so doesgo vet ./.... The newinstant_video_test.gocovers all three modes, the API-key and idempotency headers, and status polling. CI is all green.
— Rames
Description
Expose Instant Video through
heygen model videos create -d '<JSON>'andheygen model videos get <video-id>. Add examples for text, image, and reference generation, including safe retries with--idempotency-key.Regenerate the CLI from the companion experiment-framework public spec, commit
cd0e2c49c0588a80f384a4bbf50f63fcb876c697. The generated refresh also picks up current public API changes already present in that spec. Add the two folder examples required for strict generation of that current contract.Merge and release after the API spec companion is deployed. The Instant Video route itself is already present in production; publishing its contract and MCP tools requires the companion deployment.
Testing
make generate STRICT=1 SPEC=<companion-spec>passed with no missing examples.go test ./...passed with the ambientHEYGEN_API_KEYunset; all HTTP tests use local test servers.POST /v3/models/videos, preserve API-key and idempotency headers, return the accepted video ID, and poll the model-video status route.go vet ./...andgit diff --checkpassed.