Method: files.update

Updates a file's metadata and/or content. When calling this method, only populate fields in the request that you want to modify. When updating fields, some fields might be changed automatically, such as modifiedDate. This method supports patch semantics.

This method supports an /upload URI and accepts uploaded media with the following characteristics:

  • Maximum file size: 5,120 GB
  • Accepted Media MIME types:*/*

Note: Specify a valid MIME type, rather than the literal */* value. The literal */* is only used to indicate that any valid MIME type can be uploaded.

For more information on uploading files, see Upload file data.

HTTP request

  • Upload URI, for media upload requests:
    PUT https://www.googleapis.com/upload/drive/v2/files/{fileId}
  • Metadata URI, for metadata-only requests:
    PUT https://www.googleapis.com/drive/v2/files/{fileId}

The URL uses gRPC Transcoding syntax.

Path parameters

Parameters
uploadType

string

The type of upload request to the /upload URI. If you are uploading data with an /upload URI, this field is required. If you are creating a metadata-only file, this field is not required. Additionally, this field is not shown in the "Try this method" widget because the widget doesn't support data uploads.

Acceptable values are:

  • media - Simple upload. Upload the media only, without any metadata.
  • multipart - Multipart upload. Upload both the media and its metadata, in a single request.
  • resumable - Resumable upload. Upload the file in a resumable fashion, using a series of at least two requests where the first request includes the metadata.
fileId

string

The ID of the file to update.

Query parameters

Parameters
uploadType

string

The type of upload request to the /upload URI. If you are uploading data with an /upload URI, this field is required. If you are creating a metadata-only file, this field is not required. Additionally, this field is not shown in the "Try this method" widget because the widget doesn't support data uploads.

Acceptable values are:

  • media - Simple upload. Upload the media only, without any metadata.
  • multipart - Multipart upload. Upload both the media and its metadata, in a single request.
  • resumable - Resumable upload. Upload the file in a resumable fashion, using a series of at least two requests where the first request includes the metadata.
addParents

string

Comma-separated list of parent IDs to add.

convert
(deprecated)

boolean

Deprecated: This parameter has no function.

enforceSingleParent
(deprecated)

boolean

Deprecated: Adding files to multiple folders is no longer supported. Use shortcuts instead.

modifiedDateBehavior

enum (ModifiedDateBehavior)

Determines the behavior in which modifiedDate is updated. This overrides setModifiedDate.

newRevision

boolean

Whether a blob upload should create a new revision. If false, the blob data in the current head revision is replaced. If true or not set, a new blob is created as head revision, and previous unpinned revisions are preserved for a short period of time. Pinned revisions are stored indefinitely, using additional storage quota, up to a maximum of 200 revisions. For details on how revisions are retained, see the Drive Help Center.

ocr

boolean

Whether to attempt OCR on .jpg, .png, .gif, or .pdf uploads.

ocrLanguage

string

If ocr is true, hints at the language to use. Valid values are BCP 47 codes.

pinned

boolean

Whether to pin the new revision. A file can have a maximum of 200 pinned revisions.

removeParents

string

Comma-separated list of parent IDs to remove.

setModifiedDate

boolean

Whether to set the modified date using the value supplied in the request body. Setting this field to true is equivalent to modifiedDateBehavior=fromBodyOrNow, and false is equivalent to modifiedDateBehavior=now. To prevent any changes to the modified date set modifiedDateBehavior=noChange.

supportsAllDrives

boolean

Whether the requesting application supports both My Drives and shared drives.

supportsTeamDrives
(deprecated)

boolean

Deprecated: Use supportsAllDrives instead.

timedTextLanguage

string

The language of the timed text.

timedTextTrackName

string

The timed text track name.

updateViewedDate

boolean

Whether to update the view date after successfully updating the file.

useContentAsIndexableText

boolean

Whether to use the content as indexable text.

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/docs
  • https://www.googleapis.com/auth/drive
  • https://www.googleapis.com/auth/drive.appdata
  • https://www.googleapis.com/auth/drive.apps.readonly
  • https://www.googleapis.com/auth/drive.file
  • https://www.googleapis.com/auth/drive.metadata
  • https://www.googleapis.com/auth/drive.scripts

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