Elemento genérico que puede contener otros elementos. Todos los elementos que pueden contener elementos secundarios,
como Paragraph
, heredar de ContainerElement
.
Métodos
Método | Tipo de datos que se muestra | Descripción breve |
---|---|---|
asBody() | Body | Muestra el elemento actual como una Body . |
asEquation() | Equation | Muestra el elemento actual como un Equation . |
asFooterSection() | FooterSection | Muestra el elemento actual como una FooterSection . |
asFootnoteSection() | FootnoteSection | Muestra el elemento actual como una FootnoteSection . |
asHeaderSection() | HeaderSection | Muestra el elemento actual como una HeaderSection . |
asListItem() | ListItem | Muestra el elemento actual como una ListItem . |
asParagraph() | Paragraph | Muestra el elemento actual como una Paragraph . |
asTable() | Table | Muestra el elemento actual como una Table . |
asTableCell() | TableCell | Muestra el elemento actual como una TableCell . |
asTableOfContents() | TableOfContents | Muestra el elemento actual como una TableOfContents . |
asTableRow() | TableRow | Muestra el elemento actual como una TableRow . |
clear() | ContainerElement | Borra el contenido del elemento. |
copy() | ContainerElement | Muestra una copia profunda y separada del elemento actual. |
editAsText() | Text | Obtiene una versión Text del elemento actual para su edición. |
findElement(elementType) | RangeElement | Busca en el contenido del elemento un elemento subordinado del tipo especificado. |
findElement(elementType, from) | RangeElement | Busca en el contenido del elemento un elemento subordinado del tipo especificado, comenzando por el
especificado RangeElement . |
findText(searchPattern) | RangeElement | Busca el patrón de texto especificado en el contenido del elemento mediante expresiones regulares. |
findText(searchPattern, from) | RangeElement | Busca el patrón de texto especificado en el contenido del elemento, a partir de un valor determinado. resultado de la búsqueda. |
getAttributes() | Object | Recupera los atributos del elemento. |
getChild(childIndex) | Element | Recupera el elemento secundario del índice secundario especificado. |
getChildIndex(child) | Integer | Recupera el índice secundario del elemento secundario especificado. |
getLinkUrl() | String | Recupera la URL del vínculo. |
getNextSibling() | Element | Recupera el elemento del mismo nivel del elemento. |
getNumChildren() | Integer | Recupera la cantidad de elementos secundarios. |
getParent() | ContainerElement | Recupera el elemento superior del elemento. |
getPreviousSibling() | Element | Recupera el elemento del mismo nivel anterior. |
getText() | String | Recupera el contenido del elemento como una cadena de texto. |
getTextAlignment() | TextAlignment | Obtiene la alineación del texto. |
getType() | ElementType | Recupera el ElementType del elemento. |
isAtDocumentEnd() | Boolean | Determina si el elemento se encuentra al final de Document . |
merge() | ContainerElement | Combina el elemento con el elemento del mismo nivel anterior del mismo tipo. |
removeFromParent() | ContainerElement | Quita el elemento de su elemento superior. |
replaceText(searchPattern, replacement) | Element | Reemplaza todos los casos de un patrón de texto dado por una cadena de reemplazo determinada, mediante la fórmula con expresiones regulares. |
setAttributes(attributes) | ContainerElement | Establece los atributos del elemento. |
setLinkUrl(url) | ContainerElement | Establece la URL del vínculo. |
setTextAlignment(textAlignment) | ContainerElement | Establece la alineación del texto. |
Documentación detallada
asBody()
Muestra el elemento actual como una Body
.
Usa este método para facilitar la función de autocompletar cuando se sepa que un determinado elemento pertenece a un elemento específico. el tipo de letra.
Volver
Body
: Es el elemento actual.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
asEquation()
Muestra el elemento actual como un Equation
.
Usa este método para facilitar la función de autocompletar cuando se sepa que un determinado elemento pertenece a un elemento específico. el tipo de letra.
Volver
Equation
: Es el elemento actual.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
asFootnoteSection()
Muestra el elemento actual como una FootnoteSection
.
Usa este método para facilitar la función de autocompletar cuando se sepa que un determinado elemento pertenece a un elemento específico. el tipo de letra.
Volver
FootnoteSection
: Es el elemento actual.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
asHeaderSection()
Muestra el elemento actual como una HeaderSection
.
Usa este método para facilitar la función de autocompletar cuando se sepa que un determinado elemento pertenece a un elemento específico. el tipo de letra.
Volver
HeaderSection
: Es el elemento actual.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
asListItem()
Muestra el elemento actual como una ListItem
.
Usa este método para facilitar la función de autocompletar cuando se sepa que un determinado elemento pertenece a un elemento específico. el tipo de letra.
Volver
ListItem
: Es el elemento actual.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
asParagraph()
Muestra el elemento actual como una Paragraph
.
Usa este método para facilitar la función de autocompletar cuando se sepa que un determinado elemento pertenece a un elemento específico. el tipo de letra.
Volver
Paragraph
: Es el elemento actual.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
asTable()
Muestra el elemento actual como una Table
.
Usa este método para facilitar la función de autocompletar cuando se sepa que un determinado elemento pertenece a un elemento específico. el tipo de letra.
Volver
Table
: Es el elemento actual.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
asTableCell()
Muestra el elemento actual como una TableCell
.
Usa este método para facilitar la función de autocompletar cuando se sepa que un determinado elemento pertenece a un elemento específico. el tipo de letra.
Volver
TableCell
: Es el elemento actual.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
asTableOfContents()
Muestra el elemento actual como una TableOfContents
.
Usa este método para facilitar la función de autocompletar cuando se sepa que un determinado elemento pertenece a un elemento específico. el tipo de letra.
Volver
TableOfContents
: Es el elemento actual.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
asTableRow()
Muestra el elemento actual como una TableRow
.
Usa este método para facilitar la función de autocompletar cuando se sepa que un determinado elemento pertenece a un elemento específico. el tipo de letra.
Volver
TableRow
: Es el elemento actual.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
clear()
copy()
Muestra una copia profunda y separada del elemento actual.
También se copian los elementos secundarios presentes en el elemento. El elemento nuevo no tiene un superior.
Volver
ContainerElement
: Es la copia nueva.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
editAsText()
Obtiene una versión Text
del elemento actual para su edición.
Usa editAsText
para manipular el contenido de los elementos como texto enriquecido. El modo editAsText
ignora los elementos que no son de texto (como InlineImage
y HorizontalRule
).
Los elementos secundarios que estén completamente contenidos dentro de un rango de texto borrado se quitarán de este.
var body = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody(); // Insert two paragraphs separated by a paragraph containing an // horizontal rule. body.insertParagraph(0, "An editAsText sample."); body.insertHorizontalRule(0); body.insertParagraph(0, "An example."); // Delete " sample.\n\n An" removing the horizontal rule in the process. body.editAsText().deleteText(14, 25);
Volver
Text
: Es una versión en texto del elemento actual.
findElement(elementType)
Busca en el contenido del elemento un elemento subordinado del tipo especificado.
Parámetros
Nombre | Tipo | Descripción |
---|---|---|
elementType | ElementType | El tipo de elemento que se buscará. |
Volver
RangeElement
: Es un resultado de la búsqueda que indica la posición del elemento de búsqueda.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
findElement(elementType, from)
Busca en el contenido del elemento un elemento subordinado del tipo especificado, comenzando por el
especificado RangeElement
.
var body = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody(); // Define the search parameters. var searchType = DocumentApp.ElementType.PARAGRAPH; var searchHeading = DocumentApp.ParagraphHeading.HEADING1; var searchResult = null; // Search until the paragraph is found. while (searchResult = body.findElement(searchType, searchResult)) { var par = searchResult.getElement().asParagraph(); if (par.getHeading() == searchHeading) { // Found one, update and stop. par.setText('This is the first header.'); return; } }
Parámetros
Nombre | Tipo | Descripción |
---|---|---|
elementType | ElementType | El tipo de elemento que se buscará. |
from | RangeElement | Es el resultado de la búsqueda. |
Volver
RangeElement
: Es un resultado de la búsqueda que indica la siguiente posición del elemento de búsqueda.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
findText(searchPattern)
Busca el patrón de texto especificado en el contenido del elemento mediante expresiones regulares.
Un subconjunto de las funciones de expresión regular de JavaScript no es totalmente compatible, como grupos de captura y modificadores de modo.
El patrón de expresión regular proporcionado se compara independientemente con cada bloque de texto. contenidos en el elemento actual.
Parámetros
Nombre | Tipo | Descripción |
---|---|---|
searchPattern | String | el patrón a buscar |
Volver
RangeElement
: Es un resultado de la búsqueda que indica la posición del texto de búsqueda o nulo si no hay un valor.
coincidencia
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
findText(searchPattern, from)
Busca el patrón de texto especificado en el contenido del elemento, a partir de un valor determinado. resultado de la búsqueda.
Un subconjunto de las funciones de expresión regular de JavaScript no es totalmente compatible, como grupos de captura y modificadores de modo.
El patrón de expresión regular proporcionado se compara independientemente con cada bloque de texto. contenidos en el elemento actual.
Parámetros
Nombre | Tipo | Descripción |
---|---|---|
searchPattern | String | el patrón a buscar |
from | RangeElement | el resultado de la búsqueda para buscar |
Volver
RangeElement
: Es un resultado de la búsqueda que indica la siguiente posición del texto de búsqueda o un valor nulo si no hay un valor.
coincidencia
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getAttributes()
Recupera los atributos del elemento.
El resultado es un objeto que contiene una propiedad para cada atributo de elemento válido en el que cada
el nombre de la propiedad corresponde a un elemento de la enumeración DocumentApp.Attribute
.
var doc = DocumentApp.getActiveDocument(); var documentTab = doc.getActiveTab().asDocumentTab(); var body = documentTab.getBody(); // Append a styled paragraph. var par = body.appendParagraph('A bold, italicized paragraph.'); par.setBold(true); par.setItalic(true); // Retrieve the paragraph's attributes. var atts = par.getAttributes(); // Log the paragraph attributes. for (var att in atts) { Logger.log(att + ":" + atts[att]); }
Volver
Object
: Son los atributos del elemento.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getChild(childIndex)
Recupera el elemento secundario del índice secundario especificado.
var body = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody(); // Obtain the first element in the tab. var firstChild = body.getChild(0); // If it's a paragraph, set its contents. if (firstChild.getType() == DocumentApp.ElementType.PARAGRAPH) { firstChild.asParagraph().setText("This is the first paragraph."); }
Parámetros
Nombre | Tipo | Descripción |
---|---|---|
childIndex | Integer | El índice del elemento secundario que se recuperará. |
Volver
Element
: Es el elemento secundario en el índice especificado.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getChildIndex(child)
Recupera el índice secundario del elemento secundario especificado.
Parámetros
Nombre | Tipo | Descripción |
---|---|---|
child | Element | El elemento secundario para el que se recupera el índice. |
Volver
Integer
: Es el índice secundario.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getLinkUrl()
Recupera la URL del vínculo.
Volver
String
: Es la URL del vínculo; o un valor nulo si el elemento contiene varios valores para este atributo.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getNextSibling()
Recupera el elemento del mismo nivel del elemento.
El elemento del mismo nivel tiene el mismo elemento superior y sigue al elemento actual.
Volver
Element
: Es el siguiente elemento del mismo nivel.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getNumChildren()
Recupera la cantidad de elementos secundarios.
var body = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody(); // Log the number of elements in the tab. Logger.log("There are " + body.getNumChildren() + " elements in the tab's body.");
Volver
Integer
: Es la cantidad de elementos secundarios.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getParent()
Recupera el elemento superior del elemento.
El elemento superior contiene el elemento actual.
Volver
ContainerElement
: Es el elemento superior.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getPreviousSibling()
Recupera el elemento del mismo nivel anterior.
El elemento del mismo nivel anterior tiene el mismo elemento superior y precede al elemento actual.
Volver
Element
: Es el elemento del mismo nivel anterior.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getText()
Recupera el contenido del elemento como una cadena de texto.
Volver
String
: Es el contenido del elemento como una cadena de texto.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getTextAlignment()
Obtiene la alineación del texto. Los tipos de alineación disponibles son DocumentApp.TextAlignment.NORMAL
, DocumentApp.TextAlignment.SUBSCRIPT
y DocumentApp.TextAlignment.SUPERSCRIPT
.
Volver
TextAlignment
: Es el tipo de alineación del texto, o null
si el texto contiene varios tipos de texto.
alineaciones o si nunca se estableció la alineación del texto
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getType()
Recupera el ElementType
del elemento.
Usa getType()
para determinar el tipo exacto de un elemento determinado.
var doc = DocumentApp.getActiveDocument(); var documentTab = doc.getActiveTab().asDocumentTab(); var body = documentTab.getBody(); // Obtain the first element in the active tab's body. var firstChild = body.getChild(0); // Use getType() to determine the element's type. if (firstChild.getType() == DocumentApp.ElementType.PARAGRAPH) { Logger.log('The first element is a paragraph.'); } else { Logger.log('The first element is not a paragraph.'); }
Volver
ElementType
: Es el tipo de elemento.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
isAtDocumentEnd()
Determina si el elemento se encuentra al final de Document
.
Volver
Boolean
: Indica si el elemento está al final de la pestaña.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
merge()
Combina el elemento con el elemento del mismo nivel anterior del mismo tipo.
Solo se pueden combinar elementos de la misma ElementType
. Cualquier elemento secundario que se incluya en
El elemento actual se mueve al elemento del mismo nivel anterior.
Se quitará el elemento actual del documento.
var doc = DocumentApp.getActiveDocument(); var documentTab = doc.getActiveTab().asDocumentTab(); var body = documentTab.getBody(); // Example 1: Merge paragraphs // Append two paragraphs to the document's active tab. var par1 = body.appendParagraph('Paragraph 1.'); var par2 = body.appendParagraph('Paragraph 2.'); // Merge the newly added paragraphs into a single paragraph. par2.merge(); // Example 2: Merge table cells // Create a two-dimensional array containing the table's cell contents. var cells = [ ['Row 1, Cell 1', 'Row 1, Cell 2'], ['Row 2, Cell 1', 'Row 2, Cell 2'] ]; // Build a table from the array. var table = body.appendTable(cells); // Get the first row in the table. var row = table.getRow(0); // Get the two cells in this row. var cell1 = row.getCell(0); var cell2 = row.getCell(1); // Merge the current cell into its preceding sibling element. var merged = cell2.merge();
Volver
ContainerElement
: Es el elemento combinado.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
removeFromParent()
Quita el elemento de su elemento superior.
var doc = DocumentApp.getActiveDocument(); var documentTab = doc.getActiveTab().asDocumentTab() var body = documentTab.getBody(); // Remove all images in the active tab's body. var imgs = body.getImages(); for (var i = 0; i < imgs.length; i++) { imgs[i].removeFromParent(); }
Volver
ContainerElement
: Es el elemento que se quitó.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
replaceText(searchPattern, replacement)
Reemplaza todos los casos de un patrón de texto dado por una cadena de reemplazo determinada, mediante la fórmula con expresiones regulares.
El patrón de búsqueda se pasa como una cadena, no como un objeto de expresión regular de JavaScript. Debido a esto, deberás escapar cualquier barra inversa en el patrón.
Este método usa el estándar RE2 de Google expresión de comandos, que limita la sintaxis compatible.
El patrón de expresión regular proporcionado se compara independientemente con cada bloque de texto. contenidos en el elemento actual.
var body = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody(); // Clear the text surrounding "Apps Script", with or without text. body.replaceText("^.*Apps ?Script.*$", "Apps Script");
Parámetros
Nombre | Tipo | Descripción |
---|---|---|
searchPattern | String | el patrón de regex para buscar |
replacement | String | el texto que se usará como reemplazo |
Volver
Element
: Es el elemento actual.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setAttributes(attributes)
Establece los atributos del elemento.
El parámetro de atributos especificados debe ser un objeto en el que cada nombre de propiedad sea un elemento
la enumeración DocumentApp.Attribute
y el valor de cada propiedad es el nuevo que se debe
se aplicó.
var doc = DocumentApp.getActiveDocument(); var documentTab = doc.getActiveTab().asDocumentTab(); var body = documentTab.getBody(); // Define a custom paragraph style. var style = {}; style[DocumentApp.Attribute.HORIZONTAL_ALIGNMENT] = DocumentApp.HorizontalAlignment.RIGHT; style[DocumentApp.Attribute.FONT_FAMILY] = 'Calibri'; style[DocumentApp.Attribute.FONT_SIZE] = 18; style[DocumentApp.Attribute.BOLD] = true; // Append a plain paragraph. var par = body.appendParagraph('A paragraph with custom style.'); // Apply the custom style. par.setAttributes(style);
Parámetros
Nombre | Tipo | Descripción |
---|---|---|
attributes | Object | Los atributos del elemento. |
Volver
ContainerElement
: Es el elemento actual.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setLinkUrl(url)
Establece la URL del vínculo.
Parámetros
Nombre | Tipo | Descripción |
---|---|---|
url | String | la URL del vínculo |
Volver
ContainerElement
: Es el elemento actual.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setTextAlignment(textAlignment)
Establece la alineación del texto. Los tipos de alineación disponibles son DocumentApp.TextAlignment.NORMAL
, DocumentApp.TextAlignment.SUBSCRIPT
y DocumentApp.TextAlignment.SUPERSCRIPT
.
// Make the entire first paragraph in the active tab be superscript. var documentTab = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab(); var text = documentTab.getBody().getParagraphs()[0].editAsText(); text.setTextAlignment(DocumentApp.TextAlignment.SUPERSCRIPT);
Parámetros
Nombre | Tipo | Descripción |
---|---|---|
textAlignment | TextAlignment | el tipo de alineación de texto que se aplicará |
Volver
ContainerElement
: Es el elemento actual.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes alcances:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents