Skip to main content

youtube-data

Access YouTube video data — transcripts, metadata, channel info, search, and playlists. A lightweight alternative to Google's YouTube Data API with no quota limits. Use when the user needs structured data from YouTube videos, channels, or playlists without dealing with Google API setup, OAuth, or daily quotas.

الانتقال إلى التثبيت

معلومات المصدر

المستودع
aibot88/sec_skill_store
آخر نشاط في المصدر
٢٧ مايو ٢٠٢٦ في ٠٣:٤٧
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
٣
التفرعات
٠

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

مستكشف الملفات
2 ملفات

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
youtube-data
description
Access YouTube video data — transcripts, metadata, channel info, search, and playlists. A lightweight alternative to Google's YouTube Data API with no quota limits. Use when the user needs structured data from YouTube videos, channels, or playlists without dealing with Google API setup, OAuth, or daily quotas.
homepage
https://transcriptapi.com
user-invocable
true
metadata
{"openclaw":{"emoji":"📊","requires":{"env":"[Truncated]","bins":"[Truncated]","config":"[Truncated]"},"primaryEnv":"TRANSCRIPT_API_KEY"}}
# YouTube Data YouTube data access via [TranscriptAPI.com](https://transcriptapi.com) — lightweight alternative to Google's YouTube Data API. ## Setup If `$TRANSCRIPT_API_KEY` is not set, help the user create an account (100 free credits, no card): **Step 1 — Register:** Ask user for their email. ```bash node ./scripts/tapi-auth.js register --email USER_EMAIL ``` → OTP sent to email. Ask user: _"Check your email for a 6-digit verification code."_ **Step 2 — Verify:** Once user provides the OTP: ```bash node ./scripts/tapi-auth.js verify --token TOKEN_FROM_STEP_1 --otp CODE ``` > API key saved to `~/.openclaw/openclaw.json`. See **File Writes** below for details. Existing file is backed up before modification. Manual option: [transcriptapi.com/signup](https://transcriptapi.com/signup) → Dashboard → API Keys. ## File Writes The verify and save-key commands save the API key to `~/.openclaw/openclaw.json` (sets `skills.entries.transcriptapi.apiKey` and `enabled: true`). **Existing file is backed up to `~/.openclaw/openclaw.json.bak` before modification.** To use the API key in terminal/CLI outside the agent, add to your shell profile manually: `export TRANSCRIPT_API_KEY=<your-key>` ## API Reference Full OpenAPI spec: [transcriptapi.com/openapi.json](https://transcriptapi.com/openapi.json) — consult this for the latest parameters and schemas. ## Video Data (transcript + metadata) — 1 credit ```bash curl -s "https://transcriptapi.com/api/v2/youtube/transcript\ ?video_url=VIDEO_URL&format=json&include_timestamp=true&send_metadata=true" \ -H "Authorization: Bearer $TRANSCRIPT_API_KEY" ``` **Response:** ```json { "video_id": "dQw4w9WgXcQ", "language": "en", "transcript": [ { "text": "We're no strangers to love", "start": 18.0, "duration": 3.5 } ], "metadata": { "title": "Rick Astley - Never Gonna Give You Up", "author_name": "Rick Astley", "author_url": "https://www.youtube.com/@RickAstley", "thumbnail_url": "https://i.ytimg.com/vi/dQw4w9WgXcQ/maxresdefault.jpg" } } ``` ## Search Data — 1 credit ```bash curl -s "https://transcriptapi.com/api/v2/youtube/search?q=QUERY&type=video&limit=20" \ -H "Authorization: Bearer $TRANSCRIPT_API_KEY" ``` **Video result fields:** `videoId`, `title`, `channelId`, `channelTitle`, `channelHandle`, `channelVerified`, `lengthText`, `viewCountText`, `publishedTimeText`, `hasCaptions`, `thumbnails` **Channel result fields** (`type=channel`): `channelId`, `title`, `handle`, `url`, `description`, `subscriberCount`, `verified`, `rssUrl`, `thumbnails` ## Channel Data Channel endpoints accept `channel` — an `@handle`, channel URL, or `UC...` ID. No need to resolve first. **Resolve handle to ID (free):** ```bash curl -s "https://transcriptapi.com/api/v2/youtube/channel/resolve?input=@TED" \ -H "Authorization: Bearer $TRANSCRIPT_API_KEY" ``` Returns: `{"channel_id": "UCsT0YIqwnpJCM-mx7-gSA4Q", "resolved_from": "@TED"}` **Latest 15 videos with exact stats (free):** ```bash curl -s "https://transcriptapi.com/api/v2/youtube/channel/latest?channel=@TED" \ -H "Authorization: Bearer $TRANSCRIPT_API_KEY" ``` Returns: `channel` info, `results` array with `videoId`, `title`, `published` (ISO), `viewCount` (exact number), `description`, `thumbnail` **All channel videos (paginated, 1 credit/page):** ```bash curl -s "https://transcriptapi.com/api/v2/youtube/channel/videos?channel=@NASA" \ -H "Authorization: Bearer $TRANSCRIPT_API_KEY" ``` Returns 100 videos per page + `continuation_token` for pagination. **Search within channel (1 credit):** ```bash curl -s "https://transcriptapi.com/api/v2/youtube/channel/search\ ?channel=@TED&q=QUERY&limit=30" \ -H "Authorization: Bearer $TRANSCRIPT_API_KEY" ``` ## Playlist Data — 1 credit/page Accepts `playlist` — a YouTube playlist URL or playlist ID. ```bash curl -s "https://transcriptapi.com/api/v2/youtube/playlist/videos?playlist=PL_ID" \ -H "Authorization: Bearer $TRANSCRIPT_API_KEY" ``` Returns: `results` (videos), `playlist_info` (`title`, `numVideos`, `ownerName`, `viewCount`), `continuation_token`, `has_more` ## Credit Costs | Endpoint | Cost | Data returned | | --------------- | -------- | -------------------------- | | transcript | 1 | Full transcript + metadata | | search | 1 | Video/channel details | | channel/resolve | **free** | Channel ID mapping | | channel/latest | **free** | 15 videos + exact stats | | channel/videos | 1/page | 100 videos per page | | channel/search | 1 | Videos matching query | | playlist/videos | 1/page | 100 videos per page | ## Errors | Code | Action | | ---- | -------------------------------------- | | 402 | No credits — transcriptapi.com/billing | | 404 | Not found | | 408 | Timeout — retry once | | 422 | Invalid param format | Free tier: 100 credits, 300 req/min.
عرض على GitHub