@openworkspace/groups
v0.1.1
Published
Google Cloud Identity Groups API client
Maintainers
Readme
@openworkspace/groups
Google Groups API client for OpenWorkspace -- list, members, settings.
Part of the OpenWorkspace monorepo.
Install
npm install @openworkspace/groups @openworkspace/coreUsage
import { createHttpClient } from '@openworkspace/core';
import { listGroups, searchGroups, listMembers, addMember } from '@openworkspace/groups';
const http = createHttpClient({ auth: { accessToken: 'token' } });
// List groups
const result = await listGroups(http, { parent: 'customers/my_customer' });
if (result.ok) {
for (const group of result.value.groups ?? []) {
console.log(group.displayName, group.groupKey?.id);
}
}
// Search groups
const found = await searchGroups(http, { query: "displayName='Engineering'" });
// List members
const members = await listMembers(http, 'groups/GROUP_ID');
// Add a member
await addMember(http, 'groups/GROUP_ID', { preferredMemberKey: { id: '[email protected]' }, roles: [{ name: 'MEMBER' }] });API
All functions take an HttpClient as the first parameter and return Result<T, E>.
Groups
listGroups(http, options)-- List groupsgetGroup(http, name)-- Get a groupcreateGroup(http, group)-- Create a groupupdateGroup(http, name, group)-- Update a groupdeleteGroup(http, name)-- Delete a groupsearchGroups(http, options)-- Search groups by querylookupGroup(http, email)-- Look up a group by email
Members
listMembers(http, groupName, options)-- List group membersaddMember(http, groupName, membership)-- Add a memberremoveMember(http, membershipName)-- Remove a membergetMembership(http, membershipName)-- Get membership details
