Lo que estoy tratando de hacer es dejar un grupo de Google utilizando la API en lugar de tener que hacer clic en el grupo en sí. Esto no se muestra en la documentación de la API que se encuentra aquí: API de Grupos de Google
Al tratar de encontrar una manera de dejar un grupo a través de la API, descubrí que era miembro de diferentes grupos a los que no me uní, pero parece que no hay una forma documentada de dejarlos. Yendo aquí:Enum Role . Esto me permite ver qué rol tengo dentro de un grupo y el código correspondiente que se usa está debajo.
Hay una API de administración empresarial para eliminar la pertenencia a un grupo, pero no es una configuración empresarial y, por lo tanto, AdminGroupSettings no se puede usar en este ámbito.
function getGroupNames() { try { var groups = GroupsApp.getGroups(); } catch(err) { console.log("Permission error [getGroup]: Cannot access group members list!"); } for (var i = 0; i < groups.length; i++) { var group = groups[i]; var currentUser = Session.getActiveUser(); // https://stackoverflow.com/questions/62801809/in-google-app-scripts-how-can-you-get-the-group-name-with-the-group-email // Groups Settings API/AdminGroupSettings // var groupName = AdminGroupsSettings.Groups.get('unsubscribe-me500@arefilled.site').name; // console.log("Attempting to get group name: " + groupName + " from address " + groups[i]); if (group.getRole(currentUser.getEmail()) == GroupsApp.Role.MEMBER){ // How to leave group?? console.log('You are a member of ' + group.getEmail()); continue; } if (group.getRole(group.getEmail()) == GroupsApp.Role.INVITED){ // leave group console.log('You are invited to ' + group.getEmail()); continue; } if (group.getRole(group.getEmail()) == GroupsApp.Role.MANAGER){ console.log('You are manager of ' + group.getEmail()); continue; } if (group.getRole(group.getEmail()) == GroupsApp.Role.OWNER){ // leave group console.log('You are owner of ' + group.getEmail()); continue; } if (group.getRole(group.getEmail()) == GroupsApp.Role.PENDING){ // leave group console.log('You are pending to ' + group.getEmail()); continue; } } }¿Es posible abandonar un grupo a través de la API de Grupos de Google? ¿Si es así, cómo?
Debe utilizar la API de directorio del SDK de administración para eliminar a un miembro de un grupo.
La API de Directory tiene un métodomembers.delete que le permite eliminar a un miembro de un grupo de Google.
En Apps Script, deberá agregar el servicio AdminDirectory Advanced al proyecto y especificar la groupKey de grupo del grupo y la clave de membersKey del miembro que desea eliminar en la solicitud:
const groupKey = "XXXXXXXXX" const memberKey = "YYYYYY" AdminDirectory.Members.remove(groupKey, memberKey) Una eliminación exitosa dará como resultado una respuesta HTTP 204 .
NB: debe ejecutar este código como administrador de dominio. No es posible eliminar a un miembro de un grupo de Google a través de la API sin usar el SDK de administrador.