Authentication
JWT auth. Access and refresh tokens. Hit /api/v1/auth/login/ and add the header.
API Docs
JWT authentication. Versioned endpoints. Usage tracking. Ship voice features today.
JWT auth. Access and refresh tokens. Hit /api/v1/auth/login/ and add the header.
POST /api/v1/tts/synthesize/ — Send text, voice ID, speed, pitch, emotion. Async.
POST /api/v1/voices/upload/ — Upload an authorized sample. Processing is asynchronous.
GET /api/v1/auth/profile/ — Credit balance, usage stats, subscription tier.
Quick Start
From account creation to audio output.
Sign up free, verify your email, and use the JWT returned by login.
Add your JWT to the Authorization header:
Authorization: Bearer <your_access_token>
POST to synthesize. Send text, voice, and params:
curl -X POST https://duramolab.com/api/v1/tts/synthesize/ \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: one-key-per-client-request" \
-d '{
"text": "Hello, welcome to Duramo Lab!",
"voice_id": "Dennis",
"speed": 1.0
}'The response returns an id. Poll the status endpoint until it is done:
GET /api/v1/tts/history/<id>/status/
Reference
Complete list of available endpoints.
POST /api/v1/auth/login/— Obtain JWT tokensPOST /api/v1/auth/register/— Create a new accountPOST /api/v1/auth/refresh/— Refresh your JWT tokenGET /api/v1/auth/profile/— Get account and usage infoPOST /api/v1/tts/synthesize/— Submit text for speech synthesisGET /api/v1/tts/history/<id>/status/— Poll synthesis statusGET /api/v1/tts/history/— View your synthesis historyGET /api/v1/voices/— List available voicesPOST /api/v1/voices/upload/— Upload audio to clone a voiceGET /api/v1/voices/— List your cloned voicesDELETE /api/v1/voices/<id>/— Delete a cloned voiceGET /api/v1/projects/— List your projectsPOST /api/v1/projects/— Create a new projectGET /api/v1/subscription-plans/— View available plans