Quita a un miembro de un espacio

En esta guía, se explica cómo usar el método delete() en el recurso Membership de la API de Google Chat para quitar miembros de un espacio, también conocido como borrar una membresía. No se pueden quitar a los administradores del espacio en los siguientes casos: es el único administrador del espacio. Asigna a otro usuario como un espacio administrador antes de quitar estas membresías.

Si eres administrador de Google Workspace, puedes quitar usuarios, Grupos de Google o apps de Chat de cualquier espacio de tu organización de Google Workspace.

El recurso Membership representa si un usuario humano o la app de Google Chat están invitados a un espacio, forman parte de él o no están presentes.

Requisitos previos

Node.js

Cómo quitar a un miembro de un espacio como usuario

Para quitar un usuario, un Grupo de Google o una app de Chat de un espacio con autenticación de usuarios, pasa lo siguiente en tu solicitud:

  • Especifica el alcance de autorización de chat.memberships. El usuario autorizado debe tener permiso para quitar al usuario o al Grupo de Google del espacio. Para quitar una app de Chat, especifica el permiso de chat.memberships.app (las apps solo pueden borrar su propia membresía, no la de otras apps). Como práctica recomendada, elige el permiso más restrictivo que aún permita que tu app funcione.
  • Realiza una llamada al método DeleteMembership().
  • Pasa el name de la membresía que quieres borrar. Si la membresía pertenece al en un espacio, asigna a otro usuario como administrador eliminando esta membresía.

Aquí te mostramos cómo borrar una membresía con Autenticación de usuarios:

Node.js

chat/client-libraries/cloud/delete-space-user-cred.js
import {createClientWithUserCredentials} from './authentication-utils.js';

const USER_AUTH_OAUTH_SCOPES = ['https://www.googleapis.com/auth/chat.delete'];

// This sample shows how to delete a space with user credential
async function main() {
  // Create a client
  const chatClient = await createClientWithUserCredentials(USER_AUTH_OAUTH_SCOPES);

  // Initialize request argument(s)
  const request = {
    // Replace SPACE_NAME here
    name: 'spaces/SPACE_NAME'
  };

  // Make the request
  const response = await chatClient.deleteSpace(request);

  // Handle the response
  console.log(response);
}

main().catch(console.error);

Para ejecutar esta muestra, reemplaza lo siguiente:

  • SPACE_NAME: Es el ID del espacio. name Para obtener el ID, llama al método ListSpaces() o desde la URL del espacio.
  • MEMBER_NAME: Es el ID del name del miembro. Para obtener el ID, llama al método ListMemberships().

Si se ejecuta correctamente, el cuerpo de la respuesta muestra la membresía con 'state': 'NOT_A_MEMBER', lo que indica que el miembro ya no está en el espacio.

{
    "name": "spaces/SPACE_NAME/members/MEMBER_NAME",
    "state": "NOT_A_MEMBER"
}

Quita a un miembro de un espacio como una app de Chat

La autenticación de apps requiere una única autenticación aprobación del administrador.

Para quitar un usuario, un Grupo de Google o una app de Chat de un espacio con autenticación de apps, pasa lo siguiente en tu solicitud:

  • Especifica el chat.app.memberships. el permiso de la autorización. La eliminación de la membresía de un administrador de espacio solo se admite en los espacios creados por apps de Chat.
  • Llama al método delete en el recurso membership.
  • Pasa el name de la membresía que quieres borrar. Si la membresía pertenece al en un espacio, asigna a otro usuario como administrador eliminando esta membresía.

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 del documento de descubrimiento de la API que no sea pública. 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:

  1. En la consola de Google Cloud, ve a Menú > APIs y servicios > Credenciales.

    Ir a Credenciales

  2. Haz clic en Crear credenciales > Clave de API.
  3. 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 que se encuentran 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 una secuencia de comandos que llame a la API de Chat

Aquí te mostramos cómo borrar una membresía con Autenticación de la app:

Python

  1. En tu directorio de trabajo, crea un archivo llamado chat_membership_delete_app.py.
  2. Incluye el siguiente código en chat_membership_delete_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.memberships"]
    
    def main():
        '''
        Authenticates with Chat API using app authentication,
        then deletes the specified membership.
        '''
    
        # 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().members().delete(
    
            # The membership to delete.
            #
            # Replace SPACE with a space name.
            # Obtain the space name from the spaces resource of Chat API,
            # or from a space's URL.
            #
            # Replace MEMBER with a membership name.
            # Obtain the membership name from the memberships resource of
            # Chat API. To delete a Chat app's membership, replace MEMBER
            # with app; an alias for the app calling the API.
            name='spaces/SPACE/members/MEMBER'
    
        ).execute()
    
        # Print Chat API's response in your command line interface.
        # When deleting a membership, the response body is empty.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. En el código, reemplaza lo siguiente:

    • API_KEY: Es la clave de API que creaste para compilar. el extremo del servicio de la API de Chat.

    • SPACE: Es un nombre de espacio, que puedes obtener desde Método spaces.list en la API de Chat o desde la URL de un espacio.

    • MEMBER: Es un nombre de membresía que puedes obtener. A partir del método spaces.members.list en la API de Chat. Para borrar la membresía de una app, reemplaza MEMBER con app.

  4. En tu directorio de trabajo, compila y ejecuta la muestra:

    python3 chat_membership_delete_app.py

Si se ejecuta correctamente, el cuerpo de la respuesta muestra la membresía con 'state': 'NOT_A_MEMBER', lo que indica que el miembro ya no está en el espacio.

{
    "name": "spaces/SPACE/members/MEMBER",
    "state": "NOT_A_MEMBER"
}

Limitaciones y consideraciones

Quita usuarios o Grupos de Google de un espacio si eres administrador de Google Workspace

Si eres administrador de Google Workspace, puedes llamar al DeleteMembership() para quitar usuarios, Grupos de Google o Apps de Chat desde cualquier espacio de tu cuenta de Google Workspace organización.

Para llamar a este método como administrador de Google Workspace, haz lo siguiente:

Para obtener más información y ejemplos, consulta Administra espacios de Google Chat como administrador de Google Workspace.