Create and manage documents

This Google Docs API page describes how to perform certain high-level tasks involving Google Docs documents, such as:

  • Create a document
  • Copy an existing document

The following paragraphs describe these tasks in detail.

Create a blank document

To create a document, use the documents.create method on the documents collection.

The following code sample shows how to create a blank document with a specified title:

Java

 private 
  
 static 
  
 void 
  
 createDoc 
 ( 
 Docs 
  
 service 
 ) 
  
 throws 
  
 IOException 
  
 { 
  
 Document 
  
 doc 
  
 = 
  
 new 
  
 Document 
 () 
  
 . 
 setTitle 
 ( 
 "My Document" 
 ); 
  
 doc 
  
 = 
  
 service 
 . 
 documents 
 (). 
 create 
 ( 
 doc 
 ) 
  
 . 
 execute 
 (); 
  
 System 
 . 
 out 
 . 
 println 
 ( 
 "Created document with title: " 
  
 + 
  
 doc 
 . 
 getTitle 
 ()); 
 } 

PHP

 $title = 'My Document'; 
 $document = new Google_Service_Docs_Document(array( 
 'title' => $title 
 )); 
 $document = $service->documents->create($document); 
 printf("Created document with title: %s\n", $document->title); 

Python

 title 
 = 
 'My Document' 
 body 
 = 
 { 
 'title' 
 : 
 title 
 } 
 doc 
 = 
 service 
 . 
 documents 
 () 
\ . 
 create 
 ( 
 body 
 = 
 body 
 ) 
 . 
 execute 
 () 
 print 
 ( 
 'Created document with title: 
 {0} 
 ' 
 . 
 format 
 ( 
 doc 
 . 
 get 
 ( 
 'title' 
 ))) 

Work with Google Drive folders

There’s no option to create a document directly within a specified Drive folder using the Docs API. By default, the created document is saved to the user's root folder on Drive.

However, there are two alternatives to saving a file to a Drive folder:

For either alternative, you'll need to add the appropriate Drive API scopes to authorize the call. For more information on Drive scopes, see Choose Google Drive API scopes .

To move or create a file within a shared drive folder, see Implement shared drive support .

Copy an existing document

To copy a document, use Drive API's files.copy method.

The following code sample shows how to copy an existing document. You can find the ID to use for the Drive API call in the document URL. For more information, see Document ID .

 https://docs.google.com/document/d/ DOCUMENT_ID 
/edit 

Java

 String 
  
 copyTitle 
  
 = 
  
 "Copy Title" 
 ; 
 File 
  
 copyMetadata 
  
 = 
  
 new 
  
 File 
 (). 
 setName 
 ( 
 copyTitle 
 ); 
 File 
  
 documentCopyFile 
  
 = 
  
 driveService 
 . 
 files 
 (). 
 copy 
 ( 
 documentId 
 , 
  
 copyMetadata 
 ). 
 execute 
 (); 
 String 
  
 documentCopyId 
  
 = 
  
 documentCopyFile 
 . 
 getId 
 (); 

Node.js

 var 
  
 copyTitle 
  
 = 
  
 "Copy Title" 
 ; 
 let 
  
 request 
  
 = 
  
 { 
  
 name 
 : 
  
 copyTitle 
 , 
 }; 
 this 
 . 
 driveService 
 . 
 files 
 . 
 copy 
 ({ 
  
 fileId 
 : 
  
 documentId 
 , 
  
 resource 
 : 
  
 request 
 , 
 }, 
  
 ( 
 err 
 , 
  
 driveResponse 
 ) 
  
 = 
>  
 { 
  
 let 
  
 documentCopyId 
  
 = 
  
 driveResponse 
 . 
 id 
 ; 
 }); 

PHP

< ?php 
 $copyTitle = 'Copy Title'; 
 $copy = new Google_Service_Drive_DriveFile(array( 
 'name' => $copyTitle 
 )); 
 $driveResponse = $driveService->files->copy($documentId, $copy); 
 $documentCopyId = $driveResponse->id; 

Python

 copy_title 
 = 
 'Copy Title' 
 body 
 = 
 { 
 'name' 
 : 
 copy_title 
 } 
 drive_response 
 = 
 drive_service 
 . 
 files 
 () 
 . 
 copy 
 ( 
 fileId 
 = 
 document_id 
 , 
 body 
 = 
 body 
 ) 
 . 
 execute 
 () 
 document_copy_id 
 = 
 drive_response 
 . 
 get 
 ( 
 'id' 
 ) 

Note that you need to use an appropriate Drive API scope to authorize the call. For more information on Drive scopes, see Choose Google Drive API scopes .

Create a Mobile Website
View Site in Mobile | Classic
Share by: