En esta guía, se explica cómo usar el método patch()
en el recurso Space
de la API de Google Chat para actualizar un espacio. Actualiza un espacio para cambiar sus atributos, como el nombre visible para el usuario, la descripción y los lineamientos.
Si eres administrador de Google Workspace, puedes llamar al método patch()
para actualizar cualquier espacio existente en tu organización de Google Workspace.
El recurso Space
representa un lugar donde las personas y las apps de Chat pueden enviar mensajes, compartir archivos y colaborar. Existen varios tipos de espacios:
- Los mensajes directos (MD) son conversaciones entre dos usuarios o entre un usuario y una app de Chat.
- Los chats grupales son conversaciones entre tres o más usuarios y apps de Chat.
- Los espacios con nombre son lugares persistentes donde las personas envían mensajes, comparten archivos y colaboran.
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 ID de cliente de OAuth para una aplicación de escritorio. Para ejecutar la muestra en esta guía, guarda las credenciales como un archivo JSON llamado
credentials.json
en tu directorio local.
- Elige un alcance de autorización que admita la autenticación del usuario.
- Un espacio de Google Chat. Para crear uno con la API de Google Chat, consulta Crea un espacio. Para crear uno en Chat, visita la documentación del Centro de ayuda.
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 ID de cliente de OAuth para una aplicación de escritorio. Para ejecutar la muestra en esta guía, guarda las credenciales como un archivo JSON llamado
credentials.json
en tu directorio local.
- Elige un alcance de autorización que admita la autenticación del usuario.
- Un espacio de Google Chat. Para crear uno con la API de Google Chat, consulta Crea un espacio. Para crear uno en Chat, visita la documentación del Centro de ayuda.
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 ID de cliente de OAuth para una aplicación de escritorio. Para ejecutar la muestra en esta guía, guarda las credenciales como un archivo JSON llamado
credentials.json
en tu directorio local.
- Elige un alcance de autorización que admita la autenticación del usuario.
- Un espacio de Google Chat. Para crear uno con la API de Google Chat, consulta Crea un espacio. Para crear uno en Chat, visita la documentación del Centro de ayuda.
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.
- Elige un alcance de autorización que admita la autenticación del usuario.
- Un espacio de Google Chat. Para crear uno con la API de Google Chat, consulta Crea un espacio. Para crear uno en Chat, visita la documentación del Centro de ayuda.
Actualiza un espacio como usuario
Para actualizar un espacio existente en Google Chat con autenticación de usuarios, pasa lo siguiente en tu solicitud:
- Especifica el alcance de autorización
chat.spaces
. - Realiza una llamada al método
UpdateSpace()
. En tu solicitud, debes especificar el campo de espacioname
, el campoupdateMask
con uno o más campos para actualizar y unbody
con la información del espacio actualizada.
Puedes actualizar aspectos como el nombre visible, el tipo de espacio, el estado del historial y mucho más. Para ver todos los campos que puedes actualizar, consulta la documentación de referencia.
Sigue estos pasos para actualizar el campo displayName
de un espacio existente:
Node.js
Python
Java
Apps Script
Para ejecutar este ejemplo, reemplaza SPACE_NAME
por el ID del campo name
del espacio. Puedes obtener el ID llamando al método ListSpaces()
o desde la URL del espacio.
La API de Google Chat devuelve una instancia de Space
que refleja las actualizaciones.
Actualiza un espacio como administrador de Google Workspace
Si eres administrador de Google Workspace, puedes llamar al método UpdateSpace()
para actualizar cualquier espacio de tu organización de Google Workspace.
Para llamar a este método como administrador de Google Workspace, haz lo siguiente:
- Llama al método con la autenticación del usuario y especifica un alcance de autorización que admita llamar al método con privilegios de administrador.
- En tu solicitud, especifica el parámetro de consulta
useAdminAccess
comotrue
.
Para obtener más información y ejemplos, consulta Cómo administrar espacios de Google Chat como administrador de Google Workspace.
Actualiza un espacio como una app de Chat
La autenticación de la app requiere la aprobación del administrador una sola vez.
Para actualizar un espacio existente en Google Chat con autenticación de la app, pasa lo siguiente en tu solicitud:
- Especifica el alcance de autorización
chat.app.spaces
. Con la autenticación de apps, solo puedes actualizar los espacios creados por apps de Chat. - Llama al método
patch
en el recursoSpace
. En tu solicitud, debes especificar el campo de espacioname
, el campoupdateMask
con uno o más campos para actualizar y unbody
con la información del espacio actualizada.
Puedes actualizar aspectos como el nombre visible, el tipo de espacio, el estado del historial, la configuración de permisos y mucho más. Para ver todos los campos que puedes actualizar, consulta la documentación de referencia.
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 actualizar el campo spaceDetails
de un espacio existente:
Python
- En tu directorio de trabajo, crea un archivo llamado
chat_space_update_app.py
. Incluye el siguiente código en
chat_space_update_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"] def main(): ''' Authenticates with Chat API using app authentication, then updates the specified space description and guidelines. ''' # 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().patch( # The space to update, and the updated space details. # # Replace {space} with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. name='spaces/SPACE', updateMask='spaceDetails', body={ 'spaceDetails': { 'description': 'This description was updated with Chat API!', 'guidelines': 'These guidelines were updated with Chat API!' } } ).execute() # Prints details about the updated 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.SPACE
con el nombre de un espacio, que puedes obtener del métodospaces.list
en la API de Chat o de la URL de un espacio
En tu directorio de trabajo, compila y ejecuta la muestra:
python3 chat_space_update_app.py
La API de Google Chat devuelve una instancia del recurso Space
que refleja las actualizaciones.
Limitaciones y consideraciones
- Con la autenticación de apps, las apps de Chat pueden hacer lo siguiente:
- Solo puede actualizar
predefinedPermissionSettings
opermissionSettings
en los espacios que creó. - No se puede actualizar
accessSettings.audience
.
- Solo puede actualizar
Temas relacionados
- Obtén detalles sobre un espacio.
- Crea listas de espacios.
- Borra un espacio.
- Configura un espacio.
- Busca un espacio de mensajes directos.
- Hacer que un espacio sea detectable para usuarios específicos