SLNG · AsyncAPI Specification

SLNG Gateway API - SLNG TTS

Version 0.1.0

SLNG Gateway API

View Spec View on GitHub CompanySpeechVoiceSpeech-to-TextText-to-SpeechVoice AIVoice AgentsTranscriptionSpeech RecognitionArtificial IntelligenceAPI GatewayReal-TimeAsyncAPIEventsWebSockets

Channels

/v1/tts/slng/canopylabs/orpheus:en
Stream English speech synthesis from SLNG-hosted Canopy Labs Orpheus over WebSocket with emotion control and SLNG's unified low-latency TTS protocol.
/v1/tts/slng/rime/arcana:3-en
Text-to-Speech API for generating English speech using Rime Arcana v3 TTS model. Establishes a WebSocket connection for real-time text-to-speech.
/v1/tts/slng/rime/arcana:3-es
Text-to-Speech API for generating Spanish speech using Rime Arcana v3 TTS model. Establishes a WebSocket connection for real-time text-to-speech.
/v1/tts/slng/rime/arcana:3-fr
Text-to-Speech API for generating French speech using Rime Arcana v3 TTS model. Establishes a WebSocket connection for real-time text-to-speech.
/v1/tts/slng/rime/arcana:3-hi
Text-to-Speech API for generating Hindi speech using Rime Arcana v3 TTS model. Establishes a WebSocket connection for real-time text-to-speech.
/v1/tts/slng/rime/coda:0-id
Text-to-Speech API for generating Bahasa Indonesian speech using Rime Coda TTS model. Establishes a WebSocket connection for real-time text-to-speech.
/v1/tts/slng/rime/arcana:ar
Text-to-Speech API for generating Arabic speech from text using Rime Arcana TTS model. Establishes a WebSocket connection for real-time text-to-speech.
/v1/tts/slng/rime/arcana:de
Text-to-Speech API for generating German speech from text using Rime Arcana TTS model. Establishes a WebSocket connection for real-time text-to-speech.
/v1/tts/slng/rime/arcana:en
Text-to-Speech API for generating English speech from text using Rime Arcana TTS model. Establishes a WebSocket connection for real-time text-to-speech.
/v1/tts/slng/rime/arcana:es
Text-to-Speech API for generating Spanish speech from text using Rime Arcana TTS model. Establishes a WebSocket connection for real-time text-to-speech.
/v1/tts/slng/rime/arcana:fr
Text-to-Speech API for generating French speech from text using Rime Arcana TTS model. Establishes a WebSocket connection for real-time text-to-speech.
/v1/tts/slng/deepgram/aura:2-en
Stream low-latency conversational English text-to-speech from SLNG-hosted Deepgram Aura 2 over WebSocket, optimized for production voice agents.
/v1/tts/slng/deepgram/aura:2-es
Stream low-latency conversational Spanish text-to-speech from SLNG-hosted Deepgram Aura 2 over WebSocket, optimized for production voice agents.
/v1/tts/slng/inworld/max:1.5
Stream multilingual speech synthesis from SLNG-hosted Inworld Max 1.5 over WebSocket using SLNG's unified low-latency TTS protocol.

Messages

