Beispiel-API-Anfragen

Auf dieser Seite finden Sie Beispielanfragen an die YouTube Data API. Mit der YouTube Data API können Sie YouTube-Ressourcen wie Videos, Kanäle und Playlists abrufen und bearbeiten. Jedes Beispiel enthält einen Link zum Google APIs Explorer, der mit den entsprechenden Informationen gefüllt wird. So können Sie das Beispiel ausführen und die Antwort sehen.

Informationen zum Hochladen von Inhalten mit der YouTube Data API finden Sie unter Fortsetzbare Uploads.

Übersicht

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

Hier ist ein Beispiel für eine Anfrage, wie sie auf dieser Seite angezeigt wird:

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

Die vollständige URL für diese Anfrage lautet:

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

Bei einigen Anfragen werden Daten abgerufen, 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 das Recht einräumen, YouTube Data API-Anfragen in seinem Namen zu stellen. Weitere Informationen zum Autorisieren des Zugriffs auf private Kanaldaten finden Sie unter OAuth 2.0-Authentifizierung implementieren. Klicken Sie nach dem Verknüpfen mit dem APIs Explorer auf die Schaltfläche Anfragen mit OAuth 2.0 autorisieren. Mit diesem Schritt wird der APIs Explorer autorisiert, Anfragen im Namen des Inhabers zu stellen. Außerdem wählen Sie den Umfang der Autorisierung aus, der die Arten von Anfragen angibt, die der APIs Explorer ausführen kann.

Die Antwort auf jede Anfrage 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 identifiziert eine oder mehrere Ressourcenattribute der obersten Ebene (nicht verschachtelt), die in der Antwort enthalten sein sollen. Einige Teile einer Video-Ressource sind beispielsweise:

  • Snippet
  • contentDetails
  • Spieler
  • Statistik
  • Status

Alle diese Teile sind Objekte, die verschachtelte Attribute enthalten. Sie können sich diese Objekte als Gruppen von Metadatenfeldern vorstellen, die der API-Server möglicherweise abruft. Daher müssen Sie mit dem Parameter part die Ressourcenkomponenten auswählen, die Ihre Anwendung tatsächlich verwendet.Weitere Informationen finden Sie 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 zu notieren.

{
  "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. Wenn Sie eine Liste der hochgeladenen Videos abrufen möchten, fragen Sie die Playlist „Uploads“ ab, die in der oben gezeigten Antwort für Kanalinformationen zurückgegeben wird. Verwenden Sie dazu die playlistItems.list Methode, um die Videos in dieser Playlist abzurufen.

Ersetzen Sie vor dem Ausführen der folgenden Beispielanfrage im Google APIs Explorer {UPLOADS_PLAYLIST_ID} durch die Playlist-ID aus der vorherigen Anfrage.

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

Der Wert "id" für jedes zurückgegebene Element ist die playlistItem-ID. Die Video-ID für das Playlist-Element ist die videoId im Teil contentDetails.

Mit der oben genannten Anfrage können Sie die Listen „Favoriten“, „Gefällt mir“, „Wiedergabeverlauf“ oder „Später ansehen“ eines Nutzers abrufen, indem Sie die entsprechende Playlist-ID aus der Antwort mit den Kanalinformationen ersetzen.

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. Beachten Sie, dass mit dieser Anfrage nicht die vom System generierten Playlists abgerufen werden, die in den Kanalinformationen enthalten sind (Uploads, Wiedergabeverlauf usw.). Es werden nur von Nutzern erstellte Playlists abgerufen.

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

Sobald Sie eine Playlist-ID haben, können Sie die Elemente aus der Playlist mit der im vorherigen Abschnitt gezeigten Anfrage abrufen.

Sie können Informationen zu öffentlichen Playlists eines Kanals ohne Authentifizierung anfordern. Wenn Sie eine nicht authentifizierte Anfrage senden, müssen Sie das key Argument angeben, das den eindeutigen API-Schlüssel für die Anwendung enthält, die die Anfrage stellt. Mit dieser Anfrage werden beispielsweise die Playlists abgerufen, die mit dem Kanal GoogleDevelopers 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 Abonnenten) und einem Kanal. Mit der Methode subscriptions.list werden die Abonnenten eines bestimmten Kanals oder die Abos eines bestimmten Nutzers abgerufen, je nachdem, welche Parameter Sie in die Anfrage aufnehmen.

Kanal-Abonnenten

Mit dieser Anfrage wird eine Liste der Abonnenten des authentifizierten Kanals abgerufen.

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

Nutzerabos

Mit derselben Methode, mit der Abonnenten aufgelistet werden (subscriptions.list), können Sie auch die Kanäle auflisten, die ein Nutzer abonniert hat. Bei dieser Anfrage wird der Parameter mine verwendet, um eine Liste der YouTube-Kanäle abzurufen, die der authentifizierte Nutzer abonniert hat.

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

Nutzeraktivitäten 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 Aktionen abgerufen, die mit einem Kanal oder Nutzer verknüpft sind und 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äten in einem Zeitraum

Mit dieser Anfrage werden alle Aktionen abgerufen, die der authentifizierte Nutzer im April 2013 ausgefü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

Wenn Sie Aufrufstatistiken, Beliebtheitsmesswerte und demografische Informationen für YouTube-Videos und ‑Kanäle abrufen möchten, verwenden Sie die YouTube Analytics API. Auf der Seite Beispielhafte API-Anfragen erfahren Sie, wie Sie gängige Berichte aus YouTube Analytics abrufen.

Mit der Methode search.list können Sie nach YouTube-Videos, ‑Kanälen oder ‑Playlists suchen, die bestimmten Kriterien entsprechen. Sie können anhand von Videoattributen, Keywords oder Themen (oder einer Kombination davon) suchen und die Ergebnisse 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 verfügbaren Inhalten gesucht. Daher ist keine Authentifizierung erforderlich. Unter den folgenden Beispielen ist nur für das erste eine Authentifizierung erforderlich, da es speziell nach „meinen“ Videos fragt. Wenn Sie eine nicht authentifizierte Anfrage senden, müssen Sie das key Argument angeben, das den eindeutigen API-Schlüssel für Ihre Anwendung enthält.

Meine meistgesehenen Videos

Mit dieser Anfrage werden alle Videos des authentifizierten Nutzers abgerufen und nach Anzahl der Aufrufe in absteigender Reihenfolge aufgelistet.

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

Einbettbare HD-Videos

Mit dieser Anfrage wird nach Videos mit bestimmten Attributen gesucht, nämlich 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

Mit dieser Anfrage wird eine Keyword-Suche nach Videos zur 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 anspruchsvollere Möglichkeit, nach Videos zu einem bestimmten Thema zu suchen, besteht darin, Freebase-Themen anstelle von Keywords zu verwenden. Alle YouTube-Kanal- und Videoressourcen enthalten ein topicDetails-Objekt mit einer Liste von Freebase-Themen-IDs, die mit der Ressource verknüpft sind. Eine themenbasierte Suche ist intelligenter als eine Keyword-Suche, da ein Freebase-Thema alle Aspekte eines realen Konzepts oder einer realen Sache darstellt.

Wenn Sie mit einem Freebase-Thema suchen möchten, müssen Sie zuerst die Themen-ID mit der Freebase API abrufen. Mit dieser Anfrage werden Videos zurückgegeben, die mit dem Freebase-Thema für Python verknüpft sind. Die Themen-ID lautet /m/05z1_.

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. Sie können auch nach Playlists oder Kanälen suchen. Mit dieser Anfrage werden Playlists abgerufen, die dem Keyword „Fußball“ entsprechen.

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

Wenn Sie lieber nach Fußballkanälen suchen möchten, ändern Sie einfach den Parameter type.

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

Wenn Sie alle Inhalte zum Thema Fußball (Kanäle, Playlists und Videos) finden möchten, können Sie eine universelle Suche durchführen. Wenn Sie den Parameter type weglassen, werden mit der Anfrage Inhalte aller Typen abgerufen.

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

Ressourcen erstellen und aktualisieren

Bei allen bisher betrachteten Anfragen wurde die HTTP-Methode GET verwendet, um YouTube-Daten abzurufen. Die YouTube Data API bietet auch Methoden, die HTTP POST verwenden, um YouTube-Ressourcen wie Videos, Playlists oder Kanäle zu erstellen oder zu aktualisieren. Die folgenden Anfragen enthalten Beispiele.

POST-Methoden enthalten einen Request body, der die JSON-Darstellung der Ressource ist, die erstellt oder aktualisiert wird. Sie können JSON-Darstellungen im Google APIs Explorer mit einem interaktiven Tool erstellen.

Abo erstellen

Mit dieser Anfrage abonniert der authentifizierte Nutzer den Kanal GoogleDevelopers. Mit anderen Worten: Es wird eine Abo-Ressource erstellt.

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

Playlist erstellen

Mit dieser 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, fügen wir ihr ein Video hinzu. Mit dieser Anfrage wird ein Video am Anfang der Playlist hinzugefügt ('position': 0).

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