diff --git a/assets/locales/en/auth.json b/assets/locales/en/auth.json
index 2415c657..a4595662 100644
--- a/assets/locales/en/auth.json
+++ b/assets/locales/en/auth.json
@@ -15,7 +15,8 @@
"CONSENT_REQUIRED": "You must agree to the Terms of Service and Privacy Policy.",
"USERNAME_TOO_MANY_USERS": "Too many users have this username, please try another",
"GUESTS_DISABLED": "Guest users are disabled",
- "TOO_MANY_REGISTRATIONS": "Too many registrations, please try again later"
+ "TOO_MANY_REGISTRATIONS": "Too many registrations, please try again later",
+ "UNIQUE_USERNAMES_DISABLED": "The Unique Usernames feature is disabled on this instance"
},
"password_reset": {
"EMAIL_DOES_NOT_EXIST": "Email does not exist.",
diff --git a/assets/openapi.json b/assets/openapi.json
index 7b2243e9..c3e1419d 100644
--- a/assets/openapi.json
+++ b/assets/openapi.json
@@ -3499,9 +3499,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -6014,6 +6011,17 @@
}
}
},
+ "UsernameAttemptUnauthedSchema": {
+ "type": "object",
+ "properties": {
+ "username": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "username"
+ ]
+ },
"VanityUrlSchema": {
"type": "object",
"properties": {
@@ -7040,9 +7048,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -7163,9 +7168,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -8025,6 +8027,17 @@
"days"
]
},
+ "UsernameAttemptResponse": {
+ "type": "object",
+ "properties": {
+ "taken": {
+ "type": "boolean"
+ }
+ },
+ "required": [
+ "taken"
+ ]
+ },
"VerifyEmailSchema": {
"type": "object",
"properties": {
@@ -8131,6 +8144,9 @@
"name": "track"
},
{
+ "name": "unique-username"
+ },
+ {
"name": "updates"
},
{
@@ -9775,6 +9791,85 @@
]
}
},
+ "/unique-username/username-suggestions-unauthed/": {
+ "get": {
+ "security": [
+ {
+ "bearer": []
+ }
+ ],
+ "responses": {
+ "400": {
+ "description": "",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/APIErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "parameters": [
+ {
+ "name": "global_name",
+ "in": "query",
+ "required": false,
+ "schema": {
+ "type": "string"
+ }
+ }
+ ],
+ "tags": [
+ "unique-username"
+ ]
+ }
+ },
+ "/unique-username/username-attempt-unauthed/": {
+ "post": {
+ "security": [
+ {
+ "bearer": []
+ }
+ ],
+ "description": "Check if a username is available",
+ "requestBody": {
+ "required": true,
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/UsernameAttemptUnauthedSchema"
+ }
+ }
+ }
+ },
+ "responses": {
+ "200": {
+ "description": "",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/UsernameAttemptResponse"
+ }
+ }
+ }
+ },
+ "400": {
+ "description": "",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/APIErrorResponse"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "unique-username"
+ ]
+ }
+ },
"/track/": {
"post": {
"responses": {
@@ -10290,6 +10385,15 @@
}
}
},
+ "parameters": [
+ {
+ "name": "client_id",
+ "in": "query",
+ "schema": {
+ "type": "string"
+ }
+ }
+ ],
"tags": [
"oauth2"
]
@@ -10366,6 +10470,30 @@
]
}
},
+ "/oauth2/applications/@me/": {
+ "get": {
+ "security": [
+ {
+ "bearer": []
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "",
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/Application"
+ }
+ }
+ }
+ }
+ },
+ "tags": [
+ "oauth2"
+ ]
+ }
+ },
"/invites/{code}": {
"get": {
"security": [
@@ -13995,71 +14123,6 @@
]
}
},
- "/guilds/{guild_id}/bans/@me": {
- "put": {
- "security": [
- {
- "bearer": []
- }
- ],
- "requestBody": {
- "required": true,
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/BanCreateSchema"
- }
- }
- }
- },
- "responses": {
- "200": {
- "description": "",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/Ban"
- }
- }
- }
- },
- "400": {
- "description": "",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/APIErrorResponse"
- }
- }
- }
- },
- "403": {
- "description": "",
- "content": {
- "application/json": {
- "schema": {
- "$ref": "#/components/schemas/APIErrorResponse"
- }
- }
- }
- }
- },
- "parameters": [
- {
- "name": "guild_id",
- "in": "path",
- "required": true,
- "schema": {
- "type": "string"
- },
- "description": "guild_id"
- }
- ],
- "tags": [
- "guilds"
- ]
- }
- },
"/guilds/{guild_id}/audit-logs/": {
"get": {
"security": [
@@ -16408,7 +16471,7 @@
},
"/auth/generate-registration-tokens/": {
"get": {
- "x-right-required": "OPERATOR",
+ "x-right-required": "CREATE_REGISTRATION_TOKENS",
"security": [
{
"bearer": []
diff --git a/assets/schemas.json b/assets/schemas.json
index 0f2602f7..b12357ca 100644
--- a/assets/schemas.json
+++ b/assets/schemas.json
@@ -3663,9 +3663,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -7911,9 +7908,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -12159,9 +12153,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -16402,9 +16393,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -20681,9 +20669,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -24929,9 +24914,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -29168,9 +29150,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -33410,9 +33389,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -37661,9 +37637,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -41900,9 +41873,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -46139,9 +46109,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -50397,9 +50364,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -54639,9 +54603,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -58941,9 +58902,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -63202,9 +63160,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -67604,9 +67559,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -71864,9 +71816,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -76134,9 +76083,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -80386,9 +80332,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -84644,9 +84587,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -88892,9 +88832,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -93128,9 +93065,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -97482,9 +97416,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -101833,9 +101764,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -106072,9 +106000,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -110319,9 +110244,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -114559,9 +114481,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -118799,9 +118718,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -123074,9 +122990,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -127314,9 +127227,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -131553,9 +131463,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -135807,9 +135714,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -140050,9 +139954,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -144367,9 +144268,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -148606,9 +148504,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -152845,9 +152740,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -157081,9 +156973,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -161323,9 +161212,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -165575,9 +165461,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -169811,9 +169694,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -174096,9 +173976,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -178370,9 +178247,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -182606,9 +182480,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -186867,9 +186738,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -191217,9 +191085,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -192147,16 +192012,17 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "VanityUrlSchema": {
+ "UsernameAttemptUnauthedSchema": {
"type": "object",
"properties": {
- "code": {
- "minLength": 1,
- "maxLength": 20,
+ "username": {
"type": "string"
}
},
"additionalProperties": false,
+ "required": [
+ "username"
+ ],
"definitions": {
"ChannelPermissionOverwriteType": {
"enum": [
@@ -195452,9 +195318,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -196382,55 +196245,16 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "VoiceIdentifySchema": {
+ "VanityUrlSchema": {
"type": "object",
"properties": {
- "server_id": {
- "type": "string"
- },
- "user_id": {
- "type": "string"
- },
- "session_id": {
- "type": "string"
- },
- "token": {
+ "code": {
+ "minLength": 1,
+ "maxLength": 20,
"type": "string"
- },
- "video": {
- "type": "boolean"
- },
- "streams": {
- "type": "array",
- "items": {
- "type": "object",
- "properties": {
- "type": {
- "type": "string"
- },
- "rid": {
- "type": "string"
- },
- "quality": {
- "type": "integer"
- }
- },
- "additionalProperties": false,
- "required": [
- "quality",
- "rid",
- "type"
- ]
- }
}
},
"additionalProperties": false,
- "required": [
- "server_id",
- "session_id",
- "token",
- "user_id"
- ],
"definitions": {
"ChannelPermissionOverwriteType": {
"enum": [
@@ -199726,9 +199550,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -200656,42 +200477,54 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "VoiceStateUpdateSchema": {
+ "VoiceIdentifySchema": {
"type": "object",
"properties": {
- "guild_id": {
+ "server_id": {
"type": "string"
},
- "channel_id": {
+ "user_id": {
"type": "string"
},
- "self_mute": {
- "type": "boolean"
- },
- "self_deaf": {
- "type": "boolean"
- },
- "self_video": {
- "type": "boolean"
- },
- "preferred_region": {
+ "session_id": {
"type": "string"
},
- "request_to_speak_timestamp": {
- "type": "string",
- "format": "date-time"
+ "token": {
+ "type": "string"
},
- "suppress": {
+ "video": {
"type": "boolean"
},
- "flags": {
- "type": "integer"
+ "streams": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "type": {
+ "type": "string"
+ },
+ "rid": {
+ "type": "string"
+ },
+ "quality": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "quality",
+ "rid",
+ "type"
+ ]
+ }
}
},
"additionalProperties": false,
"required": [
- "self_deaf",
- "self_mute"
+ "server_id",
+ "session_id",
+ "token",
+ "user_id"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -203988,9 +203821,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -204918,94 +204748,42 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "VoiceVideoSchema": {
+ "VoiceStateUpdateSchema": {
"type": "object",
"properties": {
- "audio_ssrc": {
- "type": "integer"
+ "guild_id": {
+ "type": "string"
},
- "video_ssrc": {
- "type": "integer"
+ "channel_id": {
+ "type": "string"
},
- "rtx_ssrc": {
- "type": "integer"
+ "self_mute": {
+ "type": "boolean"
},
- "user_id": {
+ "self_deaf": {
+ "type": "boolean"
+ },
+ "self_video": {
+ "type": "boolean"
+ },
+ "preferred_region": {
"type": "string"
},
- "streams": {
- "type": "array",
- "items": {
- "type": "object",
- "properties": {
- "type": {
- "enum": [
- "audio",
- "video"
- ],
- "type": "string"
- },
- "rid": {
- "type": "string"
- },
- "ssrc": {
- "type": "integer"
- },
- "active": {
- "type": "boolean"
- },
- "quality": {
- "type": "integer"
- },
- "rtx_ssrc": {
- "type": "integer"
- },
- "max_bitrate": {
- "type": "integer"
- },
- "max_framerate": {
- "type": "integer"
- },
- "max_resolution": {
- "type": "object",
- "properties": {
- "type": {
- "type": "string"
- },
- "width": {
- "type": "integer"
- },
- "height": {
- "type": "integer"
- }
- },
- "additionalProperties": false,
- "required": [
- "height",
- "type",
- "width"
- ]
- }
- },
- "additionalProperties": false,
- "required": [
- "active",
- "max_bitrate",
- "max_framerate",
- "max_resolution",
- "quality",
- "rid",
- "rtx_ssrc",
- "ssrc",
- "type"
- ]
- }
+ "request_to_speak_timestamp": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "suppress": {
+ "type": "boolean"
+ },
+ "flags": {
+ "type": "integer"
}
},
"additionalProperties": false,
"required": [
- "audio_ssrc",
- "video_ssrc"
+ "self_deaf",
+ "self_mute"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -208302,9 +208080,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -209232,16 +209007,94 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "GenerateWebAuthnCredentialsSchema": {
+ "VoiceVideoSchema": {
"type": "object",
"properties": {
- "password": {
+ "audio_ssrc": {
+ "type": "integer"
+ },
+ "video_ssrc": {
+ "type": "integer"
+ },
+ "rtx_ssrc": {
+ "type": "integer"
+ },
+ "user_id": {
"type": "string"
+ },
+ "streams": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "type": {
+ "enum": [
+ "audio",
+ "video"
+ ],
+ "type": "string"
+ },
+ "rid": {
+ "type": "string"
+ },
+ "ssrc": {
+ "type": "integer"
+ },
+ "active": {
+ "type": "boolean"
+ },
+ "quality": {
+ "type": "integer"
+ },
+ "rtx_ssrc": {
+ "type": "integer"
+ },
+ "max_bitrate": {
+ "type": "integer"
+ },
+ "max_framerate": {
+ "type": "integer"
+ },
+ "max_resolution": {
+ "type": "object",
+ "properties": {
+ "type": {
+ "type": "string"
+ },
+ "width": {
+ "type": "integer"
+ },
+ "height": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "height",
+ "type",
+ "width"
+ ]
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "active",
+ "max_bitrate",
+ "max_framerate",
+ "max_resolution",
+ "quality",
+ "rid",
+ "rtx_ssrc",
+ "ssrc",
+ "type"
+ ]
+ }
}
},
"additionalProperties": false,
"required": [
- "password"
+ "audio_ssrc",
+ "video_ssrc"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -212538,9 +212391,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -213468,24 +213318,16 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "CreateWebAuthnCredentialSchema": {
+ "GenerateWebAuthnCredentialsSchema": {
"type": "object",
"properties": {
- "credential": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "ticket": {
+ "password": {
"type": "string"
}
},
"additionalProperties": false,
"required": [
- "credential",
- "name",
- "ticket"
+ "password"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -216782,9 +216624,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -217712,14 +217551,24 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "WebAuthnPostSchema": {
- "anyOf": [
- {
- "$ref": "#/definitions/GenerateWebAuthnCredentialsSchema"
+ "CreateWebAuthnCredentialSchema": {
+ "type": "object",
+ "properties": {
+ "credential": {
+ "type": "string"
},
- {
- "$ref": "#/definitions/CreateWebAuthnCredentialSchema"
+ "name": {
+ "type": "string"
+ },
+ "ticket": {
+ "type": "string"
}
+ },
+ "additionalProperties": false,
+ "required": [
+ "credential",
+ "name",
+ "ticket"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -221016,9 +220865,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -221946,20 +221792,14 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "WebAuthnTotpSchema": {
- "type": "object",
- "properties": {
- "code": {
- "type": "string"
+ "WebAuthnPostSchema": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/GenerateWebAuthnCredentialsSchema"
},
- "ticket": {
- "type": "string"
+ {
+ "$ref": "#/definitions/CreateWebAuthnCredentialSchema"
}
- },
- "additionalProperties": false,
- "required": [
- "code",
- "ticket"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -225256,9 +225096,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -226186,20 +226023,20 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "WebhookCreateSchema": {
+ "WebAuthnTotpSchema": {
"type": "object",
"properties": {
- "name": {
- "maxLength": 80,
+ "code": {
"type": "string"
},
- "avatar": {
+ "ticket": {
"type": "string"
}
},
"additionalProperties": false,
"required": [
- "name"
+ "code",
+ "ticket"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -229496,9 +229333,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -230426,20 +230260,20 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "WidgetModifySchema": {
+ "WebhookCreateSchema": {
"type": "object",
"properties": {
- "enabled": {
- "type": "boolean"
+ "name": {
+ "maxLength": 80,
+ "type": "string"
},
- "channel_id": {
+ "avatar": {
"type": "string"
}
},
"additionalProperties": false,
"required": [
- "channel_id",
- "enabled"
+ "name"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -233736,9 +233570,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -234666,52 +234497,20 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "APIErrorResponse": {
+ "WidgetModifySchema": {
"type": "object",
"properties": {
- "code": {
- "type": "integer"
+ "enabled": {
+ "type": "boolean"
},
- "message": {
+ "channel_id": {
"type": "string"
- },
- "errors": {
- "type": "object",
- "additionalProperties": {
- "type": "object",
- "properties": {
- "_errors": {
- "type": "array",
- "items": {
- "type": "object",
- "properties": {
- "message": {
- "type": "string"
- },
- "code": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "code",
- "message"
- ]
- }
- }
- },
- "additionalProperties": false,
- "required": [
- "_errors"
- ]
- }
}
},
"additionalProperties": false,
"required": [
- "code",
- "errors",
- "message"
+ "channel_id",
+ "enabled"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -238008,9 +237807,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -238938,24 +238734,52 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "CaptchaRequiredResponse": {
+ "APIErrorResponse": {
"type": "object",
"properties": {
- "captcha_key": {
- "type": "string"
+ "code": {
+ "type": "integer"
},
- "captcha_sitekey": {
+ "message": {
"type": "string"
},
- "captcha_service": {
- "type": "string"
+ "errors": {
+ "type": "object",
+ "additionalProperties": {
+ "type": "object",
+ "properties": {
+ "_errors": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "message": {
+ "type": "string"
+ },
+ "code": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "code",
+ "message"
+ ]
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "_errors"
+ ]
+ }
}
},
"additionalProperties": false,
"required": [
- "captcha_key",
- "captcha_service",
- "captcha_sitekey"
+ "code",
+ "errors",
+ "message"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -242252,9 +242076,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -243182,14 +243003,24 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "APIErrorOrCaptchaResponse": {
- "anyOf": [
- {
- "$ref": "#/definitions/APIErrorResponse"
+ "CaptchaRequiredResponse": {
+ "type": "object",
+ "properties": {
+ "captcha_key": {
+ "type": "string"
},
- {
- "$ref": "#/definitions/CaptchaRequiredResponse"
+ "captcha_sitekey": {
+ "type": "string"
+ },
+ "captcha_service": {
+ "type": "string"
}
+ },
+ "additionalProperties": false,
+ "required": [
+ "captcha_key",
+ "captcha_service",
+ "captcha_sitekey"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -246486,9 +246317,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -247416,20 +247244,14 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "BackupCodesChallengeResponse": {
- "type": "object",
- "properties": {
- "nonce": {
- "type": "string"
+ "APIErrorOrCaptchaResponse": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/APIErrorResponse"
},
- "regenerate_nonce": {
- "type": "string"
+ {
+ "$ref": "#/definitions/CaptchaRequiredResponse"
}
- },
- "additionalProperties": false,
- "required": [
- "nonce",
- "regenerate_nonce"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -250726,9 +250548,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -251656,31 +251475,20 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "DiscoverableGuildsResponse": {
+ "BackupCodesChallengeResponse": {
"type": "object",
"properties": {
- "total": {
- "type": "integer"
- },
- "guilds": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Guild"
- }
- },
- "offset": {
- "type": "integer"
+ "nonce": {
+ "type": "string"
},
- "limit": {
- "type": "integer"
+ "regenerate_nonce": {
+ "type": "string"
}
},
"additionalProperties": false,
"required": [
- "guilds",
- "limit",
- "offset",
- "total"
+ "nonce",
+ "regenerate_nonce"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -254977,9 +254785,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -255907,45 +255712,31 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "GatewayBotResponse": {
+ "DiscoverableGuildsResponse": {
"type": "object",
"properties": {
- "url": {
- "type": "string"
+ "total": {
+ "type": "integer"
},
- "shards": {
+ "guilds": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Guild"
+ }
+ },
+ "offset": {
"type": "integer"
},
- "session_start_limit": {
- "type": "object",
- "properties": {
- "total": {
- "type": "integer"
- },
- "remaining": {
- "type": "integer"
- },
- "reset_after": {
- "type": "integer"
- },
- "max_concurrency": {
- "type": "integer"
- }
- },
- "additionalProperties": false,
- "required": [
- "max_concurrency",
- "remaining",
- "reset_after",
- "total"
- ]
+ "limit": {
+ "type": "integer"
}
},
"additionalProperties": false,
"required": [
- "session_start_limit",
- "shards",
- "url"
+ "guilds",
+ "limit",
+ "offset",
+ "total"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -259242,9 +259033,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -260172,15 +259960,44 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "GatewayResponse": {
+ "GatewayBotResponse": {
"type": "object",
"properties": {
"url": {
"type": "string"
+ },
+ "shards": {
+ "type": "integer"
+ },
+ "session_start_limit": {
+ "type": "object",
+ "properties": {
+ "total": {
+ "type": "integer"
+ },
+ "remaining": {
+ "type": "integer"
+ },
+ "reset_after": {
+ "type": "integer"
+ },
+ "max_concurrency": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "max_concurrency",
+ "remaining",
+ "reset_after",
+ "total"
+ ]
}
},
"additionalProperties": false,
"required": [
+ "session_start_limit",
+ "shards",
"url"
],
"definitions": {
@@ -263478,9 +263295,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -264408,19 +264222,16 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "GenerateRegistrationTokensResponse": {
+ "GatewayResponse": {
"type": "object",
"properties": {
- "tokens": {
- "type": "array",
- "items": {
- "type": "string"
- }
+ "url": {
+ "type": "string"
}
},
"additionalProperties": false,
"required": [
- "tokens"
+ "url"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -267717,9 +267528,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -268647,51 +268455,19 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "GuildBansResponse": {
+ "GenerateRegistrationTokensResponse": {
"type": "object",
"properties": {
- "reason": {
- "type": "string"
- },
- "user": {
- "type": "object",
- "properties": {
- "username": {
- "type": "string"
- },
- "discriminator": {
- "type": "string"
- },
- "global_name": {
- "type": "string"
- },
- "id": {
- "type": "string"
- },
- "avatar": {
- "type": [
- "null",
- "string"
- ]
- },
- "public_flags": {
- "type": "integer"
- }
- },
- "additionalProperties": false,
- "required": [
- "avatar",
- "discriminator",
- "id",
- "public_flags",
- "username"
- ]
+ "tokens": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
}
},
"additionalProperties": false,
"required": [
- "reason",
- "user"
+ "tokens"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -271988,9 +271764,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -272918,16 +272691,51 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "GuildCreateResponse": {
+ "GuildBansResponse": {
"type": "object",
"properties": {
- "id": {
+ "reason": {
"type": "string"
+ },
+ "user": {
+ "type": "object",
+ "properties": {
+ "username": {
+ "type": "string"
+ },
+ "discriminator": {
+ "type": "string"
+ },
+ "global_name": {
+ "type": "string"
+ },
+ "id": {
+ "type": "string"
+ },
+ "avatar": {
+ "type": [
+ "null",
+ "string"
+ ]
+ },
+ "public_flags": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "avatar",
+ "discriminator",
+ "id",
+ "public_flags",
+ "username"
+ ]
}
},
"additionalProperties": false,
"required": [
- "id"
+ "reason",
+ "user"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -276224,9 +276032,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -277154,95 +276959,16 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "GuildDiscoveryRequirementsResponse": {
+ "GuildCreateResponse": {
"type": "object",
"properties": {
- "uild_id": {
+ "id": {
"type": "string"
- },
- "safe_environment": {
- "type": "boolean"
- },
- "healthy": {
- "type": "boolean"
- },
- "health_score_pending": {
- "type": "boolean"
- },
- "size": {
- "type": "boolean"
- },
- "nsfw_properties": {},
- "protected": {
- "type": "boolean"
- },
- "sufficient": {
- "type": "boolean"
- },
- "sufficient_without_grace_period": {
- "type": "boolean"
- },
- "valid_rules_channel": {
- "type": "boolean"
- },
- "retention_healthy": {
- "type": "boolean"
- },
- "engagement_healthy": {
- "type": "boolean"
- },
- "age": {
- "type": "boolean"
- },
- "minimum_age": {
- "type": "integer"
- },
- "health_score": {
- "type": "object",
- "properties": {
- "avg_nonnew_participators": {
- "type": "integer"
- },
- "avg_nonnew_communicators": {
- "type": "integer"
- },
- "num_intentful_joiners": {
- "type": "integer"
- },
- "perc_ret_w1_intentful": {
- "type": "integer"
- }
- },
- "additionalProperties": false,
- "required": [
- "avg_nonnew_communicators",
- "avg_nonnew_participators",
- "num_intentful_joiners",
- "perc_ret_w1_intentful"
- ]
- },
- "minimum_size": {
- "type": "integer"
}
},
"additionalProperties": false,
"required": [
- "age",
- "engagement_healthy",
- "health_score",
- "health_score_pending",
- "healthy",
- "minimum_age",
- "minimum_size",
- "nsfw_properties",
- "protected",
- "retention_healthy",
- "safe_environment",
- "size",
- "sufficient",
- "sufficient_without_grace_period",
- "uild_id",
- "valid_rules_channel"
+ "id"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -280539,9 +280265,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -281469,23 +281192,95 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "GuildMessagesSearchResponse": {
+ "GuildDiscoveryRequirementsResponse": {
"type": "object",
"properties": {
- "messages": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/GuildMessagesSearchMessage"
- }
+ "uild_id": {
+ "type": "string"
},
- "total_results": {
+ "safe_environment": {
+ "type": "boolean"
+ },
+ "healthy": {
+ "type": "boolean"
+ },
+ "health_score_pending": {
+ "type": "boolean"
+ },
+ "size": {
+ "type": "boolean"
+ },
+ "nsfw_properties": {},
+ "protected": {
+ "type": "boolean"
+ },
+ "sufficient": {
+ "type": "boolean"
+ },
+ "sufficient_without_grace_period": {
+ "type": "boolean"
+ },
+ "valid_rules_channel": {
+ "type": "boolean"
+ },
+ "retention_healthy": {
+ "type": "boolean"
+ },
+ "engagement_healthy": {
+ "type": "boolean"
+ },
+ "age": {
+ "type": "boolean"
+ },
+ "minimum_age": {
+ "type": "integer"
+ },
+ "health_score": {
+ "type": "object",
+ "properties": {
+ "avg_nonnew_participators": {
+ "type": "integer"
+ },
+ "avg_nonnew_communicators": {
+ "type": "integer"
+ },
+ "num_intentful_joiners": {
+ "type": "integer"
+ },
+ "perc_ret_w1_intentful": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "avg_nonnew_communicators",
+ "avg_nonnew_participators",
+ "num_intentful_joiners",
+ "perc_ret_w1_intentful"
+ ]
+ },
+ "minimum_size": {
"type": "integer"
}
},
"additionalProperties": false,
"required": [
- "messages",
- "total_results"
+ "age",
+ "engagement_healthy",
+ "health_score",
+ "health_score_pending",
+ "healthy",
+ "minimum_age",
+ "minimum_size",
+ "nsfw_properties",
+ "protected",
+ "retention_healthy",
+ "safe_environment",
+ "size",
+ "sufficient",
+ "sufficient_without_grace_period",
+ "uild_id",
+ "valid_rules_channel"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -284782,9 +284577,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -285712,16 +285504,23 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "GuildPruneResponse": {
+ "GuildMessagesSearchResponse": {
"type": "object",
"properties": {
- "pruned": {
+ "messages": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/GuildMessagesSearchMessage"
+ }
+ },
+ "total_results": {
"type": "integer"
}
},
"additionalProperties": false,
"required": [
- "pruned"
+ "messages",
+ "total_results"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -289018,9 +288817,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -289948,16 +289744,16 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "GuildPurgeResponse": {
+ "GuildPruneResponse": {
"type": "object",
"properties": {
- "purged": {
+ "pruned": {
"type": "integer"
}
},
"additionalProperties": false,
"required": [
- "purged"
+ "pruned"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -293254,9 +293050,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -294184,23 +293977,16 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "GuildRecommendationsResponse": {
+ "GuildPurgeResponse": {
"type": "object",
"properties": {
- "recommended_guilds": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Guild"
- }
- },
- "load_id": {
- "type": "string"
+ "purged": {
+ "type": "integer"
}
},
"additionalProperties": false,
"required": [
- "load_id",
- "recommended_guilds"
+ "purged"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -297497,9 +297283,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -298427,20 +298210,23 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "GuildVanityUrlResponse": {
- "anyOf": [
- {
- "$ref": "#/definitions/GuildVanityUrl"
- },
- {
- "$ref": "#/definitions/GuildVanityUrlNoInvite"
- },
- {
+ "GuildRecommendationsResponse": {
+ "type": "object",
+ "properties": {
+ "recommended_guilds": {
"type": "array",
"items": {
- "$ref": "#/definitions/GuildVanityUrl"
+ "$ref": "#/definitions/Guild"
}
+ },
+ "load_id": {
+ "type": "string"
}
+ },
+ "additionalProperties": false,
+ "required": [
+ "load_id",
+ "recommended_guilds"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -301737,9 +301523,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -302667,16 +302450,20 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "GuildVanityUrlCreateResponse": {
- "type": "object",
- "properties": {
- "code": {
- "type": "string"
+ "GuildVanityUrlResponse": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/GuildVanityUrl"
+ },
+ {
+ "$ref": "#/definitions/GuildVanityUrlNoInvite"
+ },
+ {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/GuildVanityUrl"
+ }
}
- },
- "additionalProperties": false,
- "required": [
- "code"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -305973,9 +305760,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -306903,98 +306687,16 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "GuildWidgetJsonResponse": {
+ "GuildVanityUrlCreateResponse": {
"type": "object",
"properties": {
- "id": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "instant_invite": {
+ "code": {
"type": "string"
- },
- "channels": {
- "type": "array",
- "items": {
- "type": "object",
- "properties": {
- "id": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "position": {
- "type": "integer"
- }
- },
- "additionalProperties": false,
- "required": [
- "id",
- "name",
- "position"
- ]
- }
- },
- "members": {
- "type": "array",
- "items": {
- "type": "object",
- "properties": {
- "id": {
- "type": "string"
- },
- "username": {
- "type": "string"
- },
- "global_name": {
- "type": [
- "null",
- "string"
- ]
- },
- "discriminator": {
- "type": "string"
- },
- "avatar": {
- "type": [
- "null",
- "string"
- ]
- },
- "status": {
- "$ref": "#/definitions/ClientStatus"
- },
- "avatar_url": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "avatar",
- "avatar_url",
- "discriminator",
- "global_name",
- "id",
- "status",
- "username"
- ]
- }
- },
- "presence_count": {
- "type": "integer"
}
},
"additionalProperties": false,
"required": [
- "channels",
- "id",
- "instant_invite",
- "members",
- "name",
- "presence_count"
+ "code"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -310291,9 +309993,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -311221,27 +310920,98 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "GuildWidgetSettingsResponse": {
+ "GuildWidgetJsonResponse": {
"type": "object",
"properties": {
- "enabled": {
- "type": "boolean"
+ "id": {
+ "type": "string"
},
- "channel_id": {
- "anyOf": [
- {
- "$ref": "#/definitions/Snowflake"
+ "name": {
+ "type": "string"
+ },
+ "instant_invite": {
+ "type": "string"
+ },
+ "channels": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "position": {
+ "type": "integer"
+ }
},
- {
- "type": "null"
- }
- ]
+ "additionalProperties": false,
+ "required": [
+ "id",
+ "name",
+ "position"
+ ]
+ }
+ },
+ "members": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "username": {
+ "type": "string"
+ },
+ "global_name": {
+ "type": [
+ "null",
+ "string"
+ ]
+ },
+ "discriminator": {
+ "type": "string"
+ },
+ "avatar": {
+ "type": [
+ "null",
+ "string"
+ ]
+ },
+ "status": {
+ "$ref": "#/definitions/ClientStatus"
+ },
+ "avatar_url": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "avatar",
+ "avatar_url",
+ "discriminator",
+ "global_name",
+ "id",
+ "status",
+ "username"
+ ]
+ }
+ },
+ "presence_count": {
+ "type": "integer"
}
},
"additionalProperties": false,
"required": [
- "channel_id",
- "enabled"
+ "channels",
+ "id",
+ "instant_invite",
+ "members",
+ "name",
+ "presence_count"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -314538,9 +314308,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -315468,28 +315235,27 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "InstanceDomainsResponse": {
+ "GuildWidgetSettingsResponse": {
"type": "object",
"properties": {
- "cdn": {
- "type": "string"
- },
- "gateway": {
- "type": "string"
- },
- "defaultApiVersion": {
- "type": "string"
+ "enabled": {
+ "type": "boolean"
},
- "apiEndpoint": {
- "type": "string"
+ "channel_id": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/Snowflake"
+ },
+ {
+ "type": "null"
+ }
+ ]
}
},
"additionalProperties": false,
"required": [
- "apiEndpoint",
- "cdn",
- "defaultApiVersion",
- "gateway"
+ "channel_id",
+ "enabled"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -318786,9 +318552,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -319716,78 +319479,28 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "InstancePingResponse": {
+ "InstanceDomainsResponse": {
"type": "object",
"properties": {
- "ping": {
- "type": "string",
- "enum": [
- "pong!"
- ]
+ "cdn": {
+ "type": "string"
},
- "instance": {
- "type": "object",
- "properties": {
- "id": {
- "type": "string"
- },
- "name": {
- "type": "string"
- },
- "description": {
- "type": [
- "null",
- "string"
- ]
- },
- "image": {
- "type": [
- "null",
- "string"
- ]
- },
- "correspondenceEmail": {
- "type": [
- "null",
- "string"
- ]
- },
- "correspondenceUserID": {
- "type": [
- "null",
- "string"
- ]
- },
- "frontPage": {
- "type": [
- "null",
- "string"
- ]
- },
- "tosPage": {
- "type": [
- "null",
- "string"
- ]
- }
- },
- "additionalProperties": false,
- "required": [
- "correspondenceEmail",
- "correspondenceUserID",
- "description",
- "frontPage",
- "id",
- "image",
- "name",
- "tosPage"
- ]
+ "gateway": {
+ "type": "string"
+ },
+ "defaultApiVersion": {
+ "type": "string"
+ },
+ "apiEndpoint": {
+ "type": "string"
}
},
"additionalProperties": false,
"required": [
- "instance",
- "ping"
+ "apiEndpoint",
+ "cdn",
+ "defaultApiVersion",
+ "gateway"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -323084,9 +322797,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -324014,37 +323724,78 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "InstanceStatsResponse": {
+ "InstancePingResponse": {
"type": "object",
"properties": {
- "counts": {
+ "ping": {
+ "type": "string",
+ "enum": [
+ "pong!"
+ ]
+ },
+ "instance": {
"type": "object",
"properties": {
- "user": {
- "type": "integer"
+ "id": {
+ "type": "string"
},
- "guild": {
- "type": "integer"
+ "name": {
+ "type": "string"
},
- "message": {
- "type": "integer"
+ "description": {
+ "type": [
+ "null",
+ "string"
+ ]
},
- "members": {
- "type": "integer"
+ "image": {
+ "type": [
+ "null",
+ "string"
+ ]
+ },
+ "correspondenceEmail": {
+ "type": [
+ "null",
+ "string"
+ ]
+ },
+ "correspondenceUserID": {
+ "type": [
+ "null",
+ "string"
+ ]
+ },
+ "frontPage": {
+ "type": [
+ "null",
+ "string"
+ ]
+ },
+ "tosPage": {
+ "type": [
+ "null",
+ "string"
+ ]
}
},
"additionalProperties": false,
"required": [
- "guild",
- "members",
- "message",
- "user"
+ "correspondenceEmail",
+ "correspondenceUserID",
+ "description",
+ "frontPage",
+ "id",
+ "image",
+ "name",
+ "tosPage"
]
}
},
"additionalProperties": false,
"required": [
- "counts"
+ "instance",
+ "ping"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -327341,9 +327092,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -328271,43 +328019,37 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "LocationMetadataResponse": {
+ "InstanceStatsResponse": {
"type": "object",
"properties": {
- "consent_required": {
- "type": "boolean"
- },
- "country_code": {
- "type": "string"
- },
- "promotional_email_opt_in": {
+ "counts": {
"type": "object",
"properties": {
- "required": {
- "type": "boolean",
- "enum": [
- true
- ]
+ "user": {
+ "type": "integer"
},
- "pre_checked": {
- "type": "boolean",
- "enum": [
- false
- ]
+ "guild": {
+ "type": "integer"
+ },
+ "message": {
+ "type": "integer"
+ },
+ "members": {
+ "type": "integer"
}
},
"additionalProperties": false,
"required": [
- "pre_checked",
- "required"
+ "guild",
+ "members",
+ "message",
+ "user"
]
}
},
"additionalProperties": false,
"required": [
- "consent_required",
- "country_code",
- "promotional_email_opt_in"
+ "counts"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -331604,9 +331346,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -332534,37 +332273,43 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "MemberJoinGuildResponse": {
+ "LocationMetadataResponse": {
"type": "object",
"properties": {
- "guild": {
- "$ref": "#/definitions/Guild"
- },
- "emojis": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Emoji"
- }
+ "consent_required": {
+ "type": "boolean"
},
- "roles": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Role"
- }
+ "country_code": {
+ "type": "string"
},
- "stickers": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Sticker"
- }
+ "promotional_email_opt_in": {
+ "type": "object",
+ "properties": {
+ "required": {
+ "type": "boolean",
+ "enum": [
+ true
+ ]
+ },
+ "pre_checked": {
+ "type": "boolean",
+ "enum": [
+ false
+ ]
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "pre_checked",
+ "required"
+ ]
}
},
"additionalProperties": false,
"required": [
- "emojis",
- "guild",
- "roles",
- "stickers"
+ "consent_required",
+ "country_code",
+ "promotional_email_opt_in"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -335861,9 +335606,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -336791,16 +336533,37 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "OAuthAuthorizeResponse": {
+ "MemberJoinGuildResponse": {
"type": "object",
"properties": {
- "location": {
- "type": "string"
+ "guild": {
+ "$ref": "#/definitions/Guild"
+ },
+ "emojis": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Emoji"
+ }
+ },
+ "roles": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Role"
+ }
+ },
+ "stickers": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Sticker"
+ }
}
},
"additionalProperties": false,
"required": [
- "location"
+ "emojis",
+ "guild",
+ "roles",
+ "stickers"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -340097,9 +339860,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -341027,44 +340787,16 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "TenorGifResponse": {
+ "OAuthAuthorizeResponse": {
"type": "object",
"properties": {
- "id": {
- "type": "string"
- },
- "title": {
- "type": "string"
- },
- "url": {
- "type": "string"
- },
- "src": {
- "type": "string"
- },
- "gif_src": {
- "type": "string"
- },
- "width": {
- "type": "integer"
- },
- "height": {
- "type": "integer"
- },
- "preview": {
+ "location": {
"type": "string"
}
},
"additionalProperties": false,
"required": [
- "gif_src",
- "height",
- "id",
- "preview",
- "src",
- "title",
- "url",
- "width"
+ "location"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -344361,9 +344093,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -345291,56 +345020,44 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "TenorTrendingResponse": {
+ "TenorGifResponse": {
"type": "object",
"properties": {
- "categories": {
- "type": "object",
- "properties": {
- "tags": {
- "type": "array",
- "items": {
- "type": "object",
- "properties": {
- "searchterm": {
- "type": "string"
- },
- "path": {
- "type": "string"
- },
- "image": {
- "type": "string"
- },
- "name": {
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "image",
- "name",
- "path",
- "searchterm"
- ]
- }
- }
- },
- "additionalProperties": false,
- "required": [
- "tags"
- ]
+ "id": {
+ "type": "string"
},
- "gifs": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/TenorGifResponse"
- }
+ "title": {
+ "type": "string"
+ },
+ "url": {
+ "type": "string"
+ },
+ "src": {
+ "type": "string"
+ },
+ "gif_src": {
+ "type": "string"
+ },
+ "width": {
+ "type": "integer"
+ },
+ "height": {
+ "type": "integer"
+ },
+ "preview": {
+ "type": "string"
}
},
"additionalProperties": false,
"required": [
- "categories",
- "gifs"
+ "gif_src",
+ "height",
+ "id",
+ "preview",
+ "src",
+ "title",
+ "url",
+ "width"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -348637,9 +348354,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -349567,11 +349281,57 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "TenorGifsResponse": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/TenorGifResponse"
+ "TenorTrendingResponse": {
+ "type": "object",
+ "properties": {
+ "categories": {
+ "type": "object",
+ "properties": {
+ "tags": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "properties": {
+ "searchterm": {
+ "type": "string"
+ },
+ "path": {
+ "type": "string"
+ },
+ "image": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "image",
+ "name",
+ "path",
+ "searchterm"
+ ]
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tags"
+ ]
+ },
+ "gifs": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/TenorGifResponse"
+ }
+ }
},
+ "additionalProperties": false,
+ "required": [
+ "categories",
+ "gifs"
+ ],
"definitions": {
"ChannelPermissionOverwriteType": {
"enum": [
@@ -352867,9 +352627,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -353797,21 +353554,11 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "TokenResponse": {
- "type": "object",
- "properties": {
- "token": {
- "type": "string"
- },
- "settings": {
- "$ref": "#/definitions/UserSettings"
- }
+ "TenorGifsResponse": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/TenorGifResponse"
},
- "additionalProperties": false,
- "required": [
- "settings",
- "token"
- ],
"definitions": {
"ChannelPermissionOverwriteType": {
"enum": [
@@ -357107,9 +356854,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -358037,15 +357781,19 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "TokenOnlyResponse": {
+ "TokenResponse": {
"type": "object",
"properties": {
"token": {
"type": "string"
+ },
+ "settings": {
+ "$ref": "#/definitions/UserSettings"
}
},
"additionalProperties": false,
"required": [
+ "settings",
"token"
],
"definitions": {
@@ -361343,9 +361091,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -362273,22 +362018,15 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "TokenWithBackupCodesResponse": {
+ "TokenOnlyResponse": {
"type": "object",
"properties": {
"token": {
"type": "string"
- },
- "backup_codes": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/BackupCode"
- }
}
},
"additionalProperties": false,
"required": [
- "backup_codes",
"token"
],
"definitions": {
@@ -365586,9 +365324,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -366516,227 +366251,23 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "APIGuild": {
+ "TokenWithBackupCodesResponse": {
"type": "object",
"properties": {
- "name": {
- "type": "string"
- },
- "id": {
- "type": "string"
- },
- "icon": {
- "type": "string"
- },
- "parent": {
- "type": "string"
- },
- "owner_id": {
- "type": "string"
- },
- "nsfw": {
- "type": "boolean"
- },
- "invites": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Invite"
- }
- },
- "voice_states": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/VoiceState"
- }
- },
- "webhooks": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Webhook"
- }
- },
- "_do_validate": {
- "type": "object",
- "additionalProperties": false
- },
- "roles": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Role"
- }
- },
- "banner": {
- "type": "string"
- },
- "description": {
- "type": "string"
- },
- "unavailable": {
- "type": "boolean"
- },
- "channels": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Channel"
- }
- },
- "region": {
- "type": "string"
- },
- "system_channel_id": {
- "type": "string"
- },
- "rules_channel_id": {
- "type": "string"
- },
- "afk_timeout": {
- "type": "integer"
- },
- "explicit_content_filter": {
- "type": "integer"
- },
- "afk_channel_id": {
- "type": "string"
- },
- "bans": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Ban"
- }
- },
- "default_message_notifications": {
- "type": "integer"
- },
- "discovery_splash": {
- "type": "string"
- },
- "features": {
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "primary_category_id": {
- "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": "#/definitions/Member"
- }
- },
- "template_id": {
- "type": "string"
- },
- "emojis": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Emoji"
- }
- },
- "stickers": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Sticker"
- }
- },
- "mfa_level": {
- "type": "integer"
- },
- "preferred_locale": {
- "type": "string"
- },
- "premium_subscription_count": {
- "type": "integer"
- },
- "premium_tier": {
- "type": "integer"
- },
- "public_updates_channel_id": {
- "type": "string"
- },
- "splash": {
- "type": "string"
- },
- "system_channel_flags": {
- "type": "integer"
- },
- "verification_level": {
- "type": "integer"
- },
- "welcome_screen": {
- "$ref": "#/definitions/GuildWelcomeScreen"
- },
- "widget_channel_id": {
+ "token": {
"type": "string"
},
- "widget_enabled": {
- "type": "boolean"
- },
- "nsfw_level": {
- "type": "integer"
- },
- "permissions": {
- "type": "integer"
- },
- "premium_progress_bar_enabled": {
- "type": "boolean"
- },
- "channel_ordering": {
+ "backup_codes": {
"type": "array",
"items": {
- "type": "string"
+ "$ref": "#/definitions/BackupCode"
}
}
},
"additionalProperties": false,
"required": [
- "_do_validate",
- "assign",
- "bans",
- "channel_ordering",
- "channels",
- "emojis",
- "features",
- "hasId",
- "id",
- "invites",
- "members",
- "name",
- "nsfw",
- "premium_progress_bar_enabled",
- "public_updates_channel_id",
- "recover",
- "reload",
- "remove",
- "roles",
- "save",
- "softRemove",
- "stickers",
- "toJSON",
- "unavailable",
- "voice_states",
- "webhooks",
- "welcome_screen",
- "widget_enabled"
+ "backup_codes",
+ "token"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -370033,9 +369564,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -370963,8 +370491,228 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "APIPublicUser": {
- "$ref": "#/definitions/PublicUser",
+ "APIGuild": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "id": {
+ "type": "string"
+ },
+ "icon": {
+ "type": "string"
+ },
+ "parent": {
+ "type": "string"
+ },
+ "owner_id": {
+ "type": "string"
+ },
+ "nsfw": {
+ "type": "boolean"
+ },
+ "invites": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Invite"
+ }
+ },
+ "voice_states": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VoiceState"
+ }
+ },
+ "webhooks": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Webhook"
+ }
+ },
+ "_do_validate": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "roles": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Role"
+ }
+ },
+ "banner": {
+ "type": "string"
+ },
+ "description": {
+ "type": "string"
+ },
+ "unavailable": {
+ "type": "boolean"
+ },
+ "channels": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Channel"
+ }
+ },
+ "region": {
+ "type": "string"
+ },
+ "system_channel_id": {
+ "type": "string"
+ },
+ "rules_channel_id": {
+ "type": "string"
+ },
+ "afk_timeout": {
+ "type": "integer"
+ },
+ "explicit_content_filter": {
+ "type": "integer"
+ },
+ "afk_channel_id": {
+ "type": "string"
+ },
+ "bans": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Ban"
+ }
+ },
+ "default_message_notifications": {
+ "type": "integer"
+ },
+ "discovery_splash": {
+ "type": "string"
+ },
+ "features": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "primary_category_id": {
+ "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": "#/definitions/Member"
+ }
+ },
+ "template_id": {
+ "type": "string"
+ },
+ "emojis": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Emoji"
+ }
+ },
+ "stickers": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Sticker"
+ }
+ },
+ "mfa_level": {
+ "type": "integer"
+ },
+ "preferred_locale": {
+ "type": "string"
+ },
+ "premium_subscription_count": {
+ "type": "integer"
+ },
+ "premium_tier": {
+ "type": "integer"
+ },
+ "public_updates_channel_id": {
+ "type": "string"
+ },
+ "splash": {
+ "type": "string"
+ },
+ "system_channel_flags": {
+ "type": "integer"
+ },
+ "verification_level": {
+ "type": "integer"
+ },
+ "welcome_screen": {
+ "$ref": "#/definitions/GuildWelcomeScreen"
+ },
+ "widget_channel_id": {
+ "type": "string"
+ },
+ "widget_enabled": {
+ "type": "boolean"
+ },
+ "nsfw_level": {
+ "type": "integer"
+ },
+ "permissions": {
+ "type": "integer"
+ },
+ "premium_progress_bar_enabled": {
+ "type": "boolean"
+ },
+ "channel_ordering": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "_do_validate",
+ "assign",
+ "bans",
+ "channel_ordering",
+ "channels",
+ "emojis",
+ "features",
+ "hasId",
+ "id",
+ "invites",
+ "members",
+ "name",
+ "nsfw",
+ "premium_progress_bar_enabled",
+ "public_updates_channel_id",
+ "recover",
+ "reload",
+ "remove",
+ "roles",
+ "save",
+ "softRemove",
+ "stickers",
+ "toJSON",
+ "unavailable",
+ "voice_states",
+ "webhooks",
+ "welcome_screen",
+ "widget_enabled"
+ ],
"definitions": {
"ChannelPermissionOverwriteType": {
"enum": [
@@ -374260,9 +374008,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -375190,108 +374935,8 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "APIPrivateUser": {
- "type": "object",
- "properties": {
- "id": {
- "type": "string"
- },
- "flags": {
- "type": "integer"
- },
- "premium_since": {
- "type": "string",
- "format": "date-time"
- },
- "avatar": {
- "type": "string"
- },
- "verified": {
- "type": "boolean"
- },
- "username": {
- "type": "string"
- },
- "global_name": {
- "type": "string"
- },
- "legacy_username": {
- "type": "string"
- },
- "discriminator": {
- "type": "string"
- },
- "public_flags": {
- "type": "integer"
- },
- "accent_color": {
- "type": "integer"
- },
- "banner": {
- "type": "string"
- },
- "bio": {
- "type": "string"
- },
- "bot": {
- "type": "boolean"
- },
- "premium_type": {
- "type": "integer"
- },
- "theme_colors": {
- "type": "array",
- "items": {
- "type": "integer"
- }
- },
- "pronouns": {
- "type": "string"
- },
- "mfa_enabled": {
- "type": "boolean"
- },
- "email": {
- "type": "string"
- },
- "phone": {
- "type": "string"
- },
- "nsfw_allowed": {
- "type": "boolean"
- },
- "premium": {
- "type": "boolean"
- },
- "purchased_flags": {
- "type": "integer"
- },
- "premium_usage_flags": {
- "type": "integer"
- },
- "disabled": {
- "type": "boolean"
- }
- },
- "additionalProperties": false,
- "required": [
- "bio",
- "bot",
- "disabled",
- "discriminator",
- "flags",
- "id",
- "mfa_enabled",
- "nsfw_allowed",
- "premium",
- "premium_since",
- "premium_type",
- "premium_usage_flags",
- "public_flags",
- "purchased_flags",
- "username",
- "verified"
- ],
+ "APIPublicUser": {
+ "$ref": "#/definitions/PublicUser",
"definitions": {
"ChannelPermissionOverwriteType": {
"enum": [
@@ -378587,9 +378232,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -379517,11 +379159,105 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "APIGuildArray": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/APIGuild"
+ "APIPrivateUser": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "flags": {
+ "type": "integer"
+ },
+ "premium_since": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "avatar": {
+ "type": "string"
+ },
+ "verified": {
+ "type": "boolean"
+ },
+ "username": {
+ "type": "string"
+ },
+ "global_name": {
+ "type": "string"
+ },
+ "discriminator": {
+ "type": "string"
+ },
+ "public_flags": {
+ "type": "integer"
+ },
+ "accent_color": {
+ "type": "integer"
+ },
+ "banner": {
+ "type": "string"
+ },
+ "bio": {
+ "type": "string"
+ },
+ "bot": {
+ "type": "boolean"
+ },
+ "premium_type": {
+ "type": "integer"
+ },
+ "theme_colors": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ }
+ },
+ "pronouns": {
+ "type": "string"
+ },
+ "mfa_enabled": {
+ "type": "boolean"
+ },
+ "email": {
+ "type": "string"
+ },
+ "phone": {
+ "type": "string"
+ },
+ "nsfw_allowed": {
+ "type": "boolean"
+ },
+ "premium": {
+ "type": "boolean"
+ },
+ "purchased_flags": {
+ "type": "integer"
+ },
+ "premium_usage_flags": {
+ "type": "integer"
+ },
+ "disabled": {
+ "type": "boolean"
+ }
},
+ "additionalProperties": false,
+ "required": [
+ "bio",
+ "bot",
+ "disabled",
+ "discriminator",
+ "flags",
+ "id",
+ "mfa_enabled",
+ "nsfw_allowed",
+ "premium",
+ "premium_since",
+ "premium_type",
+ "premium_usage_flags",
+ "public_flags",
+ "purchased_flags",
+ "username",
+ "verified"
+ ],
"definitions": {
"ChannelPermissionOverwriteType": {
"enum": [
@@ -382817,9 +382553,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -383747,10 +383480,10 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "APIDMChannelArray": {
+ "APIGuildArray": {
"type": "array",
"items": {
- "$ref": "#/definitions/DmChannelDTO"
+ "$ref": "#/definitions/APIGuild"
},
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -387047,9 +386780,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -387977,10 +387707,10 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "APIBackupCodeArray": {
+ "APIDMChannelArray": {
"type": "array",
"items": {
- "$ref": "#/definitions/BackupCode"
+ "$ref": "#/definitions/DmChannelDTO"
},
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -391277,9 +391007,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -392207,111 +391934,11 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "UserUpdateResponse": {
- "type": "object",
- "properties": {
- "newToken": {
- "type": "string"
- },
- "id": {
- "type": "string"
- },
- "flags": {
- "type": "integer"
- },
- "premium_since": {
- "type": "string",
- "format": "date-time"
- },
- "avatar": {
- "type": "string"
- },
- "verified": {
- "type": "boolean"
- },
- "username": {
- "type": "string"
- },
- "global_name": {
- "type": "string"
- },
- "legacy_username": {
- "type": "string"
- },
- "discriminator": {
- "type": "string"
- },
- "public_flags": {
- "type": "integer"
- },
- "accent_color": {
- "type": "integer"
- },
- "banner": {
- "type": "string"
- },
- "bio": {
- "type": "string"
- },
- "bot": {
- "type": "boolean"
- },
- "premium_type": {
- "type": "integer"
- },
- "theme_colors": {
- "type": "array",
- "items": {
- "type": "integer"
- }
- },
- "pronouns": {
- "type": "string"
- },
- "mfa_enabled": {
- "type": "boolean"
- },
- "email": {
- "type": "string"
- },
- "phone": {
- "type": "string"
- },
- "nsfw_allowed": {
- "type": "boolean"
- },
- "premium": {
- "type": "boolean"
- },
- "purchased_flags": {
- "type": "integer"
- },
- "premium_usage_flags": {
- "type": "integer"
- },
- "disabled": {
- "type": "boolean"
- }
+ "APIBackupCodeArray": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BackupCode"
},
- "additionalProperties": false,
- "required": [
- "bio",
- "bot",
- "disabled",
- "discriminator",
- "flags",
- "id",
- "mfa_enabled",
- "nsfw_allowed",
- "premium",
- "premium_since",
- "premium_type",
- "premium_usage_flags",
- "public_flags",
- "purchased_flags",
- "username",
- "verified"
- ],
"definitions": {
"ChannelPermissionOverwriteType": {
"enum": [
@@ -395607,9 +395234,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -396537,9 +396161,108 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "ApplicationDetectableResponse": {
- "type": "array",
- "items": {},
+ "UserUpdateResponse": {
+ "type": "object",
+ "properties": {
+ "newToken": {
+ "type": "string"
+ },
+ "id": {
+ "type": "string"
+ },
+ "flags": {
+ "type": "integer"
+ },
+ "premium_since": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "avatar": {
+ "type": "string"
+ },
+ "verified": {
+ "type": "boolean"
+ },
+ "username": {
+ "type": "string"
+ },
+ "global_name": {
+ "type": "string"
+ },
+ "discriminator": {
+ "type": "string"
+ },
+ "public_flags": {
+ "type": "integer"
+ },
+ "accent_color": {
+ "type": "integer"
+ },
+ "banner": {
+ "type": "string"
+ },
+ "bio": {
+ "type": "string"
+ },
+ "bot": {
+ "type": "boolean"
+ },
+ "premium_type": {
+ "type": "integer"
+ },
+ "theme_colors": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ }
+ },
+ "pronouns": {
+ "type": "string"
+ },
+ "mfa_enabled": {
+ "type": "boolean"
+ },
+ "email": {
+ "type": "string"
+ },
+ "phone": {
+ "type": "string"
+ },
+ "nsfw_allowed": {
+ "type": "boolean"
+ },
+ "premium": {
+ "type": "boolean"
+ },
+ "purchased_flags": {
+ "type": "integer"
+ },
+ "premium_usage_flags": {
+ "type": "integer"
+ },
+ "disabled": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "bio",
+ "bot",
+ "disabled",
+ "discriminator",
+ "flags",
+ "id",
+ "mfa_enabled",
+ "nsfw_allowed",
+ "premium",
+ "premium_since",
+ "premium_type",
+ "premium_usage_flags",
+ "public_flags",
+ "purchased_flags",
+ "username",
+ "verified"
+ ],
"definitions": {
"ChannelPermissionOverwriteType": {
"enum": [
@@ -399835,9 +399558,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -400765,7 +400485,7 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "ApplicationEntitlementsResponse": {
+ "ApplicationDetectableResponse": {
"type": "array",
"items": {},
"definitions": {
@@ -404063,9 +403783,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -404993,7 +404710,7 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "ApplicationSkusResponse": {
+ "ApplicationEntitlementsResponse": {
"type": "array",
"items": {},
"definitions": {
@@ -408291,9 +408008,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -409221,11 +408935,9 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "APIApplicationArray": {
+ "ApplicationSkusResponse": {
"type": "array",
- "items": {
- "$ref": "#/definitions/Application"
- },
+ "items": {},
"definitions": {
"ChannelPermissionOverwriteType": {
"enum": [
@@ -412521,9 +412233,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -413451,10 +413160,10 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "APIInviteArray": {
+ "APIApplicationArray": {
"type": "array",
"items": {
- "$ref": "#/definitions/Invite"
+ "$ref": "#/definitions/Application"
},
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -416751,9 +416460,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -417681,10 +417387,10 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "APIMessageArray": {
+ "APIInviteArray": {
"type": "array",
"items": {
- "$ref": "#/definitions/Message"
+ "$ref": "#/definitions/Invite"
},
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -420981,9 +420687,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -421911,10 +421614,10 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "APIWebhookArray": {
+ "APIMessageArray": {
"type": "array",
"items": {
- "$ref": "#/definitions/Webhook"
+ "$ref": "#/definitions/Message"
},
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -425211,9 +424914,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -426141,10 +425841,10 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "APIDiscoveryCategoryArray": {
+ "APIWebhookArray": {
"type": "array",
"items": {
- "$ref": "#/definitions/Categories"
+ "$ref": "#/definitions/Webhook"
},
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -429441,9 +429141,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -430371,80 +430068,11 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "APIGeneralConfiguration": {
- "type": "object",
- "properties": {
- "instanceName": {
- "type": "string",
- "default": "Spacebar Instance"
- },
- "instanceDescription": {
- "type": [
- "null",
- "string"
- ],
- "default": "This is a Spacebar instance made in the pre-release days"
- },
- "frontPage": {
- "type": [
- "null",
- "string"
- ],
- "default": null
- },
- "tosPage": {
- "type": [
- "null",
- "string"
- ],
- "default": null
- },
- "correspondenceEmail": {
- "type": [
- "null",
- "string"
- ],
- "default": null
- },
- "correspondenceUserID": {
- "type": [
- "null",
- "string"
- ],
- "default": null
- },
- "image": {
- "type": [
- "null",
- "string"
- ],
- "default": null
- },
- "instanceId": {
- "type": "string"
- },
- "autoCreateBotUsers": {
- "type": "boolean",
- "default": false
- },
- "uniqueUsernames": {
- "type": "boolean",
- "default": false
- }
+ "APIDiscoveryCategoryArray": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Categories"
},
- "additionalProperties": false,
- "required": [
- "autoCreateBotUsers",
- "correspondenceEmail",
- "correspondenceUserID",
- "frontPage",
- "image",
- "instanceDescription",
- "instanceId",
- "instanceName",
- "tosPage",
- "uniqueUsernames"
- ],
"definitions": {
"ChannelPermissionOverwriteType": {
"enum": [
@@ -433740,9 +433368,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -434670,11 +434295,80 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "APIChannelArray": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Channel"
+ "APIGeneralConfiguration": {
+ "type": "object",
+ "properties": {
+ "instanceName": {
+ "type": "string",
+ "default": "Spacebar Instance"
+ },
+ "instanceDescription": {
+ "type": [
+ "null",
+ "string"
+ ],
+ "default": "This is a Spacebar instance made in the pre-release days"
+ },
+ "frontPage": {
+ "type": [
+ "null",
+ "string"
+ ],
+ "default": null
+ },
+ "tosPage": {
+ "type": [
+ "null",
+ "string"
+ ],
+ "default": null
+ },
+ "correspondenceEmail": {
+ "type": [
+ "null",
+ "string"
+ ],
+ "default": null
+ },
+ "correspondenceUserID": {
+ "type": [
+ "null",
+ "string"
+ ],
+ "default": null
+ },
+ "image": {
+ "type": [
+ "null",
+ "string"
+ ],
+ "default": null
+ },
+ "instanceId": {
+ "type": "string"
+ },
+ "autoCreateBotUsers": {
+ "type": "boolean",
+ "default": false
+ },
+ "uniqueUsernames": {
+ "type": "boolean",
+ "default": false
+ }
},
+ "additionalProperties": false,
+ "required": [
+ "autoCreateBotUsers",
+ "correspondenceEmail",
+ "correspondenceUserID",
+ "frontPage",
+ "image",
+ "instanceDescription",
+ "instanceId",
+ "instanceName",
+ "tosPage",
+ "uniqueUsernames"
+ ],
"definitions": {
"ChannelPermissionOverwriteType": {
"enum": [
@@ -437970,9 +437664,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -438900,10 +438591,10 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "APIEmojiArray": {
+ "APIChannelArray": {
"type": "array",
"items": {
- "$ref": "#/definitions/Emoji"
+ "$ref": "#/definitions/Channel"
},
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -442200,9 +441891,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -443130,10 +442818,10 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "APIMemberArray": {
+ "APIEmojiArray": {
"type": "array",
"items": {
- "$ref": "#/definitions/Member"
+ "$ref": "#/definitions/Emoji"
},
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -446430,9 +446118,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -447360,58 +447045,11 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "APIPublicMember": {
- "additionalProperties": false,
- "type": "object",
- "properties": {
- "id": {
- "type": "string"
- },
- "guild_id": {
- "type": "string"
- },
- "nick": {
- "type": "string"
- },
- "joined_at": {
- "type": "string",
- "format": "date-time"
- },
- "pending": {
- "type": "boolean"
- },
- "deaf": {
- "type": "boolean"
- },
- "mute": {
- "type": "boolean"
- },
- "premium_since": {
- "type": "integer"
- },
- "avatar": {
- "type": "string"
- },
- "user": {
- "$ref": "#/definitions/PublicUser"
- },
- "roles": {
- "type": "array",
- "items": {
- "type": "string"
- }
- }
+ "APIMemberArray": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Member"
},
- "required": [
- "deaf",
- "guild_id",
- "id",
- "joined_at",
- "mute",
- "pending",
- "roles",
- "user"
- ],
"definitions": {
"ChannelPermissionOverwriteType": {
"enum": [
@@ -448449,8 +448087,10 @@
"type": "integer",
"default": 0
},
-<<<<<<< HEAD
-=======
+ "position": {
+ "description": "Must be calculated Channel.calculatePosition",
+ "type": "integer"
+ },
"id": {
"type": "string"
}
@@ -448464,6 +448104,7 @@
"nsfw",
"owner",
"parent_id",
+ "position",
"type"
]
},
@@ -449524,7 +449165,6 @@
},
"additionalProperties": false,
"required": [
- "avatar",
"banner",
"bio",
"communication_disabled_until",
@@ -449569,13 +449209,9 @@
"permissions": {
"type": "string"
},
->>>>>>> 99963e1b (update user modify for unique usernames)
"position": {
- "description": "Must be calculated Channel.calculatePosition",
"type": "integer"
},
-<<<<<<< HEAD
-=======
"icon": {
"type": "string"
},
@@ -450700,13 +450336,13 @@
"type": "string",
"format": "date-time"
},
- "username": {
+ "avatar": {
"type": "string"
},
- "global_name": {
+ "username": {
"type": "string"
},
- "legacy_username": {
+ "global_name": {
"type": "string"
},
"discriminator": {
@@ -450715,9 +450351,6 @@
"public_flags": {
"type": "integer"
},
- "avatar": {
- "type": "string"
- },
"accent_color": {
"type": "integer"
},
@@ -451092,6 +450725,12 @@
},
"premium_progress_bar_enabled": {
"type": "boolean"
+ },
+ "channel_ordering": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
}
},
"additionalProperties": false,
@@ -451099,6 +450738,7 @@
"_do_validate",
"assign",
"bans",
+ "channel_ordering",
"channels",
"emojis",
"features",
@@ -451632,239 +451272,57 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "APIGuildWithJoinedAt": {
+ "APIPublicMember": {
+ "additionalProperties": false,
"type": "object",
"properties": {
- "joined_at": {
- "type": "string"
- },
- "afk_channel_id": {
- "type": "string"
- },
- "afk_channel": {
- "$ref": "#/definitions/Channel"
- },
- "afk_timeout": {
- "type": "integer"
- },
- "bans": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Ban"
- }
- },
- "banner": {
- "type": "string"
- },
- "default_message_notifications": {
- "type": "integer"
- },
- "description": {
- "type": "string"
- },
- "discovery_splash": {
+ "id": {
"type": "string"
},
- "explicit_content_filter": {
- "type": "integer"
- },
- "features": {
- "type": "array",
- "items": {
- "type": "string"
- },
- "default": []
- },
- "primary_category_id": {
+ "guild_id": {
"type": "string"
},
- "icon": {
+ "nick": {
"type": "string"
},
- "large": {
- "type": "boolean",
- "default": false
- },
- "max_members": {
- "type": "integer"
+ "joined_at": {
+ "type": "string",
+ "format": "date-time"
},
- "max_presences": {
- "type": "integer"
+ "pending": {
+ "type": "boolean"
},
- "max_video_channel_users": {
- "type": "integer"
+ "deaf": {
+ "type": "boolean"
},
- "member_count": {
- "type": "integer"
+ "mute": {
+ "type": "boolean"
},
- "presence_count": {
+ "premium_since": {
"type": "integer"
},
- "members": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Member"
- }
- },
- "roles": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Role"
- }
- },
- "channels": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Channel"
- }
- },
- "template_id": {
+ "avatar": {
"type": "string"
},
- "template": {
- "$ref": "#/definitions/Template"
- },
- "emojis": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Emoji"
- }
- },
- "stickers": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Sticker"
- }
- },
- "invites": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/Invite"
- }
- },
- "voice_states": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/VoiceState"
- }
+ "user": {
+ "$ref": "#/definitions/PublicUser"
},
- "webhooks": {
+ "roles": {
"type": "array",
"items": {
- "$ref": "#/definitions/Webhook"
+ "type": "string"
}
- },
- "mfa_level": {
- "type": "integer"
- },
- "name": {
- "type": "string"
- },
- "owner_id": {
- "type": "string"
- },
- "owner": {
- "$ref": "#/definitions/User"
- },
- "preferred_locale": {
- "type": "string"
- },
- "premium_subscription_count": {
- "type": "integer"
- },
- "premium_tier": {
- "type": "integer"
- },
- "public_updates_channel_id": {
- "type": "string"
- },
- "public_updates_channel": {
- "$ref": "#/definitions/Channel"
- },
- "rules_channel_id": {
- "type": "string"
- },
- "rules_channel": {
- "type": "string"
- },
- "region": {
- "type": "string"
- },
- "splash": {
- "type": "string"
- },
- "system_channel_id": {
- "type": "string"
- },
- "system_channel": {
- "$ref": "#/definitions/Channel"
- },
- "system_channel_flags": {
- "type": "integer"
- },
- "unavailable": {
- "type": "boolean",
- "default": false
- },
- "verification_level": {
- "type": "integer"
- },
- "welcome_screen": {
- "$ref": "#/definitions/GuildWelcomeScreen"
- },
- "widget_channel_id": {
- "type": "string"
- },
- "widget_channel": {
- "$ref": "#/definitions/Channel"
- },
- "widget_enabled": {
- "type": "boolean",
- "default": true
- },
- "nsfw_level": {
- "type": "integer"
- },
- "nsfw": {
- "type": "boolean",
- "default": false
- },
- "parent": {
- "type": "string"
- },
- "permissions": {
- "type": "integer"
- },
- "premium_progress_bar_enabled": {
- "type": "boolean",
- "default": false
- },
- "id": {
- "type": "string"
}
},
- "additionalProperties": false,
"required": [
- "bans",
- "channels",
- "emojis",
- "features",
+ "deaf",
+ "guild_id",
"id",
- "invites",
"joined_at",
- "members",
- "name",
- "nsfw",
- "premium_progress_bar_enabled",
- "public_updates_channel_id",
+ "mute",
+ "pending",
"roles",
- "stickers",
- "template",
- "unavailable",
- "voice_states",
- "webhooks",
- "welcome_screen",
- "widget_enabled"
+ "user"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -452751,6 +452209,12 @@
"type": "boolean",
"default": false
},
+ "channel_ordering": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
"id": {
"type": "string"
}
@@ -452758,6 +452222,7 @@
"additionalProperties": false,
"required": [
"bans",
+ "channel_ordering",
"channels",
"emojis",
"features",
@@ -452830,9 +452295,6 @@
"default_auto_archive_duration": {
"type": "integer"
},
- "position": {
- "type": "integer"
- },
"permission_overwrites": {
"type": "array",
"items": {
@@ -452899,7 +452361,10 @@
"type": "integer",
"default": 0
},
->>>>>>> 99963e1b (update user modify for unique usernames)
+ "position": {
+ "description": "Must be calculated Channel.calculatePosition",
+ "type": "integer"
+ },
"id": {
"type": "string"
}
@@ -455154,9 +454619,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -455728,6 +455190,10 @@
"type": "integer",
"default": 1048576
},
+ "minUsername": {
+ "type": "integer",
+ "default": 2
+ },
"maxUsername": {
"type": "integer",
"default": 32
@@ -455741,7 +455207,8 @@
"required": [
"maxFriends",
"maxGuilds",
- "maxUsername"
+ "maxUsername",
+ "minUsername"
]
},
"GuildLimits": {
@@ -459615,9 +459082,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -463845,9 +463309,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -468075,9 +467536,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -472305,9 +471763,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -476535,9 +475990,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -480791,9 +480243,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -485021,9 +484470,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -489272,9 +488718,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -493516,9 +492959,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -497872,20 +497312,12 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
"public_flags": {
"type": "integer"
},
-<<<<<<< HEAD
-=======
- "avatar": {
- "type": "string"
- },
"accent_color": {
"type": "integer"
},
@@ -498260,6 +497692,12 @@
},
"premium_progress_bar_enabled": {
"type": "boolean"
+ },
+ "channel_ordering": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
}
},
"additionalProperties": false,
@@ -498267,6 +497705,7 @@
"_do_validate",
"assign",
"bans",
+ "channel_ordering",
"channels",
"emojis",
"features",
@@ -498800,29 +498239,38 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "UserRelationshipsResponse": {
- "type": "object",
- "properties": {
- "id": {
- "type": "string"
- },
- "type": {
- "$ref": "#/definitions/RelationshipType"
- },
- "nickname": {
- "type": "null"
+ "UserRelationsResponse": {
+ "type": "array",
+ "items": {
+ "additionalProperties": false,
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "username": {
+ "type": "string"
+ },
+ "global_name": {
+ "type": "string"
+ },
+ "discriminator": {
+ "type": "string"
+ },
+ "avatar": {
+ "type": "string"
+ },
+ "public_flags": {
+ "type": "integer"
+ }
},
- "user": {
- "$ref": "#/definitions/PublicUser"
- }
+ "required": [
+ "discriminator",
+ "id",
+ "public_flags",
+ "username"
+ ]
},
- "additionalProperties": false,
- "required": [
- "id",
- "nickname",
- "type",
- "user"
- ],
"definitions": {
"ChannelPermissionOverwriteType": {
"enum": [
@@ -499708,6 +499156,12 @@
"type": "boolean",
"default": false
},
+ "channel_ordering": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
"id": {
"type": "string"
}
@@ -499715,6 +499169,7 @@
"additionalProperties": false,
"required": [
"bans",
+ "channel_ordering",
"channels",
"emojis",
"features",
@@ -499787,9 +499242,6 @@
"default_auto_archive_duration": {
"type": "integer"
},
- "position": {
- "type": "integer"
- },
"permission_overwrites": {
"type": "array",
"items": {
@@ -499856,6 +499308,10 @@
"type": "integer",
"default": 0
},
+ "position": {
+ "description": "Must be calculated Channel.calculatePosition",
+ "type": "integer"
+ },
"id": {
"type": "string"
}
@@ -499869,6 +499325,7 @@
"nsfw",
"owner",
"parent_id",
+ "position",
"type"
]
},
@@ -500929,7 +500386,6 @@
},
"additionalProperties": false,
"required": [
- "avatar",
"banner",
"bio",
"communication_disabled_until",
@@ -502101,13 +501557,13 @@
"type": "string",
"format": "date-time"
},
- "username": {
+ "avatar": {
"type": "string"
},
- "global_name": {
+ "username": {
"type": "string"
},
- "legacy_username": {
+ "global_name": {
"type": "string"
},
"discriminator": {
@@ -502116,10 +501572,6 @@
"public_flags": {
"type": "integer"
},
- "avatar": {
- "type": "string"
- },
->>>>>>> 99963e1b (update user modify for unique usernames)
"accent_color": {
"type": "integer"
},
@@ -503041,38 +502493,29 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "UserRelationsResponse": {
- "type": "array",
- "items": {
- "additionalProperties": false,
- "type": "object",
- "properties": {
- "id": {
- "type": "string"
- },
- "username": {
- "type": "string"
- },
- "global_name": {
- "type": "string"
- },
- "discriminator": {
- "type": "string"
- },
- "avatar": {
- "type": "string"
- },
- "public_flags": {
- "type": "integer"
- }
+ "UserRelationshipsResponse": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
},
- "required": [
- "discriminator",
- "id",
- "public_flags",
- "username"
- ]
+ "type": {
+ "$ref": "#/definitions/RelationshipType"
+ },
+ "nickname": {
+ "type": "null"
+ },
+ "user": {
+ "$ref": "#/definitions/PublicUser"
+ }
},
+ "additionalProperties": false,
+ "required": [
+ "id",
+ "nickname",
+ "type",
+ "user"
+ ],
"definitions": {
"ChannelPermissionOverwriteType": {
"enum": [
@@ -506368,9 +505811,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -506942,6 +506382,10 @@
"type": "integer",
"default": 1048576
},
+ "minUsername": {
+ "type": "integer",
+ "default": 2
+ },
"maxUsername": {
"type": "integer",
"default": 32
@@ -506955,7 +506399,8 @@
"required": [
"maxFriends",
"maxGuilds",
- "maxUsername"
+ "maxUsername",
+ "minUsername"
]
},
"GuildLimits": {
@@ -507293,28 +506738,20 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "UserRelationshipsResponse": {
+ "WebAuthnCreateResponse": {
"type": "object",
"properties": {
- "id": {
+ "name": {
"type": "string"
},
- "type": {
- "$ref": "#/definitions/RelationshipType"
- },
- "nickname": {
- "type": "null"
- },
- "user": {
- "$ref": "#/definitions/PublicUser"
+ "id": {
+ "type": "string"
}
},
"additionalProperties": false,
"required": [
"id",
- "nickname",
- "type",
- "user"
+ "name"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -510611,9 +510048,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -511541,20 +510975,20 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "WebAuthnCreateResponse": {
+ "WebhookCreateResponse": {
"type": "object",
"properties": {
- "name": {
- "type": "string"
+ "user": {
+ "$ref": "#/definitions/User"
},
- "id": {
- "type": "string"
+ "hook": {
+ "$ref": "#/definitions/Webhook"
}
},
"additionalProperties": false,
"required": [
- "id",
- "name"
+ "hook",
+ "user"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -514851,9 +514285,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -515781,21 +515212,8 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "WebhookCreateResponse": {
- "type": "object",
- "properties": {
- "user": {
- "$ref": "#/definitions/User"
- },
- "hook": {
- "$ref": "#/definitions/Webhook"
- }
- },
- "additionalProperties": false,
- "required": [
- "hook",
- "user"
- ],
+ "ActivitySchema": {
+ "$ref": "#/definitions/ActivitySchema",
"definitions": {
"ChannelPermissionOverwriteType": {
"enum": [
@@ -519091,9 +518509,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -520021,8 +519436,20 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "ActivitySchema": {
- "$ref": "#/definitions/ActivitySchema",
+ "BulkDeleteSchema": {
+ "type": "object",
+ "properties": {
+ "messages": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "messages"
+ ],
"definitions": {
"ChannelPermissionOverwriteType": {
"enum": [
@@ -523318,9 +522745,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -524248,19 +523672,34 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "BulkDeleteSchema": {
+ "MFAResponse": {
"type": "object",
"properties": {
- "messages": {
- "type": "array",
- "items": {
- "type": "string"
- }
+ "ticket": {
+ "type": "string"
+ },
+ "mfa": {
+ "type": "boolean",
+ "enum": [
+ true
+ ]
+ },
+ "sms": {
+ "type": "boolean",
+ "enum": [
+ false
+ ]
+ },
+ "token": {
+ "type": "null"
}
},
"additionalProperties": false,
"required": [
- "messages"
+ "mfa",
+ "sms",
+ "ticket",
+ "token"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -527557,9 +526996,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -528487,9 +527923,12 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "MFAResponse": {
+ "WebAuthnResponse": {
"type": "object",
"properties": {
+ "webauthn": {
+ "type": "string"
+ },
"ticket": {
"type": "string"
},
@@ -528514,7 +527953,8 @@
"mfa",
"sms",
"ticket",
- "token"
+ "token",
+ "webauthn"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -531811,9 +531251,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -532741,38 +532178,17 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "WebAuthnResponse": {
- "type": "object",
- "properties": {
- "webauthn": {
- "type": "string"
- },
- "ticket": {
- "type": "string"
- },
- "mfa": {
- "type": "boolean",
- "enum": [
- true
- ]
+ "LoginResponse": {
+ "anyOf": [
+ {
+ "$ref": "#/definitions/TokenResponse"
},
- "sms": {
- "type": "boolean",
- "enum": [
- false
- ]
+ {
+ "$ref": "#/definitions/MFAResponse"
},
- "token": {
- "type": "null"
+ {
+ "$ref": "#/definitions/WebAuthnResponse"
}
- },
- "additionalProperties": false,
- "required": [
- "mfa",
- "sms",
- "ticket",
- "token",
- "webauthn"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -536069,9 +535485,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -536999,17 +536412,16 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "LoginResponse": {
- "anyOf": [
- {
- "$ref": "#/definitions/TokenResponse"
- },
- {
- "$ref": "#/definitions/MFAResponse"
- },
- {
- "$ref": "#/definitions/WebAuthnResponse"
+ "MemberNickChangeSchema": {
+ "type": "object",
+ "properties": {
+ "nick": {
+ "type": "string"
}
+ },
+ "additionalProperties": false,
+ "required": [
+ "nick"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -540306,9 +539718,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -541236,16 +540645,16 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "MemberNickChangeSchema": {
+ "PruneSchema": {
"type": "object",
"properties": {
- "nick": {
- "type": "string"
+ "days": {
+ "type": "integer"
}
},
"additionalProperties": false,
"required": [
- "nick"
+ "days"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -544542,9 +543951,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -545472,16 +544878,16 @@
},
"$schema": "http://json-schema.org/draft-07/schema#"
},
- "PruneSchema": {
+ "UsernameAttemptResponse": {
"type": "object",
"properties": {
- "days": {
- "type": "integer"
+ "taken": {
+ "type": "boolean"
}
},
"additionalProperties": false,
"required": [
- "days"
+ "taken"
],
"definitions": {
"ChannelPermissionOverwriteType": {
@@ -548778,9 +548184,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
@@ -553020,9 +552423,6 @@
"global_name": {
"type": "string"
},
- "legacy_username": {
- "type": "string"
- },
"discriminator": {
"type": "string"
},
diff --git a/src/api/routes/auth/register.ts b/src/api/routes/auth/register.ts
index de1cbd3d..33fc6062 100644
--- a/src/api/routes/auth/register.ts
+++ b/src/api/routes/auth/register.ts
@@ -50,9 +50,18 @@ router.post(
}),
async (req: Request, res: Response) => {
const body = req.body as RegisterSchema;
- const { register, security, limits } = Config.get();
+ const { register, security, limits, general } = Config.get();
const ip = getIpAdress(req);
+ if (!general.uniqueUsernames && body.unique_username_registration) {
+ throw FieldErrors({
+ unique_username_registration: {
+ code: "UNIQUE_USERNAMES_DISABLED",
+ message: req.t("auth:register.UNIQUE_USERNAMES_DISABLED"),
+ },
+ });
+ }
+
// Reg tokens
// They're a one time use token that bypasses registration limits ( rates, disabled reg, etc )
let regTokenUsed = false;
diff --git a/src/api/routes/unique-username/username-attempt-unauthed.ts b/src/api/routes/unique-username/username-attempt-unauthed.ts
new file mode 100644
index 00000000..a1f63a69
--- /dev/null
+++ b/src/api/routes/unique-username/username-attempt-unauthed.ts
@@ -0,0 +1,33 @@
+import { route } from "@spacebar/api";
+import { Config, User, UsernameAttemptUnauthedSchema } from "@spacebar/util";
+import { Request, Response, Router } from "express";
+import { HTTPError } from "lambert-server";
+const router = Router();
+
+router.post(
+ "/",
+ route({
+ requestBody: "UsernameAttemptUnauthedSchema",
+ responses: {
+ 200: { body: "UsernameAttemptResponse" },
+ 400: { body: "APIErrorResponse" },
+ },
+ description: "Check if a username is available",
+ }),
+ async (req: Request, res: Response) => {
+ const body = req.body as UsernameAttemptUnauthedSchema;
+ const { uniqueUsernames } = Config.get().general;
+ if (!uniqueUsernames) {
+ throw new HTTPError(
+ "Unique Usernames feature is not enabled on this instance.",
+ 400,
+ );
+ }
+
+ res.json({
+ taken: !User.isUsernameAvailable(body.username),
+ });
+ },
+);
+
+export default router;
diff --git a/src/api/routes/unique-username/username-suggestions-unauthed.ts b/src/api/routes/unique-username/username-suggestions-unauthed.ts
new file mode 100644
index 00000000..9b112b55
--- /dev/null
+++ b/src/api/routes/unique-username/username-suggestions-unauthed.ts
@@ -0,0 +1,37 @@
+import { route } from "@spacebar/api";
+import { Request, Response, Router } from "express";
+import { HTTPError } from "lambert-server";
+import { Config } from "../../../util";
+const router = Router();
+
+router.get(
+ "/",
+ route({
+ query: {
+ global_name: {
+ type: "string",
+ required: false,
+ },
+ },
+ responses: {
+ 400: { body: "APIErrorResponse" },
+ },
+ }),
+ async (req: Request, res: Response) => {
+ const globalName = req.query.globalName as string | undefined;
+ const { uniqueUsernames } = Config.get().general;
+ if (!uniqueUsernames) {
+ throw new HTTPError(
+ "Unique Usernames feature is not enabled on this instance.",
+ 400,
+ );
+ }
+
+ // return a random suggestion
+ if (!globalName) return res.json({ username: "" });
+ // return a suggestion based on the globalName
+ return res.json({ username: globalName });
+ },
+);
+
+export default router;
diff --git a/src/api/routes/users/@me/index.ts b/src/api/routes/users/@me/index.ts
index f4578126..55d2ce12 100644
--- a/src/api/routes/users/@me/index.ts
+++ b/src/api/routes/users/@me/index.ts
@@ -172,10 +172,7 @@ router.patch(
}
// check if username is already taken (pomelo only)
- const userCount = await User.count({
- where: { username: body.username },
- });
- if (userCount > 0) {
+ if (!User.isUsernameAvailable(body.username))
throw FieldErrors({
username: {
code: "USERNAME_ALREADY_TAKEN",
@@ -184,7 +181,6 @@ router.patch(
),
},
});
- }
}
// handle username changes (old username system)
diff --git a/src/util/entities/User.ts b/src/util/entities/User.ts
index d1fbb5c2..5ec9862e 100644
--- a/src/util/entities/User.ts
+++ b/src/util/entities/User.ts
@@ -344,6 +344,7 @@ export class User extends BaseClass {
password,
id,
req,
+ global_name,
}: {
username: string;
password?: string;
@@ -351,8 +352,10 @@ export class User extends BaseClass {
date_of_birth?: Date; // "2000-04-03"
id?: string;
req?: Request;
+ global_name?: string;
}) {
const { uniqueUsernames } = Config.get().general;
+ const { minUsername, maxUsername } = Config.get().limits.user;
// trim special uf8 control characters -> Backspace, Newline, ...
username = trimSpecial(username);
@@ -374,6 +377,34 @@ export class User extends BaseClass {
}
}
+ if (uniqueUsernames) {
+ // check if there is already an account with this username
+ if (!User.isUsernameAvailable(username))
+ throw FieldErrors({
+ username: {
+ code: "USERNAME_ALREADY_TAKEN",
+ message:
+ req?.t("common:field.USERNAME_ALREADY_TAKEN") || "",
+ },
+ });
+
+ // validate username length
+ if (
+ username.length < minUsername ||
+ username.length > maxUsername
+ ) {
+ throw FieldErrors({
+ username: {
+ code: "BASE_TYPE_BAD_LENGTH",
+ message:
+ req?.t("common:field.BASE_TYPE_BAD_LENGTH", {
+ length: `${minUsername} and ${maxUsername}`,
+ }) || "",
+ },
+ });
+ }
+ }
+
// TODO: save date_of_birth
// appearently discord doesn't save the date of birth and just calculate if nsfw is allowed
// if nsfw_allowed is null/undefined it'll require date_of_birth to set it to true/false
@@ -386,6 +417,7 @@ export class User extends BaseClass {
const user = User.create({
username: uniqueUsernames ? username.toLowerCase() : username,
+ global_name: uniqueUsernames ? global_name : undefined,
discriminator,
id: id || Snowflake.generate(),
email: email,
@@ -429,6 +461,14 @@ export class User extends BaseClass {
return user;
}
+
+ static async isUsernameAvailable(username: string) {
+ const user = await User.findOne({
+ where: { username },
+ select: ["id"],
+ });
+ return !user;
+ }
}
export const CUSTOM_USER_FLAG_OFFSET = BigInt(1) << BigInt(32);
diff --git a/src/util/schemas/UsernameAttemptUnauthedSchema.ts b/src/util/schemas/UsernameAttemptUnauthedSchema.ts
new file mode 100644
index 00000000..0ac83dd0
--- /dev/null
+++ b/src/util/schemas/UsernameAttemptUnauthedSchema.ts
@@ -0,0 +1,3 @@
+export interface UsernameAttemptUnauthedSchema {
+ username: string;
+}
diff --git a/src/util/schemas/index.ts b/src/util/schemas/index.ts
index 44a504cd..bb449e45 100644
--- a/src/util/schemas/index.ts
+++ b/src/util/schemas/index.ts
@@ -72,6 +72,7 @@ export * from "./UserModifySchema";
export * from "./UserNoteUpdateSchema";
export * from "./UserProfileModifySchema";
export * from "./UserSettingsSchema";
+export * from "./UsernameAttemptUnauthedSchema";
export * from "./Validator";
export * from "./VanityUrlSchema";
export * from "./VoiceIdentifySchema";
diff --git a/src/util/schemas/responses/UsernameAttemptResponse.ts b/src/util/schemas/responses/UsernameAttemptResponse.ts
new file mode 100644
index 00000000..864a3bb0
--- /dev/null
+++ b/src/util/schemas/responses/UsernameAttemptResponse.ts
@@ -0,0 +1,3 @@
+export interface UsernameAttemptResponse {
+ taken: boolean;
+}
|