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

# Bulbul v3

> Stream multilingual Indian-language speech from Sarvam AI Bulbul v3 over WebSocket with 30+ speaker voices and SLNG's unified low-latency TTS protocol.



## AsyncAPI

````yaml api-reference/asyncapi/tts-sarvam.asyncapi.yaml /v1/tts/sarvam/bulbul:v3
id: /v1/tts/sarvam/bulbul:v3
title: Bulbul v3
description: >-
  Stream multilingual Indian-language speech from Sarvam AI Bulbul v3 over
  WebSocket with 30+ speaker voices and SLNG's unified low-latency TTS protocol.
servers:
  - id: production
    protocol: wss
    host: api.slng.ai
    bindings: []
    variables: []
  - id: staging
    protocol: wss
    host: stageapi.slng.ai
    bindings: []
    variables: []
address: /v1/tts/sarvam/bulbul:v3
parameters: []
bindings:
  - protocol: ws
    version: latest
    value:
      method: GET
      headers:
        type: object
        properties:
          X-World-Part-Override:
            type: string
            description: >-
              Target world part override. Auto-selected if not provided.
              Available world parts: `ap`.
            enum:
              - ap
            x-parser-schema-id: <anonymous-schema-52>
        x-parser-schema-id: WebsocketHeadersSarvam
    schemaProperties:
      - name: method
        type: string
        description: GET
        required: false
      - name: headers
        type: object
        required: false
        properties:
          - name: X-World-Part-Override
            type: string
            description: >-
              Target world part override. Auto-selected if not provided.
              Available world parts: `ap`.
            enumValues:
              - ap
            required: false
