diff --git a/api/assets/openapi.json b/api/assets/openapi.json
index caf572b9..a92fe706 100644
--- a/api/assets/openapi.json
+++ b/api/assets/openapi.json
@@ -1,5995 +1,6598 @@
{
- "openapi": "3.0.0",
- "servers": [
- {
- "url": "https://api.fosscord.com/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": "voice"
- },
- {
- "name": "users"
- },
- {
- "name": "store"
- },
- {
- "name": "sticker-packs"
- },
- {
- "name": "science"
- },
- {
- "name": "ping"
- },
- {
- "name": "outbound-promotions"
- },
- {
- "name": "invites"
- },
- {
- "name": "guilds"
- },
- {
- "name": "gateway"
- },
- {
- "name": "experiments"
- },
- {
- "name": "discoverable-guilds"
- },
- {
- "name": "channels"
- },
- {
- "name": "auth"
- },
- {
- "name": "applications"
- }
- ],
- "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"
- },
- "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"
- },
- "verifie": {
- "type": "boolean"
- },
- "visibility": {
- "type": "integer"
- },
- "id": {
- "type": "string"
- }
- },
- "required": [
- "access_token",
- "friend_sync",
- "id",
- "name",
- "revoked",
- "show_activity",
- "type",
- "user",
- "user_id",
- "verifie",
- "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"],
- "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": "integer"
- },
- "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"],
- "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://api.fosscord.com/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": "voice"
+ },
+ {
+ "name": "users"
+ },
+ {
+ "name": "store"
+ },
+ {
+ "name": "sticker-packs"
+ },
+ {
+ "name": "science"
+ },
+ {
+ "name": "ping"
+ },
+ {
+ "name": "outbound-promotions"
+ },
+ {
+ "name": "invites"
+ },
+ {
+ "name": "guilds"
+ },
+ {
+ "name": "gateway"
+ },
+ {
+ "name": "experiments"
+ },
+ {
+ "name": "discoverable-guilds"
+ },
+ {
+ "name": "channels"
+ },
+ {
+ "name": "auth"
+ },
+ {
+ "name": "applications"
+ }
+ ],
+ "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"
+ },
+ "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"
+ },
+ "verifie": {
+ "type": "boolean"
+ },
+ "visibility": {
+ "type": "integer"
+ },
+ "id": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "access_token",
+ "friend_sync",
+ "id",
+ "name",
+ "revoked",
+ "show_activity",
+ "type",
+ "user",
+ "user_id",
+ "verifie",
+ "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"
+ ],
+ "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": "integer"
+ },
+ "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"
+ ],
+ "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": {}
+ }
+}
\ No newline at end of file
diff --git a/api/tests/routes.test.ts b/api/tests/routes.test.ts
index a9c75df1..fcaa3124 100644
--- a/api/tests/routes.test.ts
+++ b/api/tests/routes.test.ts
@@ -7,7 +7,7 @@ import fs from "fs";
import Ajv from "ajv";
import addFormats from "ajv-formats";
import fetch from "node-fetch";
-import { User } from "@fosscord/util";
+import { Event, User, events } from "@fosscord/util";
const SchemaPath = join(__dirname, "..", "assets", "schemas.json");
const schemas = JSON.parse(fs.readFileSync(SchemaPath, { encoding: "utf8" }));
@@ -58,6 +58,12 @@ beforeAll(async (done) => {
}
});
+const emit = events.emit;
+events.emit = (event: string | symbol, ...args: any[]) => {
+ events.emit("event", args[0]);
+ return emit(event, ...args);
+};
+
describe("Automatic unit tests with route description middleware", () => {
const routes = getRouteDescriptions();
@@ -77,6 +83,23 @@ describe("Automatic unit tests with route description middleware", () => {
}
var body = "";
+ let eventEmitted = Promise.resolve();
+
+ if (route.test.event) {
+ if (!Array.isArray(route.test.event)) route.test.event = [route.test.event];
+
+ eventEmitted = new Promise((resolve, reject) => {
+ const timeout = setTimeout(() => reject, 1000);
+ const received = [];
+
+ events.on("event", (event: Event) => {
+ if (!route.test.event.includes(event.event)) return;
+
+ received.push(event.event);
+ if (received.length === route.test.event.length) resolve();
+ });
+ });
+ }
try {
const response = await fetch(`http://localhost:3001/api${urlPath}`, {
@@ -101,6 +124,12 @@ describe("Automatic unit tests with route description middleware", () => {
return done(error);
}
+ try {
+ await eventEmitted;
+ } catch (error) {
+ return done(new Error(`Event ${route.test.event} was not emitted`));
+ }
+
return done();
});
});
diff --git a/util/src/util/Event.ts b/util/src/util/Event.ts
index 765e5fc7..bf9547b1 100644
--- a/util/src/util/Event.ts
+++ b/util/src/util/Event.ts
@@ -2,7 +2,7 @@ import { Channel } from "amqplib";
import { RabbitMQ } from "./RabbitMQ";
import EventEmitter from "events";
import { EVENT, Event } from "../interfaces";
-const events = new EventEmitter();
+export const events = new EventEmitter();
export async function emitEvent(payload: Omit<Event, "created_at">) {
const id = (payload.channel_id || payload.user_id || payload.guild_id) as string;
|