Submit, monitor, and retrieve results for long-running voice processing jobs — batch transcription, deepfake detection, and more.
High-performance API that transforms spoken audio into sharp, actionable insights: detecting fraud, surfacing social toxicity, and spotlighting positive human behavior with impressive speed and precision.
This documentation is for a version of the Modulate Platform API that is not yet publicly accessible. Furthermore, until version 1.0.0 is released, we will do our best to communicate about changes and to minimize high-impact, breaking changes, but please be advised that any part of this API is subject to change at any time (especially the shapes of analysis result responses).
All endpoints require HTTP Basic authentication via the
Authorization header, as follows:
This section is intentionally high-level. For exact payload shapes, media
types, and field constraints, consult endpoint-level docs (especially
POST /jobs and PATCH /job/{job_id}).
POST to /jobs and keep
the returned job_id.
results_deliveries.POST to
/job/{job_id}/sources/media-files.
GET to
/job/{job_id}/sources/streams/{alias}.
finalization_trigger options, or
explicitly via a PATCH to /job/{job_id}.
GET /job/{job_id} and results endpoints, or receive webhook
deliveries via results_deliveries.
If uploading media files in multiple batches, avoid premature finalization by using a manual finalization strategy and finalize only after the last upload.
Jobs move through three statuses: active →
finalizing → finalized.
Retrieve results via:
GET /job/{job_id} to check
status, then GET /job/{job_id}/results for
full results.
results_deliveries entry at job creation to receive results
as they are processed.
Response samples
Content type
application/vnd.modulate.v0+json{
− "meta": {
"total_count": 150,
"per_page": 20
},
− "links": {
"prev": "https://api.modulate.ai/jobs?cursor=…",
"self": "https://api.modulate.ai/jobs?cursor=…",
"next": "https://api.modulate.ai/jobs?cursor=…"
},
− "data": [
+ { … }
]
}