Migrating from TranscriptAPI.com: A Field Guide
Switching a YouTube transcript integration from TranscriptAPI.com to GetYouTubeTranscript - parameter mapping, a before/after curl example, endpoint equivalents, and the real gaps that do not map 1:1.
00:06:00 · SEP 26, 2026
Kurzantwort
Parameter-Zuordnung
Beide APIs authentifizieren mit einem Bearer-Token und akzeptieren eine vollständige URL, Kurz-URL oder eine reine Video-ID. So ordnen sich die übrigen Transkript-Parameter von TranscriptAPI unseren zu:
| TranscriptAPI.com | GetYouTubeTranscript | Hinweis |
|---|---|---|
Authorization: Bearer KEY | Authorization: Bearer KEY | Wir akzeptieren auch x-api-key als alternativen Header. |
video_url | v (oder url, videoId) | Gleiche akzeptierte Formate: vollständige URL, Kurz-URL, oder eine reine 11-Zeichen-ID. |
language | language | Unserer nimmt einen einzelnen Code mit Standardwert, keine kommagetrennte Prioritätsliste - pro Aufruf eine Sprache anfragen. |
format=json|text | (keiner - immer reiner Text) | Unsere Antwort liefert immer den flachen Transkript-String im Feld transcript, entsprechend deren format=text. |
include_timestamp | (nicht verfügbar) | Zeitstempel pro Segment (start/duration) sind heute nicht in unserer öffentlichen Antwort - siehe die Lücken unten. |
send_metadata=true | (immer enthalten) | title, author_name, author_url und thumbnail_url sind immer in der Antwort - kein Flag nötig. |
Vorher / nachher
TranscriptAPI.com
curl -X GET "https://transcriptapi.com/api/v2/youtube/transcript?video_url=https://youtu.be/dQw4w9WgXcQ&language=en&send_metadata=true" \
-H "Authorization: Bearer YOUR_API_KEY"GetYouTubeTranscript
curl "https://getyoutubetranscript.com/api/v1/transcript?v=dQw4w9WgXcQ&language=en" \
-H "Authorization: Bearer sk_live_..."
# => { "success": true, "data": { "video_id": "...", "language_code": "en",
# "title": "...", "author_name": "...", "author_url": "...",
# "thumbnail_url": "...", "transcript": "...", "word_count": 1847 } }Gleiches Video, in beiden Fällen ein Credit. Metadaten kommen bei uns standardmäßig zurück, also gibt es kein send_metadata-Flag zu merken.
Andere Endpoints
| TranscriptAPI.com | GetYouTubeTranscript | Hinweis |
|---|---|---|
GET /youtube/info (kostenlos) | GET /resolve?handle=... (kostenlos) | Unserer löst einen Handle/URL zu einer Kanal-ID auf; für Video-Metadaten /transcript aufrufen und die Antwortfelder lesen. |
GET /youtube/search (1 Credit) | GET /search?q=... (1 Credit/Seite) | Gleiches Prinzip - paginierte Suche, ein Credit pro abgerufener Seite. |
GET /youtube/channel/resolve (kostenlos) | GET /resolve?handle=... (kostenlos) | Direktes Äquivalent. |
GET /youtube/channel/videos (1/Seite) | GET /channel/videos?channel=... (1 Credit/Seite) | Gleiches Paginierungsmodell - das Continuation-Token der Antwort zurückgeben. |
GET /youtube/channel/search (1 Credit) | GET /channel/search?channel=...&q=... (1 Credit/Seite) | Direktes Äquivalent. |
GET /youtube/channel/playlists, /channel/posts | (kein Äquivalent) | Derzeit nicht angeboten - siehe die Lücken unten. |
Was sich nicht 1:1 zuordnet
- Keine Zeitstempel pro Segment in der API-Antwort. TranscriptAPIs format=json + include_timestamp=true liefert Segmente mit start/duration; unsere öffentliche API liefert nur den flachen Transkript-String. (Segmentweise Zeitstempel existieren in unserer Datenbank und treiben die klickbare Transkriptansicht auf der Website selbst an - sie sind nur noch nicht in der öffentlichen API-Antwort.)
- language ist hier ein einzelner Code, keine Prioritätsliste. TranscriptAPI probiert eine kommagetrennte Liste wie de,en,asr von links nach rechts; unserer nimmt einen Code mit Standardwert. Wer auf eine Fallback-Kette angewiesen war, muss selbst mit einem anderen Wert erneut versuchen.
- Keine Endpoints für Kanal-Playlists oder Kanal-Posts. TranscriptAPIs /channel/playlists und /channel/posts haben hier derzeit kein Äquivalent.
Wenn reiner Transkripttext, Metadaten, Suche und Kanaldaten deinen Anwendungsfall abdecken, ist das fast ein direkter Ersatz - melde dich für 100 kostenlose Credits an (keine Karte nötig) und sieh dir die vollständige Preis- und Endpoint-Liste an, oder schau in die API-Dokumentation für die vollständige Parameterreferenz.
Migrations-FAQ
Muss ich meinen Auth-Header ändern?
Nein - beide APIs verwenden Authorization: Bearer DEIN_KEY. Unsere akzeptiert zusätzlich x-api-key als Alternative.
Funktionieren meine bestehenden Video-URLs und IDs weiterhin?
Ja - beide APIs akzeptieren eine vollständige YouTube-URL, eine kurze youtu.be-URL, oder eine reine 11-Zeichen-Video-ID an derselben Parameterposition (dort video_url, hier v).
Was passiert, wenn ich eine kommagetrennte Sprachliste wie im TranscriptAPI-Format sende?
Unser language-Parameter erwartet einen einzelnen Code, keine Liste. Ein kommagetrennter Wert wird wahrscheinlich einfach nicht passen - pro Aufruf eine Sprache anfragen und bei Bedarf mit einem anderen Wert erneut versuchen.
Kann ich segmentweise Zeitstempel von eurer API bekommen?
Heute nicht aus der öffentlichen REST-API-Antwort - sie liefert den flachen Transkripttext. Falls deine Migration davon abhängt, warte, bis es verfügbar ist, oder nutze die eigene Transkriptansicht der Website, die das unterstützt.
Ist das kostenlos zum Testen?
100 kostenlose Credits bei der Anmeldung, keine Karte nötig - genug, um Transkript-, Such- und Kanal-Endpoints zu testen, bevor man sich für einen Plan entscheidet.
Verwandte Themen
- YouTube API Quota Exceeded: Causes and Fixes
- YouTube Transcript API Rate Limit: What It Is and How to Handle 429s
- YouTube Transcript MCP Server: Setup Guide for Claude and Other AI Tools
- YouTube Transcripts in n8n: HTTP Request Workflow Guide
- Migrating from Supadata: A Field Guide
- How to Get YouTube Transcripts in Python
- Build an AI YouTube Video Summarizer with LangChain and Next.js
- GetYouTubeTranscript vs. TranscriptAPI
- GetYouTubeTranscript vs. youtubetotranscript.com
- GetYouTubeTranscript vs. youtube-transcript.io
- GetYouTubeTranscript vs NoteGPT