احراز هویت و مجاز کردن برنامه‌های Chat و درخواست‌های Google Chat API

اصالت‌سنجی و صدور مجوز سازوکارهایی هستند که به‌ترتیب برای درستی‌سنجی هویت و دسترسی به منابع استفاده می‌شوند. این سند نحوه عملکرد اصالت‌سنجی و صدور مجوز برای برنامه‌های Chat و درخواست‌های Chat API را شرح می‌دهد.

نمای کلی فرایند

نمودار زیر مراحل سطح بالای اصالت‌سنجی و صدور مجوز برای Google Chat را نشان می‌دهد:

مراحل سطح بالا برای اصالت‌سنجی و صدور مجوز Google Chat
شکل ۱. مراحل سطح بالا برای اصالت‌سنجی و صدور مجوز Google Chat.

  1. پیکربندی پروژه Google Cloud، فعال کردن Chat API، و پیکربندی برنامه Chat: درطول توسعه، پروژه Google Cloud ایجاد می‌کنید. در پروژه Google Cloud، Chat API را فعال می‌کنید، برنامه Chat را پیکربندی می‌کنید، و اصالت‌سنجی را راه‌اندازی می‌کنید. برای اطلاعات بیشتر، توسعه در Google Workspace و ساختن برنامه Chat را ببینید.

  2. فراخوانی Chat API: وقتی برنامه‌تان Chat API را فراخوانی می‌کند، اعتبارنامه‌های اصالت‌سنجی را به Chat API ارسال می‌کند. اگر برنامه‌تان با حساب سرویس اصالت‌سنجی می‌کند، اعتبارنامه‌ها به‌عنوان بخشی از کد برنامه‌تان ارسال می‌شود. اگر برنامه شما نیاز به فراخوانی Chat API بااستفاده از اصالت‌سنجی کاربری داشته باشد که هنوز اعطا نشده است، از کاربر می‌خواهد به سیستم وارد شود.

  3. درخواست منابع: برنامه شما با دامنه‌هایی که هنگام راه‌اندازی اصالت‌سنجی مشخص می‌کنید، درخواست دسترسی می‌کند.

  4. درخواست رضایت: اگر برنامه شما به‌عنوان کاربر اصالت‌سنجی می‌کند، Google صفحه رضایت OAuth را نمایش می‌دهد تا کاربر بتواند تصمیم بگیرد که آیا به برنامه شما اجازه دسترسی به داده‌های درخواستی را بدهد یا نه. اصالت‌سنجی با حساب سرویس به رضایت کاربر نیاز ندارد.

  5. ارسال درخواست تأییدشده برای منابع: اگر کاربر با گستره‌های مجوز موافقت کند، برنامه‌تان اطلاعات اعتباری و گستره‌های تأییدشده توسط کاربر را در یک درخواست بسته‌بندی می‌کند. درخواست به سرور مجوز Google ارسال می‌شود تا کد دسترسی دریافت شود.

  6. Google کد دسترسی را برمی‌گرداند: کد دسترسی حاوی فهرستی از گستره‌های اعطاشده است. اگر فهرست گستره‌های برگردانده‌شده محدودکننده‌تر از گستره‌های درخواست‌شده باشد، برنامه شما هر ویژگی‌ای را که توسط کد محدود شده است خاموش می‌کند.

  7. دسترسی به منابع درخواست‌شده: برنامه شما از کد دسترسی Google برای فراخوانی Chat API و دسترسی به منابع Chat API استفاده می‌کند.

  8. دریافت کد بازآوری (اختیاری): اگر برنامه شما باید فراتر از طول عمر یک کد دسترسی به Google Chat API دسترسی داشته باشد، می‌تواند کد بازآوری دریافت کند. برای اطلاعات بیشتر، استفاده از OAuth 2.0 برای دسترسی به Google API را ببینید.

  9. درخواست منابع بیشتر: اگر برنامه‌تان به دسترسی بیشتری نیاز داشته باشد، از کاربر می‌خواهد تا دامنه‌های جدیدی را اعطا کند، که منجر به درخواست جدیدی برای دریافت کد دسترسی می‌شود (مراحل ۳ تا ۶).

وقتی برنامه‌های Chat به اصالت‌سنجی نیاز دارند

برنامه‌های Chat می‌توانند در پاسخ به تعامل کاربر یا به‌صورت ناهمگام پیام ارسال کنند. همچنین می‌توانند تکالیف را ازطرف کاربر تکمیل کنند، مثلاً ایجاد فضای Chat یا دریافت فهرست افراد در فضای Chat.

برنامه‌های Chat برای پاسخ دادن به تعامل کاربر به اصالت‌سنجی نیاز ندارند، مگراینکه برنامه Chat هنگام پردازش پاسخ، Chat API یا Google API دیگری را فراخوانی کند.

برای ارسال پیام‌های ناهمگام یا انجام تکالیف ازطرف کاربر، برنامه‌های Chat درخواست‌های RESTful به Chat API ارسال می‌کنند، که نیاز به اصالت‌سنجی و صدور مجوز دارد.

پاسخ به تعاملات کاربر نیازی به اصالت‌سنجی ندارد

برنامه‌های Google Chat برای دریافت و پاسخ هم‌زمان به تعاملات کاربر نیازی به اصالت‌سنجی به‌عنوان کاربر یا برنامه Chat ندارند.

برنامه‌های Google Chat هرزمان که کاربر با برنامه Chat تعامل داشته باشد یا آن را فراخوانی کند، اشیای رویداد را دریافت می‌کنند، ازجمله موارد زیر:

  • کاربری پیامی به برنامه Chat ارسال می‌کند.
  • کاربری از برنامه Chat @نام‌برده است.
  • کاربر یکی از فرمان‌های برنامه Chat را فراخوانی می‌کند.

نمودار زیر توالی درخواست-پاسخ بین کاربر Chat و برنامه Chat را نشان می‌دهد:

برای تعاملات کاربر برنامه Chat، مجوزی لازم نیست
شکل ۲. تعاملات کاربر برنامه Chat به اصالت‌سنجی نیاز ندارد.

  1. کاربر پیامی به برنامه Chat در Google Chat ارسال می‌کند.
  2. Google Chat پیام را به برنامه بازارسال می‌کند.
  3. برنامه پیام را دریافت می‌کند، آن را پردازش می‌کند، و پاسخی به Google Chat برمی‌گرداند.
  4. Google Chat پاسخ را برای کاربر یا در فضا ارائه می‌کند.

این توالی برای هر تعامل کاربر برنامه Chat تکرار می‌شود.

پیام‌های ناهمگام به اصالت‌سنجی نیاز دارند

پیام‌های ناهمگام زمانی اتفاق می‌افتند که یک برنامه Chat درخواستی به Chat API ارسال می‌کند، که نیاز به اصالت‌سنجی و صدور مجوز دارد.

با فراخوانی Chat API، برنامه‌های Chat می‌توانند پیام‌ها را در Google Chat پست کنند یا تکالیف را تکمیل کنند و ازطرف کاربر به داده‌ها دسترسی داشته باشند. برای مثال، پس‌از شناسایی قطعی سرور، برنامه Chat می‌تواند Chat API را برای انجام کارهای زیر فراخوانی کند:

  • ایجاد فضای Chat اختصاصی برای بررسی و رفع قطعی.
  • افراد را به فضای Chat اضافه کنید.
  • پیامی را در فضای Chat پست کنید تا جزئیات مربوط به قطعی را ارائه دهید.

نمودار زیر توالی پیام ناهمگام بین برنامه Chat و فضای Chat را نشان می‌دهد:

برای پیام‌های ناهمگام، اصالت‌سنجی لازم است
شکل ۳.‏ پیام‌های ناهمگام به اصالت‌سنجی نیاز دارند.

  1. برنامه Chat بااستفاده از روش spaces.messages.create و با فراخوانی Chat API پیامی ایجاد می‌کند و اطلاعات کاربری کاربر را در درخواست HTTP قرار می‌دهد.
  2. Google Chat برنامه Chat را با حساب سرویس یا اعتبارنامه کاربر اصالت‌سنجی می‌کند.
  3. ‫Google Chat پیام برنامه را در فضای Chat مشخصی ارائه می‌کند.

گستره‌های Chat API