✉
SlngDeepgramAura2EsMetadataResponse
Metadata Response
Server metadata response after SLNG Deepgram Aura 2 Spanish session initialization.
✉
SlngDeepgramAura2EsTtsInitRequest
Init Request
Initialize an SLNG Deepgram Aura 2 Spanish TTS session.
✉
SlngDeepgramAuraTtsCleared
Cleared
Acknowledges that queued output was cleared from SLNG Deepgram Aura.
✉
SlngDeepgramAuraTtsFlushed
Flushed
Acknowledges that buffered output was flushed from SLNG Deepgram Aura.
✉
SlngDeepgramAuraTtsAudioChunk
Audio Chunk
Raw binary audio buffer from SLNG Deepgram Aura.
✉
SlngDeepgramAura2EnMetadataResponse
Metadata Response
Server metadata response after SLNG Deepgram Aura 2 English session initialization.
✉
SlngInworldMaxInitRequest
Init Request (Inworld Max 1.5)
Initialize an SLNG-hosted Inworld Max 1.5 session.
✉
SlngDeepgramAura2EnTtsInitRequest
Init Request (Aura 2 English)
Initialize an SLNG Deepgram Aura 2 English TTS session.
✉
SlngRimeArcana2TtsTextMessageFr
Text Message (French)
Send French text to synthesize.
✉
SlngRimeArcana2TtsInitRequestFr
Init Request (Arcana French)
Initialize a French Rime Arcana TTS session.
✉
SlngRimeArcana2TtsTextMessageEs
Text Message (Spanish)
Send Spanish text to synthesize.
✉
SlngRimeArcana2TtsInitRequestEs
Init Request (Arcana Spanish)
Initialize a Spanish Rime Arcana TTS session.
✉
SlngRimeArcana2TtsTextMessageEn
Text Message (English)
Send English text to synthesize.
✉
SlngRimeArcana2TtsInitRequestEn
Init Request (Arcana English)
Initialize a English Rime Arcana TTS session.
✉
SlngRimeArcana2TtsTextMessageDe
Text Message (German)
Send German text to synthesize.
✉
SlngRimeArcana2TtsInitRequestDe
Init Request (Arcana German)
Initialize a German Rime Arcana TTS session.
✉
SlngRimeArcana2TtsTextMessageAr
Text Message (Arabic)
Send Arabic text to synthesize.
✉
SlngRimeArcana2TtsInitRequestAr
Init Request (Arcana Arabic)
Initialize a Arabic Rime Arcana TTS session.
✉
SlngRimeArcanaTtsError
Error Response (Rime Arcana)
Indicates an error occurred during Rime Arcana TTS synthesis.
✉
SlngRimeArcanaTtsTimestamps
Timestamps (Rime Arcana)
Word-level timing data for synthesized audio from Rime Arcana.
✉
SlngRimeArcanaTtsAudioChunk
Audio Chunk (Rime Arcana)
Chunk of base64-encoded audio data from Rime Arcana TTS.
✉
SlngRimeArcana3TtsTextMessage
Text Message (Arcana v3)
Send text to synthesize using Rime Arcana v3.
✉
SlngRimeArcana3TtsInitRequest
Init Request (Rime Arcana v3)
Initialize a Rime Arcana v3 TTS session with multilingual support.
✉
SlngRimeArcana3TtsInitRequestEs
Init Request (Rime Arcana v3 Spanish)
Initialize a Spanish Rime Arcana v3 TTS session.
✉
SlngRimeArcana3TtsInitRequestFr
Init Request (Rime Arcana v3 French)
Initialize a French Rime Arcana v3 TTS session.
✉
SlngRimeCoda0IdTtsInitRequest
Init Request (Rime Coda Indonesian)
Initialize a Rime Coda Indonesian TTS session.
✉
SlngRimeCoda0IdTtsTextMessage
Text Message (Rime Coda Indonesian)
Send text to synthesize using Rime Coda Indonesian.
✉
SlngRimeCodaTtsAudioChunk
Audio Chunk (Rime Coda)
Chunk of base64-encoded audio data from Rime Coda TTS.
✉
SlngRimeCodaTtsError
Error Response (Rime Coda)
Indicates an error occurred during Rime Coda TTS synthesis.
✉
TtsErrorResponse
Error Response
Indicates an error occurred during synthesis.
✉
TtsAudioEnd
Audio End
Signals the end of audio generation.
✉
TtsCleared
Cleared
Acknowledges that queued output was cleared.
✉
TtsFlushed
Flushed
Acknowledges that buffered output was flushed.
✉
TtsSegmentEnd
Segment End
Signals the end of a synthesized segment.
✉
TtsSegmentStart
Segment Start
Signals the start of a synthesized segment.
✉
TtsAudioChunk
Audio Chunk
Chunk of base64-encoded audio data.
✉
TtsReadyResponse
Ready Response
Indicates the session is ready to receive messages.
✉
TtsCloseMessage
Close Message
Close the session and stop any further audio.
✉
TtsClearMessage
Clear Message
Clear any queued text/audio from the current session.
✉
TtsFlushMessage
Flush Message
Force any buffered text/audio to be finalized and delivered.
✉
TtsTextMessage
Text Message
Send text to synthesize into audio output.
✉
TtsInitRequest
Init Request
Initialize a TTS session with model and voice configuration.

Servers

wss
production
Production
wss
staging
Staging

AsyncAPI Specification

Raw ↑
asyncapi: 3.0.0
info:
  title: SLNG Gateway API - SLNG TTS
  version: 0.1.0
  description: SLNG Gateway API
  contact:
    name: SLNG Support
    url: https://slng.ai
    email: support@slng.ai
  license:
    name: Proprietary
  tags:
    - name: STT
      description: Speech-to-Text services
    - name: Unmute STT Bridge
      description: SLNG native WebSocket STT protocol bridge.
    - name: Unmute TTS Bridge
      description: SLNG native WebSocket TTS protocol bridge.
servers:
  production:
    host: api.slng.ai
    protocol: wss
    description: Production
    security:
      - $ref: '#/components/securitySchemes/bearer'
  staging:
    host: stageapi.slng.ai
    protocol: wss
    description: Staging
    security:
      - $ref: '#/components/securitySchemes/bearer'
