This page explains how to retrieve the language models available for the SESTEK Speech Recognition (SR) service, and how to select a specific model version when submitting a transcription request.
Endpoint Details
- Method: GET
- URL:
{{ADDR_SERVICE}}/v1/speech/dictation/models - Actor: REST Service Client
- Goal: Retrieve the list of available language models.
- Pre-Conditions: None
Replace {{ADDR_SERVICE}} with the base URL for your assigned region; see API Region URLs.
This endpoint is grouped with model management in the Postman collection, under the
{{ADDR_UTIL}}address rather than{{ADDR_SERVICE}}. On cloud,{{ADDR_UTIL}}is otherwise closed to direct API access; the model list is the one exception, reachable at{{ADDR_SERVICE}}instead, with no authentication required. Managing models (adding, deleting, downloading a specific one) is not available on cloud at all. On-premises, this split doesn't apply: the model list works at both{{ADDR_SERVICE}}and{{ADDR_UTIL}}.
Example Request
This endpoint does not require an Authorization header.
curl --location '{{ADDR_SERVICE}}/v1/speech/dictation/models'
Example Response
The response contains a models array, one entry per available language model, and a modelsCount field with the total. The example below shows two entries to illustrate the shape; the actual models and count differ by region (cloud) or by what's installed on your machine (on-premises), and change over time, so don't treat these specific values as fixed.
{
"success": true,
"modelsCount": 43,
"models": [
{
"name": "English",
"language": "en-US",
"version": 9,
"tenant": "Default",
"type": "Sestek",
"sample_rate": 16000,
"frequency": 16000,
"is_persistent": true
},
{
"name": "Turkish",
"language": "tr-TR",
"version": 8,
"tenant": "Default",
"type": "Sestek",
"sample_rate": 16000,
"frequency": 16000,
"is_persistent": true
}
],
"errorCode": null,
"errorMessage": null,
"moreInfo": null
}
Understanding Model Versions
The ModelVersion parameter lets you select a specific model version when submitting audio for transcription.
Using the Latest Model Version
To use the latest version of a model, either:
- set
ModelVersion=0, or - omit the
ModelVersionparameter entirely.
In both cases, the system automatically selects the most up-to-date and optimized language model available.
Using a Specific Model Version
If you need an older or specific model version:
- Retrieve the available versions by calling the models endpoint above.
- Use the
versionvalue from the response, for the modelnameyou want, as theModelVersionparameter in your transcription request. For example, the response above showsEnglishat version9andTurkishat version8.
Example Request for a Specific Model Version
curl --location '{{ADDR_SERVICE}}/v1/speech/dictation/request' \
--header 'Content-Type: audio/wave' \
--header 'ModelName: Turkish' \
--header 'ModelVersion: 4' \
--header 'Tenant: Default' \
--header 'Authorization: Bearer <access_token>' \
--data-binary '@audio.wav'
Authorization is required on cloud; on-premises, drop this header entirely, everything else stays the same. See Authentication for both flows.
When to Use Model Versions
- To use the latest version, no additional configuration is required.
- To use an earlier version for consistency, for example to avoid behavior changes introduced by a newer model, specify the desired
ModelVersionin your request.
Managing Models (On-Premises Only)
These endpoints live at
{{ADDR_UTIL}}and are not available on cloud at all. On-premises, use them to manage the models installed on your machine.
Get Specific Model
GET {{ADDR_UTIL}}/v1/speech/dictation/models?ModelName={ModelName}&ModelVersion={ModelVersion}&Tenant={ModelTenant}
Downloads the model content as a zip file.
curl -X GET "{{ADDR_UTIL}}/v1/speech/dictation/models?ModelName={ModelName}&ModelVersion={ModelVersion}&Tenant={ModelTenant}"
Add Model
POST {{ADDR_UTIL}}/v1/speech/dictation/models
| Header | Required | Description |
|---|---|---|
ModelName |
Yes | Name of the new model. |
ModelVersion |
Yes | Version of the new model. |
Tenant |
No | Defaults to Default. |
IsPersistent |
No | Defaults to false; if true, the model can't be removed by an LMS update. |
Content-Type |
Yes | application/zip |
Send the model content as a zipped file in the request body.
curl --header "ModelName: MyModel" \
--header "ModelVersion: 1" \
--header "IsPersistent: true" \
--data-binary "@MyModel.zip" \
-H "Content-Type: application/zip" \
-X POST "{{ADDR_UTIL}}/v1/speech/dictation/models"
Delete Model
DELETE {{ADDR_UTIL}}/v1/speech/dictation/models
| Header | Required | Description |
|---|---|---|
ModelName |
Yes | Name of the model to delete. |
ModelVersion |
Yes | Version of the model to delete. |
Tenant |
No | Defaults to Default. |
curl --header "ModelName: MyModel" \
--header "ModelVersion: 1" \
--header "Tenant: Default" \
-X DELETE "{{ADDR_UTIL}}/v1/speech/dictation/models"
Set Model Default Version
POST {{ADDR_UTIL}}/models/defaultversion
| Header | Required | Description |
|---|---|---|
ModelName |
Yes | Name of the model. |
ModelVersion |
Yes | The version to set as default. |
Tenant |
No | Defaults to Default. |
curl --header "ModelName: MyModel" \
--header "ModelVersion: 2" \
--header "Tenant: Default" \
-X POST "{{ADDR_UTIL}}/models/defaultversion"
