This guide walks you through testing the SESTEK Speech Recognition (SR) API using the official Postman collection. It only uses one request from that collection, Model Based Dictation (under the collection's Dictation folder), which submits an audio file for file-based transcription and returns the recognized text.
The full collection also covers other SR capabilities beyond dictation; this guide keeps things simple and sticks to the basic file-transcription flow.
SR has two categories of endpoints. Service endpoints (recognition, dictation, the ones this guide tests) use the collection's
{{ADDR_SERVICE}}variable. Management endpoints (grammar and model management, diagnostics, pronunciations, reports) use the collection's{{ADDR_UTIL}}variable instead. On-premises deployments can call management endpoints directly over HTTP as well. On cloud, management endpoints are not exposed as a direct API at all; the same operations are only available through the Core Web web application, for tenants provisioned there. Core Web usage is documented separately.
This walkthrough covers both deployment types. Cloud and on-premises use the exact same request body and endpoint for the service API; only the base address (
{{ADDR_SERVICE}}) and authentication differ. On-premises deployments skip the token step entirely. See Authentication for both flows.
Prerequisites
- Postman installed.
- Cloud: a valid Client ID and Client Secret for the SR service. If you don't have these yet, contact your SESTEK Sales Operations contact.
- On-premises: no credentials needed; the host machine is licensed via the License Service application instead. See Authentication for details on both.
Step 1: Download and Import the Collection
To get started, ensure you have Postman installed. If not, download it here:
Once Postman is installed, download the SESTEK Speech Recognition Postman collection below and import it:
SESTEK Speech Recognition Postman Collection
SR_REST_API_Postman_Collection.json
After importing, open the Dictation folder and select Model Based Dictation, that's the only request this guide needs.
Step 2: Generate an Access Token
On-premises: skip this step entirely. On-premises deployments do not use tokens, so there is nothing to generate here; continue directly to Step 3 with no
Authorizationheader at all.
Token generation is not part of this collection, since the identity service is separate from SR itself. Send the following request (in Postman as a new request, or directly with cURL) to obtain one:
Endpoint
POST https://identity.ldm.knovvu.com/connect/token
Body parameters (x-www-form-urlencoded)
| Key | Value | Description |
|---|---|---|
client_id |
your Client ID | Provided when your subscription was activated. |
client_secret |
your Client Secret | Provided when your subscription was activated. |
grant_type |
client_credentials |
Fixed value, do not change. |
scope |
Ldm_Integration |
Fixed value, do not change. |
Replace the placeholder values [client_id] and [client_secret] with your own credentials, then click Send.
Example response
{
"access_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...",
"expires_in": 31536000,
"token_type": "Bearer",
"scope": "Ldm_Integration"
}
Copy the access_token value. You'll need it in the next step. It is valid for 365 days; see Authentication for renewal recommendations.
Step 3: Configure the Model Based Dictation Request
Open the Model Based Dictation request under Dictation.
Endpoint
POST {{ADDR_SERVICE}}/v1/speech/dictation/request
{{ADDR_SERVICE}} is a collection variable, the base address of SR's service API (not the management API mentioned above). Set it once under the collection's Variables tab rather than editing the URL on every request:
- Cloud: your assigned region's URL, e.g.
https://srapi.knovvu.comfor Paris. See API Region URLs. - On-premises: the address of the machine running your licensed SR service.
Authorization: cloud deployments use the Authorization tab set to Bearer Token, paste the access_token from Step 2 into the token field. On-premises deployments need no Authorization at all, set the tab to No Auth instead.
Headers
| Header | Description |
|---|---|
Content-Type |
Must match the format of the audio file you attach: audio/wav, audio/wave, or audio/opus. |
ModelName |
The language model to use. The imported request defaults to SestekSystemTestModel, replace it with your actual assigned model name from Language Models. |
ModelVersion |
The model version to use, or 0 to always use the latest available version. |
Tenant |
Your tenant name. Use Default unless you were given a specific tenant. |
SendAudioDownloadLink |
Optional. If true, the response includes a temporary download link for the submitted audio. |
MinioAudioLogMode |
Present in the imported request; leave it at its default value unless SESTEK support instructs otherwise. |
Body
The body mode is set to file. Click Select File and choose the audio file you want to transcribe.
Click Send. The response contains the recognized text along with confidence scores and timing information. See Transcribe a File for the full response schema.
Equivalent cURL Commands
If you prefer not to use Postman:
Get token (cloud only)
curl -X POST https://identity.ldm.knovvu.com/connect/token \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "client_id=[client_id]" \
-d "client_secret=[client_secret]" \
-d "grant_type=client_credentials" \
-d "scope=Ldm_Integration"
Model Based Dictation
curl -X POST {{ADDR_SERVICE}}/v1/speech/dictation/request \
-H "Authorization: Bearer <access_token>" \
-H "Content-Type: audio/wav" \
-H "ModelName: <your model name>" \
-H "ModelVersion: 1" \
-H "Tenant: Default" \
-H "SendAudioDownloadLink: true" \
--data-binary "@/path/to/your/audio.wav"
Replace {{ADDR_SERVICE}} with your region's URL (cloud) or your machine's address (on-premises). On-premises requests drop the Authorization header entirely, everything else stays the same.
