Package google.chat.v1

索引

ChatService

使开发者能够在 Google Chat 平台上构建 Chat 应用和集成。

CompleteImportSpace

rpc CompleteImportSpace(CompleteImportSpaceRequest) returns (CompleteImportSpaceResponse)

完成指定聊天室的导入流程,并使其对用户可见。

需要用户身份验证和全网域授权,并具有授权范围:

  • https://www.googleapis.com/auth/chat.import

如需了解详情,请参阅授权 Google Chat 应用导入数据。

授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/chat.import

如需了解详情,请参阅授权指南。

CreateCustomEmoji

rpc CreateCustomEmoji(CreateCustomEmojiRequest) returns (CustomEmoji)

创建自定义表情符号。

自定义表情符号仅适用于 Google Workspace 账号,并且管理员必须为组织启用自定义表情符号。如需了解详情,请参阅了解 Google Chat 中的自定义表情符号和管理自定义表情符号权限。

需要使用授权范围进行用户身份验证:

  • https://www.googleapis.com/auth/chat.customemojis
授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/chat.customemojis

如需了解详情,请参阅授权指南。

CreateMembership

rpc CreateMembership(CreateMembershipRequest) returns (Membership)

为发起调用的 Chat 应用、用户或 Google 群组创建成员资格。不支持为其他 Chat 应用创建成员资格。创建成员资格时,如果指定成员关闭了自动接受政策,则系统会邀请该成员,并且该成员必须接受聊天室邀请才能加入。否则,创建成员资格会将成员直接添加到指定聊天室。

支持以下类型的身份验证:

  • 应用身份验证(需管理员批准)和授权范围:

    • https://www.googleapis.com/auth/chat.app.memberships
  • 使用以下授权范围之一进行用户身份验证:

    • https://www.googleapis.com/auth/chat.memberships
    • https://www.googleapis.com/auth/chat.memberships.app(将通话应用添加到聊天室)
    • https://www.googleapis.com/auth/chat.import(仅限导入模式聊天室)
    • 当管理员账号进行身份验证、use_admin_access 为 true 且使用以下授权范围时,用户身份验证会授予管理员权限:
      • https://www.googleapis.com/auth/chat.admin.memberships

以下用例不支持应用身份验证:

  • 邀请聊天室所属 Workspace 组织以外的用户。
  • 将 Google 群组添加到聊天室。
  • 将 Chat 应用添加到聊天室。

如需查看使用示例,请参阅:

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.app.memberships
  • https://www.googleapis.com/auth/chat.admin.memberships
  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.memberships
  • https://www.googleapis.com/auth/chat.memberships.app

如需了解详情,请参阅授权指南。

CreateMessage

rpc CreateMessage(CreateMessageRequest) returns (Message)

在 Google Chat 聊天室中创建消息。如需查看示例,请参阅发送消息。

支持以下类型的身份验证:

  • 使用授权范围进行应用身份验证:
    • https://www.googleapis.com/auth/chat.bot
  • 使用以下授权范围之一进行用户身份验证:
    • https://www.googleapis.com/auth/chat.messages.create
    • https://www.googleapis.com/auth/chat.messages
    • https://www.googleapis.com/auth/chat.import(仅限导入模式聊天室)

Chat 会根据您在请求中使用的身份验证类型,以不同的方式对消息发送者进行归因。

下图展示了当您使用应用身份验证时,Chat 如何对消息进行归因。Chat 会将 Chat 应用显示为消息发送者。消息内容可以包含文本 (text)、卡片 (cardsV2) 和辅助 widget (accessoryWidgets)。

消息已通过应用身份验证发送

下图展示了当您使用用户身份验证时,Chat 如何归因消息。Chat 会将用户显示为消息发送者,并通过显示 Chat 应用的名称来表明该消息是由该应用发送的。消息内容只能包含文本 (text)。

通过用户身份验证发送的消息

消息大小上限(包括消息内容)为 32,000 字节。

对于 Webhook 请求,响应不包含完整消息。除了请求中的信息之外,响应中仅填充 name 和 thread.name 字段。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.bot
  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.messages.create

如需了解详情,请参阅授权指南。

CreateMessagePin

rpc CreateMessagePin(CreateMessagePinRequest) returns (MessagePin)

创建消息固定。

需要使用以下授权范围之一进行用户身份验证:

  • https://www.googleapis.com/auth/chat.spaces.pins
  • https://www.googleapis.com/auth/chat.spaces
授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.spaces.pins
  • https://www.googleapis.com/auth/chat.spaces

如需了解详情,请参阅授权指南。

CreateReaction

rpc CreateReaction(CreateReactionRequest) returns (Reaction)

创建回应并将其添加到消息中。如需查看示例,请参阅为消息添加回应。

需要使用以下授权范围之一进行用户身份验证:

  • https://www.googleapis.com/auth/chat.messages.reactions.create
  • https://www.googleapis.com/auth/chat.messages.reactions
  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.import(仅限导入模式聊天室)
授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.messages.reactions
  • https://www.googleapis.com/auth/chat.messages.reactions.create

如需了解详情,请参阅授权指南。

CreateSection

rpc CreateSection(CreateSectionRequest) returns (Section)

在 Google Chat 中创建版块。用户可以借助版块对群组对话进行分组,并自定义 Chat 导航面板中显示的聊天室列表。只能创建类型为 CUSTOM_SECTION 的版块。如需了解详情,请参阅在 Google Chat 中创建和整理版块。

需要使用授权范围进行用户身份验证:

  • https://www.googleapis.com/auth/chat.users.sections
授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/chat.users.sections

如需了解详情,请参阅授权指南。

CreateSpace

rpc CreateSpace(CreateSpaceRequest) returns (Space)

创建聊天室。可用于在 Import mode 中创建命名的聊天室或群聊。如需查看示例,请参阅创建聊天室。

支持以下类型的身份验证:

  • 应用身份验证(需管理员批准)和以下授权范围之一:

    • https://www.googleapis.com/auth/chat.app.spaces.create
    • https://www.googleapis.com/auth/chat.app.spaces
  • 使用以下授权范围之一进行用户身份验证:

    • https://www.googleapis.com/auth/chat.spaces.create
    • https://www.googleapis.com/auth/chat.spaces
    • https://www.googleapis.com/auth/chat.import(仅限导入模式聊天室)

以应用身份进行身份验证时,必须在请求中设置 space.customer 字段。

以应用身份进行身份验证时,Chat 应用会作为聊天室成员添加。不过,与人工身份验证不同,Chat 应用不会添加为聊天室管理员。默认情况下,所有聊天室成员都可以从聊天室中移除 Chat 应用。如要仅允许聊天室管理员从聊天室中移除应用,请将 space.permission_settings.manage_apps 设置为 managers_allowed。

创建聊天室时的成员资格取决于聊天室是否在 Import mode 中创建:

  • 导入模式:不会创建任何成员。
  • 所有其他模式:发起通话的用户会作为成员加入。这是:
    • 使用应用身份验证时,应用本身。
    • 使用用户身份验证时的人类用户。

如果您在创建空间时收到出错提示 ALREADY_EXISTS,请尝试使用其他 displayName。Google Workspace 组织中的现有空间可能已使用此显示名称。

授权范围

需要以下 OAuth 范围之一:

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

如需了解详情,请参阅授权指南。

DeleteCustomEmoji

rpc DeleteCustomEmoji(DeleteCustomEmojiRequest) returns (Empty)

删除自定义表情符号。默认情况下,用户只能删除自己创建的自定义表情符号。管理员指定的表情符号管理员可以删除组织中的任何自定义表情符号。请参阅了解 Google Chat 中的自定义表情符号。

自定义表情符号仅适用于 Google Workspace 账号,并且管理员必须为组织启用自定义表情符号。如需了解详情,请参阅了解 Google Chat 中的自定义表情符号和管理自定义表情符号权限。

需要使用授权范围进行用户身份验证:

  • https://www.googleapis.com/auth/chat.customemojis
授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/chat.customemojis

如需了解详情,请参阅授权指南。

DeleteMembership

rpc DeleteMembership(DeleteMembershipRequest) returns (Membership)

删除成员资格。如需查看示例,请参阅从聊天室中移除用户或 Google Chat 应用。

支持以下类型的身份验证:

  • 应用身份验证(需管理员批准)和授权范围:

    • https://www.googleapis.com/auth/chat.app.memberships
  • 使用以下授权范围之一进行用户身份验证:

    • https://www.googleapis.com/auth/chat.memberships
    • https://www.googleapis.com/auth/chat.memberships.app(从聊天室中移除通话应用)
    • https://www.googleapis.com/auth/chat.import(仅限导入模式聊天室)
    • 当管理员账号进行身份验证、use_admin_access 为 true 且使用以下授权范围时,用户身份验证会授予管理员权限:
      • https://www.googleapis.com/auth/chat.admin.memberships

以下用例不支持应用身份验证:

  • 从聊天室中移除 Google 群组。
  • 从聊天室中移除 Chat 应用。

如需删除聊天室管理员的成员资格,请求者必须是聊天室管理员。如果您使用的是应用身份验证,则 Chat 应用必须是聊天室创建者。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.app.memberships
  • https://www.googleapis.com/auth/chat.admin.memberships
  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.memberships
  • https://www.googleapis.com/auth/chat.memberships.app

如需了解详情,请参阅授权指南。

DeleteMessage

rpc DeleteMessage(DeleteMessageRequest) returns (Empty)

删除消息。如需查看示例,请参阅删除消息。

支持以下类型的身份验证:

  • 具有授权范围的应用身份验证:

    • https://www.googleapis.com/auth/chat.bot
  • 使用以下授权范围之一进行用户身份验证:

    • https://www.googleapis.com/auth/chat.messages
    • https://www.googleapis.com/auth/chat.import(仅限导入模式聊天室)

使用应用身份验证时,请求只能删除由调用 Chat 应用创建的消息。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.bot
  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.messages

如需了解详情,请参阅授权指南。

DeleteMessagePin

rpc DeleteMessagePin(DeleteMessagePinRequest) returns (Empty)

删除消息固定。

需要使用以下授权范围之一进行用户身份验证:

  • https://www.googleapis.com/auth/chat.spaces.pins
  • https://www.googleapis.com/auth/chat.spaces
授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.spaces.pins
  • https://www.googleapis.com/auth/chat.spaces

如需了解详情,请参阅授权指南。

DeleteReaction

rpc DeleteReaction(DeleteReactionRequest) returns (Empty)

删除对消息的回应。如需查看示例,请参阅删除回应。

需要使用以下授权范围之一进行用户身份验证:

  • https://www.googleapis.com/auth/chat.messages.reactions
  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.import(仅限导入模式聊天室)
授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.messages.reactions

如需了解详情,请参阅授权指南。

DeleteSection

rpc DeleteSection(DeleteSectionRequest) returns (Empty)

删除类型为 CUSTOM_SECTION 的部分。

如果该版块包含聊天室等内容,这些内容会移至 Google Chat 的默认版块,而不会被删除。

如需了解详情,请参阅在 Google Chat 中创建和整理版块。

需要使用授权范围进行用户身份验证:

  • https://www.googleapis.com/auth/chat.users.sections
授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/chat.users.sections

如需了解详情,请参阅授权指南。

DeleteSpace

rpc DeleteSpace(DeleteSpaceRequest) returns (Empty)

删除有名称的聊天室。始终执行级联删除,这意味着聊天室的子资源(例如聊天室中发布的消息和聊天室中的成员资格)也会被删除。如需查看示例,请参阅删除聊天室。

支持以下类型的身份验证:

  • 应用身份验证(需管理员批准)和授权范围:

    • https://www.googleapis.com/auth/chat.app.delete(仅限应用创建的聊天室)
  • 使用以下授权范围之一进行用户身份验证:

    • https://www.googleapis.com/auth/chat.delete
    • https://www.googleapis.com/auth/chat.import(仅限导入模式聊天室)
    • 当管理员账号进行身份验证、use_admin_access 为 true 且使用以下授权范围时,用户身份验证会授予管理员权限:
      • https://www.googleapis.com/auth/chat.admin.delete
授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.app.delete
  • https://www.googleapis.com/auth/chat.admin.delete
  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.delete

如需了解详情,请参阅授权指南。

FindDirectMessage

rpc FindDirectMessage(FindDirectMessageRequest) returns (Space)

返回与指定用户的现有私信。如果未找到私信聊天室,则返回 404 NOT_FOUND 错误。如需查看示例,请参阅查找私信。

通过应用身份验证,返回指定用户与调用方 Chat 应用之间的私信聊天室。

使用用户身份验证时,返回指定用户与经过身份验证的用户之间的私信聊天室。

支持以下类型的身份验证:

  • 具有授权范围的应用身份验证:

    • https://www.googleapis.com/auth/chat.bot
  • 使用以下授权范围之一进行用户身份验证:

    • https://www.googleapis.com/auth/chat.spaces.readonly
    • https://www.googleapis.com/auth/chat.spaces
授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.spaces
  • https://www.googleapis.com/auth/chat.spaces.readonly
  • https://www.googleapis.com/auth/chat.bot

如需了解详情,请参阅授权指南。

FindGroupChats

rpc FindGroupChats(FindGroupChatsRequest) returns (FindGroupChatsResponse)

返回具有 spaceType == GROUP_CHAT 的所有聊天室,这些聊天室的人员成员资格仅包含发起调用的用户以及 FindGroupChatsRequest.users 中指定的用户。仅支持已加入对话的成员。如需查看示例,请参阅查找群聊。

如果发起调用的用户屏蔽了某些用户或被某些用户屏蔽,并且未找到包含指定用户全集的聊天室,则此方法会返回不包含被屏蔽用户或屏蔽发起调用用户的聊天室。

指定的用户集只能包含人类(非应用)成员。如果请求中包含非人类用户,则不会返回任何聊天室。

需要使用以下授权范围之一进行用户身份验证:

  • https://www.googleapis.com/auth/chat.memberships.readonly
  • https://www.googleapis.com/auth/chat.memberships
授权范围

需要以下 OAuth 范围之一:

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

如需了解详情,请参阅授权指南。

GetAttachment

rpc GetAttachment(GetAttachmentRequest) returns (Attachment)

获取邮件附件的元数据。附件数据是使用媒体 API 提取的。如需查看示例,请参阅获取邮件附件的元数据。

需要使用授权范围进行应用身份验证:

  • https://www.googleapis.com/auth/chat.bot
授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/chat.bot

如需了解详情,请参阅授权指南。

GetAvailability

rpc GetAvailability(GetAvailabilityRequest) returns (Availability)

返回 Google Chat 中人类用户的有空/忙碌状态信息。例如,这可用于检查用户是在线还是离开,或检索其自定义状态消息。

此方法仅检索经过身份验证的用户的空闲情况。

需要使用以下授权范围之一进行用户身份验证:

  • https://www.googleapis.com/auth/chat.users.availability.readonly
  • https://www.googleapis.com/auth/chat.users.availability
授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.users.availability
  • https://www.googleapis.com/auth/chat.users.availability.readonly

如需了解详情,请参阅授权指南。

GetCustomEmoji

rpc GetCustomEmoji(GetCustomEmojiRequest) returns (CustomEmoji)

返回有关自定义表情符号的详细信息。

自定义表情符号仅适用于 Google Workspace 账号,并且管理员必须为组织启用自定义表情符号。如需了解详情,请参阅了解 Google Chat 中的自定义表情符号和管理自定义表情符号权限。

需要使用以下授权范围之一进行用户身份验证:

  • https://www.googleapis.com/auth/chat.customemojis.readonly
  • https://www.googleapis.com/auth/chat.customemojis
授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.customemojis
  • https://www.googleapis.com/auth/chat.customemojis.readonly

如需了解详情,请参阅授权指南。

GetMembership

rpc GetMembership(GetMembershipRequest) returns (Membership)

返回有关成员资格的详细信息。如需查看示例,请参阅获取用户或 Google Chat 应用的成员资格详情。

支持以下类型的身份验证:

  • 应用身份验证,具有以下授权范围之一:

    • https://www.googleapis.com/auth/chat.bot
    • https://www.googleapis.com/auth/chat.app.memberships(需要管理员批准)
  • 使用以下授权范围之一进行用户身份验证:

    • https://www.googleapis.com/auth/chat.memberships.readonly
    • https://www.googleapis.com/auth/chat.memberships
    • 当管理员账号进行身份验证、use_admin_access 为 true 且使用以下授权范围之一时,用户身份验证会授予管理员权限:
      • https://www.googleapis.com/auth/chat.admin.memberships.readonly
      • https://www.googleapis.com/auth/chat.admin.memberships
授权范围

需要以下 OAuth 范围之一:

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

如需了解详情,请参阅授权指南。

GetMessage

rpc GetMessage(GetMessageRequest) returns (Message)

返回有关消息的详细信息。如需查看示例,请参阅获取消息的详细信息。

支持以下类型的身份验证:

  • 应用身份验证,具有以下授权范围之一:

    • https://www.googleapis.com/auth/chat.bot:使用此授权范围时,此方法会返回 Chat 应用有权访问的消息的详细信息,例如私信和调用 Chat 应用的斜杠命令。
    • https://www.googleapis.com/auth/chat.app.messages.readonly,但需要管理员批准。使用此身份验证范围时,此方法会返回聊天室中公开消息的详细信息。
  • 使用以下授权范围之一进行用户身份验证:

    • https://www.googleapis.com/auth/chat.messages.readonly
    • https://www.googleapis.com/auth/chat.messages

注意:可能会返回来自已屏蔽成员或聊天室的消息。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.bot
  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.messages.readonly
  • https://www.googleapis.com/auth/chat.app.messages.readonly

如需了解详情,请参阅授权指南。

GetSpace

rpc GetSpace(GetSpaceRequest) returns (Space)

返回有关聊天室的详细信息。如需查看示例,请参阅获取聊天室的详细信息。

支持以下类型的身份验证:

  • 应用身份验证,具有以下授权范围之一:

    • https://www.googleapis.com/auth/chat.bot
    • https://www.googleapis.com/auth/chat.app.spaces(需要管理员批准)
  • 使用以下授权范围之一进行用户身份验证:

    • https://www.googleapis.com/auth/chat.spaces.readonly
    • https://www.googleapis.com/auth/chat.spaces
    • 当管理员账号进行身份验证、use_admin_access 为 true 且使用以下授权范围之一时,用户身份验证会授予管理员权限:
      • https://www.googleapis.com/auth/chat.admin.spaces.readonly
      • https://www.googleapis.com/auth/chat.admin.spaces

应用身份验证存在以下限制:

  • 仅在使用 chat.app.spaces 范围时才会填充 space.access_settings。
  • 仅当使用 chat.app.spaces 范围时,系统才会填充 space.predefind_permission_settings 和 space.permission_settings,并且仅针对应用创建的聊天室。
授权范围

需要以下 OAuth 范围之一:

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

如需了解详情,请参阅授权指南。

GetSpaceEvent

rpc GetSpaceEvent(GetSpaceEventRequest) returns (SpaceEvent)

返回 Google Chat 聊天室中的事件。事件载荷包含发生更改的资源的最新版本。例如,如果您请求有关新消息的事件,但该消息后来更新了,则服务器会在事件载荷中返回更新后的 Message 资源。

注意:此请求的聊天室事件数据的 Space 对象中不会返回 permissionSettings 字段。

支持以下类型的身份验证,并具有适合读取所请求数据的授权范围:

  • 应用身份验证和管理员批准,并具有以下授权范围之一:

    • https://www.googleapis.com/auth/chat.app.spaces
    • https://www.googleapis.com/auth/chat.app.spaces.readonly
    • https://www.googleapis.com/auth/chat.app.messages.readonly
    • https://www.googleapis.com/auth/chat.app.memberships
    • https://www.googleapis.com/auth/chat.app.memberships.readonly
  • 使用以下授权范围之一进行用户身份验证:

    • https://www.googleapis.com/auth/chat.spaces.readonly
    • https://www.googleapis.com/auth/chat.spaces
    • https://www.googleapis.com/auth/chat.messages.readonly
    • https://www.googleapis.com/auth/chat.messages
    • https://www.googleapis.com/auth/chat.messages.reactions.readonly
    • https://www.googleapis.com/auth/chat.messages.reactions
    • https://www.googleapis.com/auth/chat.memberships.readonly
    • https://www.googleapis.com/auth/chat.memberships

如需获取事件,经过身份验证的调用方必须是聊天室的成员。

如需查看示例,请参阅从 Google Chat 聊天室获取事件的详细信息。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.app.memberships
  • https://www.googleapis.com/auth/chat.app.memberships.readonly
  • https://www.googleapis.com/auth/chat.app.messages.readonly
  • https://www.googleapis.com/auth/chat.app.spaces
  • https://www.googleapis.com/auth/chat.app.spaces.readonly
  • https://www.googleapis.com/auth/chat.app.all.messages.readonly
  • https://www.googleapis.com/auth/chat.app.all.spaces.readonly
  • https://www.googleapis.com/auth/chat.app.all.memberships.readonly
  • https://www.googleapis.com/auth/chat.spaces
  • https://www.googleapis.com/auth/chat.spaces.readonly
  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.messages.readonly
  • https://www.googleapis.com/auth/chat.memberships
  • https://www.googleapis.com/auth/chat.memberships.readonly
  • https://www.googleapis.com/auth/chat.messages.reactions
  • https://www.googleapis.com/auth/chat.messages.reactions.readonly

如需了解详情,请参阅授权指南。

GetSpaceNotificationSetting

rpc GetSpaceNotificationSetting(GetSpaceNotificationSettingRequest) returns (SpaceNotificationSetting)

获取聊天室通知设置。如需查看示例,请参阅获取调用方的聊天室通知设置。

需要使用授权范围进行用户身份验证:

  • https://www.googleapis.com/auth/chat.users.spacesettings
授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/chat.users.spacesettings

如需了解详情,请参阅授权指南。

GetSpaceReadState

rpc GetSpaceReadState(GetSpaceReadStateRequest) returns (SpaceReadState)

返回用户在聊天室中的已读状态的详细信息,用于识别已读和未读消息。如需查看示例,请参阅获取有关用户聊天室已读状态的详细信息。

