summary refs log tree commit diff
diff options
context:
space:
mode:
authorMadeline <46743919+MaddyUnderStars@users.noreply.github.com>2023-01-06 19:30:03 +1100
committerMadeline <46743919+MaddyUnderStars@users.noreply.github.com>2023-01-06 19:30:03 +1100
commit98d318fd88cc42d290add88a81b2d5d5915de019 (patch)
treebbf740cd8154144956f17a0c0251428efb569949
parentDon't allow BaseClass props through schema (diff)
downloadserver-98d318fd88cc42d290add88a81b2d5d5915de019.tar.xz
add back openapi generation. todo: find way to keep route text descriptions in code, and find way to get usages of right/permission .hasThrow
-rw-r--r--assets/openapi.json12816
-rw-r--r--package.json1
-rw-r--r--scripts/openapi.js169
-rw-r--r--scripts/util/getRouteDescriptions.js63
4 files changed, 7050 insertions, 5999 deletions
diff --git a/assets/openapi.json b/assets/openapi.json
index a8a657b2..e1d5cfa4 100644
--- a/assets/openapi.json
+++ b/assets/openapi.json
@@ -1,6000 +1,6818 @@
 {
-	"openapi": "3.0.0",
-	"servers": [
-		{
-			"url": "https://api.fosscord.com/api/v{version}",
-			"description": "Official fosscord instance",
-			"variables": {
-				"version": {
-					"default": "9",
-					"enum": ["8", "9"]
-				}
-			}
-		}
-	],
-	"info": {
-		"description": "Fosscord is a free open source selfhostable discord compatible chat, voice and video platform",
-		"version": "1.0.0",
-		"title": "Fosscord HTTP API Routes",
-		"termsOfService": "",
-		"contact": {
-			"name": "Fosscord"
-		},
-		"license": {
-			"name": "AGPLV3",
-			"url": "https://www.gnu.org/licenses/agpl-3.0.en.html"
-		}
-	},
-	"tags": [
-		{
-			"name": "auth"
-		},
-		{
-			"name": "applications"
-		},
-		{
-			"name": "channels"
-		},
-		{
-			"name": "discoverable-guilds"
-		},
-		{
-			"name": "experiments"
-		},
-		{
-			"name": "guilds"
-		},
-		{
-			"name": "gateway"
-		},
-		{
-			"name": "invites"
-		},
-		{
-			"name": "voice"
-		},
-		{
-			"name": "users"
-		},
-		{
-			"name": "outbound-promotions"
-		},
-		{
-			"name": "ping"
-		},
-		{
-			"name": "store"
-		},
-		{
-			"name": "sticker-packs"
-		},
-		{
-			"name": "science"
-		}
-	],
-	"paths": {
-		"/users/{id}": {
-			"get": {
-				"summary": "",
-				"parameters": [
-					{
-						"name": "id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "user id"
-					}
-				],
-				"operationId": "",
-				"responses": {
-					"200": {
-						"description": "User found",
-						"content": {
-							"application/json": {
-								"schema": {
-									"$ref": "#/components/schemas/UserPublic"
-								}
-							}
-						}
-					},
-					"404": {
-						"description": "User not found",
-						"content": {
-							"application/json": {
-								"schema": {
-									"$ref": "#/components/schemas/Error"
-								}
-							}
-						}
-					}
-				},
-				"security": [
-					{
-						"Token": []
-					}
-				]
-			}
-		},
-		"/users/@me": {
-			"get": {
-				"summary": "",
-				"parameters": [],
-				"operationId": "",
-				"responses": {
-					"200": {
-						"description": "Authenticated user",
-						"content": {
-							"application/json": {
-								"schema": {
-									"$ref": "#/components/schemas/UserPublic"
-								}
-							}
-						}
-					}
-				},
-				"security": [
-					{
-						"Token": []
-					}
-				]
-			}
-		},
-		"/voice/regions/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["voice"]
-			}
-		},
-		"/users/@me/settings/": {
-			"patch": {
-				"description": "",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/UserSettingsSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["users"]
-			}
-		},
-		"/users/@me/relationships/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["users", "relationships"]
-			},
-			"post": {
-				"description": "",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/RelationshipPostSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["users"]
-			}
-		},
-		"/users/@me/relationships/{id}": {
-			"put": {
-				"description": "",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/RelationshipPutSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "id"
-					}
-				],
-				"tags": ["users"]
-			},
-			"delete": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "id"
-					}
-				],
-				"tags": ["users"]
-			}
-		},
-		"/users/@me/library/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["users"]
-			}
-		},
-		"/users/@me/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["users"]
-			},
-			"patch": {
-				"description": "",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/UserModifySchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["users"]
-			}
-		},
-		"/users/@me/guilds/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["users"]
-			}
-		},
-		"/users/@me/guilds/{id}": {
-			"delete": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "id"
-					}
-				],
-				"tags": ["users"]
-			}
-		},
-		"/users/@me/disable/": {
-			"post": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["users"]
-			}
-		},
-		"/users/@me/devices/": {
-			"post": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["users"]
-			}
-		},
-		"/users/@me/delete/": {
-			"post": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["users"]
-			}
-		},
-		"/users/@me/connections/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["users"]
-			}
-		},
-		"/users/@me/channels/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["users"]
-			},
-			"post": {
-				"description": "",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/DmChannelCreateSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["users"]
-			}
-		},
-		"/users/@me/billing/subscriptions/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["users"]
-			}
-		},
-		"/users/@me/billing/country-code/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["users"]
-			}
-		},
-		"/users/@me/applications/{app_id}/entitlements/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "app_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "app_id"
-					}
-				],
-				"tags": ["users"]
-			}
-		},
-		"/users/@me/affinities/users/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["users"]
-			}
-		},
-		"/users/@me/affinities/guilds/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["users"]
-			}
-		},
-		"/users/{id}/profile/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"200": {
-						"content": {
-							"application/json": {
-								"schema": {
-									"$ref": "#/components/schemas/UserProfileResponse"
-								}
-							}
-						},
-						"description": ""
-					}
-				},
-				"parameters": [
-					{
-						"name": "id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "id"
-					}
-				],
-				"tags": ["users"]
-			}
-		},
-		"/users/{id}/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "id"
-					}
-				],
-				"tags": ["users"]
-			}
-		},
-		"/store/skus/skus/{id}": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "id"
-					}
-				],
-				"tags": ["store"]
-			}
-		},
-		"/store/applications/applications/{id}": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "id"
-					}
-				],
-				"tags": ["store"]
-			}
-		},
-		"/sticker-packs/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["sticker", "sticker-packs"]
-			}
-		},
-		"/sticker-packs/{id}/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "id"
-					}
-				],
-				"tags": ["sticker", "sticker-packs"]
-			}
-		},
-		"/science/": {
-			"post": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["science"]
-			}
-		},
-		"/ping/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["ping"]
-			}
-		},
-		"/outbound-promotions/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["outbound", "outbound-promotions"]
-			}
-		},
-		"/invites/{code}": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "code",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "code"
-					}
-				],
-				"tags": ["invites"]
-			},
-			"post": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "code",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "code"
-					}
-				],
-				"tags": ["invites"]
-			},
-			"delete": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "code",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "code"
-					}
-				],
-				"tags": ["invites"]
-			}
-		},
-		"/guilds/templates/{code}": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "code",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "code"
-					}
-				],
-				"tags": ["guilds"]
-			},
-			"post": {
-				"description": "",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/GuildTemplateCreateSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "code",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "code"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/": {
-			"post": {
-				"description": "",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/GuildCreateSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/{guild_id}/widget.png/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/{guild_id}/widget.json/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/{guild_id}/widget/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			},
-			"patch": {
-				"description": "##### Requires the ``MANAGE_GUILD`` permission\n",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/WidgetModifySchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/{guild_id}/welcome_screen/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			},
-			"patch": {
-				"description": "##### Requires the ``MANAGE_GUILD`` permission\n",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/GuildUpdateWelcomeScreenSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/{guild_id}/voice-states/{user_id}/": {
-			"patch": {
-				"description": "",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/VoiceStateUpdateSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					},
-					{
-						"name": "user_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "user_id"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/{guild_id}/vanity-url/": {
-			"get": {
-				"description": "##### Requires the ``MANAGE_GUILD`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			},
-			"patch": {
-				"description": "##### Requires the ``MANAGE_GUILD`` permission\n",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/VanityUrlSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/{guild_id}/templates/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			},
-			"post": {
-				"description": "##### Requires the ``MANAGE_GUILD`` permission\n",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/TemplateCreateSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/{guild_id}/templates/{code}": {
-			"delete": {
-				"description": "##### Requires the ``MANAGE_GUILD`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					},
-					{
-						"name": "code",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "code"
-					}
-				],
-				"tags": ["guilds"]
-			},
-			"put": {
-				"description": "##### Requires the ``MANAGE_GUILD`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					},
-					{
-						"name": "code",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "code"
-					}
-				],
-				"tags": ["guilds"]
-			},
-			"patch": {
-				"description": "##### Requires the ``MANAGE_GUILD`` permission\n",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/TemplateModifySchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					},
-					{
-						"name": "code",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "code"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/{guild_id}/roles/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			},
-			"post": {
-				"description": "##### Requires the ``MANAGE_ROLES`` permission\n",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/RoleModifySchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			},
-			"patch": {
-				"description": "",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/RolePositionUpdateSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/{guild_id}/roles/{role_id}": {
-			"delete": {
-				"description": "##### Requires the ``MANAGE_ROLES`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					},
-					{
-						"name": "role_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "role_id"
-					}
-				],
-				"tags": ["guilds"]
-			},
-			"patch": {
-				"description": "##### Requires the ``MANAGE_ROLES`` permission\n",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/RoleModifySchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					},
-					{
-						"name": "role_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "role_id"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/{guild_id}/regions/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/{guild_id}/members/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/{guild_id}/members/{member_id}/nick/": {
-			"patch": {
-				"description": "",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/MemberNickChangeSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					},
-					{
-						"name": "member_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "member_id"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/{guild_id}/members/{member_id}/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					},
-					{
-						"name": "member_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "member_id"
-					}
-				],
-				"tags": ["guilds"]
-			},
-			"patch": {
-				"description": "",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/MemberChangeSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					},
-					{
-						"name": "member_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "member_id"
-					}
-				],
-				"tags": ["guilds"]
-			},
-			"put": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					},
-					{
-						"name": "member_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "member_id"
-					}
-				],
-				"tags": ["guilds"]
-			},
-			"delete": {
-				"description": "##### Requires the ``KICK_MEMBERS`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					},
-					{
-						"name": "member_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "member_id"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/{guild_id}/invites/": {
-			"get": {
-				"description": "##### Requires the ``MANAGE_GUILD`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/{guild_id}/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			},
-			"patch": {
-				"description": "##### Requires the ``MANAGE_GUILD`` permission\n",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/GuildUpdateSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/{guild_id}/delete/": {
-			"post": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/{guild_id}/channels/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			},
-			"post": {
-				"description": "##### Requires the ``MANAGE_CHANNELS`` permission\n",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/ChannelModifySchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			},
-			"patch": {
-				"description": "##### Requires the ``MANAGE_CHANNELS`` permission\n",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/ChannelReorderSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/{guild_id}/bans/": {
-			"get": {
-				"description": "##### Requires the ``BAN_MEMBERS`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/{guild_id}/bans/{user}": {
-			"get": {
-				"description": "##### Requires the ``BAN_MEMBERS`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					},
-					{
-						"name": "user",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "user"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/guilds/{guild_id}/bans/{user_id}": {
-			"put": {
-				"description": "##### Requires the ``BAN_MEMBERS`` permission\n",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/BanCreateSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					},
-					{
-						"name": "user_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "user_id"
-					}
-				],
-				"tags": ["guilds"]
-			},
-			"delete": {
-				"description": "##### Requires the ``BAN_MEMBERS`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					},
-					{
-						"name": "user_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "user_id"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/gateway/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["gateway"]
-			}
-		},
-		"/gateway/bot": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["gateway"]
-			}
-		},
-		"/experiments/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["experiments"]
-			}
-		},
-		"/discoverable-guilds/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["discoverable", "discoverable-guilds"]
-			}
-		},
-		"/channels/{channel_id}/webhooks/": {
-			"post": {
-				"description": "##### Requires the ``MANAGE_WEBHOOKS`` permission\n",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/WebhookCreateSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					}
-				],
-				"tags": ["channels"]
-			}
-		},
-		"/channels/{channel_id}/typing/": {
-			"post": {
-				"description": "##### Requires the ``SEND_MESSAGES`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					}
-				],
-				"tags": ["channels"]
-			}
-		},
-		"/channels/{channel_id}/recipients/{user_id}": {
-			"put": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					},
-					{
-						"name": "user_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "user_id"
-					}
-				],
-				"tags": ["channels"]
-			},
-			"delete": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					},
-					{
-						"name": "user_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "user_id"
-					}
-				],
-				"tags": ["channels"]
-			}
-		},
-		"/channels/{channel_id}/pins/{message_id}": {
-			"put": {
-				"description": "##### Requires the ``VIEW_CHANNEL`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					},
-					{
-						"name": "message_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "message_id"
-					}
-				],
-				"tags": ["channels"]
-			},
-			"delete": {
-				"description": "##### Requires the ``VIEW_CHANNEL`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					},
-					{
-						"name": "message_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "message_id"
-					}
-				],
-				"tags": ["channels"]
-			}
-		},
-		"/channels/{channel_id}/pins/": {
-			"get": {
-				"description": "##### Requires the ``READ_MESSAGE_HISTORY`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					}
-				],
-				"tags": ["channels"]
-			}
-		},
-		"/channels/{channel_id}/permissions/{overwrite_id}": {
-			"put": {
-				"description": "##### Requires the ``MANAGE_ROLES`` permission\n",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/ChannelPermissionOverwriteSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					},
-					{
-						"name": "overwrite_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "overwrite_id"
-					}
-				],
-				"tags": ["channels"]
-			},
-			"delete": {
-				"description": "##### Requires the ``MANAGE_ROLES`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					},
-					{
-						"name": "overwrite_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "overwrite_id"
-					}
-				],
-				"tags": ["channels"]
-			}
-		},
-		"/channels/{channel_id}/messages/bulk-delete/": {
-			"post": {
-				"description": "",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/BulkDeleteSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					}
-				],
-				"tags": ["channels"]
-			}
-		},
-		"/channels/{channel_id}/messages/{message_id}/reactions/": {
-			"delete": {
-				"description": "##### Requires the ``MANAGE_MESSAGES`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					},
-					{
-						"name": "message_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "message_id"
-					}
-				],
-				"tags": ["channels"]
-			}
-		},
-		"/channels/{channel_id}/messages/{message_id}/reactions/{emoji}": {
-			"delete": {
-				"description": "##### Requires the ``MANAGE_MESSAGES`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					},
-					{
-						"name": "message_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "message_id"
-					},
-					{
-						"name": "emoji",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "emoji"
-					}
-				],
-				"tags": ["channels"]
-			},
-			"get": {
-				"description": "##### Requires the ``VIEW_CHANNEL`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					},
-					{
-						"name": "message_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "message_id"
-					},
-					{
-						"name": "emoji",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "emoji"
-					}
-				],
-				"tags": ["channels"]
-			}
-		},
-		"/channels/{channel_id}/messages/{message_id}/reactions/{emoji}/{user_id}": {
-			"put": {
-				"description": "##### Requires the ``READ_MESSAGE_HISTORY`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					},
-					{
-						"name": "message_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "message_id"
-					},
-					{
-						"name": "emoji",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "emoji"
-					},
-					{
-						"name": "user_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "user_id"
-					}
-				],
-				"tags": ["channels"]
-			},
-			"delete": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					},
-					{
-						"name": "message_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "message_id"
-					},
-					{
-						"name": "emoji",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "emoji"
-					},
-					{
-						"name": "user_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "user_id"
-					}
-				],
-				"tags": ["channels"]
-			}
-		},
-		"/channels/{channel_id}/messages/{message_id}/": {
-			"patch": {
-				"description": "##### Requires the ``SEND_MESSAGES`` permission\n",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/MessageCreateSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					},
-					{
-						"name": "message_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "message_id"
-					}
-				],
-				"tags": ["channels"]
-			},
-			"delete": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					},
-					{
-						"name": "message_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "message_id"
-					}
-				],
-				"tags": ["channels"]
-			}
-		},
-		"/channels/{channel_id}/messages/{message_id}/ack/": {
-			"post": {
-				"description": "",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/MessageAcknowledgeSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					},
-					{
-						"name": "message_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "message_id"
-					}
-				],
-				"tags": ["channels"]
-			}
-		},
-		"/channels/{channel_id}/invites/": {
-			"post": {
-				"description": "##### Requires the ``CREATE_INSTANT_INVITE`` permission\n",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/InviteCreateSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					}
-				],
-				"tags": ["channels"]
-			},
-			"get": {
-				"description": "##### Requires the ``MANAGE_CHANNELS`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					}
-				],
-				"tags": ["channels"]
-			}
-		},
-		"/channels/{channel_id}/": {
-			"get": {
-				"description": "##### Requires the ``VIEW_CHANNEL`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					}
-				],
-				"tags": ["channels"]
-			},
-			"delete": {
-				"description": "##### Requires the ``MANAGE_CHANNELS`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					}
-				],
-				"tags": ["channels"]
-			},
-			"patch": {
-				"description": "##### Requires the ``MANAGE_CHANNELS`` permission\n",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/ChannelModifySchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "channel_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "channel_id"
-					}
-				],
-				"tags": ["channels"]
-			}
-		},
-		"/auth/register/": {
-			"post": {
-				"description": "",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/RegisterSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["auth"]
-			}
-		},
-		"/applications/detectable/": {
-			"get": {
-				"description": "",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["applications"]
-			}
-		},
-		"/guilds/{guild_id}/members/{member_id}/roles/{role_id}/": {
-			"delete": {
-				"description": "##### Requires the ``MANAGE_ROLES`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					},
-					{
-						"name": "member_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "member_id"
-					},
-					{
-						"name": "role_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "role_id"
-					}
-				],
-				"tags": ["guilds"]
-			},
-			"put": {
-				"description": "##### Requires the ``MANAGE_ROLES`` permission\n",
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"parameters": [
-					{
-						"name": "guild_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "guild_id"
-					},
-					{
-						"name": "member_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "member_id"
-					},
-					{
-						"name": "role_id",
-						"in": "path",
-						"required": true,
-						"schema": {
-							"type": "string"
-						},
-						"description": "role_id"
-					}
-				],
-				"tags": ["guilds"]
-			}
-		},
-		"/auth/login/": {
-			"post": {
-				"description": "",
-				"requestBody": {
-					"required": true,
-					"content": {
-						"application/json": {
-							"schema": {
-								"$ref": "#/components/schemas/LoginSchema"
-							}
-						}
-					}
-				},
-				"responses": {
-					"default": {
-						"description": "not documented"
-					}
-				},
-				"tags": ["auth"]
-			}
-		}
-	},
-	"externalDocs": {
-		"url": "http://docs.fosscord.com/"
-	},
-	"components": {
-		"schemas": {
-			"Error": {
-				"type": "object",
-				"properties": {
-					"code": {
-						"type": "integer"
-					},
-					"message": {
-						"type": "string"
-					}
-				},
-				"required": ["code", "message"]
-			},
-			"RateLimit": {
-				"type": "object",
-				"properties": {
-					"retry_after": {
-						"type": "integer"
-					},
-					"message": {
-						"type": "string"
-					},
-					"global": {
-						"type": "boolean"
-					}
-				},
-				"required": ["code", "message", "globa"]
-			},
-			"User": {
-				"type": "object",
-				"properties": {
-					"username": {
-						"type": "string"
-					},
-					"discriminator": {
-						"type": "string"
-					},
-					"avatar": {
-						"type": "string"
-					},
-					"accent_color": {
-						"type": "integer"
-					},
-					"banner": {
-						"type": "string"
-					},
-					"phone": {
-						"type": "string"
-					},
-					"desktop": {
-						"type": "boolean"
-					},
-					"mobile": {
-						"type": "boolean"
-					},
-					"premium": {
-						"type": "boolean"
-					},
-					"premium_type": {
-						"type": "integer"
-					},
-					"bot": {
-						"type": "boolean"
-					},
-					"bio": {
-						"type": "string"
-					},
-					"system": {
-						"type": "boolean"
-					},
-					"nsfw_allowed": {
-						"type": "boolean"
-					},
-					"mfa_enabled": {
-						"type": "boolean"
-					},
-					"created_at": {
-						"type": "string",
-						"format": "date-time"
-					},
-					"premium_since": {
-						"type": "string",
-						"format": "date-time"
-					},
-					"verified": {
-						"type": "boolean"
-					},
-					"disabled": {
-						"type": "boolean"
-					},
-					"deleted": {
-						"type": "boolean"
-					},
-					"email": {
-						"type": "string"
-					},
-					"flags": {
-						"type": "string"
-					},
-					"public_flags": {
-						"type": "string"
-					},
-					"relationships": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/Relationship"
-						}
-					},
-					"connected_accounts": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/ConnectedAccount"
-						}
-					},
-					"data": {
-						"type": "object",
-						"properties": {
-							"valid_tokens_since": {
-								"type": "string",
-								"format": "date-time"
-							},
-							"hash": {
-								"type": "string"
-							}
-						},
-						"additionalProperties": false,
-						"required": ["valid_tokens_since"]
-					},
-					"fingerprints": {
-						"type": "array",
-						"items": {
-							"type": "string"
-						}
-					},
-					"settings": {
-						"$ref": "#/components/schemas/UserSettings"
-					},
-					"id": {
-						"type": "string"
-					}
-				},
-				"required": [
-					"bio",
-					"bot",
-					"connected_accounts",
-					"created_at",
-					"data",
-					"deleted",
-					"desktop",
-					"disabled",
-					"discriminator",
-					"fingerprints",
-					"flags",
-					"id",
-					"mfa_enabled",
-					"mobile",
-					"nsfw_allowed",
-					"premium",
-					"premium_type",
-					"public_flags",
-					"relationships",
-					"settings",
-					"system",
-					"username",
-					"verified"
-				]
-			},
-			"Relationship": {
-				"type": "object",
-				"properties": {
-					"user_id": {
-						"type": "string"
-					},
-					"user": {
-						"$ref": "#/components/schemas/User"
-					},
-					"nickname": {
-						"type": "string"
-					},
-					"type": {
-						"$ref": "#/components/schemas/RelationshipType"
-					},
-					"id": {
-						"type": "string"
-					}
-				},
-				"required": ["id", "type", "user", "user_id"]
-			},
-			"RelationshipType": {
-				"enum": [1, 2, 3, 4],
-				"type": "number"
-			},
-			"ConnectedAccount": {
-				"type": "object",
-				"properties": {
-					"user_id": {
-						"type": "string"
-					},
-					"user": {
-						"$ref": "#/components/schemas/User"
-					},
-					"access_token": {
-						"type": "string"
-					},
-					"friend_sync": {
-						"type": "boolean"
-					},
-					"name": {
-						"type": "string"
-					},
-					"revoked": {
-						"type": "boolean"
-					},
-					"show_activity": {
-						"type": "boolean"
-					},
-					"type": {
-						"type": "string"
-					},
-					"verified": {
-						"type": "boolean"
-					},
-					"visibility": {
-						"type": "integer"
-					},
-					"id": {
-						"type": "string"
-					}
-				},
-				"required": [
-					"access_token",
-					"friend_sync",
-					"id",
-					"name",
-					"revoked",
-					"show_activity",
-					"type",
-					"user",
-					"user_id",
-					"verified",
-					"visibility"
-				]
-			},
-			"UserSettings": {
-				"type": "object",
-				"properties": {
-					"afk_timeout": {
-						"type": "integer"
-					},
-					"allow_accessibility_detection": {
-						"type": "boolean"
-					},
-					"animate_emoji": {
-						"type": "boolean"
-					},
-					"animate_stickers": {
-						"type": "integer"
-					},
-					"contact_sync_enabled": {
-						"type": "boolean"
-					},
-					"convert_emoticons": {
-						"type": "boolean"
-					},
-					"custom_status": {
-						"type": "object",
-						"properties": {
-							"emoji_id": {
-								"type": "string"
-							},
-							"emoji_name": {
-								"type": "string"
-							},
-							"expires_at": {
-								"type": "integer"
-							},
-							"text": {
-								"type": "string"
-							}
-						},
-						"additionalProperties": false
-					},
-					"default_guilds_restricted": {
-						"type": "boolean"
-					},
-					"detect_platform_accounts": {
-						"type": "boolean"
-					},
-					"developer_mode": {
-						"type": "boolean"
-					},
-					"disable_games_tab": {
-						"type": "boolean"
-					},
-					"enable_tts_command": {
-						"type": "boolean"
-					},
-					"explicit_content_filter": {
-						"type": "integer"
-					},
-					"friend_source_flags": {
-						"type": "object",
-						"properties": {
-							"all": {
-								"type": "boolean"
-							}
-						},
-						"additionalProperties": false,
-						"required": ["all"]
-					},
-					"gateway_connected": {
-						"type": "boolean"
-					},
-					"gif_auto_play": {
-						"type": "boolean"
-					},
-					"guild_folders": {
-						"type": "array",
-						"items": {
-							"type": "object",
-							"properties": {
-								"color": {
-									"type": "integer"
-								},
-								"guild_ids": {
-									"type": "array",
-									"items": {
-										"type": "string"
-									}
-								},
-								"id": {
-									"type": "integer"
-								},
-								"name": {
-									"type": "string"
-								}
-							},
-							"additionalProperties": false,
-							"required": ["color", "guild_ids", "id", "name"]
-						}
-					},
-					"guild_positions": {
-						"type": "array",
-						"items": {
-							"type": "string"
-						}
-					},
-					"inline_attachment_media": {
-						"type": "boolean"
-					},
-					"inline_embed_media": {
-						"type": "boolean"
-					},
-					"locale": {
-						"type": "string"
-					},
-					"message_display_compact": {
-						"type": "boolean"
-					},
-					"native_phone_integration_enabled": {
-						"type": "boolean"
-					},
-					"render_embeds": {
-						"type": "boolean"
-					},
-					"render_reactions": {
-						"type": "boolean"
-					},
-					"restricted_guilds": {
-						"type": "array",
-						"items": {
-							"type": "string"
-						}
-					},
-					"show_current_game": {
-						"type": "boolean"
-					},
-					"status": {
-						"enum": ["dnd", "idle", "offline", "online", "invisible"],
-						"type": "string"
-					},
-					"stream_notifications_enabled": {
-						"type": "boolean"
-					},
-					"theme": {
-						"enum": ["dark", "white"],
-						"type": "string"
-					},
-					"timezone_offset": {
-						"type": "integer"
-					}
-				},
-				"required": [
-					"afk_timeout",
-					"allow_accessibility_detection",
-					"animate_emoji",
-					"animate_stickers",
-					"contact_sync_enabled",
-					"convert_emoticons",
-					"custom_status",
-					"default_guilds_restricted",
-					"detect_platform_accounts",
-					"developer_mode",
-					"disable_games_tab",
-					"enable_tts_command",
-					"explicit_content_filter",
-					"friend_source_flags",
-					"gateway_connected",
-					"gif_auto_play",
-					"guild_folders",
-					"guild_positions",
-					"inline_attachment_media",
-					"inline_embed_media",
-					"locale",
-					"message_display_compact",
-					"native_phone_integration_enabled",
-					"render_embeds",
-					"render_reactions",
-					"restricted_guilds",
-					"show_current_game",
-					"status",
-					"stream_notifications_enabled",
-					"theme",
-					"timezone_offset"
-				]
-			},
-			"Team": {
-				"type": "object",
-				"properties": {
-					"icon": {
-						"type": "string"
-					},
-					"members": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/TeamMember"
-						}
-					},
-					"name": {
-						"type": "string"
-					},
-					"owner_user_id": {
-						"type": "string"
-					},
-					"owner_user": {
-						"$ref": "#/components/schemas/User"
-					},
-					"id": {
-						"type": "string"
-					}
-				},
-				"required": ["id", "members", "name", "owner_user", "owner_user_id"]
-			},
-			"TeamMember": {
-				"type": "object",
-				"properties": {
-					"membership_state": {
-						"$ref": "#/components/schemas/TeamMemberState"
-					},
-					"permissions": {
-						"type": "array",
-						"items": {
-							"type": "string"
-						}
-					},
-					"team_id": {
-						"type": "string"
-					},
-					"team": {
-						"$ref": "#/components/schemas/Team"
-					},
-					"user_id": {
-						"type": "string"
-					},
-					"user": {
-						"$ref": "#/components/schemas/User"
-					},
-					"id": {
-						"type": "string"
-					}
-				},
-				"required": ["id", "membership_state", "permissions", "team", "team_id", "user", "user_id"]
-			},
-			"TeamMemberState": {
-				"enum": [1, 2],
-				"type": "number"
-			},
-			"Guild": {
-				"type": "object",
-				"properties": {
-					"afk_channel_id": {
-						"type": "string"
-					},
-					"afk_channel": {
-						"$ref": "#/components/schemas/Channel"
-					},
-					"afk_timeout": {
-						"type": "integer"
-					},
-					"bans": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/Ban"
-						}
-					},
-					"banner": {
-						"type": "string"
-					},
-					"default_message_notifications": {
-						"type": "integer"
-					},
-					"description": {
-						"type": "string"
-					},
-					"discovery_splash": {
-						"type": "string"
-					},
-					"explicit_content_filter": {
-						"type": "integer"
-					},
-					"features": {
-						"type": "array",
-						"items": {
-							"type": "string"
-						}
-					},
-					"icon": {
-						"type": "string"
-					},
-					"large": {
-						"type": "boolean"
-					},
-					"max_members": {
-						"type": "integer"
-					},
-					"max_presences": {
-						"type": "integer"
-					},
-					"max_video_channel_users": {
-						"type": "integer"
-					},
-					"member_count": {
-						"type": "integer"
-					},
-					"presence_count": {
-						"type": "integer"
-					},
-					"members": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/Member"
-						}
-					},
-					"roles": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/Role"
-						}
-					},
-					"channels": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/Channel"
-						}
-					},
-					"template_id": {
-						"type": "string"
-					},
-					"template": {
-						"$ref": "#/components/schemas/Template"
-					},
-					"emojis": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/Emoji"
-						}
-					},
-					"stickers": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/Sticker"
-						}
-					},
-					"invites": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/Invite"
-						}
-					},
-					"voice_states": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/VoiceState"
-						}
-					},
-					"webhooks": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/Webhook"
-						}
-					},
-					"mfa_level": {
-						"type": "integer"
-					},
-					"name": {
-						"type": "string"
-					},
-					"owner_id": {
-						"type": "string"
-					},
-					"owner": {
-						"$ref": "#/components/schemas/User"
-					},
-					"preferred_locale": {
-						"type": "string"
-					},
-					"premium_subscription_count": {
-						"type": "integer"
-					},
-					"premium_tier": {
-						"type": "integer"
-					},
-					"public_updates_channel_id": {
-						"type": "string"
-					},
-					"public_updates_channel": {
-						"$ref": "#/components/schemas/Channel"
-					},
-					"rules_channel_id": {
-						"type": "string"
-					},
-					"rules_channel": {
-						"type": "string"
-					},
-					"region": {
-						"type": "string"
-					},
-					"splash": {
-						"type": "string"
-					},
-					"system_channel_id": {
-						"type": "string"
-					},
-					"system_channel": {
-						"$ref": "#/components/schemas/Channel"
-					},
-					"system_channel_flags": {
-						"type": "integer"
-					},
-					"unavailable": {
-						"type": "boolean"
-					},
-					"vanity_url_code": {
-						"type": "string"
-					},
-					"vanity_url": {
-						"$ref": "#/components/schemas/Invite"
-					},
-					"verification_level": {
-						"type": "integer"
-					},
-					"welcome_screen": {
-						"type": "object",
-						"properties": {
-							"enabled": {
-								"type": "boolean"
-							},
-							"description": {
-								"type": "string"
-							},
-							"welcome_channels": {
-								"type": "array",
-								"items": {
-									"type": "object",
-									"properties": {
-										"description": {
-											"type": "string"
-										},
-										"emoji_id": {
-											"type": "string"
-										},
-										"emoji_name": {
-											"type": "string"
-										},
-										"channel_id": {
-											"type": "string"
-										}
-									},
-									"additionalProperties": false,
-									"required": ["channel_id", "description", "emoji_name"]
-								}
-							}
-						},
-						"additionalProperties": false,
-						"required": ["description", "enabled", "welcome_channels"]
-					},
-					"widget_channel_id": {
-						"type": "string"
-					},
-					"widget_channel": {
-						"$ref": "#/components/schemas/Channel"
-					},
-					"widget_enabled": {
-						"type": "boolean"
-					},
-					"id": {
-						"type": "string"
-					}
-				},
-				"required": [
-					"bans",
-					"channels",
-					"emojis",
-					"features",
-					"id",
-					"invites",
-					"members",
-					"name",
-					"owner",
-					"owner_id",
-					"public_updates_channel_id",
-					"roles",
-					"stickers",
-					"template",
-					"template_id",
-					"voice_states",
-					"webhooks",
-					"welcome_screen"
-				]
-			},
-			"Channel": {
-				"type": "object",
-				"properties": {
-					"created_at": {
-						"type": "string",
-						"format": "date-time"
-					},
-					"name": {
-						"type": "string"
-					},
-					"type": {
-						"$ref": "#/components/schemas/ChannelType"
-					},
-					"recipients": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/Recipient"
-						}
-					},
-					"last_message_id": {
-						"type": "string"
-					},
-					"last_message": {
-						"$ref": "#/components/schemas/Message"
-					},
-					"guild_id": {
-						"type": "string"
-					},
-					"guild": {
-						"$ref": "#/components/schemas/Guild"
-					},
-					"parent_id": {
-						"type": "string"
-					},
-					"parent": {
-						"$ref": "#/components/schemas/Channel"
-					},
-					"owner_id": {
-						"type": "string"
-					},
-					"owner": {
-						"$ref": "#/components/schemas/User"
-					},
-					"last_pin_timestamp": {
-						"type": "integer"
-					},
-					"default_auto_archive_duration": {
-						"type": "integer"
-					},
-					"position": {
-						"type": "integer"
-					},
-					"permission_overwrites": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/ChannelPermissionOverwrite"
-						}
-					},
-					"video_quality_mode": {
-						"type": "integer"
-					},
-					"bitrate": {
-						"type": "integer"
-					},
-					"user_limit": {
-						"type": "integer"
-					},
-					"nsfw": {
-						"type": "boolean"
-					},
-					"rate_limit_per_user": {
-						"type": "integer"
-					},
-					"topic": {
-						"type": "string"
-					},
-					"id": {
-						"type": "string"
-					}
-				},
-				"required": [
-					"created_at",
-					"guild",
-					"id",
-					"last_message_id",
-					"name",
-					"owner",
-					"owner_id",
-					"parent_id",
-					"permission_overwrites",
-					"position",
-					"type"
-				]
-			},
-			"ChannelType": {
-				"enum": [0, 1, 2, 3, 4, 5, 6],
-				"type": "number"
-			},
-			"Recipient": {
-				"type": "object",
-				"properties": {
-					"channel_id": {
-						"type": "string"
-					},
-					"channel": {
-						"$ref": "#/components/schemas/Channel"
-					},
-					"user": {
-						"$ref": "#/components/schemas/User"
-					},
-					"id": {
-						"type": "string"
-					}
-				},
-				"required": ["channel", "channel_id", "id", "user"]
-			},
-			"Message": {
-				"type": "object",
-				"properties": {
-					"id": {
-						"type": "string"
-					},
-					"channel_id": {
-						"type": "string"
-					},
-					"channel": {
-						"$ref": "#/components/schemas/Channel"
-					},
-					"guild_id": {
-						"type": "string"
-					},
-					"guild": {
-						"$ref": "#/components/schemas/Guild"
-					},
-					"author_id": {
-						"type": "string"
-					},
-					"author": {
-						"$ref": "#/components/schemas/User"
-					},
-					"member_id": {
-						"type": "string"
-					},
-					"member": {
-						"$ref": "#/components/schemas/Member"
-					},
-					"webhook_id": {
-						"type": "string"
-					},
-					"webhook": {
-						"$ref": "#/components/schemas/Webhook"
-					},
-					"application_id": {
-						"type": "string"
-					},
-					"application": {
-						"$ref": "#/components/schemas/Application"
-					},
-					"content": {
-						"type": "string"
-					},
-					"timestamp": {
-						"type": "string",
-						"format": "date-time"
-					},
-					"edited_timestamp": {
-						"type": "string",
-						"format": "date-time"
-					},
-					"tts": {
-						"type": "boolean"
-					},
-					"mention_everyone": {
-						"type": "boolean"
-					},
-					"mentions": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/User"
-						}
-					},
-					"mention_roles": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/Role"
-						}
-					},
-					"mention_channels": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/Channel"
-						}
-					},
-					"sticker_items": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/Sticker"
-						}
-					},
-					"attachments": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/Attachment"
-						}
-					},
-					"embeds": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/Embed"
-						}
-					},
-					"reactions": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/Reaction"
-						}
-					},
-					"nonce": {
-						"type": "string"
-					},
-					"pinned": {
-						"type": "boolean"
-					},
-					"type": {
-						"$ref": "#/components/schemas/MessageType"
-					},
-					"activity": {
-						"type": "object",
-						"properties": {
-							"type": {
-								"type": "integer"
-							},
-							"party_id": {
-								"type": "string"
-							}
-						},
-						"additionalProperties": false,
-						"required": ["party_id", "type"]
-					},
-					"flags": {
-						"type": "string"
-					},
-					"message_reference": {
-						"type": "object",
-						"properties": {
-							"message_id": {
-								"type": "string"
-							},
-							"channel_id": {
-								"type": "string"
-							},
-							"guild_id": {
-								"type": "string"
-							}
-						},
-						"additionalProperties": false,
-						"required": ["message_id"]
-					},
-					"referenced_message": {
-						"$ref": "#/components/schemas/Message"
-					},
-					"interaction": {
-						"type": "object",
-						"properties": {
-							"id": {
-								"type": "string"
-							},
-							"type": {
-								"$ref": "#/components/schemas/InteractionType"
-							},
-							"name": {
-								"type": "string"
-							},
-							"user_id": {
-								"type": "string"
-							}
-						},
-						"additionalProperties": false,
-						"required": ["id", "name", "type", "user_id"]
-					},
-					"components": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/MessageComponent"
-						}
-					}
-				},
-				"required": [
-					"application_id",
-					"author_id",
-					"channel",
-					"channel_id",
-					"embeds",
-					"id",
-					"member_id",
-					"mention_channels",
-					"mention_roles",
-					"mentions",
-					"reactions",
-					"timestamp",
-					"type",
-					"webhook_id"
-				]
-			},
-			"Member": {
-				"type": "object",
-				"properties": {
-					"user_id": {
-						"type": "string"
-					},
-					"user": {
-						"$ref": "#/components/schemas/User"
-					},
-					"guild_id": {
-						"type": "string"
-					},
-					"guild": {
-						"$ref": "#/components/schemas/Guild"
-					},
-					"nick": {
-						"type": "string"
-					},
-					"roles": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/Role"
-						}
-					},
-					"joined_at": {
-						"type": "string",
-						"format": "date-time"
-					},
-					"premium_since": {
-						"type": "string",
-						"format": "date-time"
-					},
-					"deaf": {
-						"type": "boolean"
-					},
-					"mute": {
-						"type": "boolean"
-					},
-					"pending": {
-						"type": "boolean"
-					},
-					"settings": {
-						"$ref": "#/components/schemas/UserGuildSettings"
-					},
-					"id": {
-						"type": "string"
-					}
-				},
-				"required": ["deaf", "guild", "guild_id", "id", "joined_at", "mute", "pending", "roles", "settings", "user", "user_id"]
-			},
-			"Role": {
-				"type": "object",
-				"properties": {
-					"guild_id": {
-						"type": "string"
-					},
-					"guild": {
-						"$ref": "#/components/schemas/Guild"
-					},
-					"color": {
-						"type": "integer"
-					},
-					"hoist": {
-						"type": "boolean"
-					},
-					"managed": {
-						"type": "boolean"
-					},
-					"mentionable": {
-						"type": "boolean"
-					},
-					"name": {
-						"type": "string"
-					},
-					"permissions": {
-						"type": "string"
-					},
-					"position": {
-						"type": "integer"
-					},
-					"tags": {
-						"type": "object",
-						"properties": {
-							"bot_id": {
-								"type": "string"
-							},
-							"integration_id": {
-								"type": "string"
-							},
-							"premium_subscriber": {
-								"type": "boolean"
-							}
-						},
-						"additionalProperties": false
-					},
-					"id": {
-						"type": "string"
-					}
-				},
-				"required": ["color", "guild", "guild_id", "hoist", "id", "managed", "mentionable", "name", "permissions", "position"]
-			},
-			"UserGuildSettings": {
-				"type": "object",
-				"properties": {
-					"channel_overrides": {
-						"type": "array",
-						"items": {
-							"type": "object",
-							"properties": {
-								"channel_id": {
-									"type": "string"
-								},
-								"message_notifications": {
-									"type": "integer"
-								},
-								"mute_config": {
-									"$ref": "#/components/schemas/MuteConfig"
-								},
-								"muted": {
-									"type": "boolean"
-								}
-							},
-							"additionalProperties": false,
-							"required": ["channel_id", "message_notifications", "mute_config", "muted"]
-						}
-					},
-					"message_notifications": {
-						"type": "integer"
-					},
-					"mobile_push": {
-						"type": "boolean"
-					},
-					"mute_config": {
-						"$ref": "#/components/schemas/MuteConfig"
-					},
-					"muted": {
-						"type": "boolean"
-					},
-					"suppress_everyone": {
-						"type": "boolean"
-					},
-					"suppress_roles": {
-						"type": "boolean"
-					},
-					"version": {
-						"type": "integer"
-					}
-				},
-				"required": [
-					"channel_overrides",
-					"message_notifications",
-					"mobile_push",
-					"mute_config",
-					"muted",
-					"suppress_everyone",
-					"suppress_roles",
-					"version"
-				]
-			},
-			"MuteConfig": {
-				"type": "object",
-				"properties": {
-					"end_time": {
-						"type": "integer"
-					},
-					"selected_time_window": {
-						"type": "integer"
-					}
-				},
-				"required": ["end_time", "selected_time_window"]
-			},
-			"Webhook": {
-				"type": "object",
-				"properties": {
-					"id": {
-						"type": "string"
-					},
-					"type": {
-						"$ref": "#/components/schemas/WebhookType"
-					},
-					"name": {
-						"type": "string"
-					},
-					"avatar": {
-						"type": "string"
-					},
-					"token": {
-						"type": "string"
-					},
-					"guild_id": {
-						"type": "string"
-					},
-					"guild": {
-						"$ref": "#/components/schemas/Guild"
-					},
-					"channel_id": {
-						"type": "string"
-					},
-					"channel": {
-						"$ref": "#/components/schemas/Channel"
-					},
-					"application_id": {
-						"type": "string"
-					},
-					"application": {
-						"$ref": "#/components/schemas/Application"
-					},
-					"user_id": {
-						"type": "string"
-					},
-					"user": {
-						"$ref": "#/components/schemas/User"
-					},
-					"source_guild_id": {
-						"type": "string"
-					},
-					"source_guild": {
-						"$ref": "#/components/schemas/Guild"
-					}
-				},
-				"required": [
-					"application",
-					"application_id",
-					"channel",
-					"channel_id",
-					"guild",
-					"guild_id",
-					"id",
-					"source_guild",
-					"source_guild_id",
-					"type",
-					"user",
-					"user_id"
-				]
-			},
-			"WebhookType": {
-				"enum": [1, 2],
-				"type": "number"
-			},
-			"Application": {
-				"type": "object",
-				"properties": {
-					"name": {
-						"type": "string"
-					},
-					"icon": {
-						"type": "string"
-					},
-					"description": {
-						"type": "string"
-					},
-					"rpc_origins": {
-						"type": "array",
-						"items": {
-							"type": "string"
-						}
-					},
-					"bot_public": {
-						"type": "boolean"
-					},
-					"bot_require_code_grant": {
-						"type": "boolean"
-					},
-					"terms_of_service_url": {
-						"type": "string"
-					},
-					"privacy_policy_url": {
-						"type": "string"
-					},
-					"owner": {
-						"$ref": "#/components/schemas/User"
-					},
-					"summary": {
-						"type": "string"
-					},
-					"verify_key": {
-						"type": "string"
-					},
-					"team": {
-						"$ref": "#/components/schemas/Team"
-					},
-					"guild": {
-						"$ref": "#/components/schemas/Guild"
-					},
-					"primary_sku_id": {
-						"type": "string"
-					},
-					"slug": {
-						"type": "string"
-					},
-					"cover_image": {
-						"type": "string"
-					},
-					"flags": {
-						"type": "string"
-					},
-					"id": {
-						"type": "string"
-					}
-				},
-				"required": ["bot_public", "bot_require_code_grant", "description", "flags", "guild", "id", "name", "verify_key"]
-			},
-			"Sticker": {
-				"type": "object",
-				"properties": {
-					"name": {
-						"type": "string"
-					},
-					"description": {
-						"type": "string"
-					},
-					"tags": {
-						"type": "string"
-					},
-					"pack_id": {
-						"type": "string"
-					},
-					"guild_id": {
-						"type": "string"
-					},
-					"guild": {
-						"$ref": "#/components/schemas/Guild"
-					},
-					"type": {
-						"$ref": "#/components/schemas/StickerType"
-					},
-					"format_type": {
-						"$ref": "#/components/schemas/StickerFormatType"
-					},
-					"id": {
-						"type": "string"
-					}
-				},
-				"required": ["format_type", "id", "name", "pack_id", "tags", "type"]
-			},
-			"StickerType": {
-				"enum": [1, 2],
-				"type": "number"
-			},
-			"StickerFormatType": {
-				"enum": [1, 2, 3],
-				"type": "number"
-			},
-			"Attachment": {
-				"type": "object",
-				"properties": {
-					"filename": {
-						"type": "string"
-					},
-					"size": {
-						"type": "integer"
-					},
-					"url": {
-						"type": "string"
-					},
-					"proxy_url": {
-						"type": "string"
-					},
-					"height": {
-						"type": "integer"
-					},
-					"width": {
-						"type": "integer"
-					},
-					"content_type": {
-						"type": "string"
-					},
-					"message_id": {
-						"type": "string"
-					},
-					"message": {
-						"$ref": "#/components/schemas/Message"
-					},
-					"id": {
-						"type": "string"
-					}
-				},
-				"required": ["filename", "id", "message", "message_id", "proxy_url", "size", "url"]
-			},
-			"Embed": {
-				"type": "object",
-				"properties": {
-					"title": {
-						"type": "string"
-					},
-					"type": {
-						"enum": ["article", "gifv", "image", "link", "rich", "video"],
-						"type": "string"
-					},
-					"description": {
-						"type": "string"
-					},
-					"url": {
-						"type": "string"
-					},
-					"timestamp": {
-						"type": "string",
-						"format": "date-time"
-					},
-					"color": {
-						"type": "integer"
-					},
-					"footer": {
-						"type": "object",
-						"properties": {
-							"text": {
-								"type": "string"
-							},
-							"icon_url": {
-								"type": "string"
-							},
-							"proxy_icon_url": {
-								"type": "string"
-							}
-						},
-						"additionalProperties": false,
-						"required": ["text"]
-					},
-					"image": {
-						"$ref": "#/components/schemas/EmbedImage"
-					},
-					"thumbnail": {
-						"$ref": "#/components/schemas/EmbedImage"
-					},
-					"video": {
-						"$ref": "#/components/schemas/EmbedImage"
-					},
-					"provider": {
-						"type": "object",
-						"properties": {
-							"name": {
-								"type": "string"
-							},
-							"url": {
-								"type": "string"
-							}
-						},
-						"additionalProperties": false
-					},
-					"author": {
-						"type": "object",
-						"properties": {
-							"name": {
-								"type": "string"
-							},
-							"url": {
-								"type": "string"
-							},
-							"icon_url": {
-								"type": "string"
-							},
-							"proxy_icon_url": {
-								"type": "string"
-							}
-						},
-						"additionalProperties": false
-					},
-					"fields": {
-						"type": "array",
-						"items": {
-							"type": "object",
-							"properties": {
-								"name": {
-									"type": "string"
-								},
-								"value": {
-									"type": "string"
-								},
-								"inline": {
-									"type": "boolean"
-								}
-							},
-							"additionalProperties": false,
-							"required": ["name", "value"]
-						}
-					}
-				}
-			},
-			"EmbedType": {
-				"enum": ["article", "gifv", "image", "link", "rich", "video"],
-				"type": "string"
-			},
-			"EmbedImage": {
-				"type": "object",
-				"properties": {
-					"url": {
-						"type": "string"
-					},
-					"proxy_url": {
-						"type": "string"
-					},
-					"height": {
-						"type": "integer"
-					},
-					"width": {
-						"type": "integer"
-					}
-				}
-			},
-			"Reaction": {
-				"type": "object",
-				"properties": {
-					"count": {
-						"type": "integer"
-					},
-					"emoji": {
-						"$ref": "#/components/schemas/PartialEmoji"
-					},
-					"user_ids": {
-						"type": "array",
-						"items": {
-							"type": "string"
-						}
-					}
-				},
-				"required": ["count", "emoji", "user_ids"]
-			},
-			"PartialEmoji": {
-				"type": "object",
-				"properties": {
-					"id": {
-						"type": "string"
-					},
-					"name": {
-						"type": "string"
-					},
-					"animated": {
-						"type": "boolean"
-					}
-				},
-				"required": ["name"]
-			},
-			"MessageType": {
-				"enum": [0, 1, 10, 11, 12, 14, 15, 19, 2, 20, 3, 4, 5, 6, 7, 8, 9],
-				"type": "number"
-			},
-			"InteractionType": {
-				"enum": [1, 2],
-				"type": "number"
-			},
-			"MessageComponent": {
-				"type": "object",
-				"properties": {
-					"type": {
-						"type": "integer"
-					},
-					"style": {
-						"type": "integer"
-					},
-					"label": {
-						"type": "string"
-					},
-					"emoji": {
-						"$ref": "#/components/schemas/PartialEmoji"
-					},
-					"custom_id": {
-						"type": "string"
-					},
-					"url": {
-						"type": "string"
-					},
-					"disabled": {
-						"type": "boolean"
-					},
-					"components": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/MessageComponent"
-						}
-					}
-				},
-				"required": ["components", "type"]
-			},
-			"ChannelPermissionOverwrite": {
-				"type": "object",
-				"properties": {
-					"allow": {
-						"type": "number"
-					},
-					"deny": {
-						"type": "number"
-					},
-					"id": {
-						"type": "string"
-					},
-					"type": {
-						"$ref": "#/components/schemas/ChannelPermissionOverwriteType"
-					}
-				},
-				"required": ["allow", "deny", "id", "type"]
-			},
-			"ChannelPermissionOverwriteType": {
-				"enum": [0, 1],
-				"type": "number"
-			},
-			"Ban": {
-				"type": "object",
-				"properties": {
-					"user_id": {
-						"type": "string"
-					},
-					"user": {
-						"$ref": "#/components/schemas/User"
-					},
-					"guild_id": {
-						"type": "string"
-					},
-					"guild": {
-						"$ref": "#/components/schemas/Guild"
-					},
-					"executor_id": {
-						"type": "string"
-					},
-					"executor": {
-						"$ref": "#/components/schemas/User"
-					},
-					"ip": {
-						"type": "string"
-					},
-					"reason": {
-						"type": "string"
-					},
-					"id": {
-						"type": "string"
-					}
-				},
-				"required": ["executor", "executor_id", "guild", "guild_id", "id", "ip", "user", "user_id"]
-			},
-			"Template": {
-				"type": "object",
-				"properties": {
-					"code": {
-						"type": "string"
-					},
-					"name": {
-						"type": "string"
-					},
-					"description": {
-						"type": "string"
-					},
-					"usage_count": {
-						"type": "integer"
-					},
-					"creator_id": {
-						"type": "string"
-					},
-					"creator": {
-						"$ref": "#/components/schemas/User"
-					},
-					"created_at": {
-						"type": "string",
-						"format": "date-time"
-					},
-					"updated_at": {
-						"type": "string",
-						"format": "date-time"
-					},
-					"source_guild_id": {
-						"type": "string"
-					},
-					"source_guild": {
-						"$ref": "#/components/schemas/Guild"
-					},
-					"serialized_source_guild": {
-						"$ref": "#/components/schemas/Guild"
-					},
-					"id": {
-						"type": "string"
-					}
-				},
-				"required": [
-					"code",
-					"created_at",
-					"creator",
-					"creator_id",
-					"id",
-					"name",
-					"serialized_source_guild",
-					"source_guild",
-					"source_guild_id",
-					"updated_at"
-				]
-			},
-			"Emoji": {
-				"type": "object",
-				"properties": {
-					"animated": {
-						"type": "boolean"
-					},
-					"available": {
-						"type": "boolean"
-					},
-					"guild_id": {
-						"type": "string"
-					},
-					"guild": {
-						"$ref": "#/components/schemas/Guild"
-					},
-					"managed": {
-						"type": "boolean"
-					},
-					"name": {
-						"type": "string"
-					},
-					"require_colons": {
-						"type": "boolean"
-					},
-					"id": {
-						"type": "string"
-					}
-				},
-				"required": ["animated", "available", "guild", "guild_id", "id", "managed", "name", "require_colons"]
-			},
-			"Invite": {
-				"type": "object",
-				"properties": {
-					"code": {
-						"type": "string"
-					},
-					"temporary": {
-						"type": "boolean"
-					},
-					"uses": {
-						"type": "integer"
-					},
-					"max_uses": {
-						"type": "integer"
-					},
-					"max_age": {
-						"type": "integer"
-					},
-					"created_at": {
-						"type": "string",
-						"format": "date-time"
-					},
-					"expires_at": {
-						"type": "string",
-						"format": "date-time"
-					},
-					"guild_id": {
-						"type": "string"
-					},
-					"guild": {
-						"$ref": "#/components/schemas/Guild"
-					},
-					"channel_id": {
-						"type": "string"
-					},
-					"channel": {
-						"$ref": "#/components/schemas/Channel"
-					},
-					"inviter_id": {
-						"type": "string"
-					},
-					"inviter": {
-						"$ref": "#/components/schemas/User"
-					},
-					"target_user_id": {
-						"type": "string"
-					},
-					"target_user": {
-						"type": "string"
-					},
-					"target_user_type": {
-						"type": "integer"
-					},
-					"id": {
-						"type": "string"
-					}
-				},
-				"required": [
-					"channel",
-					"channel_id",
-					"code",
-					"created_at",
-					"expires_at",
-					"guild",
-					"guild_id",
-					"id",
-					"inviter",
-					"inviter_id",
-					"max_age",
-					"max_uses",
-					"target_user_id",
-					"temporary",
-					"uses"
-				]
-			},
-			"VoiceState": {
-				"type": "object",
-				"properties": {
-					"guild_id": {
-						"type": "string"
-					},
-					"guild": {
-						"$ref": "#/components/schemas/Guild"
-					},
-					"channel_id": {
-						"type": "string"
-					},
-					"channel": {
-						"$ref": "#/components/schemas/Channel"
-					},
-					"user_id": {
-						"type": "string"
-					},
-					"user": {
-						"$ref": "#/components/schemas/User"
-					},
-					"session_id": {
-						"type": "string"
-					},
-					"deaf": {
-						"type": "boolean"
-					},
-					"mute": {
-						"type": "boolean"
-					},
-					"self_deaf": {
-						"type": "boolean"
-					},
-					"self_mute": {
-						"type": "boolean"
-					},
-					"self_stream": {
-						"type": "boolean"
-					},
-					"self_video": {
-						"type": "boolean"
-					},
-					"suppress": {
-						"type": "boolean"
-					},
-					"id": {
-						"type": "string"
-					}
-				},
-				"required": [
-					"channel",
-					"channel_id",
-					"deaf",
-					"guild_id",
-					"id",
-					"mute",
-					"self_deaf",
-					"self_mute",
-					"self_video",
-					"session_id",
-					"suppress",
-					"user",
-					"user_id"
-				]
-			},
-			"AuditLogEvents": {
-				"enum": [
-					1, 10, 11, 12, 13, 14, 15, 20, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 32, 40, 41, 42, 50, 51, 52, 60, 61, 62, 72, 73,
-					74, 75, 80, 81, 82
-				],
-				"type": "number"
-			},
-			"AuditLogChange": {
-				"type": "object",
-				"properties": {
-					"new_value": {
-						"$ref": "#/components/schemas/AuditLogChangeValue"
-					},
-					"old_value": {
-						"$ref": "#/components/schemas/AuditLogChangeValue"
-					},
-					"key": {
-						"type": "string"
-					}
-				},
-				"required": ["key"]
-			},
-			"AuditLogChangeValue": {
-				"type": "object",
-				"properties": {
-					"name": {
-						"type": "string"
-					},
-					"description": {
-						"type": "string"
-					},
-					"icon_hash": {
-						"type": "string"
-					},
-					"splash_hash": {
-						"type": "string"
-					},
-					"discovery_splash_hash": {
-						"type": "string"
-					},
-					"banner_hash": {
-						"type": "string"
-					},
-					"owner_id": {
-						"type": "string"
-					},
-					"region": {
-						"type": "string"
-					},
-					"preferred_locale": {
-						"type": "string"
-					},
-					"afk_channel_id": {
-						"type": "string"
-					},
-					"afk_timeout": {
-						"type": "integer"
-					},
-					"rules_channel_id": {
-						"type": "string"
-					},
-					"public_updates_channel_id": {
-						"type": "string"
-					},
-					"mfa_level": {
-						"type": "integer"
-					},
-					"verification_level": {
-						"type": "integer"
-					},
-					"explicit_content_filter": {
-						"type": "integer"
-					},
-					"default_message_notifications": {
-						"type": "integer"
-					},
-					"vanity_url_code": {
-						"type": "string"
-					},
-					"$add": {
-						"type": "array",
-						"items": {
-							"type": "object",
-							"properties": {}
-						}
-					},
-					"$remove": {
-						"type": "array",
-						"items": {
-							"type": "object",
-							"properties": {}
-						}
-					},
-					"prune_delete_days": {
-						"type": "integer"
-					},
-					"widget_enabled": {
-						"type": "boolean"
-					},
-					"widget_channel_id": {
-						"type": "string"
-					},
-					"system_channel_id": {
-						"type": "string"
-					},
-					"position": {
-						"type": "integer"
-					},
-					"topic": {
-						"type": "string"
-					},
-					"bitrate": {
-						"type": "integer"
-					},
-					"permission_overwrites": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/ChannelPermissionOverwrite"
-						}
-					},
-					"nsfw": {
-						"type": "boolean"
-					},
-					"application_id": {
-						"type": "string"
-					},
-					"rate_limit_per_user": {
-						"type": "integer"
-					},
-					"permissions": {
-						"type": "string"
-					},
-					"color": {
-						"type": "integer"
-					},
-					"hoist": {
-						"type": "boolean"
-					},
-					"mentionable": {
-						"type": "boolean"
-					},
-					"allow": {
-						"type": "string"
-					},
-					"deny": {
-						"type": "string"
-					},
-					"code": {
-						"type": "string"
-					},
-					"channel_id": {
-						"type": "string"
-					},
-					"inviter_id": {
-						"type": "string"
-					},
-					"max_uses": {
-						"type": "integer"
-					},
-					"uses": {
-						"type": "integer"
-					},
-					"max_age": {
-						"type": "integer"
-					},
-					"temporary": {
-						"type": "boolean"
-					},
-					"deaf": {
-						"type": "boolean"
-					},
-					"mute": {
-						"type": "boolean"
-					},
-					"nick": {
-						"type": "string"
-					},
-					"avatar_hash": {
-						"type": "string"
-					},
-					"id": {
-						"type": "string"
-					},
-					"type": {
-						"type": "integer"
-					},
-					"enable_emoticons": {
-						"type": "boolean"
-					},
-					"expire_behavior": {
-						"type": "integer"
-					},
-					"expire_grace_period": {
-						"type": "integer"
-					},
-					"user_limit": {
-						"type": "integer"
-					}
-				}
-			},
-			"AuditLog": {
-				"type": "object",
-				"properties": {
-					"target": {
-						"$ref": "#/components/schemas/User"
-					},
-					"user_id": {
-						"type": "string"
-					},
-					"user": {
-						"$ref": "#/components/schemas/User"
-					},
-					"action_type": {
-						"$ref": "#/components/schemas/AuditLogEvents"
-					},
-					"options": {
-						"type": "object",
-						"properties": {
-							"delete_member_days": {
-								"type": "string"
-							},
-							"members_removed": {
-								"type": "string"
-							},
-							"channel_id": {
-								"type": "string"
-							},
-							"messaged_id": {
-								"type": "string"
-							},
-							"count": {
-								"type": "string"
-							},
-							"id": {
-								"type": "string"
-							},
-							"type": {
-								"type": "string"
-							},
-							"role_name": {
-								"type": "string"
-							}
-						},
-						"additionalProperties": false
-					},
-					"changes": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/AuditLogChange"
-						}
-					},
-					"reason": {
-						"type": "string"
-					},
-					"id": {
-						"type": "string"
-					}
-				},
-				"required": ["action_type", "changes", "id", "user", "user_id"]
-			},
-			"ReadState": {
-				"type": "object",
-				"properties": {
-					"channel_id": {
-						"type": "string"
-					},
-					"channel": {
-						"$ref": "#/components/schemas/Channel"
-					},
-					"user_id": {
-						"type": "string"
-					},
-					"user": {
-						"$ref": "#/components/schemas/User"
-					},
-					"last_message_id": {
-						"type": "string"
-					},
-					"last_message": {
-						"$ref": "#/components/schemas/Message"
-					},
-					"last_pin_timestamp": {
-						"type": "string",
-						"format": "date-time"
-					},
-					"mention_count": {
-						"type": "integer"
-					},
-					"manual": {
-						"type": "boolean"
-					},
-					"id": {
-						"type": "string"
-					}
-				},
-				"required": ["channel", "channel_id", "id", "last_message_id", "manual", "mention_count", "user", "user_id"]
-			},
-			"UserPublic": {
-				"type": "object",
-				"properties": {
-					"username": {
-						"type": "string"
-					},
-					"discriminator": {
-						"type": "string"
-					},
-					"id": {
-						"type": "string"
-					},
-					"public_flags": {
-						"type": "integer"
-					},
-					"avatar": {
-						"type": "string"
-					},
-					"accent_color": {
-						"type": "integer"
-					},
-					"banner": {
-						"type": "string"
-					},
-					"bio": {
-						"type": "string"
-					},
-					"bot": {
-						"type": "boolean"
-					}
-				},
-				"required": ["bio", "bot", "discriminator", "id", "public_flags", "username"]
-			},
-			"UserPrivate": {
-				"type": "object",
-				"properties": {
-					"locale": {
-						"type": "string"
-					},
-					"disabled": {
-						"type": "boolean"
-					},
-					"username": {
-						"type": "string"
-					},
-					"discriminator": {
-						"type": "string"
-					},
-					"id": {
-						"type": "string"
-					},
-					"public_flags": {
-						"type": "string"
-					},
-					"avatar": {
-						"type": "string"
-					},
-					"accent_color": {
-						"type": "integer"
-					},
-					"banner": {
-						"type": "string"
-					},
-					"bio": {
-						"type": "string"
-					},
-					"bot": {
-						"type": "boolean"
-					},
-					"flags": {
-						"type": "string"
-					},
-					"mfa_enabled": {
-						"type": "boolean"
-					},
-					"email": {
-						"type": "string"
-					},
-					"phone": {
-						"type": "string"
-					},
-					"verified": {
-						"type": "boolean"
-					},
-					"nsfw_allowed": {
-						"type": "boolean"
-					},
-					"premium": {
-						"type": "boolean"
-					},
-					"premium_type": {
-						"type": "integer"
-					}
-				},
-				"required": [
-					"bio",
-					"bot",
-					"disabled",
-					"discriminator",
-					"flags",
-					"id",
-					"locale",
-					"mfa_enabled",
-					"nsfw_allowed",
-					"premium",
-					"premium_type",
-					"public_flags",
-					"username",
-					"verified"
-				]
-			},
-			"BanCreateSchema": {
-				"type": "object",
-				"properties": {
-					"delete_message_days": {
-						"type": "string"
-					},
-					"reason": {
-						"type": "string"
-					}
-				}
-			},
-			"DmChannelCreateSchema": {
-				"type": "object",
-				"properties": {
-					"name": {
-						"type": "string"
-					},
-					"recipients": {
-						"type": "array",
-						"items": {
-							"type": "string"
-						}
-					}
-				},
-				"required": ["recipients"]
-			},
-			"ChannelModifySchema": {
-				"type": "object",
-				"properties": {
-					"name": {
-						"maxLength": 100,
-						"type": "string"
-					},
-					"type": {
-						"enum": [0, 1, 10, 11, 12, 13, 2, 3, 4, 5, 6],
-						"type": "number"
-					},
-					"topic": {
-						"type": "string"
-					},
-					"icon": {
-						"type": "string",
-						"nullable": true
-					},
-					"bitrate": {
-						"type": "integer"
-					},
-					"user_limit": {
-						"type": "integer"
-					},
-					"rate_limit_per_user": {
-						"type": "integer"
-					},
-					"position": {
-						"type": "integer"
-					},
-					"permission_overwrites": {
-						"type": "array",
-						"items": {
-							"type": "object",
-							"properties": {
-								"id": {
-									"type": "string"
-								},
-								"type": {
-									"$ref": "#/components/schemas/ChannelPermissionOverwriteType"
-								},
-								"allow": {
-									"type": "number"
-								},
-								"deny": {
-									"type": "number"
-								}
-							},
-							"additionalProperties": false,
-							"required": ["allow", "deny", "id", "type"]
-						}
-					},
-					"parent_id": {
-						"type": "string"
-					},
-					"id": {
-						"type": "string"
-					},
-					"nsfw": {
-						"type": "boolean"
-					},
-					"rtc_region": {
-						"type": "string"
-					},
-					"default_auto_archive_duration": {
-						"type": "integer"
-					}
-				}
-			},
-			"ChannelGuildPositionUpdateSchema": {
-				"type": "array",
-				"items": {
-					"type": "object",
-					"properties": {
-						"id": {
-							"type": "string"
-						},
-						"position": {
-							"type": "integer"
-						}
-					},
-					"additionalProperties": false,
-					"required": ["id"]
-				}
-			},
-			"EmojiCreateSchema": {
-				"type": "object",
-				"properties": {
-					"name": {
-						"type": "string"
-					},
-					"image": {
-						"type": "string"
-					},
-					"roles": {
-						"type": "array",
-						"items": {
-							"type": "string"
-						}
-					}
-				},
-				"required": ["image", "name"]
-			},
-			"GuildCreateSchema": {
-				"type": "object",
-				"properties": {
-					"name": {
-						"maxLength": 100,
-						"type": "string"
-					},
-					"region": {
-						"type": "string"
-					},
-					"icon": {
-						"type": "string",
-						"nullable": true
-					},
-					"channels": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/ChannelModifySchema"
-						}
-					},
-					"guild_template_code": {
-						"type": "string"
-					},
-					"system_channel_id": {
-						"type": "string"
-					},
-					"rules_channel_id": {
-						"type": "string"
-					}
-				},
-				"required": ["name"]
-			},
-			"GuildUpdateSchema": {
-				"type": "object",
-				"properties": {
-					"banner": {
-						"type": "string",
-						"nullable": true
-					},
-					"splash": {
-						"type": "string",
-						"nullable": true
-					},
-					"description": {
-						"type": "string"
-					},
-					"features": {
-						"type": "array",
-						"items": {
-							"type": "string"
-						}
-					},
-					"verification_level": {
-						"type": "integer"
-					},
-					"default_message_notifications": {
-						"type": "integer"
-					},
-					"system_channel_flags": {
-						"type": "integer"
-					},
-					"explicit_content_filter": {
-						"type": "integer"
-					},
-					"public_updates_channel_id": {
-						"type": "string"
-					},
-					"afk_timeout": {
-						"type": "integer"
-					},
-					"afk_channel_id": {
-						"type": "string"
-					},
-					"preferred_locale": {
-						"type": "string"
-					},
-					"name": {
-						"maxLength": 100,
-						"type": "string"
-					},
-					"region": {
-						"type": "string"
-					},
-					"icon": {
-						"type": "string",
-						"nullable": true
-					},
-					"guild_template_code": {
-						"type": "string"
-					},
-					"system_channel_id": {
-						"type": "string"
-					},
-					"rules_channel_id": {
-						"type": "string"
-					}
-				},
-				"required": ["name"]
-			},
-			"GuildTemplateCreateSchema": {
-				"type": "object",
-				"properties": {
-					"name": {
-						"type": "string"
-					},
-					"avatar": {
-						"type": "string",
-						"nullable": true
-					}
-				},
-				"required": ["name"]
-			},
-			"GuildUpdateWelcomeScreenSchema": {
-				"type": "object",
-				"properties": {
-					"welcome_channels": {
-						"type": "array",
-						"items": {
-							"type": "object",
-							"properties": {
-								"channel_id": {
-									"type": "string"
-								},
-								"description": {
-									"type": "string"
-								},
-								"emoji_id": {
-									"type": "string"
-								},
-								"emoji_name": {
-									"type": "string"
-								}
-							},
-							"additionalProperties": false,
-							"required": ["channel_id", "description", "emoji_name"]
-						}
-					},
-					"enabled": {
-						"type": "boolean"
-					},
-					"description": {
-						"type": "string"
-					}
-				}
-			},
-			"InviteCreateSchema": {
-				"type": "object",
-				"properties": {
-					"target_user_id": {
-						"type": "string"
-					},
-					"target_type": {
-						"type": "string"
-					},
-					"validate": {
-						"type": "string"
-					},
-					"max_age": {
-						"type": "integer"
-					},
-					"max_uses": {
-						"type": "integer"
-					},
-					"temporary": {
-						"type": "boolean"
-					},
-					"unique": {
-						"type": "boolean"
-					},
-					"target_user": {
-						"type": "string"
-					},
-					"target_user_type": {
-						"type": "integer"
-					}
-				}
-			},
-			"MemberCreateSchema": {
-				"type": "object",
-				"properties": {
-					"id": {
-						"type": "string"
-					},
-					"nick": {
-						"type": "string"
-					},
-					"guild_id": {
-						"type": "string"
-					},
-					"joined_at": {
-						"type": "string",
-						"format": "date-time"
-					}
-				},
-				"required": ["guild_id", "id", "joined_at", "nick"]
-			},
-			"MemberNickChangeSchema": {
-				"type": "object",
-				"properties": {
-					"nick": {
-						"type": "string"
-					}
-				},
-				"required": ["nick"]
-			},
-			"MemberChangeSchema": {
-				"type": "object",
-				"properties": {
-					"roles": {
-						"type": "array",
-						"items": {
-							"type": "string"
-						}
-					}
-				}
-			},
-			"MessageCreateSchema": {
-				"type": "object",
-				"properties": {
-					"content": {
-						"type": "string"
-					},
-					"nonce": {
-						"type": "string"
-					},
-					"tts": {
-						"type": "boolean"
-					},
-					"flags": {
-						"type": "string"
-					},
-					"embeds": {
-						"type": "array",
-						"items": {
-							"$ref": "#/components/schemas/Embed"
-						}
-					},
-					"embed": {
-						"$ref": "#/components/schemas/Embed"
-					},
-					"allowed_mentions": {
-						"type": "object",
-						"properties": {
-							"parse": {
-								"type": "array",
-								"items": {
-									"type": "string"
-								}
-							},
-							"roles": {
-								"type": "array",
-								"items": {
-									"type": "string"
-								}
-							},
-							"users": {
-								"type": "array",
-								"items": {
-									"type": "string"
-								}
-							},
-							"replied_user": {
-								"type": "boolean"
-							}
-						},
-						"additionalProperties": false
-					},
-					"message_reference": {
-						"type": "object",
-						"properties": {
-							"message_id": {
-								"type": "string"
-							},
-							"channel_id": {
-								"type": "string"
-							},
-							"guild_id": {
-								"type": "string"
-							},
-							"fail_if_not_exists": {
-								"type": "boolean"
-							}
-						},
-						"additionalProperties": false,
-						"required": ["channel_id", "message_id"]
-					},
-					"payload_json": {
-						"type": "string"
-					},
-					"file": {},
-					"attachments": {
-						"type": "array",
-						"items": {}
-					}
-				}
-			},
-			"RoleModifySchema": {
-				"type": "object",
-				"properties": {
-					"name": {
-						"type": "string"
-					},
-					"permissions": {
-						"type": "number"
-					},
-					"color": {
-						"type": "integer"
-					},
-					"hoist": {
-						"type": "boolean"
-					},
-					"mentionable": {
-						"type": "boolean"
-					},
-					"position": {
-						"type": "integer"
-					}
-				}
-			},
-			"TemplateCreateSchema": {
-				"type": "object",
-				"properties": {
-					"name": {
-						"type": "string"
-					},
-					"description": {
-						"type": "string"
-					}
-				},
-				"required": ["name"]
-			},
-			"TemplateModifySchema": {
-				"type": "object",
-				"properties": {
-					"name": {
-						"type": "string"
-					},
-					"description": {
-						"type": "string"
-					}
-				},
-				"required": ["name"]
-			},
-			"UserModifySchema": {
-				"type": "object",
-				"properties": {
-					"username": {
-						"minLength": 1,
-						"maxLength": 100,
-						"type": "string"
-					},
-					"avatar": {
-						"type": "string",
-						"nullable": true
-					},
-					"bio": {
-						"maxLength": 1024,
-						"type": "string"
-					},
-					"accent_color": {
-						"type": "integer"
-					},
-					"banner": {
-						"type": "string",
-						"nullable": true
-					},
-					"password": {
-						"type": "string"
-					},
-					"new_password": {
-						"type": "string"
-					},
-					"code": {
-						"type": "string"
-					}
-				}
-			},
-			"UserSettingsSchema": {
-				"type": "object",
-				"properties": {
-					"afk_timeout": {
-						"type": "integer"
-					},
-					"allow_accessibility_detection": {
-						"type": "boolean"
-					},
-					"animate_emoji": {
-						"type": "boolean"
-					},
-					"animate_stickers": {
-						"type": "integer"
-					},
-					"contact_sync_enabled": {
-						"type": "boolean"
-					},
-					"convert_emoticons": {
-						"type": "boolean"
-					},
-					"custom_status": {
-						"type": "object",
-						"properties": {
-							"emoji_id": {
-								"type": "string"
-							},
-							"emoji_name": {
-								"type": "string"
-							},
-							"expires_at": {
-								"type": "integer"
-							},
-							"text": {
-								"type": "string"
-							}
-						},
-						"additionalProperties": false
-					},
-					"default_guilds_restricted": {
-						"type": "boolean"
-					},
-					"detect_platform_accounts": {
-						"type": "boolean"
-					},
-					"developer_mode": {
-						"type": "boolean"
-					},
-					"disable_games_tab": {
-						"type": "boolean"
-					},
-					"enable_tts_command": {
-						"type": "boolean"
-					},
-					"explicit_content_filter": {
-						"type": "integer"
-					},
-					"friend_source_flags": {
-						"type": "object",
-						"properties": {
-							"all": {
-								"type": "boolean"
-							}
-						},
-						"additionalProperties": false,
-						"required": ["all"]
-					},
-					"gateway_connected": {
-						"type": "boolean"
-					},
-					"gif_auto_play": {
-						"type": "boolean"
-					},
-					"guild_folders": {
-						"type": "array",
-						"items": {
-							"type": "object",
-							"properties": {
-								"color": {
-									"type": "integer"
-								},
-								"guild_ids": {
-									"type": "array",
-									"items": {
-										"type": "string"
-									}
-								},
-								"id": {
-									"type": "integer"
-								},
-								"name": {
-									"type": "string"
-								}
-							},
-							"additionalProperties": false,
-							"required": ["color", "guild_ids", "id", "name"]
-						}
-					},
-					"guild_positions": {
-						"type": "array",
-						"items": {
-							"type": "string"
-						}
-					},
-					"inline_attachment_media": {
-						"type": "boolean"
-					},
-					"inline_embed_media": {
-						"type": "boolean"
-					},
-					"locale": {
-						"type": "string"
-					},
-					"message_display_compact": {
-						"type": "boolean"
-					},
-					"native_phone_integration_enabled": {
-						"type": "boolean"
-					},
-					"render_embeds": {
-						"type": "boolean"
-					},
-					"render_reactions": {
-						"type": "boolean"
-					},
-					"restricted_guilds": {
-						"type": "array",
-						"items": {
-							"type": "string"
-						}
-					},
-					"show_current_game": {
-						"type": "boolean"
-					},
-					"status": {
-						"enum": ["dnd", "idle", "offline", "online", "invisible"],
-						"type": "string"
-					},
-					"stream_notifications_enabled": {
-						"type": "boolean"
-					},
-					"theme": {
-						"enum": ["dark", "white"],
-						"type": "string"
-					},
-					"timezone_offset": {
-						"type": "integer"
-					}
-				},
-				"required": [
-					"afk_timeout",
-					"allow_accessibility_detection",
-					"animate_emoji",
-					"animate_stickers",
-					"contact_sync_enabled",
-					"convert_emoticons",
-					"custom_status",
-					"default_guilds_restricted",
-					"detect_platform_accounts",
-					"developer_mode",
-					"disable_games_tab",
-					"enable_tts_command",
-					"explicit_content_filter",
-					"friend_source_flags",
-					"gateway_connected",
-					"gif_auto_play",
-					"guild_folders",
-					"guild_positions",
-					"inline_attachment_media",
-					"inline_embed_media",
-					"locale",
-					"message_display_compact",
-					"native_phone_integration_enabled",
-					"render_embeds",
-					"render_reactions",
-					"restricted_guilds",
-					"show_current_game",
-					"status",
-					"stream_notifications_enabled",
-					"theme",
-					"timezone_offset"
-				]
-			},
-			"WidgetModifySchema": {
-				"type": "object",
-				"properties": {
-					"enabled": {
-						"type": "boolean"
-					},
-					"channel_id": {
-						"type": "string"
-					}
-				},
-				"required": ["channel_id", "enabled"]
-			},
-			"RegisterSchema": {
-				"type": "object",
-				"properties": {
-					"username": {
-						"minLength": 2,
-						"maxLength": 32,
-						"type": "string"
-					},
-					"password": {
-						"minLength": 1,
-						"maxLength": 72,
-						"type": "string"
-					},
-					"consent": {
-						"type": "boolean"
-					},
-					"email": {
-						"format": "email",
-						"type": "string"
-					},
-					"fingerprint": {
-						"type": "string"
-					},
-					"invite": {
-						"type": "string"
-					},
-					"date_of_birth": {
-						"type": "string"
-					},
-					"gift_code_sku_id": {
-						"type": "string"
-					},
-					"captcha_key": {
-						"type": "string"
-					}
-				},
-				"required": ["consent", "username"]
-			},
-			"LoginSchema": {
-				"type": "object",
-				"properties": {
-					"login": {
-						"type": "string"
-					},
-					"password": {
-						"type": "string"
-					},
-					"undelete": {
-						"type": "boolean"
-					},
-					"captcha_key": {
-						"type": "string"
-					},
-					"login_source": {
-						"type": "string"
-					},
-					"gift_code_sku_id": {
-						"type": "string"
-					}
-				},
-				"required": ["login", "password"]
-			},
-			"MessageAcknowledgeSchema": {
-				"type": "object",
-				"properties": {
-					"manual": {
-						"type": "boolean"
-					},
-					"mention_count": {
-						"type": "integer"
-					}
-				}
-			},
-			"BulkDeleteSchema": {
-				"type": "object",
-				"properties": {
-					"messages": {
-						"type": "array",
-						"items": {
-							"type": "string"
-						}
-					}
-				},
-				"required": ["messages"]
-			},
-			"ChannelPermissionOverwriteSchema": {
-				"type": "object",
-				"properties": {
-					"allow": {
-						"type": "number"
-					},
-					"deny": {
-						"type": "number"
-					},
-					"id": {
-						"type": "string"
-					},
-					"type": {
-						"$ref": "#/components/schemas/ChannelPermissionOverwriteType"
-					}
-				},
-				"required": ["allow", "deny", "id", "type"]
-			},
-			"WebhookCreateSchema": {
-				"type": "object",
-				"properties": {
-					"name": {
-						"maxLength": 80,
-						"type": "string"
-					},
-					"avatar": {
-						"type": "string"
-					}
-				},
-				"required": ["avatar", "name"]
-			},
-			"ChannelReorderSchema": {
-				"type": "array",
-				"items": {
-					"type": "object",
-					"properties": {
-						"id": {
-							"type": "string"
-						},
-						"position": {
-							"type": "integer"
-						},
-						"lock_permissions": {
-							"type": "boolean"
-						},
-						"parent_id": {
-							"type": "string"
-						}
-					},
-					"additionalProperties": false,
-					"required": ["id"]
-				}
-			},
-			"RolePositionUpdateSchema": {
-				"type": "array",
-				"items": {
-					"type": "object",
-					"properties": {
-						"id": {
-							"type": "string"
-						},
-						"position": {
-							"type": "integer"
-						}
-					},
-					"additionalProperties": false,
-					"required": ["id", "position"]
-				}
-			},
-			"VanityUrlSchema": {
-				"type": "object",
-				"properties": {
-					"code": {
-						"minLength": 1,
-						"maxLength": 20,
-						"type": "string"
-					}
-				}
-			},
-			"VoiceStateUpdateSchema": {
-				"type": "object",
-				"properties": {
-					"channel_id": {
-						"type": "string"
-					},
-					"guild_id": {
-						"type": "string"
-					},
-					"suppress": {
-						"type": "boolean"
-					},
-					"request_to_speak_timestamp": {
-						"type": "string",
-						"format": "date-time"
-					},
-					"self_mute": {
-						"type": "boolean"
-					},
-					"self_deaf": {
-						"type": "boolean"
-					},
-					"self_video": {
-						"type": "boolean"
-					}
-				},
-				"required": ["channel_id"]
-			},
-			"UserProfileResponse": {
-				"type": "object",
-				"properties": {
-					"user": {
-						"$ref": "#/components/schemas/UserPublic"
-					},
-					"connected_accounts": {
-						"$ref": "#/components/schemas/PublicConnectedAccount"
-					},
-					"premium_guild_since": {
-						"type": "string",
-						"format": "date-time"
-					},
-					"premium_since": {
-						"type": "string",
-						"format": "date-time"
-					}
-				},
-				"required": ["connected_accounts", "user"]
-			},
-			"RelationshipPutSchema": {
-				"type": "object",
-				"properties": {
-					"type": {
-						"enum": [1, 2, 3, 4],
-						"type": "number"
-					}
-				}
-			},
-			"RelationshipPostSchema": {
-				"type": "object",
-				"properties": {
-					"discriminator": {
-						"type": "string"
-					},
-					"username": {
-						"type": "string"
-					}
-				},
-				"required": ["discriminator", "username"]
-			},
-			"PublicConnectedAccount": {
-				"type": "object",
-				"properties": {
-					"name": {
-						"type": "string"
-					},
-					"type": {
-						"type": "string"
-					},
-					"verifie": {
-						"type": "boolean"
-					}
-				},
-				"required": ["name", "type", "verifie"]
-			}
-		},
-		"requestBodies": {},
-		"securitySchemes": {
-			"Token": {
-				"type": "apiKey",
-				"name": "Authorization",
-				"in": "header"
-			}
-		},
-		"links": {},
-		"callbacks": {}
-	}
-}
+    "openapi": "3.0.0",
+    "servers": [
+        {
+            "url": "https://staging.fosscord.com/api/",
+            "description": "Official Fosscord Instance"
+        }
+    ],
+    "info": {
+        "description": "Fosscord is a free open source selfhostable discord compatible chat, voice and video platform",
+        "version": "1.0.0",
+        "title": "Fosscord HTTP API Routes",
+        "termsOfService": "",
+        "contact": {
+            "name": "Fosscord"
+        },
+        "license": {
+            "name": "AGPLV3",
+            "url": "https://www.gnu.org/licenses/agpl-3.0.en.html"
+        }
+    },
+    "components": {
+        "securitySchemes": {
+            "bearer": {
+                "type": "http",
+                "scheme": "bearer",
+                "description": "Bearer/Bot prefixes are not required."
+            }
+        },
+        "schemas": {
+            "SelectProtocolSchema": {
+                "type": "object",
+                "properties": {
+                    "protocol": {
+                        "enum": [
+                            "udp",
+                            "webrtc"
+                        ],
+                        "type": "string"
+                    },
+                    "data": {
+                        "anyOf": [
+                            {
+                                "type": "object",
+                                "properties": {
+                                    "address": {
+                                        "type": "string"
+                                    },
+                                    "port": {
+                                        "type": "integer"
+                                    },
+                                    "mode": {
+                                        "type": "string"
+                                    }
+                                },
+                                "additionalProperties": false,
+                                "required": [
+                                    "address",
+                                    "mode",
+                                    "port"
+                                ]
+                            },
+                            {
+                                "type": "string"
+                            }
+                        ]
+                    },
+                    "sdp": {
+                        "type": "string"
+                    },
+                    "codecs": {
+                        "type": "array",
+                        "items": {
+                            "type": "object",
+                            "properties": {
+                                "name": {
+                                    "enum": [
+                                        "H264",
+                                        "VP8",
+                                        "VP9",
+                                        "opus"
+                                    ],
+                                    "type": "string"
+                                },
+                                "type": {
+                                    "enum": [
+                                        "audio",
+                                        "video"
+                                    ],
+                                    "type": "string"
+                                },
+                                "priority": {
+                                    "type": "integer"
+                                },
+                                "payload_type": {
+                                    "type": "integer"
+                                },
+                                "rtx_payload_type": {
+                                    "type": [
+                                        "null",
+                                        "integer"
+                                    ]
+                                }
+                            },
+                            "additionalProperties": false,
+                            "required": [
+                                "name",
+                                "payload_type",
+                                "priority",
+                                "type"
+                            ]
+                        }
+                    },
+                    "rtc_connection_id": {
+                        "type": "string"
+                    }
+                },
+                "required": [
+                    "data",
+                    "protocol"
+                ]
+            },
+            "LoginSchema": {
+                "type": "object",
+                "properties": {
+                    "login": {
+                        "type": "string"
+                    },
+                    "password": {
+                        "type": "string"
+                    },
+                    "undelete": {
+                        "type": "boolean"
+                    },
+                    "captcha_key": {
+                        "type": "string"
+                    },
+                    "login_source": {
+                        "type": "string"
+                    },
+                    "gift_code_sku_id": {
+                        "type": "string"
+                    }
+                },
+                "required": [
+                    "login",
+                    "password"
+                ]
+            },
+            "RegisterSchema": {
+                "type": "object",
+                "properties": {
+                    "username": {
+                        "minLength": 2,
+                        "maxLength": 32,
+                        "type": "string"
+                    },
+                    "password": {
+                        "minLength": 1,
+                        "maxLength": 72,
+                        "type": "string"
+                    },
+                    "consent": {
+                        "type": "boolean"
+                    },
+                    "email": {
+                        "format": "email",
+                        "type": "string"
+                    },
+                    "fingerprint": {
+                        "type": "string"
+                    },
+                    "invite": {
+                        "type": "string"
+                    },
+                    "date_of_birth": {
+                        "type": "string"
+                    },
+                    "gift_code_sku_id": {
+                        "type": "string"
+                    },
+                    "captcha_key": {
+                        "type": "string"
+                    },
+                    "promotional_email_opt_in": {
+                        "type": "boolean"
+                    }
+                },
+                "required": [
+                    "consent",
+                    "username"
+                ]
+            },
+            "TotpSchema": {
+                "type": "object",
+                "properties": {
+                    "code": {
+                        "type": "string"
+                    },
+                    "ticket": {
+                        "type": "string"
+                    },
+                    "gift_code_sku_id": {
+                        "type": "string",
+                        "nullable": true
+                    },
+                    "login_source": {
+                        "type": "string",
+                        "nullable": true
+                    }
+                },
+                "required": [
+                    "code",
+                    "ticket"
+                ]
+            },
+            "BackupCodesChallengeSchema": {
+                "type": "object",
+                "properties": {
+                    "password": {
+                        "type": "string"
+                    }
+                },
+                "required": [
+                    "password"
+                ]
+            },
+            "ChannelPermissionOverwriteType": {
+                "enum": [
+                    0,
+                    1,
+                    2
+                ],
+                "type": "number"
+            },
+            "Embed": {
+                "type": "object",
+                "properties": {
+                    "title": {
+                        "type": "string"
+                    },
+                    "type": {
+                        "enum": [
+                            "article",
+                            "gifv",
+                            "image",
+                            "link",
+                            "rich",
+                            "video"
+                        ],
+                        "type": "string"
+                    },
+                    "description": {
+                        "type": "string"
+                    },
+                    "url": {
+                        "type": "string"
+                    },
+                    "timestamp": {
+                        "type": "string",
+                        "format": "date-time"
+                    },
+                    "color": {
+                        "type": "integer"
+                    },
+                    "footer": {
+                        "type": "object",
+                        "properties": {
+                            "text": {
+                                "type": "string"
+                            },
+                            "icon_url": {
+                                "type": "string"
+                            },
+                            "proxy_icon_url": {
+                                "type": "string"
+                            }
+                        },
+                        "additionalProperties": false,
+                        "required": [
+                            "text"
+                        ]
+                    },
+                    "image": {
+                        "$ref": "#/components/schemas/EmbedImage"
+                    },
+                    "thumbnail": {
+                        "$ref": "#/components/schemas/EmbedImage"
+                    },
+                    "video": {
+                        "$ref": "#/components/schemas/EmbedImage"
+                    },
+                    "provider": {
+                        "type": "object",
+                        "properties": {
+                            "name": {
+                                "type": "string"
+                            },
+                            "url": {
+                                "type": "string"
+                            }
+                        },
+                        "additionalProperties": false
+                    },
+                    "author": {
+                        "type": "object",
+                        "properties": {
+                            "name": {
+                                "type": "string"
+                            },
+                            "url": {
+                                "type": "string"
+                            },
+                            "icon_url": {
+                                "type": "string"
+                            },
+                            "proxy_icon_url": {
+                                "type": "string"
+                            }
+                        },
+                        "additionalProperties": false
+                    },
+                    "fields": {
+                        "type": "array",
+                        "items": {
+                            "type": "object",
+                            "properties": {
+                                "name": {
+                                    "type": "string"
+                                },
+                                "value": {
+                                    "type": "string"
+                                },
+                                "inline": {
+                                    "type": "boolean"
+                                }
+                            },
+                            "additionalProperties": false,
+                            "required": [
+                                "name",
+                                "value"
+                            ]
+                        }
+                    }
+                }
+            },
+            "EmbedImage": {
+                "type": "object",
+                "properties": {
+                    "url": {
+                        "type": "string"
+                    },
+                    "proxy_url": {
+                        "type": "string"
+                    },
+                    "height": {
+                        "type": "integer"
+                    },
+                    "width": {
+                        "type": "integer"
+                    }
+                }
+            },
+            "ChannelModifySchema": {
+                "type": "object",
+                "properties": {
+                    "name": {
+                        "maxLength": 100,
+                        "type": "string"
+                    },
+                    "type": {
+                        "enum": [
+                            0,
+                            1,
+                            10,
+                            11,
+                            12,
+                            13,
+                            14,
+                            15,
+                            2,
+                            255,
+                            3,
+                            33,
+                            34,
+                            35,
+                            4,
+                            5,
+                            6,
+                            64,
+                            7,
+                            8,
+                            9
+                        ],
+                        "type": "number"
+                    },
+                    "topic": {
+                        "type": "string"
+                    },
+                    "icon": {
+                        "type": "string",
+                        "nullable": true
+                    },
+                    "bitrate": {
+                        "type": "integer"
+                    },
+                    "user_limit": {
+                        "type": "integer"
+                    },
+                    "rate_limit_per_user": {
+                        "type": "integer"
+                    },
+                    "position": {
+                        "type": "integer"
+                    },
+                    "permission_overwrites": {
+                        "type": "array",
+                        "items": {
+                            "type": "object",
+                            "properties": {
+                                "id": {
+                                    "type": "string"
+                                },
+                                "type": {
+                                    "$ref": "#/components/schemas/ChannelPermissionOverwriteType"
+                                },
+                                "allow": {
+                                    "type": "string"
+                                },
+                                "deny": {
+                                    "type": "string"
+                                }
+                            },
+                            "additionalProperties": false,
+                            "required": [
+                                "allow",
+                                "deny",
+                                "id",
+                                "type"
+                            ]
+                        }
+                    },
+                    "parent_id": {
+                        "type": "string"
+                    },
+                    "id": {
+                        "type": "string"
+                    },
+                    "nsfw": {
+                        "type": "boolean"
+                    },
+                    "rtc_region": {
+                        "type": "string"
+                    },
+                    "default_auto_archive_duration": {
+                        "type": "integer"
+                    },
+                    "default_reaction_emoji": {
+                        "type": "string",
+                        "nullable": true
+                    },
+                    "flags": {
+                        "type": "integer"
+                    },
+                    "default_thread_rate_limit_per_user": {
+                        "type": "integer"
+                    },
+                    "video_quality_mode": {
+                        "type": "integer"
+                    }
+                }
+            },
+            "ActivitySchema": {
+                "type": "object",
+                "properties": {
+                    "afk": {
+                        "type": "boolean"
+                    },
+                    "status": {
+                        "$ref": "#/components/schemas/Status"
+                    },
+                    "activities": {
+                        "type": "array",
+                        "items": {
+                            "$ref": "#/components/schemas/Activity"
+                        }
+                    },
+                    "since": {
+                        "type": "integer"
+                    }
+                },
+                "required": [
+                    "status"
+                ]
+            },
+            "Status": {
+                "enum": [
+                    "dnd",
+                    "idle",
+                    "invisible",
+                    "offline",
+                    "online"
+                ],
+                "type": "string"
+            },
+            "Activity": {
+                "type": "object",
+                "properties": {
+                    "name": {
+                        "type": "string"
+                    },
+                    "type": {
+                        "$ref": "#/components/schemas/ActivityType"
+                    },
+                    "url": {
+                        "type": "string"
+                    },
+                    "created_at": {
+                        "type": "integer"
+                    },
+                    "timestamps": {
+                        "type": "object",
+                        "properties": {
+                            "start": {
+                                "type": "integer"
+                            },
+                            "end": {
+                                "type": "integer"
+                            }
+                        },
+                        "additionalProperties": false,
+                        "required": [
+                            "end",
+                            "start"
+                        ]
+                    },
+                    "application_id": {
+                        "type": "string"
+                    },
+                    "details": {
+                        "type": "string"
+                    },
+                    "state": {
+                        "type": "string"
+                    },
+                    "emoji": {
+                        "type": "object",
+                        "properties": {
+                            "name": {
+                                "type": "string"
+                            },
+                            "id": {
+                                "type": "string"
+                            },
+                            "animated": {
+                                "type": "boolean"
+                            }
+                        },
+                        "additionalProperties": false,
+                        "required": [
+                            "animated",
+                            "name"
+                        ]
+                    },
+                    "party": {
+                        "type": "object",
+                        "properties": {
+                            "id": {
+                                "type": "string"
+                            },
+                            "size": {
+                                "type": "array",
+                                "items": [
+                                    {
+                                        "type": "integer"
+                                    }
+                                ],
+                                "minItems": 1,
+                                "maxItems": 1
+                            }
+                        },
+                        "additionalProperties": false
+                    },
+                    "assets": {
+                        "type": "object",
+                        "properties": {
+                            "large_image": {
+                                "type": "string"
+                            },
+                            "large_text": {
+                                "type": "string"
+                            },
+                            "small_image": {
+                                "type": "string"
+                            },
+                            "small_text": {
+                                "type": "string"
+                            }
+                        },
+                        "additionalProperties": false
+                    },
+                    "secrets": {
+                        "type": "object",
+                        "properties": {
+                            "join": {
+                                "type": "string"
+                            },
+                            "spectate": {
+                                "type": "string"
+                            },
+                            "match": {
+                                "type": "string"
+                            }
+                        },
+                        "additionalProperties": false
+                    },
+                    "instance": {
+                        "type": "boolean"
+                    },
+                    "flags": {
+                        "type": "string"
+                    },
+                    "id": {
+                        "type": "string"
+                    },
+                    "sync_id": {
+                        "type": "string"
+                    },
+                    "metadata": {
+                        "type": "object",
+                        "properties": {
+                            "context_uri": {
+                                "type": "string"
+                            },
+                            "album_id": {
+                                "type": "string"
+                            },
+                            "artist_ids": {
+                                "type": "array",
+                                "items": {
+                                    "type": "string"
+                                }
+                            }
+                        },
+                        "additionalProperties": false,
+                        "required": [
+                            "album_id",
+                            "artist_ids"
+                        ]
+                    },
+                    "session_id": {
+                        "type": "string"
+                    }
+                },
+                "required": [
+                    "flags",
+                    "name",
+                    "session_id",
+                    "type"
+                ]
+            },
+            "ActivityType": {
+                "enum": [
+                    0,
+                    1,
+                    2,
+                    4,
+                    5
+                ],
+                "type": "number"
+            },
+            "Record<string,[number,number][]>": {
+                "type": "object"
+            },
+            "CustomStatus": {
+                "type": "object",
+                "properties": {
+                    "emoji_id": {
+                        "type": "string"
+                    },
+                    "emoji_name": {
+                        "type": "string"
+                    },
+                    "expires_at": {
+                        "type": "integer"
+                    },
+                    "text": {
+                        "type": "string"
+                    }
+                }
+            },
+            "FriendSourceFlags": {
+                "type": "object",
+                "properties": {
+                    "all": {
+                        "type": "boolean"
+                    }
+                },
+                "required": [
+                    "all"
+                ]
+            },
+            "GuildFolder": {
+                "type": "object",
+                "properties": {
+                    "color": {
+                        "type": "integer"
+                    },
+                    "guild_ids": {
+                        "type": "array",
+                        "items": {
+                            "type": "string"
+                        }
+                    },
+                    "id": {
+                        "type": "integer"
+                    },
+                    "name": {
+                        "type": "string"
+                    }
+                },
+                "required": [
+                    "color",
+                    "guild_ids",
+                    "id",
+                    "name"
+                ]
+            },
+            "Partial<ChannelOverride>": {
+                "type": "object",
+                "properties": {
+                    "message_notifications": {
+                        "type": "integer"
+                    },
+                    "mute_config": {
+                        "$ref": "#/components/schemas/MuteConfig"
+                    },
+                    "muted": {
+                        "type": "boolean"
+                    },
+                    "channel_id": {
+                        "type": "string",
+                        "nullable": true
+                    }
+                }
+            },
+            "MuteConfig": {
+                "type": "object",
+                "properties": {
+                    "end_time": {
+                        "type": "integer"
+                    },
+                    "selected_time_window": {
+                        "type": "integer"
+                    }
+                },
+                "required": [
+                    "end_time",
+                    "selected_time_window"
+                ]
+            },
+            "InviteCreateSchema": {
+                "type": "object",
+                "properties": {
+                    "target_user_id": {
+                        "type": "string"
+                    },
+                    "target_type": {
+                        "type": "string"
+                    },
+                    "validate": {
+                        "type": "string"
+                    },
+                    "max_age": {
+                        "type": "integer"
+                    },
+                    "max_uses": {
+                        "type": "integer"
+                    },
+                    "temporary": {
+                        "type": "boolean"
+                    },
+                    "unique": {
+                        "type": "boolean"
+                    },
+                    "target_user": {
+                        "type": "string"
+                    },
+                    "target_user_type": {
+                        "type": "integer"
+                    }
+                }
+            },
+            "PurgeSchema": {
+                "type": "object",
+                "properties": {
+                    "before": {
+                        "type": "string"
+                    },
+                    "after": {
+                        "type": "string"
+                    }
+                },
+                "required": [
+                    "after",
+                    "before"
+                ]
+            },
+            "WebhookCreateSchema": {
+                "type": "object",
+                "properties": {
+                    "name": {
+                        "maxLength": 80,
+                        "type": "string"
+                    },
+                    "avatar": {
+                        "type": "string"
+                    }
+                },
+                "required": [
+                    "name"
+                ]
+            },
+            "MessageCreateSchema": {
+                "type": "object",
+                "properties": {
+                    "type": {
+                        "type": "integer"
+                    },
+                    "content": {
+                        "type": "string"
+                    },
+                    "nonce": {
+                        "type": "string"
+                    },
+                    "channel_id": {
+                        "type": "string"
+                    },
+                    "tts": {
+                        "type": "boolean"
+                    },
+                    "flags": {
+                        "type": "string"
+                    },
+                    "embeds": {
+                        "type": "array",
+                        "items": {
+                            "$ref": "#/components/schemas/Embed"
+                        }
+                    },
+                    "embed": {
+                        "$ref": "#/components/schemas/Embed"
+                    },
+                    "allowed_mentions": {
+                        "type": "object",
+                        "properties": {
+                            "parse": {
+                                "type": "array",
+                                "items": {
+                                    "type": "string"
+                                }
+                            },
+                            "roles": {
+                                "type": "array",
+                                "items": {
+                                    "type": "string"
+                                }
+                            },
+                            "users": {
+                                "type": "array",
+                                "items": {
+                                    "type": "string"
+                                }
+                            },
+                            "replied_user": {
+                                "type": "boolean"
+                            }
+                        },
+                        "additionalProperties": false
+                    },
+                    "message_reference": {
+                        "type": "object",
+                        "properties": {
+                            "message_id": {
+                                "type": "string"
+                            },
+                            "channel_id": {
+                                "type": "string"
+                            },
+                            "guild_id": {
+                                "type": "string"
+                            },
+                            "fail_if_not_exists": {
+                                "type": "boolean"
+                            }
+                        },
+                        "additionalProperties": false,
+                        "required": [
+                            "channel_id",
+                            "message_id"
+                        ]
+                    },
+                    "payload_json": {
+                        "type": "string"
+                    },
+                    "file": {},
+                    "attachments": {
+                        "description": "TODO: we should create an interface for attachments\nTODO: OpenWAAO<-->attachment-style metadata conversion",
+                        "type": "array",
+                        "items": {}
+                    },
+                    "sticker_ids": {
+                        "type": "array",
+                        "items": {
+                            "type": "string"
+                        }
+                    }
+                }
+            },
+            "MessageAcknowledgeSchema": {
+                "type": "object",
+                "properties": {
+                    "manual": {
+                        "type": "boolean"
+                    },
+                    "mention_count": {
+                        "type": "integer"
+                    }
+                }
+            },
+            "GuildCreateSchema": {
+                "type": "object",
+                "properties": {
+                    "name": {
+                        "maxLength": 100,
+                        "type": "string"
+                    },
+                    "region": {
+                        "type": "string"
+                    },
+                    "icon": {
+                        "type": "string",
+                        "nullable": true
+                    },
+                    "channels": {
+                        "type": "array",
+                        "items": {
+                            "$ref": "#/components/schemas/ChannelModifySchema"
+                        }
+                    },
+                    "guild_template_code": {
+                        "type": "string"
+                    },
+                    "system_channel_id": {
+                        "type": "string"
+                    },
+                    "rules_channel_id": {
+                        "type": "string"
+                    }
+                }
+            },
+            "BanCreateSchema": {
+                "type": "object",
+                "properties": {
+                    "delete_message_days": {
+                        "type": "string"
+                    },
+                    "reason": {
+                        "type": "string"
+                    }
+                }
+            },
+            "BanModeratorSchema": {
+                "type": "object",
+                "properties": {
+                    "id": {
+                        "type": "string"
+                    },
+                    "user_id": {
+                        "type": "string"
+                    },
+                    "guild_id": {
+                        "type": "string"
+                    },
+                    "executor_id": {
+                        "type": "string"
+                    },
+                    "reason": {
+                        "type": "string"
+                    }
+                },
+                "required": [
+                    "executor_id",
+                    "guild_id",
+                    "id",
+                    "user_id"
+                ]
+            },
+            "BanRegistrySchema": {
+                "type": "object",
+                "properties": {
+                    "id": {
+                        "type": "string"
+                    },
+                    "user_id": {
+                        "type": "string"
+                    },
+                    "guild_id": {
+                        "type": "string"
+                    },
+                    "executor_id": {
+                        "type": "string"
+                    },
+                    "ip": {
+                        "type": "string"
+                    },
+                    "reason": {
+                        "type": "string"
+                    }
+                },
+                "required": [
+                    "executor_id",
+                    "guild_id",
+                    "id",
+                    "user_id"
+                ]
+            },
+            "EmojiCreateSchema": {
+                "type": "object",
+                "properties": {
+                    "name": {
+                        "type": "string"
+                    },
+                    "image": {
+                        "type": "string"
+                    },
+                    "require_colons": {
+                        "type": "boolean",
+                        "nullable": true
+                    },
+                    "roles": {
+                        "type": "array",
+                        "items": {
+                            "type": "string"
+                        }
+                    }
+                },
+                "required": [
+                    "image"
+                ]
+            },
+            "EmojiModifySchema": {
+                "type": "object",
+                "properties": {
+                    "name": {
+                        "type": "string"
+                    },
+                    "roles": {
+                        "type": "array",
+                        "items": {
+                            "type": "string"
+                        }
+                    }
+                }
+            },
+            "ModifyGuildStickerSchema": {
+                "type": "object",
+                "properties": {
+                    "name": {
+                        "minLength": 2,
+                        "maxLength": 30,
+                        "type": "string"
+                    },
+                    "description": {
+                        "maxLength": 100,
+                        "type": "string"
+                    },
+                    "tags": {
+                        "maxLength": 200,
+                        "type": "string"
+                    }
+                },
+                "required": [
+                    "name",
+                    "tags"
+                ]
+            },
+            "TemplateCreateSchema": {
+                "type": "object",
+                "properties": {
+                    "name": {
+                        "type": "string"
+                    },
+                    "description": {
+                        "type": "string"
+                    }
+                },
+                "required": [
+                    "name"
+                ]
+            },
+            "TemplateModifySchema": {
+                "type": "object",
+                "properties": {
+                    "name": {
+                        "type": "string"
+                    },
+                    "description": {
+                        "type": "string"
+                    }
+                },
+                "required": [
+                    "name"
+                ]
+            },
+            "VanityUrlSchema": {
+                "type": "object",
+                "properties": {
+                    "code": {
+                        "minLength": 1,
+                        "maxLength": 20,
+                        "type": "string"
+                    }
+                }
+            },
+            "GuildUpdateWelcomeScreenSchema": {
+                "type": "object",
+                "properties": {
+                    "welcome_channels": {
+                        "type": "array",
+                        "items": {
+                            "type": "object",
+                            "properties": {
+                                "channel_id": {
+                                    "type": "string"
+                                },
+                                "description": {
+                                    "type": "string"
+                                },
+                                "emoji_id": {
+                                    "type": "string"
+                                },
+                                "emoji_name": {
+                                    "type": "string"
+                                }
+                            },
+                            "additionalProperties": false,
+                            "required": [
+                                "channel_id",
+                                "description"
+                            ]
+                        }
+                    },
+                    "enabled": {
+                        "type": "boolean"
+                    },
+                    "description": {
+                        "type": "string"
+                    }
+                }
+            },
+            "WidgetModifySchema": {
+                "type": "object",
+                "properties": {
+                    "enabled": {
+                        "type": "boolean"
+                    },
+                    "channel_id": {
+                        "type": "string"
+                    }
+                },
+                "required": [
+                    "channel_id",
+                    "enabled"
+                ]
+            },
+            "IdentifySchema": {
+                "type": "object",
+                "properties": {
+                    "token": {
+                        "type": "string"
+                    },
+                    "properties": {
+                        "type": "object",
+                        "properties": {
+                            "os": {
+                                "type": "string"
+                            },
+                            "os_atch": {
+                                "type": "string"
+                            },
+                            "browser": {
+                                "type": "string"
+                            },
+                            "device": {
+                                "type": "string"
+                            },
+                            "$os": {
+                                "type": "string"
+                            },
+                            "$browser": {
+                                "type": "string"
+                            },
+                            "$device": {
+                                "type": "string"
+                            },
+                            "browser_user_agent": {
+                                "type": "string"
+                            },
+                            "browser_version": {
+                                "type": "string"
+                            },
+                            "os_version": {
+                                "type": "string"
+                            },
+                            "referrer": {
+                                "type": "string"
+                            },
+                            "referring_domain": {
+                                "type": "string"
+                            },
+                            "referrer_current": {
+                                "type": "string"
+                            },
+                            "referring_domain_current": {
+                                "type": "string"
+                            },
+                            "release_channel": {
+                                "enum": [
+                                    "canary",
+                                    "dev",
+                                    "ptb",
+                                    "stable"
+                                ],
+                                "type": "string"
+                            },
+                            "client_build_number": {
+                                "type": "integer"
+                            },
+                            "client_event_source": {},
+                            "client_version": {
+                                "type": "string"
+                            },
+                            "system_locale": {
+                                "type": "string"
+                            }
+                        },
+                        "additionalProperties": false
+                    },
+                    "intents": {
+                        "type": "number"
+                    },
+                    "presence": {
+                        "$ref": "#/components/schemas/ActivitySchema"
+                    },
+                    "compress": {
+                        "type": "boolean"
+                    },
+                    "large_threshold": {
+                        "type": "integer"
+                    },
+                    "largeThreshold": {
+                        "type": "integer"
+                    },
+                    "shard": {
+                        "type": "array",
+                        "items": [
+                            {
+                                "type": "number"
+                            },
+                            {
+                                "type": "number"
+                            }
+                        ],
+                        "minItems": 2,
+                        "maxItems": 2
+                    },
+                    "guild_subscriptions": {
+                        "type": "boolean"
+                    },
+                    "capabilities": {
+                        "type": "integer"
+                    },
+                    "client_state": {
+                        "type": "object",
+                        "properties": {
+                            "guild_hashes": {},
+                            "highest_last_message_id": {
+                                "type": [
+                                    "string",
+                                    "integer"
+                                ]
+                            },
+                            "read_state_version": {
+                                "type": "integer"
+                            },
+                            "user_guild_settings_version": {
+                                "type": "integer"
+                            },
+                            "user_settings_version": {
+                                "type": "integer"
+                            },
+                            "useruser_guild_settings_version": {
+                                "type": "integer"
+                            },
+                            "private_channels_version": {
+                                "type": "integer"
+                            },
+                            "guild_versions": {},
+                            "api_code_version": {
+                                "type": "integer"
+                            }
+                        },
+                        "additionalProperties": false
+                    },
+                    "clientState": {
+                        "type": "object",
+                        "properties": {
+                            "guildHashes": {},
+                            "highestLastMessageId": {
+                                "type": [
+                                    "string",
+                                    "integer"
+                                ]
+                            },
+                            "readStateVersion": {
+                                "type": "integer"
+                            },
+                            "userGuildSettingsVersion": {
+                                "type": "integer"
+                            },
+                            "useruserGuildSettingsVersion": {
+                                "type": "integer"
+                            },
+                            "guildVersions": {},
+                            "apiCodeVersion": {
+                                "type": "integer"
+                            }
+                        },
+                        "additionalProperties": false
+                    },
+                    "v": {
+                        "type": "integer"
+                    }
+                },
+                "required": [
+                    "properties",
+                    "token"
+                ]
+            },
+            "LazyRequestSchema": {
+                "type": "object",
+                "properties": {
+                    "guild_id": {
+                        "type": "string"
+                    },
+                    "channels": {
+                        "$ref": "#/components/schemas/Record<string,[number,number][]>"
+                    },
+                    "activities": {
+                        "type": "boolean"
+                    },
+                    "threads": {
+                        "type": "boolean"
+                    },
+                    "typing": {
+                        "enum": [
+                            true
+                        ],
+                        "type": "boolean"
+                    },
+                    "members": {
+                        "type": "array",
+                        "items": {}
+                    },
+                    "thread_member_lists": {
+                        "type": "array",
+                        "items": {}
+                    }
+                },
+                "required": [
+                    "guild_id"
+                ]
+            },
+            "MemberChangeProfileSchema": {
+                "type": "object",
+                "properties": {
+                    "banner": {
+                        "type": "string",
+                        "nullable": true
+                    },
+                    "nick": {
+                        "type": "string"
+                    },
+                    "bio": {
+                        "type": "string"
+                    },
+                    "pronouns": {
+                        "type": "string"
+                    },
+                    "theme_colors": {
+                        "type": "array",
+                        "items": [
+                            {
+                                "type": "integer"
+                            },
+                            {
+                                "type": "integer"
+                            }
+                        ],
+                        "minItems": 2,
+                        "maxItems": 2
+                    }
+                }
+            },
+            "MemberChangeSchema": {
+                "type": "object",
+                "properties": {
+                    "roles": {
+                        "type": "array",
+                        "items": {
+                            "type": "string"
+                        }
+                    },
+                    "nick": {
+                        "type": "string"
+                    },
+                    "avatar": {
+                        "type": "string",
+                        "nullable": true
+                    },
+                    "bio": {
+                        "type": "string"
+                    }
+                }
+            },
+            "RoleModifySchema": {
+                "type": "object",
+                "properties": {
+                    "name": {
+                        "type": "string"
+                    },
+                    "permissions": {
+                        "type": "string"
+                    },
+                    "color": {
+                        "type": "integer"
+                    },
+                    "hoist": {
+                        "type": "boolean"
+                    },
+                    "mentionable": {
+                        "type": "boolean"
+                    },
+                    "position": {
+                        "type": "integer"
+                    },
+                    "icon": {
+                        "type": "string"
+                    },
+                    "unicode_emoji": {
+                        "type": "string"
+                    }
+                }
+            },
+            "GuildTemplateCreateSchema": {
+                "type": "object",
+                "properties": {
+                    "name": {
+                        "type": "string"
+                    },
+                    "avatar": {
+                        "type": "string",
+                        "nullable": true
+                    }
+                },
+                "required": [
+                    "name"
+                ]
+            },
+            "DmChannelCreateSchema": {
+                "type": "object",
+                "properties": {
+                    "name": {
+                        "type": "string"
+                    },
+                    "recipients": {
+                        "type": "array",
+                        "items": {
+                            "type": "string"
+                        }
+                    }
+                },
+                "required": [
+                    "recipients"
+                ]
+            },
+            "UserModifySchema": {
+                "type": "object",
+                "properties": {
+                    "username": {
+                        "minLength": 1,
+                        "maxLength": 100,
+                        "type": "string"
+                    },
+                    "avatar": {
+                        "type": "string",
+                        "nullable": true
+                    },
+                    "bio": {
+                        "maxLength": 1024,
+                        "type": "string"
+                    },
+                    "accent_color": {
+                        "type": "integer"
+                    },
+                    "banner": {
+                        "type": "string",
+                        "nullable": true
+                    },
+                    "password": {
+                        "type": "string"
+                    },
+                    "new_password": {
+                        "type": "string"
+                    },
+                    "code": {
+                        "type": "string"
+                    },
+                    "email": {
+                        "type": "string"
+                    },
+                    "discriminator": {
+                        "type": "string"
+                    }
+                }
+            },
+            "RelationshipPostSchema": {
+                "type": "object",
+                "properties": {
+                    "discriminator": {
+                        "type": "string"
+                    },
+                    "username": {
+                        "type": "string"
+                    }
+                },
+                "required": [
+                    "discriminator",
+                    "username"
+                ]
+            },
+            "RelationshipPutSchema": {
+                "type": "object",
+                "properties": {
+                    "type": {
+                        "enum": [
+                            1,
+                            2,
+                            3,
+                            4
+                        ],
+                        "type": "number"
+                    }
+                }
+            },
+            "CodesVerificationSchema": {
+                "type": "object",
+                "properties": {
+                    "key": {
+                        "type": "string"
+                    },
+                    "nonce": {
+                        "type": "string"
+                    },
+                    "regenerate": {
+                        "type": "boolean"
+                    }
+                },
+                "required": [
+                    "key",
+                    "nonce"
+                ]
+            },
+            "MfaCodesSchema": {
+                "type": "object",
+                "properties": {
+                    "password": {
+                        "type": "string"
+                    },
+                    "regenerate": {
+                        "type": "boolean"
+                    }
+                },
+                "required": [
+                    "password"
+                ]
+            },
+            "TotpDisableSchema": {
+                "type": "object",
+                "properties": {
+                    "code": {
+                        "type": "string"
+                    }
+                },
+                "required": [
+                    "code"
+                ]
+            },
+            "TotpEnableSchema": {
+                "type": "object",
+                "properties": {
+                    "password": {
+                        "type": "string"
+                    },
+                    "code": {
+                        "type": "string"
+                    },
+                    "secret": {
+                        "type": "string"
+                    }
+                },
+                "required": [
+                    "password"
+                ]
+            },
+            "VoiceIdentifySchema": {
+                "type": "object",
+                "properties": {
+                    "server_id": {
+                        "type": "string"
+                    },
+                    "user_id": {
+                        "type": "string"
+                    },
+                    "session_id": {
+                        "type": "string"
+                    },
+                    "token": {
+                        "type": "string"
+                    },
+                    "video": {
+                        "type": "boolean"
+                    },
+                    "streams": {
+                        "type": "array",
+                        "items": {
+                            "type": "object",
+                            "properties": {
+                                "type": {
+                                    "type": "string"
+                                },
+                                "rid": {
+                                    "type": "string"
+                                },
+                                "quality": {
+                                    "type": "integer"
+                                }
+                            },
+                            "additionalProperties": false,
+                            "required": [
+                                "quality",
+                                "rid",
+                                "type"
+                            ]
+                        }
+                    }
+                },
+                "required": [
+                    "server_id",
+                    "session_id",
+                    "token",
+                    "user_id"
+                ]
+            },
+            "UserProfileModifySchema": {
+                "type": "object",
+                "properties": {
+                    "bio": {
+                        "type": "string"
+                    },
+                    "accent_color": {
+                        "type": "integer",
+                        "nullable": true
+                    },
+                    "banner": {
+                        "type": "string",
+                        "nullable": true
+                    },
+                    "pronouns": {
+                        "type": "string"
+                    },
+                    "theme_colors": {
+                        "type": "array",
+                        "items": [
+                            {
+                                "type": "integer"
+                            },
+                            {
+                                "type": "integer"
+                            }
+                        ],
+                        "minItems": 2,
+                        "maxItems": 2
+                    }
+                }
+            },
+            "UserSettingsSchema": {
+                "type": "object",
+                "properties": {
+                    "index": {
+                        "type": "string"
+                    },
+                    "afk_timeout": {
+                        "type": "integer"
+                    },
+                    "allow_accessibility_detection": {
+                        "type": "boolean"
+                    },
+                    "animate_emoji": {
+                        "type": "boolean"
+                    },
+                    "animate_stickers": {
+                        "type": "integer"
+                    },
+                    "contact_sync_enabled": {
+                        "type": "boolean"
+                    },
+                    "convert_emoticons": {
+                        "type": "boolean"
+                    },
+                    "custom_status": {
+                        "anyOf": [
+                            {
+                                "$ref": "#/components/schemas/CustomStatus"
+                            },
+                            {
+                                "type": "null"
+                            }
+                        ]
+                    },
+                    "default_guilds_restricted": {
+                        "type": "boolean"
+                    },
+                    "detect_platform_accounts": {
+                        "type": "boolean"
+                    },
+                    "developer_mode": {
+                        "type": "boolean"
+                    },
+                    "disable_games_tab": {
+                        "type": "boolean"
+                    },
+                    "enable_tts_command": {
+                        "type": "boolean"
+                    },
+                    "explicit_content_filter": {
+                        "type": "integer"
+                    },
+                    "friend_source_flags": {
+                        "$ref": "#/components/schemas/FriendSourceFlags"
+                    },
+                    "gateway_connected": {
+                        "type": "boolean"
+                    },
+                    "gif_auto_play": {
+                        "type": "boolean"
+                    },
+                    "guild_folders": {
+                        "type": "array",
+                        "items": {
+                            "$ref": "#/components/schemas/GuildFolder"
+                        }
+                    },
+                    "guild_positions": {
+                        "type": "array",
+                        "items": {
+                            "type": "string"
+                        }
+                    },
+                    "inline_attachment_media": {
+                        "type": "boolean"
+                    },
+                    "inline_embed_media": {
+                        "type": "boolean"
+                    },
+                    "locale": {
+                        "type": "string"
+                    },
+                    "message_display_compact": {
+                        "type": "boolean"
+                    },
+                    "native_phone_integration_enabled": {
+                        "type": "boolean"
+                    },
+                    "render_embeds": {
+                        "type": "boolean"
+                    },
+                    "render_reactions": {
+                        "type": "boolean"
+                    },
+                    "restricted_guilds": {
+                        "type": "array",
+                        "items": {
+                            "type": "string"
+                        }
+                    },
+                    "show_current_game": {
+                        "type": "boolean"
+                    },
+                    "status": {
+                        "enum": [
+                            "dnd",
+                            "idle",
+                            "invisible",
+                            "offline",
+                            "online"
+                        ],
+                        "type": "string"
+                    },
+                    "stream_notifications_enabled": {
+                        "type": "boolean"
+                    },
+                    "theme": {
+                        "enum": [
+                            "dark",
+                            "light"
+                        ],
+                        "type": "string"
+                    },
+                    "timezone_offset": {
+                        "type": "integer"
+                    }
+                }
+            },
+            "VoiceStateUpdateSchema": {
+                "type": "object",
+                "properties": {
+                    "guild_id": {
+                        "type": "string"
+                    },
+                    "channel_id": {
+                        "type": "string"
+                    },
+                    "self_mute": {
+                        "type": "boolean"
+                    },
+                    "self_deaf": {
+                        "type": "boolean"
+                    },
+                    "self_video": {
+                        "type": "boolean"
+                    },
+                    "preferred_region": {
+                        "type": "string"
+                    },
+                    "request_to_speak_timestamp": {
+                        "type": "string",
+                        "format": "date-time"
+                    },
+                    "suppress": {
+                        "type": "boolean"
+                    }
+                },
+                "required": [
+                    "self_deaf",
+                    "self_mute"
+                ]
+            },
+            "VoiceVideoSchema": {
+                "type": "object",
+                "properties": {
+                    "audio_ssrc": {
+                        "type": "integer"
+                    },
+                    "video_ssrc": {
+                        "type": "integer"
+                    },
+                    "rtx_ssrc": {
+                        "type": "integer"
+                    },
+                    "user_id": {
+                        "type": "string"
+                    },
+                    "streams": {
+                        "type": "array",
+                        "items": {
+                            "type": "object",
+                            "properties": {
+                                "type": {
+                                    "enum": [
+                                        "audio",
+                                        "video"
+                                    ],
+                                    "type": "string"
+                                },
+                                "rid": {
+                                    "type": "string"
+                                },
+                                "ssrc": {
+                                    "type": "integer"
+                                },
+                                "active": {
+                                    "type": "boolean"
+                                },
+                                "quality": {
+                                    "type": "integer"
+                                },
+                                "rtx_ssrc": {
+                                    "type": "integer"
+                                },
+                                "max_bitrate": {
+                                    "type": "integer"
+                                },
+                                "max_framerate": {
+                                    "type": "integer"
+                                },
+                                "max_resolution": {
+                                    "type": "object",
+                                    "properties": {
+                                        "type": {
+                                            "type": "string"
+                                        },
+                                        "width": {
+                                            "type": "integer"
+                                        },
+                                        "height": {
+                                            "type": "integer"
+                                        }
+                                    },
+                                    "additionalProperties": false,
+                                    "required": [
+                                        "height",
+                                        "type",
+                                        "width"
+                                    ]
+                                }
+                            },
+                            "additionalProperties": false,
+                            "required": [
+                                "active",
+                                "max_bitrate",
+                                "max_framerate",
+                                "max_resolution",
+                                "quality",
+                                "rid",
+                                "rtx_ssrc",
+                                "ssrc",
+                                "type"
+                            ]
+                        }
+                    }
+                },
+                "required": [
+                    "audio_ssrc",
+                    "video_ssrc"
+                ]
+            },
+            "GuildUpdateSchema": {
+                "type": "object",
+                "properties": {
+                    "name": {
+                        "type": "string"
+                    },
+                    "banner": {
+                        "type": "string",
+                        "nullable": true
+                    },
+                    "splash": {
+                        "type": "string",
+                        "nullable": true
+                    },
+                    "description": {
+                        "type": "string"
+                    },
+                    "features": {
+                        "type": "array",
+                        "items": {
+                            "type": "string"
+                        }
+                    },
+                    "verification_level": {
+                        "type": "integer"
+                    },
+                    "default_message_notifications": {
+                        "type": "integer"
+                    },
+                    "system_channel_flags": {
+                        "type": "integer"
+                    },
+                    "explicit_content_filter": {
+                        "type": "integer"
+                    },
+                    "public_updates_channel_id": {
+                        "type": "string"
+                    },
+                    "afk_timeout": {
+                        "type": "integer"
+                    },
+                    "afk_channel_id": {
+                        "type": "string"
+                    },
+                    "preferred_locale": {
+                        "type": "string"
+                    },
+                    "premium_progress_bar_enabled": {
+                        "type": "boolean"
+                    },
+                    "discovery_splash": {
+                        "type": "string"
+                    },
+                    "region": {
+                        "type": "string"
+                    },
+                    "icon": {
+                        "type": "string",
+                        "nullable": true
+                    },
+                    "guild_template_code": {
+                        "type": "string"
+                    },
+                    "system_channel_id": {
+                        "type": "string"
+                    },
+                    "rules_channel_id": {
+                        "type": "string"
+                    }
+                }
+            },
+            "ChannelPermissionOverwriteSchema": {
+                "type": "object",
+                "properties": {
+                    "allow": {
+                        "type": "string"
+                    },
+                    "deny": {
+                        "type": "string"
+                    },
+                    "id": {
+                        "type": "string"
+                    },
+                    "type": {
+                        "$ref": "#/components/schemas/ChannelPermissionOverwriteType"
+                    }
+                },
+                "required": [
+                    "allow",
+                    "deny",
+                    "id",
+                    "type"
+                ]
+            },
+            "UserGuildSettingsSchema": {
+                "type": "object",
+                "properties": {
+                    "channel_overrides": {
+                        "type": "object",
+                        "additionalProperties": {
+                            "$ref": "#/components/schemas/Partial<ChannelOverride>"
+                        }
+                    },
+                    "version": {
+                        "type": "integer"
+                    },
+                    "guild_id": {
+                        "type": "string",
+                        "nullable": true
+                    },
+                    "flags": {
+                        "type": "integer"
+                    },
+                    "message_notifications": {
+                        "type": "integer"
+                    },
+                    "mobile_push": {
+                        "type": "boolean"
+                    },
+                    "mute_config": {
+                        "anyOf": [
+                            {
+                                "$ref": "#/components/schemas/MuteConfig"
+                            },
+                            {
+                                "type": "null"
+                            }
+                        ]
+                    },
+                    "muted": {
+                        "type": "boolean"
+                    },
+                    "suppress_everyone": {
+                        "type": "boolean"
+                    },
+                    "suppress_roles": {
+                        "type": "boolean"
+                    },
+                    "mute_scheduled_events": {
+                        "type": "boolean"
+                    },
+                    "hide_muted_channels": {
+                        "type": "boolean"
+                    },
+                    "notify_highlights": {
+                        "enum": [
+                            0
+                        ],
+                        "type": "number"
+                    }
+                }
+            },
+            "RolePositionUpdateSchema": {
+                "type": "array",
+                "items": {
+                    "type": "object",
+                    "properties": {
+                        "id": {
+                            "type": "string"
+                        },
+                        "position": {
+                            "type": "integer"
+                        }
+                    },
+                    "additionalProperties": false,
+                    "required": [
+                        "id",
+                        "position"
+                    ]
+                }
+            },
+            "ChannelReorderSchema": {
+                "type": "array",
+                "items": {
+                    "type": "object",
+                    "properties": {
+                        "id": {
+                            "type": "string"
+                        },
+                        "position": {
+                            "type": "integer"
+                        },
+                        "lock_permissions": {
+                            "type": "boolean"
+                        },
+                        "parent_id": {
+                            "type": "string"
+                        }
+                    },
+                    "additionalProperties": false,
+                    "required": [
+                        "id"
+                    ]
+                }
+            },
+            "BotModifySchema": {
+                "type": "object",
+                "properties": {
+                    "avatar": {
+                        "type": "string"
+                    },
+                    "username": {
+                        "type": "string"
+                    }
+                }
+            },
+            "ApplicationModifySchema": {
+                "type": "object",
+                "properties": {
+                    "description": {
+                        "type": "string"
+                    },
+                    "icon": {
+                        "type": "string"
+                    },
+                    "interactions_endpoint_url": {
+                        "type": "string"
+                    },
+                    "max_participants": {
+                        "type": "integer",
+                        "nullable": true
+                    },
+                    "name": {
+                        "type": "string"
+                    },
+                    "privacy_policy_url": {
+                        "type": "string"
+                    },
+                    "role_connections_verification_url": {
+                        "type": "string"
+                    },
+                    "tags": {
+                        "type": "array",
+                        "items": {
+                            "type": "string"
+                        }
+                    },
+                    "terms_of_service_url": {
+                        "type": "string"
+                    },
+                    "bot_public": {
+                        "type": "boolean"
+                    },
+                    "bot_require_code_grant": {
+                        "type": "boolean"
+                    },
+                    "flags": {
+                        "type": "integer"
+                    }
+                }
+            },
+            "ApplicationCreateSchema": {
+                "type": "object",
+                "properties": {
+                    "name": {
+                        "type": "string"
+                    },
+                    "team_id": {
+                        "type": [
+                            "string",
+                            "integer"
+                        ]
+                    }
+                },
+                "required": [
+                    "name"
+                ]
+            },
+            "ApplicationAuthorizeSchema": {
+                "type": "object",
+                "properties": {
+                    "authorize": {
+                        "type": "boolean"
+                    },
+                    "guild_id": {
+                        "type": "string"
+                    },
+                    "permissions": {
+                        "type": "string"
+                    },
+                    "captcha_key": {
+                        "type": "string"
+                    },
+                    "code": {
+                        "type": "string"
+                    }
+                },
+                "required": [
+                    "authorize",
+                    "guild_id",
+                    "permissions"
+                ]
+            },
+            "BulkDeleteSchema": {
+                "type": "object",
+                "properties": {
+                    "messages": {
+                        "type": "array",
+                        "items": {
+                            "type": "string"
+                        }
+                    }
+                },
+                "required": [
+                    "messages"
+                ]
+            },
+            "MemberNickChangeSchema": {
+                "type": "object",
+                "properties": {
+                    "nick": {
+                        "type": "string"
+                    }
+                },
+                "required": [
+                    "nick"
+                ]
+            },
+            "PruneSchema": {
+                "type": "object",
+                "properties": {
+                    "days": {
+                        "type": "integer"
+                    }
+                },
+                "required": [
+                    "days"
+                ]
+            }
+        }
+    },
+    "tags": [
+        {
+            "name": "voice"
+        },
+        {
+            "name": "users"
+        },
+        {
+            "name": "updates"
+        },
+        {
+            "name": "track"
+        },
+        {
+            "name": "teams"
+        },
+        {
+            "name": "store"
+        },
+        {
+            "name": "stop"
+        },
+        {
+            "name": "stickers"
+        },
+        {
+            "name": "sticker-packs"
+        },
+        {
+            "name": "stage-instances"
+        },
+        {
+            "name": "science"
+        },
+        {
+            "name": "scheduled-maintenances"
+        },
+        {
+            "name": "policies"
+        },
+        {
+            "name": "ping"
+        },
+        {
+            "name": "partners"
+        },
+        {
+            "name": "outbound-promotions"
+        },
+        {
+            "name": "oauth2"
+        },
+        {
+            "name": "invites"
+        },
+        {
+            "name": "guilds"
+        },
+        {
+            "name": "guild-recommendations"
+        },
+        {
+            "name": "gifs"
+        },
+        {
+            "name": "gateway"
+        },
+        {
+            "name": "experiments"
+        },
+        {
+            "name": "download"
+        },
+        {
+            "name": "discovery"
+        },
+        {
+            "name": "discoverable-guilds"
+        },
+        {
+            "name": "channels"
+        },
+        {
+            "name": "auth"
+        },
+        {
+            "name": "applications"
+        },
+        {
+            "name": "-"
+        }
+    ],
+    "paths": {
+        "/voice/regions/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "voice"
+                ]
+            }
+        },
+        "/users/@me/settings/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            },
+            "patch": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/UserSettingsSchema"
+                            }
+                        }
+                    }
+                },
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/relationships/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            },
+            "post": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/RelationshipPostSchema"
+                            }
+                        }
+                    }
+                },
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/relationships/{id}": {
+            "put": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/RelationshipPutSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "id"
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            },
+            "delete": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "id"
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/notes/{id}": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "id"
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            },
+            "put": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "id"
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/mfa/totp/enable/": {
+            "post": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/TotpEnableSchema"
+                            }
+                        }
+                    }
+                },
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/mfa/totp/disable/": {
+            "post": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/TotpDisableSchema"
+                            }
+                        }
+                    }
+                },
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/mfa/codes/": {
+            "post": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/MfaCodesSchema"
+                            }
+                        }
+                    }
+                },
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/mfa/codes-verification/": {
+            "post": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/CodesVerificationSchema"
+                            }
+                        }
+                    }
+                },
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/library/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            },
+            "patch": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/UserModifySchema"
+                            }
+                        }
+                    }
+                },
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/guilds/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/guilds/{guild_id}": {
+            "delete": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/guilds/premium/subscription-slots/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/guilds/{guild_id}/settings/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            },
+            "patch": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/UserGuildSettingsSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/entitlements/gifts": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/email-settings/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/disable/": {
+            "post": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/devices/": {
+            "post": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/delete/": {
+            "post": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/connections/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/channels/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            },
+            "post": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/DmChannelCreateSchema"
+                            }
+                        }
+                    }
+                },
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/billing/subscriptions/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/billing/payment-sources/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/billing/country-code/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/applications/{app_id}/entitlements/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "app_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "app_id"
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/affinities/users/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/affinities/guilds/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/@me/activities/statistics/applications/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/{id}/relationships/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "content": {
+                            "application/json": {
+                                "schema": {
+                                    "$ref": "#/components/schemas/UserRelationsResponse"
+                                }
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "id"
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/{id}/profile/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "content": {
+                            "application/json": {
+                                "schema": {
+                                    "$ref": "#/components/schemas/UserProfileResponse"
+                                }
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "id"
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            },
+            "patch": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/UserProfileModifySchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "id"
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/users/{id}/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "id"
+                    }
+                ],
+                "tags": [
+                    "users"
+                ]
+            }
+        },
+        "/updates/": {
+            "get": {
+                "tags": [
+                    "updates"
+                ]
+            }
+        },
+        "/track/": {
+            "post": {
+                "tags": [
+                    "track"
+                ]
+            }
+        },
+        "/teams/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "teams"
+                ]
+            }
+        },
+        "/store/published-listings/skus/{id}": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "id"
+                    }
+                ],
+                "tags": [
+                    "store"
+                ]
+            }
+        },
+        "/store/published-listings/skus/{sku_id}/subscription-plans/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "sku_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "sku_id"
+                    }
+                ],
+                "tags": [
+                    "store"
+                ]
+            }
+        },
+        "/store/published-listings/applications/{id}": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "id"
+                    }
+                ],
+                "tags": [
+                    "store"
+                ]
+            }
+        },
+        "/store/published-listings/applications/{id}/subscription-plans/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "id"
+                    }
+                ],
+                "tags": [
+                    "store"
+                ]
+            }
+        },
+        "/stop/": {
+            "post": {
+                "x-right-required": "OPERATOR",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "stop"
+                ]
+            }
+        },
+        "/stickers/{sticker_id}/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "sticker_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "sticker_id"
+                    }
+                ],
+                "tags": [
+                    "stickers"
+                ]
+            }
+        },
+        "/sticker-packs/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "sticker-packs"
+                ]
+            }
+        },
+        "/stage-instances/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "stage-instances"
+                ]
+            }
+        },
+        "/science/": {
+            "post": {
+                "tags": [
+                    "science"
+                ]
+            }
+        },
+        "/scheduled-maintenances/upcoming_json/scheduled-maintenances/upcoming.json": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "scheduled-maintenances"
+                ]
+            }
+        },
+        "/policies/stats/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "policies"
+                ]
+            }
+        },
+        "/policies/instance/limits/": {
+            "get": {
+                "tags": [
+                    "policies"
+                ]
+            }
+        },
+        "/policies/instance/": {
+            "get": {
+                "tags": [
+                    "policies"
+                ]
+            }
+        },
+        "/policies/instance/domains/": {
+            "get": {
+                "tags": [
+                    "policies"
+                ]
+            }
+        },
+        "/ping/": {
+            "get": {
+                "tags": [
+                    "ping"
+                ]
+            }
+        },
+        "/partners/{guild_id}/requirements/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "partners"
+                ]
+            }
+        },
+        "/outbound-promotions/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "outbound-promotions"
+                ]
+            }
+        },
+        "/oauth2/tokens/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "oauth2"
+                ]
+            }
+        },
+        "/oauth2/authorize/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "oauth2"
+                ]
+            },
+            "post": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/ApplicationAuthorizeSchema"
+                            }
+                        }
+                    }
+                },
+                "tags": [
+                    "oauth2"
+                ]
+            }
+        },
+        "/invites/{code}": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "code",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "code"
+                    }
+                ],
+                "tags": [
+                    "invites"
+                ]
+            },
+            "post": {
+                "x-right-required": "USE_MASS_INVITES",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "code",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "code"
+                    }
+                ],
+                "tags": [
+                    "invites"
+                ]
+            },
+            "delete": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "code",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "code"
+                    }
+                ],
+                "tags": [
+                    "invites"
+                ]
+            }
+        },
+        "/guilds/templates/{code}": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "code",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "code"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "post": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/GuildTemplateCreateSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "code",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "code"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/": {
+            "post": {
+                "x-right-required": "CREATE_GUILDS",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/GuildCreateSchema"
+                            }
+                        }
+                    }
+                },
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/widget.png/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/widget.json/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/widget/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "patch": {
+                "x-permission-required": "MANAGE_GUILD",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/WidgetModifySchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/welcome-screen/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "patch": {
+                "x-permission-required": "MANAGE_GUILD",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/GuildUpdateWelcomeScreenSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/webhooks/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/voice-states/{user_id}/": {
+            "patch": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/VoiceStateUpdateSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "user_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "user_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/vanity-url/": {
+            "get": {
+                "x-permission-required": "MANAGE_GUILD",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "patch": {
+                "x-permission-required": "MANAGE_GUILD",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/VanityUrlSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/templates/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "post": {
+                "x-permission-required": "MANAGE_GUILD",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/TemplateCreateSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/templates/{code}": {
+            "delete": {
+                "x-permission-required": "MANAGE_GUILD",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "code",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "code"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "put": {
+                "x-permission-required": "MANAGE_GUILD",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "code",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "code"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "patch": {
+                "x-permission-required": "MANAGE_GUILD",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/TemplateModifySchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "code",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "code"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/stickers/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "post": {
+                "x-permission-required": "MANAGE_EMOJIS_AND_STICKERS",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/ModifyGuildStickerSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/stickers/{sticker_id}": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "sticker_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "sticker_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "patch": {
+                "x-permission-required": "MANAGE_EMOJIS_AND_STICKERS",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/ModifyGuildStickerSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "sticker_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "sticker_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "delete": {
+                "x-permission-required": "MANAGE_EMOJIS_AND_STICKERS",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "sticker_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "sticker_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/roles/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "post": {
+                "x-permission-required": "MANAGE_ROLES",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/RoleModifySchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "patch": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/RolePositionUpdateSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/roles/{role_id}/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "role_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "role_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "delete": {
+                "x-permission-required": "MANAGE_ROLES",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "role_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "role_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "patch": {
+                "x-permission-required": "MANAGE_ROLES",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/RoleModifySchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "role_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "role_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/regions/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/prune/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "post": {
+                "x-right-required": "KICK_BAN_MEMBERS",
+                "x-permission-required": "KICK_MEMBERS",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/profile/{member_id}": {
+            "patch": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/MemberChangeProfileSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "member_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "member_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/premium/subscriptions": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/messages/search/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/members/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/members/{member_id}/roles/{role_id}/": {
+            "delete": {
+                "x-permission-required": "MANAGE_ROLES",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "member_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "member_id"
+                    },
+                    {
+                        "name": "role_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "role_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "put": {
+                "x-permission-required": "MANAGE_ROLES",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "member_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "member_id"
+                    },
+                    {
+                        "name": "role_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "role_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/members/{member_id}/nick/": {
+            "patch": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/MemberNickChangeSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "member_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "member_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/members/{member_id}/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "member_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "member_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "patch": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/MemberChangeSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "member_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "member_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "put": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "member_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "member_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "delete": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "member_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "member_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/member-verification/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/invites/": {
+            "get": {
+                "x-permission-required": "MANAGE_GUILD",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/integrations/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "patch": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/GuildUpdateSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/emojis/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "post": {
+                "x-permission-required": "MANAGE_EMOJIS_AND_STICKERS",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/EmojiCreateSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/emojis/{emoji_id}": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "emoji_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "emoji_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "patch": {
+                "x-permission-required": "MANAGE_EMOJIS_AND_STICKERS",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/EmojiModifySchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "emoji_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "emoji_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "delete": {
+                "x-permission-required": "MANAGE_EMOJIS_AND_STICKERS",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "emoji_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "emoji_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/discovery-requirements/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/delete/": {
+            "post": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/channels/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "post": {
+                "x-permission-required": "MANAGE_CHANNELS",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/ChannelModifySchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "patch": {
+                "x-permission-required": "MANAGE_CHANNELS",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/ChannelReorderSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/bans/": {
+            "get": {
+                "x-permission-required": "BAN_MEMBERS",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/bans/{user}": {
+            "get": {
+                "x-permission-required": "BAN_MEMBERS",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "user",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "user"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/bans/{user_id}": {
+            "put": {
+                "x-permission-required": "BAN_MEMBERS",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/BanCreateSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "user_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "user_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            },
+            "delete": {
+                "x-permission-required": "BAN_MEMBERS",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    },
+                    {
+                        "name": "user_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "user_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/bans/@me": {
+            "put": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/BanCreateSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guilds/{guild_id}/audit-logs/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "guild_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "guild_id"
+                    }
+                ],
+                "tags": [
+                    "guilds"
+                ]
+            }
+        },
+        "/guild-recommendations/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "guild-recommendations"
+                ]
+            }
+        },
+        "/gifs/trending/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "gifs"
+                ]
+            }
+        },
+        "/gifs/trending-gifs/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "gifs"
+                ]
+            }
+        },
+        "/gifs/search/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "gifs"
+                ]
+            }
+        },
+        "/gateway/": {
+            "get": {
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "content": {
+                            "application/json": {
+                                "schema": {
+                                    "$ref": "#/components/schemas/GatewayResponse"
+                                }
+                            }
+                        }
+                    }
+                },
+                "tags": [
+                    "gateway"
+                ]
+            }
+        },
+        "/gateway/bot/": {
+            "get": {
+                "responses": {
+                    "200": {
+                        "description": "",
+                        "content": {
+                            "application/json": {
+                                "schema": {
+                                    "$ref": "#/components/schemas/GatewayBotResponse"
+                                }
+                            }
+                        }
+                    }
+                },
+                "tags": [
+                    "gateway"
+                ]
+            }
+        },
+        "/experiments/": {
+            "get": {
+                "tags": [
+                    "experiments"
+                ]
+            }
+        },
+        "/download/": {
+            "get": {
+                "tags": [
+                    "download"
+                ]
+            }
+        },
+        "/discovery/categories": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "discovery"
+                ]
+            }
+        },
+        "/discoverable-guilds/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "discoverable-guilds"
+                ]
+            }
+        },
+        "/channels/{channel_id}/webhooks/": {
+            "post": {
+                "x-permission-required": "MANAGE_WEBHOOKS",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/WebhookCreateSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            },
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            }
+        },
+        "/channels/{channel_id}/typing/": {
+            "post": {
+                "x-permission-required": "SEND_MESSAGES",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            }
+        },
+        "/channels/{channel_id}/recipients/{user_id}": {
+            "put": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    },
+                    {
+                        "name": "user_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "user_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            },
+            "delete": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    },
+                    {
+                        "name": "user_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "user_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            }
+        },
+        "/channels/{channel_id}/purge/": {
+            "post": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            }
+        },
+        "/channels/{channel_id}/pins/{message_id}": {
+            "put": {
+                "x-permission-required": "VIEW_CHANNEL",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    },
+                    {
+                        "name": "message_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "message_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            },
+            "delete": {
+                "x-permission-required": "VIEW_CHANNEL",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    },
+                    {
+                        "name": "message_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "message_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            }
+        },
+        "/channels/{channel_id}/pins/": {
+            "get": {
+                "x-permission-required": [
+                    "READ_MESSAGE_HISTORY"
+                ],
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            }
+        },
+        "/channels/{channel_id}/permissions/{overwrite_id}": {
+            "put": {
+                "x-permission-required": "MANAGE_ROLES",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/ChannelPermissionOverwriteSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    },
+                    {
+                        "name": "overwrite_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "overwrite_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            },
+            "delete": {
+                "x-permission-required": "MANAGE_ROLES",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    },
+                    {
+                        "name": "overwrite_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "overwrite_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            }
+        },
+        "/channels/{channel_id}/messages/bulk-delete/": {
+            "post": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/BulkDeleteSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            }
+        },
+        "/channels/{channel_id}/messages/{message_id}/reactions/": {
+            "delete": {
+                "x-permission-required": "MANAGE_MESSAGES",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    },
+                    {
+                        "name": "message_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "message_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            }
+        },
+        "/channels/{channel_id}/messages/{message_id}/reactions/{emoji}": {
+            "delete": {
+                "x-permission-required": "MANAGE_MESSAGES",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    },
+                    {
+                        "name": "message_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "message_id"
+                    },
+                    {
+                        "name": "emoji",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "emoji"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            },
+            "get": {
+                "x-permission-required": "VIEW_CHANNEL",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    },
+                    {
+                        "name": "message_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "message_id"
+                    },
+                    {
+                        "name": "emoji",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "emoji"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            }
+        },
+        "/channels/{channel_id}/messages/{message_id}/reactions/{emoji}/{user_id}": {
+            "put": {
+                "x-right-required": "SELF_ADD_REACTIONS",
+                "x-permission-required": "READ_MESSAGE_HISTORY",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    },
+                    {
+                        "name": "message_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "message_id"
+                    },
+                    {
+                        "name": "emoji",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "emoji"
+                    },
+                    {
+                        "name": "user_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "user_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            },
+            "delete": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    },
+                    {
+                        "name": "message_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "message_id"
+                    },
+                    {
+                        "name": "emoji",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "emoji"
+                    },
+                    {
+                        "name": "user_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "user_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            }
+        },
+        "/channels/{channel_id}/messages/{message_id}/": {
+            "patch": {
+                "x-right-required": "SEND_MESSAGES",
+                "x-permission-required": "SEND_MESSAGES",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/MessageCreateSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    },
+                    {
+                        "name": "message_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "message_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            },
+            "put": {
+                "x-right-required": "SEND_BACKDATED_EVENTS",
+                "x-permission-required": "SEND_MESSAGES",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/MessageCreateSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    },
+                    {
+                        "name": "message_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "message_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            },
+            "get": {
+                "x-permission-required": "VIEW_CHANNEL",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    },
+                    {
+                        "name": "message_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "message_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            },
+            "delete": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    },
+                    {
+                        "name": "message_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "message_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            }
+        },
+        "/channels/{channel_id}/messages/{message_id}/crosspost/": {
+            "post": {
+                "x-permission-required": "MANAGE_MESSAGES",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    },
+                    {
+                        "name": "message_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "message_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            }
+        },
+        "/channels/{channel_id}/messages/{message_id}/ack/": {
+            "post": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/MessageAcknowledgeSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    },
+                    {
+                        "name": "message_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "message_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            }
+        },
+        "/channels/{channel_id}/invites/": {
+            "post": {
+                "x-right-required": "CREATE_INVITES",
+                "x-permission-required": "CREATE_INSTANT_INVITE",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/InviteCreateSchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            },
+            "get": {
+                "x-permission-required": "MANAGE_CHANNELS",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            }
+        },
+        "/channels/{channel_id}/": {
+            "get": {
+                "x-permission-required": "VIEW_CHANNEL",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            },
+            "delete": {
+                "x-permission-required": "MANAGE_CHANNELS",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            },
+            "patch": {
+                "x-permission-required": "MANAGE_CHANNELS",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/ChannelModifySchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "channel_id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "channel_id"
+                    }
+                ],
+                "tags": [
+                    "channels"
+                ]
+            }
+        },
+        "/auth/verify/view-backup-codes-challenge/": {
+            "post": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/BackupCodesChallengeSchema"
+                            }
+                        }
+                    }
+                },
+                "tags": [
+                    "auth"
+                ]
+            }
+        },
+        "/auth/register/": {
+            "post": {
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/RegisterSchema"
+                            }
+                        }
+                    }
+                },
+                "tags": [
+                    "auth"
+                ]
+            }
+        },
+        "/auth/mfa/totp/": {
+            "post": {
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/TotpSchema"
+                            }
+                        }
+                    }
+                },
+                "tags": [
+                    "auth"
+                ]
+            }
+        },
+        "/auth/logout/": {
+            "post": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "auth"
+                ]
+            }
+        },
+        "/auth/login/": {
+            "post": {
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/LoginSchema"
+                            }
+                        }
+                    }
+                },
+                "tags": [
+                    "auth"
+                ]
+            }
+        },
+        "/auth/location-metadata/": {
+            "get": {
+                "tags": [
+                    "auth"
+                ]
+            }
+        },
+        "/auth/generate-registration-tokens/": {
+            "get": {
+                "x-right-required": "OPERATOR",
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "auth"
+                ]
+            }
+        },
+        "/applications/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "applications"
+                ]
+            },
+            "post": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/ApplicationCreateSchema"
+                            }
+                        }
+                    }
+                },
+                "tags": [
+                    "applications"
+                ]
+            }
+        },
+        "/applications/detectable/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "tags": [
+                    "applications"
+                ]
+            }
+        },
+        "/applications/{id}/skus/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "id"
+                    }
+                ],
+                "tags": [
+                    "applications"
+                ]
+            }
+        },
+        "/applications/{id}/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "id"
+                    }
+                ],
+                "tags": [
+                    "applications"
+                ]
+            },
+            "patch": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/ApplicationModifySchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "id"
+                    }
+                ],
+                "tags": [
+                    "applications"
+                ]
+            }
+        },
+        "/applications/{id}/delete": {
+            "post": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "id"
+                    }
+                ],
+                "tags": [
+                    "applications"
+                ]
+            }
+        },
+        "/applications/{id}/entitlements/": {
+            "get": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "id"
+                    }
+                ],
+                "tags": [
+                    "applications"
+                ]
+            }
+        },
+        "/applications/{id}/bot/": {
+            "post": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "id"
+                    }
+                ],
+                "tags": [
+                    "applications"
+                ]
+            },
+            "patch": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "requestBody": {
+                    "required": true,
+                    "content": {
+                        "application/json": {
+                            "schema": {
+                                "$ref": "#/components/schemas/BotModifySchema"
+                            }
+                        }
+                    }
+                },
+                "parameters": [
+                    {
+                        "name": "id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "id"
+                    }
+                ],
+                "tags": [
+                    "applications"
+                ]
+            }
+        },
+        "/applications/{id}/bot/reset": {
+            "post": {
+                "security": [
+                    {
+                        "bearer": true
+                    }
+                ],
+                "parameters": [
+                    {
+                        "name": "id",
+                        "in": "path",
+                        "required": true,
+                        "schema": {
+                            "type": "string"
+                        },
+                        "description": "id"
+                    }
+                ],
+                "tags": [
+                    "applications"
+                ]
+            }
+        },
+        "/-/readyz/": {
+            "get": {
+                "tags": [
+                    "-"
+                ]
+            }
+        },
+        "/-/healthz/": {
+            "get": {
+                "tags": [
+                    "-"
+                ]
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/package.json b/package.json
index 2dfdfcb4..1a6b9f6f 100644
--- a/package.json
+++ b/package.json
@@ -17,6 +17,7 @@
 		"generate:client": "node scripts/client.js",
 		"generate:changelog": "node scripts/changelog.js",
 		"generate:migration": "node -r dotenv/config -r module-alias/register node_modules/typeorm/cli.js migration:generate -d dist/util/util/Database.js",
+		"generate:openapi": "node scripts/openapi.js",
 		"migrate-from-staging": "node -r dotenv/config -r module-alias/register scripts/stagingMigration/index.js"
 	},
 	"main": "dist/bundle/index.js",
diff --git a/scripts/openapi.js b/scripts/openapi.js
new file mode 100644
index 00000000..6f066e94
--- /dev/null
+++ b/scripts/openapi.js
@@ -0,0 +1,169 @@
+require("module-alias/register");
+const getRouteDescriptions = require("./util/getRouteDescriptions");
+const path = require("path");
+const fs = require("fs");
+const {
+	NO_AUTHORIZATION_ROUTES,
+} = require("../dist/api/middlewares/Authentication");
+require("missing-native-js-functions");
+
+const openapiPath = path.join(__dirname, "..", "assets", "openapi.json");
+const SchemaPath = path.join(__dirname, "..", "assets", "schemas.json");
+const schemas = JSON.parse(fs.readFileSync(SchemaPath, { encoding: "utf8" }));
+const specification = JSON.parse(
+	fs.readFileSync(openapiPath, { encoding: "utf8" }),
+);
+
+function combineSchemas(schemas) {
+	var definitions = {};
+
+	for (const name in schemas) {
+		definitions = {
+			...definitions,
+			...schemas[name].definitions,
+			[name]: {
+				...schemas[name],
+				definitions: undefined,
+				$schema: undefined,
+			},
+		};
+	}
+
+	for (const key in definitions) {
+		specification.components = specification.components || {};
+		specification.components.schemas =
+			specification.components.schemas || {};
+		specification.components.schemas[key] = definitions[key];
+		delete definitions[key].additionalProperties;
+		delete definitions[key].$schema;
+		const definition = definitions[key];
+
+		if (typeof definition.properties === "object") {
+			for (const property of Object.values(definition.properties)) {
+				if (Array.isArray(property.type)) {
+					if (property.type.includes("null")) {
+						property.type = property.type.find((x) => x !== "null");
+						property.nullable = true;
+					}
+				}
+			}
+		}
+	}
+
+	return definitions;
+}
+
+function getTag(key) {
+	return key.match(/\/([\w-]+)/)[1];
+}
+
+function apiRoutes() {
+	const routes = getRouteDescriptions();
+
+	const tags = Array.from(routes.keys()).map((x) => getTag(x));
+	specification.tags = specification.tags || [];
+	specification.tags = [...specification.tags.map((x) => x.name), ...tags]
+		.unique()
+		.map((x) => ({ name: x }));
+
+	specification.components = specification.components || {};
+	specification.components.securitySchemes = {
+		bearer: {
+			type: "http",
+			scheme: "bearer",
+			description: "Bearer/Bot prefixes are not required.",
+		},
+	};
+
+	routes.forEach((route, pathAndMethod) => {
+		const [p, method] = pathAndMethod.split("|");
+		const path = p.replace(/:(\w+)/g, "{$1}");
+
+		specification.paths = specification.paths || {};
+		let obj = specification.paths[path]?.[method] || {};
+		obj["x-right-required"] = route.right;
+		obj["x-permission-required"] = route.permission;
+		obj["x-fires-event"] = route.test?.event;
+
+		if (
+			!NO_AUTHORIZATION_ROUTES.some((x) => {
+				if (typeof x === "string") return path.startsWith(x);
+				return x.test(path);
+			})
+		) {
+			obj.security = [{ bearer: true }];
+		}
+
+		if (route.body) {
+			obj.requestBody = {
+				required: true,
+				content: {
+					"application/json": {
+						schema: { $ref: `#/components/schemas/${route.body}` },
+					},
+				},
+			}.merge(obj.requestBody);
+		}
+
+		if (route.test?.response) {
+			const status = route.test.response.status || 200;
+			let schema = {
+				allOf: [
+					{
+						$ref: `#/components/schemas/${route.test.response.body}`,
+					},
+					{
+						example: route.test.body,
+					},
+				],
+			};
+			if (!route.test.body) schema = schema.allOf[0];
+
+			obj.responses = {
+				[status]: {
+					...(route.test.response.body
+						? {
+								description:
+									obj?.responses?.[status]?.description || "",
+								content: {
+									"application/json": {
+										schema: schema,
+									},
+								},
+						  }
+						: {}),
+				},
+			}.merge(obj.responses);
+			delete obj.responses.default;
+		}
+		if (p.includes(":")) {
+			obj.parameters = p.match(/:\w+/g)?.map((x) => ({
+				name: x.replace(":", ""),
+				in: "path",
+				required: true,
+				schema: { type: "string" },
+				description: x.replace(":", ""),
+			}));
+		}
+		obj.tags = [...(obj.tags || []), getTag(p)].unique();
+
+		specification.paths[path] = {
+			...specification.paths[path],
+			[method]: obj,
+		};
+	});
+}
+
+function main() {
+	combineSchemas(schemas);
+	apiRoutes();
+
+	fs.writeFileSync(
+		openapiPath,
+		JSON.stringify(specification, null, 4)
+			.replaceAll("#/definitions", "#/components/schemas")
+			.replaceAll("bigint", "number"),
+	);
+}
+
+main();
diff --git a/scripts/util/getRouteDescriptions.js b/scripts/util/getRouteDescriptions.js
new file mode 100644
index 00000000..21c36ca7
--- /dev/null
+++ b/scripts/util/getRouteDescriptions.js
@@ -0,0 +1,63 @@
+const { traverseDirectory } = require("lambert-server");
+const path = require("path");
+const express = require("express");
+const RouteUtility = require("../../dist/api/util/handlers/route.js");
+const Router = express.Router;
+
+const routes = new Map();
+let currentPath = "";
+let currentFile = "";
+const methods = ["get", "post", "put", "delete", "patch"];
+
+function registerPath(file, method, prefix, path, ...args) {
+	const urlPath = prefix + path;
+	const sourceFile = file.replace("/dist/", "/src/").replace(".js", ".ts");
+	const opts = args.find((x) => typeof x === "object");
+	if (opts) {
+		routes.set(urlPath + "|" + method, opts); // @ts-ignore
+		opts.file = sourceFile;
+		// console.log(method, urlPath, opts);
+	} else {
+		console.log(
+			`${sourceFile}\nrouter.${method}("${path}") is missing the "route()" description middleware\n`,
+		);
+	}
+}
+
+function routeOptions(opts) {
+	return opts;
+}
+
+// @ts-ignore
+RouteUtility.route = routeOptions;
+
+express.Router = (opts) => {
+	const path = currentPath;
+	const file = currentFile;
+	const router = Router(opts);
+
+	for (const method of methods) {
+		router[method] = registerPath.bind(null, file, method, path);
+	}
+
+	return router;
+};
+
+module.exports = function getRouteDescriptions() {
+	const root = path.join(__dirname, "..", "..", "dist", "api", "routes", "/");
+	traverseDirectory({ dirname: root, recursive: true }, (file) => {
+		currentFile = file;
+		let path = file.replace(root.slice(0, -1), "");
+		path = path.split(".").slice(0, -1).join("."); // trancate .js/.ts file extension of path
+		path = path.replaceAll("#", ":").replaceAll("\\", "/"); // replace # with : for path parameters and windows paths with slashes
+		if (path.endsWith("/index")) path = path.slice(0, "/index".length * -1); // delete index from path
+		currentPath = path;
+
+		try {
+			require(file);
+		} catch (error) {
+			console.error("error loading file " + file, error);
+		}
+	});
+	return routes;
+};