Skip to content

TagFolder

A named group of tags that organizes them into collapsible sections in the Tags panel.

Tag folders help manage models with many tags — for example, grouping 'Plumbing', 'Electrical', and 'HVAC' tags under an 'MEP' folder. Get a folder by name with model.getTagManager().getTagFolderByName(), or create one with op.createTagFolder() inside a performOperation.

let model = await SketchUpApi.getActiveModel();
// Create a folder containing MEP tags
await model.performOperation(op => {
const ref = op.createTagFolder('MEP');
op.createTag('Plumbing', ref);
op.createTag('Electrical', ref);
}, 'Create MEP tag folder');
// Read it back
let tm = await model.getTagManager();
let folder = await tm.getTagFolderByName('MEP');
console.log(folder.name);
// => 'MEP'
console.log(folder.tags.length);
// => 2

readonly attributes: Attributes

User-defined key-value data attached to this folder.


readonly folderRef: TagFolderRef | undefined

A reference to the parent folder, or undefined if this folder is at the root level.


readonly id: number

The persistent numeric identifier for this folder, stable across sessions.


readonly name: string

The user-visible name of this folder, like 'MEP'.


readonly tagFolders: readonly TagFolder[]

The nested tag folders directly inside this folder.


readonly tags: readonly Tag[]

The tags directly inside this folder.


readonly type: TagFolder = EntityType.TagFolder


readonly visible: boolean

Whether tags inside this folder are currently visible.

get sketchupId(): SketchupId

JS API identifier for this folder. Pass it to API methods that accept a sketchupId.

SketchupId


get typeName(): string

Returns a named variant of the type field.

SDK 2.35.0

string

findTag(name): Tag | undefined

Finds a tag by name across all root-level tags. Returns undefined if no tag with that name exists at the root.

Parameter Type

name

string

Tag | undefined

SDK 2.35.0


findTagFolder(name): TagFolder | undefined

Finds a top-level tag folder by name. Returns undefined if no folder with that name exists at the root.

Parameter Type

name

string

TagFolder | undefined

SDK 2.35.0


getFolder(): Promise<TagFolder | undefined>

Fetches the parent folder this folder belongs to, or undefined if it is at the root level.

Promise<TagFolder | undefined>

SDK 2.30.0


refresh(): Promise<TagFolder>

Re-fetches this folder from SketchUp to pick up any changes made since this snapshot was taken.

Promise<TagFolder>


toString(): string

string

readonly folderId: number | undefined

The persistent id of the parent TagFolder instance


get folder(): Promise<TagFolder | undefined>

Promise<TagFolder | undefined>


getTagByName(name): Tag | undefined

Parameter Type Description

name

string

‐

Tag | undefined


getTagFolderByName(name): TagFolder | undefined

Parameter Type Description

name

string

‐

TagFolder | undefined