需要使用以下授权范围之一进行用户身份验证:

  • https://www.googleapis.com/auth/chat.users.readstate.readonly
  • https://www.googleapis.com/auth/chat.users.readstate
授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.users.readstate
  • https://www.googleapis.com/auth/chat.users.readstate.readonly

如需了解详情,请参阅授权指南。

GetThreadReadState

rpc GetThreadReadState(GetThreadReadStateRequest) returns (ThreadReadState)

返回用户在会话中的阅读状态的详细信息,用于识别已读和未读消息。如需查看示例,请参阅获取有关用户会话阅读状态的详细信息。

需要使用以下授权范围之一进行用户身份验证:

  • https://www.googleapis.com/auth/chat.users.readstate.readonly
  • https://www.googleapis.com/auth/chat.users.readstate
授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.users.readstate
  • https://www.googleapis.com/auth/chat.users.readstate.readonly

如需了解详情,请参阅授权指南。

ListCustomEmojis

rpc ListCustomEmojis(ListCustomEmojisRequest) returns (ListCustomEmojisResponse)

列出经过身份验证的用户可见的自定义表情符号。

自定义表情符号仅适用于 Google Workspace 账号,并且管理员必须为组织启用自定义表情符号。如需了解详情,请参阅了解 Google Chat 中的自定义表情符号和管理自定义表情符号权限。

需要使用以下授权范围之一进行用户身份验证:

  • https://www.googleapis.com/auth/chat.customemojis.readonly
  • https://www.googleapis.com/auth/chat.customemojis
授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.customemojis
  • https://www.googleapis.com/auth/chat.customemojis.readonly

如需了解详情,请参阅授权指南。

ListMemberships

rpc ListMemberships(ListMembershipsRequest) returns (ListMembershipsResponse)

列出聊天室中的成员资格。如需查看示例,请参阅列出聊天室中的用户和 Google Chat 应用。使用应用身份验证列出成员资格时,系统会列出 Chat 应用有权访问的聊天室中的成员资格,但不包括 Chat 应用成员资格(包括其自身的成员资格)。使用用户身份验证列出成员资格时,会列出经过身份验证的用户有权访问的聊天室中的成员资格。

支持以下类型的身份验证:

  • 应用身份验证,具有以下授权范围之一:

    • https://www.googleapis.com/auth/chat.bot
    • https://www.googleapis.com/auth/chat.app.memberships(需要管理员批准)
  • 使用以下授权范围之一进行用户身份验证:

    • https://www.googleapis.com/auth/chat.memberships.readonly
    • https://www.googleapis.com/auth/chat.memberships
    • https://www.googleapis.com/auth/chat.import(仅限导入模式聊天室)
    • 当管理员账号进行身份验证、use_admin_access 为 true 且使用以下授权范围之一时,用户身份验证会授予管理员权限:
      • https://www.googleapis.com/auth/chat.admin.memberships.readonly
      • https://www.googleapis.com/auth/chat.admin.memberships
授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.admin.memberships
  • https://www.googleapis.com/auth/chat.admin.memberships.readonly
  • https://www.googleapis.com/auth/chat.app.memberships
  • https://www.googleapis.com/auth/chat.bot
  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.memberships
  • https://www.googleapis.com/auth/chat.memberships.readonly

如需了解详情,请参阅授权指南。

ListMessagePins

rpc ListMessagePins(ListMessagePinsRequest) returns (ListMessagePinsResponse)

列出聊天室中的消息置顶。用户可以在聊天室中固定重要消息,以便轻松访问。如需了解详情,请参阅在 Google Chat 中固定或取消固定对话。

需要使用以下授权范围之一进行用户身份验证:

  • https://www.googleapis.com/auth/chat.spaces.pins.readonly
  • https://www.googleapis.com/auth/chat.spaces.pins
  • https://www.googleapis.com/auth/chat.spaces.readonly
  • https://www.googleapis.com/auth/chat.spaces
授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.spaces.pins
  • https://www.googleapis.com/auth/chat.spaces.pins.readonly
  • https://www.googleapis.com/auth/chat.spaces
  • https://www.googleapis.com/auth/chat.spaces.readonly

如需了解详情,请参阅授权指南。

ListMessages

rpc ListMessages(ListMessagesRequest) returns (ListMessagesResponse)

列出调用方所属聊天室中的消息,包括来自已屏蔽成员和聊天室的消息。系统消息(例如宣布新聊天室成员的消息)不包含在内。如果您列出没有消息的聊天室中的消息,则响应为空对象。使用 REST/HTTP 接口时,响应包含一个空 JSON 对象 {}。如需查看示例,请参阅列出消息。

支持以下类型的身份验证:

  • 应用身份验证,需要管理员批准,授权范围如下:

    • https://www.googleapis.com/auth/chat.app.messages.readonly。使用此身份验证范围时,此方法仅返回聊天室中的公开消息。不包括私信。
  • 使用以下授权范围之一进行用户身份验证:

    • https://www.googleapis.com/auth/chat.messages.readonly
    • https://www.googleapis.com/auth/chat.messages
    • https://www.googleapis.com/auth/chat.import(仅限导入模式聊天室)
授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.messages.readonly
  • https://www.googleapis.com/auth/chat.app.messages.readonly

如需了解详情,请参阅授权指南。

ListReactions

rpc ListReactions(ListReactionsRequest) returns (ListReactionsResponse)

列出对消息的回应。如需查看示例,请参阅列出对某条消息的回应。

需要使用以下授权范围之一进行用户身份验证:

  • https://www.googleapis.com/auth/chat.messages.reactions.readonly
  • https://www.googleapis.com/auth/chat.messages.reactions
  • https://www.googleapis.com/auth/chat.messages.readonly
  • https://www.googleapis.com/auth/chat.messages
授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.messages.readonly
  • https://www.googleapis.com/auth/chat.messages.reactions
  • https://www.googleapis.com/auth/chat.messages.reactions.readonly

如需了解详情,请参阅授权指南。

ListSectionItems

rpc ListSectionItems(ListSectionItemsRequest) returns (ListSectionItemsResponse)

列出某个版块中的内容。

只有聊天室可以作为版块内容。如需了解详情,请参阅在 Google Chat 中创建和整理版块。

需要使用授权范围进行用户身份验证:

  • https://www.googleapis.com/auth/chat.users.sections
  • https://www.googleapis.com/auth/chat.users.sections.readonly
授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.users.sections
  • https://www.googleapis.com/auth/chat.users.sections.readonly

如需了解详情,请参阅授权指南。

ListSections

rpc ListSections(ListSectionsRequest) returns (ListSectionsResponse)

列出 Chat 用户可用的版块。版块可帮助用户对对话进行分组,并自定义 Chat 导航面板中显示的聊天室列表。如需了解详情,请参阅在 Google Chat 中创建和整理版块。

需要使用授权范围进行用户身份验证:

  • https://www.googleapis.com/auth/chat.users.sections
  • https://www.googleapis.com/auth/chat.users.sections.readonly
授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.users.sections
  • https://www.googleapis.com/auth/chat.users.sections.readonly

如需了解详情,请参阅授权指南。

ListSpaceEvents

rpc ListSpaceEvents(ListSpaceEventsRequest) returns (ListSpaceEventsResponse)

列出 Google Chat 聊天室中的事件。对于每个事件,载荷都包含最新版本的 Chat 资源。例如,如果您列出有关新聊天室成员的事件,服务器会返回包含最新成员资格详细信息的 Membership 资源。如果在请求的时间段内移除了新成员,则事件载荷会包含一个空的 Membership 资源。

支持以下类型的身份验证,并具有适合读取所请求数据的授权范围:

  • 应用身份验证和管理员批准,并具有以下授权范围之一:

    • https://www.googleapis.com/auth/chat.app.spaces
    • https://www.googleapis.com/auth/chat.app.spaces.readonly
    • https://www.googleapis.com/auth/chat.app.messages.readonly
    • https://www.googleapis.com/auth/chat.app.memberships
    • https://www.googleapis.com/auth/chat.app.memberships.readonly
  • 使用以下授权范围之一进行用户身份验证:

    • https://www.googleapis.com/auth/chat.spaces.readonly
    • https://www.googleapis.com/auth/chat.spaces
    • https://www.googleapis.com/auth/chat.messages.readonly
    • https://www.googleapis.com/auth/chat.messages
    • https://www.googleapis.com/auth/chat.messages.reactions.readonly
    • https://www.googleapis.com/auth/chat.messages.reactions
    • https://www.googleapis.com/auth/chat.memberships.readonly
    • https://www.googleapis.com/auth/chat.memberships

如需列出事件,经过身份验证的调用方必须是聊天室的成员。

如需查看示例,请参阅列出 Google Chat 聊天室中的事件。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.app.memberships
  • https://www.googleapis.com/auth/chat.app.memberships.readonly
  • https://www.googleapis.com/auth/chat.app.messages.readonly
  • https://www.googleapis.com/auth/chat.app.spaces
  • https://www.googleapis.com/auth/chat.app.spaces.readonly
  • https://www.googleapis.com/auth/chat.app.all.messages.readonly
  • https://www.googleapis.com/auth/chat.app.all.spaces.readonly
  • https://www.googleapis.com/auth/chat.app.all.memberships.readonly
  • https://www.googleapis.com/auth/chat.spaces
  • https://www.googleapis.com/auth/chat.spaces.readonly
  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.messages.readonly
  • https://www.googleapis.com/auth/chat.memberships
  • https://www.googleapis.com/auth/chat.memberships.readonly
  • https://www.googleapis.com/auth/chat.messages.reactions
  • https://www.googleapis.com/auth/chat.messages.reactions.readonly

如需了解详情,请参阅授权指南。

ListSpaces

rpc ListSpaces(ListSpacesRequest) returns (ListSpacesResponse)

列出调用方所属的聊天室。在发送第一条消息之前,群聊和私信不会列出。如需查看示例,请参阅列出聊天室。

支持以下类型的身份验证:

  • 具有授权范围的应用身份验证:

    • https://www.googleapis.com/auth/chat.bot
  • 使用以下授权范围之一进行用户身份验证:

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

如需按 Google Workspace 组织列出所有有名称的聊天室,请改用 spaces.search() 方法,并使用 Workspace 管理员权限。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.spaces
  • https://www.googleapis.com/auth/chat.spaces.readonly
  • https://www.googleapis.com/auth/chat.bot

如需了解详情,请参阅授权指南。

MarkAsActive

rpc MarkAsActive(MarkAsActiveRequest) returns (Availability)

在 Google Chat 中将用户标记为ACTIVE。

将用户的空闲状态设置为 ACTIVE。ACTIVE 状态会持续到指定的到期时间,届时用户的状态会变为 AWAY。请注意,如果用户正在使用 Chat,ACTIVE 状态的持续时间可能会超过提供的到期时间。

此方法只会更新经过身份验证的用户是否可以加入。

需要使用授权范围进行用户身份验证:

  • https://www.googleapis.com/auth/chat.users.availability
授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/chat.users.availability

如需了解详情,请参阅授权指南。

MarkAsAway

rpc MarkAsAway(MarkAsAwayRequest) returns (Availability)

在 Google Chat 中将用户标记为AWAY。

将用户的状态设置为“离开”,且不受用户活动的影响。

此方法只会更新经过身份验证的用户是否可以加入。

需要使用授权范围进行用户身份验证:

  • https://www.googleapis.com/auth/chat.users.availability
授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/chat.users.availability

如需了解详情,请参阅授权指南。

MarkAsDoNotDisturb

rpc MarkAsDoNotDisturb(MarkAsDoNotDisturbRequest) returns (Availability)

在 Google Chat 中将用户标记为DO_NOT_DISTURB。

将用户的空闲状态设置为 DO_NOT_DISTURB,直到指定的到期时间。在DO_NOT_DISTURB模式下,用户通常不会收到通知。

此方法只会更新经过身份验证的用户是否可以加入。

需要使用授权范围进行用户身份验证:

  • https://www.googleapis.com/auth/chat.users.availability
授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/chat.users.availability

如需了解详情,请参阅授权指南。

MoveSectionItem

rpc MoveSectionItem(MoveSectionItemRequest) returns (MoveSectionItemResponse)

将一个项从一个部分移至另一个部分。例如,如果某个版块包含聊天室,则可以使用此方法将聊天室移至其他版块。如需了解详情,请参阅在 Google Chat 中创建和整理版块。

需要使用授权范围进行用户身份验证:

  • https://www.googleapis.com/auth/chat.users.sections
授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/chat.users.sections

如需了解详情,请参阅授权指南。

PositionSection

rpc PositionSection(PositionSectionRequest) returns (PositionSectionResponse)

更改版块的排列顺序。如需了解详情,请参阅在 Google Chat 中创建和整理版块。

需要使用授权范围进行用户身份验证:

  • https://www.googleapis.com/auth/chat.users.sections
授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/chat.users.sections

如需了解详情,请参阅授权指南。

ReplaceMessageCards

rpc ReplaceMessageCards(ReplaceMessageCardsRequest) returns (ReplaceMessageCardsResponse)

替换消息中包含的卡片。

只有在人工创建的消息已包含卡片且这些卡片是由 Chat 应用创建的情况下,Chat 应用才能替换这些卡片。

如果应用将卡片替换为空列表,则卡片会被移除。移除卡片后,应用无法将卡片重新添加到消息中。

需要使用授权范围进行应用身份验证:- https://www.googleapis.com/auth/chat.bot

授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/chat.bot

如需了解详情,请参阅授权指南。

SearchMessages

rpc SearchMessages(SearchMessagesRequest) returns (SearchMessagesResponse)

在 Google Chat 中搜索调用用户有权访问的消息。返回与搜索条件匹配的消息列表。

如需在用户有权访问的所有聊天室中进行搜索,请将 parent 设置为 spaces/-。对 parent 使用任何其他值都会导致 INVALID_ARGUMENT 错误。返回的消息的 name 字段中会填充完整的资源名称,其中包括消息所在的特定 space。

此 API 不会返回所有消息类型。以下类型的消息不包含在回复中。使用 ListMessages 列出所有消息。

  • 经过身份验证的用户可以看到的私信。
  • Chat 应用在聊天室或群聊中发布的消息。
  • Chat 应用私信中的消息。
  • 来自已屏蔽用户的消息。
  • 调用方已忽略的聊天室中的消息。

需要使用以下授权范围之一进行用户身份验证:

  • https://www.googleapis.com/auth/chat.messages.readonly
  • https://www.googleapis.com/auth/chat.messages
授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.messages
  • https://www.googleapis.com/auth/chat.messages.readonly

如需了解详情,请参阅授权指南。

SearchSpaces

rpc SearchSpaces(SearchSpacesRequest) returns (SearchSpacesResponse)

返回 Google Workspace 组织中的聊天室列表。如需查看示例,请参阅搜索和管理聊天室。

如果 use_admin_access 设置为 false,则结果仅限于调用用户已加入的聊天室。如需使用管理员权限进行搜索,请将 use_admin_access 设置为 true。

支持以下类型的身份验证:

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.spaces
  • https://www.googleapis.com/auth/chat.spaces.readonly
  • https://www.googleapis.com/auth/chat.admin.spaces
  • https://www.googleapis.com/auth/chat.admin.spaces.readonly

如需了解详情,请参阅授权指南。

SetUpSpace

rpc SetUpSpace(SetUpSpaceRequest) returns (Space)

创建聊天室并向其中添加指定用户。发起调用的用户会自动添加到聊天室中,不应在请求中指定为成员。如需查看示例,请参阅设置包含初始成员的聊天室。

如需指定要添加的人类成员,请添加具有适当 membership.member.name 的成员资格。如需添加人类用户,请使用 users/{user},其中 {user} 可以是用户的邮箱。对于同一 Workspace 组织中的用户,{user} 也可以是 People API 中该用户的 id,或 Directory API 中该用户的 id。例如,如果 user@example.com 的 People API 个人资料 ID 为 123456789,您可以通过将 membership.member.name 设置为 users/user@example.com 或 users/123456789,将该用户添加到聊天室。

如需指定要添加的 Google 群组,请添加具有相应 membership.group_member.name 的成员资格。如需添加或邀请 Google 群组,请使用 groups/{group},其中 {group} 是 Cloud Identity Groups API 中群组的 id。例如,您可以使用 Cloud Identity Groups 查找 API 检索群组电子邮件 group@example.com 的 ID 123456789,然后通过将 membership.group_member.name 设置为 groups/123456789 将群组添加到聊天室。不支持群组邮箱,并且 Google 群组只能作为成员添加到有名称的聊天室中。

对于有名称的聊天室或群聊,如果发起人屏蔽了某些成员、被某些成员屏蔽或无权添加某些成员,则这些成员不会添加到创建的聊天室中。

如需在发起调用的用户与另一位人类用户之间创建私信 (DM),请指定一个成员资格来代表该人类用户。如果其中一方屏蔽了另一方,则请求会失败,并且不会创建私信。

如需在调用用户和调用应用之间创建私信,请将 Space.singleUserBotDm 设置为 true,并且不指定任何成员资格。您只能使用此方法与通话应用建立私信。如需将通话应用添加为聊天室成员或两个真人用户之间的现有私信成员,请参阅邀请或添加用户或应用到聊天室。

如果两个用户之间已存在私信,即使其中一个用户在发出请求时屏蔽了另一个用户,系统也会返回现有私信。

不支持包含消息串式回复的聊天室。如果您在设置空间时收到出错提示 ALREADY_EXISTS,请尝试使用其他 displayName。Google Workspace 组织中的现有空间可能已使用此显示名称。

需要使用以下授权范围之一进行用户身份验证:

  • https://www.googleapis.com/auth/chat.spaces.create
  • https://www.googleapis.com/auth/chat.spaces
授权范围

需要以下 OAuth 范围之一:

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

如需了解详情,请参阅授权指南。

UpdateAvailability

rpc UpdateAvailability(UpdateAvailabilityRequest) returns (Availability)

更新人类用户的空闲情况信息。只有 custom_status 字段可以通过此方法进行更新。

此方法只会更新经过身份验证的用户是否可以加入。

需要使用以下授权范围之一进行用户身份验证:

  • https://www.googleapis.com/auth/chat.users.availability
授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/chat.users.availability

如需了解详情,请参阅授权指南。

UpdateMembership

rpc UpdateMembership(UpdateMembershipRequest) returns (Membership)

更新成员资格。如需查看示例,请参阅更新用户在聊天室中的成员资格。

支持以下类型的身份验证:

  • 应用身份验证(需管理员批准)和授权范围:

    • https://www.googleapis.com/auth/chat.app.memberships(仅限应用创建的聊天室)
  • 使用以下授权范围之一进行用户身份验证:

    • https://www.googleapis.com/auth/chat.memberships
    • https://www.googleapis.com/auth/chat.import(仅限导入模式聊天室)
    • 当管理员账号进行身份验证、use_admin_access 为 true 且使用以下授权范围时,用户身份验证会授予管理员权限:
      • https://www.googleapis.com/auth/chat.admin.memberships
授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.app.memberships
  • https://www.googleapis.com/auth/chat.admin.memberships
  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.memberships

如需了解详情,请参阅授权指南。

UpdateMessage

rpc UpdateMessage(UpdateMessageRequest) returns (Message)

更新消息。patch 方法和 update 方法之间存在差异。patch 方法使用 patch 请求,而 update 方法使用 put 请求。我们建议使用 patch 方法。如需查看示例,请参阅更新消息。

支持以下类型的身份验证:

  • 具有授权范围的应用身份验证:

    • https://www.googleapis.com/auth/chat.bot
  • 使用以下授权范围之一进行用户身份验证:

    • https://www.googleapis.com/auth/chat.messages
    • https://www.googleapis.com/auth/chat.import(仅限导入模式聊天室)

使用应用身份验证时,请求只能更新由调用方 Chat 应用创建的消息。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.bot
  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.messages

如需了解详情,请参阅授权指南。

UpdateSection

rpc UpdateSection(UpdateSectionRequest) returns (Section)

更新一个版块。只能更新类型为 CUSTOM_SECTION 的部分。如需了解详情,请参阅在 Google Chat 中创建和整理版块。

需要使用授权范围进行用户身份验证:

  • https://www.googleapis.com/auth/chat.users.sections
授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/chat.users.sections

如需了解详情,请参阅授权指南。

UpdateSpace

rpc UpdateSpace(UpdateSpaceRequest) returns (Space)

更新空间。如需查看示例,请参阅更新聊天室。

如果您在更新 displayName 字段时收到出错提示 ALREADY_EXISTS,请尝试使用其他显示名称。Google Workspace 组织中的现有空间可能已使用此显示名称。

支持以下类型的身份验证:

  • 应用身份验证(需管理员批准)和以下授权范围之一:

    • https://www.googleapis.com/auth/chat.app.spaces
  • 使用以下授权范围之一进行用户身份验证:

    • https://www.googleapis.com/auth/chat.spaces
    • https://www.googleapis.com/auth/chat.import(仅限导入模式聊天室)
    • 当管理员账号进行身份验证、use_admin_access 为 true 且使用以下授权范围时,用户身份验证会授予管理员权限:
      • https://www.googleapis.com/auth/chat.admin.spaces

应用身份验证存在以下限制:

  • 如需更新 space.predefined_permission_settings 或 space.permission_settings,应用必须是聊天室创建者。
  • 应用身份验证不支持更新 space.access_settings.audience。
授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/chat.app.spaces
  • https://www.googleapis.com/auth/chat.admin.spaces
  • https://www.googleapis.com/auth/chat.import
  • https://www.googleapis.com/auth/chat.spaces

如需了解详情,请参阅授权指南。

UpdateSpaceNotificationSetting

rpc UpdateSpaceNotificationSetting(UpdateSpaceNotificationSettingRequest) returns (SpaceNotificationSetting)

更新聊天室通知设置。如需查看示例,请参阅更新调用方的聊天室通知设置。

需要使用授权范围进行用户身份验证:

  • https://www.googleapis.com/auth/chat.users.spacesettings
授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/chat.users.spacesettings

如需了解详情,请参阅授权指南。

UpdateSpaceReadState

rpc UpdateSpaceReadState(UpdateSpaceReadStateRequest) returns (SpaceReadState)

更新用户在聊天室中的已读状态,用于识别已读和未读消息。如需查看示例,请参阅更新用户的聊天室已读状态。

需要使用授权范围进行用户身份验证:

  • https://www.googleapis.com/auth/chat.users.readstate
授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/chat.users.readstate

如需了解详情,请参阅授权指南。

AccessoryWidget

显示在消息底部的一个或多个互动式 widget。如需了解详情,请参阅在邮件底部添加互动式微件。

字段
联合字段 action。操作的类型。action 只能是下列其中一项:
button_list

ButtonList

按钮列表。

ActionResponse

Chat 应用可用于配置其回答发布方式的参数。

字段
type

ResponseType

仅限输入。Chat 应用响应的类型。

url

string

仅限输入。供用户进行身份验证或配置的网址。(仅适用于 REQUEST_CONFIG 响应类型。)

dialog_action

DialogAction

仅限输入。对与对话框相关的互动事件的响应。必须由 ResponseType.Dialog 陪同。

updated_widget

UpdatedWidget

仅限输入。更新后的 widget 的响应。

ResponseType

Chat 应用响应的类型。

枚举
TYPE_UNSPECIFIED 作为 NEW_MESSAGE 处理的默认类型。
NEW_MESSAGE 在主题中作为新消息发布。
UPDATE_MESSAGE 更新 Chat 应用的消息。只有在消息发送者类型为 BOT 的 CARD_CLICKED 事件中,才允许执行此操作。
UPDATE_USER_MESSAGE_CARDS 更新用户消息中的卡片。只有在响应网址匹配的 MESSAGE 事件或消息发送者类型为 HUMAN 的 CARD_CLICKED 事件时,才允许执行此操作。文本会被忽略。
REQUEST_CONFIG 私下要求用户进行额外的身份验证或配置。
DIALOG 显示对话框。
UPDATE_WIDGET 微件文本自动补全选项查询。

SelectionItems

微件自动补全结果列表。

字段
items[]

SelectionItem

由 SelectionItem 对象组成的数组。

UpdatedWidget

对于 selectionInput widget,返回多选菜单的自动补全建议。

字段
widget

string

更新后的小组件的 ID。该 ID 必须与触发更新请求的 widget 的 ID 一致。

联合字段 updated_widget。该 widget 已更新,以响应用户操作。updated_widget 只能是下列其中一项:
suggestions

SelectionItems

微件自动补全结果列表

ActionStatus

表示调用或提交对话框的请求的状态。

字段
status_code

Code

状态代码。

user_facing_message

string

向用户发送的有关其请求状态的消息。如果未设置,系统会根据 status_code 发送一般消息。

注释

注释可以与消息的纯文本正文相关联,也可以与链接到 Google 文档或表格等 Google Workspace 资源的条状标签相关联,其中 start_index 和 length 为 0。如需为短信添加基本格式,请参阅设置短信格式。

纯文本邮件正文示例:

Hello @FooBot how are you!"

相应的注释元数据:

"annotations":[{
  "type":"USER_MENTION",
  "startIndex":6,
  "length":7,
  "userMention": {
    "user": {
      "name":"users/{user}",
      "displayName":"FooBot",
      "avatarUrl":"https://goo.gl/aeDtrS",
      "type":"BOT"
    },
    "type":"MENTION"
   }
}]
字段
type

AnnotationType

此注释的类型。

length

int32

此注释对应的纯文本邮件正文中的子字符串长度。如果不存在,则表示长度为 0。

start_index

int32

此注释对应的纯文本邮件正文中的起始索引(从 0 开始,包含边界值)。

联合字段 metadata。有关注释的其他元数据。metadata 只能是下列其中一项:
user_mention

UserMentionMetadata

用户提及的元数据。

slash_command

SlashCommandMetadata

斜杠命令的元数据。

custom_emoji_metadata

CustomEmojiMetadata

自定义表情符号的元数据。

AnnotationType

注释的类型。

枚举
ANNOTATION_TYPE_UNSPECIFIED 枚举的默认值。请勿使用。
USER_MENTION 有人提及了某位用户。
SLASH_COMMAND 调用了斜杠命令。
CUSTOM_EMOJI 自定义表情符号注释。

AppCommandMetadata

Chat 应用命令的相关元数据。

字段
app_command_id

int32

在 Chat API 配置中指定的命令的 ID。

app_command_type

AppCommandType

Chat 应用命令的类型。

AppCommandType

Chat 应用命令的类型。如需了解详情,请参阅 Chat 应用命令的类型。

枚举
APP_COMMAND_TYPE_UNSPECIFIED 默认值。未指定。
SLASH_COMMAND 斜杠命令。用户在聊天消息中发送命令。
QUICK_COMMAND 快速命令。用户从消息回复区域的 Chat 菜单中选择该命令。
MESSAGE_ACTION 消息操作。用户从 Chat 中的消息上下文菜单中选择该命令。

AttachedGif

由网址指定的 GIF 图片。

字段
uri

string

仅限输出。托管 GIF 图片的网址。

附件

Google Chat 中的附件。

字段
name

string

标识符。附件的资源名称。

格式:spaces/{space}/messages/{message}/attachments/{attachment}。

content_name

string

仅限输出。内容的原始文件名,而不是完整路径。

content_type

string

仅限输出。文件的内容类型(MIME 类型)。

thumbnail_uri

string

仅限输出。缩略图网址,用于向人类用户预览附件。Chat 应用不应使用此网址下载附件内容。

download_uri

string

仅限输出。下载网址,供人类用户下载附件。Chat 应用不应使用此网址下载附件内容。

source

Source

仅限输出。附件的来源。

联合字段 data_ref。对附件的数据引用。data_ref 只能是下列其中一项:
attachment_data_ref

AttachmentDataRef

可选。对附件数据的引用。此字段用于创建或更新包含附件的消息,或与媒体 API 搭配使用,以下载附件数据。

drive_data_ref

DriveDataRef

仅限输出。对 Google 云端硬盘附件的引用。此字段与 Google Drive API 搭配使用。

来源

附件的来源。

枚举
SOURCE_UNSPECIFIED Reserved.
DRIVE_FILE 该文件是 Google 云端硬盘文件。
UPLOADED_CONTENT 文件已上传到 Chat。

AttachmentDataRef

对附件数据的引用。

字段
resource_name

string

可选。附件数据的资源名称。此字段与媒体 API 搭配使用,用于下载附件数据。

attachment_upload_token

string

可选。包含对已上传附件的引用的不透明令牌。被客户端视为不透明字符串,用于创建或更新包含附件的聊天消息。

受众群体

Google Chat 中的目标受众群体。目标受众群体代表 Google Workspace 组织内的一组用户,由管理员定义。目标受众群体用于配置资源的访问权限和公开范围设置,例如让特定用户群组能够发现某个聊天室。

如需了解详情,请参阅目标对象群组和让目标对象群组可以发现聊天室。

字段
name

string

可以发现或加入聊天室的目标受众群体的资源名称。如需了解详情,请参阅让目标对象群组可以发现聊天室。格式:audiences/{audience}

如需为 Google Workspace 组织使用默认目标受众群体,请设置为 audiences/default。

可用性

表示用户在 Google Chat 中的当前状态信息,包括其状态(例如“在线”“离开”“勿扰”)和任何自定义状态。

字段
name

string

标识符。用户空闲状态的资源名称。

格式:users/{user}/availability

{user} 是 People API 或 Admin SDK Directory API 中人员的 ID。例如 users/123456789。

用户的电子邮件地址或 me 也可以用作别名来指代调用方。例如 users/user@example.com 或 users/me。

state

State

仅限输出。用户当前的空闲状态。

custom_status

CustomStatus

可选。用户的自定义状态。

联合字段 state_metadata。与用户空闲状态相关的其他元数据。state_metadata 只能是下列其中一项:
do_not_disturb_metadata

DoNotDisturbMetadata

仅限输出。用户状态设为 DO_NOT_DISTURB 时的元数据。

州

表示用户的当前空闲状态。

枚举
STATE_UNSPECIFIED 默认值。状态未指定。
ACTIVE 根据近期活动,该用户目前处于活跃状态。
IDLE 用户当前处于闲置状态。此状态表示在“活跃”之后有一段闲置时间,然后可能会转换为“外出”。
AWAY 用户目前不在。此状态可以在 ACTIVE 或 IDLE 状态下经过一段时间的不活动后自动设置,也可以由用户手动设置。通过 MarkAsAway 手动设置后,无论用户活动如何,此状态都会保持不变。
DO_NOT_DISTURB 用户处于手动设置的“勿扰”状态。

CalendarEventLinkData

日历活动链接的数据。

字段
calendar_id

string

所关联日历的日历标识符。

event_id

string

关联的日历活动的活动标识符。

CardWithId

Google Chat 聊天消息中的卡片。

Chat 应用可以使用应用身份验证创建卡片。作为开发者预览版计划的一部分,如果您的 Chat 应用以用户身份进行身份验证,则可以创建卡片消息。如果您的 Chat 应用未加入开发者预览版计划,则无法创建需要用户身份验证的卡片。

如需了解如何创建包含卡片的消息,请参阅发送消息。

使用卡片构建器设计和预览卡片。

打开卡片构建器

字段
card_id

string

如果消息包含多张卡片,则必须提供此字段。消息中卡片的唯一标识符。

card

Card

一张卡片。大小上限为 32 KB。

owner_user

User

仅限输出。拥有该卡的应用。

ChatSpaceLinkData

Chat 聊天室链接的数据。

字段
space

string

关联的 Chat 聊天室资源所在的聊天室。

格式:spaces/{space}

thread

string

关联的 Chat 聊天室资源的消息串。

格式:spaces/{space}/threads/{thread}

message

string

关联的 Chat 聊天室资源的消息。

格式:spaces/{space}/messages/{message}

引用

引用是内嵌参考,可为用户提供有关内嵌参考的更详细信息。消息文本中应包含相应的内嵌引用,并采用 <chat-citation data-id="{id}">{text}</chat-citation> 标记格式。仅当消息的 markup_syntax 设置为 MARKDOWN 时,才支持引用。

Elements.citations 中未引用的引用(即在消息文本中没有匹配的 <chat-citation> 标记)会被忽略,不会导致消息被拒绝。

字段
id

string

必需。应用定义的 ID。只能包含 ASCII 字母和数字,且长度少于 63 个字符。

cited_sources[]

CitedSource

可选。与引用相关的来源列表。来源会显示在引用悬停卡片中。

CitedSource

对信息来源的引用。

字段
title

string

必需。CitedSource 的纯文本标题。此字段不支持格式设置。

uri

string

必需。指向此 CitedSource 引用的资源的 URI。

snippet

Snippet

可选。包含直接来自来源的信息的摘要。

footer

Footer

可选。以页脚形式与摘要一起显示的额外信息。

来源的页脚,用于注明出处。

字段
text

string

可选。要在页脚中显示的文本。

Snippet

一个代码段对象,表示较大语料库中的选段。

字段
text

string

可选。直接来自语料库的简短纯文本摘录,可能会在 Chat 中呈现。不支持 Markdown 格式。

image_preview

ElementsImage

可选。创建引用时作为输入提供的摘要的图片预览。

CompleteImportSpaceRequest

用于完成聊天室导入流程的请求消息。

字段
name

string

必需。导入模式聊天室的资源名称。

格式:spaces/{space}

CompleteImportSpaceResponse

完成聊天室导入流程的响应消息。

字段
space

Space

导入模式聊天室。

ContextualAddOnMarkup

此类型没有字段。

供开发者指定情境插件内容的标记。

卡片

卡片是一种界面元素,可以包含文本和图片等界面 widget。

字段
header

CardHeader

卡片的标题。标题通常包含标题和图片。

sections[]

Section

各部分之间用分隔线隔开。

card_actions[]

CardAction

此卡片的操作。

name

string

卡券的名称。

CardAction

卡片操作是与卡片关联的操作。对于账单卡片,典型的操作包括:删除账单、通过电子邮件发送账单或在浏览器中打开账单。

Google Chat 应用不支持。

字段
action_label

string

要在操作菜单项中显示的标签。

on_click

OnClick

此操作项的 onclick 操作。

CardHeader

字段
title

string

必须指定标题。标题具有固定高度:如果同时指定了标题和副标题,则各占一行。如果仅指定了标题,则标题会占用两行。

subtitle

string

卡片标题的副标题。

image_style

ImageStyle

图片的类型(例如,方形边框或圆形边框)。

image_url

string

卡片标题中的图片网址。

ImageStyle

枚举
IMAGE_STYLE_UNSPECIFIED
IMAGE 方形边框。
AVATAR 圆形边框。

部分

一个部分包含一系列微件,这些微件会按照指定的顺序(垂直)呈现。在所有平台上,卡片都具有较窄的固定宽度,因此目前不需要布局属性(例如 float)。

字段
header

string

相应部分的标题。支持格式化文本。如需详细了解如何设置文本格式,请参阅在 Google Chat 应用中设置文本格式和在 Google Workspace 插件中设置文本格式。

widgets[]

WidgetMarkup

一个版块必须至少包含一个 widget。

CreateCustomEmojiRequest

创建自定义表情符号的请求。

字段
custom_emoji

CustomEmoji

必需。要创建的自定义表情符号。

CreateMembershipRequest

用于创建成员资格的请求消息。

字段
parent

string

必需。要为其创建成员资格的空间的资源名称。

格式:spaces/{space}

membership

Membership

必需。要创建的成员资格关系。

memberType 字段必须包含一个用户,且该用户的 user.name 和 user.type 字段已填充。服务器将分配资源名称并覆盖指定的任何内容。

当 Chat 应用为人类用户创建成员关系时,必须使用特定的授权范围,并为特定字段设置特定值:

  • 以用户身份进行身份验证时,需要 chat.memberships 授权范围。

  • 以应用身份进行身份验证时,需要 chat.app.memberships 授权范围。

  • 将 user.type 设置为 HUMAN,并将 user.name 设置为 users/{user} 格式,其中 {user} 可以是用户的邮箱。对于同一 Workspace 组织中的用户,{user} 也可以是 People API 中用户的 id,或 Directory API 中用户的 id。例如,如果 user@example.com 的 People API Person 个人资料 ID 为 123456789,您可以通过将 membership.member.name 设置为 users/user@example.com 或 users/123456789,将该用户添加到聊天室。

如需邀请拥有聊天室的 Workspace 组织外部的用户,则需要进行用户身份验证。

当 Chat 应用为自身创建成员关系时,必须以用户身份进行身份验证并使用 chat.memberships.app 范围,将 user.type 设置为 BOT,并将 user.name 设置为 users/app。

use_admin_access

bool

可选。如果为 true,则该方法会使用用户的 Google Workspace 管理员权限运行。

调用用户必须是拥有管理聊天和聊天室对话权限的 Google Workspace 管理员。

需要 chat.admin.memberships OAuth 2.0 范围。

不支持使用管理员访问权限创建应用成员资格,也不支持为管理员所在 Google Workspace 组织外部的用户创建成员资格。

CreateMessageNotificationOptions

消息发布时的通知行为选项。

字段
notification_type

NotificationType

消息的通知类型。

NotificationType

消息的通知类型选项。

枚举
NOTIFICATION_TYPE_NONE 默认行为。通知行为与人类用户使用 Chat 界面发送消息时类似:系统不会向人类发送者发送通知。
NOTIFICATION_TYPE_FORCE_NOTIFY

强制通知收件人。这会绕过用户的聊天室通知设置和 Chat 勿扰设置。此选项不会绕过设备级“勿扰”设置。

需要应用身份验证。

NOTIFICATION_TYPE_SILENT

不通知收件人,也不将邮件标记为未读。这与用户将对话静音或启用 Chat 勿扰类似。

需要应用身份验证。

CreateMessagePinRequest

用于创建消息置顶的请求消息。

字段
parent

string

必需。要在其中创建消息置顶的父级聊天室。格式:spaces/{space}

message_pin

MessagePin

必需。要创建的 MessagePin。

CreateMessageRequest

创建消息。

字段
parent

string

必需。要在其中创建消息的聊天室的资源名称。

格式:spaces/{space}

message

Message

必需。邮件正文。

thread_key
(deprecated)

string

可选。已弃用:请改用 thread.thread_key。会话串的 ID。最多支持 4000 个字符。如需发起或添加到消息串,请创建消息并指定 threadKey 或 thread.name。如需查看用法示例,请参阅发起或回复消息串。

request_id

string

可选。此请求的唯一 ID。建议使用随机 UUID。指定请求 ID 可使请求具有幂等性,从而确保具有相同请求 ID 的多个相同请求只会导致创建一条消息。使用相同请求 ID 的后续请求会返回现有消息,而不会更新消息,即使请求的详细信息与当前状态不同也是如此。

如需有效使用此字段,请执行以下操作:

  • 确保后续请求与原始请求完全相同,并使用相同的身份验证凭证。
  • 如果已使用提供的请求 ID 创建了消息,则请求会返回该消息。请注意,返回的消息可能未完全填充;API 会在请求中回显消息,并填充系统分配的资源名称。如需检索消息的最新元数据,请调用 GetMessage。
  • 如果对不同的经过身份验证的用户重复使用现有请求 ID,则会导致错误。
message_reply_option

MessageReplyOption

可选。指定消息是发起话题还是回复话题。仅在已命名的聊天室中受支持。

响应用户互动时,系统会忽略此字段。对于消息串中的互动,系统会在同一消息串中创建回复。否则,回复会创建为新会话。

message_id

string

可选。消息的自定义 ID。让 Chat 应用无需在消息的资源名称(在消息 name 字段中表示)中存储系统分配的 ID,即可获取、更新或删除消息。

此字段的值必须满足以下要求:

  • 以 client- 开头。例如,client-custom-name 是有效的自定义 ID,但 custom-name 不是。
  • 最多包含 63 个字符,且只能包含小写字母、数字和连字符。
  • 在聊天室内是唯一的。Chat 应用无法为不同的消息使用相同的自定义 ID。

如需了解详情,请参阅为消息命名。

create_message_notification_options

CreateMessageNotificationOptions

可选。控制消息发布时的通知行为。如需了解详情,请参阅强制发送通知或发送静默消息。

MessageReplyOption

指定如何回复消息。未来可能会添加更多状态。

枚举
MESSAGE_REPLY_OPTION_UNSPECIFIED 默认值。发起新对话串。使用此选项会忽略包含的所有 thread ID 或 thread_key。
REPLY_MESSAGE_FALLBACK_TO_NEW_THREAD 创建消息作为对 thread ID 或 thread_key 指定的消息串的回复。如果失败,该消息会启动一个新消息串。
REPLY_MESSAGE_OR_FAIL 创建消息作为对 thread ID 或 thread_key 指定的消息串的回复。如果使用新的 thread_key,则会创建一个新线程。如果消息创建失败,系统会返回 NOT_FOUND 错误。

CreateReactionRequest

创建对消息的回应。

字段
parent

string

必需。创建回应的消息。

格式:spaces/{space}/messages/{message}

reaction

Reaction

必需。要创建的回应。

CreateSectionRequest

用于创建版块的请求消息。

字段
parent

string

必需。将在其中创建部分的父级资源名称。

格式:users/{user}

section

Section

必需。要创建的版块。

CreateSpaceRequest

请求创建不含成员的命名聊天室。

字段
space

Space

必需。必须填充 displayName 和 spaceType 字段。仅支持 SpaceType.SPACE 和 SpaceType.GROUP_CHAT。仅当 importMode 设置为 true 时,才能使用 SpaceType.GROUP_CHAT。

如果您收到出错提示 ALREADY_EXISTS,请尝试使用其他 displayName。Google Workspace 组织中的现有空间可能已使用此显示名称。

空间 name 是在服务器上分配的,因此系统会忽略此字段中指定的任何内容。

request_id

string

可选。此请求的唯一 ID。建议使用随机 UUID。指定请求 ID 可使请求具有幂等性,从而确保具有相同请求 ID 的多个相同请求只会创建一个聊天室。使用相同请求 ID 发出的后续请求会返回现有聊天室,而不会更新聊天室,即使请求的详细信息与当前状态不同也是如此。

如需有效使用此字段,请执行以下操作:

  • 确保后续请求与原始请求完全相同,并使用相同的身份验证凭证。
  • 如果已使用提供的请求 ID 创建了聊天室,则请求会返回该聊天室。请注意,返回的空间可能未完全填充;API 会在请求中回显该空间,并填充系统分配的资源名称。如需检索聊天室的最新元数据,请调用 GetSpace。
  • 如果对不同的经过身份验证的用户重复使用现有请求 ID,则会导致错误。

CustomEmoji

表示自定义表情符号。

字段
name

string

标识符。自定义表情符号的资源名称,由服务器分配。

格式:customEmojis/{customEmoji}

uid

string

仅限输出。自定义表情符号资源的唯一键。

emoji_name

string

可选。不可变。用户为自定义表情符号提供的名称,该名称在组织内是唯一的。

创建自定义表情符号时为必填项,否则仅供输出。

表情符号名称必须以英文冒号开头和结尾,必须是小写字母,且只能包含字母数字字符、连字符和下划线。连字符和下划线应用来分隔字词,且不得连续使用。

示例::valid-emoji-name:

temporary_image_uri

string

仅限输出。自定义表情符号的临时图片网址,至少在 10 分钟内有效。请注意,创建自定义表情符号时,此字段不会填充到响应中。

payload

CustomEmojiPayload

可选。仅限输入。载荷数据。创建自定义表情符号时必须提供。

CustomEmojiPayload

自定义表情符号的载荷数据。

字段
file_content

bytes

必需。仅限输入。用于自定义表情符号的图片。

载荷必须小于 256 KB,图片必须为方形,尺寸必须介于 64 到 500 像素之间。这些限制可能会发生变化。

filename

string

必需。仅限输入。图片文件名。

支持的文件扩展名:.png、.jpg、.gif。

CustomEmojiMetadata

自定义表情符号的注释元数据。

字段
custom_emoji

CustomEmoji

