4.6 KiB
4.6 KiB
Google Workspace Admin Routing Reference
App name: google-workspace-admin
Base URL proxied: admin.googleapis.com
API Path Pattern
/google-workspace-admin/admin/directory/v1/{endpoint}
Common Endpoints
Users
List Users
GET /google-workspace-admin/admin/directory/v1/users?customer=my_customer&maxResults=100
With search query:
GET /google-workspace-admin/admin/directory/v1/users?customer=my_customer&query=email:john*
Get User
GET /google-workspace-admin/admin/directory/v1/users/{userKey}
userKey can be the user's primary email or unique user ID.
Create User
POST /google-workspace-admin/admin/directory/v1/users
Content-Type: application/json
{
"primaryEmail": "newuser@example.com",
"name": {
"givenName": "Jane",
"familyName": "Smith"
},
"password": "temporaryPassword123!",
"changePasswordAtNextLogin": true,
"orgUnitPath": "/Engineering"
}
Update User
PUT /google-workspace-admin/admin/directory/v1/users/{userKey}
Content-Type: application/json
{
"name": {
"givenName": "Jane",
"familyName": "Smith-Johnson"
},
"suspended": false
}
Patch User (partial update)
PATCH /google-workspace-admin/admin/directory/v1/users/{userKey}
Content-Type: application/json
{
"suspended": true
}
Delete User
DELETE /google-workspace-admin/admin/directory/v1/users/{userKey}
Make User Admin
POST /google-workspace-admin/admin/directory/v1/users/{userKey}/makeAdmin
Content-Type: application/json
{
"status": true
}
Groups
List Groups
GET /google-workspace-admin/admin/directory/v1/groups?customer=my_customer
Get Group
GET /google-workspace-admin/admin/directory/v1/groups/{groupKey}
Create Group
POST /google-workspace-admin/admin/directory/v1/groups
Content-Type: application/json
{
"email": "engineering@example.com",
"name": "Engineering Team",
"description": "All engineering staff"
}
Update Group
PUT /google-workspace-admin/admin/directory/v1/groups/{groupKey}
Content-Type: application/json
{
"name": "Engineering Department",
"description": "Updated description"
}
Delete Group
DELETE /google-workspace-admin/admin/directory/v1/groups/{groupKey}
Group Members
List Members
GET /google-workspace-admin/admin/directory/v1/groups/{groupKey}/members
Add Member
POST /google-workspace-admin/admin/directory/v1/groups/{groupKey}/members
Content-Type: application/json
{
"email": "user@example.com",
"role": "MEMBER"
}
Roles: OWNER, MANAGER, MEMBER
Update Member Role
PATCH /google-workspace-admin/admin/directory/v1/groups/{groupKey}/members/{memberKey}
Content-Type: application/json
{
"role": "MANAGER"
}
Remove Member
DELETE /google-workspace-admin/admin/directory/v1/groups/{groupKey}/members/{memberKey}
Organizational Units
List Org Units
GET /google-workspace-admin/admin/directory/v1/customer/my_customer/orgunits
Get Org Unit
GET /google-workspace-admin/admin/directory/v1/customer/my_customer/orgunits/{orgUnitPath}
Create Org Unit
POST /google-workspace-admin/admin/directory/v1/customer/my_customer/orgunits
Content-Type: application/json
{
"name": "Engineering",
"parentOrgUnitPath": "/",
"description": "Engineering department"
}
Delete Org Unit
DELETE /google-workspace-admin/admin/directory/v1/customer/my_customer/orgunits/{orgUnitPath}
Domains
List Domains
GET /google-workspace-admin/admin/directory/v1/customer/my_customer/domains
Get Domain
GET /google-workspace-admin/admin/directory/v1/customer/my_customer/domains/{domainName}
Roles
List Roles
GET /google-workspace-admin/admin/directory/v1/customer/my_customer/roles
List Role Assignments
GET /google-workspace-admin/admin/directory/v1/customer/my_customer/roleassignments
Create Role Assignment
POST /google-workspace-admin/admin/directory/v1/customer/my_customer/roleassignments
Content-Type: application/json
{
"roleId": "123456789",
"assignedTo": "user_id",
"scopeType": "CUSTOMER"
}
Notes
- Use
my_customeras the customer ID for your own domain - User keys can be primary email or unique user ID
- Group keys can be group email or unique group ID
- Org unit paths start with
/(e.g.,/Engineering/Frontend) - Admin privileges are required for most operations
- Password must meet Google's complexity requirements