---
title: "Deletes an item category."
method: DELETE
path: "/api/v1/categories/{id}"
tags: ["Categories"]
---

# Deletes an item category.

`DELETE /api/v1/categories/{id}`

## Request

- Base URL: `https://app.flexonthejob.com`
- URL: `https://app.flexonthejob.com/api/v1/categories/{id}`
- Auth: HTTP bearer

Requires `ManageInventory` and an `Idempotency-Key` header. Same as "Delete" on the
Item Categories page: only a category without child categories can be deleted (move or
delete them first). Its properties and its item assignments go with it; items whose primary
`categoryId` it was move to the organization's default "No Category". Items keep the
property values they already carry. Template Builder-generated categories
(`isTemplateBuilderCategory` = true) are removed by deleting their Template Builder, not here.

## Path parameters

- `id` integer, required

## Response `200`

Deleted; body says what changed.

- CategoryDeletedResponse: Body of `DELETE /api/v1/categories/{id}`: what the delete changed.
  - `id` integer: The deleted category's id, e.g. `4`.
  - `reassignedItemCount` integer: Items whose primary `categoryId` was this category and now is the organization's default "No Category" (not listed by the API).
  - `removedAssignmentCount` integer: Item and inventory-unit category assignments removed with the category.

## Other responses

- `400`: Missing `Idempotency-Key`.
- `401`: Unauthorized
- `403`: The key lacks `ManageInventory`.
- `404`: No such category in this organization.
- `409`: The category has child categories, is Template Builder-generated, or the key's creator is unknown on this server.
- `429`: Too Many Requests

---

[API](https://skmtc.dev/flexonthejob/apis/flex-api.md) · [All operations](https://skmtc.dev/flexonthejob/apis/flex-api/llms.txt) · [OpenAPI document](https://skmtc.dev/flexonthejob/apis/flex-api/revisions/19c8f4d27acf?raw)
