REST Resource: spaces

Recurso: Space

Um espaço no Google Chat. Os espaços são conversas entre dois ou mais usuários ou mensagens individuais entre um usuário e um app do Chat.

Representação 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,
  "sessionState": enum (SpaceSessionState),
  "sessionEnableTime": string,
  "importModeExpireTime": string,
  "customer": string,

  "predefinedPermissionSettings": enum (PredefinedPermissionSettings),
  "permissionSettings": {
    object (PermissionSettings)
  }
}
Campos
name

string

Identificador. Nome do recurso do espaço.

Formato: spaces/{space}

Em que {space} representa o ID atribuído pelo sistema ao espaço. Para conseguir o ID do espaço, chame o método spaces.list() ou use o URL do espaço. Por exemplo, se o URL do espaço for https://mail.google.com/mail/u/0/#chat/space/AAAAAAAAA, o ID será AAAAAAAAA.

type
(deprecated)

enum (Type)

Apenas saída. Descontinuado: use spaceType. O tipo de um espaço.

spaceType

enum (SpaceType)

Opcional. O tipo de espaço. Obrigatório ao criar um espaço ou atualizar o tipo de um espaço. Somente saída para outro uso.

singleUserBotDm

boolean

Opcional. Se o espaço é uma mensagem direta entre um app do Chat e uma única pessoa.

threaded
(deprecated)

boolean

Apenas saída. Descontinuado: use spaceThreadingState. Se as mensagens são agrupadas em conversas neste espaço.

displayName

string

Opcional. O nome de exibição do espaço. Obrigatório ao criar um espaço com um spaceType de SPACE. Se você receber a mensagem de erro ALREADY_EXISTS ao criar um espaço ou atualizar o displayName, tente usar outro displayName. Um espaço na organização do Google Workspace pode já estar usando esse nome de exibição.

Para mensagens diretas, esse campo pode estar vazio.

Aceita até 128 caracteres.

externalUserAllowed

boolean

Opcional. Imutável. Se esse espaço permite que qualquer usuário do Google Chat seja um participante. Entrada ao criar um espaço em uma organização do Google Workspace. Omita esse campo ao criar espaços nas seguintes condições:

  • O usuário autenticado usa uma conta pessoal (conta de usuário não gerenciada). Por padrão, um espaço criado por uma conta pessoal permite qualquer usuário do Google Chat.

Para espaços atuais, esse campo é somente de saída.

spaceThreadingState

enum (SpaceThreadingState)

Apenas saída. O estado das conversas no espaço do Chat.

spaceDetails

object (SpaceDetails)

Opcional. Detalhes sobre o espaço, incluindo descrição e regras.

spaceHistoryState

enum (HistoryState)

Opcional. O estado do histórico de mensagens e conversas neste espaço.

importMode

boolean

Opcional. Se este espaço foi criado no Import Mode como parte de uma migração de dados para o Google Workspace. Durante a importação, os espaços não ficam visíveis para os usuários até que o processo seja concluído.

Para criar um espaço no Import Mode, é necessário fazer a autenticação do usuário.

createTime

string (Timestamp format)

Opcional. Imutável. Para espaços criados no Chat, o horário em que o espaço foi criado. Este campo é somente saída, exceto quando usado em espaços de modo de importação.

Para espaços no modo de importação, defina esse campo como o carimbo de data/hora histórico em que o espaço foi criado na origem para preservar o horário de criação original.

Preenchido na saída apenas quando spaceType é GROUP_CHAT ou SPACE.

lastActiveTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora da última mensagem no espaço.

adminInstalled

boolean

Apenas saída. Para espaços de mensagem direta (DM) com um app do Chat, se o espaço foi criado por um administrador do Google Workspace. Os administradores podem instalar e configurar uma mensagem direta com um app do Chat em nome dos usuários da organização.

Para que o administrador possa instalar o app do Chat, ele precisa ter o recurso de mensagens diretas.

membershipCount

object (MembershipCount)

Apenas saída. A contagem de assinaturas agrupadas por tipo de membro. Preenchido quando spaceType é SPACE, DIRECT_MESSAGE ou GROUP_CHAT.

accessSettings

object (AccessSettings)

Opcional. Especifica a configuração de acesso do espaço. Preenchido apenas quando spaceType é SPACE.

spaceUri

string

Apenas saída. O URI para um usuário acessar o espaço.

sessionState

enum (SpaceSessionState)

Apenas saída. Estado da sessão do espaço.

sessionEnableTime

string (Timestamp format)

Apenas saída. Carimbo de data/hora em que o status de suporte à sessão do espaço se torna compatível. Não definido se o espaço não tiver o suporte à sessão ativado.

importModeExpireTime

string (Timestamp format)

Apenas saída. O horário em que o espaço será excluído automaticamente pelo sistema se permanecer no modo de importação.

Cada espaço criado no modo de importação precisa sair desse modo antes do prazo de validade usando spaces.completeImport.

Esse campo só é preenchido para espaços criados com o modo de importação.

customer

string

Opcional. Imutável. O ID de cliente do domínio do espaço. Obrigatório apenas ao criar um espaço com autenticação de app e SpaceType é SPACE. Caso contrário, não deve ser definido.

No formato customers/{customer}, em que customer é o id do recurso do cliente do SDK Admin. Os apps particulares também podem usar o alias customers/my_customer para criar o espaço na mesma organização do Google Workspace que o app.

Esse campo não é preenchido para mensagens diretas (DMs) ou quando o espaço é criado por usuários que não são do Google Workspace.

Representa as configurações de permissão de um espaço. Preenchido apenas quando space_type é SPACE. Confira a seguir uma lista de campos mutuamente exclusivos. No máximo um dos campos será definido em uma resposta:
predefinedPermissionSettings

enum (PredefinedPermissionSettings)

Opcional. Somente entrada. Configurações predefinidas de conjunto de permissões de espaço, inseridas apenas ao criar um espaço. Se o campo não for definido, um espaço de colaboração será criado. Depois que você cria o espaço, as configurações são preenchidas no campo PermissionSettings.

A definição de configurações de conjunto de permissões predefinidas é compatível com:

permissionSettings

object (PermissionSettings)

Opcional. Configurações de permissão para espaços atuais. Entrada para atualizar as configurações exatas de conjunto de permissões do espaço, em que as configurações de conjunto de permissões atuais são substituídas. A saída lista as configurações de permissão atuais.

A leitura e a atualização das configurações de permissão são compatíveis com:

Fim dos campos mutuamente exclusivos.

Tipo

Descontinuado: use SpaceType.

Tipos enumerados
TYPE_UNSPECIFIED Reservado.
ROOM Conversas entre dois ou mais humanos.
DM Mensagem direta individual entre um humano e um app do Chat, em que todas as mensagens são simples. Isso não inclui mensagens diretas entre duas pessoas.

SpaceType

O tipo de espaço. Obrigatório ao criar ou atualizar um espaço. Somente saída para outro uso.

Tipos enumerados
SPACE_TYPE_UNSPECIFIED Reservado.
SPACE Um lugar onde as pessoas enviam mensagens, compartilham arquivos e colaboram. Um SPACE pode incluir apps do Chat.
GROUP_CHAT Conversas em grupo entre 3 ou mais pessoas. Um GROUP_CHAT pode incluir apps do Chat.
DIRECT_MESSAGE Mensagens individuais entre duas pessoas ou entre uma pessoa e um app do Chat.

SpaceThreadingState

Especifica o tipo de estado de conversas agrupadas no espaço do Chat.

Tipos enumerados
SPACE_THREADING_STATE_UNSPECIFIED Reservado.
THREADED_MESSAGES Espaços que aceitam conversas agrupadas. Quando os usuários respondem a uma mensagem, eles podem fazer isso na conversa, o que mantém a resposta no contexto da mensagem original.
GROUPED_MESSAGES Espaços com nome em que a conversa é organizada por tema. Os tópicos e as respostas são agrupados.
UNTHREADED_MESSAGES

Espaços que não aceitam conversas em sequência. Esse estado de conversas em espaços é usado apenas em casos especiais, incluindo:

  • Chat contínuo da reunião em que as conversas estão desativadas intencionalmente.
  • Conversas em grupo legadas criadas antes de 2022.

SpaceDetails

Detalhes sobre o espaço, incluindo descrição e regras.

Representação JSON
{
  "description": string,
  "guidelines": string
}
Campos
description

string

Opcional. Uma descrição do espaço. Por exemplo, descreva o tema de discussão, o propósito funcional ou os participantes do espaço.

Aceita até 4.096 caracteres.

guidelines

string

Opcional. As regras, expectativas e etiqueta do espaço.

Aceita até 5.000 caracteres.

HistoryState

O estado do histórico de mensagens e espaços. Especifica por quanto tempo as mensagens e as conversas são mantidas após a criação.

Tipos enumerados
HISTORY_STATE_UNSPECIFIED Valor padrão. Não use.
HISTORY_OFF Histórico desativado. As mensagens e conversas são mantidas por 24 horas.
HISTORY_ON Histórico ativado. As regras de retenção do Vault da organização especificam por quanto tempo as mensagens e as conversas são mantidas.

MembershipCount

