Members

منبع member نشان‌دهنده عضو کانال برای کانال YouTube است. عضو حمایت مالی تکرارشونده‌ای به محتواساز ارائه می‌دهد و مزایای ویژه دریافت می‌کند. برای مثال، اعضا می‌توانند زمانی که محتواساز حالت مختص اعضا را برای گپ روشن می‌کند، گپ بزنند.

محدودیت‌های دسترسی زیر اعمال می‌شود:

  • دسترسی به نقاط پایانی members و membershipsLevels محدود به محتواسازان YouTube است که «مدیر شریک YouTube» اختصاصی دارند.
  • دسترسی در سطح کانال اعطا می‌شود. به‌دلیل این فهرست مجاز سطح کانال، حوزه OAuth youtube.channel-memberships.creator از فرایند استاندارد درستی‌سنجی Google Cloud OAuth عبور نمی‌کند.

روش‌ها

این میانای برنامه‌سازی کاربردی از روش‌های زیر برای منابع member پشتیبانی می‌کند:

فهرست
اعضای کانال (که قبلاً «حامیان مالی» نامیده می‌شدند) را فهرست می‌کند. درخواست میانای برنامه‌سازی کاربردی باید توسط مالک کانال مجاز شود.

نمایش منبع

ساختار JSON زیر قالب منبع 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,
        }
      ]
    }
  }
}

مشخصات

جدول زیر ویژگی‌هایی را که در این منبع ظاهر می‌شوند تعریف می‌کند:

مشخصات
kind string
نوع منبع میانای برنامه‌سازی کاربردی را مشخص می‌کند. مقدار youtube#member خواهد بود.
etag etag
‫Etag این منبع.
snippet object
شیء snippet حاوی جزئیات مربوط به عضو است.
snippet.creatorChannelId string
شناسه کانال YouTube محتواسازی که عضویت ارائه می‌دهد.
snippet.memberDetails object
این شیء حاوی داده‌های نمایه درباره کانال YouTube است که هزینه عضویت را پرداخت می‌کند.

توجه داشته باشید که کانال می‌تواند اعضایی داشته باشد که داده‌های نمایه آن‌ها دردسترس نیست. برای مثال، این اتفاق برای اعضایی می‌افتد که کانالشان را حذف کرده‌اند اما همچنان هزینه عضویت را پرداخت می‌کنند. توجه داشته باشید که این اعضا همچنان می‌توانند به مزایای عضویتشان دسترسی داشته باشند.

پاسخ‌های API شامل منابعی برای آن اعضا است تا شمارش دقیق را تضمین کند، حتی اگر جزئیات نمایه درون شیء memberDetails تنظیم نشده باشد. membershipsDetails همچنان برای این اعضا ارائه می‌شود.
snippet.memberDetails.channelId string
شناسه کانال YouTube کانال عضو. اگر تنظیم شده باشد، شناسه کانال می‌تواند به‌عنوان شناسه منحصربه‌فرد برای عضو نیز درنظر گرفته شود. اگر تنظیم نشده باشد، عضو را نمی‌توان به‌طور منحصربه‌فرد شناسایی کرد، اما منبع همچنان جزئیات عضویت را منتقل می‌کند، مانند سطوحی که عضو می‌تواند به آن‌ها دسترسی داشته باشد و مدت عضویت او.
snippet.memberDetails.channelUrl string
نشانی وب کانال.
snippet.memberDetails.displayName string
نام نمایشی کانال.
snippet.memberDetails.profileImageUrl string
نشانی وب چهرک کانال.
snippet.membershipsDetails object
این شیء حاوی جزئیات عضویت برای کانال عضو است.
snippet.membershipsDetails.highestAccessibleLevel string
شناسه بالاترین سطح عضویت که کانال عضو درحال‌حاضر می‌تواند به آن دسترسی داشته باشد. این مقدار با مقدار ویژگی id در منبع membershipsLevel مطابقت دارد.
snippet.membershipsDetails.highestAccessibleLevelDisplayName string
نام بالاترین سطح عضویت که کانال عضو درحال‌حاضر می‌تواند به آن دسترسی داشته باشد. این مقدار با مقدار دارایی displayName در منبع membershipsLevel مطابقت دارد.
snippet.membershipsDetails.accessibleLevels[] list (of strings)
فهرستی از شناسه‌های همه سطوح عضویت که کاربر درحال‌حاضر می‌تواند به آن‌ها دسترسی داشته باشد. این فهرست شامل سطح فعال کنونی و همه سطوح زیر آن می‌شود.
snippet.membershipsDuration object
این شیء حاوی اطلاعاتی درباره مدت کلی عضویت فعلی عضو بدون درنظر گرفتن سطوح قیمت‌گذاری است. سپس ویژگی snippet.membershipsDetails.membershipsDurationAtLevel[] حاوی فهرستی از اشیاء است که جزئیات مربوط به دوره‌ای از عضویت را دربرمی‌گیرد که طی آن عضو به سطح عضویت خاصی دسترسی داشته است.

