Skip to main content

What are Tags?

Tags provide flexible, attribute-based classification for resources and subjects. Unlike hierarchical structures, tags allow many-to-many relationships—a document can be tagged as both “confidential” and “finance” and “q4-2024”. Tags enable:
  • Attribute-based access control (ABAC)
  • Dynamic filtering and queries
  • Conditional permissions based on tag matching

Tag Groups

Organize related tags together

Tag Bindings

Control which models can use which tag groups

Tag-Based Access

Use tags in permission conditions

Tag Properties

Creating Tags

Tags must belong to a tag group. You can create them in two ways: Create a tag group with its tags in a single request:
Inline tags automatically inherit scopeId and tagGroupId from the parent group.

Option 2: Separate Requests

Create the tag group first, then add tags:

Assigning Tags

Tags can be assigned to resources and subjects:

Tag a Resource

Tag a Subject

Taggable Models

The TaggableModelTypeEnum defines what can be tagged:

Common Tag Group Patterns

Departments (Multi-Select)

Sensitivity Levels (Single-Select)

Project Categories

Labor Classes (Construction)

Using Tags in Permissions

Tags enable attribute-based access control.
The example below shows subject-tag matching, which is not enforced yet—the engine doesn’t load subject tags (see the roadmap and Tag-Based Access). Resource-side tag conditions do work today. Conditions also attach to the role-permission edge (condition), not a permission logic field.

Tag-Based Access

Learn more about using tags in permission conditions

API Reference

Create Tag Group

Create a new tag group

Create Tag

Create a tag in a group

Get Tags

List tags

Get Tag Groups

List tag groups

Next Steps

Tag Groups

Learn how to organize tags with groups and constraints