---
title: "Create an Inventory Category"
method: POST
path: "/inventory/categories"
tags: ["InventoryCategories"]
---

# Create an Inventory Category

`POST /inventory/categories`

This endpoint creates an inventory category for the given organisation.

## Request body

- object
  - `site_id` string, uuid, required — Identifier of the site that owns this inventory category. Categories are scoped per site so each site can maintain its own taxonomy. Must belong to `organisation_id`.
  - `organisation_id` string, uuid, required — Identifier of the organisation this category sits under. Used for cross-site reporting and authorisation; the supplied `site_id` must belong to this organisation.
  - `name` string, required — Human-readable name for the inventory category, used to group related inventory products in the admin UI and on reports. Trimmed; 1-120 characters.

## Response `201`

The inventory category was successfully retrieved

- object
  - `data` InventoryCategory, required
    - `id` string, uuid, required — The ID of the inventory category.
    - `name` string, required — The name of the inventory category.
    - `site_id` string, uuid, nullable, required — The ID of the site the inventory category belongs to.
    - `organisation_id` string, uuid, required — The ID of the organisation the inventory category belongs to.
    - `order` integer, required — The display order of the inventory category within its site. Lower values are shown first. Set via the reorder endpoint.

## Other responses

- `401` — The user is unauthenticated
- `403` — The authenticated user does not have permission.
- `422` — The request didn't pass validation

---

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