# Users - Drive - Permissions - [API documentation](#api-documentation) - [Query documentation](Users-Drive-Query) - [Permission Matches](Permission-Matches) - [Definitions](#definitions) - [GUI API permission name mapping](#gui-api-permission-name-mapping) - [Manage file permissions/sharing](#manage-file-permissionssharing) - [Display file permissions/sharing](#display-file-permissionssharing) - [Delete all ACLs except owner from a file](#delete-all-acls-except-owner-from-a-file) - [Delete all ACLs except owner from a user's My Drive](#delete-all-acls-except-owner-from-a-users-my-drive) - [Change shares to User1 to shares to User2](#change-shares-to-user1-to-shares-to-user2) - [Map All ACLs from an old domain to a new domain](#map-all-acls-from-an-old-domain-to-a-new-domain) - [Remove ACLs for a specific user or group email address](#remove-ACLs-for-a-specific-user-or-group-email-address) - [Remove ACLs for all users-groups in external domains](#remove-acls-for-all-users-groups-in-external-domains) - [Remove domainCanFind-domainWithLink ACLs for internal domain](#remove-domaincanfind-domainwithlink-acls-for-internal-domain) - [Remove My Drive ACLs for external domains](#remove-my-drive-acls-for-external-domains) - [Remove anyoneCanFind-anyoneWithLink ACLs](#remove-anyonecanfind-anyonewithlink-acls) ## API documentation * [Drive API - Permissions](https://developers.google.com/drive/api/v3/reference/permissions) * [Shortcuts](https://developers.google.com/drive/api/guides/shortcuts) * [Roles and permissions](https://developers.google.com/workspace/drive/api/guides/ref-roles) * [Limited and Expansive Access](https://developers.google.com/workspace/drive/api/guides/limited-expansive-access) ## Definitions * [``](Drive-File-Selection) * [``](Collections-of-Users) ``` ::= (.)+ ::= @ ::= (json [charset ] ) | (json file [charset ]) | ::= id: ::= || ::= createddate|createdtime| folder| lastviewedbyme|lastviewedbymedate|lastviewedbymetime|lastviewedbyuser| modifiedbyme|modifiedbymedate|modifiedbymetime|modifiedbyuser| modifieddate|modifiedtime| name| name_natural| quotabytesused|quotaused| recency| sharedwithmedate|sharedwithmetime| starred| title| title_natural| viewedbymedate|viewedbymetime ::= additionalroles| allowfilediscovery| basicpermissions| deleted| displayname| domain| emailaddress| expirationdate| expirationtime| id| name| pendingowner| permissiondetails| photolink| role| type| view| withlink ::= "(,)*" ``` `basicpermissions` is equivalent to: ``` permissions.allowFileDiscovery, permissions.deleted, permissions.domain, permissions.emailAddress, permissions.expirationTime, permissions.id, permissions.role, permissions.type ``` In particular, this omits these fields: ``` permissions.displayName, permissions.permissionDetails, permissions.photoLink, permissions.teamDrivePermissionDetails ``` This allows you to select the essential permission fields without enumerating them. Of course, you can specify `permissions` to get all of the fields, enumerate the specific fields you want or specify `basicpermissions` and additional permission fields, e.g., `permissions.displayName`. ``` ::= createddate|createdtime| folder| modifiedbyme|modifiedbymedate|modifiedbymetime|modifiedbyuser| modifieddate|modifiedtime| name| name_natural| quotabytesused|quotaused| recency| sharedwithmedate|sharedwithmetime| starred| title| title_natural| viewedbymedate|viewedbymetime ::= manager|organizer|owner| contentmanager|fileorganizer| contributor|writer|editor| commenter| viewer|reader ::= "(,)*" ::= anyone|domain|group|user ::= "(,)*" ::= anyone|anyonewithlink|id: ::= | ::= "(,)*" ::= | (json [charset ] )|(json file [charset ]) | | | | See: https://github.com/GAM-team/GAM/wiki/Collections-of-Items ::= anyone; | anyonewithlink; | domain:; | domainwithlink:; | group:; | user:; ::= "(, ::= | (json [charset ] )|(json file [charset ]) | | | | See: https://github.com/GAM-team/GAM/wiki/Collections-of-Items ``` ## GUI API permission name mapping | GUI setting | API setting | |------------|------------| | Manager | organizer | | Content manager | fileOrganizer | | Contributor | writer | | Commenter | commenter | | Viewer | reader | ## Manage file permissions/sharing ### Process single ACLs. ### Create ``` gam create|add drivefileacl anyone|(user )|(group )|(domain ) (role ) [withlink|(allowfilediscovery|discoverable [])] [expiration