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. Folders cannot be copied. Try it now.


HTTP request



Parameter name Value Description
Path parameters
fileId string The ID of the file.
Optional query parameters
enforceSingleParent boolean Deprecated. Copying files into multiple folders is no longer supported. Use shortcuts instead. (Default: false)
fields string The paths of the fields you want included in the response. If not specified, the response includes a default set of fields specific to this method. For development you can use the special value * to return all fields, but you'll achieve greater performance by only selecting the fields you need. For more information, see Return specific fields for a file.
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. (Default: false)
includeLabels string A comma-separated list of IDs of labels to include in the labelInfo part of the response.
includePermissionsForView string Specifies which additional view's permissions to include in the response. Only 'published' is supported.
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. (Default: false)
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. (Default: false)
supportsTeamDrives boolean Deprecated use supportsAllDrives instead. (Default: false)


This request requires authorization with at least one of the following scopes:


Some scopes are restricted and require a security assessment for your app to use them. For more information, see the authentication and authorization page.

Request body

In the request body, supply a Files resource with the following properties:

Property name Value Description Notes
Optional Properties
appProperties object A collection of arbitrary key-value pairs which are private to the requesting app.

Entries with null values are cleared in update and copy requests. These properties can only be retrieved using an authenticated request. An authenticated request uses an access token obtained with a OAuth 2 client ID. You cannot use an API key to retrieve private properties.

contentHints.thumbnail.image bytes The thumbnail data encoded with URL-safe Base64 (RFC 4648 section 5). writable
contentHints.thumbnail.mimeType string The MIME type of the thumbnail. writable
contentRestrictions[].readOnly boolean Whether the content of the file is read-only. If a file is read-only, a new revision of the file may not be added, comments may not be added or modified, and the title of the file may not be modified. writable
contentRestrictions[].reason string Reason for why the content of the file is restricted. This is only mutable on requests that also set readOnly=true. writable
copyRequiresWriterPermission boolean Whether the options to copy, print, or download this file, should be disabled for readers and commenters. writable
description string A short description of the file. writable
id string The ID of the file. writable
mimeType string The MIME type of the file.

Google Drive will attempt to automatically detect an appropriate value from uploaded content if no value is provided. The value cannot be changed unless a new revision is uploaded.

If a file is created with a Google Doc MIME type, the uploaded content will be imported if possible. The supported import formats are published in the About resource.

modifiedTime datetime The last time the file was modified by anyone (RFC 3339 date-time).

Note that setting modifiedTime will also update modifiedByMeTime for the user.

name string The name of the file. This is not necessarily unique within a folder. Note that for immutable items such as the top level folders of shared drives, My Drive root folder, and Application Data folder the name is constant. writable
parents[] list The IDs of the parent folders which contain the file.

If not specified as part of a create request, the file will be placed directly in the user's My Drive folder. If not specified as part of a copy request, the file will inherit any discoverable parents of the source file. Update requests must use the addParents and removeParents parameters to modify the parents list.

properties object A collection of arbitrary key-value pairs which are visible to all apps.

Entries with null values are cleared in update and copy requests.

starred boolean Whether the user has starred the file. writable
viewedByMeTime datetime The last time the file was viewed by the user (RFC 3339 date-time). writable
writersCanShare boolean Whether users with only writer permission can modify the file's permissions. Not populated for items in shared drives. writable


If successful, this method returns a Files resource in the response body.

Try it!

Use the APIs Explorer below to call this method on live data and see the response.