Endpoint
review_url. Both converge on the same approval and the same
outputs. See Running Review In Your Own Product.
Request
Both fields are optional. Omit them to approve the lyrics unchanged.The two scripts move together
Index 3 oftransliterated_lines is the romanisation of index 3 of lines, and
alignment inherits each transliteration’s timing from its original by index. When
you add or remove a line, send both arrays — sending one alone with a
different length is refused with 409 APR_005.
The refusal exists because the alternative is silent: an uneven pair does not fail
alignment, it produces a blank transliterated line, and a deletion shifts every
remaining pair onto the wrong original for the rest of the song.
Text only, no timestamps
Timings are taken from the job, not from you. You have not run the aligner, so you have no measured timings to send, and anything an edit invalidates is re-derived from the audio on approval. Read the current lyrics from thereview block on
GET /jobs/{id} while the job is held.
Responses
Approved at the transcript gate —200. The job is not finished; alignment
now runs on the text you approved.
200. The job is finished.
alignment reports what happened to the timings, and is absent when no edit
landed:
Already approved —
200. Not an error.