channels:
  /v1/tts/slng/canopylabs/orpheus:en:
    address: /v1/tts/slng/canopylabs/orpheus:en
    title: Orpheus (English)
    summary: Orpheus (English)
    description: >-
      Stream English speech synthesis from SLNG-hosted Canopy Labs Orpheus over
      WebSocket with emotion control and SLNG's unified low-latency TTS
      protocol.
    tags:
      - name: Orpheus English
    servers:
      - $ref: '#/servers/production'
    messages:
      TtsInitRequest:
        $ref: '#/components/messages/TtsInitRequest'
      TtsTextMessage:
        $ref: '#/components/messages/TtsTextMessage'
      TtsFlushMessage:
        $ref: '#/components/messages/TtsFlushMessage'
      TtsClearMessage:
        $ref: '#/components/messages/TtsClearMessage'
      TtsCloseMessage:
        $ref: '#/components/messages/TtsCloseMessage'
      TtsReadyResponse:
        $ref: '#/components/messages/TtsReadyResponse'
      TtsAudioChunk:
        $ref: '#/components/messages/TtsAudioChunk'
      TtsSegmentStart:
        $ref: '#/components/messages/TtsSegmentStart'
      TtsSegmentEnd:
        $ref: '#/components/messages/TtsSegmentEnd'
      TtsFlushed:
        $ref: '#/components/messages/TtsFlushed'
      TtsCleared:
        $ref: '#/components/messages/TtsCleared'
      TtsAudioEnd:
        $ref: '#/components/messages/TtsAudioEnd'
      TtsErrorResponse:
        $ref: '#/components/messages/TtsErrorResponse'
    bindings:
      ws:
        method: GET
        headers:
          $ref: '#/components/schemas/WebsocketHeadersSlngOrpheus'
  /v1/tts/slng/rime/arcana:3-en:
    address: /v1/tts/slng/rime/arcana:3-en
    title: Arcana v3 (English)
    summary: Arcana v3 (English)
    description: >-
      Text-to-Speech API for generating English speech using Rime Arcana v3 TTS
      model. Establishes a WebSocket connection for real-time text-to-speech.
    tags:
      - name: Rime Arcana v3
    servers:
      - $ref: '#/servers/production'
    messages:
      SlngRimeArcana3TtsInitRequest:
        $ref: '#/components/messages/SlngRimeArcana3TtsInitRequest'
      SlngRimeArcana3TtsTextMessage:
        $ref: '#/components/messages/SlngRimeArcana3TtsTextMessage'
      TtsFlushMessage:
        $ref: '#/components/messages/TtsFlushMessage'
      TtsClearMessage:
        $ref: '#/components/messages/TtsClearMessage'
      TtsCloseMessage:
        $ref: '#/components/messages/TtsCloseMessage'
      SlngRimeArcanaTtsAudioChunk:
        $ref: '#/components/messages/SlngRimeArcanaTtsAudioChunk'
      SlngRimeArcanaTtsTimestamps:
        $ref: '#/components/messages/SlngRimeArcanaTtsTimestamps'
      SlngRimeArcanaTtsError:
        $ref: '#/components/messages/SlngRimeArcanaTtsError'
    bindings:
      ws:
        method: GET
        headers:
          $ref: '#/components/schemas/WebsocketHeadersSlngArcanaV3En'
  /v1/tts/slng/rime/arcana:3-es:
    address: /v1/tts/slng/rime/arcana:3-es
    title: Arcana v3 (Spanish)
    summary: Arcana v3 (Spanish)
    description: >-
      Text-to-Speech API for generating Spanish speech using Rime Arcana v3 TTS
      model. Establishes a WebSocket connection for real-time text-to-speech.
    tags:
      - name: Rime Arcana v3
    servers:
      - $ref: '#/servers/production'
    messages:
      SlngRimeArcana3TtsInitRequestEs:
        $ref: '#/components/messages/SlngRimeArcana3TtsInitRequestEs'
      SlngRimeArcana3TtsTextMessage:
        $ref: '#/components/messages/SlngRimeArcana3TtsTextMessage'
      TtsFlushMessage:
        $ref: '#/components/messages/TtsFlushMessage'
      TtsClearMessage:
        $ref: '#/components/messages/TtsClearMessage'
      TtsCloseMessage:
        $ref: '#/components/messages/TtsCloseMessage'
      SlngRimeArcanaTtsAudioChunk:
        $ref: '#/components/messages/SlngRimeArcanaTtsAudioChunk'
      SlngRimeArcanaTtsTimestamps:
        $ref: '#/components/messages/SlngRimeArcanaTtsTimestamps'
      SlngRimeArcanaTtsError:
        $ref: '#/components/messages/SlngRimeArcanaTtsError'
    bindings:
      ws:
        method: GET
        headers:
          $ref: '#/components/schemas/WebsocketHeadersSlngArcanaV3Es'
  /v1/tts/slng/rime/arcana:3-fr:
    address: /v1/tts/slng/rime/arcana:3-fr
    title: Arcana v3 (French)
    summary: Arcana v3 (French)
    description: >-
      Text-to-Speech API for generating French speech using Rime Arcana v3 TTS
      model. Establishes a WebSocket connection for real-time text-to-speech.
    tags:
      - name: Rime Arcana v3
    servers:
      - $ref: '#/servers/production'
    messages:
      SlngRimeArcana3TtsInitRequestFr:
        $ref: '#/components/messages/SlngRimeArcana3TtsInitRequestFr'
      SlngRimeArcana3TtsTextMessage:
        $ref: '#/components/messages/SlngRimeArcana3TtsTextMessage'
      TtsFlushMessage:
        $ref: '#/components/messages/TtsFlushMessage'
      TtsClearMessage:
        $ref: '#/components/messages/TtsClearMessage'
      TtsCloseMessage:
        $ref: '#/components/messages/TtsCloseMessage'
      SlngRimeArcanaTtsAudioChunk:
        $ref: '#/components/messages/SlngRimeArcanaTtsAudioChunk'
      SlngRimeArcanaTtsTimestamps:
        $ref: '#/components/messages/SlngRimeArcanaTtsTimestamps'
      SlngRimeArcanaTtsError:
        $ref: '#/components/messages/SlngRimeArcanaTtsError'
    bindings:
      ws:
        method: GET
        headers:
          $ref: '#/components/schemas/WebsocketHeadersSlngArcanaV3Fr'
  /v1/tts/slng/rime/arcana:3-hi:
    address: /v1/tts/slng/rime/arcana:3-hi
    title: Arcana v3 (Hindi)
    summary: Arcana v3 (Hindi)
    description: >-
      Text-to-Speech API for generating Hindi speech using Rime Arcana v3 TTS
      model. Establishes a WebSocket connection for real-time text-to-speech.
    tags:
      - name: Rime Arcana v3
    servers:
      - $ref: '#/servers/production'
    messages:
      SlngRimeArcana3TtsInitRequest:
        $ref: '#/components/messages/SlngRimeArcana3TtsInitRequest'
      SlngRimeArcana3TtsTextMessage:
        $ref: '#/components/messages/SlngRimeArcana3TtsTextMessage'
      TtsFlushMessage:
        $ref: '#/components/messages/TtsFlushMessage'
      TtsClearMessage:
        $ref: '#/components/messages/TtsClearMessage'
      TtsCloseMessage:
        $ref: '#/components/messages/TtsCloseMessage'
      SlngRimeArcanaTtsAudioChunk:
        $ref: '#/components/messages/SlngRimeArcanaTtsAudioChunk'
      SlngRimeArcanaTtsTimestamps:
        $ref: '#/components/messages/SlngRimeArcanaTtsTimestamps'
      SlngRimeArcanaTtsError:
        $ref: '#/components/messages/SlngRimeArcanaTtsError'
    bindings:
      ws:
        method: GET
        headers:
          $ref: '#/components/schemas/WebsocketHeadersSlngArcanaV3Hi'
  /v1/tts/slng/rime/coda:0-id:
    address: /v1/tts/slng/rime/coda:0-id
    title: Coda (Indonesian)
    summary: Coda (Indonesian)
    description: >-
      Text-to-Speech API for generating Bahasa Indonesian speech using Rime Coda
      TTS model. Establishes a WebSocket connection for real-time
      text-to-speech.
    tags:
      - name: Rime Coda
    servers:
      - $ref: '#/servers/production'
    messages:
      SlngRimeCoda0IdTtsInitRequest:
        $ref: '#/components/messages/SlngRimeCoda0IdTtsInitRequest'
      SlngRimeCoda0IdTtsTextMessage:
        $ref: '#/components/messages/SlngRimeCoda0IdTtsTextMessage'
      TtsFlushMessage:
        $ref: '#/components/messages/TtsFlushMessage'
      TtsClearMessage:
        $ref: '#/components/messages/TtsClearMessage'
      TtsCloseMessage:
        $ref: '#/components/messages/TtsCloseMessage'
      SlngRimeCodaTtsAudioChunk:
        $ref: '#/components/messages/SlngRimeCodaTtsAudioChunk'
      SlngRimeCodaTtsError:
        $ref: '#/components/messages/SlngRimeCodaTtsError'
    bindings:
      ws:
        method: GET
        headers:
          $ref: '#/components/schemas/WebsocketHeadersSlngCoda0Id'
  /v1/tts/slng/rime/arcana:ar:
    address: /v1/tts/slng/rime/arcana:ar
    title: Arcana v2 (Arabic)
    summary: Arcana v2 (Arabic)
    description: >-
      Text-to-Speech API for generating Arabic speech from text using Rime
      Arcana TTS model. Establishes a WebSocket connection for real-time
      text-to-speech.
    tags:
      - name: Rime Arcana v2
    servers:
      - $ref: '#/servers/production'
    messages:
      SlngRimeArcana2TtsInitRequestAr:
        $ref: '#/components/messages/SlngRimeArcana2TtsInitRequestAr'
      SlngRimeArcana2TtsTextMessageAr:
        $ref: '#/components/messages/SlngRimeArcana2TtsTextMessageAr'
      TtsFlushMessage:
        $ref: '#/components/messages/TtsFlushMessage'
      TtsClearMessage:
        $ref: '#/components/messages/TtsClearMessage'
      TtsCloseMessage:
        $ref: '#/components/messages/TtsCloseMessage'
      SlngRimeArcanaTtsAudioChunk:
        $ref: '#/components/messages/SlngRimeArcanaTtsAudioChunk'
      SlngRimeArcanaTtsTimestamps:
        $ref: '#/components/messages/SlngRimeArcanaTtsTimestamps'
      SlngRimeArcanaTtsError:
        $ref: '#/components/messages/SlngRimeArcanaTtsError'
    bindings:
      ws:
        method: GET
        headers:
          $ref: '#/components/schemas/WebsocketHeadersSlngArcanaV1Ar'
  /v1/tts/slng/rime/arcana:de:
    address: /v1/tts/slng/rime/arcana:de
    title: Arcana v2 (German)
    summary: Arcana v2 (German)
    description: >-
      Text-to-Speech API for generating German speech from text using Rime
      Arcana TTS model. Establishes a WebSocket connection for real-time
      text-to-speech.
    tags:
      - name: Rime Arcana v2
    servers:
      - $ref: '#/servers/production'
    messages:
      SlngRimeArcana2TtsInitRequestDe:
        $ref: '#/components/messages/SlngRimeArcana2TtsInitRequestDe'
      SlngRimeArcana2TtsTextMessageDe:
        $ref: '#/components/messages/SlngRimeArcana2TtsTextMessageDe'
      TtsFlushMessage:
        $ref: '#/components/messages/TtsFlushMessage'
      TtsClearMessage:
        $ref: '#/components/messages/TtsClearMessage'
      TtsCloseMessage:
        $ref: '#/components/messages/TtsCloseMessage'
      SlngRimeArcanaTtsAudioChunk:
        $ref: '#/components/messages/SlngRimeArcanaTtsAudioChunk'
      SlngRimeArcanaTtsTimestamps:
        $ref: '#/components/messages/SlngRimeArcanaTtsTimestamps'
      SlngRimeArcanaTtsError:
        $ref: '#/components/messages/SlngRimeArcanaTtsError'
    bindings:
      ws:
        method: GET
        headers:
          $ref: '#/components/schemas/WebsocketHeadersSlngArcanaV1De'
  /v1/tts/slng/rime/arcana:en:
    address: /v1/tts/slng/rime/arcana:en
    title: Arcana v2 (English)
    summary: Arcana v2 (English)
    description: >-
      Text-to-Speech API for generating English speech from text using Rime
      Arcana TTS model. Establishes a WebSocket connection for real-time
      text-to-speech.
    tags:
      - name: Rime Arcana v2
    servers:
      - $ref: '#/servers/production'
    messages:
      SlngRimeArcana2TtsInitRequestEn:
        $ref: '#/components/messages/SlngRimeArcana2TtsInitRequestEn'
      SlngRimeArcana2TtsTextMessageEn:
        $ref: '#/components/messages/SlngRimeArcana2TtsTextMessageEn'
      TtsFlushMessage:
        $ref: '#/components/messages/TtsFlushMessage'
      TtsClearMessage:
        $ref: '#/components/messages/TtsClearMessage'
      TtsCloseMessage:
        $ref: '#/components/messages/TtsCloseMessage'
      SlngRimeArcanaTtsAudioChunk:
        $ref: '#/components/messages/SlngRimeArcanaTtsAudioChunk'
      SlngRimeArcanaTtsTimestamps:
        $ref: '#/components/messages/SlngRimeArcanaTtsTimestamps'
      SlngRimeArcanaTtsError:
        $ref: '#/components/messages/SlngRimeArcanaTtsError'
    bindings:
      ws:
        method: GET
        headers:
          $ref: '#/components/schemas/WebsocketHeadersSlngArcanaV1En'
  /v1/tts/slng/rime/arcana:es:
    address: /v1/tts/slng/rime/arcana:es
    title: Arcana v2 (Spanish)
    summary: Arcana v2 (Spanish)
    description: >-
      Text-to-Speech API for generating Spanish speech from text using Rime
      Arcana TTS model. Establishes a WebSocket connection for real-time
      text-to-speech.
    tags:
      - name: Rime Arcana v2
    servers:
      - $ref: '#/servers/production'
    messages:
      SlngRimeArcana2TtsInitRequestEs:
        $ref: '#/components/messages/SlngRimeArcana2TtsInitRequestEs'
      SlngRimeArcana2TtsTextMessageEs:
        $ref: '#/components/messages/SlngRimeArcana2TtsTextMessageEs'
      TtsFlushMessage:
        $ref: '#/components/messages/TtsFlushMessage'
      TtsClearMessage:
        $ref: '#/components/messages/TtsClearMessage'
      TtsCloseMessage:
        $ref: '#/components/messages/TtsCloseMessage'
      SlngRimeArcanaTtsAudioChunk:
        $ref: '#/components/messages/SlngRimeArcanaTtsAudioChunk'
      SlngRimeArcanaTtsTimestamps:
        $ref: '#/components/messages/SlngRimeArcanaTtsTimestamps'
      SlngRimeArcanaTtsError:
        $ref: '#/components/messages/SlngRimeArcanaTtsError'
    bindings:
      ws:
        method: GET
        headers:
          $ref: '#/components/schemas/WebsocketHeadersSlngArcanaV1Es'
  /v1/tts/slng/rime/arcana:fr:
    address: /v1/tts/slng/rime/arcana:fr
    title: Arcana v2 (French)
    summary: Arcana v2 (French)
    description: >-
      Text-to-Speech API for generating French speech from text using Rime
      Arcana TTS model. Establishes a WebSocket connection for real-time
      text-to-speech.
    tags:
      - name: Rime Arcana v2
    servers:
      - $ref: '#/servers/production'
    messages:
      SlngRimeArcana2TtsInitRequestFr:
        $ref: '#/components/messages/SlngRimeArcana2TtsInitRequestFr'
      SlngRimeArcana2TtsTextMessageFr:
        $ref: '#/components/messages/SlngRimeArcana2TtsTextMessageFr'
      TtsFlushMessage:
        $ref: '#/components/messages/TtsFlushMessage'
      TtsClearMessage:
        $ref: '#/components/messages/TtsClearMessage'
      TtsCloseMessage:
        $ref: '#/components/messages/TtsCloseMessage'
      SlngRimeArcanaTtsAudioChunk:
        $ref: '#/components/messages/SlngRimeArcanaTtsAudioChunk'
      SlngRimeArcanaTtsTimestamps:
        $ref: '#/components/messages/SlngRimeArcanaTtsTimestamps'
      SlngRimeArcanaTtsError:
        $ref: '#/components/messages/SlngRimeArcanaTtsError'
    bindings:
      ws:
        method: GET
        headers:
          $ref: '#/components/schemas/WebsocketHeadersSlngArcanaV1Fr'
  /v1/tts/slng/deepgram/aura:2-en:
    address: /v1/tts/slng/deepgram/aura:2-en
    title: Aura 2 (English)
    summary: Aura 2 (English)
    description: >-
      Stream low-latency conversational English text-to-speech from SLNG-hosted
      Deepgram Aura 2 over WebSocket, optimized for production voice agents.
    tags:
      - name: Deepgram Aura 2
    servers:
      - $ref: '#/servers/production'
    messages:
      SlngDeepgramAura2EnTtsInitRequest:
        $ref: '#/components/messages/SlngDeepgramAura2EnTtsInitRequest'
      TtsTextMessage:
        $ref: '#/components/messages/TtsTextMessage'
      TtsFlushMessage:
        $ref: '#/components/messages/TtsFlushMessage'
      TtsClearMessage:
        $ref: '#/components/messages/TtsClearMessage'
      TtsCloseMessage:
        $ref: '#/components/messages/TtsCloseMessage'
      SlngDeepgramAura2EnMetadataResponse:
        $ref: '#/components/messages/SlngDeepgramAura2EnMetadataResponse'
      SlngDeepgramAuraTtsAudioChunk:
        $ref: '#/components/messages/SlngDeepgramAuraTtsAudioChunk'
      SlngDeepgramAuraTtsFlushed:
        $ref: '#/components/messages/SlngDeepgramAuraTtsFlushed'
      SlngDeepgramAuraTtsCleared:
        $ref: '#/components/messages/SlngDeepgramAuraTtsCleared'
      TtsErrorResponse:
        $ref: '#/components/messages/TtsErrorResponse'
    bindings:
      ws:
        method: GET
        headers:
          $ref: '#/components/schemas/WebsocketHeadersSlngAuraEn'
  /v1/tts/slng/deepgram/aura:2-es:
    address: /v1/tts/slng/deepgram/aura:2-es
    title: Aura 2 (Spanish)
    summary: Aura 2 (Spanish)
    description: >-
      Stream low-latency conversational Spanish text-to-speech from SLNG-hosted
      Deepgram Aura 2 over WebSocket, optimized for production voice agents.
    tags:
      - name: Deepgram Aura 2
    servers:
      - $ref: '#/servers/production'
    messages:
      SlngDeepgramAura2EsTtsInitRequest:
        $ref: '#/components/messages/SlngDeepgramAura2EsTtsInitRequest'
      TtsTextMessage:
        $ref: '#/components/messages/TtsTextMessage'
      TtsFlushMessage:
        $ref: '#/components/messages/TtsFlushMessage'
      TtsClearMessage:
        $ref: '#/components/messages/TtsClearMessage'
      TtsCloseMessage:
        $ref: '#/components/messages/TtsCloseMessage'
      SlngDeepgramAura2EsMetadataResponse:
        $ref: '#/components/messages/SlngDeepgramAura2EsMetadataResponse'
      SlngDeepgramAuraTtsAudioChunk:
        $ref: '#/components/messages/SlngDeepgramAuraTtsAudioChunk'
      SlngDeepgramAuraTtsFlushed:
        $ref: '#/components/messages/SlngDeepgramAuraTtsFlushed'
      SlngDeepgramAuraTtsCleared:
        $ref: '#/components/messages/SlngDeepgramAuraTtsCleared'
      TtsErrorResponse:
        $ref: '#/components/messages/TtsErrorResponse'
    bindings:
      ws:
        method: GET
        headers:
          $ref: '#/components/schemas/WebsocketHeadersSlngAuraEs'
  /v1/tts/slng/inworld/max:1.5:
    address: /v1/tts/slng/inworld/max:1.5
    title: Inworld Max 1.5
    summary: Inworld Max 1.5
    description: >-
      Stream multilingual speech synthesis from SLNG-hosted Inworld Max 1.5 over
      WebSocket using SLNG's unified low-latency TTS protocol.
    tags:
      - name: Inworld Max 1.5
    servers:
      - $ref: '#/servers/production'
    messages:
      SlngInworldMaxInitRequest:
        $ref: '#/components/messages/SlngInworldMaxInitRequest'
      TtsTextMessage:
        $ref: '#/components/messages/TtsTextMessage'
      TtsFlushMessage:
        $ref: '#/components/messages/TtsFlushMessage'
      TtsCloseMessage:
        $ref: '#/components/messages/TtsCloseMessage'
      TtsAudioChunk:
        $ref: '#/components/messages/TtsAudioChunk'
      TtsAudioEnd:
        $ref: '#/components/messages/TtsAudioEnd'
      TtsErrorResponse:
        $ref: '#/components/messages/TtsErrorResponse'
    bindings:
      ws:
        method: GET
        headers:
          $ref: '#/components/schemas/WebsocketHeadersSlngInworldMax'
