Skip to main content

Custom Models API

Custom speech recognition models for organizations.

Endpoints

MethodEndpointDescription
POST/api/v3/custom_modelsCreate custom model
GET/api/v3/speech-to-text/modelsList models with pagination
GET/api/v3/custom_models/{id}Get model details
PUT/api/v3/custom_models/{id}Update model metadata
DELETE/api/v3/custom_models/{id}Delete model
GET/api/v3/custom_models/{id}/dataGet model training data
POST/api/v3/custom_models/{id}/runStart training

TypeScript Types

CreateCustomModelPayload

type CreateCustomModelPayload = {
name: string;
language_id: number;
organization_id: number;
};

Model

type Model = {
id: number;
key: string;
name: string;
last_modified: string;
organization_id: number;
language_data: null;
is_trainable: boolean;
type: number;
base_language_id: number;
base_language_key: string;
training_log?: {
language_id: number;
training_status: number;
log_name: null;
};
};

CustomModels

type CustomModels = {
count: number;
total_results: number;
result: Model[];
};

UpdateModelBody

type UpdateModelBody = {
name: string;
language_id: number;
organization_id: number;
};

Training Status

The training_status field in training_log indicates the model's training state:

  • Training status is polled every 20 seconds during active training
  • Status updates are fetched with background refetching enabled

Query Parameters

List models endpoint supports:

  • offset - Pagination offset
  • limit - Results per page
  • q - Search query
  • sort - Sort field
  • direction - Sort direction (asc/desc)

Notes

  • Custom models are organization-specific
  • Models require a base language ID for initialization
  • Training can be triggered via the /run endpoint
  • Model details auto-refresh every 20 seconds when viewing
  • All models have a unique key identifier

Next Steps

Ready to get started? Create your first custom model and achieve higher accuracy for your domain!