Operations (sample payloads)
Main operationsCopy
Add member to groupCopy
Adds a user to the specified group.
Sample Input
1{2"access_token": "ya29.a0AWY7CkmhWj8Oj1Xn2Uy_Iq9vN3KLbH5jZ7xC1qP3m4Rg6FtX8yOcN2Q",3"group_key": "developers@example.com",4"email": "newmember@example.com",5"delivery_settings": "DIGEST",6"role": "MEMBER"7}
Sample Output
1{2"added": true,3"body": {4"kind": "admin#directory#member",5"etag": "\"abcdefghijklmnop\"",6"id": "123456789",7"email": "newmember@example.com",8"role": "MEMBER",9"type": "USER",10"status": "ACTIVE",11"delivery_settings": "DIGEST"12}13}
Check group membershipCopy
Checks whether the given user is a member of the group. Membership can be direct or nested.
Sample Input
1{2"access_token": "ya29.a0AWY-zLsXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",3"group_key": "developers@example.com",4"member_key": "john.doe@example.com"5}
Sample Output
1{2"isMember": true3}
Create data transferCopy
Creates a data transfer request.
Sample Input
1{2"access_token": "ya29.a0AWY7CklhO1J3M2...",3"new_owner_user_id": "john.doe@example.com",4"old_owner_user_id": "jane.smith@example.com",5"application_data_transfers": [6{7"application_id": "55656082996",8"application_transfer_params": [9{10"key": "DRIVE_TRANSFER_MODE",11"value": [12"TRANSFER_OWNERSHIP"13]14},15{16"key": "CALENDAR_TRANSFER_MODE",17"value": [18"TRANSFER_ALL"19]20}21]22}23]24}
Sample Output
1{2"kind": "admin#datatransfer#DataTransfer",3"etag": "\"MzM0MzgzNjgxNDc.\"",4"id": "DT12345678",5"oldOwnerUserId": "jane.smith@example.com",6"newOwnerUserId": "john.doe@example.com",7"applicationDataTransfers": [8{9"applicationId": "55656082996",10"applicationTransferParams": [11{12"key": "DRIVE_TRANSFER_MODE",13"value": [14"TRANSFER_OWNERSHIP"15]16},17{18"key": "CALENDAR_TRANSFER_MODE",19"value": [20"TRANSFER_ALL"21]22}23],24"applicationTransferStatus": "PENDING"25}26],27"overallTransferStatusCode": "PENDING",28"requestTime": "2023-06-15T10:30:00.000Z"29}
Create groupCopy
Creates a group.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgVmOu3X9zJ2K-Uj_lKx8Xt4Zn...",3"name": "Marketing Team",4"description": "This group is for all members of the marketing department. Use this group for team-wide communications, project updates, and sharing relevant resources.",5"email": "marketing@example.com"6}
Sample Output
1{2"kind": "admin#directory#group",3"id": "03a8b7c9d0e1f2g3h",4"etag": "\"abcdefghijklmnop\"",5"email": "marketing@example.com",6"name": "Marketing Team",7"directMembersCount": "0",8"description": "This group is for all members of the marketing department. Use this group for team-wide communications, project updates, and sharing relevant resources.",9"adminCreated": "true",10"aliases": [],11"nonEditableAliases": [12"marketing@example.com"13]14}
Create organisational unitCopy
Adds an organizational unit.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgXhYZ1234567890abcdefghijklmnopqrstuvwxyz",3"customer": "C01234567",4"name": "sales_support",5"block_inheritance": false,6"description": "Sales Support Team",7"parent_org_unit_path": "/corp/sales"8}
Sample Output
1{2"kind": "admin#directory#orgUnit",3"etag": "\"abcdefghijklmnop\"",4"name": "sales_support",5"description": "Sales Support Team",6"orgUnitPath": "/corp/sales/sales_support",7"orgUnitId": "id:03a98765",8"parentOrgUnitPath": "/corp/sales",9"parentOrgUnitId": "id:02b87654",10"blockInheritance": false11}
Create roleCopy
Creates a role.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgXhKSZyJLUZ9lHrjBf5WQKUfQ8K-1234567890abcdefghij",3"customer": "C01234567",4"role_name": "Project Manager",5"role_description": "Manages projects and team resources",6"role_privileges": [7{8"privilege_name": "MANAGE_PROJECTS",9"service_id": "00000001"10},11{12"privilege_name": "VIEW_TEAM_CALENDAR",13"service_id": "00000002"14}15],16"is_system_role": false,17"is_super_admin_role": false18}
Sample Output
1{2"kind": "admin#directory#role",3"etag": "\"abcdefghijklmnop\"",4"roleId": 12345,5"roleName": "Project Manager",6"roleDescription": "Manages projects and team resources",7"rolePrivileges": [8{9"privilegeName": "MANAGE_PROJECTS",10"serviceId": "00000001"11},12{13"privilegeName": "VIEW_TEAM_CALENDAR",14"serviceId": "00000002"15}16],17"isSystemRole": false,18"isSuperAdminRole": false19}
Create roleCopy
Creates a role.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgYmO3XzD1Kj-Xh_vZJOXGGK8JVS0Ej-mT9rKzC3kqHpY",3"customer": "C03az8m9z",4"role_id": "12345",5"role_name": "Project Manager",6"role_description": "Manages projects and team resources",7"role_privileges": [8{9"privilege_name": "MANAGE_PROJECTS",10"service_id": "PROJECT_SERVICE"11},12{13"privilege_name": "VIEW_TEAM_CALENDAR",14"service_id": "CALENDAR_SERVICE"15}16],17"is_system_role": false,18"is_super_admin_role": false19}
Sample Output
1{2"kind": "admin#directory#role",3"etag": "\"lMdaGIwmn1Gn8oLvhMKbK9zLyYc/VjqMVm6YHuQbQkc\"",4"roleId": 12345,5"roleName": "Project Manager",6"roleDescription": "Manages projects and team resources",7"rolePrivileges": [8{9"privilegeName": "MANAGE_PROJECTS",10"serviceId": "PROJECT_SERVICE"11},12{13"privilegeName": "VIEW_TEAM_CALENDAR",14"serviceId": "CALENDAR_SERVICE"15}16],17"isSystemRole": false,18"isSuperAdminRole": false19}
Create role assignmentCopy
Creates a role assignment.
Sample Input
1{2"customer": "C03a4qy8z",3"assigned_to": "user123@example.com",4"role_id": "12345",5"org_unit_id": "ou_abc123",6"scope_type": "ORG_UNIT"7}
Sample Output
1{2"kind": "admin#directory#roleAssignment",3"etag": "\"abcdefghijklmnop\"",4"roleAssignmentId": 987654,5"roleId": 12345,6"assignedTo": "user123@example.com",7"scopeType": "ORG_UNIT",8"orgUnitId": "ou_abc123"9}
Create schemaCopy
Create schema.
Sample Input
1{2"access_token": "ya29.a0AWY7CklhD8j_kJ2xM5JbFtCq9Cj3k4lZ2pQwX7Y-vN6R8zHmLK1s",3"customer": "C03az79cb",4"schema_name": "employee_info",5"display_name": "Employee Information",6"fields": [7{8"display_name": "Employee ID",9"field_name": "employee_id",10"field_type": "STRING",11"indexed": true,12"multi_valued": false,13"read_access_type": "ADMINS_AND_SELF"14},15{16"display_name": "Hire Date",17"field_name": "hire_date",18"field_type": "DATE",19"indexed": true,20"multi_valued": false,21"read_access_type": "ALL_DOMAIN_USERS"22},23{24"display_name": "Salary",25"field_name": "salary",26"field_type": "DOUBLE",27"indexed": true,28"multi_valued": false,29"read_access_type": "ADMINS_AND_SELF",30"numeric_indexing_spec": {31"min_value": 0,32"max_value": 100000033}34}35]36}
Sample Output
1{2"kind": "admin#directory#schema",3"schemaId": "A01b23c4d",4"etag": "\"abcdefghijklmnop\"",5"schemaName": "employee_info",6"displayName": "Employee Information",7"fields": [8{9"kind": "admin#directory#schema#fieldspec",10"fieldId": "1",11"etag": "\"qrstuvwxyz123456\"",12"fieldType": "STRING",13"fieldName": "employee_id",14"displayName": "Employee ID",15"multiValued": false,16"readAccessType": "ADMINS_AND_SELF",17"indexed": true18},19{20"kind": "admin#directory#schema#fieldspec",21"fieldId": "2",22"etag": "\"789abcdefghijklm\"",23"fieldType": "DATE",24"fieldName": "hire_date",25"displayName": "Hire Date",26"multiValued": false,27"readAccessType": "ALL_DOMAIN_USERS",28"indexed": true29},30{31"kind": "admin#directory#schema#fieldspec",32"fieldId": "3",33"etag": "\"nopqrstuvwxyz012\"",34"fieldType": "DOUBLE",35"fieldName": "salary",36"displayName": "Salary",37"multiValued": false,38"readAccessType": "ADMINS_AND_SELF",39"indexed": true,40"numericIndexingSpec": {41"minValue": 0,42"maxValue": 100000043}44}45]46}
Create shared contactCopy
Create a new shared contact
Sample Input
1{2"access_token": "ya29.a0AWY7CklhO1234567890abcdefghijklmnopqrstuvwxyz",3"user_email": "user@example.com",4"name": {5"given_name": "John",6"family_name": "Doe",7"full_name": "John Doe"8},9"email": [10{11"attributes": {12"address": "johndoe@example.com",13"rel": "http://schemas.google.com/g/2005#work",14"primary": true15}16}17],18"phone_number": [19{20"attributes": {21"rel": "http://schemas.google.com/g/2005#mobile"22},23"text": "+1234567890"24}25],26"organization": [27{28"attributes": {29"rel": "http://schemas.google.com/g/2005#work"30},31"organization_name": "Acme Inc.",32"organization_title": "Software Engineer"33}34],35"atom_content": "Notes about John Doe"36}
Sample Output
1{2"entry": {3"id": "http://www.google.com/m8/feeds/contacts/user%40example.com/base/1234567890",4"updated": "2023-05-10T15:30:45.123Z",5"app:edited": {6"value": "2023-05-10T15:30:45.123Z",7"xmlns:app": "http://www.w3.org/2007/app"8},9"category": {10"scheme": "http://schemas.google.com/g/2005#kind",11"term": "http://schemas.google.com/contact/2008#contact"12},13"title": "John Doe",14"link": [15{16"rel": "self",17"type": "application/atom+xml",18"href": "https://www.google.com/m8/feeds/contacts/user%40example.com/full/1234567890"19},20{21"rel": "edit",22"type": "application/atom+xml",23"href": "https://www.google.com/m8/feeds/contacts/user%40example.com/full/1234567890"24}25],26"xmlns": "http://www.w3.org/2005/Atom",27"xmlns:batch": "http://schemas.google.com/gdata/batch",28"xmlns:gd": "http://schemas.google.com/g/2005",29"xmlns:gContact": "http://schemas.google.com/contact/2008",30"gd:etag": "\"Q3c5eDVSLyt7I2A9XR5VFk0KRgI.\""31}32}
Create userCopy
Creates a user.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgkVUp-lAa8Xc3jOoT5_jYcWGwZuoKn1234567890abcdefg",3"name": {4"given_name": "John",5"family_name": "Doe"6},7"password": "SecureP@ssw0rd123!",8"primary_email": "john.doe@example.com",9"suspended": false,10"change_password_at_next_login": true,11"org_unit_path": "/",12"include_in_global_address_list": true,13"phones": [14{15"type": "work",16"value": "+1 555-123-4567",17"primary": true18},19{20"type": "mobile",21"value": "+1 555-987-6543"22}23],24"addresses": [25{26"type": "work",27"street_address": "123 Main St",28"locality": "Anytown",29"region": "CA",30"postal_code": "12345",31"country": "United States",32"primary": true33}34]35}
Sample Output
1{2"kind": "admin#directory#user",3"id": "123456789012345678901",4"etag": "\"abcdefghijklmnop\"",5"primaryEmail": "john.doe@example.com",6"name": {7"givenName": "John",8"familyName": "Doe",9"fullName": "John Doe"10},11"isAdmin": false,12"isDelegatedAdmin": false,13"creationTime": "2023-04-15T10:30:00.000Z",14"agreedToTerms": true,15"password": "SecureP@ssw0rd123!",16"hashFunction": "SHA-1",17"suspended": false,18"changePasswordAtNextLogin": true,19"ipWhitelisted": false,20"emails": "[{\"address\":\"john.doe@example.com\",\"primary\":true}]",21"addresses": "[{\"type\":\"work\",\"streetAddress\":\"123 Main St\",\"locality\":\"Anytown\",\"region\":\"CA\",\"postalCode\":\"12345\",\"country\":\"United States\",\"primary\":true}]",22"phones": "[{\"type\":\"work\",\"value\":\"+1 555-123-4567\",\"primary\":true},{\"type\":\"mobile\",\"value\":\"+1 555-987-6543\"}]",23"customerId": "C01abc234",24"orgUnitPath": "/",25"isMailboxSetup": true,26"isEnrolledIn2Sv": false,27"isEnforcedIn2Sv": false,28"includeInGlobalAddressList": true29}
Delete groupCopy
Deletes a group.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBnXcGLt7OzJ9VojsZHkjYZs1wJn2qmL3Yl6_1X2Y3Z4",3"group_key": "engineering@example.com"4}
Sample Output
1{2"deleted": true,3"found": true4}
Delete group membershipCopy
Removes a member from a group.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBnXjbcL9K3J_5tR8VxT7Y-Xj2Z...",3"group_key": "developers@example.com",4"member_key": "john.doe@example.com"5}
Sample Output
1{2"deleted": true,3"found": true4}
Delete organisational unitCopy
Deletes an organizational unit.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgXjYc7ZKlBpLz-jdhkJ3KLVNXQmKtReUzDX9bJwOD3SYF4KmGzHKr8RfY",3"customer": "C01a2b3c4",4"org_unit_path": "/Marketing/Social Media"5}
Sample Output
1{2"deleted": true3}
Delete roleCopy
Deletes a role.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgXjKt7KlZ2Z3J4k5L6M7N8O9P0Q1R2S3T4U5V6W7X8Y9Z0",3"customer": "C01234567",4"role_id": "R98765432"5}
Sample Output
1{2"deleted": true,3"found": true4}
Delete shared contactCopy
Delete shared contact using their ID
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgQjXkTHp3vJ7Q8JYz3xM9lKjH2cXzY1tZ3nGqLxY5vF8sKtN6m7Uj_Hg",3"user_email": "admin@example.com",4"contact_id": "http://www.google.com/m8/feeds/contacts/admin%40example.com/base/1234567890abcdef"5}
Sample Output
1{2"deleted": true,3"existed": true4}
Delete userCopy
Deletes a user.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgQjHkJ7z9XkR_1vY-3f8tGj2Zt5K...",3"user_key": "john.doe@example.com"4}
Sample Output
1{2"deleted": true,3"found": true4}
Get applicationCopy
Get application by ID
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgYmXjkTp-9XxYQbzFvJHZUu_Jh7Yl8aKzJq9VX3f2Zt-Uj_ECvPH6Yl8aKzJq9VX3f2Zt",3"application_id": "123456789"4}
Sample Output
1{2"application_found": true,3"body": {4"kind": "admin#directory#application",5"etag": "\"abcdefghijklmnop\"",6"id": "123456789",7"name": "My G Suite Application",8"transferParams": [9{10"key": "applicationTransferParam",11"value": [12"value1",13"value2"14]15},16{17"key": "applicationSetting",18"value": [19"enabled"20]21}22]23}24}
Get custom schemaCopy
Retrieve schema.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgXjKl2VzNPYz3_KPHj8KLY-1234567890abcdefghijklmnop",3"customer": "C01234567",4"schema_key": "Employee_Info"5}
Sample Output
1{2"deleted": true,3"found": true4}
Get data transferCopy
Get data transfer by ID
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgkVYhDx8K9J_lYm3XzG8YvZ7K-1qLjH2f3Q5tXzY",3"transfer_id": "DT1234567890"4}
Sample Output
1{2"transfer_found": true,3"body": {4"kind": "admin#datatransfer#DataTransfer",5"etag": "\"MzM0MjQ5MjAwMA\"",6"id": "DT1234567890",7"name": "Calendar Transfer",8"transferParams": [9{10"key": "CALENDAR_TRANSFER",11"value": [12"true"13]14},15{16"key": "OLD_OWNER_EMAIL",17"value": [18"olduser@example.com"19]20},21{22"key": "NEW_OWNER_EMAIL",23"value": [24"newuser@example.com"25]26}27]28}29}
Get groupCopy
Retrieves a group.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgVzXjPVt-9VJUypg_7uO5V9X3jQ7qTtE8xJ2ZKPCe3Aw-ZEDvrGFH7xoULw",3"group_key": "developers@example.com"4}
Sample Output
1{2"group_found": true,3"body": {4"kind": "admin#directory#group",5"id": "03abcdef1234567890",6"etag": "\"abcdefghijklmnop\"",7"email": "developers@example.com",8"name": "Developers",9"directMembersCount": "15",10"description": "Group for all developers in the company",11"adminCreated": "true",12"aliases": [13"dev@example.com",14"coders@example.com"15],16"nonEditableAliases": [17"developers@example.com.test-google-a.com"18]19}20}
Get group memberCopy
Retrieves a group member's properties.
Sample Input
1{2"access_token": "ya29.a0AWY7CkmhU8j_Xn2jK3lG5fhZtR1234567890abcdefghijklmnop",3"group_key": "developers@example.com",4"member_key": "john.doe@example.com"5}
Sample Output
1{2"member_found": true,3"body": {4"kind": "admin#directory#member",5"etag": "\"abcdefghijklmnop\"",6"id": "123456789012345678901",7"email": "john.doe@example.com",8"role": "MEMBER",9"type": "USER",10"status": "ACTIVE",11"delivery_settings": "ALL_MAIL"12}13}
Get organisational unitCopy
Retrieves an organizational unit.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgVmOu3X9zJ0Q1K-7vhX8JZ5Y...",3"customer": "C01234567",4"org_unit_path": "/Engineering"5}
Sample Output
1{2"kind": "admin#directory#orgUnit",3"etag": "\"abcdefghijklmnop\"",4"name": "Engineering",5"description": "Engineering department",6"orgUnitPath": "/Engineering",7"orgUnitId": "id:OU_123456789",8"parentOrgUnitPath": "/",9"parentOrgUnitId": "id:OU_ROOT",10"blockInheritance": false11}
Get roleCopy
Retrieves a role.
Sample Input
1{2"access_token": "ya29.a0AWY7CklhO1234567890abcdefghijklmnopqrstuvwxyz",3"customer": "C01234567",4"role_id": "123456789"5}
Sample Output
1{2"kind": "admin#directory#role",3"etag": "\"abcdefghijklmnop\"",4"items": [5{6"kind": "admin#directory#role",7"etag": "\"qrstuvwxyz123456\"",8"roleId": 123456789,9"roleName": "Custom Admin",10"roleDescription": "Custom administrator role with specific privileges",11"rolePrivileges": [12{13"privilegeName": "MANAGE_USERS",14"serviceId": "00haapbaf5123456"15},16{17"privilegeName": "MANAGE_GROUPS",18"serviceId": "00haapbaf5789012"19}20],21"isSystemRole": false,22"isSuperAdminRole": false23}24],25"nextPageToken": null26}
Get schemaCopy
Retrieve schema.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgXhYZ1K2J3m4N5qW6rLxJ8fG7H9iK0lMnOpQrTzX1vCdN2bR3cF8e9U",3"customer": "C01abc123",4"schema_key": "Employee_Information"5}
Sample Output
1{2"schema_found": true,3"body": {4"kind": "admin#directory#schema",5"schemaId": "S01def456",6"etag": "\"abcdefghijklmnop\"",7"schemaName": "Employee_Information",8"displayName": "Employee Information",9"fields": [10{11"kind": "admin#directory#schema#fieldspec",12"fieldId": "F01ghi789",13"etag": "\"qrstuvwxyz123456\"",14"fieldType": "STRING",15"fieldName": "department",16"displayName": "Department",17"multiValued": false,18"readAccessType": "ALL_DOMAIN_USERS",19"indexed": true20},21{22"kind": "admin#directory#schema#fieldspec",23"fieldId": "F02jkl012",24"etag": "\"789abcdefghijklm\"",25"fieldType": "DOUBLE",26"fieldName": "yearsOfService",27"displayName": "Years of Service",28"multiValued": false,29"readAccessType": "ADMINS_AND_SELF",30"indexed": true,31"numericIndexingSpec": {32"minValue": 0,33"maxValue": 5034}35}36]37}38}
Get shared contactCopy
Retrieve a shared contact using their ID
Sample Input
1{2"access_token": "ya29.a0AWY7CkmM8_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",3"user_email": "john.doe@example.com",4"contact_id": "http://www.google.com/m8/feeds/contacts/john.doe%40example.com/base/1234567890abcdef"5}
Sample Output
1{2"entry": {3"id": "http://www.google.com/m8/feeds/contacts/john.doe%40example.com/base/1234567890abcdef",4"updated": "2023-05-15T10:30:45.123Z",5"app:edited": {6"value": "2023-05-15T10:30:45.123Z",7"xmlns:app": "http://www.w3.org/2007/app"8},9"category": {10"scheme": "http://schemas.google.com/g/2005#kind",11"term": "http://schemas.google.com/contact/2008#contact"12},13"title": "Jane Smith",14"link": [15{16"rel": "self",17"type": "application/atom+xml",18"href": "https://www.google.com/m8/feeds/contacts/john.doe%40example.com/full/1234567890abcdef"19},20{21"rel": "edit",22"type": "application/atom+xml",23"href": "https://www.google.com/m8/feeds/contacts/john.doe%40example.com/full/1234567890abcdef"24}25],26"xmlns": "http://www.w3.org/2005/Atom",27"xmlns:batch": "http://schemas.google.com/gdata/batch",28"xmlns:gd": "http://schemas.google.com/g/2005",29"xmlns:gContact": "http://schemas.google.com/contact/2008",30"gd:etag": "\"QXc7cDVSLyt7I2A9XRdWFEUDRQc.\""31}32}
Get userCopy
Retrieves a user.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBnXM3kKhLJZ4K8XuXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",3"user_key": "john.doe@example.com",4"projection": "full",5"view_type": "admin_view"6}
Sample Output
1{2"user_found": true,3"body": {4"kind": "admin#directory#user",5"id": "123456789012345678901",6"etag": "\"abcdefghijklmnop\"",7"primaryEmail": "john.doe@example.com",8"name": {9"givenName": "John",10"familyName": "Doe",11"fullName": "John Doe"12},13"isAdmin": false,14"isDelegatedAdmin": false,15"lastLoginTime": "2023-04-15T10:30:45.000Z",16"creationTime": "2022-01-01T09:00:00.000Z",17"agreedToTerms": true,18"suspended": false,19"archived": false,20"changePasswordAtNextLogin": false,21"ipWhitelisted": false,22"aliases": [23"j.doe@example.com",24"john@example.com"25],26"nonEditableAliases": [27"john.doe@example.com.test-google-a.com"28],29"customerId": "C01abc123",30"orgUnitPath": "/Users",31"isMailboxSetup": true,32"isEnrolledIn2Sv": true,33"isEnforcedIn2Sv": true,34"includeInGlobalAddressList": true,35"thumbnailPhotoUrl": "https://www.example.com/photos/ABCDEFG123456",36"thumbnailPhotoEtag": "\"HIJKLMNOP987654\""37}38}
List applicationsCopy
Lists the applications available for data transfer for a customer.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgXhYZ1xJ2m3K8fG_5tLZK9JzL...",3"customer": "C01234567",4"max_results": 50,5"page_token": "nextPageToken123"6}
Sample Output
1{2"kind": "admin#datatransfer#applicationsList",3"etag": "\"MzM0MjE5NDEwODc=\"",4"applications": [5{6"kind": "admin#datatransfer#applicationData",7"etag": "\"MzM0MjE5NDEwODc=\"",8"id": "55656082996",9"name": "Google Drive and Docs",10"transferParams": [11{12"key": "DRIVE_EXPORT_FORMAT",13"value": [14"GOOGLE_APPS",15"MICROSOFT_APPS"16]17},18{19"key": "SHARED_DRIVES",20"value": [21"true",22"false"23]24}25]26},27{28"kind": "admin#datatransfer#applicationData",29"etag": "\"MzM0MjE5NDEwODc=\"",30"id": "55656082999",31"name": "Google Calendar",32"transferParams": [33{34"key": "CALENDAR_EXPORT_FORMAT",35"value": [36"ICS",37"CSV"38]39}40]41}42]43}
List custom schemasCopy
Retrieve all schemas for a customer.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgXjYc7ZKlBpF3J5tGq9Xz8K-1nVGJ3Vx5YzLkM7Nt_Q",3"customer": "C01abc123"4}
Sample Output
1{2"kind": "admin#directory#schemas",3"etag": "\"abcdefghijklmnop\"",4"schemas": [5{6"kind": "admin#directory#schema",7"schemaId": "S01def456",8"etag": "\"qrstuvwxyz123456\"",9"schemaName": "Employee_Info",10"displayName": "Employee Information",11"fields": [12{13"kind": "admin#directory#schema#fieldspec",14"fieldId": "F01ghi789",15"etag": "\"789abcdef0123456\"",16"fieldType": "STRING",17"fieldName": "employee_id",18"displayName": "Employee ID",19"multiValued": false,20"readAccessType": "ALL_DOMAIN_USERS",21"indexed": true22},23{24"kind": "admin#directory#schema#fieldspec",25"fieldId": "F02jkl012",26"etag": "\"345678901abcdefg\"",27"fieldType": "DOUBLE",28"fieldName": "salary",29"displayName": "Annual Salary",30"multiValued": false,31"readAccessType": "ADMINS_AND_SELF",32"indexed": true,33"numericIndexingSpec": {34"minValue": 0,35"maxValue": 100000036}37}38]39}40]41}
List data transfersCopy
Lists the transfers for a customer by source user, destination user, or status.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgXhKv7YuI-8JK3Iw4YzA-1234567890abcdefghijklmnopqrstuvwxyz",3"customer": "C01234567",4"new_owner_user_id": "105987654321012345678",5"old_owner_user_id": "102345678901234567890",6"status": "completed",7"max_results": 50,8"page_token": "CAE="9}
Sample Output
1{2"kind": "admin#datatransfers#dataTransfersList",3"etag": "\"MzM0MjE5NDEwODc5MzM4OTgzNjA\"",4"dataTransfers": [5{6"kind": "admin#datatransfer#DataTransfer",7"etag": "\"MTU2MzQ4NjcwMDAwMCM=\"",8"id": "DT12345678",9"oldOwnerUserId": "102345678901234567890",10"newOwnerUserId": "105987654321012345678",11"applicationDataTransfers": [12{13"applicationId": "55656082996",14"applicationTransferParams": [15{16"key": "DRIVE_FOLDER_IDS",17"value": [18"0B1234567890ABCDEF"19]20}21],22"applicationTransferStatus": "completed"23}24],25"overallTransferStatusCode": "completed",26"requestTime": "2023-05-15T10:30:00.000Z"27}28]29}
List group membersCopy
Retrieves a paginated list of all members in a group.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgQjXkTHJ9KzGZPwH7xN8jK-Ld1q2Xm3vZcRY",3"group_key": "developers@example.com",4"include_derived_membership": true,5"roles": "MEMBER",6"max_results": 100,7"page_token": "nextPageToken123"8}
Sample Output
1{2"kind": "admin#directory#members",3"etag": "\"abcdefghijklmnop\"",4"members": [5{6"kind": "admin#directory#member",7"etag": "\"qrstuvwxyz123456\"",8"id": "123456789",9"email": "john.doe@example.com",10"role": "MEMBER",11"type": "USER",12"status": "ACTIVE",13"delivery_settings": "ALL_MAIL"14},15{16"kind": "admin#directory#member",17"etag": "\"789abcdef0123456\"",18"id": "987654321",19"email": "jane.smith@example.com",20"role": "MEMBER",21"type": "USER",22"status": "ACTIVE",23"delivery_settings": "DIGEST"24}25],26"nextPageToken": "nextPageToken456"27}
List groupsCopy
Retrieve all groups of a domain or of a user given a userKey (paginated).
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgXhKSZFgdfgRGdTNYZjbvZXRzYWNhY2FjYWNhY2FjYWNhYw",3"domain": "example.com",4"max_results": 100,5"view_type": "admin_view",6"order_by": "email",7"sort_order": "ASCENDING"8}
Sample Output
1{2"kind": "admin#directory#groups",3"etag": "\"abcdefghijklmnop\"",4"groups": [5{6"kind": "admin#directory#group",7"id": "01234567890abcdef",8"etag": "\"qrstuvwxyz123456\"",9"email": "engineering@example.com",10"name": "Engineering Team",11"directMembersCount": "25",12"description": "Group for all engineering team members",13"adminCreated": "true",14"aliases": [15"eng@example.com",16"developers@example.com"17],18"nonEditableAliases": [19"engineering@example.com.test-google-a.com"20]21},22{23"kind": "admin#directory#group",24"id": "98765432109876543",25"etag": "\"zyxwvutsrqponmlk\"",26"email": "marketing@example.com",27"name": "Marketing Team",28"directMembersCount": "15",29"description": "Group for all marketing team members",30"adminCreated": "true",31"aliases": [32"mkt@example.com"33],34"nonEditableAliases": [35"marketing@example.com.test-google-a.com"36]37}38],39"nextPageToken": "ABCDEFGHIJKLMNOPQRSTUVWXYZ"40}
List organisational unitsCopy
Retrieves a list of all organizational units for an account.
Sample Input
1{2"customer": "my_customer",3"org_unit_path": "/",4"type": "all"5}
Sample Output
1{2"kind": "admin#directory#orgUnits",3"etag": "\"abcdefghijklmnop\"",4"organizationUnits": [5{6"kind": "admin#directory#orgUnit",7"etag": "\"qrstuvwxyz123456\"",8"name": "Root",9"description": "Root organizational unit",10"orgUnitPath": "/",11"orgUnitId": "id:123456789",12"parentOrgUnitPath": null,13"parentOrgUnitId": null,14"blockInheritance": false15},16{17"kind": "admin#directory#orgUnit",18"etag": "\"789abcdefghijklm\"",19"name": "Sales",20"description": "Sales department",21"orgUnitPath": "/Sales",22"orgUnitId": "id:987654321",23"parentOrgUnitPath": "/",24"parentOrgUnitId": "id:123456789",25"blockInheritance": false26},27{28"kind": "admin#directory#orgUnit",29"etag": "\"nopqrstuvwxyz012\"",30"name": "Engineering",31"description": "Engineering department",32"orgUnitPath": "/Engineering",33"orgUnitId": "id:456789123",34"parentOrgUnitPath": "/",35"parentOrgUnitId": "id:123456789",36"blockInheritance": true37}38]39}
List rolesCopy
Retrieves a paginated list of all the roles in a domain.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgVmOu3X9zJ-0Xn...",3"customer": "my_customer",4"max_results": 50,5"page_token": "nextPageToken123"6}
Sample Output
1{2"kind": "admin#directory#rolesList",3"etag": "\"abcdefghijklmnop\"",4"items": [5{6"kind": "admin#directory#role",7"etag": "\"qrstuvwxyz123456\"",8"roleId": 1234567890,9"roleName": "IT Administrator",10"roleDescription": "Manages IT resources and user accounts",11"rolePrivileges": [12{13"privilegeName": "MANAGE_DEVICES",14"serviceId": "00haapyml5qzdub"15},16{17"privilegeName": "MANAGE_USERS",18"serviceId": "00haapyml5qzdub"19}20],21"isSystemRole": false,22"isSuperAdminRole": false23},24{25"kind": "admin#directory#role",26"etag": "\"789012abcdefghij\"",27"roleId": 9876543210,28"roleName": "HR Manager",29"roleDescription": "Manages employee information and HR processes",30"rolePrivileges": [31{32"privilegeName": "MANAGE_USERS",33"serviceId": "00haapyml5qzdub"34},35{36"privilegeName": "VIEW_AUDIT_REPORTS",37"serviceId": "00haapyml5qzdub"38}39],40"isSystemRole": false,41"isSuperAdminRole": false42}43],44"nextPageToken": "nextPageToken456"45}
List shared contactsCopy
Retrieve all of a user's contacts
Sample Input
1{2"access_token": "ya29.a0AWY7CklhO1Tn-Uy1xJzV8JqwZpH9KZ3m2X9rT6Vj5nQ7cFgYzLxR3vGJ8bCxNzM",3"user_email": "john.doe@example.com",4"updated_since": "2023-05-01T00:00:00Z",5"show_deleted": false,6"sort_order": "ascending",7"offset": 0,8"limit": 259}
Sample Output
1{2"contacts": [3{4"id": "http://www.google.com/m8/feeds/contacts/john.doe%40example.com/base/1234567890",5"updated": "2023-05-15T10:30:00.000Z",6"app:edited": {7"value": "2023-05-15T10:30:00.000Z",8"xmlns:app": "http://www.w3.org/2007/app"9},10"category": {11"scheme": "http://schemas.google.com/g/2005#kind",12"term": "http://schemas.google.com/contact/2008#contact"13},14"title": "Jane Smith",15"link": [16{17"rel": "self",18"type": "application/atom+xml",19"href": "https://www.google.com/m8/feeds/contacts/john.doe%40example.com/full/1234567890",20"gd:etag": "\"QXc7cDVSLyt7I2A9XRdWFEUDRQU.\""21},22{23"rel": "edit",24"type": "application/atom+xml",25"href": "https://www.google.com/m8/feeds/contacts/john.doe%40example.com/full/1234567890",26"gd:etag": "\"QXc7cDVSLyt7I2A9XRdWFEUDRQU.\""27}28]29}30],31"pagination": {32"startIndex": 1,33"itemsPerPage": null,34"totalResults": 135}36}
List usersCopy
Retrieves a paginated list of either deleted users or all users in a domain.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgXhYZ1234567890abcdefghijklmnopqrstuvwxyz",3"domain": "example.com",4"projection": "full",5"max_results": 100,6"order_by": "email",7"sort_order": "ASCENDING",8"view_type": "admin_view"9}
Sample Output
1{2"kind": "admin#directory#users",3"etag": "\"abcdefghijklmnop\"",4"users": [5{6"kind": "admin#directory#user",7"id": "123456789012345678901",8"etag": "\"qrstuvwxyz1234567890\"",9"primaryEmail": "john.doe@example.com",10"name": {11"givenName": "John",12"familyName": "Doe",13"fullName": "John Doe"14},15"isAdmin": false,16"isDelegatedAdmin": false,17"lastLoginTime": "2023-04-15T10:30:45.000Z",18"creationTime": "2022-01-01T09:00:00.000Z",19"agreedToTerms": true,20"suspended": false,21"archived": false,22"changePasswordAtNextLogin": false,23"ipWhitelisted": false,24"aliases": [25"jdoe@example.com"26],27"nonEditableAliases": [28"john.d@example.com"29],30"customerId": "C00abcd123",31"orgUnitPath": "/",32"isMailboxSetup": true,33"isEnrolledIn2Sv": true,34"isEnforcedIn2Sv": true,35"includeInGlobalAddressList": true,36"thumbnailPhotoUrl": "https://example.com/photo/123456789012345678901",37"thumbnailPhotoEtag": "\"ABCDEFGHIJKLMNOP\""38},39{40"kind": "admin#directory#user",41"id": "987654321098765432109",42"etag": "\"zyxwvutsrqponmlkjihg\"",43"primaryEmail": "jane.smith@example.com",44"name": {45"givenName": "Jane",46"familyName": "Smith",47"fullName": "Jane Smith"48},49"isAdmin": true,50"isDelegatedAdmin": true,51"lastLoginTime": "2023-04-16T14:20:30.000Z",52"creationTime": "2022-02-15T11:30:00.000Z",53"agreedToTerms": true,54"suspended": false,55"archived": false,56"changePasswordAtNextLogin": false,57"ipWhitelisted": true,58"aliases": [59"jsmith@example.com"60],61"nonEditableAliases": [62"jane.s@example.com"63],64"customerId": "C00abcd123",65"orgUnitPath": "/Admin",66"isMailboxSetup": true,67"isEnrolledIn2Sv": true,68"isEnforcedIn2Sv": true,69"includeInGlobalAddressList": true,70"thumbnailPhotoUrl": "https://example.com/photo/987654321098765432109",71"thumbnailPhotoEtag": "\"QPONMLKJIHGFEDCBA\""72}73],74"nextPageToken": "token_for_next_page"75}
Update groupCopy
Updates a group. Fields that are not present in the request will be preserved, and fields set to null will be cleared.
Sample Input
1{2"access_token": "ya29.a0AWY7CklhO1J3M2V5cXJ0ZHJzN3ZuY2pIbGF6WnVwX3NmZjRxOWZrYmFiY2RlZg==",3"group_key": "developers@example.com",4"name": "Development Team",5"description": "This group is for all developers working on our main product. Use this group for technical discussions, code reviews, and project updates.",6"email": "dev-team@example.com"7}
Sample Output
1{2"kind": "admin#directory#group",3"id": "03nsf8g2jdnsfkj23",4"etag": "\"ahJ3OHg63hdkel20dh\"",5"email": "dev-team@example.com",6"name": "Development Team",7"directMembersCount": "15",8"description": "This group is for all developers working on our main product. Use this group for technical discussions, code reviews, and project updates.",9"adminCreated": "true",10"aliases": [11"developers@example.com",12"engineering@example.com"13],14"nonEditableAliases": [15"dev-team@example.com"16]17}
Update group membershipCopy
Updates the membership properties of a user in the specified group. Fields that are not present in the request will be preserved, and fields set to null will be cleared.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgXhKbLzNQDh-YQzjJFUa1234567890abcdefghijklmnop",3"group_key": "developers@example.com",4"member_key": "john.doe@example.com",5"email": "john.doe@example.com",6"delivery_settings": "DIGEST",7"role": "MEMBER"8}
Sample Output
1{2"isMember": true3}
Update organisational unitCopy
Updates an organizational unit. Fields that are not present in the request will be preserved, and fields set to null will be cleared.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgQjGkJLzk9Ej-vXHZwHbLOv3jS4Kf7VnGZ3Hl8qYzUGv_Xj8",3"customer": "C01234567",4"org_unit_path": "/Sales/North_America",5"name": "North_America",6"block_inheritance": false,7"description": "Sales team for North America region",8"parent_org_unit_path": "/Sales"9}
Sample Output
1{2"kind": "admin#directory#orgUnit",3"etag": "\"abcdefghijklmnop\"",4"name": "North_America",5"description": "Sales team for North America region",6"orgUnitPath": "/Sales/North_America",7"orgUnitId": "id:NA_Sales_123",8"parentOrgUnitPath": "/Sales",9"parentOrgUnitId": "id:Sales_456",10"blockInheritance": false11}
Update schemaCopy
Updates a schema. Fields that are not present in the request will be preserved, and fields set to null will be cleared.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBnXcGLtzqtXrJgHYeXF5XzOPxzK1Oj9Ht7V8pjQ",3"customer": "C03az79cb",4"schema_key": "Employee_Info",5"schema_name": "Employee Information",6"display_name": "Employee Details",7"fields": [8{9"display_name": "Employee ID",10"field_name": "employee_id",11"field_type": "STRING",12"indexed": true,13"multi_valued": false,14"read_access_type": "ADMINS_AND_SELF"15},16{17"display_name": "Hire Date",18"field_name": "hire_date",19"field_type": "DATE",20"indexed": true,21"multi_valued": false,22"read_access_type": "ALL_DOMAIN_USERS"23},24{25"display_name": "Salary",26"field_name": "salary",27"field_type": "DOUBLE",28"indexed": true,29"multi_valued": false,30"read_access_type": "ADMINS_AND_SELF",31"numeric_indexing_spec": {32"min_value": 0,33"max_value": 100000034}35}36]37}
Sample Output
1{2"kind": "admin#directory#schema",3"schemaId": "Employee_Info",4"etag": "\"MjAyMy0wNS0yOFQxMDoyMDozMC4xMjNaIg==\"",5"schemaName": "Employee Information",6"displayName": "Employee Details",7"fields": [8{9"kind": "admin#directory#schema#fieldspec",10"fieldId": "employee_id",11"etag": "\"MjAyMy0wNS0yOFQxMDoyMDozMC4xMjNaIg==\"",12"fieldType": "STRING",13"fieldName": "employee_id",14"displayName": "Employee ID",15"multiValued": false,16"readAccessType": "ADMINS_AND_SELF",17"indexed": true18},19{20"kind": "admin#directory#schema#fieldspec",21"fieldId": "hire_date",22"etag": "\"MjAyMy0wNS0yOFQxMDoyMDozMC4xMjNaIg==\"",23"fieldType": "DATE",24"fieldName": "hire_date",25"displayName": "Hire Date",26"multiValued": false,27"readAccessType": "ALL_DOMAIN_USERS",28"indexed": true29},30{31"kind": "admin#directory#schema#fieldspec",32"fieldId": "salary",33"etag": "\"MjAyMy0wNS0yOFQxMDoyMDozMC4xMjNaIg==\"",34"fieldType": "DOUBLE",35"fieldName": "salary",36"displayName": "Salary",37"multiValued": false,38"readAccessType": "ADMINS_AND_SELF",39"indexed": true,40"numericIndexingSpec": {41"minValue": 0,42"maxValue": 100000043}44}45]46}
Update shared contactCopy
Update shared shared contact
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgkVWqS3k-MR9j3_fUq8Hq4Jy7...",3"user_email": "user@example.com",4"contact_id": "http://www.google.com/m8/feeds/contacts/user%40example.com/base/1234567890",5"name": {6"given_name": "John",7"family_name": "Doe",8"full_name": "John Doe"9},10"email": [11{12"attributes": {13"address": "johndoe@example.com",14"rel": "http://schemas.google.com/g/2005#work",15"primary": true16}17}18],19"phone_number": [20{21"attributes": {22"rel": "http://schemas.google.com/g/2005#mobile"23},24"text": "+1234567890"25}26],27"organization": [28{29"attributes": {30"rel": "http://schemas.google.com/g/2005#work"31},32"organization_name": "Acme Inc.",33"organization_title": "Software Engineer"34}35],36"atom_content": "Updated contact information"37}
Sample Output
1{2"entry": {3"id": "http://www.google.com/m8/feeds/contacts/user%40example.com/base/1234567890",4"updated": "2023-04-20T10:30:00.000Z",5"app:edited": {6"value": "2023-04-20T10:30:00.000Z",7"xmlns:app": "http://www.w3.org/2007/app"8},9"category": {10"scheme": "http://schemas.google.com/g/2005#kind",11"term": "http://schemas.google.com/contact/2008#contact"12},13"title": "John Doe",14"content": "Updated contact information",15"link": [16{17"rel": "self",18"type": "application/atom+xml",19"href": "https://www.google.com/m8/feeds/contacts/user%40example.com/full/1234567890"20},21{22"rel": "edit",23"type": "application/atom+xml",24"href": "https://www.google.com/m8/feeds/contacts/user%40example.com/full/1234567890"25}26],27"xmlns": "http://www.w3.org/2005/Atom",28"xmlns:batch": "http://schemas.google.com/gdata/batch",29"xmlns:gd": "http://schemas.google.com/g/2005",30"xmlns:gContact": "http://schemas.google.com/contact/2008",31"gd:etag": "\"Q3c5eDVSLyt7I2A9XR5VFk0KQAQ.\""32}33}
Update userCopy
Updates a user. Fields that are not present in the request will be preserved, and fields set to null will be cleared.
Sample Input
1{2"access_token": "ya29.a0AfH6SMBx8_B5...",3"user_key": "john.doe@example.com",4"name": {5"given_name": "John",6"family_name": "Doe"7},8"suspended": false,9"password": "newP@ssw0rd123!",10"primary_email": "john.doe@example.com",11"address": [12{13"type": "work",14"primary": true,15"street_address": "123 Main St",16"locality": "San Francisco",17"region": "CA",18"postal_code": "94122",19"country": "United States",20"country_code": "US"21}22],23"phones": [24{25"type": "work",26"primary": true,27"value": "+1 415-555-1234"28}29],30"org_unit_path": "/Sales",31"change_password_at_next_login": true32}
Sample Output
1{2"kind": "admin#directory#user",3"id": "123456789012345678901",4"etag": "\"abcdefghijklmnop\"",5"primaryEmail": "john.doe@example.com",6"name": {7"givenName": "John",8"familyName": "Doe",9"fullName": "John Doe"10},11"isAdmin": false,12"isDelegatedAdmin": false,13"lastLoginTime": "2023-04-15T10:30:00.000Z",14"creationTime": "2022-01-01T09:00:00.000Z",15"agreedToTerms": true,16"suspended": false,17"changePasswordAtNextLogin": true,18"ipWhitelisted": false,19"emails": [20{21"address": "john.doe@example.com",22"type": "work",23"primary": true24}25],26"addresses": [27{28"type": "work",29"primary": true,30"streetAddress": "123 Main St",31"locality": "San Francisco",32"region": "CA",33"postalCode": "94122",34"country": "United States",35"countryCode": "US"36}37],38"phones": [39{40"value": "+1 415-555-1234",41"type": "work",42"primary": true43}44],45"orgUnitPath": "/Sales",46"isMailboxSetup": true,47"isEnrolledIn2Sv": false,48"isEnforcedIn2Sv": false,49"includeInGlobalAddressList": true50}
DDL operationsCopy
List organisational units (DDL)Copy
Note that DDL operations can only be called directly by Connectors API, or when using CustomJS in the Embedded solution editor for e.g. DDL-dependent data mapping
Sample Input
1{2"access_token": "ya29.a0AfH6SMBgXJv3YhN5zK7ZdBr8Hx-_Kj2mK3L1pQZ9xN3Q5tY6vF8jK2lM0Xn8G6H7bCxY"3}
Sample Output
1{2"organizationalUnits": [3{4"kind": "admin#directory#orgUnit",5"etag": "\"SUQwNTYxMjU1MzU4NzUyMDAw\"",6"name": "Sales",7"description": "Sales department",8"orgUnitPath": "/Sales",9"parentOrgUnitPath": "/",10"blockInheritance": false11},12{13"kind": "admin#directory#orgUnit",14"etag": "\"SUQwNTYxMjU1MzU4NzUyMDAx\"",15"name": "Marketing",16"description": "Marketing department",17"orgUnitPath": "/Marketing",18"parentOrgUnitPath": "/",19"blockInheritance": false20},21{22"kind": "admin#directory#orgUnit",23"etag": "\"SUQwNTYxMjU1MzU4NzUyMDAy\"",24"name": "Engineering",25"description": "Engineering department",26"orgUnitPath": "/Engineering",27"parentOrgUnitPath": "/",28"blockInheritance": false29}30]31}
List roles (DDL)Copy
Note that DDL operations can only be called directly by Connectors API, or when using CustomJS in the Embedded solution editor for e.g. DDL-dependent data mapping
Sample Input
1{2"access_token": "ya29.a0AfH6SMBnXmWkS7zJ3zwnL8vWrGZ5tKhXM1J2YgXcZ9l0qZ3jK4m2L5sQ8Xn3Q6tY7bVm1XxR8f0tGjH2Kl"3}
Sample Output
1{2"roles": [3{4"name": "roles/admin",5"title": "Admin",6"description": "Full access to all resources",7"etag": "ABC123"8},9{10"name": "roles/editor",11"title": "Editor",12"description": "Edit access to most resources",13"etag": "DEF456"14},15{16"name": "roles/viewer",17"title": "Viewer",18"description": "View access to most resources",19"etag": "GHI789"20}21]22}