{"openapi":"3.0.3","info":{"title":"Spectra-2 hosted API","version":"2026-09-26","description":"Combined ASR and 31 independent emotion/delivery scores on a dedicated L4. Uses a Spectra-2 service key."},"servers":[{"url":"https://spectra-2-api.oruk.ai"}],"security":[{"serviceBearer":[]}],"components":{"securitySchemes":{"serviceBearer":{"type":"http","scheme":"bearer"}},"schemas":{"Analysis":{"type":"object","required":["model","release","transcript","labels","probabilities","logits","timing_ms"],"properties":{"model":{"type":"string","enum":["spectra-2"]},"release":{"type":"string"},"transcript":{"type":"string"},"labels":{"type":"array","minItems":31,"maxItems":31,"items":{"type":"string"}},"probabilities":{"type":"array","minItems":31,"maxItems":31,"items":{"type":"number","minimum":0,"maximum":1},"description":"Independent sigmoid scores aligned with labels, not a distribution over classes."},"logits":{"type":"array","minItems":31,"maxItems":31,"items":{"type":"number"}},"individual_logits":{"type":"array","minItems":2,"maxItems":2,"items":{"type":"array","minItems":31,"maxItems":31,"items":{"type":"number"}}},"native_tdt_token_ids":{"type":"array","items":{"type":"integer"}},"audio_seconds":{"type":"number"},"text_present":{"type":"boolean"},"text_windows":{"type":"integer"},"asr_backend":{"type":"string"},"mode":{"type":"string"},"overlap":{"type":"boolean"},"pipeline_overlap":{"type":"boolean"},"timing_ms":{"type":"object","properties":{"asr":{"type":"number"},"text":{"type":"number"},"emotion_pair":{"type":"number"},"total":{"type":"number"},"request":{"type":"number"},"upload_decode_queue":{"type":"number"}},"additionalProperties":{"type":"number"}}}}}},"paths":{"/v1/audio/analysis":{"post":{"operationId":"analyzeAudio","summary":"Transcribe and score one recording","description":"Raw mono 16 kHz audio, 45 ms–60 s, at most 4 MiB. No multipart form.","requestBody":{"required":true,"content":{"audio/wav":{"schema":{"type":"string","format":"binary"}},"audio/pcm":{"schema":{"type":"string","format":"binary"}},"audio/f32le":{"schema":{"type":"string","format":"binary"}}}},"responses":{"200":{"description":"Complete transcript and label scores","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Analysis"},"example":{"transcript":"I am genuinely excited that this is finally working.","native_tdt_token_ids":[380,692,1330,7873,281,1435,5074,301,326,1050,1974,508,1062,2274,6182,381,7883],"asr_backend":"fast","model":"spectra-2","labels":["happy","excited","hopeful","sad","worried","angry","frustrated","disappointed","scared","disgusted","surprised","embarrassed","proud","relieved","neutral","energetic","passionate","irritated","warm","playful","sarcastic","deadpan","hesitant","confident","sincere","skeptical","tired","formal","casual","impatient","distracted"],"logits":[-2.0917022228240967,-1.971156358718872,-1.3058586120605469,-2.0945489406585693,-2.731874465942383,-4.618671417236328,-2.559598445892334,-2.804330587387085,-3.610915184020996,-4.123958587646484,-3.81166934967041,-3.155395269393921,-1.456127405166626,-2.3364953994750977,-1.519950032234192,-2.3639721870422363,-1.890999436378479,-3.593701124191284,-0.8863767385482788,-2.8272719383239746,-3.27820086479187,-2.4311888217926025,-3.196270704269409,-1.2778091430664062,-1.5190637111663818,-3.3287925720214844,-2.9265270233154297,-1.9245045185089111,-1.1510387659072876,-3.287261962890625,-3.978898763656616],"individual_logits":[[-1.6489399671554565,-2.0737996101379395,-1.8095638751983643,-1.6348918676376343,-2.7407984733581543,-4.076088905334473,-2.6385433673858643,-2.440645694732666,-3.8033883571624756,-3.8402371406555176,-2.9496395587921143,-2.7873101234436035,-1.6215492486953735,-2.3634018898010254,-0.7825958132743835,-2.1833066940307617,-2.241098642349243,-2.862912654876709,-1.2982397079467773,-2.7458229064941406,-2.097346782684326,-1.552863359451294,-3.3514842987060547,-1.3105709552764893,-1.5390870571136475,-2.389580726623535,-3.1555910110473633,-1.2744479179382324,-1.2276417016983032,-3.537889003753662,-3.9708876609802246],[-2.5344643592834473,-1.8685131072998047,-0.8021532297134399,-2.554205894470215,-2.7229502201080322,-5.161253452301025,-2.4806532859802246,-3.168015480041504,-3.4184422492980957,-4.407680511474609,-4.673699378967285,-3.5234804153442383,-1.2907055616378784,-2.309589147567749,-2.2573041915893555,-2.544637680053711,-1.5409002304077148,-4.324489593505859,-0.4745137691497803,-2.9087207317352295,-4.459054946899414,-3.309514284133911,-3.0410571098327637,-1.2450473308563232,-1.4990403652191162,-4.268004417419434,-2.697462797164917,-2.57456111907959,-1.074435830116272,-3.036634922027588,-3.986909866333008]],"probabilities":[0.10990594327449799,0.12226473540067673,0.21318066120147705,0.10962776839733124,0.06111850589513779,0.009769510477781296,0.07178429514169693,0.05709060654044151,0.026315858587622643,0.015922700986266136,0.021632907912135124,0.04087921604514122,0.18906034529209137,0.0881451889872551,0.17946888506412506,0.08596158027648926,0.13113056123256683,0.026760555803775787,0.29185810685157776,0.05586811900138855,0.03632664680480957,0.08082510530948639,0.03930630534887314,0.2179233729839325,0.17959943413734436,0.03459653630852699,0.05085770785808563,0.12736009061336517,0.24029940366744995,0.03601077198982239,0.018362730741500854],"text_present":true,"text_windows":1,"audio_seconds":4.0539375,"timing_ms":{"asr":17.616086999623803,"text":1.9687290005094837,"emotion_pair":14.390948999789543,"total":33.97576499992283,"request":164.46459199869423,"upload_decode_queue":128.92632000148296},"mode":"graph","overlap":false,"pipeline_overlap":false,"release":"spectra-2-l4-20260926-hosted-v1"}}}},"401":{"description":"Missing or invalid dedicated Spectra-2 service key"},"403":{"description":"Edge client policy rejected this request; send an identifying User-Agent"},"408":{"description":"Upload deadline exceeded"},"413":{"description":"Request body exceeds 4 MiB"},"415":{"description":"Unsupported content type or encoding"},"422":{"description":"Invalid audio"},"429":{"description":"Capacity occupied; honor Retry-After"},"503":{"description":"Worker unavailable; retry with backoff"}}}},"/v1/models":{"get":{"operationId":"listModels","summary":"Inspect the deployed model","responses":{"200":{"description":"Model capabilities"},"401":{"description":"Missing or invalid dedicated Spectra-2 service key"}}}},"/healthz":{"get":{"operationId":"health","security":[],"responses":{"200":{"description":"Origin process available"},"503":{"description":"Worker unavailable; retry with backoff"}}}},"/readyz":{"get":{"operationId":"readiness","security":[],"responses":{"200":{"description":"Model warm and ready"},"503":{"description":"Worker unavailable; retry with backoff"}}}}}}