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

# Voz a texto

> Convierte la voz en texto. Compatible con `audio.transcriptions` del SDK de OpenAI. Requiere una clave de IA de voz (`sk-voice-…`).



## OpenAPI

````yaml es/openapi/es-openai-api-openapi.yaml POST /v1/audio/transcriptions
openapi: 3.1.0
info:
  title: ER:LC Rusia - API compatible con OpenAI
  version: 1.0.0
  description: >-
    Métodos compatibles con OpenAI de Chat Completions, consulta de modelos y
    síntesis de voz de ER:LC Russia. Consulta los parámetros admitidos en cada
    método.
servers:
  - url: https://api.erlcrussia.com
    description: servidor principal
  - url: https://api.erlcrussia.xyz
    description: Servidor de respaldo
security: []
tags:
  - name: Audio
  - name: Chat Completions
  - name: Models
paths:
  /v1/audio/transcriptions:
    post:
      tags:
        - Audio
      summary: Voz a texto
      description: >-
        Convierte la voz en texto. Compatible con `audio.transcriptions` del SDK
        de OpenAI. Requiere una clave de IA de voz (`sk-voice-…`).
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              required:
                - file
              properties:
                file:
                  type: string
                  format: binary
                  description: >-
                    Un archivo de audio en cualquier formato común (mp3, mp4,
                    m4a, mpeg, mpga, ogg, wav, webm, flac), hasta 25 MB y 120
                    segundos.
                model:
                  type: string
                  example: whisper-1
                  description: >-
                    Se acepta por compatibilidad; siempre transcribe el modelo
                    de ER:LC Rusia.
                language:
                  type: string
                  example: ru
                  description: Idioma del audio (ISO-639-1), `ru` por defecto.
                response_format:
                  type: string
                  enum:
                    - json
                    - text
                  default: json
                  description: >-
                    `json` devuelve un objeto con el texto; `text`, solo el
                    texto.
          audio/*:
            schema:
              type: string
              format: binary
              description: >-
                El archivo de audio completo como cuerpo de la solicitud, de
                cualquier tipo `audio/*`.
      responses:
        '200':
          description: >-
            El texto reconocido. Los créditos cobrados van en la cabecera
            `X-Credits-Charged`.
          headers:
            X-Credits-Charged:
              schema:
                type: number
              description: Créditos de IA cobrados.
            x-request-id:
              $ref: '#/components/headers/RequestId'
            openai-processing-ms:
              $ref: '#/components/headers/ProcessingMs'
            x-ratelimit-limit-requests:
              $ref: '#/components/headers/RateLimitRequests'
            x-ratelimit-remaining-requests:
              $ref: '#/components/headers/RateLimitRemainingRequests'
            x-ratelimit-reset-requests:
              $ref: '#/components/headers/RateLimitResetRequests'
          content:
            application/json:
              schema:
                type: object
                properties:
                  text:
                    type: string
                    example: Как расшифровывается РД?
                  usage:
                    type: object
                    properties:
                      type:
                        type: string
                        example: duration
                      seconds:
                        type: number
                        example: 2.4
              example:
                text: Как расшифровывается РД?
                usage:
                  type: duration
                  seconds: 2.4
            text/plain:
              schema:
                type: string
        '400':
          description: Cuerpo de la solicitud no válido.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid:
                  value:
                    error:
                      message: Unsupported or corrupted audio file
                      type: invalid_request_error
                      param: null
                      code: null
                format:
                  value:
                    error:
                      message: 'Unsupported response_format: use json or text'
                      type: invalid_request_error
                      param: null
                      code: null
        '401':
          description: Falta la clave o no es válida.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  message: >-
                    Incorrect API key provided. Check the key or create a new
                    one in the dashboard.
                  type: invalid_request_error
                  param: null
                  code: invalid_api_key
                  erlc_code: '5008'
        '413':
          description: El audio dura más de 120 segundos.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                duration:
                  value:
                    error:
                      message: Audio exceeds 120 seconds
                      type: invalid_request_error
                      param: null
                      code: null
                size:
                  value:
                    error:
                      message: File exceeds 25 MB
                      type: invalid_request_error
                      param: null
                      code: null
        '415':
          description: Formato de solicitud no compatible.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  message: Expected multipart/form-data or an audio file
                  type: invalid_request_error
                  param: null
                  code: null
        '429':
          description: >-
            Límite de solicitudes superado (`type: requests`) o se agotaron los
            créditos de IA (`type: insufficient_quota`).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                rate_limit:
                  value:
                    error:
                      message: Rate limit reached. Please slow down and retry later.
                      type: requests
                      param: null
                      code: rate_limit_exceeded
                      erlc_code: '5016'
                insufficient_quota:
                  value:
                    error:
                      message: >-
                        You exceeded your current quota, please check your plan
                        and billing details.
                      type: insufficient_quota
                      param: null
                      code: insufficient_quota
                      erlc_code: '5038'
        '502':
          description: El servicio de transcripción no respondió.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  message: Bad Gateway
                  type: server_error
                  param: null
                  code: '5049'
        '503':
          description: El servicio no está disponible temporalmente.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  message: Audio transcription unavailable
                  type: server_error
                  param: null
                  code: null
      security:
        - BearerAuth: []
        - ApiKeyAuth: []
components:
  headers:
    RequestId:
      description: ID de la solicitud para soporte.
      schema:
        type: string
        example: req_8f2c1e9b4a7d4c0e9f1a2b3c4d5e6f70
    ProcessingMs:
      description: Tiempo de procesamiento en milisegundos.
      schema:
        type: integer
        example: 412
    RateLimitRequests:
      description: Límite de solicitudes en la ventana actual.
      schema:
        type: integer
        example: 120
    RateLimitRemainingRequests:
      description: Solicitudes restantes en la ventana actual.
      schema:
        type: integer
        example: 119
    RateLimitResetRequests:
      description: Tiempo hasta que se reinicia el límite, por ejemplo `1s` o `6m0s`.
      schema:
        type: string
        example: 1s
  schemas:
    ErrorResponse:
      type: object
      description: >-
        Un error en formato OpenAI. `code` es un código de texto de OpenAI
        (`invalid_api_key`, `model_not_found`, `insufficient_quota`,
        `rate_limit_exceeded`) o `null`. El código numérico de ER:LC Rusia va en
        `erlc_code`, consulta los [códigos de
        error](/es/documentation/error-codes).
      properties:
        error:
          type: object
          properties:
            message:
              type: string
              example: Insufficient AI Credits
            type:
              type: string
              enum:
                - invalid_request_error
                - insufficient_quota
                - requests
                - server_error
              example: insufficient_quota
            param:
              type:
                - string
                - 'null'
              example: null
            code:
              type:
                - string
                - 'null'
              example: insufficient_quota
            erlc_code:
              type: string
              description: ER:LC Russia numeric error code.
              example: '5038'
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Pasando el token de autorización en el encabezado Autorización: Portador
        <token>.
    ApiKeyAuth:
      type: apiKey
      in: header
      name: erlcrussia-api-ai-key
      description: La clave en la cabecera erlcrussia-api-ai-key.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.