Google Workspace · Capability
Google Workspace Admin SDK Directory API — Users
Google Workspace Admin SDK Directory API — Users. 9 operations. Lead operation: List Users. Self-contained Naftiko capability covering one Google Workspace business surface.
What You Can Do
GET
Listusers
— List Users
/v1/admin/directory/v1/users
POST
Insertuser
— Create a User
/v1/admin/directory/v1/users
GET
Getuser
— Get a User
/v1/admin/directory/v1/users/{userkey}
PUT
Updateuser
— Update a User
/v1/admin/directory/v1/users/{userkey}
PATCH
Patchuser
— Patch a User
/v1/admin/directory/v1/users/{userkey}
DELETE
Deleteuser
— Delete a User
/v1/admin/directory/v1/users/{userkey}
POST
Makeuseradmin
— Make a User a Super Administrator
/v1/admin/directory/v1/users/{userkey}/makeadmin
POST
Signoutuser
— Sign Out a User
/v1/admin/directory/v1/users/{userkey}/signout
POST
Undeleteuser
— Undelete a User
/v1/admin/directory/v1/users/{userkey}/undelete
MCP Tools
list-users
List Users
read-only
idempotent
create-user
Create a User
get-user
Get a User
read-only
idempotent
update-user
Update a User
idempotent
patch-user
Patch a User
idempotent
delete-user
Delete a User
idempotent
make-user-super-administrator
Make a User a Super Administrator
sign-out-user
Sign Out a User
undelete-user
Undelete a User
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Google Workspace Admin SDK Directory API — Users
description: 'Google Workspace Admin SDK Directory API — Users. 9 operations. Lead operation: List Users. Self-contained
Naftiko capability covering one Google Workspace business surface.'
tags:
- Google Workspace
- Users
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
GOOGLE_WORKSPACE_API_KEY: GOOGLE_WORKSPACE_API_KEY
capability:
consumes:
- type: http
namespace: admin-sdk-directory-users
baseUri: https://admin.googleapis.com
description: Google Workspace Admin SDK Directory API — Users business capability. Self-contained, no shared references.
resources:
- name: admin-directory-v1-users
path: /admin/directory/v1/users
operations:
- name: listusers
method: GET
description: List Users
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: maxResults
in: query
type: integer
description: Maximum number of results to return (1-500). Default is 100.
- name: pageToken
in: query
type: string
description: Token to specify the next page in the list.
- name: orderBy
in: query
type: string
description: Property to use for sorting results.
- name: sortOrder
in: query
type: string
description: Whether to return results in ascending or descending order.
- name: query
in: query
type: string
description: Query string for searching user fields. For more information on constructing user queries, see the
Search for Users documentation.
- name: showDeleted
in: query
type: string
description: If set to true, retrieves the list of deleted users.
- name: projection
in: query
type: string
description: What subset of fields to fetch for this user.
- name: viewType
in: query
type: string
description: Whether to fetch the administrator-only or domain-wide public view of the user. Default is admin_view.
- name: customFieldMask
in: query
type: string
description: A comma-separated list of schema names. All fields from these schemas are fetched. Must be set when
projection=custom.
- name: insertuser
method: POST
description: Create a User
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: admin-directory-v1-users-userKey
path: /admin/directory/v1/users/{userKey}
operations:
- name: getuser
method: GET
description: Get a User
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: projection
in: query
type: string
description: What subset of fields to fetch for this user.
- name: viewType
in: query
type: string
description: Whether to fetch the administrator-only or domain-wide public view of the user.
- name: customFieldMask
in: query
type: string
description: A comma-separated list of schema names. All fields from these schemas are fetched. Must be set when
projection=custom.
- name: updateuser
method: PUT
description: Update a User
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: patchuser
method: PATCH
description: Patch a User
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: deleteuser
method: DELETE
description: Delete a User
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: admin-directory-v1-users-userKey-makeAdmin
path: /admin/directory/v1/users/{userKey}/makeAdmin
operations:
- name: makeuseradmin
method: POST
description: Make a User a Super Administrator
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: admin-directory-v1-users-userKey-signOut
path: /admin/directory/v1/users/{userKey}/signOut
operations:
- name: signoutuser
method: POST
description: Sign Out a User
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: admin-directory-v1-users-userKey-undelete
path: /admin/directory/v1/users/{userKey}/undelete
operations:
- name: undeleteuser
method: POST
description: Undelete a User
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
authentication:
type: bearer
token: '{{env.GOOGLE_WORKSPACE_API_KEY}}'
exposes:
- type: rest
namespace: admin-sdk-directory-users-rest
port: 8080
description: REST adapter for Google Workspace Admin SDK Directory API — Users. One Spectral-compliant resource per consumed
operation, prefixed with /v1.
resources:
- path: /v1/admin/directory/v1/users
name: admin-directory-v1-users
description: REST surface for admin-directory-v1-users.
operations:
- method: GET
name: listusers
description: List Users
call: admin-sdk-directory-users.listusers
with:
maxResults: rest.maxResults
pageToken: rest.pageToken
orderBy: rest.orderBy
sortOrder: rest.sortOrder
query: rest.query
showDeleted: rest.showDeleted
projection: rest.projection
viewType: rest.viewType
customFieldMask: rest.customFieldMask
outputParameters:
- type: object
mapping: $.
- method: POST
name: insertuser
description: Create a User
call: admin-sdk-directory-users.insertuser
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/admin/directory/v1/users/{userkey}
name: admin-directory-v1-users-userkey
description: REST surface for admin-directory-v1-users-userKey.
operations:
- method: GET
name: getuser
description: Get a User
call: admin-sdk-directory-users.getuser
with:
projection: rest.projection
viewType: rest.viewType
customFieldMask: rest.customFieldMask
outputParameters:
- type: object
mapping: $.
- method: PUT
name: updateuser
description: Update a User
call: admin-sdk-directory-users.updateuser
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: PATCH
name: patchuser
description: Patch a User
call: admin-sdk-directory-users.patchuser
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: deleteuser
description: Delete a User
call: admin-sdk-directory-users.deleteuser
outputParameters:
- type: object
mapping: $.
- path: /v1/admin/directory/v1/users/{userkey}/makeadmin
name: admin-directory-v1-users-userkey-makeadmin
description: REST surface for admin-directory-v1-users-userKey-makeAdmin.
operations:
- method: POST
name: makeuseradmin
description: Make a User a Super Administrator
call: admin-sdk-directory-users.makeuseradmin
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/admin/directory/v1/users/{userkey}/signout
name: admin-directory-v1-users-userkey-signout
description: REST surface for admin-directory-v1-users-userKey-signOut.
operations:
- method: POST
name: signoutuser
description: Sign Out a User
call: admin-sdk-directory-users.signoutuser
outputParameters:
- type: object
mapping: $.
- path: /v1/admin/directory/v1/users/{userkey}/undelete
name: admin-directory-v1-users-userkey-undelete
description: REST surface for admin-directory-v1-users-userKey-undelete.
operations:
- method: POST
name: undeleteuser
description: Undelete a User
call: admin-sdk-directory-users.undeleteuser
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: admin-sdk-directory-users-mcp
port: 9090
transport: http
description: MCP adapter for Google Workspace Admin SDK Directory API — Users. One tool per consumed operation, routed
inline through this capability's consumes block.
tools:
- name: list-users
description: List Users
hints:
readOnly: true
destructive: false
idempotent: true
call: admin-sdk-directory-users.listusers
with:
maxResults: tools.maxResults
pageToken: tools.pageToken
orderBy: tools.orderBy
sortOrder: tools.sortOrder
query: tools.query
showDeleted: tools.showDeleted
projection: tools.projection
viewType: tools.viewType
customFieldMask: tools.customFieldMask
outputParameters:
- type: object
mapping: $.
- name: create-user
description: Create a User
hints:
readOnly: false
destructive: false
idempotent: false
call: admin-sdk-directory-users.insertuser
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: get-user
description: Get a User
hints:
readOnly: true
destructive: false
idempotent: true
call: admin-sdk-directory-users.getuser
with:
projection: tools.projection
viewType: tools.viewType
customFieldMask: tools.customFieldMask
outputParameters:
- type: object
mapping: $.
- name: update-user
description: Update a User
hints:
readOnly: false
destructive: false
idempotent: true
call: admin-sdk-directory-users.updateuser
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: patch-user
description: Patch a User
hints:
readOnly: false
destructive: false
idempotent: true
call: admin-sdk-directory-users.patchuser
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: delete-user
description: Delete a User
hints:
readOnly: false
destructive: true
idempotent: true
call: admin-sdk-directory-users.deleteuser
outputParameters:
- type: object
mapping: $.
- name: make-user-super-administrator
description: Make a User a Super Administrator
hints:
readOnly: false
destructive: false
idempotent: false
call: admin-sdk-directory-users.makeuseradmin
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: sign-out-user
description: Sign Out a User
hints:
readOnly: false
destructive: false
idempotent: false
call: admin-sdk-directory-users.signoutuser
outputParameters:
- type: object
mapping: $.
- name: undelete-user
description: Undelete a User
hints:
readOnly: false
destructive: false
idempotent: false
call: admin-sdk-directory-users.undeleteuser
with:
body: tools.body
outputParameters:
- type: object
mapping: $.