Salad Transcription Job

Schema for a Salad Transcription API job request and response.

Audio TranscriptionCaptionsDiarizationGPUSpeech RecognitionTranscriptionVideo Processing

Properties

Name Type Description
id string Unique identifier for the transcription job.
input object Input configuration for the transcription job.
metadata object Optional user-provided metadata attached to the job.
status string Current status of the transcription job.
events array Timeline of job status events.
output object Transcription output (available when status is 'succeeded').
create_time string ISO 8601 timestamp when the job was created.
update_time string ISO 8601 timestamp of the last job update.
View JSON Schema on GitHub

JSON Schema

salad-transcription-job-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://github.com/api-evangelist/salad-transcription-api/json-schema/salad-transcription-job-schema.json",
  "title": "Salad Transcription Job",
  "description": "Schema for a Salad Transcription API job request and response.",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Unique identifier for the transcription job.",
      "example": "54e84442-3576-45ca-904c-a1d90bc77baf"
    },
    "input": {
      "type": "object",
      "description": "Input configuration for the transcription job.",
      "required": ["url"],
      "properties": {
        "url": {
          "type": "string",
          "format": "uri",
          "description": "URL of the audio or video file to transcribe. Must be publicly accessible."
        },
        "language_code": {
          "type": "string",
          "description": "BCP-47 language code (e.g., 'en', 'fr', 'de'). Defaults to auto-detection.",
          "default": "en",
          "example": "en"
        },
        "word_level_timestamps": {
          "type": "boolean",
          "description": "Whether to include word-level timestamps in the output.",
          "default": false
        },
        "diarization": {
          "type": "boolean",
          "description": "Whether to identify and separate individual speakers.",
          "default": false
        },
        "srt": {
          "type": "boolean",
          "description": "Whether to generate SRT caption/subtitle output.",
          "default": false
        }
      }
    },
    "metadata": {
      "type": "object",
      "description": "Optional user-provided metadata attached to the job.",
      "additionalProperties": true
    },
    "status": {
      "type": "string",
      "description": "Current status of the transcription job.",
      "enum": ["pending", "created", "running", "succeeded", "failed"]
    },
    "events": {
      "type": "array",
      "description": "Timeline of job status events.",
      "items": {
        "type": "object",
        "properties": {
          "action": {
            "type": "string",
            "description": "Event action name.",
            "enum": ["created", "started", "succeeded", "failed"]
          },
          "time": {
            "type": "string",
            "format": "date-time",
            "description": "ISO 8601 timestamp of the event."
          }
        }
      }
    },
    "output": {
      "type": "object",
      "description": "Transcription output (available when status is 'succeeded').",
      "properties": {
        "segments": {
          "type": "array",
          "description": "Array of transcribed segments.",
          "items": {
            "type": "object",
            "properties": {
              "start": { "type": "number", "description": "Start time in seconds." },
              "end": { "type": "number", "description": "End time in seconds." },
              "text": { "type": "string", "description": "Transcribed text for the segment." },
              "speaker": { "type": "string", "description": "Speaker label (when diarization is enabled)." },
              "words": {
                "type": "array",
                "description": "Word-level details (when word_level_timestamps is enabled).",
                "items": {
                  "type": "object",
                  "properties": {
                    "word": { "type": "string" },
                    "start": { "type": "number" },
                    "end": { "type": "number" },
                    "score": { "type": "number", "description": "Confidence score (0–1)." },
                    "speaker": { "type": "string" }
                  }
                }
              }
            }
          }
        },
        "srt_content": {
          "type": "string",
          "description": "SRT-formatted caption content (when srt is enabled)."
        },
        "duration": {
          "type": "number",
          "description": "Total duration of the media in seconds."
        },
        "processing_time": {
          "type": "number",
          "description": "Time taken to process the transcription in seconds."
        }
      }
    },
    "create_time": {
      "type": "string",
      "format": "date-time",
      "description": "ISO 8601 timestamp when the job was created."
    },
    "update_time": {
      "type": "string",
      "format": "date-time",
      "description": "ISO 8601 timestamp of the last job update."
    }
  },
  "required": ["input"]
}