---
title: "Create a tag group"
method: POST
path: "/tag_groups"
tags: ["Tag Groups"]
---

# Create a tag group

`POST /tag_groups`

## Request body

- object
  - `business_entity_id` string, required
  - `label` string, required
  - `label_translations` Translations, nullable
    - `en` string
    - `fr` string
  - `description` string, nullable
  - `description_translations` Translations, nullable
    - `en` string
    - `fr` string
  - `color` string, nullable — A hex colour code for the tag group (e.g. `#AABBCC` or `#ABC`). Used for display.
  - `is_component_locked` boolean — When `true`, prevents modification of tags in this group through the embedded portal. Tags can still be managed through the API.
  - `is_journal_entry_dimension` boolean — When `true`, marks this tag group as a journal entry dimension. A maximum of three tag groups per business entity can be journal entry dimensions.
  - `integrations` object — Identifiers and object types for this tag group in external accounting integrations, used to sync tag groups imported from those systems. QuickBooks does not expose a group-level identifier, so only the type is accepted for QuickBooks.
    - `xero` object
      - `id` string
      - `type` 'tracking_category'
    - `quickbooks` object
      - `type` 'class' | 'department' | 'project'

## Response `201`

Created

- object
  - `id` string — The unique identifier of the object in Nmbr.
  - `object` string — The type of the object in Nmbr (`"tag_group"`).
  - `data` TagGroup
    - `label` string
    - `label_translations` Translations, nullable
      - `en` string
      - `fr` string
    - `label_translated` string — The translation of the `label` property for the request locale. Computed using the values in `label` and `label_translations` and the value of the request's `Accept-Language` header.
    - `description` string, nullable
    - `description_translations` Translations, nullable
      - `en` string
      - `fr` string
    - `description_translated` string — The translation of the `description` property for the request locale. Computed using the values in `description` and `description_translations` and the value of the request's `Accept-Language` header.
    - `color` string, nullable — A hex colour code for the tag group (e.g. `#AABBCC` or `#ABC`). Used for display.
    - `archived_at` string, dateTime, nullable — When set, the tag group is archived and excluded from index listings by default.
    - `is_deletable` boolean — A tag group may not be deleted while it is the primary tag group or any of its tags are assigned to active allocations.
    - `is_component_locked` boolean — When `true`, the tags within this group cannot be modified through the embedded portal. Tags can still be managed through the API.
    - `is_journal_entry_dimension` boolean — When `true`, this tag group is used as a dimension in journal entry reports. A business entity can have up to three journal entry dimensions.
    - `integrations` object, nullable — Identifiers and object types for this tag group in external accounting integrations, used to sync tag groups imported from those systems. QuickBooks does not expose a group-level identifier, so only the type is stored for QuickBooks.
      - `xero` object, nullable
        - `id` string — The unique identifier of the object in Nmbr.
        - `type` unknown
      - `quickbooks` object, nullable
        - `type` unknown
    - `business_entity` object
      - `id` string — The unique identifier of the object in Nmbr.
      - `object` string — The type of the object in Nmbr (`"business_entity"`).
    - `created_at` string, dateTime — The date and time the object was created in Nmbr.
    - `updated_at` string, dateTime — The date and time the object was last updated in Nmbr.

---

[API](https://skmtc.dev/nmbr/apis/nmbr-api.md) · [All operations](https://skmtc.dev/nmbr/apis/nmbr-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/nmbr/nmbr-api/revisions/29c2d6ac7131/schema)
