Class Tab
Stay organized with collections
Save and categorize content based on your preferences.
Tab
A tab within a Google Docs document.
// Get all of the first-level tabs (tabs that are not nested within a parent
// tab) in the document.
// TODO(developer): Replace the ID with your own.
const tabs = DocumentApp.openById('123abc').getTabs();
// Get a specific tab based on the tab ID.
// TODO(developer): Replace the IDs with your own.
const tab = DocumentApp.openById('123abc').getTab('123abc');
Detailed documentation
getChildTabs()
Retrieves the child tabs nested within this tab.
Return
Tab[]
— The child tabs nested within this tab.
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
getId()
Retrieves the ID of the tab.
Return
String
— The ID of the tab.
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
getIndex()
Retrieves the 0-based index of the tab within the parent.
Return
Integer
— The index of the tab within the parent.
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
getTitle()
Retrieves the title of the tab.
Return
String
— The title of the tab.
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
getType()
Retrieves the type of tab.
Use this method to determine the content type of this Tab
before casting to the more
specific type using asDocumentTab()
.
const tab = DocumentApp.getActiveDocument().getActiveTab();
// Use getType() to determine the tab's type before casting.
if (tab.getType() === DocumentApp.TabType.DOCUMENT_TAB) {
// It's a document tab, write some text to it.
tab.asDocumentTab().setText('Hello World!');
} else {
// There are currently no types other than DOCUMENT_TAB.
}
Return
TabType
— The tab's type.
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
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-12-02 UTC.
[null,null,["Last updated 2024-12-02 UTC."],[[["\u003cp\u003eA tab is a structural element within a Google Docs document, allowing for organization and navigation within the document's content.\u003c/p\u003e\n"],["\u003cp\u003eYou can retrieve all first-level tabs or a specific tab using its ID with the \u003ccode\u003eDocumentApp\u003c/code\u003e class.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eTab\u003c/code\u003e class provides methods for accessing tab properties like title, type, index, and child tabs, as well as retrieving the tab contents as a \u003ccode\u003eDocumentTab\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eMost \u003ccode\u003eTab\u003c/code\u003e methods require authorization with scopes such as \u003ccode\u003ehttps://www.googleapis.com/auth/documents.currentonly\u003c/code\u003e or \u003ccode\u003ehttps://www.googleapis.com/auth/documents\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eYou can use the \u003ccode\u003egetType()\u003c/code\u003e method to determine the tab type before casting to a specific tab type like \u003ccode\u003eDocumentTab\u003c/code\u003e for further interaction.\u003c/p\u003e\n"]]],["This documentation outlines how to interact with tabs in Google Docs via scripting. Key actions include retrieving tabs, either all first-level tabs or a specific one by ID. You can then get a tab's `DocumentTab`, child tabs, ID, index, title, and type. The `getType()` method is crucial for determining the content before using `asDocumentTab()`. All these methods need authorization scopes like `documents.currentonly` or `documents`.\n"],null,["# Class Tab\n\nTab\n\nA tab within a Google Docs document.\n\n```javascript\n// Get all of the first-level tabs (tabs that are not nested within a parent\n// tab) in the document.\n// TODO(developer): Replace the ID with your own.\nconst tabs = DocumentApp.openById('123abc').getTabs();\n\n// Get a specific tab based on the tab ID.\n// TODO(developer): Replace the IDs with your own.\nconst tab = DocumentApp.openById('123abc').getTab('123abc');\n``` \n\n### Methods\n\n| Method | Return type | Brief description |\n|-------------------------------------|-------------------------------------------------------------|----------------------------------------------------------------------------------------------|\n| [asDocumentTab()](#asDocumentTab()) | [DocumentTab](/apps-script/reference/document/document-tab) | Retrieves the tab contents as a [DocumentTab](/apps-script/reference/document/document-tab). |\n| [getChildTabs()](#getChildTabs()) | [Tab[]](#) | Retrieves the child tabs nested within this tab. |\n| [getId()](#getId()) | `String` | Retrieves the ID of the tab. |\n| [getIndex()](#getIndex()) | `Integer` | Retrieves the 0-based index of the tab within the parent. |\n| [getTitle()](#getTitle()) | `String` | Retrieves the title of the tab. |\n| [getType()](#getType()) | [TabType](/apps-script/reference/document/tab-type) | Retrieves the type of tab. |\n\nDetailed documentation\n----------------------\n\n### `as``Document``Tab()`\n\nRetrieves the tab contents as a [DocumentTab](/apps-script/reference/document/document-tab).\n\n#### Return\n\n\n[DocumentTab](/apps-script/reference/document/document-tab) --- The tab as a [DocumentTab](/apps-script/reference/document/document-tab).\n\n*** ** * ** ***\n\n### `get``Child``Tabs()`\n\nRetrieves the child tabs nested within this tab.\n\n#### Return\n\n\n[Tab[]](#) --- The child tabs nested within this tab.\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/documents.currentonly`\n- `https://www.googleapis.com/auth/documents`\n\n*** ** * ** ***\n\n### `get``Id()`\n\nRetrieves the ID of the tab.\n\n#### Return\n\n\n`String` --- The ID of the tab.\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/documents.currentonly`\n- `https://www.googleapis.com/auth/documents`\n\n*** ** * ** ***\n\n### `get``Index()`\n\nRetrieves the 0-based index of the tab within the parent.\n\n#### Return\n\n\n`Integer` --- The index of the tab within the parent.\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/documents.currentonly`\n- `https://www.googleapis.com/auth/documents`\n\n*** ** * ** ***\n\n### `get``Title()`\n\nRetrieves the title of the tab.\n\n#### Return\n\n\n`String` --- The title of the tab.\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/documents.currentonly`\n- `https://www.googleapis.com/auth/documents`\n\n*** ** * ** ***\n\n### `get``Type()`\n\nRetrieves the type of tab.\n\nUse this method to determine the content type of this [Tab](#) before casting to the more\nspecific type using [asDocumentTab()](#asDocumentTab()).\n\n```javascript\nconst tab = DocumentApp.getActiveDocument().getActiveTab();\n// Use getType() to determine the tab's type before casting.\nif (tab.getType() === DocumentApp.TabType.DOCUMENT_TAB) {\n // It's a document tab, write some text to it.\n tab.asDocumentTab().setText('Hello World!');\n} else {\n // There are currently no types other than DOCUMENT_TAB.\n}\n```\n\n#### Return\n\n\n[TabType](/apps-script/reference/document/tab-type) --- The tab's type.\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/documents.currentonly`\n- `https://www.googleapis.com/auth/documents`"]]