Google: Creates a copy of a file and applies any requested updates with patch semantics For more information, see Create and manage files (https: developers google com workspace drive api guides create-file) — response body
Creates a copy of a file and applies any requested updates with patch semantics. For more information, see [Create and manage files](https://developers.google.com/workspace/drive/api/guides/create-file).: response body. Complete fields and constraints for contract 2026-10-27.
API reference · Contract 2026-10-27
SDK schema: Creates a copy of a file and applies any requested updates with patch semantics For more information, see Create and manage files (https: developers google com workspace drive api guides create-file) — response body
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | The metadata for a file. Some resource methods (such as `files.update`) require a `fileId`. Use the `files.list` method to retrieve the ID for a file. |
appProperties | object | Optional | 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. Additional keys: see wildcard field |
appProperties.* | string | Additional keys | |
capabilities | Model | Optional | Expand Creates a copy of a file and applies any requested updates with patch semantics For more information, see Create and manage files (https: developers google com workspace drive api guides create-file) — response body — capabilities |
clientEncryptionDetails | Model | Optional | Expand Creates a copy of a file and applies any requested updates with patch semantics For more information, see Create and manage files (https: developers google com workspace drive api guides create-file) — response body — client Encryption Details Client Side Encryption related details. Contains details about the encryption state of the file and details regarding the encryption mechanism that clients need to use when decrypting the contents of this item. This will only be present on files and not on folders or shortcuts. |
contentHints | Model | Optional | Expand Creates a copy of a file and applies any requested updates with patch semantics For more information, see Create and manage files (https: developers google com workspace drive api guides create-file) — response body — content Hints |
contentRestrictions | array | Optional | Restrictions for accessing the content of the file. Only populated if such a restriction exists. |
contentRestrictions[] | Model | Each item | Expand Creates a copy of a file and applies any requested updates with patch semantics For more information, see Create and manage files (https: developers google com workspace drive api guides create-file) — response body — content Restrictions item |
copyRequiresWriterPermission | boolean | Optional | Whether the options to copy, print, or download this file should be disabled for readers and commenters. |
createdTime | string | Optional | The time at which the file was created (RFC 3339 date-time). Format: date-time |
description | string | Optional | A short description of the file. |
downloadRestrictions | Model | Optional | Expand Creates a copy of a file and applies any requested updates with patch semantics For more information, see Create and manage files (https: developers google com workspace drive api guides create-file) — response body — download Restrictions Download restrictions applied on the file. |
driveId | string | Optional | Output only. ID of the shared drive the file resides in. Only populated for items in shared drives. |
explicitlyTrashed | boolean | Optional | Output only. Whether the file has been explicitly trashed, as opposed to recursively trashed from a parent folder. |
exportLinks | object | Optional | Output only. Links for exporting Docs Editors files to specific formats. Read only: true Additional keys: see wildcard field |
exportLinks.* | string | Additional keys | |
fileExtension | string | Optional | Output only. The final component of `fullFileExtension`. This is only available for files with binary content in Google Drive. |
folderColorRgb | string | Optional | The color for a folder or a shortcut to a folder as an RGB hex string. The supported colors are published in the `folderColorPalette` field of the [`about`](/workspace/drive/api/reference/rest/v3/about) resource. If an unsupported color is specified, the closest color in the palette is used instead. |
fullFileExtension | string | Optional | Output only. The full file extension extracted from the `name` field. May contain multiple concatenated extensions, such as “tar.gz”. This is only available for files with binary content in Google Drive. This is automatically updated when the `name` field changes, however it’s not cleared if the new name doesn’t contain a valid extension. |
hasAugmentedPermissions | boolean | Optional | Output only. Whether there are permissions directly on this file. This field is only populated for items in shared drives. |
hasThumbnail | boolean | Optional | Output only. Whether this file has a thumbnail. This doesn’t indicate whether the requesting app has access to the thumbnail. To check access, look for the presence of the thumbnailLink field. |
headRevisionId | string | Optional | Output only. The ID of the file’s head revision. This is currently only available for files with binary content in Google Drive. |
iconLink | string | Optional | Output only. A static, unauthenticated link to the file’s icon. |
id | string | Optional | The ID of the file. |
imageMediaMetadata | object | Optional | Output only. Additional metadata about image media, if available. |
imageMediaMetadata.aperture | JSON | Optional | |
imageMediaMetadata.aperture (anyOf 1) | number | Alternative | Output only. The aperture used to create the photo (f-number). Format: float |
imageMediaMetadata.aperture (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
imageMediaMetadata.cameraMake | string | Optional | Output only. The make of the camera used to create the photo. |
imageMediaMetadata.cameraModel | string | Optional | Output only. The model of the camera used to create the photo. |
imageMediaMetadata.colorSpace | string | Optional | Output only. The color space of the photo. |
imageMediaMetadata.exposureBias | JSON | Optional | |
imageMediaMetadata.exposureBias (anyOf 1) | number | Alternative | Output only. The exposure bias of the photo (APEX value). Format: float |
imageMediaMetadata.exposureBias (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
imageMediaMetadata.exposureMode | string | Optional | Output only. The exposure mode used to create the photo. |
imageMediaMetadata.exposureTime | JSON | Optional | |
imageMediaMetadata.exposureTime (anyOf 1) | number | Alternative | Output only. The length of the exposure, in seconds. Format: float |
imageMediaMetadata.exposureTime (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
imageMediaMetadata.flashUsed | boolean | Optional | Output only. Whether a flash was used to create the photo. |
imageMediaMetadata.focalLength | JSON | Optional | |
imageMediaMetadata.focalLength (anyOf 1) | number | Alternative | Output only. The focal length used to create the photo, in millimeters. Format: float |
imageMediaMetadata.focalLength (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
imageMediaMetadata.height | JSON | Optional | |
imageMediaMetadata.height (anyOf 1) | integer | Alternative | Output only. The height of the image in pixels. Format: int32 |
imageMediaMetadata.height (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
imageMediaMetadata.isoSpeed | JSON | Optional | |
imageMediaMetadata.isoSpeed (anyOf 1) | integer | Alternative | Output only. The ISO speed used to create the photo. Format: int32 |
imageMediaMetadata.isoSpeed (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
imageMediaMetadata.lens | string | Optional | Output only. The lens used to create the photo. |
imageMediaMetadata.location | object | Optional | Output only. Geographic location information stored in the image. |
imageMediaMetadata.location.altitude | JSON | Optional | |
imageMediaMetadata.location.altitude (anyOf 1) | number | Alternative | Output only. The altitude stored in the image. Format: double |
imageMediaMetadata.location.altitude (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
imageMediaMetadata.location.latitude | JSON | Optional | |
imageMediaMetadata.location.latitude (anyOf 1) | number | Alternative | Output only. The latitude stored in the image. Format: double |
imageMediaMetadata.location.latitude (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
imageMediaMetadata.location.longitude | JSON | Optional | |
imageMediaMetadata.location.longitude (anyOf 1) | number | Alternative | Output only. The longitude stored in the image. Format: double |
imageMediaMetadata.location.longitude (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
imageMediaMetadata.maxApertureValue | JSON | Optional | |
imageMediaMetadata.maxApertureValue (anyOf 1) | number | Alternative | Output only. The smallest f-number of the lens at the focal length used to create the photo (APEX value). Format: float |
imageMediaMetadata.maxApertureValue (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
imageMediaMetadata.meteringMode | string | Optional | Output only. The metering mode used to create the photo. |
imageMediaMetadata.rotation | JSON | Optional | |
imageMediaMetadata.rotation (anyOf 1) | integer | Alternative | Output only. The number of clockwise 90 degree rotations applied from the image’s original orientation. Format: int32 |
imageMediaMetadata.rotation (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
imageMediaMetadata.sensor | string | Optional | Output only. The type of sensor used to create the photo. |
imageMediaMetadata.subjectDistance | JSON | Optional | |
imageMediaMetadata.subjectDistance (anyOf 1) | integer | Alternative | Output only. The distance to the subject of the photo, in meters. Format: int32 |
imageMediaMetadata.subjectDistance (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
imageMediaMetadata.time | string | Optional | Output only. The date and time the photo was taken (EXIF DateTime). |
imageMediaMetadata.whiteBalance | string | Optional | Output only. The white balance mode used to create the photo. |
imageMediaMetadata.width | JSON | Optional | |
imageMediaMetadata.width (anyOf 1) | integer | Alternative | Output only. The width of the image in pixels. Format: int32 |
imageMediaMetadata.width (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
inheritedPermissionsDisabled | boolean | Optional | Whether this file has inherited permissions disabled. Inherited permissions are enabled by default. |
isAppAuthorized | boolean | Optional | Output only. Whether the file was created or opened by the requesting app. |
kind | string | Optional | Output only. Identifies what kind of resource this is. Value: the fixed string `“drive#file”`. Default: drive#file |
labelInfo | object | Optional | Label information on the file. |
labelInfo.labels | array | Optional | Output only. The set of labels on the file as requested by the label IDs in the `includeLabels` parameter. By default, no labels are returned. |
labelInfo.labels[] | Model | Each item | Expand Lists the labels on a file For more information, see List labels on a file (https: developers google com workspace drive api guides list-labels) — response body — labels item |
lastModifyingUser | Model | Optional | Expand Gets information about the user, the user’s Drive, and system capabilities. For more information, see [Return user info](https://developers.google.com/workspace/drive/api/guides/user-info). Required: The `fields` parameter must be set To return the exact fields you need, see Return specific fields (https: developers google com workspace drive api guides fields-parameter) — response body — user Output only. The last user to modify the file. This field is only populated when the last modification was performed by a signed-in user. |
linkShareMetadata | object | Optional | Contains details about the link URLs that clients are using to refer to this item. |
linkShareMetadata.securityUpdateEligible | boolean | Optional | Output only. Whether the file is eligible for security update. |
linkShareMetadata.securityUpdateEnabled | boolean | Optional | Output only. Whether the security update is enabled for this file. |
md5Checksum | string | Optional | Output only. The MD5 checksum for the content of the file. This is only applicable to files with binary content in Google Drive. |
mimeType | string | Optional | The MIME type of the file. Google Drive attempts 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 is imported, if possible. The supported import formats are published in the [`about`](/workspace/drive/api/reference/rest/v3/about) resource. |
modifiedByMe | boolean | Optional | Output only. Whether the file has been modified by this user. |
modifiedByMeTime | string | Optional | The last time the file was modified by the user (RFC 3339 date-time). Format: date-time |
modifiedTime | string | Optional | he last time the file was modified by anyone (RFC 3339 date-time). Note that setting modifiedTime will also update modifiedByMeTime for the user. Format: date-time |
name | string | Optional | The name of the file. This isn’t necessarily unique within a folder. Note that for immutable items such as the top-level folders of shared drives, the My Drive root folder, and the Application Data folder, the name is constant. |
originalFilename | string | Optional | The original filename of the uploaded content if available, or else the original value of the `name` field. This is only available for files with binary content in Google Drive. |
ownedByMe | boolean | Optional | Output only. Whether the user owns the file. Not populated for items in shared drives. |
owners | array | Optional | Output only. The owner of this file. Only certain legacy files may have more than one owner. This field isn’t populated for items in shared drives. |
owners[] | Model | Each item | Expand Gets information about the user, the user’s Drive, and system capabilities. For more information, see [Return user info](https://developers.google.com/workspace/drive/api/guides/user-info). Required: The `fields` parameter must be set To return the exact fields you need, see Return specific fields (https: developers google com workspace drive api guides fields-parameter) — response body — user |
parents | array | Optional | The ID of the parent folder containing the file. A file can only have one parent folder; specifying multiple parents isn’t supported. If not specified as part of a create request, the file is placed directly in the user’s My Drive folder. If not specified as part of a copy request, the file inherits any discoverable parent of the source file. Update requests must use the `addParents` and `removeParents` parameters to modify the parents list. |
parents[] | string | Each item | |
permissionIds | array | Optional | Output only. List of permission IDs for users with access to this file. |
permissionIds[] | string | Each item | |
permissions | array | Optional | Output only. The full list of permissions for the file. This is only available if the requesting user can share the file. Not populated for items in shared drives. |
permissions[] | Model | Each item | Expand Gets a permission by ID For more information, see Share files, folders, and drives (https: developers google com workspace drive api guides manage-sharing) — response body |
properties | object | Optional | A collection of arbitrary key-value pairs which are visible to all apps. Entries with null values are cleared in update and copy requests. Additional keys: see wildcard field |
properties.* | string | Additional keys | |
quotaBytesUsed | string | Optional | Output only. The number of storage quota bytes used by the file. This includes the head revision as well as previous revisions with `keepForever` enabled. Format: int64 |
resourceKey | string | Optional | Output only. A key needed to access the item via a shared link. |
sha1Checksum | string | Optional | Output only. The SHA1 checksum associated with this file, if available. This field is only populated for files with content stored in Google Drive; it’s not populated for Docs Editors or shortcut files. |
sha256Checksum | string | Optional | Output only. The SHA256 checksum associated with this file, if available. This field is only populated for files with content stored in Google Drive; it’s not populated for Docs Editors or shortcut files. |
shared | boolean | Optional | Output only. Whether the file has been shared. Not populated for items in shared drives. |
sharedWithMeTime | string | Optional | The time at which the file was shared with the user, if applicable (RFC 3339 date-time). Format: date-time |
sharingUser | Model | Optional | Expand Gets information about the user, the user’s Drive, and system capabilities. For more information, see [Return user info](https://developers.google.com/workspace/drive/api/guides/user-info). Required: The `fields` parameter must be set To return the exact fields you need, see Return specific fields (https: developers google com workspace drive api guides fields-parameter) — response body — user Output only. The user who shared the file with the requesting user, if applicable. |
shortcutDetails | Model | Optional | Expand Creates a copy of a file and applies any requested updates with patch semantics For more information, see Create and manage files (https: developers google com workspace drive api guides create-file) — response body — shortcut Details |
size | string | Optional | Output only. Size in bytes of blobs and Google Workspace editor files. Won’t be populated for files that have no size, like shortcuts and folders. Format: int64 |
spaces | array | Optional | Output only. The list of spaces which contain the file. The currently supported values are `drive`, `appDataFolder`, and `photos`. |
spaces[] | string | Each item | |
starred | boolean | Optional | Whether the user has starred the file. |
teamDriveId | string | Optional | Deprecated: Output only. Use `driveId` instead. |
thumbnailLink | string | Optional | Output only. A short-lived link to the file’s thumbnail, if available. Typically lasts on the order of hours. Not intended for direct usage on web applications due to [Cross-Origin Resource Sharing (CORS)](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) policies. Consider using a proxy server. Only populated when the requesting app can access the file’s content. If the file isn’t shared publicly, the URL returned in `files.thumbnailLink` must be fetched using a credentialed request. |
thumbnailVersion | string | Optional | Output only. The thumbnail version for use in thumbnail cache invalidation. Format: int64 |
trashed | boolean | Optional | Whether the file has been trashed, either explicitly or from a trashed parent folder. Only the owner may trash a file, but other users can still access the file in the owner’s trash until it’s permanently deleted. |
trashedTime | string | Optional | The time that the item was trashed (RFC 3339 date-time). Only populated for items in shared drives. Format: date-time |
trashingUser | Model | Optional | Expand Gets information about the user, the user’s Drive, and system capabilities. For more information, see [Return user info](https://developers.google.com/workspace/drive/api/guides/user-info). Required: The `fields` parameter must be set To return the exact fields you need, see Return specific fields (https: developers google com workspace drive api guides fields-parameter) — response body — user Output only. If the file has been explicitly trashed, the user who trashed it. Only populated for items in shared drives. |
version | string | Optional | Output only. A monotonically increasing version number for the file. This reflects every change made to the file on the server, even those not visible to the user. Format: int64 |
videoMediaMetadata | object | Optional | Output only. Additional metadata about video media. This may not be available immediately upon upload. |
videoMediaMetadata.durationMillis | string | Optional | Output only. The duration of the video in milliseconds. Format: int64 |
videoMediaMetadata.height | JSON | Optional | |
videoMediaMetadata.height (anyOf 1) | integer | Alternative | Output only. The height of the video in pixels. Format: int32 |
videoMediaMetadata.height (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
videoMediaMetadata.width | JSON | Optional | |
videoMediaMetadata.width (anyOf 1) | integer | Alternative | Output only. The width of the video in pixels. Format: int32 |
videoMediaMetadata.width (anyOf 2) | string | Alternative | Pattern: ^-?[0-9]+(?:.[0-9]+)?(?:[eE][+-]?[0-9]+)?$ |
viewedByMe | boolean | Optional | Output only. Whether the file has been viewed by this user. |
viewedByMeTime | string | Optional | The last time the file was viewed by the user (RFC 3339 date-time). Format: date-time |
viewersCanCopyContent | boolean | Optional | Deprecated: Use `copyRequiresWriterPermission` instead. |
webContentLink | string | Optional | Output only. A link for downloading the content of the file in a browser. This is only available for files with binary content in Google Drive. |
webViewLink | string | Optional | Output only. A link for opening the file in a relevant Google editor or viewer in a browser. |
writersCanShare | boolean | Optional | Whether users with only `writer` permission can modify the file’s permissions. Not populated for items in shared drives. |
Referenced models: Creates a copy of a file and applies any requested updates with patch semantics For more information, see Create and manage files (https: developers google com workspace drive api guides create-file) — response body — client Encryption Details, Creates a copy of a file and applies any requested updates with patch semantics For more information, see Create and manage files (https: developers google com workspace drive api guides create-file) — response body — content Restrictions item, Creates a copy of a file and applies any requested updates with patch semantics For more information, see Create and manage files (https: developers google com workspace drive api guides create-file) — response body — download Restrictions, Lists the labels on a file For more information, see List labels on a file (https: developers google com workspace drive api guides list-labels) — response body — labels item, Gets a permission by ID For more information, see Share files, folders, and drives (https: developers google com workspace drive api guides manage-sharing) — response body, Gets information about the user, the user’s Drive, and system capabilities. For more information, see [Return user info](https://developers.google.com/workspace/drive/api/guides/user-info). Required: The `fields` parameter must be set To return the exact fields you need, see Return specific fields (https: developers google com workspace drive api guides fields-parameter) — response body — user, Creates a copy of a file and applies any requested updates with patch semantics For more information, see Create and manage files (https: developers google com workspace drive api guides create-file) — response body — capabilities, Creates a copy of a file and applies any requested updates with patch semantics For more information, see Create and manage files (https: developers google com workspace drive api guides create-file) — response body — content Hints, Creates a copy of a file and applies any requested updates with patch semantics For more information, see Create and manage files (https: developers google com workspace drive api guides create-file) — response body — shortcut Details