테이블을 나타내는 요소입니다. Table
는 TableRow
요소만 포함할 수 있습니다. 대상
문서 구조에 대한 자세한 내용은 Google Docs 확장 가이드를 참조하세요.
많은 수의 행이나 셀이 포함된 Table
를 만드는 경우
문자열 배열에서 가져옵니다.
var body = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody(); // Create a two-dimensional array containing the 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. body.appendTable(cells);
메서드
자세한 문서
appendTableRow()
appendTableRow(tableRow)
지정된 TableRow
를 추가합니다.
// Opens the Docs file by its ID. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById(DOCUMENT_ID); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Gets the first table in the tab and copies the second row. const table = body.getTables()[0]; const row = table.getChild(1).copy(); // Adds the copied row to the bottom of the table. const tableRow = table.appendTableRow(row);
매개변수
이름 | 유형 | 설명 |
---|---|---|
tableRow | TableRow | 추가할 표의 행입니다. |
리턴
TableRow
- 추가된 테이블 행 요소입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
clear()
copy()
editAsText()
수정을 위해 현재 요소의 Text
버전을 가져옵니다.
요소 콘텐츠를 서식 있는 텍스트로 조작하는 데 editAsText
를 사용합니다. editAsText
모드는 텍스트가 아닌 요소 (예: InlineImage
및 HorizontalRule
)를 무시합니다.
삭제된 텍스트 범위 내에 완전히 포함된 하위 요소는 요소에서 삭제됩니다.
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);
리턴
Text
: 현재 요소의 텍스트 버전
findElement(elementType)
요소의 콘텐츠에서 지정된 유형의 하위 요소를 검색합니다.
매개변수
이름 | 유형 | 설명 |
---|---|---|
elementType | ElementType | 검색할 요소의 유형입니다. |
리턴
RangeElement
- 검색 요소의 위치를 나타내는 검색 결과입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
findElement(elementType, from)
요소의 콘텐츠를 검색하여 지정된 유형의 하위 요소를 찾습니다. 이때
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; } }
매개변수
이름 | 유형 | 설명 |
---|---|---|
elementType | ElementType | 검색할 요소의 유형입니다. |
from | RangeElement | 검색할 검색 결과입니다. |
리턴
RangeElement
- 검색 요소의 다음 위치를 나타내는 검색 결과입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
findText(searchPattern)
정규 표현식을 사용하여 요소의 콘텐츠에서 지정된 텍스트 패턴을 검색합니다.
JavaScript 정규 표현식 기능의 하위 집합은 완전히 지원되지 않습니다. 예를 들면 다음과 같습니다. 그룹 및 모드 수정자를 캡처합니다.
제공된 정규 표현식 패턴이 각 텍스트 블록과 독립적으로 일치됩니다. .
매개변수
이름 | 유형 | 설명 |
---|---|---|
searchPattern | String | 검색할 패턴 |
리턴
RangeElement
— 검색 텍스트의 위치를 나타내는 검색 결과, 또는 없는 경우 null
일치
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
findText(searchPattern, from)
요소의 콘텐츠에서 지정된 텍스트 패턴(지정된 텍스트부터 시작)을 검색합니다. 표시됩니다.
JavaScript 정규 표현식 기능의 하위 집합은 완전히 지원되지 않습니다. 예를 들면 다음과 같습니다. 그룹 및 모드 수정자를 캡처합니다.
제공된 정규 표현식 패턴이 각 텍스트 블록과 독립적으로 일치됩니다. .
매개변수
이름 | 유형 | 설명 |
---|---|---|
searchPattern | String | 검색할 패턴 |
from | RangeElement | 검색할 검색결과 |
리턴
RangeElement
: 검색 텍스트의 다음 위치를 나타내는 검색 결과, 또는 없는 경우 null입니다.
일치
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getAttributes()
요소의 속성을 검색합니다.
결과는 유효한 각 요소 속성에 대한 속성을 포함하는 객체이며, 여기서 각 요소는
속성 이름은 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]); }
리턴
Object
- 요소의 속성입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getBorderColor()
테두리 색상을 검색합니다.
// Opens the Docs file by its ID. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById(DOCUMENT_ID); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Gets the first table. const table = body.getTables()[0]; // Sets the border color of the first table. table.setBorderColor('#00FF00'); // Logs the border color of the first table to the console. console.log(table.getBorderColor());
리턴
String
- CSS 표기법 (예: '#ffffff'
)으로 형식이 지정된 테두리 색상입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getBorderWidth()
테두리 너비를 포인트 단위로 검색합니다.
// Opens the Docs file by its ID. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById(DOCUMENT_ID); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Gets the first table. const table = body.getTables()[0]; // Sets the border width of the first table. table.setBorderWidth(20); // Logs the border width of the first table. console.log(table.getBorderWidth());
리턴
Number
- 테두리 너비(포인트)입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getCell(rowIndex, cellIndex)
지정된 행 및 셀 색인에서 TableCell
를 검색합니다.
// Opens the Docs file by its ID. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById(DOCUMENT_ID); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Gets the first table. const table = body.getTables()[0]; // Gets the cell of the table's third row and second column. const cell = table.getCell(2, 1); // Logs the cell text to the console. console.log(cell.getText());
매개변수
이름 | 유형 | 설명 |
---|---|---|
rowIndex | Integer | 검색할 셀이 포함된 행의 색인입니다. |
cellIndex | Integer | 검색할 셀의 색인입니다. |
리턴
TableCell
- 테이블 셀입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getChild(childIndex)
지정된 하위 색인에서 하위 요소를 검색합니다.
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."); }
매개변수
이름 | 유형 | 설명 |
---|---|---|
childIndex | Integer | 검색할 하위 요소의 색인입니다. |
리턴
Element
- 지정된 색인의 하위 요소입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getChildIndex(child)
getColumnWidth(columnIndex)
지정된 테이블 열의 너비를 포인트 단위로 검색합니다.
// Opens the Docs file by its ID. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById(DOCUMENT_ID); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Gets the first table. const table = body.getTables()[0]; // Sets the width of the second column to 100 points. const columnWidth = table.setColumnWidth(1, 100); // Gets the width of the second column and logs it to the console. console.log(columnWidth.getColumnWidth(1));
매개변수
이름 | 유형 | 설명 |
---|---|---|
columnIndex | Integer | 열 색인입니다. |
리턴
Number
- 열 너비(포인트)입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getLinkUrl()
링크 URL을 검색합니다.
리턴
String
— 링크 URL 또는 요소에 이 속성의 값이 여러 개 포함된 경우 null
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getNextSibling()
getNumChildren()
하위 요소 수를 검색합니다.
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.");
리턴
Integer
- 하위 요소 수입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getNumRows()
TableRows
의 수를 검색합니다.
// Opens the Docs file by its ID. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById(DOCUMENT_ID); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Gets the first table. const table = body.getTables()[0]; // Logs the number of rows of the first table to the console. console.log(table.getNumRows());
리턴
Integer
- 테이블 행 수입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getParent()
요소의 상위 요소를 검색합니다.
상위 요소에 현재 요소가 포함되어 있습니다.
리턴
ContainerElement
- 상위 요소입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getPreviousSibling()
getRow(rowIndex)
지정된 행 색인에서 TableRow
를 검색합니다.
// Opens the Docs file by its ID. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById(DOCUMENT_ID); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Gets the first table and logs the text of first row to the console. const table = body.getTables()[0]; console.log(table.getRow(0).getText());
매개변수
이름 | 유형 | 설명 |
---|---|---|
rowIndex | Integer | 검색할 행의 색인입니다. |
리턴
TableRow
- 표의 행입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getText()
요소의 콘텐츠를 텍스트 문자열로 검색합니다.
리턴
String
: 텍스트 문자열로 표시된 요소의 콘텐츠
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getTextAlignment()
텍스트 정렬을 가져옵니다. 사용할 수 있는 정렬 유형은 DocumentApp.TextAlignment.NORMAL
, DocumentApp.TextAlignment.SUBSCRIPT
, DocumentApp.TextAlignment.SUPERSCRIPT
입니다.
리턴
TextAlignment
: 텍스트 정렬 유형 또는 null
(텍스트에 여러 유형의 텍스트가 포함된 경우)
텍스트 정렬이 설정되지 않은 경우
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getType()
요소의 ElementType
를 검색합니다.
getType()
를 사용하여 지정된 요소의 정확한 유형을 확인합니다.
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.'); }
리턴
ElementType
- 요소 유형입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
insertTableRow(childIndex)
insertTableRow(childIndex, tableRow)
isAtDocumentEnd()
removeChild(child)
지정된 하위 요소를 삭제합니다.
// Opens the Docs file by its ID. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById(DOCUMENT_ID); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Gets the first table. const table = body.getTables()[0]; // Finds the first table row and removes it. const element = table.findElement(DocumentApp.ElementType.TABLE_ROW); table.removeChild(element.getElement());
매개변수
이름 | 유형 | 설명 |
---|---|---|
child | Element | 삭제할 하위 요소입니다. |
리턴
Table
- 현재 요소입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
removeFromParent()
상위 항목에서 요소를 삭제합니다.
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(); }
리턴
Table
- 삭제된 요소입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
removeRow(rowIndex)
지정된 행 색인에서 TableRow
를 삭제합니다.
// Opens the Docs file by its ID. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById(DOCUMENT_ID); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Gets the first table and removes its second row. const table = body.getTables()[0]; table.removeRow(1);
매개변수
이름 | 유형 | 설명 |
---|---|---|
rowIndex | Integer | 삭제할 행의 색인입니다. |
리턴
TableRow
- 삭제된 행입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
replaceText(searchPattern, replacement)
정규식을 사용하여 지정된 텍스트 패턴과 일치하는 모든 항목을 지정된 대체 문자열로 바꿉니다. 식을 사용할 수 있습니다.
검색 패턴은 JavaScript 정규 표현식 객체가 아닌 문자열로 전달됩니다. 따라서 패턴에서 백슬래시를 이스케이프 처리해야 합니다.
이 방법은 Google의 RE2 일반 표현식 라이브러리를 사용할 수 있습니다. 이 API는 지원되는 구문을 제한합니다.
제공된 정규 표현식 패턴이 각 텍스트 블록과 독립적으로 일치됩니다. .
var body = DocumentApp.getActiveDocument().getActiveTab().asDocumentTab().getBody(); // Clear the text surrounding "Apps Script", with or without text. body.replaceText("^.*Apps ?Script.*$", "Apps Script");
매개변수
이름 | 유형 | 설명 |
---|---|---|
searchPattern | String | 검색할 정규식 패턴 |
replacement | String | 대체로 사용할 텍스트 |
리턴
Element
: 현재 요소
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setAttributes(attributes)
요소의 속성을 설정합니다.
지정된 속성 매개변수는 각 속성 이름이 항목인 객체여야 합니다.
DocumentApp.Attribute
열거형이며 각 속성 값은 새 값입니다.
적용됩니다.
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);
매개변수
이름 | 유형 | 설명 |
---|---|---|
attributes | Object | 요소의 속성입니다. |
리턴
Table
- 현재 요소입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setBorderColor(color)
테두리 색상을 설정합니다.
// Opens the Docs file by its ID. If you created your script from within a // Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById(DOCUMENT_ID); // Gets the body contents of the tab by its ID. // TODO(developer): Replace the ID with your own. const body = doc.getTab(TAB_ID).asDocumentTab().getBody(); // Gets the first table. const table = body.getTables()[0]; // Sets the border color of the table to green. table.setBorderColor('#00FF00');
매개변수
이름 | 유형 | 설명 |
---|---|---|
color | String | CSS 표기법 (예: '#ffffff' )으로 형식이 지정된 테두리 색상입니다. |
리턴
Table
- 현재 요소입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setBorderWidth(width)
setColumnWidth(columnIndex, width)
setLinkUrl(url)
setTextAlignment(textAlignment)
텍스트 정렬을 설정합니다. 사용할 수 있는 정렬 유형은 DocumentApp.TextAlignment.NORMAL
, DocumentApp.TextAlignment.SUBSCRIPT
, 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);
매개변수
이름 | 유형 | 설명 |
---|---|---|
textAlignment | TextAlignment | 적용할 텍스트 정렬 유형 |
리턴
Table
: 현재 요소
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents