Members

Eine member Ressource stellt ein Kanalmitglied für einen YouTube Kanal dar. Ein Mitglied leistet wiederkehrende finanzielle Unterstützung für einen Creator und erhält dafür besondere Vorteile. Mitglieder können beispielsweise chatten, wenn der Creator den Modus „Nur für Mitglieder“ für einen Chat aktiviert.

Es gelten die folgenden Zugriffsbeschränkungen:

  • Der Zugriff auf die members und membershipsLevels Endpunkte ist auf YouTube-Creator beschränkt, die einen eigenen YouTube-Partnermanager haben.
  • Der Zugriff wird auf Kanalebene gewährt. Aufgrund dieser Zulassungsliste auf Kanalebene wird der OAuth-Bereich youtube.channel-memberships.creator nicht über den standardmäßigen Google Cloud OAuth-Bestätigungsprozess verifiziert.

Methoden

Die API unterstützt die folgenden Methoden für member-Ressourcen:

list
Listet Mitglieder (früher als „Sponsoren“ bezeichnet) für einen Kanal auf. Die API-Anfrage muss von dem Kanalinhaber autorisiert werden.

Ressourcendarstellung

Die folgende JSON-Struktur zeigt das Format einer member-Ressource:

{
  "kind": "youtube#member",
  "etag": etag,
  "snippet": {
    "creatorChannelId": string,
    "memberDetails": {
      "channelId": string,
      "channelUrl": string,
      "displayName": string,
      "profileImageUrl": string
    },
    "membershipsDetails": {
      "highestAccessibleLevel": string,
      "highestAccessibleLevelDisplayName": string,
      "accessibleLevels": [
        string
      ],
      "membershipsDuration": {
        "memberSince": datetime,
        "memberTotalDurationMonths": integer,
      },
      "membershipsDurationAtLevel": [
        {
          "level": string,
          "memberSince": datetime,
          "memberTotalDurationMonths": integer,
        }
      ]
    }
  }
}

Attribute

In der folgenden Tabelle werden die Attribute definiert, die in dieser Ressource angezeigt werden:

Attribute
kind string
Gibt den Typ der API-Ressource an. Der Wert ist youtube#member.
etag etag
Das ETag dieser Ressource.
snippet object
Das snippet-Objekt enthält Details zum Mitglied.
snippet.creatorChannelId string
Die YouTube-Kanal-ID des Creators, der Mitgliedschaften anbietet.
snippet.memberDetails object
Dieses Objekt enthält Profildaten zum YouTube-Kanal, der für die Mitgliedschaft bezahlt.

Ein Kanal kann Mitglieder mit nicht verfügbaren Profildaten haben. Das ist beispielsweise bei Mitgliedern der Fall, die ihre Kanäle gelöscht haben, aber weiterhin für Mitgliedschaften bezahlen. Diese Mitglieder können weiterhin auf ihre Mitgliedschaftsvorteile zugreifen.

API-Antworten enthalten Ressourcen für diese Mitglieder, um genaue Zählungen zu gewährleisten, auch wenn die Profildetails im memberDetails Objekt nicht festgelegt sind. Die membershipsDetails werden weiterhin für solche Mitglieder bereitgestellt.
snippet.memberDetails.channelId string
Die YouTube-Kanal-ID des Mitgliedskanals. Wenn sie festgelegt ist, kann die Kanal-ID auch als eindeutige Kennung für das Mitglied behandelt werden. Wenn sie nicht festgelegt ist, kann das Mitglied nicht eindeutig identifiziert werden. Die Ressource enthält aber weiterhin Mitgliedschaftsdetails wie die Stufen, auf die das Mitglied zugreifen kann, und die Dauer der Mitgliedschaft.
snippet.memberDetails.channelUrl string
Die URL des Kanals.
snippet.memberDetails.displayName string
Der Anzeigename des Kanals.
snippet.memberDetails.profileImageUrl string
Die Avatar-URL des Kanals.
snippet.membershipsDetails object
Dieses Objekt enthält Mitgliedschaftsdetails für den Mitgliedskanal.
snippet.membershipsDetails.highestAccessibleLevel string
Die ID der höchsten Mitgliedschaftsstufe, auf die der Mitgliedskanal derzeit zugreifen kann. Der Wert entspricht dem Wert des Attributs id in einer membershipsLevel-Ressource.
snippet.membershipsDetails.highestAccessibleLevelDisplayName string
Der Name der höchsten Mitgliedschaftsstufe, auf die der Mitgliedskanal derzeit zugreifen kann. Der Wert entspricht dem displayName Wert des Attributs in einer membershipsLevel Ressource.
snippet.membershipsDetails.accessibleLevels[] list (of strings)
Eine Liste der IDs für alle Mitgliedschaftsstufen, auf die der Nutzer derzeit zugreifen kann. Die Liste enthält die derzeit aktive Stufe und alle darunter liegenden Stufen.
snippet.membershipsDuration object
Dieses Objekt enthält Informationen zur Gesamtdauer der aktuellen Mitgliedschaft des Mitglieds, unabhängig von den Preisstufen. Das snippet.membershipsDetails.membershipsDurationAtLevel[] Attribut enthält dann eine Liste von Objekten mit Details zu einem Zeitraum der Mitgliedschaft, in dem das Mitglied Zugriff auf eine bestimmte Mitgliedschaftsstufe hatte.

