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

# Get a transcription

> Retrieve status, progress, billing, errors and the saved result for a live, synchronous or asynchronous transcription.



## OpenAPI

````yaml api-reference/openapi.json GET /v1/asr/transcriptions/{transcription_id}
openapi: 3.1.0
info:
  title: Chariot API
  version: '1'
  description: >-
    Chariot is a voice AI platform built for Indian and English languages.
    Convert text into natural-sounding speech over a simple REST call, an HTTP
    audio stream, or a low-latency WebSocket, and transcribe speech to text over
    a streaming WebSocket or from a prerecorded file (Beta). This reference
    documents the public, API-key-authenticated endpoints.
  contact:
    name: Chariot Support
    email: support@chariot.in
    url: https://chariot.in
servers:
  - url: https://api.chariot.in
    description: Production
security:
  - APIKeyHeader: []
tags:
  - name: Text to Speech
    description: Convert text into speech synchronously or as a stream.
  - name: Speech to Text
    description: >-
      Transcribe prerecorded files (Beta) and review streaming speech-to-text
      sessions.
  - name: Voices
    description: Browse the voice catalog.
  - name: Account
    description: Inspect your credit balance and usage.
paths:
  /v1/asr/transcriptions/{transcription_id}:
    get:
      tags:
        - Speech to Text
      summary: Get a transcription
      description: >-
        Read a transcription using its stable ID. Returns common resource
        metadata and result, without the history-only transcript_preview.
        language records the caller-requested transcription language. Word
        boundaries use seconds from the start of the audio. Result can be null
        or partial until completion. See the transcription history guide for
        nullability and lifecycle semantics.
      operationId: getASRTranscription
      parameters:
        - name: transcription_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
      responses:
        '200':
          description: Success.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ASRAsyncTranscriptionDetail'
              examples:
                completed:
                  summary: Completed
                  value:
                    id: 9cb6f4c5-b2bf-4d75-96e3-716f6f87d994
                    batch_id: 1f4b3eed-2fdf-4495-b988-2b7145127058
                    custom_id: meeting-1
                    model_type: chariot-1-asr-realtime
                    filename: meeting.wav
                    input_audio:
                      format: wav
                      sample_rate_hz: 48000
                    source: file
                    execution: async
                    input_type: url
                    status: completed
                    created_at: '2026-10-27T08:41:44Z'
                    started_at: '2026-10-27T08:41:44Z'
                    finished_at: '2026-10-27T08:41:47Z'
                    cancel_requested_at: null
                    cancelled_at: null
                    language: none
                    mode: high_accuracy
                    style: codemix
                    include_timestamps: false
                    duration_seconds: 9.9591875
                    progress:
                      stage: completed
                      stage_percent: null
                      updated_at: '2026-10-27T08:41:47Z'
                    billing:
                      credits: 15
                      status: settled
                    error: null
                    result:
                      text: >-
                        On a quiet morning after the rain, the city seemed
                        almost willing to listen.
                      words: []
                      is_final: true
                queued:
                  summary: Queued
                  value:
                    id: 9cb6f4c5-b2bf-4d75-96e3-716f6f87d994
                    batch_id: 1f4b3eed-2fdf-4495-b988-2b7145127058
                    custom_id: meeting-1
                    model_type: chariot-1-asr-realtime
                    filename: meeting.wav
                    input_audio:
                      format: null
                      sample_rate_hz: null
                    source: file
                    execution: async
                    input_type: url
                    status: queued
                    created_at: '2026-10-27T08:41:44Z'
                    started_at: null
                    finished_at: null
                    cancel_requested_at: null
                    cancelled_at: null
                    language: none
                    mode: high_accuracy
                    style: codemix
                    include_timestamps: false
                    duration_seconds: null
                    progress:
                      stage: queued
                      stage_percent: null
                      updated_at: '2026-10-27T08:41:47Z'
                    billing:
                      credits: 0
                      status: none
                    error: null
                    result: null
                processing:
                  summary: Processing
                  value:
                    id: 9cb6f4c5-b2bf-4d75-96e3-716f6f87d994
                    batch_id: 1f4b3eed-2fdf-4495-b988-2b7145127058
                    custom_id: meeting-1
                    model_type: chariot-1-asr-realtime
                    filename: meeting.wav
                    input_audio:
                      format: wav
                      sample_rate_hz: 48000
                    source: file
                    execution: async
                    input_type: url
                    status: processing
                    created_at: '2026-10-27T08:41:44Z'
                    started_at: '2026-10-27T08:41:44Z'
                    finished_at: null
                    cancel_requested_at: null
                    cancelled_at: null
                    language: none
                    mode: high_accuracy
                    style: codemix
                    include_timestamps: false
                    duration_seconds: 9.9591875
                    progress:
                      stage: processing
                      stage_percent: null
                      updated_at: '2026-10-27T08:41:47Z'
                    billing:
                      credits: 0
                      status: none
                    error: null
                    result: null
                failed:
                  summary: Failed
                  value:
                    id: 9cb6f4c5-b2bf-4d75-96e3-716f6f87d994
                    batch_id: 1f4b3eed-2fdf-4495-b988-2b7145127058
                    custom_id: meeting-1
                    model_type: chariot-1-asr-realtime
                    filename: meeting.wav
                    input_audio:
                      format: wav
                      sample_rate_hz: 48000
                    source: file
                    execution: async
                    input_type: url
                    status: failed
                    created_at: '2026-10-27T08:41:44Z'
                    started_at: '2026-10-27T08:41:44Z'
                    finished_at: '2026-10-27T08:41:47Z'
                    cancel_requested_at: null
                    cancelled_at: null
                    language: none
                    mode: high_accuracy
                    style: codemix
                    include_timestamps: false
                    duration_seconds: 9.9591875
                    progress:
                      stage: failed
                      stage_percent: null
                      updated_at: '2026-10-27T08:41:47Z'
                    billing:
                      credits: 0
                      status: refunded
                    error:
                      code: invalid_input
                      message: Could not read this audio file.
                    result: null
                cancelled:
                  summary: Cancelled
                  value:
                    id: 9cb6f4c5-b2bf-4d75-96e3-716f6f87d994
                    batch_id: 1f4b3eed-2fdf-4495-b988-2b7145127058
                    custom_id: meeting-1
                    model_type: chariot-1-asr-realtime
                    filename: meeting.wav
                    input_audio:
                      format: wav
                      sample_rate_hz: 48000
                    source: file
                    execution: async
                    input_type: url
                    status: cancelled
                    created_at: '2026-10-27T08:41:44Z'
                    started_at: '2026-10-27T08:41:44Z'
                    finished_at: '2026-10-27T08:41:47Z'
                    cancel_requested_at: '2026-10-27T08:41:44Z'
                    cancelled_at: '2026-10-27T08:41:47Z'
                    language: none
                    mode: high_accuracy
                    style: codemix
                    include_timestamps: false
                    duration_seconds: 9.9591875
                    progress:
                      stage: cancelled
                      stage_percent: null
                      updated_at: '2026-10-27T08:41:47Z'
                    billing:
                      credits: 0
                      status: none
                    error: null
                    result: null
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          description: Resource not found in your workspace.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: Invalid parameters or input.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - APIKeyHeader: []
components:
  schemas:
    ASRAsyncTranscriptionDetail:
      properties:
        model_type:
          anyOf:
            - type: string
            - type: 'null'
          title: Model Type
        filename:
          anyOf:
            - type: string
            - type: 'null'
          title: Filename
        input_audio:
          $ref: '#/components/schemas/ASRAsyncTranscriptionInputAudio'
        id:
          format: uuid
          title: Id
          type: string
        batch_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Batch Id
        custom_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Custom Id
        source:
          enum:
            - live
            - file
          title: Source
          type: string
        execution:
          enum:
            - realtime
            - sync
            - async
          title: Execution
          type: string
        input_type:
          enum:
            - stream
            - upload
            - url
          title: Input Type
          type: string
        status:
          enum:
            - queued
            - processing
            - cancelling
            - completed
            - failed
            - cancelled
            - closed
            - unknown
          title: Status
          type: string
        created_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Created At
        started_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Started At
        finished_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Finished At
        cancel_requested_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Cancel Requested At
        cancelled_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Cancelled At
        language:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            Caller-requested transcription language. none selects automatic
            language detection. Null means the historical setting was not
            recorded.
          title: Language
        mode:
          anyOf:
            - type: string
            - type: 'null'
          title: Mode
        style:
          anyOf:
            - type: string
            - type: 'null'
          title: Style
        include_timestamps:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Include Timestamps
        duration_seconds:
          anyOf:
            - type: number
            - type: 'null'
          title: Duration Seconds
        progress:
          $ref: '#/components/schemas/ASRAsyncTranscriptionProgress'
        billing:
          $ref: '#/components/schemas/ASRAsyncTranscriptionBilling'
        error:
          anyOf:
            - $ref: '#/components/schemas/ASRAsyncTranscriptionError'
            - type: 'null'
        result:
          anyOf:
            - $ref: '#/components/schemas/ASRAsyncTranscriptionResult'
            - type: 'null'
      required:
        - model_type
        - filename
        - input_audio
        - id
        - batch_id
        - custom_id
        - source
        - execution
        - input_type
        - status
        - created_at
        - started_at
        - finished_at
        - cancel_requested_at
        - cancelled_at
        - language
        - mode
        - style
        - include_timestamps
        - duration_seconds
        - progress
        - billing
        - error
        - result
      title: TranscriptionDetail
      type: object
    Error:
      type: object
      description: Standard error envelope returned by all endpoints.
      properties:
        statusCode:
          type: integer
          description: HTTP status code, echoed in the body.
        error:
          type: string
          description: Machine-readable error class name.
        message:
          type: string
          description: Human-readable description of what went wrong.
      required:
        - statusCode
        - error
        - message
    ASRAsyncTranscriptionInputAudio:
      properties:
        format:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            Original file container format, or live input encoding. Null when
            not recorded; never inferred from a filename.
          title: Format
        sample_rate_hz:
          anyOf:
            - exclusiveMinimum: 0
              type: integer
            - type: 'null'
          description: >-
            Sample rate of the original audio track selected for transcription,
            before resampling. Null when not recorded.
          title: Sample Rate Hz
      required:
        - format
        - sample_rate_hz
      title: TranscriptionInputAudio
      type: object
    ASRAsyncTranscriptionProgress:
      properties:
        stage:
          title: Stage
          type: string
        stage_percent:
          anyOf:
            - maximum: 100
              minimum: 0
              type: number
            - type: 'null'
          description: >-
            Percentage within this stage only, never overall completion. Null
            when not measurable or terminal.
          title: Stage Percent
        updated_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Updated At
      required:
        - stage
        - stage_percent
        - updated_at
      title: TranscriptionProgress
      type: object
    ASRAsyncTranscriptionBilling:
      properties:
        credits:
          anyOf:
            - type: integer
            - type: 'null'
          description: >-
            Current net credits debited for this transcription. Zero after a
            full refund; null when historical usage is unknown.
          title: Credits
        status:
          enum:
            - none
            - charged
            - settled
            - refunded
            - legacy
          title: Status
          type: string
      required:
        - credits
        - status
      title: TranscriptionBilling
      type: object
    ASRAsyncTranscriptionError:
      properties:
        code:
          description: >-
            Stable machine-readable failure code. Clients must tolerate new
            codes.
          title: Code
          type: string
        message:
          description: Safe human-readable explanation; do not branch on this text.
          title: Message
          type: string
      required:
        - code
        - message
      title: TranscriptionError
      type: object
    ASRAsyncTranscriptionResult:
      properties:
        text:
          anyOf:
            - type: string
            - type: 'null'
          title: Text
        words:
          anyOf:
            - items:
                $ref: '#/components/schemas/ASRAsyncASRWordTimestamp'
              type: array
            - type: 'null'
          description: >-
            Word boundaries in seconds from audio start. Empty when timestamps
            were disabled or no timed words were returned; null when
            unavailable, invalid, or historical settings are unknown. Interpret
            with include_timestamps.
          title: Words
        is_final:
          anyOf:
            - type: boolean
            - type: 'null'
          description: >-
            True for an upstream final result, false for a partial result, null
            when historical finality was not recorded.
          title: Is Final
      required:
        - text
        - words
        - is_final
      title: TranscriptionResult
      type: object
    ASRAsyncASRWordTimestamp:
      description: Estimated word boundaries in seconds from the start of session audio.
      properties:
        text:
          title: Text
          type: string
        start:
          minimum: 0
          title: Start
          type: number
        end:
          minimum: 0
          title: End
          type: number
      required:
        - text
        - start
        - end
      title: ASRWordTimestamp
      type: object
  responses:
    Unauthorized:
      description: Authentication failed. The API key is missing, invalid, or expired.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          examples:
            missing:
              summary: No credentials provided
              value:
                statusCode: 401
                error: UnauthorizedException
                message: No API key or user credentials provided
            invalid:
              summary: Invalid or unknown API key
              value:
                statusCode: 401
                error: UnauthorizedException
                message: Invalid API Key or user credentials
  securitySchemes:
    APIKeyHeader:
      type: apiKey
      in: header
      name: chariotai-api-key
      description: >-
        Your Chariot API key, generated from the dashboard. Send it in the
        `chariotai-api-key` header on every request.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.