Beispiel-API-Anfragen

Auf dieser Seite findest du Beispielanfragen an die YouTube Data API. Sie verwenden die YouTube Data API, um YouTube-Ressourcen wie Videos, Kanäle und Playlists abzurufen und zu bearbeiten. Jedes Beispiel ist mit dem Google APIs Explorer verknüpft und wird automatisch ausgefüllt, sodass Sie das Beispiel ausführen und die Antwort sehen können.

Informationen zum Hochladen von Inhalten mit der YouTube Data API findest du unter Fortsetzbare Uploads.

Übersicht

Zur Verdeutlichung der Darstellung zeigen die Beispiele auf dieser Seite die charakteristischen Elemente der einzelnen Anfragen und kürzen die Basis-URL für den Host, der Data API-Anfragen verarbeitet (https://www.googleapis.com/youtube/v3). Wenn Sie die Anfrage außerhalb des Kontexts der Beispiele stellen möchten, müssen Sie die vollständige URL angeben.

Hier sehen Sie eine Beispielanfrage, wie sie auf dieser Seite erscheint:

GET {base-URL}/channels?part=contentDetails
                       &mine=true

Die vollständige URL für diesen Antrag lautet:

GET https://www.googleapis.com/youtube/v3/channels?part=contentDetails
                                                  &mine=true

Einige der Anfragen rufen Daten ab, auf die nur der Inhaber des YouTube-Kanals zugreifen kann, z. B. die Liste der Abonnenten. Für diese Anfragen muss der Kanalinhaber dem Google APIs Explorer die Berechtigung einräumen, YouTube Data API-Anfragen in seinem Namen auszuführen. Weitere Informationen zur Autorisierung des Zugriffs auf Daten im privaten Kanal finden Sie unter OAuth 2.0-Authentifizierung implementieren. Klicken Sie nach der Verknüpfung mit APIs Explorer auf die Schaltfläche Authorize requests using OAuth 2.0 (Anfragen über OAuth 2.0 autorisieren). Mit diesem Schritt wird APIs Explorer autorisiert, Anfragen im Namen des Inhabers zu senden. Außerdem wählen Sie den Bereich der Autorisierung aus. Dieser gibt die Arten von Anfragen an, die APIs Explorer ausführen kann.

Die Antwort auf die einzelnen Anfragen ist die JSON-Darstellung einer YouTube-Ressource. Der Parameter part in der Anfrage gibt an, welche Teile der Ressource in der Antwort enthalten sind. Der Parameter gibt mindestens ein (nicht verschachteltes) übergeordnetes Ressourcenattribut an, das in der Antwort enthalten sein sollte. Eine video-Ressource kann beispielsweise so aussehen:

  • Snippet
  • contentDetails
  • Spieler
  • Statistik
  • Status

All diese Teile sind Objekte, die verschachtelte Eigenschaften enthalten. Sie können sich diese Objekte als Gruppen von Metadatenfeldern vorstellen, die der API-Server abrufen könnte (oder nicht). Daher müssen Sie für den Parameter part die Ressourcenkomponenten auswählen, die Ihre Anwendung tatsächlich verwendet.Weitere Informationen findest du unter Erste Schritte mit der YouTube Data API.

Kanalinformationen abrufen

Bei dieser Anfrage wird die Methode channels.list verwendet, um Details zu den Kanälen des authentifizierten Nutzers abzurufen.

GET {base_URL}/channels?part=contentDetails
                       &mine=true

Die Antwort auf diese Anfrage enthält die Kanal-ID und contentDetails für den Kanal des authentifizierten Nutzers. Die contentDetails enthalten die verschiedenen vom System generierten Playlists, die mit dem Kanal verknüpft sind. Für viele der nachfolgenden Anfragen ist entweder die Kanal-ID oder eine der Playlist-IDs erforderlich. Daher ist es wichtig, sie aufzuzeichnen.

{
  "id": {CHANNEL_ID},
  "kind": "youtube#channel",
  "etag": etag,
  "contentDetails": {
    "relatedPlaylists": {
      "likes": {LIKES_PLAYLIST_ID},
      "favorites": {FAVORITES_PLAYLIST_ID},
      "uploads": {UPLOADS_PLAYLIST_ID},
      "watchHistory": {WATCHHISTORY_PLAYLIST_ID},
      "watchLater": {WATCHLATER_PLAYLIST_ID}
    },
    "googlePlusUserId": string
  },
}

Hochgeladene Videos und vom System generierte Playlists

YouTube fügt alle hochgeladenen Videos einer Playlist hinzu, die mit dem Kanal verknüpft ist. Um eine Liste der hochgeladenen Videos zu erhalten, führe eine Abfrage für die „Uploads“ durch Playlist, die in der oben gezeigten Antwort für Kanalinformationen zurückgegeben wurde. Verwende dabei die playlistItems.list-Methode, um die Videos in dieser Playlist abzurufen.

Bevor Sie die folgende Beispielanfrage im Google APIs Explorer ausführen, ersetzen Sie {UPLOADS_PLAYLIST_ID} durch die Playlist-ID aus der vorherigen Anfrage.

GET {base_URL}/playlistItems?part=contentDetails
                            &playlistId={UPLOADS_PLAYLIST_ID}

Hinweis: Der Wert "id" für jedes zurückgegebene Element ist die zugehörige playlistItem-ID. Die Video-ID für den Playlist-Artikel ist videoId im contentDetails-Teil.

Mit der obigen Anfrage kannst du die Favoriten, „Mag ich“-Bewertungen, den Wiedergabeverlauf und die „Später ansehen“-Listen eines Nutzers abrufen, indem du die entsprechende Playlist-ID aus der Kanalinformationsantwort ersetzt.

Von Nutzern erstellte Playlists

Bei dieser Anfrage wird die Methode playlists.list verwendet, um die Playlists abzurufen, die mit dem authentifizierten Kanal verknüpft sind. Durch diese Anfrage werden die vom System generierten Playlists, die in den Kanalinformationen (Uploads, Wiedergabeverlauf usw.) enthalten sind, nicht abgerufen. Es werden nur von Nutzern erstellte Playlists abgerufen.

GET {base_URL}/playlists?part=snippet
                        &mine=true

Sobald du eine Playlist-ID hast, kannst du die Elemente aus der Playlist mit der im vorherigen Abschnitt gezeigten Anfrage abrufen.

Du kannst ohne Authentifizierung Informationen zu den öffentlichen Playlists eines Kanals anfordern. Wenn Sie eine nicht authentifizierte Anfrage senden, müssen Sie das Argument key angeben, das den eindeutigen API-Schlüssel für die Anwendung angibt, von der die Anfrage gesendet wird. Mit dieser Anfrage werden beispielsweise die Playlists abgerufen, die mit dem GoogleDevelopers-Kanal verknüpft sind.

GET {base_URL}/playlists?part=snippet
                        &channelId=UC_x5XG1OV2P6uZZ5FSM9Ttw
                        &key={YOUR_API_KEY}

Abos abrufen

Eine subscription-Ressource definiert eine Beziehung zwischen einem YouTube-Nutzer (dem Abonnent) und einem Kanal. Mit der Methode subscriptions.list werden je nach den Parametern, die du in die Anfrage einfügst, die Abonnenten eines bestimmten Kanals oder die Abos eines bestimmten Nutzers abgerufen.

Kanal-Abonnenten

Diese Anfrage ruft eine Liste der Abonnenten des authentifizierten Kanals ab.

GET {base_URL}/subscriptions?part=snippet
                            &mySubscribers=true

Nutzerabos

Mit derselben Methode zum Auflisten von Abonnenten (subscriptions.list) kannst du die Kanäle auflisten, die ein Nutzer abonniert hat. Diese Anfrage verwendet den Parameter mine, um eine Liste der YouTube-Kanäle abzurufen, die der authentifizierte Nutzer abonniert hat.

GET {base_URL}/subscriptions?part=snippet
                            &mine=true

Nutzeraktivität abrufen

Eine activity-Ressource enthält Informationen zu einer Aktion, die ein bestimmter Kanal oder Nutzer auf YouTube ausgeführt hat, z. B. das Hochladen eines Videos oder das Abonnieren eines Kanals. Mit der Methode activities.list werden die mit einem Kanal oder Nutzer verknüpften Aktionen abgerufen, die den Anfragekriterien entsprechen. Sie können beispielsweise Aktionen abrufen, die mit einem bestimmten Kanal, den Abos des Nutzers oder der benutzerdefinierten YouTube-Startseite des Nutzers verknüpft sind.

Aktivität während eines bestimmten Zeitraums

Diese Anforderung ruft alle Aktionen ab, die der authentifizierte Nutzer im April 2013 durchgeführt hat.

GET {base_URL}/activities?part=snippet,contentDetails
                         &mine=true
                         &publishedAfter=2013-04-01T00%3A00%3A00Z
                         &publishedBefore=2013-05-01T00%3A00%3A00Z

Aktivitäten auf der Startseite

Mit dieser Anfrage wird der benutzerdefinierte Aktivitätsfeed abgerufen, der auf der YouTube-Startseite des authentifizierten Nutzers angezeigt wird. 

GET {base_URL}/activities?part=snippet,contentDetails
                         &home=true

Mit der YouTube Analytics API kannst du Wiedergabestatistiken, Messwerte zur Beliebtheit von Inhalten und demografische Informationen für YouTube-Videos und -Kanäle abrufen. Auf der Seite Beispiele für API-Anfragen erfährst du, wie du gängige Berichte aus YouTube Analytics abrufen kannst.

Mit der Methode search.list können Sie nach YouTube-Videos, -Kanälen oder -Playlists suchen, die bestimmte Kriterien erfüllen. Du kannst nach Videoeigenschaften, Keywords oder Themen oder einer Kombination aus diesen Kriterien suchen. Die Ergebnisse lassen sich nach Faktoren wie Erstellungsdatum, Anzahl der Aufrufe oder Bewertung sortieren.

Wie bei anderen YouTube Data API-Anfragen gibt die Methode search.list die JSON-Darstellung einer YouTube-Ressource zurück. Im Gegensatz zu anderen YouTube-Ressourcen ist ein Suchergebnis jedoch kein dauerhaftes Objekt mit einer eindeutigen ID.

Bei vielen Anfragen wird nach öffentlich zugänglichen Inhalten gesucht. Daher ist keine Authentifizierung erforderlich. Von den Beispielen unten erfordert nur das erste eine Authentifizierung, da ausdrücklich nach „my“ gefragt wird. Videos. Wenn Sie eine nicht authentifizierte Anfrage senden, müssen Sie das Argument key angeben, das den eindeutigen API-Schlüssel für Ihre Anwendung angibt.

Meine am häufigsten angesehenen Videos

Diese Anfrage ruft alle Videos des authentifizierten Nutzers ab und listet sie in absteigender Reihenfolge nach Anzahl der Aufrufe auf.

GET {base_URL}/search?part=snippet
                     &forMine=true
                     &order=viewCount
                     &type=video

HD-Videos, die eingebettet werden können

Mit dieser Anfrage wird nach Videos mit bestimmten Eigenschaften gesucht, nämlich nach HD-Videos, die auf anderen Websites eingebettet werden können. Die Ergebnisse werden in absteigender Reihenfolge nach Bewertung aufgelistet.

GET {base_URL}/search?part=snippet
                     &order=rating
                     &type=video
                     &videoDefinition=high
                     &videoEmbeddable=true
                     &key={YOUR_API_KEY}

Videos zu einem bestimmten Thema

Bei dieser Anfrage wird eine Stichwortsuche nach Videos über die YouTube Data API durchgeführt, die Untertitel enthalten.

GET {base_URL}/search?part=snippet
                     &q=YouTube+Data+API
                     &type=video
                     &videoCaption=closedCaption
                     &key={YOUR_API_KEY}

Themenbasierte Suche

Eine ausgefeiltere Methode für die Suche nach Videos zu einem bestimmten Thema ist die Verwendung von Freebase-Themen anstelle von Keywords. YouTube-Kanal- und Videoressourcen enthalten alle ein topicDetails-Objekt, das eine Liste von Freebase-Themen-IDs enthält, die mit der Ressource verknüpft sind. Eine themenbasierte Suche ist intelligenter als eine Stichwortsuche, da ein Freebase-Thema alle Aspekte eines Konzepts oder einer Sache aus der realen Welt repräsentiert.

Wenn Sie mithilfe eines Freebase-Themas suchen möchten, müssen Sie zuerst die Themen-ID mithilfe der Freebase API abrufen. Diese Anfrage gibt Videos zurück, die mit dem Freebase-Thema für Python verknüpft sind, dessen Themen-ID /m/05z1_ lautet.

GET {base_URL}/search?part=snippet
                     &topicId=/m/05z1_
                     &type=video
                     &key={YOUR_API_KEY}

Nach Playlists oder Kanälen suchen

Die Suche ist nicht auf Videos beschränkt. Du kannst auch nach Playlists oder Kanälen suchen. Mit dieser Anfrage werden Playlists abgerufen, die mit dem Keyword „Fußball“ übereinstimmen.

GET {base_URL}/search?part=snippet
                     &q=soccer
                     &type=playlist
                     &key={YOUR_API_KEY}

Wenn du lieber Fußballkanäle finden möchtest, ändere einfach den type-Parameter.

GET {base_URL}/search?part=snippet
                     &q=soccer
                     &type=channel
                     &key={YOUR_API_KEY}

Wenn du alle Fußballinhalte wie Kanäle, Playlists und Videos sehen möchtest, kannst du eine universelle Suche durchführen. Wenn Sie den Parameter type weglassen, ruft die Anfrage Inhalte aller Typen ab

GET {base_URL}/search?part=snippet
                     &q=soccer
                     &key={YOUR_API_KEY}

Ressourcen erstellen und aktualisieren

Bei allen Anfragen, die wir uns bisher angesehen haben, wird die HTTP GET-Methode verwendet, um YouTube-Daten abzurufen. Das YouTube Data API bietet auch Methoden, bei denen HTTP POST verwendet wird, um YouTube-Ressourcen wie Videos, Playlists oder Kanäle zu erstellen oder zu aktualisieren. Die folgenden Anfragen enthalten Beispiele.

POST-Methoden enthalten eine Request body, d. h. die JSON-Darstellung der Ressource, die erstellt oder aktualisiert wird. Sie können JSON-Darstellungen in Google APIs Explorer mithilfe eines interaktiven Tools erstellen.

Abo erstellen

Durch diese Anfrage wird der authentifizierte Nutzer für den GoogleDevelopers-Kanal angemeldet. Mit anderen Worten, es wird eine Aboressource erstellt.

POST {base_URL}/subscriptions?part=snippet
Request body: {   'snippet': {     'resourceId': {       'kind': 'youtube#channel',       'channelId': 'UC_x5XG1OV2P6uZZ5FSM9Ttw'     }   } }

Playlist erstellen

Durch diese Anfrage wird eine neue öffentliche Playlist erstellt.

POST {base_URL}/playlists?part=snippet
Request body: {   'snippet': {     'title': 'New playlist',     'description': 'Sample playlist for Data API',   } }

Video zu einer Playlist hinzufügen

Nachdem wir eine Playlist erstellt haben, können wir ihr ein Video hinzufügen. Durch diese Anfrage wird am Anfang der Playlist ('position': 0) ein Video hinzugefügt.

POST {base_URL}/playlistItems?part=snippet
  Request body:
  {
    'snippet': {
      'playlistId': '{PLAYLIST_ID}', 
      'resourceId': {
          'kind': 'youtube#video',
          'videoId': '{VIDEO_ID}'
        }
     'position': 0
      }
   }