API Overview
Complete guide to the Scriptix API for speech-to-text transcription, real-time streaming, document management, and custom models.
Introduction
The Scriptix API provides programmatic access to the speech recognition platform. Build applications that:
- Transcribe audio/video files to text (batch processing)
- Stream real-time audio for live transcription
- Manage documents (transcripts and captions)
- Train custom models for domain-specific accuracy
- Create glossaries for terminology customization
- Translate content to multiple languages
- Export in multiple formats
Base URL
All API requests use this base URL:
https://api.scriptix.io
API Versions
The Scriptix API is versioned. Current versions:
| Version | Endpoint Prefix | Status | Recommended |
|---|---|---|---|
| v4 | /api/v4 | Current | ✅ For glossaries and realtime |
| v3 | /api/v3 | Stable | ✅ Primary API version |
Recommendation: Use v3 for most operations, v4 for glossaries and realtime features.
Authentication
All requests require Bearer token authentication:
Authorization: Bearer YOUR_TOKEN
See Authentication Guide for token management and security best practices.
API Categories
Speech-to-Text Sessions API
Upload audio/video files for transcription and manage transcription sessions.
Key Endpoints:
GET /api/v3/speech-to-text/session- List sessionsGET /api/v3/speech-to-text/session/{sessionId}- Get session detailsDELETE /api/v3/speech-to-text/session/{sessionId}- Delete session
Use cases: Podcasts, interviews, meetings, video subtitles
Documents API
Manage transcripts and captions within sessions.
Key Endpoints:
GET /api/v3/speech-to-text/session/{sessionId}/document/{docId}- Get documentPUT /api/v3/speech-to-text/session/{sessionId}/document/{docId}- Update documentDELETE /api/v3/speech-to-text/session/{sessionId}/document/{docId}- Delete documentPOST /api/v3/speech-to-text/session/{sessionId}/document- Copy documentPUT /api/v3/speech-to-text/session/{sessionId}/document/{docId}/clear_text- Clear textPUT /api/v3/speech-to-text/session/{sessionId}/document/{docId}/reset_to_original- Reset documentPOST /api/v3/speech-to-text/session/{sessionId}/document/{docId}/finished_status- Mark as finished
Query Parameters for GET:
format- Output format (default: json)template_id- Export template ID
Translation API
Translate documents to multiple languages.
Endpoints:
POST /api/v3/speech-to-text/session/{sessionId}/document/{docId}/translate-multiple- Translate document
Request Body:
{
"languages": ["nl", "fr", "de"],
"filename": "translated_document"
}
Document Operations API
Additional document operations.
Endpoints:
POST /api/v3/speech-to-text/merge- Merge multiple documentsPOST /api/v3/speech-to-text/session/{sessionId}/document/{docId}/export/summarize- Summarize document
Sharing API
Share documents via magic links.
Endpoints:
POST /api/v3/speech-to-text/session/{sessionId}/document/{docId}/share- Create share linkPOST /api/v3/speech-to-text/session/{sessionId}/document/{docId}/share/email- Share via emailGET /api/v3/speech-to-text/session/{sessionId}/shared- Get shared sessionGET /api/v3/speech-to-text/session/{sessionId}/shared/document/{docId}- Get shared documentPUT /api/v3/speech-to-text/session/{sessionId}/shared/document/{docId}- Update shared documentPUT /api/v3/speech-to-text/session/{sessionId}/shared/document/{docId}/clear_text- Clear shared textPUT /api/v3/speech-to-text/session/{sessionId}/shared/document/{docId}/reset_to_original- Reset sharedPUT /api/v3/speech-to-text/session/{sessionId}/shared/document/{docId}/finish- Finish shared document
Comments API
Collaborate on documents with comments.
Endpoints:
GET /api/v3/speech-to-text/session/{sessionId}/document/{docId}/comments- List commentsPOST /api/v3/speech-to-text/session/{sessionId}/document/{docId}/comments- Create commentPUT /api/v3/speech-to-text/session/{sessionId}/document/{docId}/comments/{commentId}- Update commentDELETE /api/v3/speech-to-text/session/{sessionId}/document/{docId}/comments/{commentId}- Delete comment
Custom Models API
Train specialized models for domain-specific vocabulary.
Endpoints:
GET /api/v3/speech-to-text/models- List available modelsGET /api/v3/custom_models- List custom modelsGET /api/v3/custom_models/{id}- Get model detailsGET /api/v3/custom_models/{id}/data- Get training datasetsPOST /api/v3/custom_models- Create custom modelPOST /api/v3/custom_models/{id}- Update modelPUT /api/v3/custom_models/{id}/data- Upload training dataPOST /api/v3/custom_models/{id}/run- Start trainingDELETE /api/v3/custom_models/{id}- Delete modelDELETE /api/v3/custom_models/{id}/data/{dataId}- Delete dataset
Use cases: Medical, legal, technical terminology
Glossaries API (v4)
Create custom glossaries for terminology recognition.
Endpoints:
GET /api/v4/glossaries- List glossariesGET /api/v4/glossaries/{id}- Get glossary detailsGET /api/v4/glossaries/{id}/entries- Get glossary entries (CSV format)GET /api/v4/glossaries/supported-languages- Get supported language pairsPOST /api/v4/glossaries- Create glossaryPATCH /api/v4/glossaries/{id}- Update glossaryDELETE /api/v4/glossaries/{id}- Delete glossary
Query Parameters for GET glossary:
include_entries- Include entries in response (default: false)limit- Max entries to return (default: 1000)
Note: Glossary entries are returned in CSV format when requested via the entries endpoint.
Real-time API (v4)
Stream live audio for real-time transcription.
Endpoints:
POST /api/v4/realtime/initialize- Initialize real-time sessionGET /api/v4/realtime/status- Check real-time service status
Use cases: Live captions, voice assistants, call centers
Folders API
Organize documents in folders.
Endpoints:
GET /api/v3/folders- List foldersGET /api/v3/folders/{id}- Get folder contentsPOST /api/v3/folders- Create folderPUT /api/v3/folders/{id}- Update folderDELETE /api/v3/folders/{id}- Delete folder
Organization Management API
Manage organization settings and members.
Endpoints:
GET /api/v3/account/organization- Get organization detailsPOST /api/v3/account/organization- Update organizationPOST /api/v3/organization/group- Create team/groupGET /api/v3/organization/group- List teamsGET /api/v3/organization/group/{id}- Get team detailsGET /api/v3/organization/group/{id}/users- List team membersPUT /api/v3/organization/group/{id}- Update teamDELETE /api/v3/organization/group/{id}- Delete teamPOST /api/v3/organization/group/{id}/users- Add members to teamDELETE /api/v3/organization/group/{id}/users/remove- Remove membersPOST /api/v3/organization/user- Create userGET /api/v3/organization/user- List usersGET /api/v3/organization/user/{id}- Get user detailsPUT /api/v3/organization/user/{id}- Update userDELETE /api/v3/organization/user/{id}- Delete userPOST /api/v3/organization/user/{id}/resend-activation- Resend activation emailPOST /api/v3/organization/profile/{id}/logo- Upload organization logoDELETE /api/v3/organization/profile/{id}- Delete organization logo
Export Templates API
Manage custom export templates.
Endpoints:
GET /api/v3/organization/templates- List templatesPOST /api/v3/organization/templates- Create templateDELETE /api/v3/organization/templates/{id}- Delete template
User Account API
Manage user accounts and preferences.
Endpoints:
GET /api/v3/account/me- Get current userPOST /api/v3/account/me- Update profilePOST /api/v3/account/password- Change passwordPATCH /api/v3/account- Deactivate accountDELETE /api/v3/account- Delete account
Authentication API
User authentication and session management.
Endpoints:
POST /api/v3/auth/login- LoginPOST /api/v3/auth/login/mfa- Login with MFAPOST /api/v3/auth/logout- LogoutGET /api/v3/auth/login/microsoft- Microsoft SSO login
Two-Factor Authentication API
Enable and manage 2FA.
Endpoints:
GET /api/v3/mfa/2fa/qr_code- Get QR code for setupGET /api/v3/mfa/2fa/backup_codes- Get backup codesPOST /api/v3/mfa/2fa/enable- Enable 2FAPOST /api/v3/mfa/2fa/disable- Disable 2FAPOST /api/v3/mfa/2fa/verify_totp- Verify TOTP codePOST /api/v3/mfa/2fa/verify_backup_code- Verify backup code
API Tokens API
Manage API access tokens.
Endpoints:
GET /api/v3/tokens- List tokensPOST /api/v3/tokens- Create token (not in POST_URL but implied)DELETE /api/v3/tokens/{id}- Delete token
Subscriptions API
Manage subscriptions and billing.
Endpoints:
GET /api/v3/subscription- List subscriptionsGET /api/v3/subscription/{id}- Get subscription detailsGET /api/v3/subscription/{id}/usage- Get usage statsPOST /api/v3/order_subscription/new_order- Create subscriptionDELETE /api/v3/subscription/{id}- Cancel subscription
Invoices API
View and download invoices.
Endpoints:
GET /api/v3/invoices- List invoicesGET /api/v3/invoices/{id}/download- Download invoice PDF
Mandates API
Manage payment mandates.
Endpoints:
GET /api/v3/mandates- List mandates
User Preferences API
Store and retrieve user preferences.
Endpoints:
GET /api/v3/user_preferences- List preferencesGET /api/v3/user_preferences/{id}- Get preferencePOST /api/v3/user_preferences- Create preferencePUT /api/v3/user_preferences/{id}- Update preferenceDELETE /api/v3/user_preferences/{id}- Delete preference
Reseller API
Manage customers and organizations (reseller accounts only).
Endpoints:
GET /api/v3/reseller/customer- List customersGET /api/v3/reseller/customer/{id}- Get customer detailsGET /api/v3/reseller/customer/{id}/usage- Get customer usageGET /api/v3/reseller/customer/{id}/logins- List customer loginsGET /api/v3/reseller/customer/{id}/tokens- List customer tokensGET /api/v3/reseller/customer/{id}/subscriptions- List customer subscriptionsGET /api/v3/reseller/customer/{id}/transcript- List customer transcriptsGET /api/v3/reseller/plan- List available plansGET /api/v3/reseller/usage- Get reseller usage statisticsGET /api/v3/reseller/statistics- Get reseller statisticsGET /api/v3/reseller/reporting/export- Export reseller reportsPOST /api/v3/reseller/customer- Create customerPOST /api/v3/reseller/customer/{id}/logins- Create customer loginPOST /api/v3/reseller/customer/{id}/logins/{loginId}/resend-activation- Resend activationPOST /api/v3/reseller/customer/{id}/logins/{loginId}/reset- Reset passwordPOST /api/v3/reseller/customer/{id}/tokens- Create tokenPOST /api/v3/reseller/plan/{planId}/subscribe- Subscribe to planPUT /api/v3/reseller/customer/{id}- Update customerPUT /api/v3/reseller/customer/{id}/logins/{loginId}/deactivate- Deactivate loginDELETE /api/v3/reseller/customer/{id}- Delete customerDELETE /api/v3/reseller/customer/{id}/logins/{loginId}- Delete loginDELETE /api/v3/reseller/customer/{id}/tokens/{tokenId}- Delete token
Pagination
List endpoints use offset and limit parameters (default: limit=25):
GET /api/v3/folders?offset=0&limit=25
Response includes count, total_results, and result array. Use these to paginate through large result sets.
Error Handling
Standard HTTP status codes used:
| Code | Meaning |
|---|---|
| 200-204 | Success |
| 400 | Bad Request |
| 401 | Unauthorized |
| 403 | Forbidden |
| 404 | Not Found |
| 422 | Validation Error |
| 429 | Rate Limited |
| 500 | Server Error |
See Error Codes for complete error documentation and handling strategies.
Best Practices
- Error Handling - Implement retry logic with exponential backoff
- Pagination - Process data in pages, don't load everything at once
- Token Security - Use environment variables, never commit tokens
- Rate Limits - Respect limits, implement backoff, cache when possible
See Rate Limits for rate limit details.
Quick Start Examples
Get Current User
curl https://api.scriptix.io/api/v3/account/me \
-H "Authorization: Bearer YOUR_TOKEN"
List Sessions
curl https://api.scriptix.io/api/v3/speech-to-text/session?offset=0&limit=25 \
-H "Authorization: Bearer YOUR_TOKEN"
Get Document
curl https://api.scriptix.io/api/v3/speech-to-text/session/{sessionId}/document/{docId} \
-H "Authorization: Bearer YOUR_TOKEN"
Create Glossary
curl -X POST https://api.scriptix.io/api/v4/glossaries \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Medical Terms",
"source_language": "en",
"target_language": "nl"
}'
Translate Document
curl -X POST https://api.scriptix.io/api/v3/speech-to-text/session/{sessionId}/document/{docId}/translate-multiple \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"languages": ["nl", "fr", "de"],
"filename": "translated_output"
}'
Next Steps
Explore specific API sections for detailed documentation:
- Custom Models - Custom Models API
- Glossaries - Glossaries API
- Document Management - Documents API
- Real-time - Realtime API
Need help? Contact support at support@scriptix.io