صفحه رضایت OAuth را پیکربندی کنید و دامنه‌ها را انتخاب کنید تا مشخص کنید چه اطلاعاتی به کاربران و بازبینان برنامه نمایش داده شود، و برنامه‌تان را ثبت کنید تا بتوانید بعداً آن را منتشر کنید.

برای تعریف سطح دسترسی اعطاشده به برنامه‌تان، باید حوزه‌های مجوز را شناسایی و اعلام کنید. دامنه مجوز یک رشته URI از OAuth 2.0 است که حاوی نام برنامه Google Workspace، نوع داده‌ای که به آن دسترسی دارد، و سطح دسترسی است.

گستره‌های غیرحساس

کد حوزه شرح
https://www.googleapis.com/auth/chat.bot

به برنامه‌های Chat اجازه می‌دهد گپ‌ها را مشاهده کنند و پیام ارسال کنند.

این گستره فقط از اصالت‌سنجی برنامه با حساب‌های سرویس پشتیبانی می‌کند. بااستفاده از این دامنه، نمی‌توانید با اعتبارنامه کاربر یا با واگذاری در سراسر دامنه اصالت‌سنجی کنید.

گستره‌های حساس

کد حوزه شرح
https://www.googleapis.com/auth/chat.spaces ایجاد مکالمه و فضا و دیدن یا ویرایش فراداده‌ها (ازجمله تنظیمات سابقه و دسترسی به تنظیمات) در Chat.
https://www.googleapis.com/auth/chat.spaces.create مکالمه‌های جدید در Chat ایجاد کنید.
https://www.googleapis.com/auth/chat.spaces.readonly مشاهده گپ و فضاها در Chat.
https://www.googleapis.com/auth/chat.memberships مشاهده، افزودن، به‌روزرسانی، و برداشتن اعضا از مکالمه‌های Chat.
https://www.googleapis.com/auth/chat.memberships.app افزودن و برداشتن خودش از مکالمه‌های Google Chat.
https://www.googleapis.com/auth/chat.memberships.readonly مشاهده اعضا در مکالمه‌های Chat.
https://www.googleapis.com/auth/chat.messages.create در Chat پیامی بنویسید و ارسال کنید.
https://www.googleapis.com/auth/chat.messages.reactions مشاهده، افزودن، و حذف واکنش به پیام‌ها در Chat.
https://www.googleapis.com/auth/chat.messages.reactions.create به پیامی در Chat واکنش اضافه کنید.
https://www.googleapis.com/auth/chat.messages.reactions.readonly مشاهده واکنش‌ها به پیام در Chat.
https://www.googleapis.com/auth/chat.users.readstate مشاهده و تغییر آخرین زمان خواندن مکالمه‌های Chat.
https://www.googleapis.com/auth/chat.users.readstate.readonly مشاهده آخرین زمان خواندن مکالمه‌های Chat.
https://www.googleapis.com/auth/chat.admin.spaces.readonly مشاهده گپ و فضاهای متعلق به دامنه سرپرست در Chat.
https://www.googleapis.com/auth/chat.admin.spaces مشاهده یا ویرایش گپ و فضاهای متعلق به دامنه سرپرست در Chat.
https://www.googleapis.com/auth/chat.admin.memberships.readonly مشاهده اعضا و مدیران در مکالمه‌های متعلق به دامنه سرپرست در Chat.
https://www.googleapis.com/auth/chat.admin.memberships مشاهده، افزودن، به‌روزرسانی، و برداشتن اعضا و مدیران در مکالمه‌های متعلق به دامنه سرپرست در Chat.
https://www.googleapis.com/auth/chat.app.spaces

ایجاد مکالمه و فضا و دیدن یا به‌روزرسانی فراداده‌ها (ازجمله تنظیمات سابقه و تنظیمات دسترسی) در Chat به‌عنوان برنامه Chat. به تأیید سرپرست نیاز دارد.

این دامنه فقط از اصالت‌سنجی برنامه با حساب‌های سرویس پشتیبانی می‌کند. بااستفاده از این دامنه، نمی‌توانید با اعتبارنامه کاربر یا با واگذاری در سراسر دامنه اصالت‌سنجی کنید.

https://www.googleapis.com/auth/chat.app.spaces.readonly

مشاهده فراداده (ازجمله تنظیمات سابقه) در Chat به‌عنوان برنامه Chat. به تأیید سرپرست نیاز دارد.

این دامنه فقط از اصالت‌سنجی برنامه با حساب‌های سرویس پشتیبانی می‌کند. بااستفاده از این دامنه، نمی‌توانید با اعتبارنامه کاربر یا با واگذاری در سراسر دامنه اصالت‌سنجی کنید.

https://www.googleapis.com/auth/chat.app.spaces.create

ایجاد مکالمه‌ها و فضاهای جدید در Chat به‌عنوان برنامه Chat. به تأیید سرپرست نیاز دارد.

این دامنه فقط از اصالت‌سنجی برنامه با حساب‌های سرویس پشتیبانی می‌کند. بااستفاده از این دامنه، نمی‌توانید با اعتبارنامه کاربر یا با واگذاری در سراسر دامنه اصالت‌سنجی کنید.

https://www.googleapis.com/auth/chat.app.memberships

مشاهده، افزودن، به‌روزرسانی، و برداشتن اعضا از مکالمه‌ها و فضاها در Chat به‌عنوان برنامه Chat. تأیید سرپرست لازم است.

این دامنه فقط از اصالت‌سنجی برنامه با حساب‌های سرویس پشتیبانی می‌کند. بااستفاده از این دامنه، نمی‌توانید با اعتبارنامه کاربر یا با واگذاری در سراسر دامنه اصالت‌سنجی کنید.

https://www.googleapis.com/auth/chat.app.memberships.readonly

دیدن اعضا از مکالمه‌ها و فضاها در Chat به‌عنوان برنامه Chat. به تأیید سرپرست نیاز دارد.

این دامنه فقط از اصالت‌سنجی برنامه با حساب‌های سرویس پشتیبانی می‌کند. بااستفاده از این دامنه، نمی‌توانید با اعتبارنامه کاربر یا با واگذاری در سراسر دامنه اصالت‌سنجی کنید.

https://www.googleapis.com/auth/chat.customemojis مشاهده، ایجاد، و حذف اموجی سفارشی در Chat.
https://www.googleapis.com/auth/chat.customemojis.readonly مشاهده اموجی سفارشی در Chat.
https://www.googleapis.com/auth/chat.users.spacesettings مشاهده و به‌روزرسانی تنظیمات فضای کاربر Chat.
https://www.googleapis.com/auth/chat.users.sections مشاهده کردن، ایجاد کردن، به‌روز کردن، و حذف کردن بخش‌های شما در Chat؛ انتقال دادن و فهرست کردن موارد بخش شما در Chat.
https://www.googleapis.com/auth/chat.users.sections.readonly مشاهده کردن بخش‌های شما و موارد موجود در آن‌ها در Chat.

گستره‌های محدودشده

کد حوزه شرح
https://www.googleapis.com/auth/chat.delete حذف مکالمه‌ها و فضاها، و برداشتن دسترسی به فایل‌های منسوب در Chat.
https://www.googleapis.com/auth/chat.import وارد کردن فضاها، پیام‌ها، و اعضا در Chat. برای اطلاعات بیشتر، مجاز کردن برنامه‌های Chat برای وارد کردن داده را ببینید
https://www.googleapis.com/auth/chat.messages مشاهده، نوشتن، ارسال، به‌روزرسانی، و حذف پیام‌ها و افزودن، مشاهده، و حذف واکنش به پیام‌ها.
https://www.googleapis.com/auth/chat.messages.readonly مشاهده پیام‌ها و واکنش‌ها در Chat.
https://www.googleapis.com/auth/chat.app.messages.readonly

مشاهده پیام‌ها و واکنش‌ها در Chat به‌عنوان برنامه Chat. به تأیید سرپرست نیاز دارد.

این گستره فقط از اصالت‌سنجی برنامه با حساب‌های سرویس پشتیبانی می‌کند. بااستفاده از این محدوده، نمی‌توانید با اعتبارنامه کاربر یا با واگذاری در سراسر دامنه اصالت‌سنجی کنید.

https://www.googleapis.com/auth/chat.admin.delete حذف مکالمه‌ها و فضاهای متعلق به دامنه سرپرست و برداشتن دسترسی به فایل‌های منسوب در Chat.
https://www.googleapis.com/auth/chat.app.delete

