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

# List Transcription Models

> Get all available transcription models. If authenticated with a Requesty API key, returns only the models approved for your organization. Otherwise, returns all public models. Aliases and routing policies are chat-only and are never returned here.

<RequestExample>
  ```bash cURL theme={"dark"}
  curl https://router.requesty.ai/v1/models/transcription \
    -H "Authorization: Bearer YOUR_REQUESTY_API_KEY"
  ```

  ```python Python theme={"dark"}
  import httpx

  response = httpx.get(
      "https://router.requesty.ai/v1/models/transcription",
      headers={"Authorization": "Bearer YOUR_REQUESTY_API_KEY"},
  )

  for model in response.json()["data"]:
      print(model["id"])
  ```

  ```typescript TypeScript theme={"dark"}
  const response = await fetch("https://router.requesty.ai/v1/models/transcription", {
    headers: { Authorization: `Bearer ${process.env.REQUESTY_API_KEY}` },
  });
  const { data } = await response.json();

  for (const model of data) {
    console.log(model.id);
  }
  ```
</RequestExample>

<ResponseExample>
  ```json Response 200 theme={"dark"}
  {
    "object": "list",
    "data": [
      {
        "api": "transcription",
        "id": "openai/whisper-1",
        "object": "model",
        "created": 1767023142,
        "updated": 1767023142,
        "owned_by": "system",
        "pricing": {
          "input_second": 0.0001
        },
        "data_retention": true,
        "data_retention_days": 30,
        "data_used_for_training": false,
        "privacy_comments": "",
        "geolocation": "global"
      },
      {
        "api": "transcription",
        "id": "openai/gpt-4o-transcribe",
        "object": "model",
        "created": 1767023142,
        "updated": 1767023142,
        "owned_by": "system",
        "pricing": {
          "input_token": 2.5e-06,
          "output_token": 1e-05
        },
        "data_retention": true,
        "data_retention_days": 30,
        "data_used_for_training": false,
        "privacy_comments": "",
        "geolocation": "global"
      }
    ]
  }
  ```
</ResponseExample>

List the transcription models available through the [`/v1/audio/transcriptions`](/api-reference/endpoint/audio-transcriptions-create) endpoint.

When authenticated with an API key, returns only the models approved for your organization. Without authentication, returns all publicly available models. Aliases and routing policies exist for chat only, so they never appear here.

Pricing is per audio second (`input_second`) or per token (`input_token` and `output_token`), depending on the model.


## OpenAPI

````yaml GET /v1/models/transcription
openapi: 3.0.3
info:
  title: Requesty Inference API
  description: >-
    Requesty Inference API for AI model routing. OpenAI-compatible endpoints for
    chat completions, embeddings, images, audio, and more.
  version: 1.0.0
servers:
  - url: https://router.requesty.ai
    description: Inference router endpoint
security:
  - BearerAuth: []
paths:
  /v1/models/transcription:
    servers:
      - url: https://router.requesty.ai
        description: Inference router endpoint
    get:
      summary: List available transcription models
      description: >-
        Get all available transcription models. If authenticated with a Requesty
        API key, returns only the models approved for your organization.
        Otherwise, returns all public models. Aliases and routing policies are
        chat-only and are never returned here.
      operationId: listTranscriptionModels
      responses:
        '200':
          description: List of available models
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TranscriptionModelsResponse'
              example:
                object: list
                data:
                  - api: transcription
                    id: openai/whisper-1
                    object: model
                    created: 1767023142
                    updated: 1767023142
                    owned_by: system
                    pricing:
                      input_second: 0.0001
                    data_retention: true
                    data_retention_days: 0
                    data_used_for_training: true
                    privacy_comments: ''
                    geolocation: global
                  - api: transcription
                    id: openai/gpt-4o-transcribe
                    object: model
                    created: 1767023142
                    updated: 1767023142
                    owned_by: system
                    pricing:
                      input_token: 0.0000025
                      output_token: 0.00001
                    data_retention: true
                    data_retention_days: 0
                    data_used_for_training: true
                    privacy_comments: ''
                    geolocation: global
        '400':
          description: Bad request - malformed payload or invalid parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized - missing or empty Authorization header.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '402':
          description: Payment required - organization balance exhausted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: Forbidden - invalid token or model not in access list.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: Not found - provider/model not supported.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '429':
          description: Rate limit exceeded. Retry after the Retry-After header value.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '502':
          description: Bad gateway - upstream provider returned an invalid response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
        - BearerAuth: []
        - {}
components:
  schemas:
    TranscriptionModelsResponse:
      type: object
      required:
        - object
        - data
      properties:
        object:
          type: string
          enum:
            - list
          description: The object type, always 'list'
        data:
          type: array
          items:
            $ref: '#/components/schemas/TranscriptionModel'
          description: The list of available transcription models
    ErrorResponse:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - origin
            - message
          properties:
            origin:
              type: string
              enum:
                - router
                - provider
              description: >-
                Whether the error originated from Requesty's router or an
                upstream provider.
            message:
              type: string
              description: Human-readable error description.
    TranscriptionModel:
      type: object
      properties:
        api:
          type: string
          enum:
            - transcription
          description: The modality of the model, always 'transcription'
        id:
          type: string
          description: The model identifier (e.g., 'openai/whisper-1')
        object:
          type: string
          enum:
            - model
          description: The object type, always 'model'
        created:
          type: integer
          description: The Unix timestamp (in seconds) when the model was created
        updated:
          type: integer
          description: The Unix timestamp (in seconds) when the model was last updated
        owned_by:
          type: string
          description: The system or organization that owns the model
          example: system
        pricing:
          type: object
          description: >-
            Prices for the model. Token prices and `input_second` are mutually
            exclusive, depending on the model's pricing scheme.
          properties:
            input_token:
              type: number
              format: float
              description: Price per input token in USD
            output_token:
              type: number
              format: float
              description: Price per output token in USD
            input_second:
              type: number
              format: float
              description: Price per second of input audio in USD
        data_retention:
          type: boolean
          description: Whether the provider retains request data
        data_retention_days:
          type: integer
          description: Number of days the provider retains request data
        data_used_for_training:
          type: boolean
          description: Whether the provider may use request data for training
        privacy_comments:
          type: string
          description: Additional privacy notes for the model
        geolocation:
          type: string
          description: Region the model is served from, e.g. 'us' or 'eu'
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: API key for authentication

````