Members

Catatan: Mulai 31 Maret 2020, endpoint members akan menggantikan endpoint sponsors, yang kini tidak digunakan lagi dan tidak akan didukung lagi pada atau setelah 30 September 2020. Klien API harus memperbarui panggilan ke metode sponsors.list untuk menggunakan metode members.list.

Endpoint ini hanya dapat digunakan oleh kreator individu untuk membuat permintaan untuk channel YouTube mereka sendiri yang mengaktifkan langganan channel. Hubungi perwakilan Google atau YouTube Anda untuk meminta akses.

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

Metode

API ini mendukung metode berikut untuk resource member:

list
Mencantumkan pelanggan (sebelumnya disebut "sponsor") untuk channel. Permintaan API harus diotorisasi 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 dalam resource ini:

Properti
kind string
Mengidentifikasi jenis resource API. Nilainya akan menjadi youtube#member.
etag etag
Etag resource ini.
snippet object
Objek snippet berisi detail tentang anggota.
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 anggota ini masih dapat mengakses manfaat langganan mereka.

Respons API menyertakan resource untuk anggota tersebut guna memastikan jumlah yang akurat meskipun detail profil di dalam objek memberDetails tidak ditetapkan. membershipsDetails masih disediakan 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 masih menyampaikan detail langganan seperti level yang dapat diakses pelanggan dan durasi langganannya.
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 tingkat langganan yang saat ini dapat diakses pengguna. Daftar ini mencakup tingkat yang saat ini aktif dan semua tingkat di bawahnya.
snippet.membershipsDuration object
Objek ini berisi informasi tentang keseluruhan durasi langganan anggota saat ini tanpa mempertimbangkan tingkat harga. Properti snippet.membershipsDetails.membershipsDurationAtLevel[] kemudian berisi daftar objek yang berisi detail tentang periode keanggotaan selama anggota memiliki akses ke tingkat keanggotaan tertentu.

Contoh berikut menunjukkan cara kerja properti ini: Seorang pelanggan membeli langganan baru pada bulan Januari di tingkat langganan 1 dan memiliki langganan tersebut hingga Maret. Pada bulan April dan Mei, anggota tidak memiliki langganan. Pada bulan Juni, pelanggan memulai ulang langganannya, lagi-lagi di level 1. Kemudian, pada bulan Agustus, pelanggan mengupgrade langganannya 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 saat ini dimulai. Dengan kata lain, anggota tersebut telah terus memiliki langganan sejak tanggal dan waktu ini. Perhatikan bahwa periode keanggotaan yang berbeda mungkin telah dihabiskan di tingkat keanggotaan yang berbeda.
snippet.membershipsDuration.memberTotalDurationMonths integer
Jumlah bulan, yang dibulatkan ke bawah ke bilangan bulat terdekat, sejak pengguna menjadi pelanggan. Nilai ini mencerminkan jumlah bulan penuh yang telah dihabiskan pelanggan untuk berlangganan, tetapi jumlah tersebut tidak menyiratkan bahwa pelanggan telah terus berlangganan selama jumlah bulan tersebut.
snippet.memberDetails.membershipsDetails.membershipsDurationAtLevel[] list (of objects)
Daftar objek, dengan setiap objek berisi detail tentang periode keanggotaan selama anggota memiliki akses ke tingkat keanggotaan tertentu. Daftar ini mencakup satu objek untuk setiap tingkat 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 anggota memiliki akses ke tingkat langganan yang ditentukan. Dengan kata lain, anggota tersebut 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, yang dibulatkan ke bawah ke bilangan bulat terdekat, yang telah diakses pengguna ke tingkat yang ditentukan. Nilai ini mencerminkan jumlah bulan penuh yang telah dihabiskan pelanggan untuk mengakses level, tetapi jumlah tersebut tidak menyiratkan bahwa pelanggan terus memiliki langganan selama jumlah bulan tersebut.