Roster for Google Workspace

Turn Google Workspace users and groups into organizational context for agents and workflows.

Roster connects to the Google Workspace Admin SDK Directory API to resolve who should approve, own, review, receive, or handle work. Use current Workspace users and Google Groups without hard-coding names or email addresses into every workflow.

Connect Google WorkspaceRead the configuration guide

Last verified 07/13/2026

Google Workspace manages your users and groups. Roster resolves responsibility.

Google Workspace can tell an application which users and groups exist.

Roster adds the workflow context needed to answer:

Who is in this Google Group?

It asks:

Who should approve this request?
Which group owns this customer account?
Who should review this security exception?
Who is the active delegate for this responsibility?

Selected Workspace users and groups can be associated with Roster participants representing project-specific responsibilities. Roster then evaluates the participant model, current materialized membership, metadata, and active delegations before returning who should act.

How Roster connects to Google Workspace

Roster reads users, groups, and direct group membership through the Admin SDK Directory API v1.

SOURCE OF TRUTHROSTERCONSUMERSWorkspace directoryUSERS+2,481GROUPSPrivacyLegalSREMEMBERSHIPSADMIN SDK DIRECTORY APISELECTIVE MATERIALIZATIONonly records admins pickPARTICIPANTCustomer Data Privacy Reviewerdata=customer · review=privacyScheduled refreshnot a full syncLIVE SEARCH · ADMIN PICKERAI AGENTSMCP clientsWORKFLOWSautomationREST APIapps & servicesCLI / CIterminal & pipelines

When an administrator searches from the Roster participant picker, the connector queries Workspace live.

After a record is selected, Roster materializes it for participant resolution. For selected groups, it also stores the direct membership relationships needed by the resolver.

MCP and REST directory searches use materialized Roster records rather than calling Google Workspace live for every request.

What you can resolve

Dynamic workflow approvers

Resolve the correct approver from a current Workspace user or Google Group instead of embedding an email.

Who should approve this marketing-data export?

Group-based responsibility

Associate Google Groups with participants representing project or process ownership.

Which group handles privacy review?

Project and process owners

Map an owner to each project workflow via participants.

Who owns the Atlas customer onboarding workflow?

Human reviewers for agent actions

Let agents resolve the appropriate reviewer before taking a sensitive action.

Who should review this customer-data export?

Delegated coverage

Apply time-bound Roster delegations without changing Workspace membership.

Who is covering for the normal approver?

From a Google Group to a Roster participant

The group supplies directory membership. The Roster participant supplies the business meaning and project context.

GOOGLE GROUPROSTER PARTICIPANTPROJECT CONTEXTRESOLUTIONGworkspaceprivacy-reviewersgroup · 6 members+3group_id0192…sourcedirectoryMAPS TORrosterCustomer Data Privacy Reviewerparticipant · responsibilitydata=customerreview=privacyregion=globaltier=strictmembers← privacy-reviewersSCOPED INPROJECTAtlasOnboardingglobalonboarding+ delegation overlayRESOLVES
Who should review this customer-data export?
SSara T.via privacy-reviewers

A single Google Group can back different responsibilities across different Roster projects without any change in Workspace.

Participants carry metadata such as: Region, Product, Approval threshold, Data class, Customer tier, Escalation level.

Use Workspace context from every Roster surface

Once Workspace records back Roster participants, the same organizational context is available everywhere.

MCP

Let an MCP-compatible AI client ask open-ended routing questions.

claude · mcp
Who should review this customer-data export?
→ tool: resolve
Sara Tanaka · Customer Data Privacy Reviewer · via privacy-reviewers
REST API

Add participant resolution to internal tools and custom agents.

POST /api/v1/resolve
curl -X POST "<your-roster-public-url>/api/v1/resolve" \
-H "Authorization: Bearer $ROSTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{"query":"Who reviews privacy?","project_id":"proj_atlas"}'
// 200 OK
{ "participant": "privacy_reviewer", "user": "sara@acme.com" }
CLI and CI

Resolve ownership from the terminal or a CI pipeline.

~/roster · zsh
$ roster resolve "Who should approve the marketing data export?"
✓ Sara Tanaka <sara@acme.com>
role: Privacy Reviewer · source: gws:privacy-reviewers
Roster platform

Browse Workspace users and Google Groups, associate them with participants, manage delegations.

app.roster.ai › participants
Customer Data Privacy Reviewer
linked · gws:privacy-reviewers
delegation · Sara T. → Ravi P. (until Mon)

What Roster reads from Google Workspace

Workspace dataUsed by RosterMaterialized in Roster
Stable Google user IDYesFor selected users
Primary emailYesFor selected users
Full nameYesFor selected users
Stable group IDYesFor selected groups
Group emailYesFor selected groups
Group nameYesFor selected groups
Group descriptionWhen availableFor selected groups
Direct group membersYesFor selected groups
Passwords and authentication factorsNoNo
Gmail messages and Drive contentNoNo

Typical Directory API resources:

/users
/groups
/groups/{groupKey}/members

The connector is intended for directory reads. It is not used to manage Workspace accounts or group membership.

Live browsing and materialized resolution

Roster uses two deliberate data-access modes.

Live provider browsing

Administrators can search Workspace live from the Roster participant picker when selecting users or groups.

Materialized runtime resolution

Runtime resolution uses Roster's materialized state, giving REST, MCP, CLI, and Resolve operations a consistent dataset independent of Google API availability.

Connection requirements

You need:

  1. 01A Google Workspace customer ID, commonly my_customer
  2. 02A delegated administrator in the Workspace domain
  3. 03A Google Cloud service account
  4. 04The service-account email
  5. 05A private key stored outside source control
  6. 06Domain-wide delegation
  7. 07Admin SDK Directory API enabled
  8. 08A refresh schedule

Roster's current default read scopes are:

https://www.googleapis.com/auth/admin.directory.group.readonly
https://www.googleapis.com/auth/admin.directory.user.readonly

Store the private key through an environment or secret-manager reference:

env:GOOGLE_WORKSPACE_PRIVATE_KEY

The connector uses service-account domain-wide delegation rather than an interactive end-user OAuth flow.

View detailed Google Workspace connector requirements

Workspace directory data and Google login are separate

The directory connector and human authentication are configured independently.

Workspace directory connector

Provides users, groups, and membership for participant resolution.

Google identity provider

A Google identity-provider configuration, when used, controls how human team members authenticate to Roster.

Connecting one does not automatically configure the other.

Example: route a privacy review

An agent is preparing to export customer information.

It asks:

Who should review this customer-data export for the Atlas project?

Roster evaluates:

  1. The Atlas project
  2. The Customer Data Privacy Reviewer participant
  3. Relevant labels and metadata
  4. The associated Workspace user or Google Group
  5. Current materialized membership
  6. Any active delegation

The agent receives the current reviewer and passes the work to the organization's existing review or approval channel.

Frequently asked questions

No. Roster browses Workspace live during administrative selection and materializes the records selected for participant resolution.

Add Google Workspace context to your workflows

Keep users and groups in Google Workspace. Use Roster to resolve who should act for each project, approval, escalation, and agent workflow.

Connect Google WorkspaceRead the Workspace connector documentationExplore all integrations