The review flow adds an artist approval gate between transcription and delivery. Results are held until an artist or rights holder confirms the lyrics are correct.Documentation Index
Fetch the complete documentation index at: https://docs.lyrcs.ai/llms.txt
Use this file to discover all available pages before exploring further.
End-to-end flow
Distributor submits job with review=true
202 { "job_id": "...", "status": "queued", "review_required": true }.Transcription and alignment run (~90 seconds)
lyrcs.ai transcribes the audio, generates transliteration and translation, then time-aligns the lyrics. No action needed from the distributor during this phase.
Distributor routes review_url to artist
Extract
review_url and forward it to the artist — by email, SMS, or your own platform’s notification system. The artist does not need a lyrcs.ai account.Artist reviews and approves
The artist visits the
review_url and sees the full transcript, transliteration, and translation in the lyrcs.ai Studio. They can read through the lyrics and, if satisfied, click Approve.Polling for review status
If you’re polling rather than using webhooks, theGET /api/v1/jobs/{id} response includes review fields:
review_approved_at is null until approval. Once set, the job is approved and results are available.
Known limitations
review_url is null until alignment completes The review URL and token are only generated after alignment finishes (~90s). If you pollGET /jobs/{id} immediately after submission, review_url will be null. Wait for the job.awaiting_review webhook or poll until review_url is non-null.
Single-attempt webhook delivery after approval
The job.complete webhook fired after artist approval does not retry on failure — unlike the standard pipeline which retries at +1 min, +5 min, +30 min. Ensure your webhook endpoint is reliable. If you miss this delivery, poll GET /jobs/{id} — the review_approved_at field will be set and results will be available.
Token expiry
Review tokens expire. If the artist doesn’t approve before expires_at, contact api@lyrcs.ai to issue a new token.
Review in batch jobs
Batch jobs supportreview=true per job:
review_url appears in GET /api/v1/batch/{id} responses once alignment completes. The batch.complete webhook fires when all jobs are done — note that review=true batch jobs are considered complete (for batch-counting purposes) as soon as alignment finishes, not after artist approval. This means batch.complete may fire before all artists have approved; individual job.complete webhooks fire per approval.