> ## 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.

# Nova 3

> Transcribe audio using Deepgram Nova 3 with VAD and speaker diarization.

**Hosting: routed through SLNG (Deepgram).** This model runs on Deepgram's servers; SLNG proxies each request through the nearest regional gateway. Available in Netherlands, Germany, United States (East, West), Australia, Brazil, United Kingdom, Indonesia, Israel, India, Japan, Singapore, South Africa. Send requests to your region's gateway base URL: `https://eu-north.api.slng.ai`, `https://eu-west.api.slng.ai`, `https://us-east.api.slng.ai`, `https://us-west.api.slng.ai`, `https://au.api.slng.ai`, `https://br.api.slng.ai`, `https://gb.api.slng.ai`, `https://id.api.slng.ai`, `https://il.api.slng.ai`, `https://in.api.slng.ai`, `https://jp.api.slng.ai`, `https://sg.api.slng.ai`, `https://za.api.slng.ai`.


## OpenAPI

````yaml api-reference/openapi/stt-deepgram.oas.yaml POST /v1/stt/deepgram/nova:3
openapi: 3.0.3
info:
  title: SLNG Gateway API - Deepgram STT
  version: 0.1.0
  description: Unified API for speech-to-text and text-to-speech services.
  contact:
    name: SLNG Support
    email: support@slng.ai
servers:
  - url: https://eu-north.api.slng.ai
    description: 'Regional gateway: European Union (North) (eu-north)'
  - url: https://eu-west.api.slng.ai
    description: 'Regional gateway: European Union (West) (eu-west)'
  - url: https://us-east.api.slng.ai
    description: 'Regional gateway: United States (East) (us-east)'
  - url: https://us-west.api.slng.ai
    description: 'Regional gateway: United States (West) (us-west)'
  - url: https://au.api.slng.ai
    description: 'Regional gateway: Australia (au)'
  - url: https://br.api.slng.ai
    description: 'Regional gateway: Brazil (br)'
  - url: https://gb.api.slng.ai
    description: 'Regional gateway: United Kingdom (gb)'
  - url: https://id.api.slng.ai
    description: 'Regional gateway: Indonesia (id)'
  - url: https://il.api.slng.ai
    description: 'Regional gateway: Israel (il)'
  - url: https://in.api.slng.ai
    description: 'Regional gateway: India (in)'
  - url: https://jp.api.slng.ai
    description: 'Regional gateway: Japan (jp)'
  - url: https://sg.api.slng.ai
    description: 'Regional gateway: Singapore (sg)'
  - url: https://za.api.slng.ai
    description: 'Regional gateway: South Africa (za)'
security:
  - BearerAuth: []
tags:
  - name: Deepgram Nova 3
    description: Deepgram Nova 3 with VAD and speaker diarization.
  - name: Deepgram Nova 3 Medical
    description: Deepgram Nova 3 Medical with specialized vocabulary.
paths:
  /v1/stt/deepgram/nova:3:
    post:
      tags:
        - Deepgram Nova 3
      summary: Nova 3
      description: Transcribe audio using Deepgram Nova 3 with VAD and speaker diarization.
      operationId: deepgram/nova:3
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/DeepgramNova3Request'
            examples:
              binary:
                summary: Binary audio upload
                value:
                  audio: <binary>
                  language: en
          application/json:
            schema:
              $ref: '#/components/schemas/DeepgramNova3Request'
            examples:
              url:
                summary: URL-based transcription
                value:
                  url: https://docs.slng.ai/audio/hello.wav
                  language: en
      responses:
        '200':
          $ref: '#/components/responses/DeepgramSttSuccess'
        '400':
          $ref: '#/components/responses/ProviderBadRequest'
        '401':
          $ref: '#/components/responses/ProviderUnauthorized'
        '413':
          $ref: '#/components/responses/ProviderPayloadTooLarge'
        '500':
          $ref: '#/components/responses/ProviderInternalServerError'
        '503':
          $ref: '#/components/responses/ProviderServiceUnavailable'