自定义表情符号。

CustomStatus

表示用户在 Google Chat 中的自定义状态。这包括一条简短的文字消息,其中包含用户设置的可选表情符号,用于提供有关其空闲状态的更多背景信息。

字段
text

string

必需。自定义状态的文本。这将是一个长度上限为 64 的字符串。

emoji

Emoji

必需。自定义状态的表情符号。仅支持 Unicode 表情符号,不支持自定义表情符号。

联合字段 expiration。自定义状态的到期时间。可以指定为绝对时间戳或存留时间时长。expiration 只能是下列其中一项:
expire_time

Timestamp

自定义状态的到期时间戳。

ttl

Duration

仅限输入。自定义状态的有效时长。

DeleteCustomEmojiRequest

用于删除自定义表情符号的请求。

字段
name

string

必需。要删除的自定义表情符号的资源名称。

格式:customEmojis/{customEmoji}

您可以将表情符号名称用作 {customEmoji} 的别名。例如,customEmojis/:example-emoji:,其中 :example-emoji: 是自定义表情符号的名称。

DeleteMembershipRequest

请求删除聊天室中的成员资格。

字段
name

string

必需。要删除的成员资格的资源名称。Chat 应用可以删除人类用户或其自身的成员资格。Chat 应用无法删除其他应用的成员资格。

删除人员成员资格时,需要具有用户身份验证的 chat.memberships 范围,或具有应用身份验证和 spaces/{space}/members/{member} 格式的 chat.memberships.app 范围。您可以将该邮箱用作 {member} 的别名。例如,spaces/{space}/members/example@gmail.com,其中 example@gmail.com 是 Google Chat 用户的邮箱。

删除应用成员资格时,需要 chat.memberships.app 范围和 spaces/{space}/members/app 格式。

格式:spaces/{space}/members/{member} 或 spaces/{space}/members/app。

use_admin_access

bool

可选。如果为 true,则该方法会使用用户的 Google Workspace 管理员权限运行。

调用用户必须是拥有管理聊天和聊天室对话权限的 Google Workspace 管理员。

需要 chat.admin.memberships OAuth 2.0 范围。

不支持使用管理员访问权限删除聊天室中的应用成员资格。

DeleteMessagePinRequest

用于删除消息置顶的请求消息。

字段
name

string

必需。要移除的消息置顶的资源名称。格式:spaces/{space}/messagePins/{message_pin}

DeleteMessageRequest

请求删除消息。

字段
name

string

必需。消息的资源名称。

格式:spaces/{space}/messages/{message}

如果您为消息设置了自定义 ID,则可以将 clientAssignedMessageId 字段中的值用于 {message}。如需了解详情,请参阅为消息命名。

force

bool

可选。true时,删除消息也会删除其会话式回复。如果 false,当消息有消息串回复时,删除操作会失败。

仅在以用户身份进行身份验证时适用。以 Chat 应用身份进行身份验证时,此设置无效。

DeleteReactionRequest

删除对消息的回应。

字段
name

string

必需。要删除的回应的名称。

格式:spaces/{space}/messages/{message}/reactions/{reaction}

DeleteSectionRequest

用于删除版块的请求消息。

字段
name

string

必需。要删除的部分的名称。

格式:users/{user}/sections/{section}

DeleteSpaceRequest

删除聊天室的请求。

字段
name

string

必需。要删除的聊天室的资源名称。

格式:spaces/{space}

use_admin_access

bool

可选。如果为 true,则该方法会使用用户的 Google Workspace 管理员权限运行。

调用用户必须是拥有管理聊天和聊天室对话权限的 Google Workspace 管理员。

需要 chat.admin.delete OAuth 2.0 范围。

DeletionMetadata

有关已删除邮件的信息。设置 delete_time 后,系统会删除消息。

字段
deletion_type

DeletionType

指明是谁删除了消息。

DeletionType

谁删除了消息以及删除方式。未来可能会添加更多值。如需详细了解何时可以删除消息,请参阅在 Google Chat 中修改或删除消息。

枚举
DELETION_TYPE_UNSPECIFIED 此值未使用。
CREATOR 用户删除了自己的消息。
SPACE_OWNER 所有者或管理员删除了该消息。
ADMIN Google Workspace 管理员删除了该消息。管理员可以删除聊天室中的任何消息,包括任何聊天室成员或 Chat 应用发送的消息。
APP_MESSAGE_EXPIRY Chat 应用在消息过期后自行删除了该消息。
CREATOR_VIA_APP Chat 应用代表创建者(使用用户身份验证)删除了消息。
SPACE_OWNER_VIA_APP Chat 应用代表聊天室管理员(使用用户身份验证)删除了消息。
SPACE_MEMBER 聊天室成员删除了该消息。用户可以删除应用发送的消息。

Dialog

对话框卡片正文的封装容器。

字段
body

Card

仅限输入。对话框的正文,在模态窗口中呈现。Google Chat 应用不支持以下卡片实体:DateTimePicker、OnChangeAction。

DialogAction

包含对话和请求状态代码。

字段
action_status

ActionStatus

仅限输入。调用或提交对话框的请求的状态。如有必要,向用户显示状态和消息。例如,在发生错误或成功时。

联合字段 action。要执行的操作。action 只能是下列其中一项:
dialog

Dialog

仅限输入。请求的对话。

DoNotDisturbMetadata

与 DO_NOT_DISTURB 供应状态关联的元数据,用于指定状态何时到期。

字段
expiration_time

Timestamp

仅限输出。用户应被标记为 DO_NOT_DISTURB 的时间戳。此日期最长可以设为未来 1 年内。

DriveDataRef

对云端硬盘附件数据的引用。

字段
drive_file_id

string

云端硬盘文件的 ID。与 Drive API 搭配使用。

DriveLinkData

Google 云端硬盘链接的数据。

字段
drive_data_ref

DriveDataRef

引用 Google 云端硬盘文件的 DriveDataRef。

mime_type

string

关联的 Google 云端硬盘资源的 MIME 类型。

元素

元素是可能与创建消息时提供的消息文本相关联,也可能不相关联的其他组件。

字段
cited_sources[]

CitedSource

要在消息下方显示为页脚链接的来源列表。这些内容不会以内嵌方式引用。对于内嵌引用,请使用 citations。

citations[]

Citation

消息文本中引用的内嵌引用列表(通过 <chat-citation> 标记),这些引用会呈现为交互式悬停卡片。

ElementsImage

一个封装了不同图片表示方式的对象。目前支持的表示形式:- 从 URI 提取的图片。未来可能会支持其他表示形式。

字段
联合字段 image。必需。一种受支持的图片表示形式。image 只能是下列其中一项:
image_uri

string

必需。可公开访问的图片 URI。

表情符号

用作消息回应的表情符号。

字段
联合字段 content。必需。表情符号的内容。content 只能是下列其中一项:
unicode

string

可选。由 Unicode 字符串表示的基本表情符号。

custom_emoji

CustomEmoji

自定义表情符号。

EmojiReactionSummary

使用特定表情符号回应消息的人数。

字段
emoji

Emoji

仅限输出。与回应关联的表情符号。

reaction_count

int32

仅限输出。使用关联表情符号的回应总数。

FindDirectMessageRequest

根据用户资源获取私信聊天室的请求。

字段
name

string

必需。要查找私信的用户的资源名称。

格式:users/{user},其中 {user} 是 People API 中联系人的 id,或 Directory API 中用户的 id。例如,如果 People API 个人资料 ID 为 123456789,您可以使用 users/123456789 作为 name,查找与该用户的私信。以用户身份进行身份验证时,您可以使用电子邮件地址作为 {user} 的别名。例如,users/example@gmail.com,其中 example@gmail.com 是 Google Chat 用户的电子邮件地址。

FindGroupChatsRequest

根据用户资源获取群聊聊天室的请求。

字段
users[]

string

可选。与主叫用户进行群聊的所有人类用户的资源名称。请求中不能包含 Chat 应用。

在单个请求中最多可以指定 49 个用户。

格式:users/{user},其中 {user} 是 People API 中联系人的 id,或 Directory API 中用户的 id。例如,如需查找包含调用用户和另外两个用户(People API 个人资料 ID 分别为 123456789 和 987654321)的所有群聊,您可以使用 users/123456789 和 users/987654321。您还可以将该邮箱用作 {user} 的别名。例如,users/example@gmail.com,其中 example@gmail.com 是 Google Chat 用户的邮箱。

page_size

int32

可选。要返回的空间数量上限。服务返回的数量可能小于此值。

如果未指定,则最多返回 10 个聊天室。

最大值为 30 天。如果您使用的值大于 30,系统会自动将其更改为 30。

负值会返回 INVALID_ARGUMENT 错误。

page_token

string

可选。从之前查找群聊的调用中收到的页面令牌。提供此参数可检索后续页面。

进行分页时,提供的所有其他参数应与提供令牌的调用相一致。传递不同的值可能会导致意外结果。

space_view

SpaceView

请求的聊天室视图类型。如果未设置,则默认为 SPACE_VIEW_RESOURCE_NAME_ONLY。指定 SPACE_VIEW_EXPANDED 的请求必须包含允许读取聊天室数据的作用域,例如 https://www.googleapis.com/auth/chat.spaces 或 https://www.googleapis.com/auth/chat.spaces.readonly。

FindGroupChatsResponse

包含群聊聊天室的响应,其中仅包含发起调用的用户和请求的用户。

字段
spaces[]

Space

所请求(或第一)页中的聊天室列表。

next_page_token

string

可作为 pageToken 发送并用于检索下一页结果的令牌。如果为空,则表示没有后续页面。

ForwardedMetadata

有关消息转发来源聊天室的元数据。

字段
space

string

仅限输出。来源空间的资源名称。格式:spaces/{space}

space_display_name

string

仅限输出。转发时来源聊天室或私信的显示名称。对于 SPACE,这是聊天室名称。对于 DIRECT_MESSAGE,这是另一位参与者的姓名(例如“用户 A”)。对于GROUP_CHAT,这是根据成员的名字生成的名称,最多包含 5 个名字(包括创建者,例如“用户 A、用户 B”)。

GetAttachmentRequest

请求获取附件。

字段
name

string

必需。附件的资源名称,格式为 spaces/{space}/messages/{message}/attachments/{attachment}。

GetAvailabilityRequest

对 GetAvailability 方法的请求消息。

字段
name

string

必需。要检索的可用性信息的资源名称。

格式:users/{user}/availability

{user} 是 People API 或 Admin SDK Directory API 中人员的 ID。例如 users/123456789。

用户的电子邮件地址或 me 也可以用作别名来指代调用方。例如 users/user@example.com 或 users/me。

GetCustomEmojiRequest

请求返回单个自定义表情符号。

字段
name

string

必需。自定义表情符号的资源名称。

格式:customEmojis/{customEmoji}

您可以将表情符号名称用作 {customEmoji} 的别名。例如,customEmojis/:example-emoji:,其中 :example-emoji: 是自定义表情符号的名称。

GetMembershipRequest

请求获取聊天室的成员资格。

字段
name

string

必需。要检索的成员资格的资源名称。

如需使用用户身份验证获取应用自己的成员资格,您可以选择使用 spaces/{space}/members/app。

格式:spaces/{space}/members/{member} 或 spaces/{space}/members/app

您可以将用户的邮箱用作 {member} 的别名。例如,spaces/{space}/members/example@gmail.com,其中 example@gmail.com 是 Google Chat 用户的邮箱。

use_admin_access

bool

可选。如果为 true,则该方法会使用用户的 Google Workspace 管理员权限运行。

调用用户必须是拥有管理聊天和聊天室对话权限的 Google Workspace 管理员。

需要 chat.admin.memberships 或 chat.admin.memberships.readonly OAuth 2.0 范围。

使用管理员访问权限时,不支持获取聊天室中的应用成员资格。

GetMessageRequest

请求获取消息。

字段
name

string

必需。消息的资源名称。

格式:spaces/{space}/messages/{message}

如果您为消息设置了自定义 ID,则可以将 clientAssignedMessageId 字段中的值用于 {message}。如需了解详情,请参阅为消息命名。

markup_syntax

MarkupSyntax

可选。为聊天消息 formatted_text 字段指定所需的输出语法。

GetSpaceEventRequest

用于获取聊天室事件的请求消息。

字段
name

string

必需。空间事件的资源名称。

格式:spaces/{space}/spaceEvents/{spaceEvent}

GetSpaceNotificationSettingRequest

获取聊天室通知设置的请求消息。仅支持获取主叫用户的通知设置。

字段
name

string

必需。格式:users/{user}/spaces/{space}/spaceNotificationSetting

  • users/me/spaces/{space}/spaceNotificationSetting,或
  • users/user@example.com/spaces/{space}/spaceNotificationSetting,或
  • users/123456789/spaces/{space}/spaceNotificationSetting。注意:路径中仅允许使用调用方的用户 ID 或电子邮件。

GetSpaceReadStateRequest

GetSpaceReadState API 的请求消息。

字段
name

string

必需。要检索的聊天室已读状态的资源名称。

仅支持获取调用用户的已读状态。

如需引用调用用户,请设置以下项之一:

  • me 别名。例如 users/me/spaces/{space}/spaceReadState。

  • 其 Workspace 邮箱。例如 users/user@example.com/spaces/{space}/spaceReadState。

  • 其用户 ID。例如 users/123456789/spaces/{space}/spaceReadState。

格式:users/{user}/spaces/{space}/spaceReadState

GetSpaceRequest

返回单个聊天室的请求。

字段
name

string

必需。空间的资源名称,格式为 spaces/{space}。

格式:spaces/{space}

use_admin_access

bool

可选。如果为 true,则该方法会使用用户的 Google Workspace 管理员权限运行。

调用用户必须是拥有管理聊天和聊天室对话权限的 Google Workspace 管理员。

需要 chat.admin.spaces 或 chat.admin.spaces.readonly OAuth 2.0 范围。

GetThreadReadStateRequest

GetThreadReadStateRequest API 的请求消息。

字段
name

string

必需。要检索的会话已读状态的资源名称。

仅支持获取发起调用的用户的已读状态。

如需引用调用用户,请设置以下项之一:

  • me 别名。例如 users/me/spaces/{space}/threads/{thread}/threadReadState。

  • 其 Workspace 邮箱。例如 users/user@example.com/spaces/{space}/threads/{thread}/threadReadState。

  • 其用户 ID。例如 users/123456789/spaces/{space}/threads/{thread}/threadReadState。

格式:users/{user}/spaces/{space}/threads/{thread}/threadReadState

群组

Google Chat 中的 Google 群组。

字段
name

string

Google 群组的资源名称。

表示 Cloud Identity Groups API 中的群组。

格式:groups/{group}

HistoryState

消息和聊天室的聊天记录状态。指定消息和对话串在创建后保留多长时间。

枚举
HISTORY_STATE_UNSPECIFIED 默认值。请勿使用。
HISTORY_OFF 聊天记录功能已关闭。消息和消息串会保留 24 小时。
HISTORY_ON 聊天记录功能已开启。组织的保险柜保留规则指定了消息和会话串的保留时长。

ListCustomEmojisRequest

请求返回自定义表情符号列表。

字段
page_size

int32

可选。返回的自定义表情符号数量上限。服务返回的自定义表情符号数量可能小于此值。如果未指定,则默认值为 25。最大值为 200;大于 200 的值会更改为 200。

page_token

string

可选。(如果从上一个查询恢复。)

从之前的列出自定义表情符号调用中收到的页面令牌。利用其进行后续页面检索。

进行分页时,过滤条件值应与提供页面令牌的调用相一致。传递其他值可能会导致意外结果。

filter

string

可选。查询过滤条件。

支持按创建者过滤。

如需按创作者过滤,您必须指定有效值。目前,系统仅接受 creator("users/me") 和 NOT creator("users/me"),用于根据自定义表情符号是否由调用用户创建来过滤自定义表情符号。

例如,以下查询会返回由调用方创建的自定义表情符号:

creator("users/me")

无效查询会被拒绝,并显示 INVALID_ARGUMENT 错误。

ListCustomEmojisResponse

列出自定义表情符号的响应。

字段
custom_emojis[]

CustomEmoji

无序列表。自定义表情符号列表。

next_page_token

string

可作为 pageToken 发送并用于检索下一页结果的令牌。如果为空,则表示没有后续页面。

ListMembershipsRequest

用于列出成员资格的请求消息。

字段
parent

string

必需。要获取其成员资格列表的聊天室的资源名称。

格式:spaces/{space}

page_size

int32

可选。要返回的成员资格数量上限。服务返回的数量可能小于此值。

如果未指定,则系统最多返回 100 个成员资格。

最大值为 1000。如果您使用的值大于 1000,系统会自动将其更改为 1000。

负值会返回 INVALID_ARGUMENT 错误。

page_token

string

可选。从之前对列出成员资格的调用中收到的页面令牌。提供此参数可检索后续页面。

进行分页时,提供的所有其他参数应与提供页面令牌的调用相一致。向其他参数传递不同的值可能会导致意外结果。

filter

string

可选。查询过滤条件。

您可以按成员的角色 (role) 和类型 (member.type) 过滤成员资格。

如需按角色过滤,请将 role 设置为 ROLE_MEMBER 或 ROLE_MANAGER。

如需按类型过滤,请将 member.type 设置为 HUMAN 或 BOT。您还可以使用 != 运算符过滤 member.type。

如需同时按角色和类型进行过滤,请使用 AND 运算符。如需按角色或类型进行过滤,请使用 OR 运算符。

如果 use_admin_access 设置为 true,则必须提供 member.type = "HUMAN" 或 member.type != "BOT"。其他会员类型过滤条件将被拒绝。

例如,以下查询有效:

role = "ROLE_MANAGER" OR role = "ROLE_MEMBER"
member.type = "HUMAN" AND role = "ROLE_MANAGER"

member.type != "BOT"

以下查询无效:

member.type = "HUMAN" AND member.type = "BOT"
role = "ROLE_MANAGER" AND role = "ROLE_MEMBER"

无效查询会被服务器拒绝,并返回 INVALID_ARGUMENT 错误。

show_groups

bool

可选。如果为 true,则除了其他类型的成员资格外,还会返回与 Google Group 关联的成员资格。如果设置了 filter,则系统不会返回不符合过滤条件的 Google Group 成员资格。

show_invited

bool

可选。如果为 true,则除了其他类型的成员资格之外,还会返回与 invited 成员关联的成员资格。如果设置了过滤条件,则系统不会返回与过滤条件不匹配的 invited 成员资格。

目前需要用户身份验证。

use_admin_access

bool

可选。如果为 true,则该方法会使用用户的 Google Workspace 管理员权限运行。

调用用户必须是拥有管理聊天和聊天室对话权限的 Google Workspace 管理员。

需要 chat.admin.memberships.readonly 或 chat.admin.memberships OAuth 2.0 范围。

使用管理员访问权限时,不支持列出聊天室中的应用成员资格。

ListMembershipsResponse

列出聊天室成员资格的响应。

字段
memberships[]

Membership

无序列表。所请求(或第一)页中的成员资格列表。

next_page_token

string

可作为 pageToken 发送并用于检索下一页结果的令牌。如果为空,则表示没有后续页面。

ListMessagePinsRequest

用于列出消息固定项的请求消息。

字段
parent

string

必需。拥有固定项集合的父级空间。格式:spaces/{space}

page_size

int32

可选。返回的消息固定数量上限。服务返回的消息数量可能小于此值。最大值为 100。如果您使用的值大于 100,系统会自动将其更改为 100。如果未指定,则最多返回 100 个消息固定。负值会返回 INVALID_ARGUMENT 错误。

page_token

string

可选。从之前的列出消息固定调用接收的页面令牌。提供此参数可检索后续页面。

进行分页时,提供的所有其他参数应与提供页面令牌的调用相一致。向其他参数传递不同的值可能会导致意外结果。

ListMessagePinsResponse

列出消息置顶的响应消息。

字段
message_pins[]

MessagePin

指定聊天室中的置顶消息。

next_page_token

string

您可以将令牌作为 pageToken 发送,以检索下一页结果。如果为空,则表示没有后续页面。

ListMessagesRequest

列出用户所属的指定聊天室中的消息。

字段
parent

string

必需。要列出其中消息的聊天室的资源名称。

格式:spaces/{space}

page_size

int32

可选。返回的消息数量上限。服务返回的消息数量可能少于此值。

如果未指定,则最多返回 25 个。

最大值为 1000。如果您使用的值大于 1000,系统会自动将其更改为 1000。

负值会返回 INVALID_ARGUMENT 错误。

page_token

string

可选。从之前的列出消息调用接收的页面令牌。提供此参数可检索后续页面。

进行分页时,提供的所有其他参数应与提供页面令牌的调用相一致。向其他参数传递不同的值可能会导致意外结果。

filter

string

可选。查询过滤条件。

您可以按日期 (create_time) 和会话 (thread.name) 过滤消息。

如需按消息创建日期过滤消息,请指定 create_time,并使用 RFC-3339 格式的时间戳和英文双引号。例如 "2023-04-21T11:30:00-04:00"。您可以使用大于运算符 > 列出在某个时间戳之后创建的消息,也可以使用小于运算符 < 列出在某个时间戳之前创建的消息。如需过滤某个时间间隔内的消息,请在两个时间戳之间使用 AND 运算符。

如需按会话过滤,请指定 thread.name,格式为 spaces/{space}/threads/{thread}。每个查询只能指定一个 thread.name。

如需同时按会话和日期进行过滤,请在查询中使用 AND 运算符。

例如,以下查询有效:

create_time > "2012-04-21T11:30:00-04:00"

create_time > "2012-04-21T11:30:00-04:00" AND
  thread.name = spaces/AAAAAAAAAAA/threads/123

create_time > "2012-04-21T11:30:00+00:00" AND

create_time < "2013-01-01T00:00:00+00:00" AND
  thread.name = spaces/AAAAAAAAAAA/threads/123

thread.name = spaces/AAAAAAAAAAA/threads/123

无效查询会被服务器拒绝,并返回 INVALID_ARGUMENT 错误。

order_by

string

可选。消息列表的排序方式。指定一个值,以便按排序操作进行排序。有效的排序操作值如下:

  • ASC 表示升序。

  • DESC 表示降序。

默认排序为 create_time ASC。

show_deleted

bool

可选。是否包含已删除的消息。已删除的消息包含删除时间和删除相关的元数据,但消息内容不可用。

markup_syntax

MarkupSyntax

可选。为聊天消息 formatted_text 字段指定所需的输出语法。

ListMessagesResponse

列出消息的响应消息。

字段
messages[]

Message

消息列表。

next_page_token

string

您可以将令牌作为 pageToken 发送,以检索下一页结果。如果为空,则表示没有后续页面。

ListReactionsRequest

列出对消息的回应。

字段
parent

string

必需。用户回应的消息。

格式:spaces/{space}/messages/{message}

page_size

int32

可选。返回的回应数量上限。服务返回的回应数量可能小于此值。如果未指定,则默认值为 25。最大值为 200;大于 200 的值会更改为 200。

page_token

string

可选。(如果从上一个查询恢复。)

从之前的列出回应调用接收的页面令牌。利用其进行后续页面检索。

进行分页时,过滤条件值应与提供页面令牌的调用相一致。传递其他值可能会导致意外结果。

filter

string

可选。查询过滤条件。

您可以按表情符号(emoji.unicode 或 emoji.custom_emoji.uid)和用户 (user.name) 过滤回应。

如需过滤多个表情符号或用户的回应,请使用 OR 运算符联接类似字段,例如 emoji.unicode = "🙂" OR emoji.unicode = "👍" 和 user.name = "users/AAAAAA" OR user.name = "users/BBBBBB"。

如需按表情符号和用户过滤回应,请使用 AND 运算符,例如 emoji.unicode = "🙂" AND user.name = "users/AAAAAA"。

如果您的查询同时使用 AND 和 OR,请使用英文括号将它们分组。

例如,以下查询有效:

user.name = "users/{user}"
emoji.unicode = "🙂"
emoji.custom_emoji.uid = "{uid}"
emoji.unicode = "🙂" OR emoji.unicode = "👍"
emoji.unicode = "🙂" OR emoji.custom_emoji.uid = "{uid}"
emoji.unicode = "🙂" AND user.name = "users/{user}"
(emoji.unicode = "🙂" OR emoji.custom_emoji.uid = "{uid}")
AND user.name = "users/{user}"

以下查询无效:

emoji.unicode = "🙂" AND emoji.unicode = "👍"
emoji.unicode = "🙂" AND emoji.custom_emoji.uid = "{uid}"
emoji.unicode = "🙂" OR user.name = "users/{user}"
emoji.unicode = "🙂" OR emoji.custom_emoji.uid = "{uid}" OR
user.name = "users/{user}"
emoji.unicode = "🙂" OR emoji.custom_emoji.uid = "{uid}"
AND user.name = "users/{user}"

无效查询会被拒绝,并显示 INVALID_ARGUMENT 错误。

ListReactionsResponse

对列出回应请求的响应。

字段
reactions[]

Reaction

所请求(或第一)页中的回应列表。

next_page_token

string

用于检索下一页结果的延续令牌。对于最后一页结果,此字段为空。

ListSectionItemsRequest

用于列出部分内容的请求消息。

字段
parent

string

必需。父级,即拥有此部分项集合的部分资源名称。仅支持列出调用用户的版块内容。

按空间过滤时,请使用通配符 - 在所有版块中搜索。例如 users/{user}/sections/-。

格式:users/{user}/sections/{section}

page_size

int32

可选。要返回的部分内容数量上限。服务返回的值可能小于此值。

如果未指定,则最多返回 10 个部分内容。

最大值为 100。如果您使用的值大于 100,系统会自动将其更改为 100。

负值会返回 INVALID_ARGUMENT 错误。

page_token

string

可选。从之前的列出部分内容调用中收到的页面令牌。利用其进行后续页面检索。

进行分页时,提供的所有其他参数应与提供页面令牌的调用相一致。向其他参数传递不同的值可能会导致意外结果。

filter

string

可选。查询过滤条件。

目前仅支持按空间过滤。

例如 space = spaces/{space}。

无效查询会被拒绝,并显示 INVALID_ARGUMENT 错误。

ListSectionItemsResponse

列出部分内容的响应消息。

字段
section_items[]

SectionItem

指定版块中的版块内容。

next_page_token

string

可作为 page_token 发送并用于检索下一页的令牌。如果省略此字段,则不存在后续页面。

ListSectionsRequest

用于列出分区的请求消息。

字段
parent

string

必需。父级,即拥有此部分集合的用户资源名称。仅支持列出调用用户的版块。如需引用调用用户,请设置以下任一项:

  • me 别名。例如 users/me。

  • 其 Workspace 邮箱。例如 users/user@example.com。

  • 其用户 ID。例如 users/123456789。

格式:users/{user}

page_size

int32

可选。要返回的部分数量上限。服务返回的值可能小于此值。

如果未指定,则最多返回 10 个部分。

最大值为 100。如果您使用的值大于 100,系统会自动将其更改为 100。

负值会返回 INVALID_ARGUMENT 错误。

page_token

string

可选。从之前的列出部分调用中收到的页面令牌。利用其进行后续页面检索。

进行分页时,提供的所有其他参数应与提供页面令牌的调用相一致。向其他参数传递不同的值可能会导致意外结果。

ListSectionsResponse

列出部分时的响应消息。

字段
sections[]

Section

指定用户的版块。

next_page_token

string

可作为 page_token 发送并用于检索下一页的令牌。如果省略此字段,则不存在后续页面。

ListSpaceEventsRequest

用于列出空间事件的请求消息。

字段
parent

string

必需。事件发生的 Google Chat 聊天室的资源名称。

格式:spaces/{space}。

page_size

int32

可选。返回的空间事件数量上限。服务返回的数量可能小于此值。

负值会返回 INVALID_ARGUMENT 错误。

page_token

string

可选。从之前的列出空间事件调用中收到的页面令牌。利用其进行后续页面检索。

进行分页时,提供给 list space events 的所有其他参数必须与提供页面令牌的调用相一致。向其他参数传递不同的值可能会导致意外结果。

filter

string

必需。查询过滤条件。

您必须使用 has : 运算符指定至少一种事件类型 (event_type)。如需按多种事件类型进行过滤,请使用 OR 运算符。在过滤条件中省略批量事件类型。该请求会自动返回所有相关的批处理事件。例如,如果您按新回应 (google.workspace.chat.reaction.v1.created) 进行过滤,服务器还会返回批量新回应事件 (google.workspace.chat.reaction.v1.batchCreated)。如需查看受支持的事件类型列表,请参阅 SpaceEvents 参考文档。

(可选)您还可以按开始时间 (start_time) 和结束时间 (end_time) 进行过滤:

  • start_time:开始列出聊天室事件的排他性时间戳。您可以列出过去 28 天内发生的事件。如果未指定,则列出过去 28 天内的聊天室事件。
  • end_time:列出空间事件的截止时间戳(含)。如果未指定,则列出截至请求时间的所有事件。

如需指定开始时间或结束时间,请使用等号 = 运算符,并采用 RFC-3339 格式。如需同时按 start_time 和 end_time 进行过滤,请使用 AND 运算符。

例如,以下查询有效:

start_time="2023-08-23T19:20:33+00:00" AND
end_time="2023-08-23T19:21:54+00:00"
start_time="2023-08-23T19:20:33+00:00" AND
(event_types:"google.workspace.chat.space.v1.updated" OR
event_types:"google.workspace.chat.message.v1.created")

以下查询无效:

start_time="2023-08-23T19:20:33+00:00" OR
end_time="2023-08-23T19:21:54+00:00"
event_types:"google.workspace.chat.space.v1.updated" AND
event_types:"google.workspace.chat.message.v1.created"

无效查询会被服务器拒绝,并返回 INVALID_ARGUMENT 错误。

ListSpaceEventsResponse

列出空间事件的响应消息。

字段
space_events[]

SpaceEvent

结果按时间先后顺序(最早的事件排在最前面)返回。注意:对于列表请求,Space 对象中不会返回 permissionSettings 字段。

next_page_token

string

用于提取更多事件的延续令牌。如果省略此字段,则不存在后续页面。

ListSpacesRequest

列出调用方所属聊天室的请求。

字段
page_size

int32

可选。要返回的空间数量上限。服务返回的数量可能小于此值。

如果未指定,则系统最多返回 100 个聊天室。

最大值为 1000。如果您使用的值大于 1000,系统会自动将其更改为 1000。

负值会返回 INVALID_ARGUMENT 错误。

page_token

string

可选。从之前的列出聊天室调用中收到的页面令牌。提供此参数可检索后续页面。

进行分页时,过滤条件值应与提供页面令牌的调用相一致。传递其他值可能会导致意外结果。

filter

string

可选。查询过滤条件。

您可以按聊天室类型 (space_type) 过滤聊天室。

如需按聊天室类型进行过滤,您必须指定有效的枚举值,例如 SPACE 或 GROUP_CHAT(space_type 不能为 SPACE_TYPE_UNSPECIFIED)。如需查询多种聊天室类型,请使用 OR 运算符。

例如,以下查询有效:

space_type = "SPACE"
spaceType = "GROUP_CHAT" OR spaceType = "DIRECT_MESSAGE"

无效查询会被服务器拒绝,并返回 INVALID_ARGUMENT 错误。

ListSpacesResponse

对列出聊天室请求的响应。

字段
spaces[]

Space

所请求(或第一)页中的聊天室列表。注意:对于列表请求,Space 对象中不会返回 permissionSettings 字段。

next_page_token

string

您可以将令牌作为 pageToken 发送,以检索下一页结果。如果为空,则表示没有后续页面。

MarkAsActiveRequest

对 MarkAsActive 方法的请求消息。

字段
name

string

必需。要标记为有效的空闲时段的资源名称。格式:users/{user}/availability

{user} 是 People API 或 Admin SDK Directory API 中人员的 ID。例如 users/123456789。

用户的电子邮件地址或 me 也可以用作别名来指代调用方。例如 users/user@example.com 或 users/me。

联合字段 expiration。“ACTIVE”可用性状态的到期时间。到期后,用户将被标记为“外出”。如果未提供过期时间,则 ACTIVE 状态将在当前时间 30 分钟后过期。expiration 只能是下列其中一项:
expire_time

Timestamp

ACTIVE 状态到期的绝对时间戳。

ttl

Duration

从当前时间到 ACTIVE 状态到期的时间。使用较短的 TTL 可以有效地将用户状态重置为基于此短暂时间段后的活动。

MarkAsAwayRequest

对 MarkAsAway 方法的请求消息。

字段
name

string

必需。要标记为离开的空闲状态的资源名称。格式:users/{user}/availability

{user} 是 People API 或 Admin SDK Directory API 中人员的 ID。例如 users/123456789。

用户的电子邮件地址或 me 也可以用作别名来指代调用方。例如 users/user@example.com 或 users/me。

MarkAsDoNotDisturbRequest

对 MarkAsDoNotDisturb 方法的请求消息。

字段
name

string

必需。要标记为“勿扰”的空闲状态的资源名称。格式:users/{user}/availability

{user} 是 People API 或 Admin SDK Directory API 中人员的 ID。例如 users/123456789。

用户的电子邮件地址或 me 也可以用作别名来指代调用方。例如 users/user@example.com 或 users/me。

联合字段 expiration。必需。“勿扰”状态的到期时间。到期后,用户将被标记为“外出”。此日期最久为当前时间起 1 年内。expiration 只能是下列其中一项:
expire_time

Timestamp

“勿扰”状态到期的绝对时间戳。

ttl

Duration

从当前时间到“勿扰”状态到期的时间。

MarkupSyntax

指定用于设置聊天消息文本格式的标记语法。适用于 Message 资源的 text 字段。

枚举
MARKUP_SYNTAX_UNSPECIFIED 表示未指定的值。
MARKUP_SYNTAX_CHAT 使用 Google Chat 的标记语法。如需了解详情,请参阅 https://developers.google.com/workspace/chat/format-messages#format-texts。
MARKUP_SYNTAX_MARKDOWN 使用 Markdown 语法。此语法基于 CommonMark 规范,并包含其他扩展。如需了解详情,请参阅 https://developers.google.com/workspace/chat/format-messages#format-texts。

MatchedUrl

聊天消息中匹配的网址。Chat 应用可以预览匹配的网址。如需了解详情,请参阅预览链接。

字段
url

string

仅限输出。匹配的网址。

MeetSpaceLinkData

Meet 空间链接的数据。

字段
meeting_code

string

关联的 Meet 空间的会议代码。

type

Type

指明 Meet 空间的类型。

huddle_status

HuddleStatus

可选。仅限输出。如果 Meet 是 Huddle,则表示 Huddle 的状态。否则,此字段处于未设置状态。

HuddleStatus

huddle 的状态

枚举
HUDDLE_STATUS_UNSPECIFIED 枚举的默认值。请勿使用。
STARTED 即时会议已开始。
ENDED 即时会议已结束。在这种情况下,Meet 空间 URI 和标识符将不再有效。
MISSED 您错过了即时会议。在这种情况下,Meet 空间 URI 和标识符将不再有效。

类型

Meet 空间的类型。

枚举
TYPE_UNSPECIFIED 枚举的默认值。请勿使用。
MEETING Meet 空间是一场会议。
HUDDLE Meet 空间是即时会议。

会员资格

表示 Google Chat 中的成员资格关系,例如用户或 Chat 应用是否受邀加入聊天室、是否属于聊天室成员或是否不在聊天室中。

字段
name

string

标识符。由服务器分配的成员资格资源名称。

格式:spaces/{space}/members/{member}

state

MembershipState

仅限输出。成员资格的状态。

role

MembershipRole

可选。用户在 Chat 聊天室中的角色,决定了其在聊天室中可以执行的操作。

此字段只能在 UpdateMembership 中用作输入。

create_time

Timestamp

可选。不可变。成员资格的创建时间,例如成员加入或受邀加入聊天室的时间。此字段仅限输出,除非用于在导入模式聊天室中导入历史成员资格。

delete_time

Timestamp

可选。不可变。成员资格的删除时间,例如成员退出或被移出聊天室的时间。此字段仅限输出,除非用于在导入模式聊天室中导入历史成员资格。

affiliation

Affiliation

仅限输出。用户与拥有该空间的 Workspace 组织的关系。在消费者账号拥有的聊天室中,所有成员的所属组织均为 EXTERNAL。

联合字段 memberType。与此会员资格关联的会员。未来可能会支持其他成员类型。memberType 只能是下列其中一项:
member

User

可选。成员资格对应的 Google Chat 用户或应用。如果您的 Chat 应用以用户身份进行身份验证,则输出只会为内部和外部用户填充 user name 和 type 字段,除非他们是聊天室成员或与调用用户有先前的亲和关系(例如私信 [DM] 对话)。

group_member

Group

可选。成员资格对应的 Google 群组。

读取或更改 Google 群组的成员资格需要用户身份验证。

关联商户

表示用户与拥有聊天室的 Google Workspace 组织之间的关系。此枚举将来可能会添加更多值。

枚举
AFFILIATION_UNSPECIFIED 默认值。此值未使用。
INTERNAL 由拥有该聊天室的同一 Google Workspace 组织管理的账号。
EXTERNAL 拥有该聊天室的 Google Workspace 组织外部的账号(例如个人账号或由其他 Workspace 组织管理的账号)。
MANAGED_EXTERNAL 由拥有聊天室的 Workspace 组织管理,但为组织外部用户(例如访客用户)预配的账号。如需详细了解访客,请参阅 https://support.google.com/chat/answer/16997417。

MembershipRole

表示用户在 Chat 聊天室中获准执行的操作。未来可能会添加更多枚举值。

枚举
MEMBERSHIP_ROLE_UNSPECIFIED 默认值。对于users:他们不是聊天室成员,但可以受邀加入。对于 Google Groups:他们始终会被分配此角色(未来可能会使用其他枚举值)。
ROLE_MEMBER

聊天室成员。在 Chat 界面中,此角色称为“成员”。

用户拥有基本权限,例如向聊天室发送消息。管理员和所有者可以向聊天室成员授予其他权限,包括:

  • 添加或移除成员。
  • 修改聊天室详细信息。
  • 开启或关闭聊天记录。
  • 使用 @all 提及聊天室中的所有人。
  • 管理聊天室中安装的 Chat 应用和网络钩子。

在私信和未命名的群组对话中,每个人都拥有此角色。

ROLE_MANAGER

聊天室所有者。在 Chat 界面中,此角色称为“所有者”。

用户拥有管理空间所需的完整空间权限,包括:

  • 将聊天室中其他成员的角色更改为成员、管理员或所有者。
  • 删除聊天室。

仅在 SpaceType.SPACE(已命名的聊天室)中受支持。

如需了解详情,请参阅详细了解您作为聊天室所有者或管理员的角色。

ROLE_ASSISTANT_MANAGER

您是聊天室管理员。在 Chat 界面中,此角色称为“管理员”。

用户拥有 ROLE_MEMBER 的所有基本权限,并且所有者可以向其授予一部分管理权限。默认情况下,管理员拥有所有者的所有权限,但无法执行以下操作:

  • 删除聊天室。
  • 将其他聊天室成员设为所有者。
  • 更改所有者的角色。

默认情况下,管理员权限包括但不限于:

  • 将其他成员设为管理员。
  • 删除聊天室中的消息。
  • 管理空间权限。
  • 如果管理员在聊天室设置中拥有“管理成员”权限,则会收到加入聊天室的请求通知。
  • 将聊天室设为可供搜索。

仅在 SpaceType.SPACE(已命名的聊天室)中受支持。

如需了解详情,请参阅管理聊天室设置。

MembershipState

指定成员与聊天室的关系。未来可能会支持其他成员资格状态。

枚举
MEMBERSHIP_STATE_UNSPECIFIED 默认值。请勿使用。
JOINED 用户会添加到聊天室,并可以参与聊天室中的活动。
INVITED 用户已受邀加入聊天室,但尚未加入。
NOT_A_MEMBER 用户不属于该聊天室,也没有加入该聊天室的待处理邀请。

MembershipBatchCreatedEventData

多个新会员资格的事件载荷。

事件类型:google.workspace.chat.membership.v1.batchCreated

字段
memberships[]

MembershipCreatedEventData

新成员资格列表。

MembershipBatchDeletedEventData

多个已删除成员资格的事件载荷。

事件类型:google.workspace.chat.membership.v1.batchDeleted

字段
memberships[]

MembershipDeletedEventData

已删除的成员资格列表。

MembershipBatchUpdatedEventData

多个更新后的会员资格的事件载荷。

事件类型:google.workspace.chat.membership.v1.batchUpdated

字段
memberships[]

MembershipUpdatedEventData

已更新的成员资格列表。

MembershipCreatedEventData

新成员资格的事件载荷。

事件类型:google.workspace.chat.membership.v1.created。

字段
membership

Membership

新会员资格。

MembershipDeletedEventData

已删除成员资格的事件载荷。

事件类型:google.workspace.chat.membership.v1.deleted

字段
membership

Membership

已删除的成员资格。系统只会填充 name 和 state 字段。

MembershipUpdatedEventData

更新后的会员资格的事件载荷。

事件类型:google.workspace.chat.membership.v1.updated

字段
membership

Membership

更新后的成员资格。

消息

Google Chat 聊天室中的消息。

字段
name

string

标识符。消息的资源名称。

格式:spaces/{space}/messages/{message}

其中,{space} 是发布消息的聊天室的 ID,{message} 是系统为消息分配的 ID。例如 spaces/AAAAAAAAAAA/messages/BBBBBBBBBBB.BBBBBBBBBBB。

如果您在创建消息时设置了自定义 ID,则可以在请求中使用此 ID 来指定消息,方法是将 {message} 替换为 clientAssignedMessageId 字段中的值。例如 spaces/AAAAAAAAAAA/messages/client-custom-name。如需了解详情,请参阅为消息命名。

sender

User

仅限输出。创建消息的用户。如果您的 Chat 应用以用户身份进行身份验证,则输出只会为内部和外部用户填充 user name 和 type 字段,除非他们是聊天室成员或与调用用户有先前的亲和关系(例如私信 [DM] 对话)。

create_time

Timestamp

可选。不可变。对于在 Chat 中创建的聊天室,这是消息的创建时间。此字段仅限输出,但在导入模式聊天室中使用时除外。

对于导入模式聊天室,请将此字段设置为在来源中创建消息的历史时间戳,以保留原始创建时间。

last_update_time

Timestamp

仅限输出。用户上次修改消息的时间。如果消息从未被修改过,则此字段为空。

delete_time

Timestamp

仅限输出。在 Google Chat 中删除消息的时间。如果消息从未被删除,则此字段为空。

text

string

可选。邮件的纯文本正文。指向图片、视频或网页的第一个链接会生成预览条状标签。您还可以使用“@”提及 Google Chat 用户或聊天室中的所有人。

如需了解如何创建短信,请参阅发送消息。

formatted_text

string

仅限输出。包含消息 text,其中添加了标记以传达格式。此字段可能无法捕获界面中显示的所有格式,但包含以下内容:

  • 标记语法,用于粗体、斜体、删除线、等宽字体、等宽字体块、项目符号列表和块引用。

  • 使用 <users/{user}> 格式提及用户。

  • 使用 <{url}|{rendered_text}> 格式的自定义超链接,其中第一个字符串是网址,第二个字符串是呈现的文本,例如 <http://example.com|custom text>。

  • 使用 :{emoji_name}: 格式的自定义表情符号,例如 :smile:。这不适用于 Unicode 表情符号,例如 U+1F600 表示露齿笑脸表情符号。

  • 使用星号 (*) 的项目符号列表项,例如 * item。

如需了解详情,请参阅查看消息中发送的文本格式

cards[]
(deprecated)

Card

已弃用:请改用 cards_v2。

内容丰富、格式规范且可互动的卡片,可用于显示界面元素,例如:格式化文本、按钮和可点击的图片。卡片通常显示在邮件的纯文本正文下方。cards 和 cards_v2 的大小上限为 32 KB。

