[← Back to tools]
video.transcript

Transcribe video or audio: pay per use, no API key

Use AssemblyAI from Claude, Claude Code, Cursor, ChatGPT, and other agents through one Cralo balance.

Return a timestamped transcript for a YouTube or Vimeo URL. Price is per minute of audio (official captions are free).

Price and execution

Price
$0.0025 / min
Pricing model
Per minute, billed on success
Execution class
queued

Limits

Max Duration Seconds
7200

Parameters

Fields video.transcript accepts as JSON input.

  • urlstring (uri)Optional

    Public YouTube or Vimeo video URL; use this instead of `upload_id`.

  • languagestringOptional

    Spoken-language code, or `auto` to detect it automatically.

  • upload_idstringOptional

    Cralo upload identifier for an audio or video file; use this instead of `url`.

  • duration_secondsnumberOptional

    Media duration in seconds, required to quote transcription of an uploaded file.

  • use_official_transcriptbooleanOptional

    Prefer official platform captions when available; only valid with `url`.

Raw input JSON Schema
{
  "not": {
    "required": [
      "url",
      "upload_id"
    ]
  },
  "type": "object",
  "allOf": [
    {
      "if": {
        "required": [
          "upload_id"
        ]
      },
      "then": {
        "properties": {
          "use_official_transcript": {
            "const": false
          }
        }
      }
    }
  ],
  "anyOf": [
    {
      "required": [
        "url"
      ]
    },
    {
      "required": [
        "upload_id"
      ]
    }
  ],
  "properties": {
    "url": {
      "type": "string",
      "format": "uri",
      "pattern": "^https?://",
      "description": "Public YouTube or Vimeo video URL; use this instead of `upload_id`."
    },
    "language": {
      "type": "string",
      "default": "auto",
      "description": "Spoken-language code, or `auto` to detect it automatically."
    },
    "upload_id": {
      "type": "string",
      "description": "Cralo upload identifier for an audio or video file; use this instead of `url`."
    },
    "duration_seconds": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Media duration in seconds, required to quote transcription of an uploaded file."
    },
    "use_official_transcript": {
      "type": "boolean",
      "default": false,
      "description": "Prefer official platform captions when available; only valid with `url`."
    }
  },
  "additionalProperties": false
}

Returns

Fields a successful video.transcript call returns.

  • textstringRequired
  • source"official_captions" | "asr"Optional
  • languagestringOptional
  • segmentsarray of objectOptional
    • textstringRequired
    • end_msintegerRequired
    • start_msintegerRequired
  • duration_secondsnumberOptional
Raw output JSON Schema
{
  "type": "object",
  "required": [
    "text"
  ],
  "properties": {
    "text": {
      "type": "string"
    },
    "source": {
      "enum": [
        "official_captions",
        "asr"
      ],
      "type": "string"
    },
    "language": {
      "type": "string"
    },
    "segments": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "start_ms",
          "end_ms",
          "text"
        ],
        "properties": {
          "text": {
            "type": "string"
          },
          "end_ms": {
            "type": "integer"
          },
          "start_ms": {
            "type": "integer"
          }
        },
        "additionalProperties": false
      }
    },
    "duration_seconds": {
      "type": "number"
    }
  },
  "additionalProperties": false
}

Run this tool

Copy this instruction to your agent to set up Cralo and call this tool with the example input.

Set up Cralo by following https://cralo.ai/SKILL.md, then call the video.transcript tool with this input: {"url":"https://www.youtube.com/watch?v=dQw4w9WgXcQ","use_official_transcript":true}

Safety notes

Side Effect
read_only

How this compares to using AssemblyAI directly

You do not need a separate AssemblyAI account or subscription for this call. Cralo uses one prepaid balance across all tools and shows the per-call price before you run the command.

Related tools

[Browse all tools]