> ## Documentation Index
> Fetch the complete documentation index at: https://guide.omnia-voice.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List supported languages

> Supported BCP-47 codes per engine, with a `stable` or `preview` status.
No authentication required.

`v1` covers `/transcribe`, `/batch` and `/stream`. `v2` covers `/v2/stream`.
On v1 the `languages` option restricts recognition to the codes you pass; on
v2 it biases recognition toward them while detection stays automatic.




## OpenAPI

````yaml /openapi-stt.yaml get /languages
openapi: 3.0.0
info:
  title: Omnia Speech-to-Text API
  description: >
    Standalone transcription. Send audio in, get text back — no agent involved.


    Three modes:

    - `POST /transcribe` — files up to 60 seconds, synchronous.

    - `POST /batch` — long audio up to 8 hours, asynchronous with polling.

    - `wss://stt.omnia-voice.com/stream` and `/v2/stream` — live audio.
    WebSocket
      endpoints are documented on the [Streaming protocol](/api-reference/speech-to-text/streaming) page.

    Authenticate with your Omnia API key in the `X-API-Key` header.
  version: 2.1.0
  contact:
    email: support@omnia-voice.com
servers:
  - url: https://stt.omnia-voice.com
    description: Production
security:
  - ApiKeyAuth: []
tags:
  - name: Transcription
    description: File and long-audio transcription
  - name: Languages
    description: Supported languages
paths:
  /languages:
    get:
      tags:
        - Languages
      summary: List supported languages
      description: >
        Supported BCP-47 codes per engine, with a `stable` or `preview` status.

        No authentication required.


        `v1` covers `/transcribe`, `/batch` and `/stream`. `v2` covers
        `/v2/stream`.

        On v1 the `languages` option restricts recognition to the codes you
        pass; on

        v2 it biases recognition toward them while detection stays automatic.
      operationId: listSttLanguages
      parameters:
        - name: engine
          in: query
          required: false
          schema:
            type: string
            enum:
              - v1
              - v2
          description: Limit to one engine. Default both.
        - name: codes
          in: query
          required: false
          schema:
            type: string
            example: et-EE,ru-RU
          description: >-
            Comma-separated codes to check. Returns support and status per
            engine instead of the full list.
      responses:
        '200':
          description: Language catalogue, or a per-code check when `codes` is given
          content:
            application/json:
              schema:
                oneOf:
                  - type: object
                    title: Catalogue
                    properties:
                      maxPerRequest:
                        type: integer
                        example: 10
                      engines:
                        type: object
                        additionalProperties:
                          type: object
                          properties:
                            endpoints:
                              type: array
                              items:
                                type: string
                            default:
                              type: array
                              items:
                                type: string
                            languageOption:
                              type: string
                            count:
                              type: integer
                            languages:
                              type: array
                              items:
                                $ref: '#/components/schemas/LanguageInfo'
                  - type: object
                    title: Code check
                    properties:
                      codes:
                        type: array
                        items:
                          type: string
                      maxPerRequest:
                        type: integer
                      engines:
                        type: object
                        additionalProperties:
                          type: object
                          additionalProperties:
                            type: object
                            properties:
                              supported:
                                type: boolean
                              status:
                                type: string
                              name:
                                type: string
        '400':
          $ref: '#/components/responses/BadRequest'
      security: []
components:
  schemas:
    LanguageInfo:
      type: object
      properties:
        code:
          type: string
          example: et-EE
        name:
          type: string
          example: Estonian
        status:
          type: string
          enum:
            - stable
            - preview
          description: '`stable` is generally available; `preview` is experimental quality.'
    Error:
      type: object
      properties:
        error:
          type: string
          description: Human-readable description.
        message:
          type: string
          description: Same text as `error`.
        code:
          type: string
          description: Machine-readable code.
          example: INVALID_API_KEY
  responses:
    BadRequest:
      description: Invalid option or empty audio
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key
      description: Your Omnia API key (`om_…` or `ck_…`)

````