Method: permissions.insert
Stay organized with collections
Save and categorize content based on your preferences.
Inserts a permission for a file or shared drive.
Warning: Concurrent permissions operations on the same file are not supported; only the last update is applied.
HTTP request
POST https://www.googleapis.com/drive/v2/files/{fileId}/permissions
The URL uses gRPC Transcoding syntax.
Path parameters
Parameters |
fileId |
string
The ID for the file or shared drive.
|
Query parameters
Parameters |
emailMessage |
string
A plain text custom message to include in notification emails.
|
enforceSingleParent (deprecated) |
boolean
Deprecated: See moveToNewOwnersRoot for details.
|
moveToNewOwnersRoot |
boolean
This parameter will only take effect if the item is not in a shared drive and the request is attempting to transfer the ownership of the item. If set to true , the item will be moved to the new owner's My Drive root folder and all prior parents removed. If set to false , parents are not changed.
|
sendNotificationEmails |
boolean
Whether to send notification emails when sharing to users or groups. This parameter is ignored and an email is sent if the role is owner .
|
supportsAllDrives |
boolean
Whether the requesting application supports both My Drives and shared drives.
|
supportsTeamDrives (deprecated) |
boolean
Deprecated: Use supportsAllDrives instead.
|
useDomainAdminAccess |
boolean
Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs.
|
enforceExpansiveAccess |
boolean
Whether the request should enforce expansive access rules.
|
Request body
The request body contains an instance of Permission
.
Response body
If successful, the response body contains a newly created instance of Permission
.
Authorization scopes
Requires one of the following OAuth scopes:
https://www.googleapis.com/auth/docs
https://www.googleapis.com/auth/drive
https://www.googleapis.com/auth/drive.file
Some scopes are restricted and require a security assessment for your app to use them. For more information, see the Authorization guide.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-06-02 UTC.
[null,null,["Last updated 2025-06-02 UTC."],[],[],null,["# Method: permissions.insert\n\n- [HTTP request](#body.HTTP_TEMPLATE)\n- [Path parameters](#body.PATH_PARAMETERS)\n- [Query parameters](#body.QUERY_PARAMETERS)\n- [Request body](#body.request_body)\n- [Response body](#body.response_body)\n- [Authorization scopes](#body.aspect)\n- [Try it!](#try-it)\n\nInserts a permission for a file or shared drive.\n\n**Warning:** Concurrent permissions operations on the same file are not supported; only the last update is applied.\n\n### HTTP request\n\n`POST https://www.googleapis.com/drive/v2/files/{fileId}/permissions`\n\nThe URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.\n\n### Path parameters\n\n| Parameters ||\n|----------|-----------------------------------------------|\n| `fileId` | `string` The ID for the file or shared drive. |\n\n### Query parameters\n\n| Parameters ||\n|----------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `emailMessage` | `string` A plain text custom message to include in notification emails. |\n| `enforceSingleParent` **(deprecated)** | `boolean` Deprecated: See `moveToNewOwnersRoot` for details. |\n| `moveToNewOwnersRoot` | `boolean` This parameter will only take effect if the item is not in a shared drive and the request is attempting to transfer the ownership of the item. If set to `true`, the item will be moved to the new owner's My Drive root folder and all prior parents removed. If set to `false`, parents are not changed. |\n| `sendNotificationEmails` | `boolean` Whether to send notification emails when sharing to users or groups. This parameter is ignored and an email is sent if the `role` is `owner`. |\n| `supportsAllDrives` | `boolean` Whether the requesting application supports both My Drives and shared drives. |\n| `supportsTeamDrives` **(deprecated)** | `boolean` Deprecated: Use `supportsAllDrives` instead. |\n| `useDomainAdminAccess` | `boolean` Issue the request as a domain administrator; if set to true, then the requester will be granted access if the file ID parameter refers to a shared drive and the requester is an administrator of the domain to which the shared drive belongs. |\n| `enforceExpansiveAccess` | `boolean` Whether the request should enforce expansive access rules. |\n\n### Request body\n\nThe request body contains an instance of [Permission](/workspace/drive/api/reference/rest/v2/permissions#Permission).\n\n### Response body\n\nIf successful, the response body contains a newly created instance of [Permission](/workspace/drive/api/reference/rest/v2/permissions#Permission).\n\n### Authorization scopes\n\nRequires one of the following OAuth scopes:\n\n- `https://www.googleapis.com/auth/docs`\n- `\n https://www.googleapis.com/auth/drive`\n- `\n https://www.googleapis.com/auth/drive.file`\n\nSome scopes are restricted and require a security assessment for your app to use them. For more information, see the [Authorization guide](/workspace/guides/configure-oauth-consent)."]]