Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Supadata connector

API KeyAnalyticsSearch

Connect with Supadata to extract transcripts, metadata, and structured content from YouTube, social media, and the web using AI.

Supadata connector

  1. Terminal window
    npm install @scalekit-sdk/node

    Full SDK reference: Node.js | Python

  2. Add your Scalekit credentials to your .env file. Find values in app.scalekit.com > Developers > API Credentials.

    .env
    SCALEKIT_ENVIRONMENT_URL=<your-environment-url>
    SCALEKIT_CLIENT_ID=<your-client-id>
    SCALEKIT_CLIENT_SECRET=<your-client-secret>
  3. Register your Supadata credentials with Scalekit so it can authenticate requests on your behalf. You do this once per environment.

    Dashboard setup steps

    Register your Scalekit environment with the Supadata connector so Scalekit can proxy API requests and inject your API key automatically. Unlike OAuth connectors, Supadata uses API key authentication — there is no redirect URI or OAuth flow.

    1. Get a Supadata API key

      Your Supadata API key is generated automatically when you create an account.

      • Go to dash.supadata.ai and sign up or sign in. No credit card is required for the free tier.
      • After signing in, click API Keys in the left sidebar.
      • Your auto-generated key is listed in the table. Click the key row to reveal or copy it.
      • To create a new dedicated key for this integration, click + New Key, give it a name (e.g., Agent Auth), and click Create.

      Supadata dashboard showing the API Keys page with existing keys and the New Key button

    2. Create a connection in Scalekit

      • In Scalekit dashboard, go to AgentKit > Connections > Create Connection. Find Supadata and click Create.
      • Note the Connection name — you will use this as connection_name in your code (e.g., supadata).
      • Click Save.

      Scalekit connection configuration page for Supadata showing the connection name and API Key authentication type

    3. Add a connected account

      Connected accounts link a specific user identifier in your system to a Supadata API key. Add them via the dashboard for testing, or via the Scalekit API in production.

      Via dashboard (for testing)

      • Open the connection you created and click the Connected Accounts tab → Add account.

      • Fill in:

        • Your User’s ID — a unique identifier for this user in your system (e.g., user_123)
        • API Key — the Supadata API key you copied in step 1
      • Click Save.

      Add connected account form for Supadata in Scalekit dashboard showing User ID and API Key fields

      Via API (for production)

      // Never hard-code API keys — read from secure storage or user input
      const supadataApiKey = getUserSupadataKey(); // retrieve from your secure store
      await scalekit.actions.upsertConnectedAccount({
      connectionName: 'supadata',
      identifier: 'user_123', // your user's unique ID
      credentials: { api_key: supadataApiKey },
      });
  4. quickstart.ts
    import { ScalekitClient } from '@scalekit-sdk/node'
    import 'dotenv/config'
    const scalekit = new ScalekitClient(
    process.env.SCALEKIT_ENV_URL,
    process.env.SCALEKIT_CLIENT_ID,
    process.env.SCALEKIT_CLIENT_SECRET,
    )
    const actions = scalekit.actions
    const connector = 'supadata'
    const identifier = 'user_123'
    // Make your first call
    const result = await actions.executeTool({
    connector,
    identifier,
    toolName: 'supadata_metadata_get',
    toolInput: { url: 'https://example.com/url' },
    })
    console.log(result)

Connect this agent connector to let your agent:

  • Get metadata, youtube playlist, youtube channel — Retrieve unified metadata for a video or media URL including title, description, author info, engagement stats, media details, and creation date
  • Scrape web — Scrape a web page and return its content as clean Markdown
  • Search youtube — Search YouTube for videos, channels, or playlists
  • Map web — Discover and return all URLs found on a website
  • Translate youtube transcript — Retrieve and translate a YouTube video transcript into a target language
Proxy API call
// Get a YouTube transcript — no API key needed here
const result = await actions.request({
connectionName: 'supadata',
identifier: 'user_123',
path: '/v1/youtube/transcript',
method: 'GET',
queryParams: { videoId: 'dQw4w9WgXcQ', text: 'true' },
});
console.log(result);
Execute a tool
const result = await actions.executeTool({
connector: 'supadata',
identifier: 'user_123',
toolName: 'supadata_metadata_get',
toolInput: {},
});
console.log(result);

Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.

supadata_metadata_get#Retrieve unified metadata for a video or media URL including title, description, author info, engagement stats, media details, and creation date. Supports YouTube, TikTok, Instagram, X (Twitter), Facebook, and more.1 param

