REST Resource: spaces

リソース: Space

Google Chat のスペース。スペースは、2 人以上のユーザー間の会話、またはユーザーと Chat 用アプリ間の 1 対 1 のメッセージです。

JSON 表現
{
  "name": string,
  "type": enum (Type),
  "spaceType": enum (SpaceType),
  "singleUserBotDm": boolean,
  "threaded": boolean,
  "displayName": string,
  "externalUserAllowed": boolean,
  "spaceThreadingState": enum (SpaceThreadingState),
  "spaceDetails": {
    object (SpaceDetails)
  },
  "spaceHistoryState": enum (HistoryState),
  "importMode": boolean,
  "createTime": string,
  "lastActiveTime": string,
  "adminInstalled": boolean,
  "membershipCount": {
    object (MembershipCount)
  },
  "accessSettings": {
    object (AccessSettings)
  },
  "spaceUri": string,
  "importModeExpireTime": string,
  "customer": string,

  // Union field space_permission_settings can be only one of the following:
  "predefinedPermissionSettings": enum (PredefinedPermissionSettings),
  "permissionSettings": {
    object (PermissionSettings)
  }
  // End of list of possible types for union field space_permission_settings.
}
フィールド
name

string

ID。Space のリソース名。

形式: spaces/{space}

ここで、{space} はスペースのシステム割り当て ID を表します。スペース ID は、spaces.list() メソッドを呼び出すか、スペースの URL から取得できます。たとえば、スペースの URL が https://mail.google.com/mail/u/0/#chat/space/AAAAAAAAA の場合、スペース ID は AAAAAAAAA です。

type
(deprecated)

enum (Type)

出力専用。非推奨: 代わりに、spaceType を使用してください。スペースのタイプ。

spaceType

enum (SpaceType)

省略可。スペースのタイプ。スペースを作成する場合、またはスペースのスペースタイプを更新する場合は必須です。その他の用途では出力のみ。

singleUserBotDm

boolean

省略可。スペースが Chat 用アプリと 1 人のユーザー間の DM かどうか。

threaded
(deprecated)

boolean

出力専用。非推奨: 代わりに、spaceThreadingState を使用してください。このスペースでメッセージがスレッド化されているかどうか。

displayName

string

省略可。スペースの表示名。spaceTypeSPACEスペースを作成する場合は必須です。スペースの作成時または displayName の更新時に ALREADY_EXISTS というエラー メッセージが表示された場合は、別の displayName を試してください。Google Workspace 組織内の既存のスペースで、この表示名がすでに使用されている可能性があります。

ダイレクト メッセージの場合、このフィールドは空の場合があります。

最大 128 文字に対応します。

externalUserAllowed

boolean

省略可。変更不可。このスペースで Google Chat のユーザーをメンバーとして許可するかどうか。Google Workspace 組織でスペースを作成する際の入力。次の条件でスペースを作成する場合は、このフィールドを省略します。

  • 認証されたユーザーは一般ユーザー向けアカウント(管理対象外のユーザー アカウント)を使用します。一般ユーザー向けアカウントで作成されたスペースでは、デフォルトですべての Google Chat ユーザーが許可されます。

既存のスペースの場合、このフィールドは出力専用です。

spaceThreadingState

enum (SpaceThreadingState)

出力専用。Chat スペースのスレッドの状態。

spaceDetails

object (SpaceDetails)

省略可。説明やルールなど、スペースの詳細。

spaceHistoryState

enum (HistoryState)

省略可。このスペースのメッセージとスレッドのメッセージ履歴の状態。

importMode

boolean

省略可。このスペースが Import Mode で作成されたかどうか。Google Workspace へのデータ移行の一部として作成されたかどうか。スペースのインポート中は、インポートが完了するまでユーザーに表示されません。

Import Mode でスペースを作成するには、ユーザー認証が必要です。

createTime

string (Timestamp format)

省略可。変更不可。Chat で作成されたスペースの場合、スペースが作成された日時。このフィールドは、インポート モードのスペースで使用される場合を除き、出力専用です。

インポート モードのスペースの場合は、元の作成時間を保持するために、このフィールドをソースでスペースが作成されたときの過去のタイムスタンプに設定します。

spaceTypeGROUP_CHAT または SPACE の場合にのみ出力に設定されます。

lastActiveTime

string (Timestamp format)

出力専用。スペース内の最後のメッセージのタイムスタンプ。

adminInstalled

boolean

出力専用。Chat 用アプリを含むダイレクト メッセージ(DM)スペースの場合、スペースが Google Workspace 管理者によって作成されたかどうか。管理者は、組織内のユーザーに代わって、Chat 用アプリとのダイレクト メッセージをインストールして設定できます。

管理者によるインストールをサポートするには、Chat 用アプリにダイレクト メッセージ機能が必要です。

membershipCount

object (MembershipCount)

出力専用。メンバータイプ別にグループ化された参加メンバーシップの数。spaceTypeSPACEDIRECT_MESSAGEGROUP_CHAT の場合に設定されます。

accessSettings

object (AccessSettings)

省略可。スペースのアクセス設定を指定します。spaceTypeSPACE の場合にのみ入力されます。

spaceUri

string

出力専用。ユーザーがスペースにアクセスするための URI。

importModeExpireTime

string (Timestamp format)

出力専用。インポート モードのままの場合に、システムによってスペースが自動的に削除される日時。

インポート モードで作成された各スペースは、spaces.completeImport を使用して、この有効期限が切れる前にこのモードを終了する必要があります。

このフィールドは、インポート モードで作成されたスペースに対してのみ入力されます。

customer

string

省略可。変更不可。スペースのドメインの顧客 ID。アプリ認証を使用してスペースを作成し、SpaceTypeSPACE の場合にのみ必須です。それ以外の場合は設定しないでください。

形式は customers/{customer} です。ここで、customerAdmin SDK の顧客リソースid です。限定公開アプリでは、customers/my_customer エイリアスを使用して、アプリと同じ Google Workspace 組織にスペースを作成することもできます。

DM の場合、このフィールドは入力されません。

共用体フィールド space_permission_settings。スペースの権限設定を表します。space_typeSPACE の場合にのみ入力されます。space_permission_settings は次のいずれかになります。
predefinedPermissionSettings

enum (PredefinedPermissionSettings)

省略可。入力のみのスペースの権限設定を事前に定義します。スペースの作成時にのみ入力します。このフィールドが設定されていない場合、コラボレーション スペースが作成されます。スペースを作成すると、PermissionSettings フィールドに設定が入力されます。

事前定義された権限設定の設定は、以下をサポートしています。

permissionSettings

object (PermissionSettings)

省略可。既存のスペースのスペース権限設定。正確なスペースの権限設定を更新するための入力。既存の権限設定が置き換えられます。出力には、現在の権限設定が表示されます。

権限設定の読み取りと更新は、次のものをサポートしています。

タイプ

非推奨: 代わりに、SpaceType を使用してください。

列挙型
TYPE_UNSPECIFIED 予約済み。
ROOM 2 人以上の人間による会話。
DM 人間と Chat 用アプリ間の 1 対 1 のダイレクト メッセージ。すべてのメッセージがフラットです。なお、このデータには 2 人のユーザー間のダイレクト メッセージは含まれません。

SpaceType

スペースのタイプ。スペースの作成または更新時に必要です。その他の用途では出力のみ。

列挙型
SPACE_TYPE_UNSPECIFIED 予約済み。
SPACE メッセージの送信、ファイルの共有、共同編集を行う場所。SPACE には Chat 用アプリを含めることができます。
GROUP_CHAT 3 人以上のユーザー間のグループ会話。GROUP_CHAT には Chat 用アプリを含めることができます。
DIRECT_MESSAGE 2 人のユーザー間、またはユーザーと Chat 用アプリ間の 1 対 1 のメッセージ。

SpaceThreadingState

Chat スペースのスレッド状態のタイプを指定します。

列挙型
SPACE_THREADING_STATE_UNSPECIFIED 予約済み。
THREADED_MESSAGES メッセージ スレッドをサポートする名前付きスペース。メッセージに返信するときに、スレッド内で返信すると、返信が元のメッセージのコンテキスト内に保持されます。
GROUPED_MESSAGES 会話がトピック別に整理された名前付きスペース。トピックとそれに対する返信がグループ化されます。
UNTHREADED_MESSAGES 2 人間のダイレクト メッセージ(DM)と、3 人以上のグループ会話。

SpaceDetails

説明やルールなど、スペースの詳細。

JSON 表現
{
  "description": string,
  "guidelines": string
}
フィールド
description

string

省略可。スペースの説明。たとえば、スペースのディスカッション トピック、機能の目的、参加者について説明します。

最大 150 文字に対応します。

guidelines

string

省略可。スペースのルール、期待されること、エチケット。

最大 5,000 文字に対応します。

HistoryState

メッセージとスペースの履歴の状態。メッセージと会話スレッドが作成後に保持される期間を指定します。

列挙型
HISTORY_STATE_UNSPECIFIED デフォルト値。使用しないでください。
HISTORY_OFF 履歴がオフになっています。メッセージとスレッドは 24 時間保持されます
HISTORY_ON 履歴がオンになっています。組織の Vault の保持ルールで、メッセージとスレッドの保持期間を指定します。

MembershipCount

スペースのメンバーシップの数をカテゴリ別にグループ化したものを表します。

JSON 表現
{
  "joinedDirectHumanUserCount": integer,
  "joinedGroupCount": integer
}
フィールド
joinedDirectHumanUserCount

integer

出力専用。スペースに直接参加したユーザーの数。参加したグループのメンバーシップによって参加したユーザーはカウントされません。

joinedGroupCount

integer

出力専用。スペースに直接参加しているすべてのグループの数。

AccessSettings

スペースのアクセス設定を表します。

JSON 表現
{
  "accessState": enum (AccessState),
  "audience": string
}
フィールド
accessState

enum (AccessState)

出力専用。スペースのアクセス状態を示します。

audience

string

省略可。スペースを検出、参加、プレビューできる対象ユーザーのリソース名。設定されていない場合、スペースに個別に招待または追加されたユーザーまたは Google グループのみがアクセスできます。詳しくは、対象グループにスペースを見つけてもらうをご覧ください。

形式: audiences/{audience}

Google Workspace 組織のデフォルトの対象ユーザーを使用するには、audiences/default に設定します。

対象ユーザーの読み取りは、次の機能をサポートしています。

アプリ認証chat.bot スコープを使用する場合、このフィールドは入力されません。

対象ユーザーを設定するには、ユーザー認証が必要です。

AccessState

スペースのアクセス状態を表します。

列挙型
ACCESS_STATE_UNSPECIFIED アクセス状態が不明か、この API でサポートされていません。
PRIVATE スペースを検出してアクセスできるのは、他のユーザーまたは Google Workspace 管理者によって個別に追加または招待されたユーザーまたは Google グループのみです。
DISCOVERABLE

スペースの管理者が、対象ユーザーにスペースへのアクセス権を付与している。スペースに個別に追加または招待されたユーザーや Google グループも、スペースを見つけてアクセスできます。詳しくは、特定のユーザーがスペースを見つけられるようにするをご覧ください。

検索可能なスペースを作成するには、ユーザー認証が必要です。

PredefinedPermissionSettings

名前付きスペースの作成時にのみ指定できる事前定義された権限設定。今後、他の設定が追加される可能性があります。名前付きスペースの権限設定について詳しくは、スペースについてをご覧ください。

列挙型
PREDEFINED_PERMISSION_SETTINGS_UNSPECIFIED 指定なし。使用しないでください。
COLLABORATION_SPACE スペースをコラボレーション スペースにして、すべてのメンバーがメッセージを投稿できるようにする設定。
ANNOUNCEMENT_SPACE スペースを、スペースの管理者のみがメッセージを投稿できるお知らせスペースにする設定。

PermissionSettings

既存の名前付きスペースを更新するときに指定できる権限設定

スペースの作成時に権限設定を行うには、リクエストで PredefinedPermissionSettings フィールドを指定します。

JSON 表現
{
  "manageMembersAndGroups": {
    object (PermissionSetting)
  },
  "modifySpaceDetails": {
    object (PermissionSetting)
  },
  "toggleHistory": {
    object (PermissionSetting)
  },
  "useAtMentionAll": {
    object (PermissionSetting)
  },
  "manageApps": {
    object (PermissionSetting)
  },
  "manageWebhooks": {
    object (PermissionSetting)
  },
  "postMessages": {
    object (PermissionSetting)
  },
  "replyMessages": {
    object (PermissionSetting)
  }
}
フィールド
manageMembersAndGroups

object (PermissionSetting)

省略可。スペースのメンバーとグループを管理するための設定。

modifySpaceDetails

object (PermissionSetting)

省略可。スペースの名前、アバター、説明、ガイドラインを更新するための設定。

toggleHistory

object (PermissionSetting)

省略可。スペースの履歴のオンとオフを切り替える設定。

useAtMentionAll

object (PermissionSetting)

省略可。スペースで @all を使用するための設定。

manageApps

object (PermissionSetting)

省略可。スペース内のアプリを管理するための設定。

manageWebhooks

object (PermissionSetting)

省略可。スペース内の Webhook を管理するための設定。

postMessages

object (PermissionSetting)

出力専用。スペースでのメッセージの投稿に関する設定。

replyMessages

object (PermissionSetting)

省略可。スペース内のメッセージに返信する設定。

PermissionSetting

スペースの権限設定を表します。

JSON 表現
{
  "managersAllowed": boolean,
  "membersAllowed": boolean
}
フィールド
managersAllowed

boolean

省略可。スペースの管理者がこの権限を持っているかどうか。

membersAllowed

boolean

省略可。管理者以外のメンバーにこの権限があるかどうか。

メソッド

completeImport

指定されたスペースのインポート プロセスを完了し、ユーザーに表示できるようにします。

create

スペースを作成します。

delete

名前付きスペースを削除します。

findDirectMessage

指定されたユーザーとの既存のダイレクト メッセージを返します。

get

スペースに関する詳細情報を返します。

list

呼び出し元がメンバーになっているスペースを一覧表示します。

patch

スペースを更新します。
管理者の検索に基づいて、Google Workspace 組織内のスペースのリストを返します。

setup

スペースを作成し、指定されたユーザーを追加します。