Method: files.copy
Stay organized with collections
Save and categorize content based on your preferences.
Creates a copy of a file and applies any requested updates with patch semantics. For more information, see Create and manage files.
HTTP request
POST https://www.googleapis.com/drive/v3/files/{fileId}/copy
The URL uses gRPC Transcoding syntax.
Path parameters
Parameters |
fileId |
string
The ID of the file.
|
Query parameters
Parameters |
enforceSingleParent (deprecated) |
boolean
Deprecated: Copying files into multiple folders is no longer supported. Use shortcuts instead.
|
ignoreDefaultVisibility |
boolean
Whether to ignore the domain's default visibility settings for the created file. Domain administrators can choose to make all uploaded files visible to the domain by default; this parameter bypasses that behavior for the request. Permissions are still inherited from parent folders.
|
keepRevisionForever |
boolean
Whether to set the keepForever field in the new head revision. This is only applicable to files with binary content in Google Drive. Only 200 revisions for the file can be kept forever. If the limit is reached, try deleting pinned revisions.
|
ocrLanguage |
string
A language hint for OCR processing during image import (ISO 639-1 code).
|
supportsAllDrives |
boolean
Whether the requesting application supports both My Drives and shared drives.
|
supportsTeamDrives (deprecated) |
boolean
Deprecated: Use supportsAllDrives instead.
|
includePermissionsForView |
string
Specifies which additional view's permissions to include in the response. Only published is supported.
|
includeLabels |
string
A comma-separated list of IDs of labels to include in the labelInfo part of the response.
|
Request body
The request body contains an instance of File
.
Response body
If successful, the response body contains an instance of File
.
Authorization scopes
Requires one of the following OAuth scopes:
https://www.googleapis.com/auth/drive
https://www.googleapis.com/auth/drive.appdata
https://www.googleapis.com/auth/drive.file
https://www.googleapis.com/auth/drive.photos.readonly
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-08-26 UTC.
[null,null,["Last updated 2025-08-26 UTC."],[],[],null,["# Method: files.copy\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\nCreates a copy of a file and applies any requested updates with patch semantics.\n\n### HTTP request\n\n`POST https://www.googleapis.com/drive/v3/files/{fileId}/copy`\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 of the file. |\n\n### Query parameters\n\n| Parameters ||\n|---------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `enforceSingleParent` | `boolean` Deprecated. Copying files into multiple folders is no longer supported. Use shortcuts instead. |\n| `ignoreDefaultVisibility` | `boolean` Whether to ignore the domain's default visibility settings for the created file. Domain administrators can choose to make all uploaded files visible to the domain by default; this parameter bypasses that behavior for the request. Permissions are still inherited from parent folders. |\n| `keepRevisionForever` | `boolean` Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Google Drive. Only 200 revisions for the file can be kept forever. If the limit is reached, try deleting pinned revisions. |\n| `ocrLanguage` | `string` A language hint for OCR processing during image import (ISO 639-1 code). |\n| `supportsAllDrives` | `boolean` Whether the requesting application supports both My Drives and shared drives. |\n| `supportsTeamDrives` **(deprecated)** | `boolean` Deprecated: Use `supportsAllDrives` instead. |\n| `includePermissionsForView` | `string` Specifies which additional view's permissions to include in the response. Only 'published' is supported. |\n| `includeLabels` | `string` A comma-separated list of IDs of labels to include in the `labelInfo` part of the response. |\n\n### Request body\n\nThe request body contains an instance of [File](/workspace/drive/api/reference/rest/v3/files#File).\n\n### Response body\n\nIf successful, the response body contains an instance of [File](/workspace/drive/api/reference/rest/v3/files#File).\n\n### Authorization scopes\n\nRequires one of the following OAuth scopes:\n\n- `https://www.googleapis.com/auth/drive`\n- `\n https://www.googleapis.com/auth/drive.appdata`\n- `\n https://www.googleapis.com/auth/drive.file`\n- `\n https://www.googleapis.com/auth/drive.photos.readonly`\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)."]]