Skip to main content
POST
Diarize audio
This endpoint allows you to create a new diarization from a remote audio URL.
Diarization and transcription output is deleted 24 hours after job completion
  • Retrieve and store any output that you need before it is deleted.
  • See Data retention for the full policy.
For comprehensive guides on diarization, see these tutorials:

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
url
string
required

URL of the audio file to be processed

Example:

"https://example.com/audio.wav"

webhook
string

Webhook URL to receive results when job is completed (optional)

Example:

"https://example.com/webhook"

webhookStatusOnly
boolean
default:false

When true, webhook payload only includes jobId and status (excludes output). Useful for large payloads.

Example:

true

model
enum<string> | null
default:precision-2
Available options:
precision-2,
community-1,
precision-3
Example:

"precision-2"

numSpeakers
number

Number of speakers. Only use if the number of speakers is known in advance. Number of speakers is detected automatically if not provided. Setting this value results in better overall diarization performance. In rare cases where we cannot honor this request (e.g. short files and large number of speakers), a warning will be added to the output. Equivalent to sending minSpeakers==maxSpeakers

Required range: x >= 1
Example:

2

minSpeakers
number

Minimum number of speakers (must be <= maxSpeakers if both are set)

Required range: x >= 1
Example:

1

maxSpeakers
number

Maximum number of speakers (must be >= minSpeakers if both are set)

Required range: x >= 1
Example:

4

vadSensitivity
number
default:0

Controls the sensitivity of voice activity detection (VAD). Float in [-5.0, 5.0], defaults to 0.0 (balanced precision/recall). Higher values increase recall (less speech missed). Lower values increase precision (less non-speech detected as speech). Only available for the precision-3 model.

Required range: -5 <= x <= 5
Example:

0

crosstalkSensitivity
number
default:0

Controls the sensitivity of overlapping speech (cross-talk) detection. Float in [-5.0, 5.0], defaults to 0.0 (balanced precision/recall). Higher values increase recall (detect more overlapping speech). Lower values increase precision (detect only clear overlaps). Only available for the precision-3 model.

Required range: -5 <= x <= 5
Example:

0

turnLevelConfidence
boolean | null
default:false

Includes turn-level confidence values in the output.

Example:

true

exclusive
boolean
default:false

Includes exclusive diarization values in the output in exclusiveDiarization key (equivalent to diarization but without overlapping speech).

Example:

true

confidence
boolean
default:false

Include confidence values in the output. Output is considerably larger when this option is enabled. Output includes a list of confidence scores with a resolution. Not supported by the precision-3 model, which returns an error if this is set; use speechProbability, crosstalkProbability or speakerProbability instead.

Example:

true

speechProbability
boolean
default:false

Includes a frame-level speech probability curve in the output, in the speechProbability key. Only available for the precision-3 model.

Example:

true

crosstalkProbability
boolean
default:false

Includes a frame-level overlapping speech (cross-talk) probability curve in the output, in the crosstalkProbability key. Only available for the precision-3 model.

Example:

true

speakerProbability
boolean
default:false

Includes per-speaker, frame-level probability scores in the output, in the speakerProbability key. Only available for the precision-3 model.

Example:

true

transcription
boolean
default:false

Enable speaker attributed transcription. Supported by the precision-2 and precision-3 diarization models.

transcriptionConfig
object

Transcription configuration, if transcription: true

Response

jobId
string
required

ID of the job

Example:

"3c8a89a5-dcc6-4edb-a75d-ffd64739674d"

status
enum<string>
required

Status of the job

Available options:
pending,
created,
succeeded,
canceled,
failed,
running
Example:

"created"

warning
string

Warning message if any