حذف مکالمه‌ها و فضاها و برداشتن دسترسی به فایل‌های مرتبط در Chat به‌عنوان برنامه Chat. به تأیید سرپرست نیاز دارد.

این دامنه فقط از اصالت‌سنجی برنامه با حساب‌های سرویس پشتیبانی می‌کند. بااستفاده از این دامنه، نمی‌توانید با اعتبارنامه کاربر یا با واگذاری در سراسر دامنه اصالت‌سنجی کنید.

گستره‌های موجود در جدول‌های قبلی حساسیت آن‌ها را طبق تعاریف زیر نشان می‌دهد:

اگر برنامه‌تان به دسترسی به Google API دیگری نیاز دارد، می‌توانید آن گستره‌ها را نیز اضافه کنید. برای اطلاعات بیشتر درباره دامنه‌های Google API، به استفاده از OAuth 2.0 برای دسترسی به Google API مراجعه کنید.

برای کسب اطلاعات بیشتر درباره دامنه‌های میاناهای برنامه‌سازی کاربردی Google Workspace، به پیکربندی صفحه رضایت OAuth و انتخاب دامنه‌ها مراجعه کنید.

انواع اصالت‌سنجی لازم

برنامه‌های Chat به دو روش می‌توانند با Chat API اصالت‌سنجی و مجوزدهی کنند:

اصالت‌سنجی کاربر
اصالت‌سنجی کاربر به برنامه Chat اجازه می‌دهد به داده‌های کاربر دسترسی پیدا کند و کنش‌ها را ازطرف کاربر تکمیل کند. گستره‌های OAuth داده‌ها و کنش‌های مجاز را مشخص می‌کنند. مگر اینکه برنامه Chat توسط سرپرست نصب شده باشد یا تفویض اختیار سراسری دامنه به آن داده شده باشد، اولین باری که برنامه Chat کنشی را ازطرف کاربر انجام می‌دهد، کاربر باید برنامه Chat را بااستفاده از صفحه رضایت OAuth مجاز کند.
اصالت‌سنجی برنامه

اصالت‌سنجی برنامه به برنامه Chat اجازه می‌دهد از اعتبارنامه‌های حساب سرویس استفاده کند و به داده‌ها دسترسی داشته باشد و کنش‌ها را به‌عنوان خودش تکمیل کند. چون برنامه Chat از اطلاعات اعتباری خودش برای دسترسی به منابع و کار با آن‌ها استفاده می‌کند، کاربران نهایی نیازی به تأیید فراخوانی‌های میانای برنامه‌سازی کاربردی برنامه Chat ندارند، و نمی‌توانید گستره‌های مجوز OAuth را که از مجوز برنامه پشتیبانی می‌کنند به صفحه رضایت OAuth اضافه کنید.

دو نوع گستره مجوز OAuth از اصالت‌سنجی برنامه پشتیبانی می‌کند:

  • https://www.googleapis.com/auth/chat.bot: برنامه Chat شما می‌تواند روش‌های Google Chat API را که از این گستره مجوز پشتیبانی می‌کنند فراخوانی کند تا منابعی را که به آن‌ها دسترسی دارد ایجاد، به‌روزرسانی، دریافت، فهرست، یا حذف کند، مثل پیام‌ها در فضاهایی که کاربران نهایی برنامه Chat شما را به آن‌ها اضافه می‌کنند. برنامه Chat شما می‌تواند این محدوده مجوز را به خودش اعطا کند، هیچ مجوزی ازسوی سرپرست یا کاربر نهایی لازم نیست.
  • https://www.googleapis.com/auth/chat.app.*: استفاده از این دامنه‌ها به یک‌بار تأیید سرپرست نیاز دارد. برای دریافت تأیید سرپرست، حساب سرویس برنامه Chat را برای دریافت تأیید سرپرست آماده می‌کنید و برای این کار، کارخواه OAuth سازگار با Google Workspace Marketplace ایجاد می‌کنید و برنامه را در Google Workspace Marketplace SDK پیکربندی می‌کنید. این دامنه‌ها به برنامه Chat شما اجازه می‌دهند روش‌های خاص Google Chat API را فراخوانی کند. برای مثال، chat.app.spaces.create به برنامه‌ها اجازه می‌دهد فضاهای Chat ایجاد کنند.

