# Events ## `GET /api/events` **ListEvents** **Parameters** | Name | In | Type | Required | Description | |---|---|---|---|---| | `when` | query | string | no | | | `kind` | query | {ref}`EventKind ` \| null | no | | **Response `200` — Request fulfilled, document follows** Model: array of {ref}`EventSummary ` Type: array of {ref}`EventSummary ` ## `POST /api/events` **CreateEvent** **Request body** Model: {ref}`EventCreate ` | Field | Type | Required | Description | |---|---|---|---| | `kind` | {ref}`EventKind ` | yes | | | `title` | string | yes | | | `location` | string | no | | | `starts_at` | string (date-time) | yes | | | `ends_at` | string (date-time) \| null | no | | | `size` | integer \| null | no | | | `ep_override` | integer \| null | no | | | `notes` | string \| null | no | | **Response `201` — Document created, URL follows** Model: {ref}`EventDetail ` | Field | Type | Required | Description | |---|---|---|---| | `id` | string (uuid) | yes | | | `kind` | {ref}`EventKind ` | yes | | | `title` | string | yes | | | `location` | string | yes | | | `starts_at` | string (date-time) | yes | | | `ends_at` | string (date-time) \| null | yes | | | `size` | integer \| null | yes | | | `ep` | integer | yes | | | `ep_override` | integer \| null | yes | | | `status` | {ref}`EventStatus ` | yes | | | `notes` | string \| null | yes | | | `counts` | {ref}`EventCounts ` \| null | yes | | | `series` | {ref}`SeriesRef ` \| null | yes | | | `signups` | array of {ref}`Signup ` | yes | | | `my_signup` | {ref}`Signup ` \| null | yes | | | `discord_interest` | {ref}`DiscordInterest ` \| null | yes | | | `away` | array of {ref}`SignupMember ` \| null | yes | | ## `DELETE /api/events/{event_id}` **DeleteEvent** **Parameters** | Name | In | Type | Required | Description | |---|---|---|---|---| | `event_id` | path | string (uuid) | yes | | **Response `204`** — Request fulfilled, nothing follows ## `GET /api/events/{event_id}` **GetEvent** **Parameters** | Name | In | Type | Required | Description | |---|---|---|---|---| | `event_id` | path | string (uuid) | yes | | **Response `200` — Request fulfilled, document follows** Model: {ref}`EventDetail ` | Field | Type | Required | Description | |---|---|---|---| | `id` | string (uuid) | yes | | | `kind` | {ref}`EventKind ` | yes | | | `title` | string | yes | | | `location` | string | yes | | | `starts_at` | string (date-time) | yes | | | `ends_at` | string (date-time) \| null | yes | | | `size` | integer \| null | yes | | | `ep` | integer | yes | | | `ep_override` | integer \| null | yes | | | `status` | {ref}`EventStatus ` | yes | | | `notes` | string \| null | yes | | | `counts` | {ref}`EventCounts ` \| null | yes | | | `series` | {ref}`SeriesRef ` \| null | yes | | | `signups` | array of {ref}`Signup ` | yes | | | `my_signup` | {ref}`Signup ` \| null | yes | | | `discord_interest` | {ref}`DiscordInterest ` \| null | yes | | | `away` | array of {ref}`SignupMember ` \| null | yes | | ## `PATCH /api/events/{event_id}` **UpdateEvent** **Parameters** | Name | In | Type | Required | Description | |---|---|---|---|---| | `event_id` | path | string (uuid) | yes | | **Request body** Model: {ref}`EventUpdate ` | Field | Type | Required | Description | |---|---|---|---| | `kind` | {ref}`EventKind ` \| null | no | | | `title` | string \| null | no | | | `location` | string \| null | no | | | `starts_at` | string (date-time) \| null | no | | | `ends_at` | string (date-time) \| null | no | | | `size` | integer \| null | no | | | `ep_override` | integer \| null | no | | | `notes` | string \| null | no | | | `status` | {ref}`EventStatus ` \| null | no | | **Response `200` — Request fulfilled, document follows** Model: {ref}`EventDetail ` | Field | Type | Required | Description | |---|---|---|---| | `id` | string (uuid) | yes | | | `kind` | {ref}`EventKind ` | yes | | | `title` | string | yes | | | `location` | string | yes | | | `starts_at` | string (date-time) | yes | | | `ends_at` | string (date-time) \| null | yes | | | `size` | integer \| null | yes | | | `ep` | integer | yes | | | `ep_override` | integer \| null | yes | | | `status` | {ref}`EventStatus ` | yes | | | `notes` | string \| null | yes | | | `counts` | {ref}`EventCounts ` \| null | yes | | | `series` | {ref}`SeriesRef ` \| null | yes | | | `signups` | array of {ref}`Signup ` | yes | | | `my_signup` | {ref}`Signup ` \| null | yes | | | `discord_interest` | {ref}`DiscordInterest ` \| null | yes | | | `away` | array of {ref}`SignupMember ` \| null | yes | | ## `DELETE /api/events/{event_id}/signup` **DeleteSignup** **Parameters** | Name | In | Type | Required | Description | |---|---|---|---|---| | `event_id` | path | string (uuid) | yes | | **Response `204`** — Request fulfilled, nothing follows ## `PUT /api/events/{event_id}/signup` **UpsertSignup** **Parameters** | Name | In | Type | Required | Description | |---|---|---|---|---| | `event_id` | path | string (uuid) | yes | | **Request body** Model: {ref}`SignupUpsert ` | Field | Type | Required | Description | |---|---|---|---| | `character` | string \| null | no | | | `class` | {ref}`WowClass ` \| null | no | | | `role` | {ref}`SignupRole ` \| null | no | | | `status` | {ref}`SignupStatus ` | yes | | | `comment` | string \| null | no | | **Response `200` — Request fulfilled, document follows** Model: {ref}`Signup ` | Field | Type | Required | Description | |---|---|---|---| | `id` | string (uuid) | yes | | | `member` | {ref}`SignupMember ` | yes | | | `character` | string \| null | yes | | | `class` | {ref}`WowClass ` \| null | yes | | | `role` | {ref}`SignupRole ` \| null | yes | | | `status` | {ref}`SignupStatus ` | yes | | | `comment` | string \| null | yes | | | `group` | integer \| null | yes | | | `bench` | boolean | yes | | | `updated_at` | string (date-time) | yes | | ## `PATCH /api/events/{event_id}/signups/{signup_id}` **UpdateEventChart** **Parameters** | Name | In | Type | Required | Description | |---|---|---|---|---| | `event_id` | path | string (uuid) | yes | | | `signup_id` | path | string (uuid) | yes | | **Request body** Model: {ref}`ChartUpdate ` | Field | Type | Required | Description | |---|---|---|---| | `group` | integer \| null | no | | | `bench` | boolean \| null | no | | **Response `200` — Request fulfilled, document follows** Model: {ref}`Signup ` | Field | Type | Required | Description | |---|---|---|---| | `id` | string (uuid) | yes | | | `member` | {ref}`SignupMember ` | yes | | | `character` | string \| null | yes | | | `class` | {ref}`WowClass ` \| null | yes | | | `role` | {ref}`SignupRole ` \| null | yes | | | `status` | {ref}`SignupStatus ` | yes | | | `comment` | string \| null | yes | | | `group` | integer \| null | yes | | | `bench` | boolean | yes | | | `updated_at` | string (date-time) | yes | |