Retrieve unified metadata for a video or media URL including title, description, author info, engagement stats, media details, and creation date. Supports YouTube, TikTok, Instagram, X (Twitter), Facebook, and more.

NameTypeRequiredDescription
urlstringrequiredURL of the video or media to retrieve metadata for.
supadata_transcript_get#Extract transcripts from YouTube, TikTok, Instagram, X (Twitter), Facebook, or direct file URLs. Supports native captions, auto-generated captions, or AI-generated transcripts. Returns timestamped segments with speaker labels.5 params

Extract transcripts from YouTube, TikTok, Instagram, X (Twitter), Facebook, or direct file URLs. Supports native captions, auto-generated captions, or AI-generated transcripts. Returns timestamped segments with speaker labels.

NameTypeRequiredDescription
urlstringrequiredURL of the video or media file to transcribe. Supports YouTube, TikTok, Instagram, X, Facebook, or direct video/audio file URLs.
chunkSizeintegeroptionalMaximum number of characters per transcript segment chunk.
langstringoptionalISO 639-1 language code for the transcript (e.g., en, fr, de). Defaults to the video's original language.
modestringoptionalTranscript generation mode: native (use existing captions, 1 credit), auto (native with AI fallback), or generate (AI-generated, 2 credits/minute).
textbooleanoptionalReturn plain text instead of timestamped segments. Defaults to false.
supadata_web_map#Discover and return all URLs found on a website. Useful for site structure analysis, link auditing, and building crawl lists. Costs 1 credit per request.1 param

Discover and return all URLs found on a website. Useful for site structure analysis, link auditing, and building crawl lists. Costs 1 credit per request.

NameTypeRequiredDescription
urlstringrequiredBase URL of the website to map.
supadata_web_scrape#Scrape a web page and return its content as clean Markdown. Ideal for extracting readable content from any URL while stripping away navigation and ads.3 params

Scrape a web page and return its content as clean Markdown. Ideal for extracting readable content from any URL while stripping away navigation and ads.

NameTypeRequiredDescription
urlstringrequiredURL of the web page to scrape.
langstringoptionalISO 639-1 language code to request content in a specific language (e.g., en, fr, de).
noLinksbooleanoptionalStrip all hyperlinks from the Markdown output. Defaults to false.
supadata_youtube_channel_get#Retrieve metadata for a YouTube channel including name, description, subscriber count, video count, and thumbnails.1 param

Retrieve metadata for a YouTube channel including name, description, subscriber count, video count, and thumbnails.

NameTypeRequiredDescription
channelIdstringrequiredYouTube channel ID, handle (@username), or full channel URL.
supadata_youtube_playlist_get#Retrieve metadata and video list for a YouTube playlist including title, description, video count, and individual video details.1 param

Retrieve metadata and video list for a YouTube playlist including title, description, video count, and individual video details.

NameTypeRequiredDescription
playlistIdstringrequiredYouTube playlist ID or full playlist URL.
supadata_youtube_transcript_get#Retrieve the transcript for a YouTube video by video ID or URL. Returns timestamped segments with text content.3 params

Retrieve the transcript for a YouTube video by video ID or URL. Returns timestamped segments with text content.

NameTypeRequiredDescription
videoIdstringrequiredYouTube video ID or full YouTube URL to retrieve the transcript for.
langstringoptionalISO 639-1 language code for the transcript (e.g., en, fr, de).
textbooleanoptionalReturn plain text instead of timestamped segments. Defaults to false.
supadata_youtube_transcript_translate#Retrieve and translate a YouTube video transcript into a target language. Returns translated timestamped segments.3 params

Retrieve and translate a YouTube video transcript into a target language. Returns translated timestamped segments.

NameTypeRequiredDescription
langstringrequiredISO 639-1 language code to translate the transcript into (e.g., en, fr, es).
videoIdstringrequiredYouTube video ID or full YouTube URL to translate the transcript for.
textbooleanoptionalReturn plain text instead of timestamped segments. Defaults to false.
supadata_youtube_video_get#Retrieve detailed metadata for a YouTube video including title, description, view count, like count, duration, tags, thumbnails, and channel info.1 param

Retrieve detailed metadata for a YouTube video including title, description, view count, like count, duration, tags, thumbnails, and channel info.

NameTypeRequiredDescription
videoIdstringrequiredYouTube video ID or full YouTube URL.