اگر روشی از اصالت‌سنجی کاربر یا برنامه پشتیبانی کند، Chat API براساس نوع اصالت‌سنجی‌ای که استفاده می‌کنید نتایج متفاوتی برمی‌گرداند:

  • با اصالت‌سنجی برنامه، روش‌ها فقط منابعی را برمی‌گردانند که برنامه Chat می‌تواند به آن‌ها دسترسی داشته باشد.
  • با اصالت‌سنجی کاربر، روش‌ها فقط منابعی را برمی‌گردانند که کاربر می‌تواند به آن‌ها دسترسی داشته باشد.

برای مثال، فراخوانی روش spaces.list() با مجوز برنامه، فهرست فضاهایی را که برنامه Chat عضو آن‌ها است برمی‌گرداند. فراخوانی spaces.list() با مجوز کاربر، فهرست فضاهایی را که کاربر عضو آن‌ها است برمی‌گرداند. درعمل، بسته به طراحی و ویژگی‌های برنامه Chat، ممکن است هنگام فراخوانی Chat API از هر دو نوع اصالت‌سنجی استفاده کنید.

برای تماس‌های ناهمگام Chat API

جدول زیر روش‌های Chat API و گستره‌های مجوز پشتیبانی‌شده آن‌ها را فهرست می‌کند:

روش از اصالت‌سنجی کاربر پشتیبانی می‌شود از اصالت‌سنجی برنامه پشتیبانی می‌شود گستره‌های مجوز پشتیبانی‌شده
فضاها  
ایجاد کردن فضا با اصالت‌سنجی کاربر:
  • chat.spaces.create
  • chat.spaces
  • chat.import
با اصالت‌سنجی برنامه و تأیید سرپرست:
  • chat.app.spaces.create
  • chat.app.spaces
راه‌اندازی فضا — با اصالت‌سنجی کاربر:
  • chat.spaces.create
  • chat.spaces
دریافت فضا با اصالت‌سنجی کاربر:
  • chat.spaces.readonly
  • chat.spaces
با اصالت‌سنجی کاربر بااستفاده از امتیازهای سرپرست:
  • chat.admin.spaces.readonly
با اصالت‌سنجی برنامه:
  • chat.bot
با اصالت‌سنجی برنامه و تأیید سرپرست:
  • chat.app.spaces
فهرست کردن فضاها با اصالت‌سنجی کاربر:
  • chat.spaces.readonly
  • chat.spaces
با اصالت‌سنجی برنامه:
  • chat.bot
جستجوی فضاها — با اصالت‌سنجی کاربر بااستفاده از امتیازهای سرپرست:
  • chat.admin.spaces.readonly
به‌روزرسانی فضا با اصالت‌سنجی کاربر:
  • chat.spaces
  • chat.import
با اصالت‌سنجی کاربر بااستفاده از امتیازهای سرپرست:
  • chat.admin.spaces
با اصالت‌سنجی برنامه و تأیید سرپرست:
  • chat.app.spaces
حذف فضا با اصالت‌سنجی کاربر:
  • chat.delete
  • chat.import
با اصالت‌سنجی کاربر بااستفاده از امتیازهای سرپرست:
  • chat.admin.delete
با اصالت‌سنجی برنامه و تأیید سرپرست:
  • chat.app.delete
تکمیل فرایند وارد کردن برای فضا — با اصالت‌سنجی کاربر:
  • chat.import
پیدا کردن پیام مستقیم با اصالت‌سنجی کاربر:
  • chat.spaces.readonly
  • chat.spaces
با اصالت‌سنجی برنامه:
  • chat.bot
اعضا  
ایجاد عضو با اصالت‌سنجی کاربر:
  • chat.memberships
  • chat.memberships.app
  • chat.import
با اصالت‌سنجی کاربر بااستفاده از امتیازهای سرپرست:
  • chat.admin.memberships
با اصالت‌سنجی برنامه و تأیید سرپرست:
  • chat.app.memberships
دریافت عضو با اصالت‌سنجی کاربر:
  • chat.memberships.readonly
  • chat.memberships
