Files: create

Requires authorization

Creates a new file. Try it now.

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

  • Maximum file size: 5120GB
  • Accepted Media MIME types: */*

Request

HTTP request

This method provides media upload functionality through two separate URIs. For more details, see the document on media upload.

  • Upload URI, for media upload requests:
    POST https://www.googleapis.com/upload/drive/v3/files
  • Metadata URI, for metadata-only requests:
    POST https://www.googleapis.com/drive/v3/files

Parameters

Parameter name Value Description
Required query parameters
uploadType string The type of upload request to the /upload URI. 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.
Optional query parameters
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)
keepRevisionForever boolean Whether to set the 'keepForever' field in the new head revision. This is only applicable to files with binary content in Drive. (Default: false)
ocrLanguage string A language hint for OCR processing during image import (ISO 639-1 code).
supportsTeamDrives boolean Whether the requesting application supports Team Drives. (Default: false)
useContentAsIndexableText boolean Whether to use the uploaded content as indexable text. (Default: false)

Authorization

This request requires authorization with at least one of the following scopes (read more about authentication and authorization).

Scope
https://www.googleapis.com/auth/drive
https://www.googleapis.com/auth/drive.file
https://www.googleapis.com/auth/drive.appdata

Request body

In the request body, supply a Files resource with the following properties as the metadata. For more information, see the document on media upload.

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.

writable
contentHints.indexableText string Text to be indexed for the file to improve fullText queries. This is limited to 128KB in length and may contain HTML elements. writable
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
createdTime datetime The time at which the file was created (RFC 3339 date-time). writable
description string A short description of the file. writable
folderColorRgb string The color for a folder as an RGB hex string. The supported colors are published in the folderColorPalette field of the About resource.

If an unsupported color is specified, the closest color in the palette will be used instead.

writable
id string The ID of the file. writable
mimeType string The MIME type of the file.

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.

writable
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.

writable
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 Team Drives, My Drive root folder, and Application Data folder the name is constant. writable
originalFilename string 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 Drive. 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.

writable
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.

writable
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
viewersCanCopyContent boolean Whether users with only reader or commenter permission can copy the file's content. This affects copy, download, and print operations. writable
writersCanShare boolean Whether users with only writer permission can modify the file's permissions. Not populated for Team Drive files. writable

Response

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

Try it!

Note: APIs Explorer currently supports metadata requests only.

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

Send feedback about...

Drive REST API
Drive REST API
Need help? Visit our support page.