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

# Create speech

> Generates audio from the input text.



## OpenAPI

````yaml post /v2/router/audio/speech
openapi: 3.1.0
info:
  title: orq.ai API
  version: '2.0'
  description: orq.ai API documentation
servers:
  - url: https://api.orq.ai
security:
  - ApiKey: []
tags:
  - name: Guardrail Rules
  - name: Policies
  - name: Routing Rules
  - name: Files
    description: File upload and retrieval operations.
  - name: FilesService
  - name: Projects
    description: Projects organize resources within a workspace
  - name: ProjectsService
  - name: Skills
    description: >-
      Skills are modular instructions you can use to codify processes and
      conventions
  - name: SkillsService
  - name: Responses
  - description: >-
      Run agents on a cadence — cron, interval, or one-off. Minimum firing
      interval is 1 hour.
    name: Agent Schedules
  - name: Reporting
    description: >-
      GenAI reporting API over canonical analytics rollups. Accepts a metric
      name, time range, grain, group-by, and filters; returns a typed time
      series and optional totals.
  - name: ReportingService
    description: |-
      ReportingService exposes a single QueryReport RPC that maps allowlisted
       analytics payloads onto safe rollup queries. Callers never send SQL;
       the backend picks the rollup family and grain from the metric
       catalogue, the requested range, and the requested grouping.
externalDocs:
  url: https://docs.orq.ai
  description: orq.ai Documentation
paths:
  /v2/router/audio/speech:
    post:
      tags:
        - Audio
      summary: Create speech
      description: Generates audio from the input text.
      operationId: createSpeech
      requestBody:
        required: true
        description: input
        content:
          application/json:
            schema:
              type: object
              properties:
                input:
                  type: string
                  description: >-
                    The text to generate audio for. The maximum length is 4096
                    characters
                model:
                  type: string
                  description: ID of the model to use
                voice:
                  type: string
                  description: |-
                    The voice to use. 

                     Available voices for OpenAI 

                     `alloy`, `echo`, `fable`, `onyx`, `nova`, and `shimmer` 

                     Available voices for ElevenLabs 

                     `aria`, `roger`, `sarah`, `laura`, `charlie`, `george`, `callum`, `river`, `liam`, `charlotte`, `alice`, `matilda`, `will`, `jessica`, `eric`, `chris`, `brian`, `daniel`, `lily`, `bill`
                response_format:
                  type: string
                  enum:
                    - mp3
                    - opus
                    - aac
                    - flac
                    - wav
                    - pcm
                  default: mp3
                  description: >-
                    The format to audio in. Supported formats are `mp3`, `opus`,
                    `aac`, `flac`, `wav`, and `pcm`. If a format is provided but
                    not supported by the provider, the response will be in the
                    default format. When the provided format is not supported by
                    the provider, the response will be in the default format.
                speed:
                  type: number
                  default: 1
                  description: The speed of the generated audio.
                name:
                  type: string
                  description: >-
                    The name to display on the trace. If not specified, the
                    default system name will be used.
                fallbacks:
                  type: array
                  items:
                    type: object
                    properties:
                      model:
                        type: string
                        description: Fallback model identifier
                    required:
                      - model
                  description: Array of fallback models to use if primary model fails
                retry:
                  type: object
                  properties:
                    count:
                      type: number
                      minimum: 1
                      maximum: 5
                      default: 3
                      description: Number of retry attempts (1-5)
                      example: 3
                    on_codes:
                      type: array
                      items:
                        type: number
                        minimum: 100
                        maximum: 599
                      minItems: 1
                      default:
                        - 429
                      description: HTTP status codes that trigger retry logic
                      example:
                        - 429
                        - 500
                        - 502
                        - 503
                        - 504
                  description: Retry configuration for the request
                load_balancer:
                  oneOf:
                    - type: object
                      properties:
                        type:
                          type: string
                          enum:
                            - weight_based
                        models:
                          type: array
                          items:
                            type: object
                            properties:
                              model:
                                type: string
                                description: Model identifier for load balancing
                                example: openai/gpt-4o
                              weight:
                                type: number
                                minimum: 0.001
                                maximum: 1
                                default: 0.5
                                description: >-
                                  Weight assigned to this model for load
                                  balancing
                                example: 0.7
                            required:
                              - model
                      required:
                        - type
                        - models
                  description: Load balancer configuration for the request.
                timeout:
                  type: object
                  properties:
                    call_timeout:
                      type: number
                      minimum: 1
                      description: Timeout value in milliseconds
                      example: 30000
                  required:
                    - call_timeout
                  description: >-
                    Timeout configuration to apply to the request. If the
                    request exceeds the timeout, it will be retried or fallback
                    to the next model if configured.
                orq:
                  type: object
                  properties:
                    retry:
                      type: object
                      properties:
                        count:
                          type: number
                          minimum: 1
                          maximum: 5
                          default: 3
                          description: Number of retry attempts (1-5)
                          example: 3
                        on_codes:
                          type: array
                          items:
                            type: number
                            minimum: 100
                            maximum: 599
                          minItems: 1
                          default:
                            - 429
                          description: HTTP status codes that trigger retry logic
                          example:
                            - 429
                            - 500
                            - 502
                            - 503
                            - 504
                      description: Retry configuration for the request
                    fallbacks:
                      type: array
                      items:
                        type: object
                        properties:
                          model:
                            type: string
                            description: Fallback model identifier
                            example: openai/gpt-4o-mini
                        required:
                          - model
                      description: Array of fallback models to use if primary model fails
                    name:
                      type: string
                      description: >-
                        The name to display on the trace. If not specified, the
                        default system name will be used.
                    identity:
                      $ref: '#/components/schemas/PublicIdentity'
                    contact:
                      $ref: '#/components/schemas/PublicContact'
                    thread:
                      type: object
                      properties:
                        id:
                          type: string
                          description: >-
                            Unique thread identifier to group related
                            invocations.
                          example: thread_01ARZ3NDEKTSV4RRFFQ69G5FAV
                        tags:
                          type: array
                          items:
                            type: string
                          description: Optional tags to differentiate or categorize threads
                          example:
                            - customer-support
                            - priority-high
                      required:
                        - id
                      description: Thread information to group related requests
                    load_balancer:
                      oneOf:
                        - type: object
                          properties:
                            type:
                              type: string
                              enum:
                                - weight_based
                            models:
                              type: array
                              items:
                                type: object
                                properties:
                                  model:
                                    type: string
                                    description: Model identifier for load balancing
                                    example: openai/gpt-4o
                                  weight:
                                    type: number
                                    minimum: 0.001
                                    maximum: 1
                                    default: 0.5
                                    description: >-
                                      Weight assigned to this model for load
                                      balancing
                                    example: 0.7
                                required:
                                  - model
                          required:
                            - type
                            - models
                      description: Array of models with weights for load balancing requests
                      example:
                        type: weight_based
                        models:
                          - model: openai/gpt-4o
                            weight: 0.7
                          - model: anthropic/claude-3-5-sonnet
                            weight: 0.3
                    timeout:
                      type: object
                      properties:
                        call_timeout:
                          type: number
                          minimum: 1
                          description: Timeout value in milliseconds
                          example: 30000
                      required:
                        - call_timeout
                      description: >-
                        Timeout configuration to apply to the request. If the
                        request exceeds the timeout, it will be retried or
                        fallback to the next model if configured.
              required:
                - input
                - model
                - voice
      responses:
        '200':
          description: The audio file content.
