En esta guía, se explica cómo crear un espacio con nombre usando el método create()
del recurso Space
de la API de Google Chat.
Un espacio con nombre (en el que spaceType
es SPACE
) es un lugar donde las personas envían mensajes, comparten archivos y colaboran.
Los espacios con nombre pueden incluir apps de Chat. Los espacios con nombre tienen administradores que pueden aplicar parámetros de configuración administrativos, descripciones, y agregar o quitar personas y apps.
Para crear diferentes tipos de espacios de Chat (incluidos los mensajes directos o los mensajes grupales), usa el método setUp()
en el recurso Space
para crear el espacio y agregar miembros al mismo tiempo. Para obtener más información, consulta Cómo configurar un espacio.
Después de crear un espacio con nombre, el único miembro del espacio es el usuario autenticado. Para agregar miembros al espacio, llama al método create()
en el recurso Membership
para cada persona o app que quieras agregar. También puedes usar el método setUp()
para crear un espacio con nombre y agregar miembros al mismo tiempo.
Requisitos previos
Node.js
- Una cuenta de Google Workspace para empresas o Enterprise con acceso a Google Chat
- Configura tu entorno:
- Crea un proyecto de Google Cloud
- Configura la pantalla de consentimiento de OAuth.
- Habilita y configura la API de Google Chat con un nombre, un ícono y una descripción para tu app de Chat.
- Instala la biblioteca cliente de Cloud de Node.js.
- Crea credenciales de acceso según la forma en que desees autenticar tu solicitud a la API de Google Chat:
- Para autenticarte como usuario de Chat, crea credenciales de ID de cliente de OAuth y guárdalas como un archivo JSON llamado
credentials.json
en tu directorio local. - Para autenticarte como la app de Chat, crea credenciales de cuenta de servicio y guárdalas como un archivo JSON llamado
credentials.json
.
- Para autenticarte como usuario de Chat, crea credenciales de ID de cliente de OAuth y guárdalas como un archivo JSON llamado
- Elige un alcance de autorización según si deseas autenticarte como usuario o como la app de Chat.
Python
- Una cuenta de Google Workspace para empresas o Enterprise con acceso a Google Chat
- Configura tu entorno:
- Crea un proyecto de Google Cloud
- Configura la pantalla de consentimiento de OAuth.
- Habilita y configura la API de Google Chat con un nombre, un ícono y una descripción para tu app de Chat.
- Instala la biblioteca cliente de Cloud de Python.
- Crea credenciales de acceso según la forma en que desees autenticar tu solicitud a la API de Google Chat:
- Para autenticarte como usuario de Chat, crea credenciales de ID de cliente de OAuth y guárdalas como un archivo JSON llamado
credentials.json
en tu directorio local. - Para autenticarte como la app de Chat, crea credenciales de cuenta de servicio y guárdalas como un archivo JSON llamado
credentials.json
.
- Para autenticarte como usuario de Chat, crea credenciales de ID de cliente de OAuth y guárdalas como un archivo JSON llamado
- Elige un alcance de autorización según si deseas autenticarte como usuario o como la app de Chat.
Java
- Una cuenta de Google Workspace para empresas o Enterprise con acceso a Google Chat
- Configura tu entorno:
- Crea un proyecto de Google Cloud
- Configura la pantalla de consentimiento de OAuth.
- Habilita y configura la API de Google Chat con un nombre, un ícono y una descripción para tu app de Chat.
- Instala la biblioteca cliente de Cloud de Java.
- Crea credenciales de acceso según la forma en que desees autenticar tu solicitud a la API de Google Chat:
- Para autenticarte como usuario de Chat, crea credenciales de ID de cliente de OAuth y guárdalas como un archivo JSON llamado
credentials.json
en tu directorio local. - Para autenticarte como la app de Chat, crea credenciales de cuenta de servicio y guárdalas como un archivo JSON llamado
credentials.json
.
- Para autenticarte como usuario de Chat, crea credenciales de ID de cliente de OAuth y guárdalas como un archivo JSON llamado
- Elige un alcance de autorización según si deseas autenticarte como usuario o como la app de Chat.
Apps Script
- Una cuenta de Google Workspace para empresas o Enterprise con acceso a Google Chat
- Configura tu entorno:
- Crea un proyecto de Google Cloud
- Configura la pantalla de consentimiento de OAuth.
- Habilita y configura la API de Google Chat con un nombre, un ícono y una descripción para tu app de Chat.
- Crea un proyecto independiente de Apps Script y activa el servicio de Chat avanzado.
- En esta guía, debes usar la autenticación de usuario o de app. Para autenticarte como la app de Chat, crea credenciales de cuenta de servicio. Para conocer los pasos, consulta Autentícate y autoriza como una app de Google Chat.
- Elige un alcance de autorización según si deseas autenticarte como usuario o como la app de Chat.
Crea un espacio con nombre como usuario
Para crear un espacio con nombre con autenticación de usuario, pasa lo siguiente en tu solicitud:
- Especifica el alcance de autorización
chat.spaces.create
ochat.spaces
. - Llama al método
CreateSpace()
y pasaspace
como una instancia deSpace
con los siguientes campos:spaceType
está establecido enSPACE
.displayName
establecido en el nombre del espacio visible para el usuario- De manera opcional, establece otros atributos, como los siguientes:
spaceDetails
: Una descripción visible para el usuario y un conjunto de lineamientos para el espacio.predefinedPermissionSettings
: Permisos predefinidos para el espacio. Por ejemplo, puedes configurarlo para que todos los miembros o solo los administradores del espacio puedan publicar mensajes.
Sigue estos pasos para crear un espacio con nombre:
Node.js
Python
Java
Apps Script
Crea un espacio con nombre como una app de Chat
La autenticación de la app requiere la aprobación del administrador una sola vez.
Para invitar o agregar un usuario a un espacio con autenticación de la app, pasa lo siguiente en tu solicitud:
- Especifica el alcance de autorización de
chat.app.spaces.create
ochat.app.spaces
. - Llama al método
create
en el recursoSpace
. - Configura
spaceType
comoSPACE
. - Establece
displayName
en el nombre del espacio visible para el usuario. En el siguiente ejemplo,displayName
se establece enAPI-made
. - Especifica el ID de cliente del dominio de Google Workspace con el campo
customer
. - De manera opcional, puedes establecer otros atributos del espacio, como
spaceDetails
(una descripción visible para el usuario y un conjunto de lineamientos para el espacio).
Crea una clave de API
Para llamar a un método de la API de la versión preliminar para desarrolladores, debes usar una versión preliminar para desarrolladores no pública del documento de descubrimiento de la API. Para autenticar la solicitud, debes pasar una clave de API.
Para crear la clave de API, abre el proyecto de Google Cloud de tu app y haz lo siguiente:
- En la consola de Google Cloud, ve a Menú > APIs y servicios > Credenciales.
- Haz clic en Crear credenciales > Clave de API.
- Se mostrará tu nueva clave de API.
- Haz clic en Copiar para copiar tu clave de API y usarla en el código de tu app. La clave de API también se puede encontrar en la sección "Claves de API" de las credenciales de tu proyecto.
- Haz clic en Restringir clave para actualizar la configuración avanzada y limitar el uso de tu clave de API. Para obtener más detalles, consulta Aplica restricciones de claves de API.
Escribe un script que llame a la API de Chat
Sigue estos pasos para crear un espacio con nombre:
Python
- En tu directorio de trabajo, crea un archivo llamado
chat_space_create_named_app.py
. Incluye el siguiente código en
chat_space_create_named_app.py
:from google.oauth2 import service_account from apiclient.discovery import build # Define your app's authorization scopes. # When modifying these scopes, delete the file token.json, if it exists. SCOPES = ["https://www.googleapis.com/auth/chat.app.spaces.create"] def main(): ''' Authenticates with Chat API using app authentication, then creates a Chat space. ''' # Specify service account details. creds = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # Build a service endpoint for Chat API. chat = build('chat', 'v1', credentials=creds, discoveryServiceUrl='https://chat.googleapis.com/$discovery/rest?version=v1&labels=DEVELOPER_PREVIEW&key=API_KEY') # Use the service endpoint to call Chat API. result = chat.spaces().create( # Details about the space to create. body = { # To create a named space, set spaceType to SPACE. 'spaceType': 'SPACE', # The user-visible name of the space. 'displayName': 'API-made', # The customer ID of the Workspace domain. 'customer': 'CUSTOMER' } ).execute() # Prints details about the created space. print(result) if __name__ == '__main__': main()
En el código, reemplaza lo siguiente:
API_KEY
: Es la clave de API que creaste para compilar el extremo de servicio de la API de Chat.CUSTOMER
: Es el ID de cliente del dominio del espacio en el formatocustomer/{customer}
, en el que{customer}
es elID
del recurso del cliente del SDK de Admin. Para crear un espacio en la misma organización de Google Workspace que la app de Chat, usacustomers/my_customer
.
En tu directorio de trabajo, compila y ejecuta la muestra:
python3 chat_space_create_named_app.py
Abre el espacio en Google Chat
Para navegar al espacio, usa el ID de recurso del espacio para compilar su URL. Puedes encontrar el ID del recurso en el objeto name
del cuerpo de la respuesta de Google Chat. Por ejemplo, si el name
de tu espacio es spaces/1234567
, puedes navegar al espacio con la siguiente URL: https://mail.google.com/chat/u/0/#chat/space/1234567
.
Limitaciones y consideraciones
- Cuando creas un espacio con la autenticación de la app, la app de Chat que se autentica se agrega como miembro del espacio, pero, a diferencia de la autenticación de usuarios, no como administrador del espacio. De forma predeterminada, todos los miembros del espacio pueden quitar la app de Chat. Para permitir que solo los administradores del espacio quiten la app de Chat, configura
permissionSettings.manageApps
comomanagersAllowed
.
Temas relacionados
- Crea miembros para agregar personas y apps al espacio.
- Publica un mensaje en el espacio creando un mensaje.
- Obtén detalles sobre un espacio.
- Crea listas de espacios.
- Actualiza un espacio.
- Borra un espacio.
- Configura un espacio.
- Busca un espacio de mensajes directos.
- Hacer que un espacio sea detectable para usuarios específicos