Categories

Ticket categories and subcategories.

MethodPathSummary
GET/v1/app/psa/categoriesList categories (flat, with parent_id)
POST/v1/app/psa/categoriesCreate category
POST/v1/app/psa/categories/:idUpdate category
POST/v1/app/psa/categories/:id/deleteDelete category

#List categories (flat, with parent_id)

GET/v1/app/psa/categories
Address
https://<your-org>.brambleit.cloud/api/v1/app/psa/categories
Requires
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).
Licence: PSA.

Query parameters

NameTypeDescription
queue_idinteger

Response 200

FieldTypeDescription
categoriesarray of any
Example response
JSON
{
  "categories": []
}

Example request

Bash
curl -X GET 'https://<your-org>.brambleit.cloud/api/v1/app/psa/categories' \
  -H "X-API-Key: $BRAMBLE_KEY"

#Create category

POST/v1/app/psa/categories
Address
https://<your-org>.brambleit.cloud/api/v1/app/psa/categories
Requires
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).
Licence: PSA.

Request body JSON

NameTypeDescription
namerequiredstring
parent_idinteger

Response 200

FieldTypeDescription
categoryobject
category.idinteger
category.tenant_idinteger
category.parent_idinteger, or null
category.namestring
category.created_atstring (date-time), or null
Example response
JSON
{
  "category": {
    "id": 42,
    "tenant_id": 1,
    "parent_id": 7,
    "name": "Example name",
    "created_at": "2026-11-12T09:30:00.000Z"
  }
}

Errors

StatusMessage
400name is required

Example request

Bash
curl -X POST 'https://<your-org>.brambleit.cloud/api/v1/app/psa/categories' \
  -H "X-API-Key: $BRAMBLE_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"Example name","parent_id":7}'

#Update category

POST/v1/app/psa/categories/:id
Address
https://<your-org>.brambleit.cloud/api/v1/app/psa/categories/:id
Requires
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).
Licence: PSA.

Path parameters

NameTypeDescription
idrequiredinteger

Request body JSON

NameTypeDescription
namestring
parent_idinteger

Response 200

FieldTypeDescription
categoryobject
category.idinteger
category.tenant_idinteger
category.parent_idinteger, or null
category.namestring
category.created_atstring (date-time), or null
Example response
JSON
{
  "category": {
    "id": 42,
    "tenant_id": 1,
    "parent_id": 7,
    "name": "Example name",
    "created_at": "2026-11-12T09:30:00.000Z"
  }
}

Errors

StatusMessage
404Category not found

Example request

Bash
curl -X POST 'https://<your-org>.brambleit.cloud/api/v1/app/psa/categories/42' \
  -H "X-API-Key: $BRAMBLE_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"Example name","parent_id":7}'

#Delete category

POST/v1/app/psa/categories/:id/delete
Address
https://<your-org>.brambleit.cloud/api/v1/app/psa/categories/:id/delete
Requires
Signed-in session, X-API-Key, or a Bramble app access token (Authorization: Bearer).
Licence: PSA.

Path parameters

NameTypeDescription
idrequiredinteger

Response 200

FieldTypeDescription
successboolean
Example response
JSON
{
  "success": true
}

Example request

Bash
curl -X POST 'https://<your-org>.brambleit.cloud/api/v1/app/psa/categories/42/delete' \
  -H "X-API-Key: $BRAMBLE_KEY"