{"auth":"Send `X-API-Key: nt_...` (create keys in the dashboard) or `Authorization: Bearer <jwt>`.","endpoints":{"POST /api/v1/transcriptions":"multipart `file` or JSON {url}. Options: language, mode(auto|fixed|multi), task(transcribe|translate), diarize, intelligence, polish, removeFillers, initialPrompt, vocabularyIds, webhookUrl, title, tags","GET /api/v1/transcriptions":"list (q, status, source, tag, language, from, to, scope=mine|all, page, limit)","GET /api/v1/transcriptions/:id":"full transcript with segments, words, intelligence","GET /api/v1/transcriptions/:id/export/:fmt":"srt | vtt | txt | txt-ts | md | json","POST /api/v1/transcriptions/:id/intelligence":"regenerate intelligence ({sync:true} to wait)","POST /api/v1/transcriptions/:id/translate":"{language}","POST /api/v1/transcriptions/:id/ask":"{question, history?}","GET /api/v1/transcriptions/:id/related?chunk=<id>":"semantically similar moments across the workspace","GET /api/v1/search?q=&mode=hybrid|keyword|semantic&scope=mine|all&language=&tag=&from=&to=":"search across all transcripts; returns chunks with timestamps","POST /api/v1/search/ask":"{question, scope} - RAG answer over the whole workspace with citations","GET|POST /api/v1/people, GET|PUT|DELETE /api/v1/people/:id, POST /api/v1/people/:id/avatar":"people directory (no login); assign transcript speakers with PATCH /transcriptions/:id {speakerPeople:{\"Person A\": personId}}","POST /api/v1/transcriptions/:id/diarize":"re-run speaker diarization","POST /api/v1/transcriptions/:id/suggest-speakers":"LLM guess of which person is which label, from introductions and names used","GET /api/v1/languages":"supported languages, regions, domains","GET /api/v1/usage":"your usage + workspace budget status","Live (Socket.IO)":"connect with auth {token}; emit live:start {language, mode, task}, live:audio <int16 PCM 16k mono>, live:stop. Listen: live:partial, live:final, live:saved, live:error"}}