با اصالت‌سنجی برنامه:
  • chat.bot
با اصالت‌سنجی کاربر بااستفاده از امتیازهای سرپرست:
  • chat.admin.memberships.readonly
فهرست اعضا با اصالت‌سنجی کاربر:
  • chat.memberships.readonly
  • chat.memberships
  • chat.import
با اصالت‌سنجی برنامه:
  • chat.bot
با اصالت‌سنجی کاربر بااستفاده از امتیازهای سرپرست:
  • chat.admin.memberships.readonly
حذف کردن عضو با اصالت‌سنجی کاربر:
  • chat.memberships
  • chat.memberships.app
  • chat.import
با اصالت‌سنجی کاربر بااستفاده از امتیازهای سرپرست:
  • chat.admin.memberships
با اصالت‌سنجی برنامه و تأیید سرپرست:
  • chat.app.memberships
به‌روزرسانی عضو با اصالت‌سنجی کاربر:
  • chat.memberships
  • chat.import
با اصالت‌سنجی کاربر بااستفاده از امتیازهای سرپرست:
  • chat.admin.memberships
با اصالت‌سنجی برنامه و تأیید سرپرست:
  • chat.app.memberships
پیام‌ها  
ایجاد پیام با اصالت‌سنجی کاربر:
  • chat.messages.create
  • chat.messages
  • chat.import
با اصالت‌سنجی برنامه:
  • chat.bot
دریافت پیام با اصالت‌سنجی کاربر:
  • chat.messages.readonly
  • chat.messages
با اصالت‌سنجی برنامه:
  • chat.bot
با اصالت‌سنجی برنامه و تأیید سرپرست:
  • chat.app.messages.readonly
فهرست کردن پیام‌ها با اصالت‌سنجی کاربر:
  • chat.messages.readonly
  • chat.messages
  • chat.import
با اصالت‌سنجی برنامه و تأیید سرپرست:
  • chat.app.messages.readonly
جستجوی پیام‌ها — با اصالت‌سنجی کاربر:
  • chat.messages.readonly
  • chat.messages
به‌روزرسانی پیام با اصالت‌سنجی کاربر:
  • chat.messages
  • chat.import
با اصالت‌سنجی برنامه:
  • chat.bot
حذف پیام با اصالت‌سنجی کاربر:
  • chat.messages
  • chat.import
با اصالت‌سنجی برنامه:
  • chat.bot
سنجاق کردن پیام — با اصالت‌سنجی کاربر:
  • chat.spaces.pins
  • chat.spaces
برداشتن سنجاق پیام — با اصالت‌سنجی کاربر:
  • chat.spaces.pins
  • chat.spaces
فهرست کردن پیام‌های سنجاق‌شده — با اصالت‌سنجی کاربر:
  • chat.spaces.pins.readonly
  • chat.spaces.readonly
  • chat.spaces.pins
  • chat.spaces
به‌روزرسانی کارت‌ها در پیام — با اصالت‌سنجی برنامه:
  • chat.bot
واکنش‌ها  
ایجاد واکنش — با اصالت‌سنجی کاربر:
  • chat.messages.reactions.create
  • chat.messages.reactions
  • chat.messages
  • chat.import
فهرست کردن واکنش‌ها — با اصالت‌سنجی کاربر:
  • chat.messages.reactions.readonly
  • chat.messages.reactions
  • chat.messages.readonly
  • chat.messages
حذف کردن واکنش — با اصالت‌سنجی کاربر:
  • chat.messages.reactions
  • chat.messages
  • chat.import
اموجی سفارشی  
ایجاد اموجی سفارشی — با اصالت‌سنجی کاربر:
  • chat.customemojis
حذف اموجی سفارشی — با اصالت‌سنجی کاربر:
  • chat.customemojis
دریافت اموجی سفارشی — با اصالت‌سنجی کاربر:
  • chat.customemojis
  • chat.customemojis.readonly
فهرست کردن اموجی سفارشی — با اصالت‌سنجی کاربر:
  • chat.customemojis
  • chat.customemojis.readonly
رسانه و پیوست‌ها  
بارگذاری رسانه به‌عنوان پیوست فایل — با اصالت‌سنجی کاربر:
  • chat.messages.create
  • chat.messages
  • chat.import
