Members

Resource member mewakili pelanggan channel untuk channel YouTube. Pelanggan memberikan dukungan finansial berulang kepada kreator dan menerima manfaat khusus. Misalnya, pelanggan dapat melakukan chat saat kreator mengaktifkan mode khusus pelanggan untuk chat.

Batasan akses berikut berlaku:

  • Akses ke endpoint members dan membershipsLevels hanya tersedia untuk kreator YouTube yang memiliki Partner Manager YouTube khusus.
  • Akses diberikan di tingkat channel. Karena daftar yang diizinkan di tingkat channel ini, cakupan OAuth youtube.channel-memberships.creator tidak melalui proses verifikasi OAuth Google Cloud standar.

Metode

API mendukung metode berikut untuk resource member:

list
Mencantumkan pelanggan (sebelumnya dikenal sebagai "sponsor") untuk channel. Permintaan API harus diizinkan oleh pemilik channel.

Representasi resource

Struktur JSON berikut menunjukkan format resource member:

{
  "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,
        }
      ]
    }
  }
}

Properti

Tabel berikut menentukan properti yang muncul di resource ini:

Properti
kind string
Mengidentifikasi jenis resource API. Nilainya adalah youtube#member.
etag etag
Etag resource ini.
snippet object
Objek snippet berisi detail tentang pelanggan.
snippet.creatorChannelId string
ID channel YouTube kreator yang menawarkan langganan.
snippet.memberDetails object
Objek ini berisi data profil tentang channel YouTube yang membayar langganan.

Perhatikan bahwa channel dapat memiliki pelanggan dengan data profil yang tidak tersedia. Misalnya, hal ini terjadi pada pelanggan yang telah menghapus channel mereka, tetapi masih membayar langganan. Perhatikan bahwa pelanggan ini masih dapat mengakses manfaat langganan mereka.

Respons API menyertakan resource untuk pelanggan tersebut guna memastikan jumlah yang akurat meskipun detail profil di dalam objek memberDetails tidak ditetapkan. The membershipsDetails masih diberikan untuk pelanggan tersebut.
snippet.memberDetails.channelId string
ID channel YouTube channel pelanggan. Jika ditetapkan, ID channel juga dapat diperlakukan sebagai ID unik untuk pelanggan. Jika tidak ditetapkan, pelanggan tidak dapat diidentifikasi secara unik, tetapi resource tetap menyampaikan detail langganan seperti level yang dapat diakses pelanggan dan durasi langganan mereka.
snippet.memberDetails.channelUrl string
URL channel.
snippet.memberDetails.displayName string
Nama tampilan channel.
snippet.memberDetails.profileImageUrl string
URL avatar channel.
snippet.membershipsDetails object
Objek ini berisi detail langganan untuk channel pelanggan.
snippet.membershipsDetails.highestAccessibleLevel string
ID level langganan tertinggi yang saat ini dapat diakses oleh channel pelanggan. Nilai ini sesuai dengan nilai properti id dalam resource membershipsLevel.
snippet.membershipsDetails.highestAccessibleLevelDisplayName string
Nama level langganan tertinggi yang saat ini dapat diakses oleh channel pelanggan. Nilai ini sesuai dengan nilai properti displayName dalam resource membershipsLevel.
snippet.membershipsDetails.accessibleLevels[] list (of strings)
Daftar ID untuk semua level langganan yang saat ini dapat diakses oleh pengguna. Daftar ini mencakup level yang saat ini aktif dan semua level di bawahnya.
snippet.membershipsDuration object
Objek ini berisi informasi tentang durasi keseluruhan langganan pelanggan saat ini tanpa memperhatikan level harga. Properti snippet.membershipsDetails.membershipsDurationAtLevel[] kemudian berisi daftar objek yang berisi detail tentang periode langganan selama pelanggan memiliki akses ke level langganan tertentu.

Contoh berikut menunjukkan cara kerja properti ini: Pelanggan membeli langganan baru pada bulan Januari di level langganan 1 dan memiliki langganan tersebut hingga bulan Maret. Pada bulan April dan Mei, the pelanggan tidak memiliki langganan. Pada bulan Juni, pelanggan memulai ulang langganan mereka, lagi di level 1. Kemudian, pada bulan Agustus, pelanggan mengupgrade langganan mereka ke level 2. Jadi, jika panggilan API dilakukan pada bulan Oktober, resource member akan berisi hal berikut:
"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
Tanggal dan waktu langganan pelanggan saat ini dimulai. Dengan kata lain, pelanggan terus memiliki langganan sejak tanggal dan waktu ini. Perhatikan bahwa periode langganan yang berbeda mungkin telah dihabiskan di level langganan yang berbeda.
snippet.membershipsDuration.memberTotalDurationMonths integer
Jumlah bulan, dibulatkan ke bawah ke bilangan bulat terdekat, yang telah menjadi pelanggan. Nilai ini mencerminkan jumlah bulan lengkap yang telah dimiliki pelanggan, tetapi angka tersebut tidak menyiratkan bahwa pelanggan terus memiliki langganan selama beberapa bulan tersebut.
snippet.memberDetails.membershipsDetails.membershipsDurationAtLevel[] list (of objects)
Daftar objek, yang setiap objeknya berisi detail tentang periode langganan selama pelanggan memiliki akses ke level langganan tertentu. Daftar ini mencakup satu objek untuk setiap level langganan yang saat ini dapat diakses oleh pelanggan.
snippet.memberDetails.membershipsDetails.membershipsDurationAtLevel.level string
ID level langganan. Nilai ini sesuai dengan nilai properti id dalam resource membershipsLevel.
snippet.memberDetails.membershipsDetails.membershipsDurationAtLevel.memberSince datetime
Tanggal dan waktu sejak pelanggan memiliki akses ke level langganan yang ditentukan. Dengan kata lain, pelanggan terus memiliki akses ke level tersebut sejak tanggal dan waktu ini. Perhatikan bahwa periode langganan yang berbeda mungkin telah dihabiskan di level langganan yang lebih tinggi.
snippet.memberDetails.membershipsDetails.membershipsDurationAtLevel.memberTotalDurationMonths integer
Jumlah bulan, dibulatkan ke bawah ke bilangan bulat terdekat, yang telah diakses oleh pengguna ke level yang ditentukan. Nilai ini mencerminkan jumlah bulan lengkap yang telah diakses oleh pelanggan ke level tersebut, tetapi angka tersebut tidak menyiratkan bahwa pelanggan terus memiliki langganan selama beberapa bulan tersebut.