# Moderation Cases ## `GET /api/guilds/{guild_id}/cases` **ListCases** **Parameters** | Name | In | Type | Required | Description | |---|---|---|---|---| | `guild_id` | path | integer | yes | | | `user_id` | query | integer \| null | no | | | `limit` | query | integer | no | | | `offset` | query | integer | no | | **Response `200` — Request fulfilled, document follows** Model: array of {ref}`ModCaseSchema ` Type: array of {ref}`ModCaseSchema ` ## `POST /api/guilds/{guild_id}/cases` **CreateCase** **Parameters** | Name | In | Type | Required | Description | |---|---|---|---|---| | `guild_id` | path | integer | yes | | **Request body** Model: {ref}`ModCaseCreate ` | Field | Type | Required | Description | |---|---|---|---| | `action` | {ref}`CaseAction ` | yes | | | `user_id` | integer | yes | | | `moderator_id` | integer | yes | | | `reason` | string \| null | no | | | `duration_seconds` | integer \| null | no | | **Response `201` — Document created, URL follows** Model: {ref}`ModCaseSchema ` | Field | Type | Required | Description | |---|---|---|---| | `guild_id` | integer | yes | | | `case_number` | integer | yes | | | `action` | {ref}`CaseAction ` | yes | | | `user_id` | integer | yes | | | `moderator_id` | integer | yes | | | `reason` | string \| null | yes | | | `duration_seconds` | integer \| null | yes | | | `created_at` | string (date-time) | yes | | ## `GET /api/guilds/{guild_id}/cases/{case_number}` **GetCase** **Parameters** | Name | In | Type | Required | Description | |---|---|---|---|---| | `guild_id` | path | integer | yes | | | `case_number` | path | integer | yes | | **Response `200` — Request fulfilled, document follows** Model: {ref}`ModCaseSchema ` | Field | Type | Required | Description | |---|---|---|---| | `guild_id` | integer | yes | | | `case_number` | integer | yes | | | `action` | {ref}`CaseAction ` | yes | | | `user_id` | integer | yes | | | `moderator_id` | integer | yes | | | `reason` | string \| null | yes | | | `duration_seconds` | integer \| null | yes | | | `created_at` | string (date-time) | yes | | ## `PATCH /api/guilds/{guild_id}/cases/{case_number}` **UpdateCase** **Parameters** | Name | In | Type | Required | Description | |---|---|---|---|---| | `guild_id` | path | integer | yes | | | `case_number` | path | integer | yes | | **Request body** Model: {ref}`ModCaseUpdate ` | Field | Type | Required | Description | |---|---|---|---| | `reason` | string \| null | no | | **Response `200` — Request fulfilled, document follows** Model: {ref}`ModCaseSchema ` | Field | Type | Required | Description | |---|---|---|---| | `guild_id` | integer | yes | | | `case_number` | integer | yes | | | `action` | {ref}`CaseAction ` | yes | | | `user_id` | integer | yes | | | `moderator_id` | integer | yes | | | `reason` | string \| null | yes | | | `duration_seconds` | integer \| null | yes | | | `created_at` | string (date-time) | yes | |