Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Mit dem YouTube-Dienst können Sie die YouTube Data API und die YouTube Live Streaming API in Apps Script verwenden. Mit dieser API können Nutzer ihre Videos, Playlists, Kanäle und Live-Events verwalten.
Referenz
Ausführliche Informationen zu diesem Dienst finden Sie in der folgenden Referenzdokumentation:
Wie alle erweiterten Dienste in Apps Script verwendet der YouTube-Dienst dieselben Objekte, Methoden und Parameter wie die öffentliche API. Weitere Informationen finden Sie unter Methodensignaturen ermitteln.
Wenn Sie Probleme melden oder weitere Unterstützung erhalten möchten, sehen Sie sich die entsprechenden Supportseiten an:
Im folgenden Beispielcode wird Version 3 der YouTube Data API verwendet.
Nach Keyword suchen
Diese Funktion sucht nach Videos über Hunde und protokolliert dann die Video-IDs und den Titel.
In diesem Beispiel werden die Ergebnisse auf 25 beschränkt. Wenn Sie mehr Ergebnisse zurückgeben möchten, übergeben Sie zusätzliche Parameter, wie in der Referenzdokumentation zur YouTube Data API beschrieben.
/** * Searches for videos about dogs, then logs the video IDs and title. * Note that this sample limits the results to 25. To return more * results, pass additional parameters as shown in the YouTube Data API docs. * @see https://developers.google.com/youtube/v3/docs/search/list */functionsearchByKeyword(){try{constresults=YouTube.Search.list('id,snippet',{q:'dogs',maxResults:25});if(results===null){console.log('Unable to search videos');return;}results.items.forEach((item)=>{console.log('[%s] Title: %s',item.id.videoId,item.snippet.title);});}catch(err){// TODO (developer) - Handle exceptions from Youtube APIconsole.log('Failed with an error %s',err.message);}}
Uploads abrufen
Mit dieser Funktion werden die vom Nutzer hochgeladenen Videos abgerufen. Dazu werden die folgenden Schritte ausgeführt:
Ruft den Kanal des Nutzers ab
Ruft die uploads-Playlist des Nutzers ab.
Durchläuft diese Playlist und protokolliert die Video-IDs und ‑Titel.
Wenn eine nächste Ergebnisseite vorhanden ist, wird sie abgerufen und dann wird zu Schritt 3 zurückgekehrt.
/** * This function retrieves the user's uploaded videos by: * 1. Fetching the user's channel's. * 2. Fetching the user's "uploads" playlist. * 3. Iterating through this playlist and logs the video IDs and titles. * 4. If there is a next page of resuts, fetching it and returns to step 3. */functionretrieveMyUploads(){try{// @see https://developers.google.com/youtube/v3/docs/channels/listconstresults=YouTube.Channels.list('contentDetails',{mine:true});if(!results||results.items.length===0){console.log('No Channels found.');return;}for(leti=0;i < results.items.length;i++){constitem=results.items[i];/** Get the channel ID - it's nested in contentDetails, as described in the * Channel resource: https://developers.google.com/youtube/v3/docs/channels. */constplaylistId=item.contentDetails.relatedPlaylists.uploads;letnextPageToken=null;do{// @see: https://developers.google.com/youtube/v3/docs/playlistItems/listconstplaylistResponse=YouTube.PlaylistItems.list('snippet',{playlistId:playlistId,maxResults:25,pageToken:nextPageToken});if(!playlistResponse||playlistResponse.items.length===0){console.log('No Playlist found.');break;}for(letj=0;j < playlistResponse.items.length;j++){constplaylistItem=playlistResponse.items[j];console.log('[%s] Title: %s',playlistItem.snippet.resourceId.videoId,playlistItem.snippet.title);}nextPageToken=playlistResponse.nextPageToken;}while(nextPageToken);}}catch(err){// TODO (developer) - Handle exceptionconsole.log('Failed with err %s',err.message);}}
Kanal abonnieren
In diesem Beispiel wird der Nutzer für den Google Developers-Kanal auf YouTube abonniert.
/** * This sample subscribes the user to the Google Developers channel on YouTube. * @see https://developers.google.com/youtube/v3/docs/subscriptions/insert */functionaddSubscription(){// Replace this channel ID with the channel ID you want to subscribe toconstchannelId='UC_x5XG1OV2P6uZZ5FSM9Ttw';constresource={snippet:{resourceId:{kind:'youtube#channel',channelId:channelId}}};try{constresponse=YouTube.Subscriptions.insert(resource,'snippet');console.log('Added subscription for channel title : %s',response.snippet.title);}catch(e){if(e.message.match('subscriptionDuplicate')){console.log('Cannot subscribe; already subscribed to channel: '+channelId);}else{// TODO (developer) - Handle exceptionconsole.log('Error adding subscription: '+e.message);}}}
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Benötigte Informationen nicht gefunden","missingTheInformationINeed","thumb-down"],["Zu umständlich/zu viele Schritte","tooComplicatedTooManySteps","thumb-down"],["Nicht mehr aktuell","outOfDate","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Problem mit Beispielen/Code","samplesCodeIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2025-08-31 (UTC)."],[[["\u003cp\u003eThe YouTube service in Apps Script allows you to manage videos, playlists, channels, and live events using the YouTube Data API and YouTube Live Streaming API.\u003c/p\u003e\n"],["\u003cp\u003eThis is an advanced service that needs to be enabled before use within your Apps Script project.\u003c/p\u003e\n"],["\u003cp\u003eSample code is provided to demonstrate searching for videos, retrieving user uploads, and subscribing to channels using the API.\u003c/p\u003e\n"],["\u003cp\u003eRefer to the YouTube Data API and YouTube Live Streaming API reference documentation for detailed information and further functionalities.\u003c/p\u003e\n"]]],[],null,[]]