Remove a member from a space

This guide explains how to use the delete() method on the Membership resource of the Google Chat API to remove members from a space, also known as deleting a membership. Space managers can't be removed if they're the only space manager in a space. Assign another user as a space manager before removing these memberships.

If you're a Google Workspace administrator, you can remove users, Google Groups, or Chat apps from any space in your Google Workspace organization.

The Membership resource represents whether a human user or Google Chat app is invited to, part of, or absent from a space.

Prerequisites

Node.js

Remove a member from a space as a user

To remove a user, Google Group, or Chat app from a space with user authentication , pass the following in your request:

  • Specify the chat.memberships authorization scope. The authorizing user must have permission to remove the user or Google Group from the space. To remove a Chat app, specify the chat.memberships.app authorization scope (apps can only delete their own membership; not that of other apps). As a best practice, choose the most restrictive scope that still allows your app to function.
  • Call the DeleteMembership() method.
  • Pass the name of the membership to delete. If the membership belongs to the only space manager in a space, assign another user as a space manager before deleting this membership.

Here's how to delete a membership with user authentication :

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 
 ); 

To run this sample, replace the following:

  • SPACE_NAME : the ID from the space's name . You can obtain the ID by calling the ListSpaces() method or from the space's URL.
  • MEMBER_NAME : the ID from the member's name . You can obtain the ID by calling the ListMemberships() method.

If successful, the response body returns the membership with 'state': 'NOT_A_MEMBER' , indicating that the member is no longer in the space.

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

Remove a member from a space as a Chat app

App authentication requires one-time administrator approval .

To remove a user, Google Group, or Chat app from a space with app authentication , pass the following in your request:

  • Specify the chat.app.memberships authorization scope. Deleting membership of a space manager is only supported in spaces created by Chat apps.
  • Call the delete method on the membership resource .
  • Pass the name of the membership to delete. If the membership belongs to the only space manager in a space, assign another user as a space manager before deleting this membership.

Write a script that calls Chat API

Here's how to delete a membership with app authentication :

Python

  1. In your working directory, create a file named chat_membership_delete_app.py .
  2. Include the following code in 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 
     ) 
     # 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. In the code, replace the following:

    • SPACE : a space name, which you can obtain from the spaces.list method in the Chat API, or from a space's URL.

    • MEMBER : a membership name, which you can obtain from the spaces.members.list method in the Chat API. To delete an app's membership, replace MEMBER with app .

  4. In your working directory, build and run the sample:

     python3  
    chat_membership_delete_app.py 
    

If successful, the response body returns the membership with 'state': 'NOT_A_MEMBER' , indicating that the member is no longer in the space.

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

Remove users or Google Groups from a space as a Google Workspace administrator

If you're a Google Workspace administrator, you can call the DeleteMembership() method to remove users, Google Groups, or Chat apps from any space in your Google Workspace organization.

To call this method as a Google Workspace administrator, do the following:

  • Call the method using user authentication, and specify an authorization scope that supports calling the method using administrator privileges .
  • In your request, specify the query parameter useAdminAccess to true .

For more information and examples, see Manage Google Chat spaces as a Google Workspace administrator .

Limitations and considerations

  • With app authentication , a Chat app can remove users, but not Google Groups or Chat apps.
Create a Mobile Website
View Site in Mobile | Classic
Share by: