---
title: "Updates a Category"
method: PATCH
path: "/categories/{id}"
tags: ["Category"]
---

# Updates a Category

`PATCH /categories/{id}`

Updates a Category and persists changes to storage.

## Path parameters

- `id` integer, required

## Request body

- object
  - `name` string
  - `pets` integer[]

## Response `200`

Category updated

- Category
  - `id` integer, required
  - `name` string, required
  - `readonly` string, required
  - `pets` Pet[]
    - `id` integer, required
    - `name` string, required
    - `nicknames` string[]
    - `age` integer
    - `categories` Category[]
    - `owner` User
      - `id` integer, required
      - `name` string, required
      - `age` integer, required
      - `pets` Pet[]
    - `friends` Pet[]

## Other responses

- `400` — invalid input, data invalid
- `404` — resource not found
- `409` — conflicting resources
- `500` — unexpected error

## Changes

- **2022-03-18** `6078f3637405` — 1 info
  - added the required property `readonly` to the response with the `200` status
- **2022-01-03** `518e00702622` — 1 info
  - added the non-success response with the status `409`
- **2022-01-03** `88468a37d34b` — 1 info
  - the request property `name` became optional
- **2022-01-03** `d1d141e66c09` — 3 breaking, 6 info
  - the `code` response's property type/format changed from `integer`/`int32` to `integer`/`` for status `400`
  - the `code` response's property type/format changed from `integer`/`int32` to `integer`/`` for status `404`
  - the `code` response's property type/format changed from `integer`/`int32` to `integer`/`` for status `500`
  - the response property `code` became required for the status `400`
  - …5 more
- **2021-12-21** `41f59b033280` — 5 breaking, 2 info
  - the `id` response's property type/format changed from `integer`/`int32` to `integer`/`` for status `200`
  - the `pets/items/age` response's property type/format changed from `integer`/`int32` to `integer`/`` for status `200`
  - the `pets/items/id` response's property type/format changed from `integer`/`int32` to `integer`/`` for status `200`
  - the `pets/items/owner/age` response's property type/format changed from `integer`/`int32` to `integer`/`` for status `200`
  - …3 more

[Full history](https://skmtc.dev/ent/apis/my-simple-api/changes/categories/:id/patch.md)

---

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