operations:
  ttsSlngDeepgramAura2EnReceiveInit:
    action: receive
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1deepgram~1aura:2-en'
    summary: Initialize session on Aura 2 (English)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1deepgram~1aura:2-en/messages/SlngDeepgramAura2EnTtsInitRequest
    description: Initialize session on Aura 2 (English)
    tags: []
  ttsSlngDeepgramAura2EnReceiveText:
    action: receive
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1deepgram~1aura:2-en'
    summary: Send text to Aura 2 (English)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1deepgram~1aura:2-en/messages/TtsTextMessage
    description: Send text to Aura 2 (English)
    tags: []
  ttsSlngDeepgramAura2EnReceiveFlush:
    action: receive
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1deepgram~1aura:2-en'
    summary: Flush buffered output on Aura 2 (English)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1deepgram~1aura:2-en/messages/TtsFlushMessage
    description: Flush buffered output on Aura 2 (English)
    tags: []
  ttsSlngDeepgramAura2EnReceiveClear:
    action: receive
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1deepgram~1aura:2-en'
    summary: Clear queued output on Aura 2 (English)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1deepgram~1aura:2-en/messages/TtsClearMessage
    description: Clear queued output on Aura 2 (English)
    tags: []
  ttsSlngDeepgramAura2EnReceiveClose:
    action: receive
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1deepgram~1aura:2-en'
    summary: Close session on Aura 2 (English)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1deepgram~1aura:2-en/messages/TtsCloseMessage
    description: Close session on Aura 2 (English)
    tags: []
  ttsSlngDeepgramAura2EnSendMetadata:
    action: send
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1deepgram~1aura:2-en'
    summary: Receive metadata response from Aura 2 (English)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1deepgram~1aura:2-en/messages/SlngDeepgramAura2EnMetadataResponse
    description: Receive metadata response from Aura 2 (English)
    tags: []
  ttsSlngDeepgramAura2EnSendAudioChunk:
    action: send
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1deepgram~1aura:2-en'
    summary: Receive audio chunk from Aura 2 (English)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1deepgram~1aura:2-en/messages/SlngDeepgramAuraTtsAudioChunk
    description: Receive audio chunk from Aura 2 (English)
    tags: []
  ttsSlngDeepgramAura2EnSendFlushed:
    action: send
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1deepgram~1aura:2-en'
    summary: Receive flushed confirmation from Aura 2 (English)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1deepgram~1aura:2-en/messages/SlngDeepgramAuraTtsFlushed
    description: Receive flushed confirmation from Aura 2 (English)
    tags: []
  ttsSlngDeepgramAura2EnSendCleared:
    action: send
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1deepgram~1aura:2-en'
    summary: Receive cleared confirmation from Aura 2 (English)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1deepgram~1aura:2-en/messages/SlngDeepgramAuraTtsCleared
    description: Receive cleared confirmation from Aura 2 (English)
    tags: []
  ttsSlngDeepgramAura2EnSendError:
    action: send
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1deepgram~1aura:2-en'
    summary: Receive error from Aura 2 (English)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1deepgram~1aura:2-en/messages/TtsErrorResponse
    description: Receive error from Aura 2 (English)
    tags: []
  ttsSlngDeepgramAura2EsReceiveInit:
    action: receive
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1deepgram~1aura:2-es'
    summary: Initialize session on Aura 2 (Spanish)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1deepgram~1aura:2-es/messages/SlngDeepgramAura2EsTtsInitRequest
    description: Initialize session on Aura 2 (Spanish)
    tags: []
  ttsSlngDeepgramAura2EsReceiveText:
    action: receive
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1deepgram~1aura:2-es'
    summary: Send text to Aura 2 (Spanish)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1deepgram~1aura:2-es/messages/TtsTextMessage
    description: Send text to Aura 2 (Spanish)
    tags: []
  ttsSlngDeepgramAura2EsReceiveFlush:
    action: receive
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1deepgram~1aura:2-es'
    summary: Flush buffered output on Aura 2 (Spanish)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1deepgram~1aura:2-es/messages/TtsFlushMessage
    description: Flush buffered output on Aura 2 (Spanish)
    tags: []
  ttsSlngDeepgramAura2EsReceiveClear:
    action: receive
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1deepgram~1aura:2-es'
    summary: Clear queued output on Aura 2 (Spanish)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1deepgram~1aura:2-es/messages/TtsClearMessage
    description: Clear queued output on Aura 2 (Spanish)
    tags: []
  ttsSlngDeepgramAura2EsReceiveClose:
    action: receive
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1deepgram~1aura:2-es'
    summary: Close session on Aura 2 (Spanish)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1deepgram~1aura:2-es/messages/TtsCloseMessage
    description: Close session on Aura 2 (Spanish)
    tags: []
  ttsSlngDeepgramAura2EsSendMetadata:
    action: send
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1deepgram~1aura:2-es'
    summary: Receive metadata response from Aura 2 (Spanish)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1deepgram~1aura:2-es/messages/SlngDeepgramAura2EsMetadataResponse
    description: Receive metadata response from Aura 2 (Spanish)
    tags: []
  ttsSlngDeepgramAura2EsSendAudioChunk:
    action: send
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1deepgram~1aura:2-es'
    summary: Receive audio chunk from Aura 2 (Spanish)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1deepgram~1aura:2-es/messages/SlngDeepgramAuraTtsAudioChunk
    description: Receive audio chunk from Aura 2 (Spanish)
    tags: []
  ttsSlngDeepgramAura2EsSendFlushed:
    action: send
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1deepgram~1aura:2-es'
    summary: Receive flushed confirmation from Aura 2 (Spanish)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1deepgram~1aura:2-es/messages/SlngDeepgramAuraTtsFlushed
    description: Receive flushed confirmation from Aura 2 (Spanish)
    tags: []
  ttsSlngDeepgramAura2EsSendCleared:
    action: send
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1deepgram~1aura:2-es'
    summary: Receive cleared confirmation from Aura 2 (Spanish)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1deepgram~1aura:2-es/messages/SlngDeepgramAuraTtsCleared
    description: Receive cleared confirmation from Aura 2 (Spanish)
    tags: []
  ttsSlngDeepgramAura2EsSendError:
    action: send
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1deepgram~1aura:2-es'
    summary: Receive error from Aura 2 (Spanish)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1deepgram~1aura:2-es/messages/TtsErrorResponse
    description: Receive error from Aura 2 (Spanish)
    tags: []
  ttsSlngInworldMaxReceiveInit:
    action: receive
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1inworld~1max:1.5'
    summary: Initialize session on Inworld Max 1.5
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1inworld~1max:1.5/messages/SlngInworldMaxInitRequest
    description: Initialize session on Inworld Max 1.5
    tags: []
  ttsSlngInworldMaxReceiveText:
    action: receive
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1inworld~1max:1.5'
    summary: Send text to Inworld Max 1.5
    messages:
      - $ref: '#/channels/~1v1~1tts~1slng~1inworld~1max:1.5/messages/TtsTextMessage'
    description: Send text to Inworld Max 1.5
    tags: []
  ttsSlngInworldMaxReceiveFlush:
    action: receive
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1inworld~1max:1.5'
    summary: Flush buffered output on Inworld Max 1.5
    messages:
      - $ref: '#/channels/~1v1~1tts~1slng~1inworld~1max:1.5/messages/TtsFlushMessage'
    description: Flush buffered output on Inworld Max 1.5
    tags: []
  ttsSlngInworldMaxReceiveClose:
    action: receive
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1inworld~1max:1.5'
    summary: Close session on Inworld Max 1.5
    messages:
      - $ref: '#/channels/~1v1~1tts~1slng~1inworld~1max:1.5/messages/TtsCloseMessage'
    description: Close session on Inworld Max 1.5
    tags: []
  ttsSlngInworldMaxSendAudioChunk:
    action: send
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1inworld~1max:1.5'
    summary: Receive audio chunk from Inworld Max 1.5
    messages:
      - $ref: '#/channels/~1v1~1tts~1slng~1inworld~1max:1.5/messages/TtsAudioChunk'
    description: Receive audio chunk from Inworld Max 1.5
    tags: []
  ttsSlngInworldMaxSendAudioEnd:
    action: send
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1inworld~1max:1.5'
    summary: Receive audio end from Inworld Max 1.5
    messages:
      - $ref: '#/channels/~1v1~1tts~1slng~1inworld~1max:1.5/messages/TtsAudioEnd'
    description: Receive audio end from Inworld Max 1.5
    tags: []
  ttsSlngInworldMaxSendError:
    action: send
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1inworld~1max:1.5'
    summary: Receive error from Inworld Max 1.5
    messages:
      - $ref: '#/channels/~1v1~1tts~1slng~1inworld~1max:1.5/messages/TtsErrorResponse'
    description: Receive error from Inworld Max 1.5
    tags: []
  ttsOrpheusEnReceiveInit:
    action: receive
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1canopylabs~1orpheus:en'
    summary: Initialize session on Orpheus (English)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1canopylabs~1orpheus:en/messages/TtsInitRequest
    description: Initialize session on Orpheus (English)
    tags: []
  ttsOrpheusEnReceiveText:
    action: receive
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1canopylabs~1orpheus:en'
    summary: Send text to Orpheus (English)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1canopylabs~1orpheus:en/messages/TtsTextMessage
    description: Send text to Orpheus (English)
    tags: []
  ttsOrpheusEnReceiveFlush:
    action: receive
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1canopylabs~1orpheus:en'
    summary: Flush buffered output on Orpheus (English)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1canopylabs~1orpheus:en/messages/TtsFlushMessage
    description: Flush buffered output on Orpheus (English)
    tags: []
  ttsOrpheusEnReceiveClear:
    action: receive
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1canopylabs~1orpheus:en'
    summary: Clear queued output on Orpheus (English)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1canopylabs~1orpheus:en/messages/TtsClearMessage
    description: Clear queued output on Orpheus (English)
    tags: []
  ttsOrpheusEnReceiveClose:
    action: receive
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1canopylabs~1orpheus:en'
    summary: Close session on Orpheus (English)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1canopylabs~1orpheus:en/messages/TtsCloseMessage
    description: Close session on Orpheus (English)
    tags: []
  ttsOrpheusEnSendReady:
    action: send
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1canopylabs~1orpheus:en'
    summary: Receive ready signal from Orpheus (English)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1canopylabs~1orpheus:en/messages/TtsReadyResponse
    description: Receive ready signal from Orpheus (English)
    tags: []
  ttsOrpheusEnSendAudioChunk:
    action: send
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1canopylabs~1orpheus:en'
    summary: Receive audio chunk from Orpheus (English)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1canopylabs~1orpheus:en/messages/TtsAudioChunk
    description: Receive audio chunk from Orpheus (English)
    tags: []
  ttsOrpheusEnSendSegmentStart:
    action: send
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1canopylabs~1orpheus:en'
    summary: Receive segment start from Orpheus (English)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1canopylabs~1orpheus:en/messages/TtsSegmentStart
    description: Receive segment start from Orpheus (English)
    tags: []
  ttsOrpheusEnSendSegmentEnd:
    action: send
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1canopylabs~1orpheus:en'
    summary: Receive segment end from Orpheus (English)
    messages:
      - $ref: >-
          #/channels/~1v1~1tts~1slng~1canopylabs~1orpheus:en/messages/TtsSegmentEnd
    description: Receive segment end from Orpheus (English)
    tags: []
  ttsOrpheusEnSendFlushed:
    action: send
    channel:
      $ref: '#/channels/~1v1~1tts~1slng~1canopylabs~1orpheus:en'
    summary: Receive flushed confirmation from Orpheus (English)
    messages:
      - $ref: '#/channels/~1v1~1tts~1slng~1canopylabs~1orpheus:en/messages/TtsFlushed'
    description: Receive flushed confirmation from Orpheus (English)
    tags: 

# --- truncated at 32 KB (143 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/slng/refs/heads/main/asyncapi/slng-tts-slng-asyncapi.yml

Work with this as data

Every AsyncAPI spec here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for asyncapi

4 MCP tools reach this
  • find_asyncapisBrowse and filter every AsyncAPI spec in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This AsyncAPI spec
curl "https://apis.io/api/v1/asyncapis/slng-tts-slng-asyncapi"
All asyncapi
curl "https://apis.io/api/v1/asyncapis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.