operations:
  - &ref_1
    id: ttsSarvamBulbulV3ReceiveInit
    title: Tts sarvam bulbul v3 receive init
    description: Initialize session on Bulbul v3
    type: receive
    messages:
      - &ref_15
        id: SarvamBulbulTtsInitRequest
        contentType: application/json
        payload:
          - name: Init Request (Sarvam Bulbul)
            description: >-
              Initialize a Sarvam Bulbul TTS session with provider-specific
              configuration.
            type: object
            properties:
              - name: type
                type: string
                description: init
                required: true
              - name: model
                type: string
                description: Sarvam TTS model identifier.
                enumValues:
                  - bulbul:v3
                required: true
              - name: voice
                type: string
                description: Speaker voice for the output audio.
                enumValues:
                  - shubh
                  - aditya
                  - ritu
                  - priya
                  - neha
                  - rahul
                  - pooja
                  - rohan
                  - simran
                  - kavya
                  - amit
                  - dev
                  - ishita
                  - shreya
                  - ratan
                  - varun
                  - manan
                  - sumit
                  - roopa
                  - kabir
                  - aayan
                  - ashutosh
                  - advait
                  - amelia
                  - sophia
                  - anand
                  - tanya
                  - tarun
                  - sunny
                  - mani
                  - gokul
                  - vijay
                  - shruti
                  - suhani
                  - mohit
                  - kavitha
                  - rehan
                  - soham
                  - rupali
                required: false
              - name: config
                type: object
                description: Sarvam Bulbul synthesis configuration options
                required: false
                properties:
                  - name: language
                    type: string
                    description: Language code in BCP-47 format for text normalization.
                    enumValues:
                      - bn-IN
                      - en-IN
                      - gu-IN
                      - hi-IN
                      - kn-IN
                      - ml-IN
                      - mr-IN
                      - od-IN
                      - pa-IN
                      - ta-IN
                      - te-IN
                    required: false
                  - name: encoding
                    type: string
                    description: Output audio codec.
                    enumValues:
                      - mp3
                      - linear16
                      - mulaw
                      - alaw
                      - opus
                      - flac
                      - aac
                      - wav
                    required: false
                  - name: speech_sample_rate
                    type: string
                    description: Output sample rate in Hz.
                    enumValues:
                      - '8000'
                      - '16000'
                      - '22050'
                      - '24000'
                      - '32000'
                      - '44100'
                      - '48000'
                    required: false
                  - name: pace
                    type: number
                    description: Speech speed (0.5 to 2.0). Default is 1.0.
                    required: false
                  - name: temperature
                    type: number
                    description: Controls expressiveness (0.01 to 2.0). Default is 0.6.
                    required: false
                  - name: output_audio_bitrate
                    type: string
                    description: Output audio bitrate (WebSocket streaming only).
                    required: false
                  - name: min_buffer_size
                    type: integer
                    description: >-
                      Minimum buffer size before sending audio chunks (WebSocket
                      streaming only).
                    required: false
                  - name: max_chunk_length
                    type: integer
                    description: >-
                      Maximum text chunk length for synthesis (WebSocket
                      streaming only).
                    required: false
        headers: []
        jsonPayloadSchema:
          type: object
          description: >-
            Initialize a Sarvam Bulbul TTS session with voice, language, and
            audio configuration options specific to Sarvam AI.
          required:
            - type
            - model
          properties:
            type:
              type: string
              const: init
              default: init
              x-parser-schema-id: <anonymous-schema-2>
            model:
              type: string
              description: Sarvam TTS model identifier.
              enum:
                - bulbul:v3
              default: bulbul:v3
              x-parser-schema-id: <anonymous-schema-3>
            voice:
              type: string
              description: Speaker voice for the output audio.
              enum:
                - shubh
                - aditya
                - ritu
                - priya
                - neha
                - rahul
                - pooja
                - rohan
                - simran
                - kavya
                - amit
                - dev
                - ishita
                - shreya
                - ratan
                - varun
                - manan
                - sumit
                - roopa
                - kabir
                - aayan
                - ashutosh
                - advait
                - amelia
                - sophia
                - anand
                - tanya
                - tarun
                - sunny
                - mani
                - gokul
                - vijay
                - shruti
                - suhani
                - mohit
                - kavitha
                - rehan
                - soham
                - rupali
              default: shubh
              x-parser-schema-id: <anonymous-schema-4>
            config:
              type: object
              description: Sarvam Bulbul synthesis configuration options
              properties:
                language:
                  type: string
                  description: Language code in BCP-47 format for text normalization.
                  enum:
                    - bn-IN
                    - en-IN
                    - gu-IN
                    - hi-IN
                    - kn-IN
                    - ml-IN
                    - mr-IN
                    - od-IN
                    - pa-IN
                    - ta-IN
                    - te-IN
                  default: en-IN
                  x-parser-schema-id: <anonymous-schema-6>
                encoding:
                  type: string
                  description: Output audio codec.
                  enum:
                    - mp3
                    - linear16
                    - mulaw
                    - alaw
                    - opus
                    - flac
                    - aac
                    - wav
                  x-parser-schema-id: <anonymous-schema-7>
                speech_sample_rate:
                  type: string
                  description: Output sample rate in Hz.
                  enum:
                    - '8000'
                    - '16000'
                    - '22050'
                    - '24000'
                    - '32000'
                    - '44100'
                    - '48000'
                  default: '24000'
                  x-parser-schema-id: <anonymous-schema-8>
                pace:
                  type: number
                  description: Speech speed (0.5 to 2.0). Default is 1.0.
                  minimum: 0.5
                  maximum: 2
                  default: 1
                  x-parser-schema-id: <anonymous-schema-9>
                temperature:
                  type: number
                  description: Controls expressiveness (0.01 to 2.0). Default is 0.6.
                  minimum: 0.01
                  maximum: 2
                  default: 0.6
                  x-parser-schema-id: <anonymous-schema-10>
                output_audio_bitrate:
                  type: string
                  description: Output audio bitrate (WebSocket streaming only).
                  x-parser-schema-id: <anonymous-schema-11>
                min_buffer_size:
                  type: integer
                  description: >-
                    Minimum buffer size before sending audio chunks (WebSocket
                    streaming only).
                  x-parser-schema-id: <anonymous-schema-12>
                max_chunk_length:
                  type: integer
                  description: >-
                    Maximum text chunk length for synthesis (WebSocket streaming
                    only).
                  x-parser-schema-id: <anonymous-schema-13>
              x-parser-schema-id: <anonymous-schema-5>
          x-parser-schema-id: <anonymous-schema-1>
        title: Init Request (Sarvam Bulbul)
        description: >-
          Initialize a Sarvam Bulbul TTS session with provider-specific
          configuration.
        example: |-
          {
            "type": "init",
            "model": "bulbul:v3",
            "voice": "shubh",
            "config": {
              "language": "en-IN",
              "speech_sample_rate": "24000",
              "encoding": "linear16",
              "pace": 1,
              "temperature": 0.6
            }
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: SarvamBulbulTtsInitRequest
    bindings: []
    extensions: &ref_0
      - id: x-parser-unique-object-id
        value: /v1/tts/sarvam/bulbul:v3
  - &ref_2
    id: ttsSarvamBulbulV3ReceiveText
    title: Tts sarvam bulbul v3 receive text
    description: Send text to Bulbul v3
    type: receive
    messages:
      - &ref_16
        id: TtsTextMessage
        contentType: application/json
        payload:
          - name: Text Message
            description: Send text to synthesize into audio output.
            type: object
            properties:
              - name: type
                type: string
                description: text
                required: true
              - name: text
                type: string
                description: Text to synthesize
                required: true
              - name: flush
                type: boolean
                description: Whether to flush remaining audio immediately after this text
                required: false
        headers: []
        jsonPayloadSchema:
          type: object
          description: Send text to synthesize into audio output.
          required:
            - type
            - text
          properties:
            type:
              type: string
              const: text
              x-parser-schema-id: <anonymous-schema-15>
            text:
              type: string
              description: Text to synthesize
              x-parser-schema-id: <anonymous-schema-16>
            flush:
              type: boolean
              description: Whether to flush remaining audio immediately after this text
              x-parser-schema-id: <anonymous-schema-17>
          x-parser-schema-id: <anonymous-schema-14>
        title: Text Message
        description: Send text to synthesize into audio output.
        example: |-
          {
            "type": "text",
            "text": "Hello, this is a test of text-to-speech synthesis."
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: TtsTextMessage
    bindings: []
    extensions: *ref_0
  - &ref_3
    id: ttsSarvamBulbulV3ReceiveFlush
    title: Tts sarvam bulbul v3 receive flush
    description: Flush buffered output on Bulbul v3
    type: receive
    messages:
      - &ref_17
        id: TtsFlushMessage
        contentType: application/json
        payload:
          - name: Flush Message
            description: Force any buffered text/audio to be finalized and delivered.
            type: object
            properties:
              - name: type
                type: string
                description: flush
                required: true
        headers: []
        jsonPayloadSchema:
          type: object
          description: Force any buffered text/audio to be finalized and delivered.
          required:
            - type
          properties:
            type:
              type: string
              const: flush
              x-parser-schema-id: <anonymous-schema-19>
          x-parser-schema-id: <anonymous-schema-18>
        title: Flush Message
        description: Force any buffered text/audio to be finalized and delivered.
        example: |-
          {
            "type": "flush"
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: TtsFlushMessage
    bindings: []
    extensions: *ref_0
  - &ref_4
    id: ttsSarvamBulbulV3ReceiveClear
    title: Tts sarvam bulbul v3 receive clear
    description: Clear queued output on Bulbul v3
    type: receive
    messages:
      - &ref_18
        id: TtsClearMessage
        contentType: application/json
        payload:
          - name: Clear Message
            description: Clear any queued text/audio from the current session.
            type: object
            properties:
              - name: type
                type: string
                description: clear
                required: true
        headers: []
        jsonPayloadSchema:
          type: object
          description: Clear any queued text/audio from the current session.
          required:
            - type
          properties:
            type:
              type: string
              const: clear
              x-parser-schema-id: <anonymous-schema-21>
          x-parser-schema-id: <anonymous-schema-20>
        title: Clear Message
        description: Clear any queued text/audio from the current session.
        example: |-
          {
            "type": "clear"
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: TtsClearMessage
    bindings: []
    extensions: *ref_0
  - &ref_5
    id: ttsSarvamBulbulV3ReceiveClose
    title: Tts sarvam bulbul v3 receive close
    description: Close session on Bulbul v3
    type: receive
    messages:
      - &ref_19
        id: TtsCloseMessage
        contentType: application/json
        payload:
          - name: Close Message
            description: Close the session and stop any further audio.
            type: object
            properties:
              - name: type
                type: string
                description: close
                required: true
        headers: []
        jsonPayloadSchema:
          type: object
          description: Close the session and stop any further audio.
          required:
            - type
          properties:
            type:
              type: string
              const: close
              x-parser-schema-id: <anonymous-schema-23>
          x-parser-schema-id: <anonymous-schema-22>
        title: Close Message
        description: Close the session and stop any further audio.
        example: |-
          {
            "type": "close"
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: TtsCloseMessage
    bindings: []
    extensions: *ref_0
  - &ref_6
    id: ttsSarvamBulbulV3ReceiveKeepalive
    title: Tts sarvam bulbul v3 receive keepalive
    description: Send keepalive on Bulbul v3
    type: receive
    messages:
      - &ref_20
        id: KeepaliveMessage
        contentType: application/json
        payload:
          - name: Keepalive Message
            description: Keep the WebSocket connection alive during silence.
            type: object
            properties:
              - name: type
                type: string
                description: keepalive
                required: true
        headers: []
        jsonPayloadSchema:
          type: object
          description: >-
            Prevents the connection from being closed due to inactivity. Send
            periodically during silence to maintain the session.
          required:
            - type
          properties:
            type:
              type: string
              const: keepalive
              x-parser-schema-id: <anonymous-schema-25>
          x-parser-schema-id: <anonymous-schema-24>
        title: Keepalive Message
        description: Keep the WebSocket connection alive during silence.
        example: |-
          {
            "type": "keepalive"
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: KeepaliveMessage
    bindings: []
    extensions: *ref_0
  - &ref_7
    id: ttsSarvamBulbulV3SendReady
    title: Tts sarvam bulbul v3 send ready
    description: Receive ready signal from Bulbul v3
    type: send
    messages:
      - &ref_21
        id: TtsReadyResponse
        contentType: application/json
        payload:
          - name: Ready Response
            description: Indicates the session is ready to receive messages.
            type: object
            properties:
              - name: type
                type: string
                description: ready
                required: true
              - name: session_id
                type: string
                description: Unique session identifier
                required: true
        headers: []
        jsonPayloadSchema:
          type: object
          description: Indicates the session is ready to receive messages.
          required:
            - type
            - session_id
          properties:
            type:
              type: string
              const: ready
              x-parser-schema-id: <anonymous-schema-27>
            session_id:
              type: string
              description: Unique session identifier
              x-parser-schema-id: <anonymous-schema-28>
          x-parser-schema-id: <anonymous-schema-26>
        title: Ready Response
        description: Indicates the session is ready to receive messages.
        example: |-
          {
            "type": "ready",
            "session_id": "sess_tts_abc123"
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: TtsReadyResponse
    bindings: []
    extensions: *ref_0
  - &ref_8
    id: ttsSarvamBulbulV3SendAudio
    title: Tts sarvam bulbul v3 send audio
    description: Receive audio response from Bulbul v3
    type: send
    messages:
      - &ref_22
        id: SarvamBulbulTtsAudioResponse
        contentType: application/json
        payload:
          - name: Audio Response (Sarvam Bulbul)
            description: Audio response from Sarvam Bulbul TTS with metadata.
            type: object
            properties:
              - name: type
                type: string
                description: audio
                required: true
              - name: data
                type: object
                required: true
                properties:
                  - name: request_id
                    type: string
                    description: Unique identifier for the request
                    required: true
                  - name: content_type
                    type: string
                    description: MIME type of the audio data (e.g., audio/pcm)
                    required: true
                  - name: audio
                    type: string
                    description: Base64-encoded audio data
                    required: true
        headers: []
        jsonPayloadSchema:
          type: object
          description: >-
            Audio response from Sarvam Bulbul TTS containing base64-encoded
            audio with request metadata.
          required:
            - type
            - data
          properties:
            type:
              type: string
              const: audio
              x-parser-schema-id: <anonymous-schema-30>
            data:
              type: object
              required:
                - request_id
                - content_type
                - audio
              properties:
                request_id:
                  type: string
                  description: Unique identifier for the request
                  x-parser-schema-id: <anonymous-schema-32>
                content_type:
                  type: string
                  description: MIME type of the audio data (e.g., audio/pcm)
                  x-parser-schema-id: <anonymous-schema-33>
                audio:
                  type: string
                  format: byte
                  description: Base64-encoded audio data
                  x-parser-schema-id: <anonymous-schema-34>
              x-parser-schema-id: <anonymous-schema-31>
          x-parser-schema-id: <anonymous-schema-29>
        title: Audio Response (Sarvam Bulbul)
        description: Audio response from Sarvam Bulbul TTS with metadata.
        example: |-
          {
            "type": "audio",
            "data": {
              "request_id": "20260320_9a16651d-38fa-430a-b688-7d0bea33972f",
              "content_type": "audio/pcm",
              "audio": "KAVWBYAFcgVtBUE..."
            }
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: SarvamBulbulTtsAudioResponse
    bindings: []
    extensions: *ref_0
  - &ref_9
    id: ttsSarvamBulbulV3SendSegmentStart
    title: Tts sarvam bulbul v3 send segment start
    description: Receive segment start from Bulbul v3
    type: send
    messages:
      - &ref_23
        id: TtsSegmentStart
        contentType: application/json
        payload:
          - name: Segment Start
            description: Signals the start of a synthesized segment.
            type: object
            properties:
              - name: type
                type: string
                description: segment_start
                required: true
              - name: segment_id
                type: string
                description: Unique segment identifier
                required: true
        headers: []
        jsonPayloadSchema:
          type: object
          description: Signals the start of a synthesized segment.
          required:
            - type
            - segment_id
          properties:
            type:
              type: string
              const: segment_start
              x-parser-schema-id: <anonymous-schema-36>
            segment_id:
              type: string
              description: Unique segment identifier
              x-parser-schema-id: <anonymous-schema-37>
          x-parser-schema-id: <anonymous-schema-35>
        title: Segment Start
        description: Signals the start of a synthesized segment.
        example: |-
          {
            "type": "segment_start",
            "segment_id": "seg_001"
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: TtsSegmentStart
    bindings: []
    extensions: *ref_0
  - &ref_10
    id: ttsSarvamBulbulV3SendSegmentEnd
    title: Tts sarvam bulbul v3 send segment end
    description: Receive segment end from Bulbul v3
    type: send
    messages:
      - &ref_24
        id: TtsSegmentEnd
        contentType: application/json
        payload:
          - name: Segment End
            description: Signals the end of a synthesized segment.
            type: object
            properties:
              - name: type
                type: string
                description: segment_end
                required: true
              - name: segment_id
                type: string
                description: Unique segment identifier
                required: true
        headers: []
        jsonPayloadSchema:
          type: object
          description: Signals the end of a synthesized segment.
          required:
            - type
            - segment_id
          properties:
            type:
              type: string
              const: segment_end
              x-parser-schema-id: <anonymous-schema-39>
            segment_id:
              type: string
              description: Unique segment identifier
              x-parser-schema-id: <anonymous-schema-40>
          x-parser-schema-id: <anonymous-schema-38>
        title: Segment End
        description: Signals the end of a synthesized segment.
        example: |-
          {
            "type": "segment_end",
            "segment_id": "seg_001"
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: TtsSegmentEnd
    bindings: []
    extensions: *ref_0
  - &ref_11
    id: ttsSarvamBulbulV3SendFlushed
    title: Tts sarvam bulbul v3 send flushed
    description: Receive flushed confirmation from Bulbul v3
    type: send
    messages:
      - &ref_25
        id: TtsFlushed
        contentType: application/json
        payload:
          - name: Flushed
            description: Acknowledges that buffered output was flushed.
            type: object
            properties:
              - name: type
                type: string
                description: flushed
                required: true
        headers: []
        jsonPayloadSchema:
          type: object
          description: Acknowledges that buffered output was flushed.
          required:
            - type
          properties:
            type:
              type: string
              const: flushed
              x-parser-schema-id: <anonymous-schema-42>
          x-parser-schema-id: <anonymous-schema-41>
        title: Flushed
        description: Acknowledges that buffered output was flushed.
        example: |-
          {
            "type": "flushed"
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: TtsFlushed
    bindings: []
    extensions: *ref_0
  - &ref_12
    id: ttsSarvamBulbulV3SendCleared
    title: Tts sarvam bulbul v3 send cleared
    description: Receive cleared confirmation from Bulbul v3
    type: send
    messages:
      - &ref_26
        id: TtsCleared
        contentType: application/json
        payload:
          - name: Cleared
            description: Acknowledges that queued output was cleared.
            type: object
            properties:
              - name: type
                type: string
                description: cleared
                required: true
        headers: []
        jsonPayloadSchema:
          type: object
          description: Acknowledges that queued output was cleared.
          required:
            - type
          properties:
            type:
              type: string
              const: cleared
              x-parser-schema-id: <anonymous-schema-44>
          x-parser-schema-id: <anonymous-schema-43>
        title: Cleared
        description: Acknowledges that queued output was cleared.
        example: |-
          {
            "type": "cleared"
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: TtsCleared
    bindings: []
    extensions: *ref_0
  - &ref_13
    id: ttsSarvamBulbulV3SendAudioEnd
    title: Tts sarvam bulbul v3 send audio end
    description: Receive audio end from Bulbul v3
    type: send
    messages:
      - &ref_27
        id: TtsAudioEnd
        contentType: application/json
        payload:
          - name: Audio End
            description: Signals the end of audio generation.
            type: object
            properties:
              - name: type
                type: string
                description: audio_end
                required: true
              - name: duration
                type: number
                description: Total audio duration
                required: false
        headers: []
        jsonPayloadSchema:
          type: object
          description: Signals the end of audio generation.
          required:
            - type
          properties:
            type:
              type: string
              const: audio_end
              x-parser-schema-id: <anonymous-schema-46>
            duration:
              type: number
              description: Total audio duration
              x-parser-schema-id: <anonymous-schema-47>
          x-parser-schema-id: <anonymous-schema-45>
        title: Audio End
        description: Signals the end of audio generation.
        example: |-
          {
            "type": "audio_end",
            "duration": 3.5
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: TtsAudioEnd
    bindings: []
    extensions: *ref_0
  - &ref_14
    id: ttsSarvamBulbulV3SendError
    title: Tts sarvam bulbul v3 send error
    description: Receive error from Bulbul v3
    type: send
    messages:
      - &ref_28
        id: TtsErrorResponse
        contentType: application/json
        payload:
          - name: Error Response
            description: Indicates an error occurred during synthesis.
            type: object
            properties:
              - name: type
                type: string
                description: error
                required: true
              - name: code
                type: string
                description: Error code.
                enumValues:
                  - auth_error
                  - config_error
                  - rate_limit
                  - provider_error
                required: true
              - name: message
                type: string
                description: Human-readable error description
                required: true
        headers: []
        jsonPayloadSchema:
          type: object
          description: Indicates an error occurred during synthesis.
          required:
            - type
            - code
            - message
          properties:
            type:
              type: string
              const: error
              x-parser-schema-id: <anonymous-schema-49>
            code:
              type: string
              description: Error code.
              enum:
                - auth_error
                - config_error
                - rate_limit
                - provider_error
              x-parser-schema-id: <anonymous-schema-50>
            message:
              type: string
              description: Human-readable error description
              x-parser-schema-id: <anonymous-schema-51>
          x-parser-schema-id: <anonymous-schema-48>
        title: Error Response
        description: Indicates an error occurred during synthesis.
        example: |-
          {
            "type": "error",
            "code": "provider_error",
            "message": "Provider returned an unexpected error"
          }
        bindings: []
        extensions:
          - id: x-parser-unique-object-id
            value: TtsErrorResponse
    bindings: []
    extensions: *ref_0
sendOperations:
  - *ref_1
  - *ref_2
  - *ref_3
  - *ref_4
  - *ref_5
  - *ref_6
receiveOperations:
  - *ref_7
  - *ref_8
  - *ref_9
  - *ref_10
  - *ref_11
  - *ref_12
  - *ref_13
  - *ref_14
sendMessages:
  - *ref_15
  - *ref_16
  - *ref_17
  - *ref_18
  - *ref_19
  - *ref_20
receiveMessages:
  - *ref_21
  - *ref_22
  - *ref_23
  - *ref_24
  - *ref_25
  - *ref_26
  - *ref_27
  - *ref_28
extensions:
  - id: x-parser-unique-object-id
    value: /v1/tts/sarvam/bulbul:v3
securitySchemes:
  - id: bearer
    name: bearer
    type: http
    description: >
      API key issued by SLNG. Pass as `Authorization: Bearer <token>` in the
      WebSocket upgrade request headers.
    scheme: bearer
    extensions: []

````