components:
  schemas:
    PublicIdentity:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the contact
          example: contact_01ARZ3NDEKTSV4RRFFQ69G5FAV
        display_name:
          type: string
          description: Display name of the contact
          example: Jane Doe
        email:
          type: string
          format: email
          description: Email address of the contact
          example: jane.doe@example.com
        metadata:
          type: array
          items:
            type: object
            additionalProperties: {}
          description: >-
            A hash of key/value pairs containing any other data about the
            contact
          example:
            - department: Engineering
              role: Senior Developer
        logo_url:
          type: string
          description: URL to the contact's avatar or logo
          example: https://example.com/avatars/jane-doe.jpg
        tags:
          type: array
          items:
            type: string
          description: A list of tags associated with the contact
          example:
            - hr
            - engineering
      required:
        - id
      description: >-
        Information about the identity making the request. If the identity does
        not exist, it will be created automatically.
    PublicContact:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the contact
          example: contact_01ARZ3NDEKTSV4RRFFQ69G5FAV
        display_name:
          type: string
          description: Display name of the contact
          example: Jane Doe
        email:
          type: string
          format: email
          description: Email address of the contact
          example: jane.doe@example.com
        metadata:
          type: array
          items:
            type: object
            additionalProperties: {}
          description: >-
            A hash of key/value pairs containing any other data about the
            contact
          example:
            - department: Engineering
              role: Senior Developer
        logo_url:
          type: string
          description: URL to the contact's avatar or logo
          example: https://example.com/avatars/jane-doe.jpg
        tags:
          type: array
          items:
            type: string
          description: A list of tags associated with the contact
          example:
            - hr
            - engineering
      required:
        - id
      description: >-
        @deprecated Use identity instead. Information about the contact making
        the request.
      deprecated: true
  securitySchemes:
    ApiKey:
      type: http
      scheme: bearer
      bearerFormat: JWT

````