components:
  schemas:
    DeepgramNova3Request:
      allOf:
        - $ref: '#/components/schemas/SttAudioRequestBase'
        - $ref: '#/components/schemas/DeepgramSttOptionsBase'
        - type: object
          properties:
            language:
              $ref: '#/components/schemas/DeepgramNova3Language'
    SttAudioRequestBase:
      type: object
      properties:
        audio:
          type: string
          format: binary
          description: Audio file (multipart) or base64-encoded audio (JSON).
        url:
          type: string
          description: Publicly accessible audio URL.
          example: https://docs.slng.ai/audio/hello.wav
    DeepgramSttOptionsBase:
      type: object
      description: Deepgram STT processing options.
      properties:
        model:
          type: string
          description: Model name override.
          default: nova-3
        enable_partials:
          type: boolean
          description: Enable partial/interim transcription results for streaming.
          default: true
        diarize:
          type: boolean
          description: >-
            Enable speaker diarization. Words assigned speaker numbers starting
            at 0.
          default: false
        punctuate:
          type: boolean
          description: Add punctuation and capitalization.
          default: false
        smart_format:
          type: boolean
          description: >-
            Apply formatting to improve readability (dates, times, numbers,
            etc.).
          default: false
        utterances:
          type: boolean
          description: Segment transcript into utterances.
          default: false
        paragraphs:
          type: boolean
          description: Add paragraph formatting.
          default: false
        numerals:
          type: boolean
          description: Convert spoken numbers to digits.
          default: false
        profanity_filter:
          type: boolean
          description: Filter profanity from transcript.
          default: false
        redact:
          type: array
          description: Redact sensitive information (pci, ssn, numbers).
          items:
            type: string
            enum:
              - pci
              - ssn
              - numbers
        detect_language:
          type: boolean
          description: Auto-detect spoken language.
          default: false
        filler_words:
          type: boolean
          description: Include filler words (uh, um) in transcript.
          default: false
        multichannel:
          type: boolean
          description: Enable multi-channel audio processing.
          default: false
        keywords:
          type: array
          description: Keywords to boost recognition accuracy.
          items:
            type: string
        encoding:
          type: string
          description: Input audio encoding.
          default: linear16
          enum:
            - linear16
            - flac
            - mulaw
            - amr-nb
            - amr-wb
            - opus
            - speex
            - mp3
            - mp4
            - webm
            - aac
            - ogg
        sample_rate:
          type: integer
          description: Input audio sample rate in Hz.
          default: 16000
        channels:
          type: integer
          description: Number of audio channels.
          minimum: 1
        endpointing:
          oneOf:
            - type: integer
              minimum: 0
            - type: boolean
          default: 10
          description: >-
            Time in milliseconds of silence before finalizing speech. Enabled by
            default at 10ms on Deepgram's side. Set to false to disable
            endpointing entirely.
        utterance_end_ms:
          type: integer
          minimum: 200
          maximum: 5000
          default: 1000
          description: >-
            Time in milliseconds of silence between words before sending an
            UtteranceEnd message. Default is 1000ms, minimum 200ms, maximum
            5000ms. Requires interim_results (enable_partials) to be true.
        tag:
          type: string
          description: Tag for request tracking.
    DeepgramNova3Language:
      type: string
      description: Supported language code.
      example: multi
      enum:
        - multi
        - es
        - ru
        - en
        - ja
        - fr
        - en-in
        - en-gb
        - en-nz
        - nl
        - en-ca
        - it
        - en-us
        - en-au
        - de
        - pt
        - hi
    DeepgramSttResponse:
      type: object
      description: 3rd Party Deepgram API response format.
      required:
        - results
      properties:
        results:
          type: object
          properties:
            channels:
              type: array
              items:
                type: object
                properties:
                  alternatives:
                    type: array
                    items:
                      type: object
                      properties:
                        transcript:
                          type: string
                        confidence:
                          type: number
                  detected_language:
                    type: string
        metadata:
          type: object
          properties:
            request_id:
              type: string
            model:
              type: string
    ProviderErrorResponse:
      type: object
      description: >
        Provider error response. Contains error information from the upstream
        provider.

        Common errors include invalid speakers, unsupported languages, or
        malformed requests.
      properties:
        error:
          type: string
          description: >-
            Error type or category (e.g., "TTS service error", "Validation
            error").
          example: TTS service error
        status:
          type: number
          description: >-
            Original HTTP status code from the provider (may differ from gateway
            response code).
          example: 400
        details:
          type: string
          description: >
            Detailed error message from the provider. For TTS errors, this
            typically includes

            the specific validation failure (e.g., invalid speaker ID for the
            selected model/language).
          example: >-
            Rime TTS API error: 400 Bad Request - Invalid argument: Invalid
            speaker: aurelie
      required:
        - error
  responses:
    DeepgramSttSuccess:
      description: Transcription successful.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DeepgramSttResponse'
          examples:
            basic:
              summary: Basic transcription
              value:
                results:
                  channels:
                    - alternatives:
                        - transcript: hello from sunny barcelona
                          confidence: 0.98
                metadata:
                  request_id: req-123
                  model: nova-3
    ProviderBadRequest:
      description: Bad request - invalid parameters provided.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ProviderErrorResponse'
          examples:
            validation-error:
              summary: Validation error
              value:
                error: Validation error
                details: 'Missing required field: text'
    ProviderUnauthorized:
      description: Invalid or missing API key.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ProviderErrorResponse'
    ProviderPayloadTooLarge:
      description: Audio file exceeds size limit.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ProviderErrorResponse'
    ProviderInternalServerError:
      description: Internal server error from the provider.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ProviderErrorResponse'
          examples:
            processing-error:
              summary: Processing error
              value:
                error: Service error
                details: Internal processing error
    ProviderServiceUnavailable:
      description: Service unavailable.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ProviderErrorResponse'
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: |
        API key issued by SLNG. Pass as `Authorization: Bearer <token>`.

````