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.consttabs=DocumentApp.openById('123abc').getTabs();// Get a specific tab based on the tab ID.// TODO(developer): Replace the IDs with your own.consttab=DocumentApp.openById('123abc').getTab('123abc');
Use this method to determine the content type of this Tab before casting to the more specific type using asDocumentTab().
consttab=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.}
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["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,["Tab\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\nMethods\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`as``Document``Tab()` \nRetrieves the tab contents as a [DocumentTab](/apps-script/reference/document/document-tab).\n\nReturn\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()` \nRetrieves the child tabs nested within this tab.\n\nReturn\n\n\n[Tab[]](#) --- The child tabs nested within this tab.\n\nAuthorization\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()` \nRetrieves the ID of the tab.\n\nReturn\n\n\n`String` --- The ID of the tab.\n\nAuthorization\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()` \nRetrieves the 0-based index of the tab within the parent.\n\nReturn\n\n\n`Integer` --- The index of the tab within the parent.\n\nAuthorization\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()` \nRetrieves the title of the tab.\n\nReturn\n\n\n`String` --- The title of the tab.\n\nAuthorization\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()` \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\nReturn\n\n\n[TabType](/apps-script/reference/document/tab-type) --- The tab's type.\n\nAuthorization\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`"]]