Representa a contagem de assinaturas de um espaço, agrupadas em categorias.

Representação JSON
{
  "joinedDirectHumanUserCount": integer,
  "joinedGroupCount": integer
}
Campos
joinedDirectHumanUserCount

integer

Apenas saída. Contagem de usuários humanos que entraram diretamente no espaço, sem contar os usuários que entraram por serem membros de um grupo que entrou.

joinedGroupCount

integer

Apenas saída. Contagem de todos os grupos que entraram diretamente no espaço.

AccessSettings

Representa a configuração de acesso do espaço.

Representação JSON
{
  "accessState": enum (AccessState),
  "audience": string,
  "accessPermissionSettings": {
    object (AccessPermissionSettings)
  }
}
Campos
accessState

enum (AccessState)

Apenas saída. Indica o estado de acesso do espaço.

audience

string

Opcional. O nome do recurso do público-alvo que pode descobrir o espaço, participar dele e visualizar as mensagens. Se não for definido, apenas os usuários ou Grupos do Google que foram convidados ou adicionados individualmente ao espaço poderão acessá-lo. Veja mais detalhes em Tornar um espaço detectável para um público-alvo.

Formato: audiences/{audience}

Para usar o público-alvo padrão da organização do Google Workspace, defina como audiences/default.

A leitura do público-alvo é compatível com:

Esse campo não é preenchido ao usar o escopo chat.bot com a autenticação do app.

A definição do público-alvo requer a autenticação do usuário.

accessPermissionSettings

object (AccessPermissionSettings)

Opcional. Acesse as configurações de permissão do espaço.

Para definir o público-alvo ao criar um espaço, especifique o campo accessSettings.audience na solicitação.

AccessState

Representa o estado de acesso do espaço.

Tipos enumerados
ACCESS_STATE_UNSPECIFIED O estado de acesso é desconhecido ou não é compatível com esta API.
PRIVATE Apenas usuários ou Grupos do Google que foram adicionados ou convidados individualmente por outros usuários ou administradores do Google Workspace podem encontrar e acessar o espaço.
DISCOVERABLE

Um administrador do espaço concedeu acesso a um público-alvo. Os usuários ou Grupos do Google que foram adicionados ou convidados individualmente para o espaço também podem encontrá-lo e acessá-lo. Para saber mais, consulte Tornar um espaço detectável para usuários específicos.

Para criar espaços visíveis, é necessário fazer a autenticação do usuário.

AccessPermissionSettings

Acessar as configurações de permissão de um espaço.

Representação JSON
{
  "discoverSpaceSetting": {
    object (AccessPermissionSetting)
  },
  "joinSpaceSetting": {
    object (AccessPermissionSetting)
  },
  "viewSpaceMembershipSetting": {
    object (AccessPermissionSetting)
  }
}
Campos
discoverSpaceSetting

object (AccessPermissionSetting)

Opcional. Configuração de permissão de acesso para descobrir o espaço.

joinSpaceSetting

object (AccessPermissionSetting)

Opcional. Configuração de permissão de acesso para participar do espaço.

viewSpaceMembershipSetting

object (AccessPermissionSetting)

Opcional. Configuração de permissão de acesso para visualizar os participantes do espaço. Precisa ser especificado com PermissionSettings.view_space_membership na máscara de atualização e no corpo da solicitação ao atualizar quem pode ver os participantes do espaço. Ao conceder acesso de visualização a um público-alvo, você também precisa conceder PermissionSettings.view_space_membership a todos os membros na mesma solicitação. Para remover um público-alvo (por exemplo, para restringir o acesso de visualização apenas aos administradores ou administradores assistentes do espaço), especifique um AccessPermissionSetting vazio (sem principals).

AccessPermissionSetting

Uma configuração de permissão de acesso.

Representação JSON
{
  "principals": [
    {
      object (Principal)
    }
  ]
}
Campos
principals[]

object (Principal)

Opcional. Lista não ordenada. Principais permitidos para esta permissão.

Principal

Um principal que representa uma entidade com acesso concedido.

Representação JSON
{

  "audience": {
    object (Audience)
  }
}
Campos
O tipo de principal. Confira a seguir uma lista de campos mutuamente exclusivos. No máximo um dos campos será definido em uma resposta:
audience

object (Audience)

Um público-alvo.

Fim dos campos mutuamente exclusivos.

Público-alvo

Um público-alvo no Google Chat. Um público-alvo representa um grupo de usuários em uma organização do Google Workspace, definido por um administrador. Os públicos-alvo são usados para definir as configurações de acesso e visibilidade de recursos, como tornar um espaço detectável para um grupo específico de usuários.