cards_v2[]

CardWithId

可选。卡片数组。

Chat 应用可以使用应用身份验证创建卡片。作为开发者预览版计划的一部分,如果您的 Chat 应用以用户身份进行身份验证,则可以创建卡片消息。如果您的 Chat 应用未加入开发者预览版计划,则无法创建需要用户身份验证的卡片。

如需了解如何创建包含卡片的消息,请参阅发送消息。

使用卡片构建器设计和预览卡片。

打开卡片构建器

annotations[]

Annotation

仅限输出。注释可以与消息的纯文本正文相关联,也可以与链接到 Google Workspace 资源(例如 Google 文档或表格)的条状标签相关联,其 start_index 和 length 为 0。

thread

Thread

邮件所属的会话。如需查看用法示例,请参阅发起或回复消息串。

space

Space

仅限输出。如果您的 Chat 应用以用户身份进行身份验证,则输出仅填充聊天室 name。

fallback_text

string

可选。消息卡片的纯文本说明,在无法显示实际卡片时(例如移动设备通知)使用。

action_response

ActionResponse

仅限输入。Chat 应用可用于配置其回答发布方式的参数。

argument_text

string

仅限输出。消息的纯文本正文,其中去除了所有提及 Chat 应用的内容。

slash_command

SlashCommand

仅限输出。斜杠命令信息(如果适用)。

attachment[]

Attachment

可选。用户上传的附件。

matched_url

MatchedUrl

仅限输出。聊天消息 text 字段中与链接预览格式匹配的网址。如需了解详情,请参阅预览链接。

thread_reply

bool

仅限输出。如果值为 true,则表示该消息是回复消息串中的回复。如果为 false,则消息会作为消息串的第一条消息或没有消息串式回复的消息显示在聊天室的顶级对话中。

如果聊天室不支持在消息串中回复,则此字段始终为 false。

silent

bool

仅限输出。此消息是否为静音消息。静默消息是指 Chat 会为收件人屏蔽推送通知的消息。

client_assigned_message_id

string

可选。消息的自定义 ID。您可以使用此字段来标识消息,或获取、删除或更新消息。如需设置自定义 ID,请在创建消息时指定 messageId 字段。如需了解详情,请参阅为消息命名。

emoji_reaction_summaries[]

EmojiReactionSummary

仅限输出。消息的表情符号回应摘要列表。

private_message_viewer

User

可选。不可变。用于创建消息的输入,否则仅输出。可以查看消息的用户。设置后,消息将变为私密消息,仅对指定用户和 Chat 应用可见。如需在请求中添加此字段,您必须使用应用身份验证调用 Chat API,并省略以下内容:

如需了解详情,请参阅私下发送消息。

deletion_metadata

DeletionMetadata

仅限输出。有关已删除邮件的信息。设置 delete_time 后,系统会删除消息。

quoted_message_metadata

QuotedMessageMetadata

可选。另一条消息引用的消息的相关信息。

创建消息时,您可以引用同一消息串中的消息,也可以引用根消息来创建新的根消息。不过,您无法引用其他消息串中的消息回复。

更新消息时,您无法添加或替换 quotedMessageMetadata 字段,但可以将其移除。

如需查看用法示例,请参阅引用其他消息。

attached_gifs[]

AttachedGif

仅限输出。邮件中附加的 GIF 图片。

accessory_widgets[]

AccessoryWidget

可选。显示在消息底部的一个或多个互动式 widget。您可以向包含文本、卡片或同时包含文本和卡片的消息添加辅助微件。不支持包含对话框的消息。如需了解详情,请参阅在邮件底部添加互动式微件。

创建包含辅助微件的消息需要应用身份验证。

elements

Elements

可选。元素是在创建消息期间提供的其他组件,可能与消息文本的特定部分相关联,也可能不相关。这与注释不同,注释仅用于输出,提供与消息片段或整个消息文本相关的补充信息。

markup_syntax

MarkupSyntax

可选。指定服务器如何解读消息 text 字段内容。

MessageBatchCreatedEventData

多条新消息的事件载荷。

事件类型:google.workspace.chat.message.v1.batchCreated

字段
messages[]

MessageCreatedEventData

新消息列表。

MessageBatchDeletedEventData

多条已删除消息的事件载荷。

事件类型:google.workspace.chat.message.v1.batchDeleted

字段
messages[]

MessageDeletedEventData

已删除消息的列表。

MessageBatchUpdatedEventData

多条更新消息的事件载荷。

事件类型:google.workspace.chat.message.v1.batchUpdated

字段
messages[]

MessageUpdatedEventData

已更新的消息列表。

MessageCreatedEventData

新消息的事件载荷。

事件类型:google.workspace.chat.message.v1.created

字段
message

Message

新消息。

MessageDeletedEventData

已删除消息的事件载荷。

事件类型:google.workspace.chat.message.v1.deleted

字段
message

Message

已删除的消息。系统只会填充 name、createTime 和 deletionMetadata 字段。

MessagePin

聊天消息上的图钉。如需了解详情,请参阅固定消息。

字段
name

string

标识符。消息置顶的资源名称。格式:spaces/{space}/messagePins/{message_pin}。资源 ID 组件与消息的资源 ID 组件匹配。例如,spaces/AAA/messages/bbb.ccc 对应的消息固定资源名称为 spaces/AAA/messagePins/bbb.ccc。

message

string

必需。不可变。已置顶消息的资源名称。格式:spaces/{space}/messages/{message}

MessageUpdatedEventData

更新后的消息的事件载荷。

事件类型:google.workspace.chat.message.v1.updated

字段
message

Message

更新后的消息。

MoveSectionItemRequest

用于在不同版块之间移动版块内容的请求消息。

字段
name

string

必需。要移动的版块内容的资源名称。

格式:users/{user}/sections/{section}/items/{item}

target_section

string

必需。要将版块内容移至的版块的资源名称。

格式:users/{user}/sections/{section}

MoveSectionItemResponse

移动版块内容的响应消息。

字段
section_item

SectionItem

更新后的版块内容。

PositionSectionRequest

用于定位版块的请求消息。

字段
name

string

必需。要定位的版块的资源名称。

格式:users/{user}/sections/{section}

联合字段 position。必需。相应部分的新位置。position 只能是下列其中一项:
sort_order

int32

可选。版块在版块列表中的绝对位置。位置必须大于 0。如果位置大于版块数量,则版块将附加到列表末尾。此操作会在指定位置插入该部分,并将该位置的原始部分以及其下方的部分移至下一个位置。

relative_position

Position

可选。版块在版块列表中的相对位置。

位置

相应部分的位置。

枚举
POSITION_UNSPECIFIED 未指定位置。
START 版块列表的开头。
END 版块列表结束。

PositionSectionResponse

针对定位版块的响应消息。

字段
section

Section

更新后的部分。

QuotedMessageMetadata

另一条消息引用的消息的相关信息。

更新消息时,您无法添加或替换 quotedMessageMetadata 字段,但可以将其移除。

如需查看用法示例,请参阅引用其他消息。

字段
name

string

必需。所引用消息的资源名称。

格式:spaces/{space}/messages/{message}

last_update_time

Timestamp

必需。创建或上次更新被引用消息时的时间戳。

如果消息经过修改,请使用此字段 last_update_time。如果消息从未被修改过,请使用 create_time。

如果 last_update_time 与所引用消息的最新版本不一致,请求会失败。

quote_type

QuoteType

可选。指定报价类型。如果未设置,则默认为消息读/写路径中的 REPLY,以实现向后兼容。

quoted_message_snapshot

QuotedMessageSnapshot

仅限输出。所引用消息内容的快照。

forwarded_metadata

ForwardedMetadata

仅限输出。有关所引用消息的来源聊天室的元数据。仅针对 FORWARD 报价类型填充。

QuoteType

所引用消息的引用类型。

枚举
QUOTE_TYPE_UNSPECIFIED Reserved. 此值未使用。
REPLY

当 quote_type 为 REPLY 时,您可以执行以下操作:

  • 如果您在消息串中回复,则可以引用该消息串中的其他消息。

  • 如果您要创建根消息,则可以引用该聊天室中的其他根消息。

FORWARD

当 quote_type 为 FORWARD 时,您可以引用:

  • 来自其他聊天室的消息。

  • 同一聊天室中不同消息串中的消息回复。

QuotedMessageSnapshot

提供引用或转发时所引用消息内容的快照

字段
sender

string

仅限输出。所引用消息的作者姓名。为“回复”和“转发”引用类型填充。

text

string

仅限输出。所引用消息的文本内容快照。

formatted_text

string

仅限输出。包含引用的消息 text,并添加了标记以支持超链接、自定义表情符号、标记等富文本格式。仅针对 FORWARD 引用类型填充。

annotations[]

Annotation

仅限输出。从引用消息的文本正文中解析出的注释。仅针对 FORWARD 报价类型填充。

attachments[]

Attachment

仅限输出。引用邮件中的附件。这些是所引用消息的附件元数据的副本。仅针对 FORWARD 报价类型填充。

回应

对消息的回应。

字段
name

string

标识符。回应的资源名称。

格式:spaces/{space}/messages/{message}/reactions/{reaction}

user

User

仅限输出。创建回应的用户。

emoji

Emoji

必需。回应中使用的表情符号。

ReactionBatchCreatedEventData

多个新回应的事件载荷。

事件类型:google.workspace.chat.reaction.v1.batchCreated

字段
reactions[]

ReactionCreatedEventData

新回应列表。

ReactionBatchDeletedEventData

多个已删除回应的事件载荷。

事件类型:google.workspace.chat.reaction.v1.batchDeleted

字段
reactions[]

ReactionDeletedEventData

已删除的回应列表。

ReactionCreatedEventData

新回应的事件载荷。

事件类型:google.workspace.chat.reaction.v1.created

字段
reaction

Reaction

新回应。

ReactionDeletedEventData

已删除回应的事件载荷。

类型:google.workspace.chat.reaction.v1.deleted

字段
reaction

Reaction

已删除的回应。

ReplaceMessageCardsRequest

ReplaceMessageCards API 方法的请求消息。

字段
name

string

必需。消息的资源名称。

格式:spaces/{space}/messages/{message}

cards_v2[]

CardWithId

可选。要包含在消息中的卡片数组。这些卡片将替换消息的现有卡片。如果为空,则消息中包含的原始卡片将被清除。

ReplaceMessageCardsResponse

此类型没有字段。

ReplaceMessageCards API 的响应消息。

RichLinkMetadata

指向资源的富链接。富链接可以与消息的纯文本正文相关联,也可以表示链接到 Google Workspace 资源(例如 Google 文档或表格)的条状标签,其 start_index 和 length 为 0。

字段
uri

string

此链接的 URI。

联合字段 data。关联资源的数据。data 只能是下列其中一项:

RichLinkType

富链接类型。未来可能会添加更多类型。

枚举
DRIVE_FILE Google 云端硬盘富链接类型。
CHAT_SPACE Chat 聊天室富链接类型。例如,聊天室智能条状标签。
GMAIL_MESSAGE Gmail 邮件富链接类型。具体来说,就是分享到 Chat 功能中的 Gmail 芯片。该 API 仅支持读取包含 GMAIL_MESSAGE 丰富链接的消息。
MEET_SPACE Meet 消息富链接类型。例如,Meet 芯片。
CALENDAR_EVENT 日历消息富链接类型。例如,日历条状标签。

SearchMessageResult

消息搜索中的单个结果项。

字段
message

Message

匹配的消息。

space_mute_setting

MuteSetting

调用用户针对消息发布所在聊天室的忽略设置。调用方应用可以根据聊天室是否对用户静音,使用这些信息来决定如何处理消息。

仅当请求视图为 SEARCH_MESSAGES_VIEW_FULL 且调用凭据包含以下授权范围时,系统才会返回此字段:

  • https://www.googleapis.com/auth/chat.users.spacesettings
read

bool

指明匹配的消息是否已被发起调用的用户阅读。

仅在请求视图为 SEARCH_MESSAGES_VIEW_FULL 且调用凭据包含以下授权范围之一时返回:

  • https://www.googleapis.com/auth/chat.users.readstate.readonly
  • https://www.googleapis.com/auth/chat.users.readstate

SearchMessagesRequest

用于搜索消息的请求消息。

字段
parent

string

必需。要在其中搜索的聊天室的资源名称。

如需在用户有权访问的所有聊天室中进行搜索,请将此字段设置为 spaces/-。对 parent 使用任何其他值都会导致 INVALID_ARGUMENT 错误。

如需将搜索范围限制在一个或多个聊天室,请在 filter 中使用 space.name 或 space.display_name。

filter

string

必需。搜索查询。

该查询可以指定一个或多个搜索关键字,用于过滤结果,

您还可以使用以下消息字段过滤结果:

  • create_time:接受 RFC-3339 格式的时间戳,支持的比较运算符包括:< 和 >=。
  • sender.name:发送者的资源名称 (users/{user})。仅支持 =。您可以将该电子邮件地址用作 {user} 的别名。例如 users/example@gmail.com,其中 example@gmail.com 是 Google Chat 用户的邮箱。
  • space.name:发布消息的聊天室的资源名称。(spaces/{space})。仅支持 =。如果未设置此过滤条件,系统会在用户作为聊天室成员有权访问的所有私信和聊天室中执行搜索。
  • space.display_name:支持运算符 :(包含),并根据显示名称的部分匹配项过滤聊天室。结果仅限于前五个匹配的聊天室。例如,space.display_name:Project 会在显示名称中包含“Project”一词的前五个聊天室中搜索消息。
  • space.space_type:空间类型。仅支持 =。例如,space.space_type="DIRECT_MESSAGE" 仅返回私信中的消息。可能的值包括 DIRECT_MESSAGE、GROUP_CHAT 和 SPACE。
  • attachment:支持使用运算符 :*(包含任何)来检查是否存在附件。如果指定了 attachment:*,则系统只会返回至少包含一个附件的消息。
  • annotations.user_mentions.user.name:所提及用户的资源名称 (users/{user})。仅支持 :(包含)。例如:annotations.user_mentions.user.name:"users/1234567890" 仅返回提及指定用户的消息。或者,您也可以使用别名 me 过滤提及调用方用户的消息,例如:annotations.user_mentions.user.name:users/me。您还可以将该邮箱用作 {user} 的别名,例如 users/example@gmail.com。

对于高级过滤,还可以使用以下函数:

  • has_link():仅返回邮件文本中至少有一个超链接的邮件。
  • is_unread():滤除调用用户已读的消息。

如需使用 space.display_name 或 space.space_type 过滤条件,调用凭据必须包含以下授权范围之一:

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

如需使用 is_unread() 过滤条件,调用凭证必须包含以下授权范围之一:

  • https://www.googleapis.com/auth/chat.users.readstate.readonly
  • https://www.googleapis.com/auth/chat.users.readstate

在不同字段之间,仅支持 AND 运算符。有效示例为 sender.name = "users/1234567890" AND is_unread()。AND 一词是可选的,如果省略,则表示隐含。例如,sender.name = "users/1234567890" is_unread() 有效,且等同于上一个示例。sender.name = "users/1234567890" OR is_unread() 是一个无效示例,因为不同字段之间不支持 OR。

在同一领域中:

  • create_time 仅支持 AND,并且只能用于表示时间间隔,例如 create_time >= "2022-01-01T00:00:00+00:00" AND create_time < "2023-01-01T00:00:00+00:00"。
  • sender.name 仅支持 OR 运算符,例如:sender.name = "users/1234567890" OR sender.name = "users/0987654321"。
  • space.name 仅支持 OR 运算符,例如:space.name = "spaces/ABCDEFGH" OR space.name = "spaces/QWERTYUI"。
  • space.display_name 支持运算符 AND 和 OR,但不支持两者混用。例如:space.display_name:Project AND space.display_name:Tasks 会返回显示名称中同时包含 Project 和 Tasks 的聊天室中的消息,而 space.display_name:Project OR space.display_name:Tasks 会返回显示名称中包含 Project 或 Tasks 或同时包含两者的聊天室中的消息。
  • space.space_type 仅支持 OR 运算符,例如:space.space_type = "DIRECT_MESSAGE" OR space.space_type = "GROUP_CHAT"。
  • annotations.user_mentions.user.name 支持运算符 AND 和 OR,但不支持两者混用。例如:annotations.user_mentions.user.name:"users/1234567890" AND annotations.user_mentions.user.name:"users/0987654321" 仅返回同时提及两个用户的消息,而 annotations.user_mentions.user.name:"users/1234567890" OR annotations.user_mentions.user.name:"users/0987654321" 则返回提及其中一个用户或同时提及两个用户的消息。

在同一查询中组合使用 AND 和 OR 运算符时,需要使用括号来消除运算符优先级歧义。例如:(sender.name="users/me" OR sender.name="users/123456") AND is_unread()。否则,括号是可选的。

以下示例查询有效:

"Pending reports" AND create_time >= "2023-01-01T00:00:00Z"

sender.name = "users/example@gmail.com"

annotations.user_mentions.user.name:"users/0987654321"

attachment:* AND space.name = "spaces/ABCDEFGH"

tasks AND is_unread() AND sender.name = "users/1234567890"

"things to do" "urgent"

(sender.name = "users/1234567890")
AND (create_time < "2023-05-01T00:00:00Z")

tasks AND space.name = "spaces/ABCDEFGH" AND has_link()

"project one" is_unread()

space.display_name:Project tasks

查询长度上限为 1,000 个字符。

无效查询会被服务器拒绝,并返回 INVALID_ARGUMENT 错误。

page_size

int32

可选。返回的结果数上限。服务返回的值可能小于此值。

如果未指定,则最多返回 25 个。

最大值为 100。如果您使用的值大于 100,系统会自动将其更改为 100。

page_token

string

可选。从之前的搜索消息调用中收到的令牌。提供此参数可检索后续页面。

进行分页时,提供的所有其他参数应与提供页面令牌的调用相一致。向其他参数传递不同的值可能会导致意外结果。

order_by

string

可选。结果列表的排序方式。

支持的排序属性包括:

默认排序为 create_time desc。每个查询仅支持一个排序(create_time 或 relevance)。仅支持降序 (desc),且必须在 order 属性之后指定。

markup_syntax

MarkupSyntax

可选。为聊天消息 formatted_text 字段指定所需的输出语法。

view

SearchMessagesView

可选。指定要返回的搜索结果视图类型。默认值为 SEARCH_MESSAGES_VIEW_BASIC。

SearchMessagesView

部分搜索结果支持的视图类型。

枚举
SEARCH_MESSAGES_VIEW_UNSPECIFIED 默认值 / 未设置值。该 API 将默认使用 BASIC 视图。
SEARCH_MESSAGES_VIEW_BASIC 结果中仅包含匹配的消息,不包含其他元数据。这是默认值。
SEARCH_MESSAGES_VIEW_FULL 包含结果中的所有内容:匹配的消息和其他元数据。

SearchMessagesResponse

搜索消息的响应消息。

字段
results[]

SearchMessageResult

与查询匹配的搜索结果列表。

next_page_token

string

可用于检索下一页的令牌。如果此字段为空,则表示没有后续页面。

SearchSpacesRequest

请求根据查询搜索聊天室列表。

字段
use_admin_access

bool

如果为 true,则该方法会使用用户的 Google Workspace 管理员权限运行。

调用用户必须是拥有管理聊天和聊天室对话权限的 Google Workspace 管理员。

需要 chat.admin.spaces.readonly 或 chat.admin.spaces OAuth 2.0 范围。

page_size

int32

要返回的空间数量上限。服务返回的值可能小于此值。

如果未指定,则系统最多返回 100 个聊天室。

当 useAdminAccess 设置为 true 时,最大值为 1000。否则,最大值为 100。如果您使用的值超过最大值,系统会自动将其更改为最大值。

page_token

string

从之前的搜索空间调用中收到的令牌。提供此参数可检索后续页面。

进行分页时,提供的所有其他参数应与提供页面令牌的调用相一致。向其他参数传递不同的值可能会导致意外结果。

query

string

必需。搜索查询。

当 useAdminAccess 设置为 true 时,您可以使用以下参数进行搜索:

  • create_time
  • customer
  • display_name
  • external_user_allowed
  • last_active_time
  • space_history_state
  • space_type

当 useAdminAccess 设置为 false 时:

  • display_name
  • external_user_allowed
  • space_type

create_time 和 last_active_time 接受 RFC-3339 格式的时间戳,支持的比较运算符包括:=、<、>、<=、>=。

当 useAdminAccess 设置为 true 时,customer 是必需的,用于指明要从哪个客户提取聊天室。customers/my_customer 是唯一支持的值。

display_name 仅接受 HAS (:) 运算符。要匹配的文本首先会被词元化为词元,然后每个词元都会作为子字符串,在聊天室的 display_name 中的任意位置进行不区分大小写的前缀匹配。例如,Fun Eve 与 Fun event 或 The evening was fun 匹配,但与 notFun event 或 even 不匹配。当 useAdminAccess 设置为 false 时,需要提供 display_name 才能检索到有意义的结果。否则,默认行为是返回空响应。

external_user_allowed 接受 true 或 false。

space_history_state 仅接受 space 资源的 historyState 字段中的值。

space_type 是必需的,且唯一有效值为 SPACE。

在不同字段之间,仅支持 AND 运算符。有效示例为 space_type = "SPACE" AND display_name:"Hello",无效示例为 space_type = "SPACE" OR display_name:"Hello"。

在同一字段中,space_type 不支持 AND 或 OR 运算符。display_name、“space_history_state”和“external_user_allowed”仅支持 OR 运算符。last_active_time 和 create_time 同时支持 AND 和 OR 运算符。AND 只能用于表示时间间隔,例如 last_active_time < "2022-01-01T00:00:00+00:00" AND last_active_time > "2023-01-01T00:00:00+00:00"。

当 useAdminAccess 设置为 true 时,以下示例查询有效:

customer = "customers/my_customer" AND space_type = "SPACE"

customer = "customers/my_customer" AND space_type = "SPACE" AND
display_name:"Hello World"

customer = "customers/my_customer" AND space_type = "SPACE" AND
(last_active_time < "2020-01-01T00:00:00+00:00" OR last_active_time >
"2022-01-01T00:00:00+00:00")

customer = "customers/my_customer" AND space_type = "SPACE" AND
(display_name:"Hello World" OR display_name:"Fun event") AND
(last_active_time > "2020-01-01T00:00:00+00:00" AND last_active_time <
"2022-01-01T00:00:00+00:00")

customer = "customers/my_customer" AND space_type = "SPACE" AND
(create_time > "2019-01-01T00:00:00+00:00" AND create_time <
"2020-01-01T00:00:00+00:00") AND (external_user_allowed = "true") AND
(space_history_state = "HISTORY_ON" OR space_history_state = "HISTORY_OFF")

当 useAdminAccess 设置为 false 时,以下示例查询有效:

display_name:"Hello World" AND space_type = "SPACE"

(display_name:"Hello" OR display_name:"Fun") AND space_type = "SPACE"

(external_user_allowed = "true" AND space_type = "SPACE") // Returns an
empty response.

(external_user_allowed = "true" AND display_name:"Hello" AND space_type =
"SPACE")

查询长度上限为 1,000 个字符。

无效查询会被服务器拒绝,并返回 INVALID_ARGUMENT 错误。

order_by

string

可选。聊天室列表的排序方式。

支持的排序属性包括:

  • membership_count.joined_direct_human_user_count - 表示直接加入聊天室的人类用户数量。
  • last_active_time - 表示最后一个符合条件的项添加到此聊天室的任何主题的时间。
  • create_time - 表示聊天室的创建时间。

当 useAdminAccess 为 false 时,仅支持 create_time 和 relevance 进行排序。在非管理员搜索中,这些字段仅支持 DESC。

有效的排序操作值包括:

  • ASC 表示升序。默认值。

  • DESC 表示降序。

当 useAdminAccess 设置为 true 时,支持的语法如下:

  • membership_count.joined_direct_human_user_count DESC
  • membership_count.joined_direct_human_user_count ASC
  • last_active_time DESC
  • last_active_time ASC
  • create_time DESC
  • create_time ASC

当 useAdminAccess 设置为 false 时:

SearchSpacesResponse

响应,其中包含与搜索聊天室请求对应的聊天室列表。

字段
spaces[]
(deprecated)

Space

已弃用:请改用新的 results 字段。所请求聊天室的页面。仅当 useAdminAccess 设置为 true 时,系统才会填充此字段,并且此字段已弃用,取而代之的是新的 results 字段。

next_page_token

string

可用于检索下一页的令牌。如果此字段为空,则表示没有后续页面。

仅在 useAdminAccess 设置为 true 时填充。

total_size

int32

所有页面中与查询匹配的聊天室总数。如果结果超过 10,000 个聊天室,则此值为估算值。

仅在 useAdminAccess 设置为 true 时填充。

results[]

SearchSpaceResult

仅限输出。与查询匹配的搜索结果列表。

SearchSpaceResult

聊天室搜索结果中的单个结果项。

字段
space

Space

仅限输出。匹配的聊天室。

部分

表示 Google Chat 中的版块。版块可帮助用户整理聊天室。版块分为两种类型:

  1. 系统版块:这些是由 Google Chat 管理的预定义版块。其资源名称是固定的,无法创建、删除或修改其 display_name。例如:

    • users/{user}/sections/default-direct-messages
    • users/{user}/sections/default-spaces
    • users/{user}/sections/default-apps
  2. 自定义栏目:这些栏目由用户创建和管理。使用 CreateSection 创建自定义栏目需要 display_name。您可以使用 UpdateSection 更新自定义栏目,并使用 DeleteSection 删除自定义栏目。

字段
name

string

标识符。版块的资源名称。

对于系统部分,部分 ID 是一个常量字符串:

  • DEFAULT_DIRECT_MESSAGES: users/{user}/sections/default-direct-messages
  • DEFAULT_SPACES: users/{user}/sections/default-spaces
  • DEFAULT_APPS: users/{user}/sections/default-apps

格式:users/{user}/sections/{section}

display_name

string

可选。该部分的显示名称。仅针对类型为 CUSTOM_SECTION 的部分进行填充。最多支持 80 个字符。创建 CUSTOM_SECTION 时是必需的。

sort_order

int32

仅限输出。该版块相对于其他版块的顺序。sort_order 值较低的部分会显示在值较高的部分之前。

type

SectionType

必需。相应部分的类型。

SectionType

版块类型。

枚举
SECTION_TYPE_UNSPECIFIED 未指定版块类型。
CUSTOM_SECTION 自定义栏目。
DEFAULT_DIRECT_MESSAGES 默认版块,包含两位人类用户之间的 DIRECT_MESSAGE 或不属于任何自定义栏目的 GROUP_CHAT 聊天室。
DEFAULT_SPACES 不属于任何自定义栏目的默认聊天室。
DEFAULT_APPS 包含用户已安装应用的默认版块。

SectionItem

用户定义的版块内容。此图标用于表示分组到某个版块下的版块内容,例如聊天室。

字段
name

string

标识符。版块内容的资源名称。

格式:users/{user}/sections/{section}/items/{item}

联合字段 item。必需。版块内容。item 只能是下列其中一项:
space

string

可选。聊天室资源名称。

格式:spaces/{space}

SetUpSpaceRequest

请求创建聊天室并向其中添加指定用户。

字段
space

Space

必需。Space.spaceType 是必填字段。

如需创建聊天室,请将 Space.spaceType 设置为 SPACE,并设置 Space.displayName。如果您在设置空间时收到出错提示 ALREADY_EXISTS,请尝试使用其他 displayName。Google Workspace 组织中的现有空间可能已使用此显示名称。

如需创建群聊,请将 Space.spaceType 设置为 GROUP_CHAT。请勿设置 Space.displayName。

如需创建人与人之间的 1 对 1 对话,请将 Space.spaceType 设置为 DIRECT_MESSAGE,并将 Space.singleUserBotDm 设置为 false。请勿设置 Space.displayName 或 Space.spaceDetails。

如需在用户与调用 Chat 应用之间创建 1 对 1 对话,请将 Space.spaceType 设置为 DIRECT_MESSAGE,并将 Space.singleUserBotDm 设置为 true。请勿设置 Space.displayName 或 Space.spaceDetails。

如果 DIRECT_MESSAGE 聊天室已存在,系统会返回该聊天室,而不会创建新聊天室。

request_id

string

可选。此请求的唯一 ID。建议使用随机 UUID。指定请求 ID 可使请求具有幂等性,从而确保具有相同请求 ID 的多个相同请求只会创建一个聊天室。使用相同请求 ID 发出的后续请求会返回现有聊天室,而不会更新聊天室,即使请求的详细信息与当前状态不同也是如此。

如需有效使用此字段,请执行以下操作:

  • 确保后续请求与原始请求完全相同,并使用相同的身份验证凭证。
  • 如果已使用提供的请求 ID 创建了聊天室,则请求会返回该聊天室。请注意,返回的空间可能未完全填充;API 会在请求中回显该空间,并填充系统分配的资源名称。如需检索聊天室的最新元数据,请调用 GetSpace。
  • 如果对不同的经过身份验证的用户重复使用现有请求 ID,则会导致错误。
memberships[]

Membership

可选。要邀请加入聊天室的 Google Chat 用户或群组。省略主叫用户,因为系统会自动添加该用户。

该集合目前最多允许 49 个成员资格(不包括调用方)。

对于人类成员资格,Membership.member 字段必须包含一个 user,其中 name 已填充(格式:users/{user}),且 type 设置为 User.Type.HUMAN。设置聊天室时,您只能添加真人用户(只有在通过通话应用设置私信时,才支持添加 Chat 应用)。您还可以使用用户的邮箱作为 {user} 的别名来添加成员。例如,user.name 可以是 users/example@gmail.com。如需邀请 Gmail 用户或外部 Google Workspace 网域中的用户,必须将用户的邮箱用于 {user}。

对于 Google 群组成员资格,Membership.group_member 字段必须包含一个 group,其中填充了 name(格式为 groups/{group})。只有在将 Space.spaceType 设置为 SPACE 时,您才能添加 Google 群组。

将 Space.spaceType 设置为 SPACE 时,此参数为可选。

将 Space.spaceType 设置为 GROUP_CHAT 时,必须提供此参数,以及至少两个成员资格。

如果将 Space.spaceType 设置为 DIRECT_MESSAGE 且用户为人类用户,则必须提供此字段,并且只能提供一个成员资格。

在用户与调用 Chat 应用之间创建 1 对 1 对话时(将 Space.spaceType 设置为 DIRECT_MESSAGE,将 Space.singleUserBotDm 设置为 true),此字段必须为空。

SlashCommand

Google Chat 中斜杠命令的相关元数据。

字段
command_id

int64

斜杠命令的 ID。

SlashCommandMetadata

斜杠命令 (/) 的注释元数据。

字段
bot

User

调用了其命令的 Chat 应用。

type

Type

斜杠命令的类型。

command_name

string

调用的斜杠命令的名称。

command_id

int64

所调用的斜杠命令的命令 ID。

triggers_dialog

bool

指示斜杠命令是否用于对话框。

类型

枚举
TYPE_UNSPECIFIED 枚举的默认值。请勿使用。
ADD 将 Chat 应用添加到聊天室。
INVOKE 在聊天室中调用斜杠命令。

空格

Google Chat 中的聊天室。聊天室是两个或更多用户之间的对话,或用户与 Chat 应用之间的一对一消息。

字段
name

string

标识符。聊天室的资源名称。

格式:spaces/{space}

其中 {space} 表示系统为空间分配的 ID。您可以通过调用 spaces.list() 方法或从聊天室网址获取聊天室 ID。例如,如果空间网址为 https://mail.google.com/mail/u/0/#chat/space/AAAAAAAAA,则空间 ID 为 AAAAAAAAA。

type
(deprecated)

Type

仅限输出。已弃用:请改用 space_type。空间的类型。

space_type

SpaceType

可选。空间类型。在创建聊天室或更新聊天室类型时,此字段为必填字段。仅限输出,用于其他用途。

single_user_bot_dm

bool

可选。聊天室是否为 Chat 应用与单个用户之间的私信。

threaded
(deprecated)

bool

仅限输出。已弃用:请改用 spaceThreadingState。此聊天室中的消息是否按话题分组。

display_name

string

可选。空间的显示名称。在创建 spaceType 为 SPACE 的聊天室时,此字段为必填字段。如果您在创建聊天室或更新 displayName 时收到出错提示 ALREADY_EXISTS,请尝试使用其他 displayName。Google Workspace 组织中的现有聊天室可能已使用此显示名称。

对于私信,此字段可能为空。

最多支持 128 个字符。

external_user_allowed

bool

可选。不可变。此聊天室是否允许任何 Google Chat 用户作为成员。在 Google Workspace 组织中创建聊天室时输入。在以下情况下创建聊天室时,请省略此字段:

  • 经过身份验证的用户使用的是消费者账号(非受管用户账号)。默认情况下,由个人账号创建的聊天室允许任何 Google Chat 用户加入。

对于现有聊天室,此字段仅限输出。

space_threading_state

SpaceThreadingState

仅限输出。Chat 聊天室中的消息串状态。

space_details

SpaceDetails

可选。有关空间的详细信息,包括说明和规则。

space_history_state

HistoryState

可选。此聊天室中消息和消息串的消息记录状态。

import_mode

bool

可选。此聊天室是否是在 Import Mode 中创建的,作为向 Google Workspace 迁移数据的一部分。在导入聊天室期间,用户无法看到这些聊天室,直到导入完成。

在Import Mode中创建聊天室需要用户身份验证。

create_time

Timestamp

可选。不可变。对于在 Chat 中创建的聊天室,该值为聊天室的创建时间。此字段仅限输出,但在导入模式聊天室中使用时除外。

对于导入模式聊天室,请将此字段设置为在来源中创建聊天室的历史时间戳,以保留原始创建时间。

仅当 spaceType 为 GROUP_CHAT 或 SPACE 时,才会在输出中填充。

last_active_time

Timestamp

仅限输出。聊天室中最后一条消息的时间戳。

admin_installed

bool

仅限输出。对于包含 Chat 应用的私信 (DM) 聊天室,该聊天室是否由 Google Workspace 管理员创建。管理员可以代表组织中的用户安装 Chat 应用并设置与该应用的私信对话。

如需支持管理员安装,您的 Chat 应用必须具备私信功能。

membership_count

MembershipCount

仅限输出。按成员类型分组的已加入会员数量。当 space_type 为 SPACE、DIRECT_MESSAGE 或 GROUP_CHAT 时填充。

access_settings

AccessSettings

可选。指定聊天室的访问权限设置。仅在 space_type 为 SPACE 时填充。

space_uri

string

仅限输出。用户访问聊天室的 URI。

import_mode_expire_time

Timestamp

仅限输出。如果聊天室仍处于导入模式,系统会自动删除该聊天室的时间。

在导入模式下创建的每个聊天室都必须在到期时间之前使用 spaces.completeImport 退出此模式。

此字段仅针对使用导入模式创建的聊天室进行填充。

customer

string

可选。不可变。聊天室所属网域的客户 ID。仅在通过应用身份验证创建聊天室且 SpaceType 为 SPACE 时才需要设置,否则不应设置。

格式为 customers/{customer},其中 customer 是 Admin SDK 客户资源中的 id。专用应用还可以使用 customers/my_customer 别名在应用所在的 Google Workspace 组织中创建聊天室。

对于私信 (DM) 或由非 Google Workspace 用户创建的聊天室,此字段不会填充。

联合字段 space_permission_settings。表示聊天室的权限设置。仅在 space_type 为 SPACE 时填充。space_permission_settings 只能是下列其中一项:
predefined_permission_settings

PredefinedPermissionSettings

可选。仅限输入。预定义的聊天室权限设置,仅在创建聊天室时输入。如果未设置此字段,系统会创建一个协作空间。创建聊天室后,系统会在 PermissionSettings 字段中填充设置。

设置预定义权限设置支持:

permission_settings

PermissionSettings

可选。现有聊天室的聊天室权限设置。用于更新确切聊天室权限设置的输入,其中现有权限设置会被替换。输出会列出当前的权限设置。

读取和更新权限设置支持:

AccessPermissionSetting

访问权限设置。

字段
principals[]

Principal

可选。无序列表。此权限允许的主账号。

AccessPermissionSettings

聊天室的访问权限设置。

字段
discover_space_setting

AccessPermissionSetting

可选。用于发现聊天室的访问权限设置。

join_space_setting

AccessPermissionSetting

可选。用于加入聊天室的访问权限设置。

view_space_membership_setting

AccessPermissionSetting

可选。用于查看聊天室成员资格的访问权限设置。更新哪些人可以查看聊天室成员资格时,必须在更新掩码和请求正文中与 PermissionSettings.view_space_membership 一起指定。向目标受众群体授予查看权限时,您还必须在同一请求中向所有成员授予 PermissionSettings.view_space_membership。如需移除现有目标受众群体(例如,将查看权限限制为仅限聊天室管理员或助理管理员),请指定一个空的 AccessPermissionSetting(不含 principals)。

AccessSettings

表示聊天室的访问权限设置。

字段
access_state

AccessState

仅限输出。指明聊天室的访问状态。

audience

string

可选。目标受众群体的资源名称,该群组中的用户可以发现聊天室、加入聊天室以及预览聊天室中的消息。如果未设置,则只有单独受邀或添加到聊天室的用户或 Google 群组才能访问该聊天室。如需了解详情,请参阅让目标对象群组可以发现聊天室。

格式:audiences/{audience}

如需为 Google Workspace 组织使用默认目标受众群体,请设置为 audiences/default。

读取目标受众群体支持:

将 chat.bot 范围与应用身份验证搭配使用时,系统不会填充此字段。

设置目标受众群体需要用户身份验证。

access_permission_settings

AccessPermissionSettings

可选。访问聊天室的权限设置。

如需在创建聊天室时设置目标受众群体,请在请求中指定 accessSettings.audience 字段。

AccessState

表示聊天室的访问状态。

枚举
ACCESS_STATE_UNSPECIFIED 访问权限状态未知或此 API 不支持。
PRIVATE 只有由其他用户或 Google Workspace 管理员单独添加或邀请的用户或 Google 群组才能发现和访问该聊天室。
DISCOVERABLE

聊天室管理员已向目标受众群体授予聊天室访问权限。被单独添加或邀请到聊天室的用户或 Google 群组也可以发现和访问聊天室。如需了解详情,请参阅让特定用户可以搜索到聊天室。

创建开放型聊天室需要用户身份验证。

MembershipCount

表示聊天室的成员资格数量,按类别分组。

字段
joined_direct_human_user_count

int32

仅限输出。直接加入聊天室的人类用户数量,不包括通过加入群组而加入聊天室的用户。

joined_group_count

int32

仅限输出。直接加入聊天室的所有群组的数量。

PermissionSetting

表示聊天室权限设置。

字段
managers_allowed

bool

可选。聊天室所有者 (ROLE_MANAGER) 是否拥有此权限。

members_allowed

bool

可选。基本聊天室成员 (ROLE_MEMBER) 是否拥有此权限。

assistant_managers_allowed

bool

可选。聊天室管理员 ROLE_ASSISTANT_MANAGER) 是否拥有此权限。

PermissionSettings

您可以在更新现有命名聊天室时指定的权限设置。

如需在创建聊天室时设置权限,请在请求中指定 PredefinedPermissionSettings 字段。

字段
manage_members_and_groups

PermissionSetting

可选。用于管理聊天室中的成员和群组的设置。

modify_space_details

PermissionSetting

可选。用于更新聊天室名称、头像、说明和准则的设置。

toggle_history

PermissionSetting

可选。用于开启和关闭聊天室记录的设置。

use_at_mention_all

PermissionSetting

可选。在聊天室中使用“@所有用户”的设置。

manage_apps

PermissionSetting

可选。用于管理聊天室中应用的设置。

manage_webhooks

PermissionSetting

可选。用于管理聊天室中网络钩子的设置。

post_messages

PermissionSetting

仅限输出。用于在聊天室中发布消息的设置。

reply_messages

PermissionSetting

可选。用于在聊天室中回复消息的设置。

view_space_membership

PermissionSetting

可选。用于查看聊天室成员资格的设置。更新哪些人可以查看聊天室成员资格时,必须在更新掩码和请求正文中与 AccessPermissionSettings.view_space_membership_setting 一起指定。如需将查看权限限制为特定角色(例如,仅限空间管理员或助理管理员),请在此处指定所需的角色权限,并在同一请求中提供空的 AccessPermissionSettings.view_space_membership_setting。如果在 AccessPermissionSettings.view_space_membership_setting 中配置了目标受众群体,则必须向所有成员授予此设置。

PredefinedPermissionSettings

您只能在创建命名聊天室时指定预定义的权限设置。我们将来可能会添加更多设置。如需详细了解已命名聊天室的权限设置,请参阅了解聊天室。

枚举
PREDEFINED_PERMISSION_SETTINGS_UNSPECIFIED 未指定。请勿使用。
COLLABORATION_SPACE 此设置可将聊天室设为协作空间,让所有成员都能发布消息。
ANNOUNCEMENT_SPACE 用于将聊天室设为通知聊天室,其中只有聊天室管理员可以发布消息。

主体

表示被授予访问权限的实体的主账号。

字段
联合字段 principal_type。主账号的类型。principal_type 只能是下列其中一项:
audience

Audience

受众群体。

SpaceDetails

有关聊天室的详细信息,包括说明和规则。

字段
description

string

可选。对空间的说明。例如,描述聊天室的讨论主题、功能用途或参与者。

最多支持 4,096 个字符。

guidelines

string

可选。聊天室的规则、期望和礼仪。

最多支持 5,000 个字符。

SpaceThreadingState

指定 Chat 聊天室中的话题状态类型。

枚举
SPACE_THREADING_STATE_UNSPECIFIED Reserved.
THREADED_MESSAGES 支持消息串的聊天室。用户在回复消息时,可以在会话串中回复,这样他们的回复就会保留在原始消息的上下文中。
GROUPED_MESSAGES 按主题整理对话的命名聊天室。主题及其回复会归为一组。
UNTHREADED_MESSAGES

不支持消息串的聊天室。此聊天室话题状态仅用于特殊情况,包括:

  • 有意关闭了话题功能的常设会议群聊。
  • 2022 年之前创建的旧版群组对话。

SpaceType

空间类型。创建或更新聊天室时,此字段为必填字段。仅限输出,用于其他用途。

枚举
SPACE_TYPE_UNSPECIFIED Reserved.
SPACE 用户可以在其中发送消息、共享文件和开展协作。SPACE可以包含 Chat 应用。
GROUP_CHAT 3 人或更多人之间的群组对话。GROUP_CHAT可以包含 Chat 应用。
DIRECT_MESSAGE 两人之间或人与 Chat 应用之间的 1 对 1 消息。

类型

已弃用:请改用 SpaceType。

枚举
TYPE_UNSPECIFIED Reserved.
ROOM 两个或多个人之间的对话。
DM 用户与 Chat 应用之间的 1 对 1 私信,其中所有消息都是扁平的。请注意,这不包括两人之间的私信。

SpaceBatchUpdatedEventData

针对聊天室的多项更新的事件载荷。

事件类型:google.workspace.chat.space.v1.batchUpdated

字段
spaces[]

SpaceUpdatedEventData

更新后的聊天室列表。

SpaceEvent

表示 Google Chat 聊天室中的更改或活动的事件。如需了解详情,请参阅处理来自 Google Chat 的事件。

字段
name

string

空间事件的资源名称。

格式:spaces/{space}/spaceEvents/{spaceEvent}

event_time

Timestamp

事件发生的时间。

event_type

string

空间事件的类型。每种事件类型都有一个批处理版本,表示在短时间内发生的该事件类型的多个实例。对于 spaceEvents.list() 请求,请在查询过滤条件中省略批量事件类型。默认情况下,服务器会同时返回事件类型及其批处理版本。

消息支持的事件类型:

  • 新消息:google.workspace.chat.message.v1.created
  • 更新后的消息:google.workspace.chat.message.v1.updated
  • 已删除消息:google.workspace.chat.message.v1.deleted
  • 多条新消息:google.workspace.chat.message.v1.batchCreated
  • 多条更新后的消息:google.workspace.chat.message.v1.batchUpdated
  • 多条已删除的消息:google.workspace.chat.message.v1.batchDeleted

成员资格支持的事件类型:

  • 新成员:google.workspace.chat.membership.v1.created
  • 更新后的会员方案:google.workspace.chat.membership.v1.updated
  • 已删除成员资格:google.workspace.chat.membership.v1.deleted
  • 多个新会员:google.workspace.chat.membership.v1.batchCreated
  • 多项更新后的会员资格:google.workspace.chat.membership.v1.batchUpdated
  • 多个已删除的会员资格:google.workspace.chat.membership.v1.batchDeleted

回应支持的事件类型:

  • 新回应:google.workspace.chat.reaction.v1.created
  • 已删除回应:google.workspace.chat.reaction.v1.deleted
  • 多条新回应:google.workspace.chat.reaction.v1.batchCreated
  • 多个已删除的回应:google.workspace.chat.reaction.v1.batchDeleted

有关聊天室的支持事件类型:

  • 已更新空间:google.workspace.chat.space.v1.updated
  • 多项聊天室更新:google.workspace.chat.space.v1.batchUpdated

联合字段 payload。

payload 只能是下列其中一项:

message_created_event_data

MessageCreatedEventData

新消息的事件载荷。

事件类型:google.workspace.chat.message.v1.created

message_updated_event_data

MessageUpdatedEventData

更新后的消息的事件载荷。

事件类型:google.workspace.chat.message.v1.updated

message_deleted_event_data

MessageDeletedEventData

已删除消息的事件载荷。

事件类型:google.workspace.chat.message.v1.deleted

message_batch_created_event_data

MessageBatchCreatedEventData

多条新消息的事件载荷。

事件类型:google.workspace.chat.message.v1.batchCreated

message_batch_updated_event_data

MessageBatchUpdatedEventData

多条更新消息的事件载荷。

事件类型:google.workspace.chat.message.v1.batchUpdated

message_batch_deleted_event_data

MessageBatchDeletedEventData

多条已删除消息的事件载荷。

事件类型:google.workspace.chat.message.v1.batchDeleted

space_updated_event_data

SpaceUpdatedEventData

聊天室更新的事件载荷。

事件类型:google.workspace.chat.space.v1.updated

space_batch_updated_event_data

SpaceBatchUpdatedEventData

针对聊天室的多项更新的事件载荷。

事件类型:google.workspace.chat.space.v1.batchUpdated

membership_created_event_data

MembershipCreatedEventData

新成员资格的事件载荷。

事件类型:google.workspace.chat.membership.v1.created

membership_updated_event_data

MembershipUpdatedEventData

更新后的会员资格的事件载荷。

事件类型:google.workspace.chat.membership.v1.updated

membership_deleted_event_data

MembershipDeletedEventData

已删除成员资格的事件载荷。

事件类型:google.workspace.chat.membership.v1.deleted

membership_batch_created_event_data

MembershipBatchCreatedEventData

多个新会员资格的事件载荷。

事件类型:google.workspace.chat.membership.v1.batchCreated

membership_batch_updated_event_data

MembershipBatchUpdatedEventData

多个更新后的成员资格的事件载荷。

事件类型:google.workspace.chat.membership.v1.batchUpdated

membership_batch_deleted_event_data

MembershipBatchDeletedEventData

多个已删除成员资格的事件载荷。

事件类型:google.workspace.chat.membership.v1.batchDeleted

reaction_created_event_data

ReactionCreatedEventData

新回应的事件载荷。

事件类型:google.workspace.chat.reaction.v1.created

reaction_deleted_event_data

ReactionDeletedEventData

已删除回应的事件载荷。

事件类型:google.workspace.chat.reaction.v1.deleted

reaction_batch_created_event_data

ReactionBatchCreatedEventData

多个新回应的事件载荷。

事件类型:google.workspace.chat.reaction.v1.batchCreated

reaction_batch_deleted_event_data

ReactionBatchDeletedEventData

多个已删除回应的事件载荷。

事件类型:google.workspace.chat.reaction.v1.batchDeleted

SpaceNotificationSetting

空间中用户的通知设置。

字段
name

string

标识符。聊天室通知设置的资源名称。格式:users/{user}/spaces/{space}/spaceNotificationSetting。

notification_setting

NotificationSetting

通知设置。

mute_setting

MuteSetting

聊天室通知忽略设置。

MuteSetting

聊天室通知忽略设置类型。

枚举
MUTE_SETTING_UNSPECIFIED Reserved.
UNMUTED 用户将根据通知设置收到聊天室通知。
MUTED 无论通知设置如何,用户都不会收到该聊天室的任何通知。

NotificationSetting

通知设置类型。未来可能会支持其他类型。

枚举
NOTIFICATION_SETTING_UNSPECIFIED Reserved.
ALL 当有人用“@”提及您、您关注的话题有新消息或者新话题有首条消息时,系统会触发通知。系统会自动关注所有新消息串,除非用户手动取消关注。
MAIN_CONVERSATIONS 通知由 @提及、关注的话题、新话题的首条消息触发。不适用于 1 对 1 私信。
FOR_YOU 通知由用“@”提及的消息和关注的消息串触发。不适用于 1 对 1 私信。
OFF 通知功能已关闭。

SpaceReadState

用户在聊天室中的已读状态,用于识别已读和未读消息。

字段
name

string

聊天室已读状态的资源名称。

格式:users/{user}/spaces/{space}/spaceReadState

last_read_time

Timestamp

可选。用户的聊天室已读状态的更新时间。通常,这对应于最后一条已读消息的时间戳,或用户指定的用于标记聊天室中最后已读位置的时间戳。

SpaceUpdatedEventData

更新后的聊天室的事件载荷。

事件类型:google.workspace.chat.space.v1.updated

字段
space

Space

更新后的空间。

SpaceView

一个视图,用于指定应在 Space 资源中填充哪些字段。为确保与未来版本兼容,我们建议您在代码中考虑其他值。

枚举
SPACE_VIEW_UNSPECIFIED 默认值 / 未设置值。
SPACE_VIEW_RESOURCE_NAME_ONLY 仅填充 Space 资源名称。
SPACE_VIEW_EXPANDED 填充 Space 资源字段。注意:permissionSettings 字段不会填充任何内容。指定 SPACE_VIEW_EXPANDED 的请求必须包含允许读取聊天室数据的范围,例如 https://www.googleapis.com/auth/chat.spaces 或 https://www.googleapis.com/auth/chat.spaces.readonly。

会话

Google Chat 聊天室中的消息串。如需查看用法示例,请参阅发起或回复消息串。

如果您在创建消息时指定了会话,则可以设置 messageReplyOption 字段,以确定在找不到匹配会话时会发生什么情况。

字段
name

string

标识符。会话串的资源名称。

示例:spaces/{space}/threads/{thread}

thread_key

string

可选。用于创建或更新会话串的输入。否则,仅限输出。会话串的 ID。最多支持 4000 个字符。

此 ID 对于设置它的 Chat 应用而言是唯一的。例如,如果多个 Chat 应用使用同一消息串键创建消息,这些消息会发布在不同的消息串中。如需在由用户或其他 Chat 应用创建的消息串中回复,请改为指定消息串 name 字段。

ThreadReadState

用户在会话中的已读状态,用于识别已读和未读消息。

字段
name

string

会话串已读状态的资源名称。

格式:users/{user}/spaces/{space}/threads/{thread}/threadReadState

last_read_time

Timestamp

用户的会话已读状态的更新时间。这通常对应于会话中最后一条已读消息的时间戳。

UpdateAvailabilityRequest

对 UpdateAvailability 方法的请求消息。

字段
availability

Availability

必需。要更新的供应情况。

update_mask

FieldMask

必需。要更新的字段列表。 唯一可以更新的字段是 custom_status。

UpdateMembershipRequest

用于更新成员资格的请求消息。

字段
membership

Membership

必需。要更新的成员资格。只有 update_mask 指定的字段会被更新。

update_mask

FieldMask

必需。要更新的字段路径。使用英文逗号分隔多个值,或使用 * 更新所有字段路径。

目前支持的字段路径:

  • role
use_admin_access

bool

可选。如果为 true,则该方法会使用用户的 Google Workspace 管理员权限运行。

调用用户必须是拥有管理聊天和聊天室对话权限的 Google Workspace 管理员。

需要 chat.admin.memberships OAuth 2.0 范围。

UpdateMessageRequest

请求更新消息。

字段
message

Message

必需。字段已被更新的消息。

update_mask

FieldMask

必需。要更新的字段路径。使用英文逗号分隔多个值,或使用 * 更新所有字段路径。

目前支持的字段路径:

allow_missing

bool

可选。如果 true 且未找到消息,则系统会创建新消息并忽略 updateMask。指定的消息 ID 必须是客户端分配的,否则请求会失败。

UpdateSectionRequest

用于更新版块的请求消息。

字段
section

Section

必需。要更新的部分。

update_mask

FieldMask

必需。用于指定要更新哪些字段的掩码。

目前支持的字段路径:

  • display_name

UpdateSpaceNotificationSettingRequest

请求更新聊天室通知设置。仅支持更新调用用户的通知设置。

字段
space_notification_setting

SpaceNotificationSetting

必需。必须以 users/{user}/spaces/{space}/spaceNotificationSetting 的形式填充聊天室通知设置的资源名称。只有 update_mask 指定的字段会被更新。

update_mask

FieldMask

必需。支持的字段路径:

  • notification_setting

  • mute_setting

UpdateSpaceReadStateRequest

UpdateSpaceReadState API 的请求消息。

字段
space_read_state

SpaceReadState

必需。聊天室已读状态和要更新的字段。

仅支持更新调用用户的已读状态。

如需引用调用用户,请设置以下项之一:

  • me 别名。例如 users/me/spaces/{space}/spaceReadState。

  • 其 Workspace 邮箱。例如 users/user@example.com/spaces/{space}/spaceReadState。

  • 其用户 ID。例如 users/123456789/spaces/{space}/spaceReadState。

格式:users/{user}/spaces/{space}/spaceReadState

update_mask

FieldMask

必需。要更新的字段路径。目前支持的字段路径:

  • last_read_time

如果 last_read_time 早于最新消息的创建时间,则聊天室在界面中会显示为未读。

如需将聊天室标记为已读,请将 last_read_time 设置为晚于(大于)最新消息创建时间的任何值。last_read_time 会被强制与最新消息创建时间匹配。请注意,聊天室已读状态只会影响聊天室顶级对话中可见消息的已读状态。消息串中的回复不受此时间戳的影响,而是依赖于消息串的已读状态。

UpdateSpaceRequest

更新单个聊天室的请求。

字段
space

Space

必需。包含要更新的字段的聊天室。Space.name 必须采用 spaces/{space} 格式。只有 update_mask 指定的字段会被更新。

update_mask

FieldMask

必需。更新后的字段路径,如果有多个,请用英文逗号分隔。

您可以更新聊天室的以下字段:

space_details:更新聊天室的说明和指南。您必须在更新请求中将说明和准则作为 SpaceDetails 传递。如果您只想更新其中一个字段,请为另一个字段传递现有值。

display_name:仅支持为 spaceType 字段为 SPACE 的聊天室更新显示名称。如果您收到出错提示 ALREADY_EXISTS,请尝试使用其他值。Google Workspace 组织中的现有空间可能已使用此显示名称。

space_type:仅支持将 GROUP_CHAT 空间类型更改为 SPACE。在更新掩码中同时添加 display_name 和 space_type,并确保指定的聊天室具有非空显示名称和 SPACE 聊天室类型。如果现有空间已具有 SPACE 类型,则在更新显示名称时,可以选择是否在指定空间中包含 space_type 掩码和 SPACE 类型。尝试通过其他方式更新聊天室类型会导致参数无效错误。space_type 不支持 useAdminAccess。

space_history_state:通过为聊天室开启或关闭聊天记录功能来更新聊天室历史记录设置。仅当为 Google Workspace 组织启用了历史记录设置时,才受支持。如需更新聊天室历史记录状态,您必须在请求中省略所有其他字段掩码。useAdminAccess 不支持 space_history_state。

access_settings.audience:更新访问权限设置,以指定谁可以发现聊天室、加入聊天室以及预览 spaceType 字段为 SPACE 的指定聊天室中的消息。如果现有聊天室有目标受众群体,您可以通过省略此字段掩码的值来移除该受众群体并限制聊天室访问权限。如需更新聊天室的访问权限设置,进行身份验证的用户必须是聊天室管理员,并且在请求中省略所有其他字段掩码。如果聊天室处于导入模式,则您无法更新此字段。如需了解详情,请参阅让特定用户可以搜索到聊天室。useAdminAccess 不支持 access_settings.audience。

access_settings.access_permission_settings:更新访问权限设置,以指定哪些人可以发现和加入 spaceType 字段为 SPACE 的聊天室。允许加入聊天室的主体也必须能够发现该聊天室。如需更新聊天室的访问权限设置,进行身份验证的用户必须是聊天室管理员或助理管理员,并且在请求中省略所有其他字段掩码。如果聊天室处于导入模式,则您无法更新此字段。如需了解详情,请参阅让特定用户可以搜索到聊天室。access_settings.access_permission_settings 不支持 useAdminAccess。支持的字段掩码包括:

  • access_settings.access_permission_settings.discoverSpaceSetting
  • access_settings.access_permission_settings.joinSpaceSetting
  • access_settings.access_permission_settings.viewSpaceMembershipSetting

permission_settings:支持更改聊天室的权限设置。更新权限设置时,您只能指定 permissionSettings 字段掩码,而不能同时更新其他字段掩码。支持的字段掩码包括:

  • permission_settings.manageMembersAndGroups
  • permission_settings.modifySpaceDetails
  • permission_settings.toggleHistory
  • permission_settings.useAtMentionAll
  • permission_settings.manageApps
  • permission_settings.manageWebhooks
  • permission_settings.replyMessages
  • permission_settings.viewSpaceMembership
use_admin_access

bool

可选。如果为 true,则该方法会使用用户的 Google Workspace 管理员权限运行。

调用用户必须是拥有管理聊天和聊天室对话权限的 Google Workspace 管理员。

需要 chat.admin.spaces OAuth 2.0 范围。

使用管理员访问权限时,不支持某些 FieldMask 值。如需了解详情,请参阅 update_mask 的说明。

用户

Google Chat 中的用户。

当作为请求的输出返回时,如果您的 Chat 应用以用户身份进行身份验证,则 User 资源的输出(例如在 Messages 和 Memberships API 中)只会为内部和外部用户填充 name 和 type 字段,除非他们是聊天室的成员或之前与调用用户有关系。

字段
name

string

Google Chat user 的资源名称。

格式:users/{user}。users/app 可用作通话应用 bot 用户的别名。

对于 human users,{user} 是与以下各项相同的用户标识符:

  • People API 中 Person 的 id。例如,Chat API 中的 users/123456789 与 People API 中的 123456789 个人资料 ID 代表同一个人。

  • Admin SDK Directory API 中用户的 id。

  • 用户的邮箱可以作为 {user} 的别名在 API 请求中使用。例如,如果 user@example.com 的 People API Person 个人资料 ID 为 123456789,则您可以使用 users/user@example.com 作为别名来引用 users/123456789。API 只会返回规范资源名称(例如 users/123456789)。

display_name

string

仅限输出。用户的显示名称。

在应用身份验证和用户身份验证中都会填充。对于使用应用身份验证发出的请求,此字段始终会填充。使用用户身份验证调用 Messages 和 Memberships API 时,系统会为内部和外部用户填充此字段,包括消息的 sender、annotations 中的用户(例如提及的用户)以及 Membership 资源中的用户,前提是该用户是聊天室成员或之前与调用用户有亲缘关系。

avatar_url

string

仅限输出。用户的头像图片网址。

使用用户身份验证调用 Messages 和 Memberships API 时,系统会为内部和外部用户填充此字段,包括消息的 sender、annotations 中的用户(例如提及的用户)以及 Membership 资源中的用户,前提是该用户是聊天室成员或之前与调用用户有亲缘关系。

email

string

仅限输出。用户的电子邮件地址。

使用用户身份验证调用 Messages 和 Memberships API 时,如果用户是聊天室成员或之前与调用用户有亲缘关系,则系统会为内部和外部用户填充此字段,包括消息的 sender、annotations 中的用户(例如提及的用户)以及 Membership 资源中的用户。

domain_id

string

用户 Google Workspace 网域的唯一标识符。

type

Type

用户类型。

is_anonymous

bool

仅限输出。当 true 时,用户会被删除或其个人资料不可见,例如当用户在聊天室中被提及,但并非成员,且之前与发起调用的用户没有亲近度时。

类型

枚举
TYPE_UNSPECIFIED 枚举的默认值。请勿使用。
HUMAN 人类用户。
BOT Chat 应用用户。

UserMentionMetadata

用户提及 (@) 的注释元数据。

字段
user

User

提及的用户。

type

Type

用户提及类型。

类型

枚举
TYPE_UNSPECIFIED 枚举的默认值。请勿使用。
ADD 将用户添加到聊天室。
MENTION 在聊天室中提及用户。

WidgetMarkup

微件是呈现文本和图片的界面元素。

字段
buttons[]

Button

按钮列表。按钮也是 oneof data,并且只能设置其中一个字段。

联合字段 data。WidgetMarkup 只能包含以下项之一。您可以使用多个 WidgetMarkup 字段来显示更多内容。data 只能是下列其中一项:
text_paragraph

TextParagraph

在此微件中显示一个文本段落。

image

Image

在此微件中显示图片。

key_value

KeyValue

在此微件中显示键值对项。

按钮

一个按钮。可以是文本按钮或图片按钮。

字段

联合字段 type。

type 只能是下列其中一项:

text_button

TextButton

一个包含文本和 onclick 操作的按钮。

image_button

ImageButton

一个带有图片和 onclick 操作的按钮。

FormAction

表单操作描述了提交表单时的行为。例如,您可以调用 Apps 脚本来处理表单。

字段
action_method_name

string

方法名称用于标识表单的哪个部分触发了表单提交。此信息会作为卡片点击事件的一部分回传给 Chat 应用。您可以为触发常见行为的多个元素使用相同的方法名称。

parameters[]

ActionParameter

操作参数列表。

ActionParameter

调用操作方法时要提供的字符串参数列表。例如,考虑三个延后按钮:立即延后、延后一天、延后到下周。您可以使用 action method = snooze(),在字符串形参列表中传递延后类型和延后时间。

字段
key

string

操作脚本的参数名称。

value

string

参数的值。

图标

支持的图标集。

枚举
ICON_UNSPECIFIED
AIRPLANE
BOOKMARK
BUS
CAR
CLOCK
CONFIRMATION_NUMBER_ICON
DOLLAR
DESCRIPTION
EMAIL
EVENT_PERFORMER
EVENT_SEAT
FLIGHT_ARRIVAL
FLIGHT_DEPARTURE
HOTEL
HOTEL_ROOM_TYPE
INVITE
MAP_PIN
MEMBERSHIP
MULTIPLE_PEOPLE
OFFER
PERSON
PHONE
RESTAURANT_ICON
SHOPPING_CART
STAR
STORE
TICKET
TRAIN
VIDEO_CAMERA
VIDEO_PLAY

映像

由网址指定且可具有 onclick 操作的图片。

字段
image_url

string

图片的网址。

on_click

OnClick

onclick 操作。

aspect_ratio

double

此图片的宽高比(宽度和高度)。此字段可让您在等待图片加载时为其预留合适的高度。它并非旨在替换图片的内置宽高比。如果未设置,服务器会通过预提取图片来填充该字段。

ImageButton

具有 onclick 操作的图片按钮。

字段
on_click

OnClick

onclick 操作。

name

string

此 image_button 的名称,用于无障碍功能。如果未指定此名称,则会提供默认值。

联合字段 icons。图标可以通过 Icon enum 或网址指定。icons 只能是下列其中一项:
icon

Icon

由 enum 指定的图标,该图标会编入 Chat API 提供的图标。

icon_url

string

由网址指定的图标。

KeyValue

界面元素包含键(标签)和值(内容)。此元素还可以包含一些操作,例如 onclick 按钮。

字段
top_label

string

顶部标签的文本。支持格式化文本。如需详细了解如何设置文本格式,请参阅在 Google Chat 应用中设置文本格式和在 Google Workspace 插件中设置文本格式。

content

string

内容的文本。支持且始终需要设置格式的文本。如需详细了解如何设置文本格式,请参阅在 Google Chat 应用中设置文本格式和在 Google Workspace 插件中设置文本格式。

content_multiline

bool

内容是否应为多行。

bottom_label

string

底部标签的文本。支持格式化文本。如需详细了解如何设置文本格式,请参阅在 Google Chat 应用中设置文本格式和在 Google Workspace 插件中设置文本格式。

on_click

OnClick

onclick 操作。只有顶部标签、底部标签和内容区域可点击。

联合字段 icons。必须至少定义图标、top_label 和 bottom_label 中的一个。icons 只能是下列其中一项:
icon

Icon

一个枚举值,Chat API 会将其替换为相应的图标图片。

icon_url

string

由网址指定的图标。

联合字段 control。一个控制微件。您可以设置 button 或 switch_widget,但不能同时设置这两者。control 只能是下列其中一项:
button

Button

一个可点击以触发操作的按钮。

OnClick

onclick 操作(例如打开链接)。

字段

联合字段 data。

data 只能是下列其中一项:

action

FormAction

如果指定了此 onclick 操作,则该操作会触发一个表单操作。

TextButton

一个包含文本和 onclick 操作的按钮。

字段
text

string

按钮文字。

on_click

OnClick

按钮的 onclick 操作。

TextParagraph

一段文字。支持设置文本格式。如需详细了解如何设置文本格式,请参阅在 Google Chat 应用中设置文本格式和在 Google Workspace 插件中设置文本格式。

字段
text

string