مثال زیر نشان می‌دهد که این ویژگی‌ها چگونه کار می‌کنند: عضوی عضویت جدیدی را در ژانویه در سطح عضویت ۱ خریداری می‌کند و این عضویت را تا مارس دارد. در ماه آوریل و مه، عضو عضویت ندارد. در ماه ژوئن، عضویت خود را دوباره در سطح ۱ شروع می‌کند. سپس، در ماه اوت، عضو عضویت خود را به سطح ۲ ارتقا می‌دهد. بنابراین، اگر فراخوانی میانای برنامه‌سازی کاربردی در ماه اکتبر انجام شود، منبع member حاوی موارد زیر خواهد بود:
"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
تاریخ و زمانی که عضویت فعلی عضو شروع شده است. به‌عبارت دیگر، عضو از این تاریخ و زمان به‌طور مداوم عضویت داشته است. توجه داشته باشید که ممکن است دوره‌های مختلف عضویت در سطوح مختلف عضویت سپری شده باشد.
snippet.membershipsDuration.memberTotalDurationMonths integer
تعداد ماه‌هایی که کاربر عضو بوده است، گردشده به نزدیک‌ترین عدد صحیح. این مقدار نشان‌دهنده تعداد ماه‌های کاملی است که عضو عضویت داشته است، اما این عدد به این معنی نیست که عضو به‌طور مداوم برای آن تعداد ماه عضویت داشته است.
snippet.memberDetails.membershipsDetails.membershipsDurationAtLevel[] list (of objects)
فهرستی از اشیاء که هر شیء حاوی جزئیاتی درباره دوره‌ای از عضویت است که طی آن عضو به سطح عضویت خاصی دسترسی داشته است. این فهرست شامل یک شیء برای هر سطح عضویت است که عضو درحال‌حاضر می‌تواند به آن دسترسی داشته باشد.
snippet.memberDetails.membershipsDetails.membershipsDurationAtLevel.level string
شناسه سطح عضویت. این مقدار با مقدار ویژگی id در منبع membershipsLevel مطابقت دارد.
snippet.memberDetails.membershipsDetails.membershipsDurationAtLevel.memberSince datetime
تاریخ و زمانی که عضو به سطح عضویت مشخص‌شده دسترسی داشته است. به عبارت دیگر، عضو از این تاریخ و زمان به‌طور مداوم به این سطح دسترسی داشته است. توجه داشته باشید که ممکن است دوره‌های مختلف عضویت در سطوح بالاتر عضویت سپری شده باشد.
snippet.memberDetails.membershipsDetails.membershipsDurationAtLevel.memberTotalDurationMonths integer
تعداد ماه‌هایی که کاربر به سطح مشخص‌شده دسترسی داشته است، که به نزدیک‌ترین عدد صحیح گرد شده است. این مقدار نشان‌دهنده تعداد ماه‌های کاملی است که عضو به سطح دسترسی داشته است، اما این عدد به این معنی نیست که عضو به‌طور مداوم عضویت خود را برای آن تعداد ماه حفظ کرده است.