Class DocumentApp

DocumentApp

The document service creates and opens Documents that can be edited.

// Open a document by ID.
var doc = DocumentApp.openById('DOCUMENT_ID_GOES_HERE');

// Create and open a document.
doc = DocumentApp.create('Document Name');

Properties

PropertyTypeDescription
AttributeAttributeThe Attribute enumeration.
ElementTypeElementTypeThe ElementType enumeration.
FontFamilyFontFamilyThe FontFamily enumeration.
GlyphTypeGlyphTypeThe GlyphType enumeration.
HorizontalAlignmentHorizontalAlignmentThe HorizontalAlignment enumeration.
ParagraphHeadingParagraphHeadingThe ParagraphHeading enumeration.
PositionedLayoutPositionedLayoutThe PositionedLayout enumeration.
TextAlignmentTextAlignmentThe TextAlignment enumeration.
VerticalAlignmentVerticalAlignmentThe VerticalAlignment enumeration.

Methods

MethodReturn typeBrief description
create(name)DocumentCreates and returns a new document.
getActiveDocument()DocumentReturns the document to which the script is container-bound.
getUi()UiReturns an instance of the document's user-interface environment that allows the script to add features like menus, dialogs, and sidebars.
openById(id)DocumentReturns the document with the specified ID.
openByUrl(url)DocumentOpens and returns the document with the specified URL.

Detailed documentation

create(name)

Creates and returns a new document.

// Create and open a new document.
var doc = DocumentApp.create('Document Name');

Parameters

NameTypeDescription
nameStringthe new document's name

Return

Document — the new document instance

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/documents

getActiveDocument()

Returns the document to which the script is container-bound. To interact with document to which the script is not container-bound, use openById(id) or openByUrl(url) instead.

// Get the document to which this script is bound.
var doc = DocumentApp.getActiveDocument();

Return

Document — the document instance

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getUi()

Returns an instance of the document's user-interface environment that allows the script to add features like menus, dialogs, and sidebars. A script can only interact with the UI for the current instance of an open document, and only if the script is bound to the document. For more information, see the guides to menus and dialogs and sidebars.

// Add a custom menu to the active document, including a separator and a sub-menu.
function onOpen(e) {
  DocumentApp.getUi()
      .createMenu('My Menu')
      .addItem('My menu item', 'myFunction')
      .addSeparator()
      .addSubMenu(DocumentApp.getUi().createMenu('My sub-menu')
          .addItem('One sub-menu item', 'mySecondFunction')
          .addItem('Another sub-menu item', 'myThirdFunction'))
      .addToUi();
}

Return

Ui — an instance of this document's user-interface environment


openById(id)

Returns the document with the specified ID. If the script is container-bound to the document, use getActiveDocument() instead.

// Open a document by ID.
var doc = DocumentApp.openById('DOCUMENT_ID_GOES_HERE');

Parameters

NameTypeDescription
idStringthe ID of the document to open

Return

Document — the document instance

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/documents

openByUrl(url)

Opens and returns the document with the specified URL. If the script is container-bound to the document, use getActiveDocument() instead.

// Open a document by URL.
var doc = DocumentApp.openByUrl(
    'https://docs.google.com/document/d/1234567890abcdefghijklmnopqrstuvwxyz_a1b2c3/edit');

Parameters

NameTypeDescription
urlStringthe URL of the document to open

Return

Document — the document instance

Authorization

Scripts that use this method require authorization with one or more of the following scopes:

  • https://www.googleapis.com/auth/documents