projectId, and each returns its result under a field
named for what it made — research, script, paraphrase, copy, questions,
solution, outline, article, localization — next to credits and
creditBalance.
Make a call
Start from a subject or a source
text.script or video.remix? text.script watches one video,
researches around it, fact-checks its own claims and returns a claim ledger with
the script. video.remix reads up to ten references — URLs it transcribes
for you, or transcripts you send — and writes one original script across them.
One goes deep on a single source; the other synthesizes many.
video.remix takes brandContext (your brand’s voice, claims and things to
avoid; it shapes the script and is never treated as a source) and verify.
With verify: true the finished script is fact-checked against public sources
before it is returned, and the answer carries gate.decision. A script whose
hook or thesis cannot be verified is withheld: the call answers
422 content_not_cleared, nothing is charged, and details.gate carries the
decision (killed or escalated), the fact-check reportId and reasons.
No script is returned. Retrying with the same Idempotency-Key returns the
same answer; change the sources or instructions to get a different script.
text.adapt takes brandContext too: your brand’s voice, audience, claims and
words to avoid. The adaptation follows it; it is never treated as the source.
text.script also takes products to promote inside the script, with rules
against inventing links, prices or features. Send "format": "plaintext" to get
only the title and the teleprompter-ready script back, without the research
ledger, at the same price.
Rework something you already wrote
paraphrase or copywrite? paraphrase restyles long-form as
long-form — the same material in a new tone, register or audience, with
preserveKeywords for terms that must survive verbatim. copywrite rewrites
content down into one platform’s native post, with that platform’s
conventions, length and hashtag habits.
copywrite, research, paraphrase, questions, solve and film return
their text under result in the field they name (copy.result,
research.result, paraphrase.result, questions.result, solution.result,
outline.result), with the platform or domain you named beside it.
text.article turns a finished script into a publishable article. It carries
citations through from the claim ledger and returns Schema.org markup under
jsonLd.
Transcribe an asset
POST /v1/assets/{assetId}/transcript transcribes an asset in your project and
returns the products you ask for in formats (text by default; also
readable, verbatim, markdown, srt, vtt, json, chapters). Send the
projectId that holds the asset and an Idempotency-Key.
instructionrewrites the finished transcript in plain words — “redact phone numbers”, “expand abbreviations”, “as bullet notes”. It is an ElevenLabs Scribe transcript edit, applied to the source-language words, and comes back asresult.editedTranscript(kind: "transcript"with itstext). It always runs a fresh recognition at +30%. If Scribe could not apply it,editedTranscript.kindis"error"and the +30% is not charged; where Scribe is not configured the call is refused withinvalid_requestand nothing is charged.translateTotranslates the timed products;editedTranscriptstays in the source language.- The price depends on the asset’s measured length: quote first with
X-Sigmora-Quote-Only: 1, then send the call capped at that quote withX-Sigmora-Max-Credits. The quote is held before recognition starts and only what recognition measured is charged. - An asset that already has a transcript, called without
instruction, is formatted from it at no charge. Read a stored transcript page by page withGET /v1/assets/{assetId}/transcript?projectId=....
cURL
POST /v1/assets/{assetId}/analysis runs a scene-by-scene retention analysis of
the asset and answers 202 with a jobId (kind media.analysis): poll
GET /v1/jobs/{jobId}. A failed run is refunded, and while the asset already
has an analysis queued or running the call returns that job at no charge.
Working from a transcript
Send the transcript inline as
transcript, or name an asset in the project that
already has one with assetId (list them with GET /v1/assets?projectId=...).
Send exactly one: with both or neither it would be unclear which transcript was
translated and priced.
languageMinutes for localize, transcriptMinutes for moments.
Cue timings are validated — an end earlier than its start is refused rather
than rendered. When you translate an assetId that has no recorded language,
send sourceLanguage; it is never guessed.
For text.packaging, asr is the speech-recognition result for the finished
edit: the full text, its languageCode, and timed words when you have them
(the list may be empty).
Thumbnails and music
Two non-text capabilities work the same way — synchronous, filed in the project, returning a URL you fetch directly:POST /v1/image/thumbnail— a platform-sized thumbnail from atitle: 16:9 foryoutube, 9:16 for Shorts, Reels and TikTok.subject(who or what is visible) andtranscript(or theassetIdof a transcribed asset) improve it most; a thumbnail made from a title alone has to guess at the content. The image has no text on it unless you sendheadline: then the words are laid on it in heavy capitals on the side thecompositionleaves open, in yourpaletteandfontFamilywhen you send them.variants(1 to 4) makes several images to choose from, each priced as one thumbnail and each with a small preview. Sendsource(assetIdof one of your videos, or a publicvideoUrl, and optionallyatSeconds) to make it from a frame of your own video instead, with theheadline(or the title) on it. Returnsthumbnail.urlandthumbnail.variants.POST /v1/audio/music— music from one to ten weightedprompts, up to three minutes. Returnsmusic.urland theblocksyou were charged for.
Prices
Prices are live inGET /v1/capabilities, which also tells you which
capabilities can run right now. Every response reports credits — what was
actually charged — and creditBalance. A call that fails, or returns nothing
usable, is free. See Pricing & credits.
From a document to a video
Turn the writing into a narrated video.
Errors
Every error code and how to respond.