Das folgende Beispiel zeigt, wie diese Attribute funktionieren: Ein Mitglied erwirbt im Januar eine neue Mitgliedschaft auf Mitgliedschaftsstufe 1 und hat diese Mitgliedschaft bis März. Im April und Mai hat das Mitglied keine Mitgliedschaft. Im Juni startet das Mitglied seine Mitgliedschaft wieder, ebenfalls auf Stufe 1. Im August führt das Mitglied dann ein Upgrade auf Stufe 2 durch. Wenn also im Oktober ein API Aufruf erfolgt, enthält die member Ressource Folgendes:
"membershipsDetails": {
  "membershipsDuration": {
    "memberSince": "2020-06-01T12:00:00",
    "memberTotalDurationMonths": 7,
  },
  "membershipsDurationAtLevel": [
    {
      "level": "level_1_ID",
      "memberSince": "2020-06-01T12:00:00",
      "memberTotalDurationMonths": 7
    },
    {
      "level": "level_2_ID",
      "memberSince": "2020-08-01T12:00:00",
      "memberTotalDurationMonths": 2
    },
  ]
}
snippet.membershipsDuration.memberSince datetime
Datum und Uhrzeit, zu der die aktuelle Mitgliedschaft des Mitglieds begonnen hat. Mit anderen Worten: Das Mitglied hat seit diesem Datum und dieser Uhrzeit kontinuierlich eine Mitgliedschaft. Beachte, dass verschiedene Zeiträume der Mitgliedschaft auf unterschiedlichen Mitgliedschaftsstufen verbracht worden sein können.
snippet.membershipsDuration.memberTotalDurationMonths integer
Die Anzahl der Monate, gerundet auf die nächste ganze Zahl, die der Nutzer Mitglied ist. Der Wert gibt die Anzahl der vollständigen Monate an, in denen das Mitglied eine Mitgliedschaft hatte, aber das bedeutet nicht, dass das Mitglied in diesen Monaten kontinuierlich eine Mitgliedschaft hatte.
snippet.memberDetails.membershipsDetails.membershipsDurationAtLevel[] list (of objects)
Eine Liste von Objekten, die jeweils Details zu einem Zeitraum der Mitgliedschaft enthalten, in dem das Mitglied Zugriff auf eine bestimmte Mitgliedschaftsstufe hatte. Die Liste enthält ein Objekt für jede Mitgliedschaftsstufe, auf die das Mitglied derzeit zugreifen kann.
snippet.memberDetails.membershipsDetails.membershipsDurationAtLevel.level string
Die ID der Mitgliedschaftsstufe. Der Wert entspricht dem id Wert des Attributs in einer membershipsLevel Ressource.
snippet.memberDetails.membershipsDetails.membershipsDurationAtLevel.memberSince datetime
Datum und Uhrzeit, ab denen das Mitglied Zugriff auf die angegebene Mitgliedschaftsstufe hatte. Mit anderen Worten: Das Mitglied hat seit diesem Datum und dieser Uhrzeit kontinuierlich Zugriff auf die Stufe. Beachte, dass verschiedene Zeiträume der Mitgliedschaft auf höheren Mitgliedschafts stufen verbracht worden sein können.
snippet.memberDetails.membershipsDetails.membershipsDurationAtLevel.memberTotalDurationMonths integer
Die Anzahl der Monate, gerundet auf die nächste ganze Zahl, in denen der Nutzer Zugriff auf die angegebene Stufe hatte. Der Wert gibt die Anzahl der vollständigen Monate an, in denen das Mitglied Zugriff auf die Stufe hatte. Das bedeutet aber nicht, dass das Mitglied in diesen Monaten kontinuierlich eine Mitgliedschaft hatte.