---
title: "Put category for workspace"
method: PUT
path: "/api/v1/category/{id}"
tags: ["Category"]
---

# Put category for workspace

`PUT /api/v1/category/{id}`

## Request

- Base URL: `https://api.intheloop.io`
- URL: `https://api.intheloop.io/api/v1/category/{id}`
- Auth: API key in header `Authorization`

## Path parameters

- `id` string, required

## Headers

- `Authorization` string
- `X-Impersonate-User` string

## Request body

- Categories: Categories list
  - `items` Category[]: List of sorted categories
    - `workspaceId` string: Availability Name
    - `type` 'Content' | 'Customer' | 'Project', required: Possible Clear After enums
    - `typeInstance` integer, required: Multiple Category Type Instance
    - `name` string: Name
    - `icon` string: Icon
    - `description` string: Description
    - `enabled` boolean, required: Enabled
    - `visibility` IncludedInboxes: included inboxes
      - `includeInboxes` 'All' | 'AllSharedPersonal' | 'AllShared' | 'AllPersonal' | 'AllManaged' | 'CustomPersonal' | 'CustomShared' | 'Custom' | 'None', required: Possible Clear After enums
      - `inboxIds` string[]: Custom inbox ids
    - `autoTagging` IncludedInboxes: included inboxes
      - `includeInboxes` 'All' | 'AllSharedPersonal' | 'AllShared' | 'AllPersonal' | 'AllManaged' | 'CustomPersonal' | 'CustomShared' | 'Custom' | 'None', required: Possible Clear After enums
      - `inboxIds` string[]: Custom inbox ids
    - `color` string: Color
    - `deleted` boolean, required: Deleted
  - `spamFilter` IncludedInboxes: included inboxes
    - `includeInboxes` 'All' | 'AllSharedPersonal' | 'AllShared' | 'AllPersonal' | 'AllManaged' | 'CustomPersonal' | 'CustomShared' | 'Custom' | 'None', required: Possible Clear After enums
    - `inboxIds` string[]: Custom inbox ids
  - `canEdit` boolean, required: Continuation token

## Response `200`

OK

- Categories: Categories list
  - `items` Category[]: List of sorted categories
    - `workspaceId` string: Availability Name
    - `type` 'Content' | 'Customer' | 'Project', required: Possible Clear After enums
    - `typeInstance` integer, required: Multiple Category Type Instance
    - `name` string: Name
    - `icon` string: Icon
    - `description` string: Description
    - `enabled` boolean, required: Enabled
    - `visibility` IncludedInboxes: included inboxes
      - `includeInboxes` 'All' | 'AllSharedPersonal' | 'AllShared' | 'AllPersonal' | 'AllManaged' | 'CustomPersonal' | 'CustomShared' | 'Custom' | 'None', required: Possible Clear After enums
      - `inboxIds` string[]: Custom inbox ids
    - `autoTagging` IncludedInboxes: included inboxes
      - `includeInboxes` 'All' | 'AllSharedPersonal' | 'AllShared' | 'AllPersonal' | 'AllManaged' | 'CustomPersonal' | 'CustomShared' | 'Custom' | 'None', required: Possible Clear After enums
      - `inboxIds` string[]: Custom inbox ids
    - `color` string: Color
    - `deleted` boolean, required: Deleted
  - `spamFilter` IncludedInboxes: included inboxes
    - `includeInboxes` 'All' | 'AllSharedPersonal' | 'AllShared' | 'AllPersonal' | 'AllManaged' | 'CustomPersonal' | 'CustomShared' | 'Custom' | 'None', required: Possible Clear After enums
    - `inboxIds` string[]: Custom inbox ids
  - `canEdit` boolean, required: Continuation token

## Other responses

- `400`: Bad request. Check fields message and error code from response body for additional information.
- `401`: Unauthorized request. Check fields message and error code from response body for additional information.
- `403`: Requested resource forbidden.Check fields message and error code from response body for additional information.
- `404`: Requested resource not found.
- `429`: Too many requests. Check response header Retry-After indicating how long to wait before making a new request.
- `451`: Unavailable because account is not verified.

---

[API](https://skmtc.dev/intheloop/apis/loop-api.md) - [All operations](https://skmtc.dev/intheloop/apis/loop-api/llms.txt) - [OpenAPI document](https://skmtc.dev/intheloop/apis/loop-api/revisions/0892c5ba0787?raw)