Para mais detalhes, consulte Públicos-alvo e Tornar um espaço detectável para um público-alvo.

Representação JSON
{
  "name": string
}
Campos
name

string

O nome do recurso do público-alvo que pode descobrir ou participar do espaço. Veja mais detalhes em Tornar um espaço detectável para um público-alvo. Formato: audiences/{audience}

Para usar o público-alvo padrão da organização do Google Workspace, defina como audiences/default.

PredefinedPermissionSettings

Configurações de permissão predefinidas que só podem ser especificadas ao criar um espaço com nome. Mais configurações poderão ser adicionadas no futuro. Para mais detalhes sobre as configurações de permissão para espaços com nome, consulte Saiba mais sobre os espaços.

Tipos enumerados
PREDEFINED_PERMISSION_SETTINGS_UNSPECIFIED Não especificado. Não use.
COLLABORATION_SPACE Configuração para tornar o espaço um local de colaboração em que todos os participantes podem postar mensagens.
ANNOUNCEMENT_SPACE Configuração para transformar o espaço em um espaço de avisos, onde apenas os administradores podem postar mensagens.

PermissionSettings

Configurações de permissão que podem ser especificadas ao atualizar um espaço com nome.

Para definir as configurações de permissão ao criar um espaço, especifique o campo PredefinedPermissionSettings na solicitação.

Representação 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)
  },
  "viewSpaceMembership": {
    object (PermissionSetting)
  }
}
Campos
manageMembersAndGroups

object (PermissionSetting)

Opcional. Configuração para gerenciar participantes e grupos em um espaço.

modifySpaceDetails

object (PermissionSetting)

Opcional. Configuração para atualizar o nome, o avatar, a descrição e as diretrizes do espaço.

toggleHistory

object (PermissionSetting)

Opcional. Configuração para ativar e desativar o histórico do espaço.

useAtMentionAll

object (PermissionSetting)

Opcional. Configuração para usar @todos em um espaço.

manageApps

object (PermissionSetting)

Opcional. Configuração para gerenciar apps em um espaço.

manageWebhooks

object (PermissionSetting)

Opcional. Configuração para gerenciar webhooks em um espaço.

postMessages

object (PermissionSetting)

Apenas saída. Configuração para postar mensagens em um espaço.

replyMessages

object (PermissionSetting)

Opcional. Configuração para responder a mensagens em um espaço.

viewSpaceMembership

object (PermissionSetting)

Opcional. Configuração para ver os participantes do espaço. Precisa ser especificado com AccessPermissionSettings.view_space_membership_setting na máscara de atualização e no corpo da solicitação ao atualizar quem pode ver os participantes do espaço. Ao restringir o acesso de visualização a papéis específicos (por exemplo, apenas administradores de espaço ou administradores assistentes), especifique as permissões de papel desejadas aqui e forneça um AccessPermissionSettings.view_space_membership_setting vazio na mesma solicitação. Se um público-alvo estiver configurado em AccessPermissionSettings.view_space_membership_setting, essa configuração precisará ser concedida a todos os membros.

PermissionSetting

Representa uma configuração de permissão de espaço.

Representação JSON
{
  "managersAllowed": boolean,
  "membersAllowed": boolean,
  "assistantManagersAllowed": boolean
}
Campos
managersAllowed

boolean

Opcional. Se os proprietários do espaço (ROLE_MANAGER) têm essa permissão.

membersAllowed

boolean

Opcional. Se os participantes básicos do espaço (ROLE_MEMBER) têm essa permissão.

assistantManagersAllowed

boolean

Opcional. Se os administradores do espaço (ROLE_ASSISTANT_MANAGER) têm essa permissão.

SpaceSessionState

Estado da sessão do espaço.

Tipos enumerados
SPACE_SESSION_STATE_UNSPECIFIED Não especificado. Não use.
NOT_SUPPORTED O espaço não tem suporte para sessões.
THREAD O Space é compatível com sessões baseadas em conversas.

Métodos

completeImport

Conclui o processo de importação do espaço especificado e o torna visível para os usuários.

create

Cria um espaço.

delete

Exclui um espaço com nome.

findDirectMessage

Retorna a mensagem direta atual com o usuário especificado.

findGroupChats

Retorna todos os espaços com spaceType == GROUP_CHAT, em que as participações humanas contêm exatamente o usuário que fez a chamada e os usuários especificados em FindGroupChatsRequest.users.

get

Retorna detalhes sobre um espaço.

list

Lista os espaços em que o autor da chamada é participante.

patch

Atualiza um espaço.
Retorna uma lista de espaços em uma organização do Google Workspace.

setup

Cria um espaço e adiciona usuários especificados a ele.