بارگیری رسانه با اصالت‌سنجی کاربر:
  • chat.messages.readonly
  • chat.messages
با اصالت‌سنجی برنامه:
  • chat.bot
دریافت پیوست پیام — با اصالت‌سنجی برنامه:
  • chat.bot
وضعیت‌های خوانده‌شده کاربر
دریافت وضعیت خوانده شدن فضای کاربر — با اصالت‌سنجی کاربر:
  • chat.users.readstate
  • chat.users.readstate.readonly
به‌روزرسانی وضعیت خوانده شدن فضا برای کاربر — با اصالت‌سنجی کاربر:
  • chat.users.readstate
دریافت وضعیت خوانده شدن رشته کاربر — با اصالت‌سنجی کاربر:
  • chat.users.readstate
  • chat.users.readstate.readonly
تنظیمات فضای کاربر
دریافت تنظیمات اعلان فضای کاربر — با اصالت‌سنجی کاربر:
  • chat.users.spacesettings
به‌روزرسانی تنظیمات اعلان فضای کاربر — با اصالت‌سنجی کاربر:
  • chat.users.spacesettings
رویدادهای فضا
دریافت رویدادهای فضا — با اصالت‌سنجی کاربر، باید از دامنه‌ای براساس نوع رویداد استفاده کنید:
  • برای رویدادهای مربوط به پیام‌ها:
    • chat.messages
    • chat.messages.readonly
  • برای رویدادهای مربوط به واکنش‌ها:
    • chat.messages.reactions
    • chat.messages.reactions.readonly
    • chat.messages
    • chat.messages.readonly
  • برای رویدادهای مربوط به عضویت:
    • chat.memberships
    • chat.memberships.readonly
  • برای رویدادهای مربوط به فضا:
    • chat.spaces
    • chat.spaces.readonly
فهرست کردن رویدادهای فضا — با اصالت‌سنجی کاربر، باید برای هر نوع رویداد موجود در درخواست از یک دامنه استفاده کنید:
  • برای رویدادهای مربوط به پیام‌ها:
    • chat.messages
    • chat.messages.readonly
  • برای رویدادهای مربوط به واکنش‌ها:
    • chat.messages.reactions
    • chat.messages.reactions.readonly
    • chat.messages
    • chat.messages.readonly
  • برای رویدادهای مربوط به عضویت:
    • chat.memberships
    • chat.memberships.readonly
  • برای رویدادهای مربوط به فضا:
    • chat.spaces
    • chat.spaces.readonly
بخش‌ها  
ایجاد بخش — با اصالت‌سنجی کاربر:
  • chat.users.sections
حذف کردن بخش — با اصالت‌سنجی کاربر:
  • chat.users.sections
فهرست کردن بخش‌ها — با اصالت‌سنجی کاربر:
  • chat.users.sections
  • chat.users.sections.readonly
به‌روزرسانی بخش — با اصالت‌سنجی کاربر:
  • chat.users.sections
جایگاه‌دهی بخش — با اصالت‌سنجی کاربر:
  • chat.users.sections
موارد بخش  
انتقال دادن مورد بخش — با اصالت‌سنجی کاربر:
  • chat.users.sections
فهرست کردن موارد بخش — با اصالت‌سنجی کاربر:
  • chat.users.sections
  • chat.users.sections.readonly

برای رویدادهای تعامل برنامه Chat

جدول زیر روش‌های رایج تعامل کاربران با برنامه‌های Chat را فهرست می‌کند و نشان می‌دهد که آیا اصالت‌سنجی لازم است یا پشتیبانی می‌شود:

سناریو اصالت‌سنجی لازم نیست از اصالت‌سنجی کاربر پشتیبانی می‌شود از اصالت‌سنجی برنامه پشتیبانی می‌شود
دریافت پیام از:
رویدادهای تعامل برنامه گپ — —
فراخوانی‌های Apps Script — —
Google Cloud Pub/Sub — —
پاسخ دادن به پیام‌ها:
همگام، بااستفاده از رویداد تعامل برنامه Chat — —
همگام، بااستفاده از مقدار برگشتی فراخوانی Apps Script — —
ارسال پیام‌های جدید:
با وب‌قلاب‌های ورودی — —