diff --git a/api/assets/openapi.json b/api/assets/openapi.json
new file mode 100644
index 00000000..60a40c8a
--- /dev/null
+++ b/api/assets/openapi.json
@@ -0,0 +1,1625 @@
+{
+ "openapi": "3.0.0",
+ "servers": [
+ {
+ "url": "https://api.fosscord.com/v{version}",
+ "description": "Official fosscord instance",
+ "variables": { "version": { "description": "", "default": "9", "enum": ["8", "9"] } }
+ }
+ ],
+ "info": {
+ "description": "Fosscord is a free open source selfhostable chat, voice and video discord compatible platform",
+ "version": "1.0.0",
+ "title": "Swagger Petstore",
+ "termsOfService": "",
+ "contact": { "name": "Fosscord" },
+ "license": { "name": "AGPLV3", "url": "https://www.gnu.org/licenses/agpl-3.0.en.html" }
+ },
+ "tags": [],
+ "paths": {
+ "/users/{id}": {
+ "get": {
+ "summary": "",
+ "description": "",
+ "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" } } }
+ },
+ "401": {
+ "description": "Unauthorized",
+ "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } }
+ },
+ "429": {
+ "description": "Rate limit exceeded",
+ "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Error" } } },
+ "headers": {
+ "X-RateLimit-Bucket": {
+ "description": "A unique string denoting the rate limit being encountered (non-inclusive of major parameters in the route path)",
+ "schema": { "type": "string" }
+ },
+ "X-Rate-Limit-Limit": {
+ "description": "The number of allowed requests in the current period",
+ "schema": { "type": "integer" }
+ },
+ "X-Rate-Limit-Remaining": {
+ "description": "The number of remaining requests in the current period",
+ "schema": { "type": "integer" }
+ },
+ "X-Rate-Limit-Reset": {
+ "description": "Date when current period is over in seconds since the Unix epoch",
+ "schema": { "type": "integer" }
+ },
+ "X-Rate-Limit-Reset-After": {
+ "description": "Number of seconds when current period will reset (can have decimal)",
+ "schema": { "type": "number" }
+ },
+ "Retry-After": {
+ "description": "Same as X-Rate-Limit-Reset-After but an integer",
+ "schema": { "type": "integer" }
+ },
+ "X-RateLimit-Global": {
+ "description": "Indicates whether or not all requests from your ip are rate limited",
+ "schema": { "type": "boolean" }
+ }
+ }
+ }
+ }
+ }
+ }
+ },
+ "externalDocs": { "description": "", "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": { "$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"]
+ },
+ "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": { "$ref": "#/components/schemas/EmbedType" },
+ "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": "string" },
+ "avatar": { "type": "string" },
+ "accent_color": { "type": "integer" },
+ "banner": { "type": "string" },
+ "bio": { "type": "string" },
+ "bot": { "type": "boolean" }
+ },
+ "required": ["bio", "bot", "discriminator", "id", "public_flags", "username"]
+ }
+ },
+ "requestBodies": {
+ "BanCreateSchema": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "properties": { "delete_message_days": { "type": "string" }, "reason": { "type": "string" } }
+ }
+ }
+ },
+ "description": ""
+ },
+ "DmChannelCreateSchema": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "properties": {
+ "name": { "type": "string" },
+ "recipients": { "type": "array", "items": { "type": "string" } }
+ },
+ "required": ["recipients"]
+ }
+ }
+ },
+ "description": ""
+ },
+ "ChannelModifySchema": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "properties": {
+ "name": { "type": "string" },
+ "type": { "type": "integer" },
+ "topic": { "type": "string" },
+ "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": { "type": "integer" },
+ "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" }
+ },
+ "required": ["name", "type"]
+ }
+ }
+ },
+ "description": ""
+ },
+ "ChannelGuildPositionUpdateSchema": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": { "id": { "type": "string" }, "position": { "type": "integer" } },
+ "additionalProperties": false,
+ "required": ["id"]
+ }
+ }
+ }
+ },
+ "description": ""
+ },
+ "EmojiCreateSchema": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "properties": {
+ "name": { "type": "string" },
+ "image": { "type": "string" },
+ "roles": { "type": "array", "items": { "type": "string" } }
+ },
+ "required": ["image", "name"]
+ }
+ }
+ },
+ "description": ""
+ },
+ "GuildCreateSchema": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "properties": {
+ "name": { "type": "string" },
+ "region": { "type": "string" },
+ "icon": { "type": "string" },
+ "channels": { "type": "array", "items": { "$ref": "#/components/requestBodies/ChannelModifySchema" } },
+ "guild_template_code": { "type": "string" },
+ "system_channel_id": { "type": "string" },
+ "rules_channel_id": { "type": "string" }
+ },
+ "required": ["name"]
+ }
+ }
+ },
+ "description": ""
+ },
+ "GuildUpdateSchema": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "properties": {
+ "banner": { "type": "string" },
+ "splash": { "type": "string" },
+ "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": { "type": "string" },
+ "region": { "type": "string" },
+ "icon": { "type": "string" },
+ "guild_template_code": { "type": "string" },
+ "system_channel_id": { "type": "string" },
+ "rules_channel_id": { "type": "string" }
+ },
+ "required": ["name"]
+ }
+ }
+ },
+ "description": ""
+ },
+ "GuildTemplateCreateSchema": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "properties": { "name": { "type": "string" }, "avatar": { "type": "string" } },
+ "required": ["name"]
+ }
+ }
+ },
+ "description": ""
+ },
+ "GuildUpdateWelcomeScreenSchema": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "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" }
+ }
+ }
+ }
+ },
+ "description": ""
+ },
+ "Number": { "content": { "application/json": { "schema": { "type": "object" } } }, "description": "" },
+ "Boolean": { "content": { "application/json": { "schema": { "type": "object" } } }, "description": "" },
+ "InviteCreateSchema": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "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" }
+ }
+ }
+ }
+ },
+ "description": ""
+ },
+ "MemberCreateSchema": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "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"]
+ }
+ }
+ },
+ "description": ""
+ },
+ "MemberNickChangeSchema": {
+ "content": {
+ "application/json": {
+ "schema": { "type": "object", "properties": { "nick": { "type": "string" } }, "required": ["nick"] }
+ }
+ },
+ "description": ""
+ },
+ "MemberChangeSchema": {
+ "content": {
+ "application/json": {
+ "schema": { "type": "object", "properties": { "roles": { "type": "array", "items": { "type": "string" } } } }
+ }
+ },
+ "description": ""
+ },
+ "EmbedType": {
+ "content": {
+ "application/json": { "schema": { "enum": ["article", "gifv", "image", "link", "rich", "video"], "type": "string" } }
+ },
+ "description": ""
+ },
+ "EmbedImage": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "properties": {
+ "url": { "type": "string" },
+ "proxy_url": { "type": "string" },
+ "height": { "type": "integer" },
+ "width": { "type": "integer" }
+ }
+ }
+ }
+ },
+ "description": ""
+ },
+ "MessageCreateSchema": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "properties": {
+ "content": { "type": "string" },
+ "nonce": { "type": "string" },
+ "tts": { "type": "boolean" },
+ "flags": { "type": "string" },
+ "embed": {
+ "additionalProperties": false,
+ "type": "object",
+ "properties": {
+ "title": { "type": "string" },
+ "type": { "$ref": "#/components/requestBodies/EmbedType" },
+ "description": { "type": "string" },
+ "url": { "type": "string" },
+ "timestamp": { "type": "string" },
+ "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/requestBodies/EmbedImage" },
+ "thumbnail": { "$ref": "#/components/requestBodies/EmbedImage" },
+ "video": { "$ref": "#/components/requestBodies/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"]
+ }
+ }
+ }
+ },
+ "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": {}
+ }
+ }
+ }
+ },
+ "description": ""
+ },
+ "RoleModifySchema": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "properties": {
+ "name": { "type": "string" },
+ "permissions": { "type": "number" },
+ "color": { "type": "integer" },
+ "hoist": { "type": "boolean" },
+ "mentionable": { "type": "boolean" },
+ "position": { "type": "integer" }
+ }
+ }
+ }
+ },
+ "description": ""
+ },
+ "TemplateCreateSchema": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "properties": { "name": { "type": "string" }, "description": { "type": "string" } },
+ "required": ["name"]
+ }
+ }
+ },
+ "description": ""
+ },
+ "TemplateModifySchema": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "properties": { "name": { "type": "string" }, "description": { "type": "string" } },
+ "required": ["name"]
+ }
+ }
+ },
+ "description": ""
+ },
+ "UserModifySchema": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "properties": {
+ "username": { "type": "string" },
+ "avatar": { "type": "string" },
+ "bio": { "type": "string" },
+ "accent_color": { "type": "integer" },
+ "banner": { "type": "string" },
+ "password": { "type": "string" },
+ "new_password": { "type": "string" },
+ "code": { "type": "string" }
+ }
+ }
+ }
+ },
+ "description": ""
+ },
+ "UserSettingsSchema": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "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"
+ ]
+ }
+ }
+ },
+ "description": ""
+ },
+ "WidgetModifySchema": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "type": "object",
+ "properties": { "enabled": { "type": "boolean" }, "channel_id": { "type": "string" } },
+ "required": ["channel_id", "enabled"]
+ }
+ }
+ },
+ "description": ""
+ }
+ },
+ "securitySchemes": { "authorization": { "type": "oauth2" } },
+ "links": {},
+ "callbacks": {}
+ },
+ "security": [{ "authorization": [] }]
+}
|