Rewrite speech for slides

Rewrites the existing speech on the named slides following enhancement as instructions.

Replaces the retired POST /gpt/{videoId} and POST /gpt/{videoId}/{slideId}. Where those took one of ten fixed enhancement values, this takes plain-language instructions.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

Rewrites the existing speech on the named slides following enhancement as instructions. To write
speech for a slide that has none, use
Generate speech for slides instead.

Replaces the retired POST /gpt/{videoId} and POST /gpt/{videoId}/{slideId}.

Migrating from the /gpt enum

The old endpoints accepted one of ten fixed enhancement values. There is no enum any more —
phrase it as instruction text:

Old valueInstruction text
engaging"Make this more engaging."
professional"Make the tone more professional."
happier"Make the tone warmer and more upbeat."
shorter / longer"Cut this by about a third." / "Expand this with more detail."
rewrite"Rewrite this from scratch, same meaning."

The four structural values have no single-call replacement here. create-by-outline is now
Build a video from an outline; add-missed-texts, strecth-slides and
fit-speech reshaped the whole deck and have no direct equivalent — contact
[email protected] if you relied on one.

Notes

slideIds must be non-empty, and every id must exist on the video or the call returns 404
naming the missing ids. Speech is persisted server-side unless you set fromEditor — leave it
unset for API use.

Requires LLM access on the account — 409 if unavailable.

Path Params
string
required

Id of the video to modify.

Body Params
slideIds
array of integers
required
length ≥ 1

Ids of the slides to act on. Pass every slide id to cover the whole video.

slideIds*
string
required

Free-form instruction text, e.g. "Make this warmer and about 20% shorter." This is NOT an enum — the ten fixed values the retired /gpt endpoints accepted no longer exist.

config
object

Optional generation tuning. count is coerced to a number.

enhancementPresets
array of strings

Optional. The preset keys a UI offered (shorter / formal / custom-prompt). Recorded for analytics only; enhancement carries the actual instruction.

enhancementPresets
boolean
Defaults to false

Leave false for API use. When true the caller owns persistence; when false the speech is saved server-side.

Responses

enhancement is not a string, or slideIds is missing or empty.

llmDisabled is set, or a non-paid organization has used its 5000-token allowance.

Language
Credentials
Header
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json