Skip to main content
POST
/
transcribe
Transcribe online videos
curl --request POST \
  --url https://api.vidnavigator.com/v1/transcribe \
  --header 'Content-Type: application/json' \
  --header 'X-API-Key: <api-key>' \
  --data '
{
  "video_url": "https://www.instagram.com/reel/C86ZvEaqRmo/",
  "transcript_text": false
}
'
{
  "status": "success",
  "data": {
    "video_info": {
      "title": "<string>",
      "description": "<string>",
      "thumbnail": "<string>",
      "url": "<string>",
      "channel": "<string>",
      "channel_url": "<string>",
      "duration": 123,
      "views": 123,
      "likes": 123,
      "published_date": "<string>",
      "keywords": [
        "<string>"
      ],
      "category": "<string>",
      "available_languages": [
        "<string>"
      ],
      "selected_language": "<string>"
    },
    "transcript": [
      {
        "text": "<string>",
        "start": 123,
        "end": 123
      }
    ]
  }
}
Transcribe online videos from platforms like Instagram, TikTok, and more using speech-to-text models when a direct transcript is not available.

Overview

This endpoint is designed for videos where a pre-existing transcript or caption file cannot be retrieved. It downloads the video content and processes it through an AI speech-to-text model to generate a new transcript. This is particularly useful for social media platforms where direct transcript extraction is not possible, such as Instagram Reels that don’t have captions.
YouTube is not supported by this endpoint. For YouTube videos, use the /transcript/youtube endpoint instead, which retrieves existing transcripts/captions.

Supported Platforms

VidNavigator can generate transcripts from these platforms using speech-to-text:
  • Instagram
  • X / Twitter (just copy the tweet video link)
  • Facebook (public videos only)
  • TikTok
  • Dailymotion
  • Loom
  • Vimeo

Example Usage

curl -X POST "https://api.vidnavigator.com/v1/transcribe" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "video_url": "https://www.instagram.com/reel/C86ZvEaqRmo/"
  }'

Success Response (200 OK)

Returns a video_info object and a transcript object generated by the speech-to-text model.
{
  "status": "success",
  "data": {
    "video_info": {
      "title": "A Reel Interesting Video",
      "description": "An example description for the video.",
      "thumbnail": "https://example.com/thumbnail.jpg",
      "url": "https://www.instagram.com/reel/C86ZvEaqRmo/",
      "channel": "Example Creator",
      "duration": 58.5,
      "views": 123456,
      "likes": 7890,
      "published_date": "2024-07-01",
      "keywords": ["example", "social media", "video"],
      "category": "Entertainment"
    },
    "transcript": [
      {
        "text": "This is the first sentence of the video.",
        "start": 0.5,
        "end": 3.2
      },
      {
        "text": "And this is the second.",
        "start": 3.5,
        "end": 5.1
      }
    ]
  }
}

Authorizations

X-API-Key
string
header
required

API key authentication. Include your VidNavigator API key in the X-API-Key header.

Body

application/json
video_url
string<uri>
required

URL of the video to transcribe

Example:

"https://www.instagram.com/reel/C86ZvEaqRmo/"

transcript_text
boolean
default:false

When true, returns the transcript as a single plain-text string instead of an array of segments.

Response

Video transcribed successfully

status
enum<string>
Available options:
success
data
object