{ "x-generator": "NSwag v14.6.3.0 (NJsonSchema v11.5.2.0 (Newtonsoft.Json v13.0.0.0))", "openapi": "3.0.0", "info": { "title": "Elite API", "description": "A backend API for https://eliteskyblock.com/ that provides Hypixel Skyblock data.\n

\nUse of this API requires following the [Elite API TOS](https://eliteskyblock.com/apiterms). This API is not affiliated with Hypixel or Mojang.", "termsOfService": "https://eliteskyblock.com/apiterms", "contact": { "name": "GitHub", "url": "https://github.com/EliteFarmers/API" }, "license": { "name": "GPL-3.0", "url": "https://github.com/EliteFarmers/API/blob/master/LICENSE.txt" }, "version": "admin-v1" }, "servers": [ { "url": "https://api.eliteskyblock.com" } ], "paths": { "/account/{player}": { "get": { "tags": ["Account"], "summary": "Get Account", "description": "Retrieves the Minecraft account information for a given player, along with an overview of their profiles and player data.", "operationId": "GetAccount", "parameters": [ { "name": "player", "in": "path", "required": true, "description": "Player uuid or ign", "schema": { "type": "string" }, "example": "Ke5o" } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MinecraftAccountDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } }, "post": { "tags": ["Account"], "summary": "Link Account", "operationId": "LinkOwnAccount", "parameters": [ { "name": "player", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ProblemDetails" } } } } }, "security": [ { "JWTBearerAuth": [] } ] }, "delete": { "tags": ["Account"], "summary": "Unlink Account", "operationId": "UnlinkOwnAccount", "parameters": [ { "name": "player", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ProblemDetails" } } } } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/account/{player}/face": { "get": { "tags": ["Account"], "summary": "Get Minecraft Account Face Image", "description": "Returns a 72x72 face png image of the Minecraft account associated with the provided player name or UUID. 72x72 response includes the player's \"hat\" overlay. If not found, returns Steve's face.", "operationId": "GetAccountFace1", "parameters": [ { "name": "player", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/account/{player}/face.png": { "get": { "tags": ["Account"], "summary": "Get Minecraft Account Face Image", "description": "Returns a 72x72 face png image of the Minecraft account associated with the provided player name or UUID. 72x72 response includes the player's \"hat\" overlay. If not found, returns Steve's face.", "operationId": "GetAccountFace2", "parameters": [ { "name": "player", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/account/{discordId}": { "get": { "tags": ["Account"], "summary": "Get Minecraft Account from Discord Id", "operationId": "GetAccountFromDiscord", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MinecraftAccountDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/account/{discordId}/settings": { "get": { "tags": ["Account"], "summary": "Get Account Settings", "operationId": "GetAccountSettings", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserSettingsDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/account": { "get": { "tags": ["Account"], "summary": "Get Logged-In Account", "operationId": "GetAuthAccount", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AuthorizedAccountDto" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/account/gifts/{OrderId}/claim": { "post": { "tags": ["Account"], "summary": "Claim a Pending Gift", "operationId": "ClaimGift", "parameters": [ { "name": "orderId", "in": "path", "required": true, "schema": { "type": "string" } } ], "requestBody": { "x-name": "ClaimGiftRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ClaimGiftRequest" } } }, "required": true, "x-position": 1 }, "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/account/gifts/{OrderId}/decline": { "post": { "tags": ["Account"], "summary": "Decline Pending Gift Items", "operationId": "DeclineGift", "parameters": [ { "name": "orderId", "in": "path", "required": true, "schema": { "type": "string" } } ], "requestBody": { "x-name": "DeclineGiftRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeclineGiftRequest" } } }, "required": true, "x-position": 1 }, "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/account/gifts/pending": { "get": { "tags": ["Account"], "summary": "Get Pending Gift Orders", "operationId": "GetPendingGifts", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/PendingGiftDto" } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/account/gifts/{OrderId}/resend": { "post": { "tags": ["Account"], "summary": "Reassign Expired or Returned Gift Items", "operationId": "ResendGift", "parameters": [ { "name": "orderId", "in": "path", "required": true, "schema": { "type": "string" } } ], "requestBody": { "x-name": "ResendGiftRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResendGiftRequest" } } }, "required": true, "x-position": 1 }, "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/account/orders/{OrderId}": { "get": { "tags": ["Account"], "summary": "Get User Order Detail", "operationId": "GetUserOrderDetail", "parameters": [ { "name": "orderId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserOrderDto" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/account/orders": { "get": { "tags": ["Account"], "summary": "Get User Order History", "operationId": "GetUserOrders", "parameters": [ { "name": "search", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "provider", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "status", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "relationship", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "includeCheckoutStates", "in": "query", "required": true, "schema": { "type": "boolean" } }, { "name": "offset", "in": "query", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "limit", "in": "query", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserOrdersResponseDto" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/account/purchases/reconcile": { "post": { "tags": ["Account"], "summary": "Reconcile User Purchases", "operationId": "ReconcileUserPurchases", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ReconciliationResultDto" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/account/purchases": { "post": { "tags": ["Account"], "summary": "Refresh Purchases", "operationId": "RefreshPurchases", "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/account/search": { "get": { "tags": ["Account"], "summary": "Search for Minecraft Account", "operationId": "SearchAccounts", "parameters": [ { "name": "q", "in": "query", "required": true, "description": "Search query string", "schema": { "type": "string" } }, { "name": "start", "in": "query", "description": "Start of results for pagination", "schema": { "type": "string", "nullable": true } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "type": "string" } } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/account/discord-search": { "get": { "tags": ["Account"], "summary": "Search for Minecraft Account From Discord", "description": "Authenticated endpoint that returns a list of accounts that have a specific discord username linked.", "operationId": "SearchAccountsWithDiscord", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AccountSearchResultDto" } } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/account/primary/{player}": { "post": { "tags": ["Account"], "summary": "Set Primary Account", "operationId": "SetPrimaryAccount", "parameters": [ { "name": "player", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ProblemDetails" } } } } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/account/{playerUuid}/badges": { "post": { "tags": ["Account"], "summary": "Update Account Settings", "operationId": "UpdateBadges", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } } ], "requestBody": { "x-name": "badges", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/EditUserBadgeDto" } } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/account/{playerUuid}/{profileUuid}/fortune": { "post": { "tags": ["Account"], "summary": "Update Fortune Settings for Account", "operationId": "UpdateFortuneSettings", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" } } ], "requestBody": { "x-name": "settings", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MemberFortuneSettingsDto" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ProblemDetails" } } } } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/account/settings": { "patch": { "tags": ["Account"], "summary": "Update Account Settings", "operationId": "UpdateAccount", "requestBody": { "x-name": "UpdateUserSettingsDto", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateUserSettingsDto" } } }, "required": true, "x-position": 1 }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ProblemDetails" } } } } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/user/{discordId}/roles/{role}": { "post": { "tags": ["Admin"], "summary": "Add a role to a user", "operationId": "AddRoleToUser", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "role", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] }, "delete": { "tags": ["Admin"], "summary": "Remove a role from a user", "operationId": "RemoveRoleFromUser", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } }, { "name": "role", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admins": { "get": { "tags": ["Admin"], "summary": "Get list of admins", "operationId": "GetAdmins", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AccountWithPermsDto" } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/roles": { "get": { "tags": ["Admin"], "summary": "Get list of roles", "operationId": "GetRoles", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "type": "string" } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/cooldowns/player/{player}": { "post": { "tags": ["Admin"], "summary": "Reset a player's cooldowns", "description": "This enables a player's data from Hypixel to be refreshed on the next request.", "operationId": "ClearPlayerCooldowns", "parameters": [ { "name": "player", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/upcomingcontests": { "delete": { "tags": ["Admin"], "summary": "Delete all upcoming contests", "description": "Delete all upcoming contests in case of wrong data", "operationId": "DeleteUpcomingContests", "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/events/{eventId}": { "delete": { "tags": ["Admin"], "summary": "Delete Event", "operationId": "DeleteEventApproval", "parameters": [ { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/events/pending": { "get": { "tags": ["Admin"], "summary": "Get events pending approval", "operationId": "GetPendingEvents", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/EventDetailsDto" } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/events/{eventId}/approve": { "post": { "tags": ["Admin"], "summary": "Set event approval", "operationId": "SetEventApproval", "parameters": [ { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } }, { "name": "approve", "in": "query", "schema": { "type": "boolean", "default": false, "nullable": true } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/link-account": { "post": { "tags": ["Admin"], "summary": "Link an Account", "operationId": "LinkUserAccount", "requestBody": { "x-name": "AdminLinkAccountRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AdminLinkAccountRequest" } } }, "required": true, "x-position": 1 }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ProblemDetails" } } } } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/guild/{guildId}/refresh": { "post": { "tags": ["Admin"], "summary": "Refresh a guild", "description": "This fetches the latest data from Discord for the specified guild", "operationId": "RefreshDiscordGuild", "parameters": [ { "name": "guildId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/hguilds/{guildId}/refresh": { "post": { "tags": ["Admin"], "summary": "Refresh a Hypixel Guild", "description": "This fetches the latest data from Hypixel for the specified guild", "operationId": "RefreshHypixelGuild", "parameters": [ { "name": "guildId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/leaderboards/sync": { "get": { "tags": ["Admin"], "summary": "Sync leaderboards", "description": "Sync leaderboards in case of wrong data", "operationId": "SyncLeaderboards", "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/unlink-account": { "post": { "tags": ["Admin"], "summary": "Unlink an Account", "operationId": "UnlinkUserAccount", "requestBody": { "x-name": "AdminUnlinkAccountRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AdminUnlinkAccountRequest" } } }, "required": true, "x-position": 1 }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ProblemDetails" } } } } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/payments/orders/{OrderId}/cancel-recurring": { "post": { "tags": ["Admin"], "summary": "Cancel Tebex Recurring Payment (Admin)", "operationId": "CancelRecurringPayment", "parameters": [ { "name": "orderId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AdminOrderDetailDto" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/payments/orders/{OrderId}": { "get": { "tags": ["Admin"], "summary": "Get Order Detail (Admin)", "operationId": "GetAdminOrderDetail", "parameters": [ { "name": "orderId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AdminOrderDetailDto" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/payments/orders/{OrderId}/events": { "get": { "tags": ["Admin"], "summary": "Get Order Provider Events (Admin)", "operationId": "GetOrderEvents", "parameters": [ { "name": "orderId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/ProviderEventDto" } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/payments/orders": { "get": { "tags": ["Admin"], "summary": "List Orders (Admin)", "operationId": "GetAdminOrders", "parameters": [ { "name": "search", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "provider", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "status", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "providerStatus", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "transactionId", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "basketIdent", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "recurringReference", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "buyerId", "in": "query", "schema": { "type": "integer", "format": "uint64", "nullable": true } }, { "name": "recipientId", "in": "query", "schema": { "type": "integer", "format": "uint64", "nullable": true } }, { "name": "recipientGuildId", "in": "query", "schema": { "type": "integer", "format": "uint64", "nullable": true } }, { "name": "offset", "in": "query", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "limit", "in": "query", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AdminOrdersResponseDto" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/payments/orders/{OrderId}/pause-recurring": { "post": { "tags": ["Admin"], "summary": "Pause Tebex Recurring Payment (Admin)", "operationId": "PauseRecurringPayment", "parameters": [ { "name": "orderId", "in": "path", "required": true, "schema": { "type": "string" } } ], "requestBody": { "x-name": "PauseRecurringPaymentRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PauseRecurringPaymentRequest" } } }, "required": true, "x-position": 1 }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AdminOrderDetailDto" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/payments/orders/{OrderId}/reconcile": { "post": { "tags": ["Admin"], "summary": "Reconcile Order (Admin)", "operationId": "ReconcileOrder", "parameters": [ { "name": "orderId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ReconciliationResultDto" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/payments/orders/{OrderId}/refresh-provider-state": { "post": { "tags": ["Admin"], "summary": "Refresh Tebex Provider State (Admin)", "operationId": "RefreshProviderState", "parameters": [ { "name": "orderId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AdminOrderDetailDto" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/payments/orders/{OrderId}/refund": { "post": { "tags": ["Admin"], "summary": "Refund Tebex Order (Admin)", "operationId": "RefundOrder", "parameters": [ { "name": "orderId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AdminOrderDetailDto" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/payments/tebex/webhooks/{WebhookId}/replay": { "post": { "tags": ["Admin"], "summary": "Replay Tebex Webhook (Admin)", "operationId": "ReplayWebhook", "parameters": [ { "name": "webhookId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ReplayWebhookResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/payments/orders/{OrderId}/resolve-recipient": { "post": { "tags": ["Admin"], "summary": "Resolve Gift Recipient (Admin)", "operationId": "ResolveRecipient", "parameters": [ { "name": "orderId", "in": "path", "required": true, "schema": { "type": "string" } } ], "requestBody": { "x-name": "ResolveRecipientRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResolveRecipientRequest" } } }, "required": true, "x-position": 1 }, "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/payments/orders/{OrderId}/resume-recurring": { "post": { "tags": ["Admin"], "summary": "Resume Tebex Recurring Payment (Admin)", "operationId": "ResumeRecurringPayment", "parameters": [ { "name": "orderId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AdminOrderDetailDto" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/announcements/create": { "post": { "tags": ["Announcements"], "summary": "Create an announcement", "description": "Creates a new announcement that will be displayed to users", "operationId": "CreateAnnouncement", "requestBody": { "x-name": "CreateAnnouncementDto", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateAnnouncementDto" } } }, "required": true, "x-position": 1 }, "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/announcements/{announcementId}/dismiss": { "post": { "tags": ["Announcements"], "summary": "Dismiss an announcement", "description": "Mark an announcement as dismissed for the current user", "operationId": "DismissAnnouncement", "parameters": [ { "name": "announcementId", "in": "path", "required": true, "schema": { "type": "string", "format": "guid" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ProblemDetails" } } } } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/announcements": { "get": { "tags": ["Announcements"], "summary": "Get announcements", "description": "Gets all announcements that should be shown to users", "operationId": "GetAnnouncement", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AnnouncementDto" } } } } } } } }, "/admin/audit-logs/filters": { "get": { "tags": ["Admin"], "summary": "Get available audit log filters", "description": "Returns distinct actions and target types for filter dropdowns.", "operationId": "GetAuditLogFilters", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AuditLogFiltersResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/audit-logs": { "get": { "tags": ["Admin"], "summary": "Get admin audit logs", "description": "Retrieve paginated and filterable audit logs for administrative actions.", "operationId": "GetAuditLogs", "parameters": [ { "name": "offset", "in": "query", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "limit", "in": "query", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "action", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "targetType", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "adminUserId", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "fromDate", "in": "query", "schema": { "type": "string", "format": "date-time", "nullable": true } }, { "name": "toDate", "in": "query", "schema": { "type": "string", "format": "date-time", "nullable": true } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetAuditLogsResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/auth/confirmations/{id}/accept": { "post": { "tags": ["Auth"], "summary": "Accept a confirmation", "description": "Accepts a login confirmation that users will need to accept to proceed.", "operationId": "AcceptConfirmation", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfirmationDto" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/auth/confirmations/{id}": { "get": { "tags": ["Auth"], "summary": "Get a confirmation", "description": "Gets a confirmation that users will need to accept.", "operationId": "GetConfirmation", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfirmationDto" } } } } } } }, "/auth/me": { "get": { "tags": ["Auth"], "summary": "Get logged in account", "description": "Get the account of the currently logged in user", "operationId": "GetSession", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AuthSessionDto" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/auth/login": { "post": { "tags": ["Auth"], "summary": "Log in", "description": "Log in with discord credentials", "operationId": "Login", "requestBody": { "x-name": "DiscordLoginDto", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DiscordLoginDto" } } }, "required": true, "x-position": 1 }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AuthResponseDto" } } } } } } }, "/auth/refresh": { "post": { "tags": ["Auth"], "summary": "Refresh Auth Token", "description": "Refresh the auth token using the refresh token", "operationId": "RefreshAuth", "requestBody": { "x-name": "AuthRefreshDto", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AuthRefreshDto" } } }, "required": true, "x-position": 1 }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AuthResponseDto" } } } } } } }, "/badge/user/{player}/{badgeId}": { "post": { "tags": ["Badge"], "summary": "Add a badge to a user", "operationId": "AddBadgeToUserBadge", "parameters": [ { "name": "player", "in": "path", "required": true, "description": "Player uuid or ign", "schema": { "type": "string" } }, { "name": "badgeId", "in": "path", "required": true, "description": "ID of the badge", "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] }, "delete": { "tags": ["Badge"], "summary": "Remove a badge from a user", "operationId": "DeleteBadgeFromUserBadge", "parameters": [ { "name": "player", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "badgeId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/badges": { "post": { "tags": ["Badge"], "summary": "Create a badge", "operationId": "CreateBadge", "requestBody": { "x-name": "badge", "content": { "multipart/form-data": { "schema": { "$ref": "#/components/schemas/CreateBadgeRequest_CreateBadge" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] }, "get": { "tags": ["Badge"], "summary": "Get all badges", "operationId": "GetBadges", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/BadgeDto" } } } } } } } }, "/badge/{badgeId}": { "delete": { "tags": ["Badge"], "summary": "Delete a badge", "operationId": "DeleteBadge", "parameters": [ { "name": "badgeId", "in": "path", "required": true, "description": "ID of the badge", "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] }, "patch": { "tags": ["Badge"], "summary": "Update a badge", "operationId": "UpdateBadge", "parameters": [ { "name": "badgeId", "in": "path", "required": true, "description": "ID of the badge", "schema": { "type": "integer", "format": "int32" } } ], "requestBody": { "x-name": "badge", "content": { "multipart/form-data": { "schema": { "$ref": "#/components/schemas/UpdateBadgeRequest_UpdateBadge" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/bot/account/{discordId}/{player}": { "post": { "tags": ["Bot"], "summary": "Link Account", "operationId": "LinkAccountBot", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "player", "in": "path", "required": true, "description": "Player uuid or ign", "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ProblemDetails" } } } } } }, "delete": { "tags": ["Bot"], "summary": "Unlink Account", "operationId": "UnlinkAccountBot", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } }, { "name": "player", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ProblemDetails" } } } } } } }, "/bot/account/{discordId}/{player}/primary": { "post": { "tags": ["Bot"], "summary": "Make Primary Account", "operationId": "MakePrimaryAccount", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } }, { "name": "player", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ProblemDetails" } } } } } } }, "/bot/account/{discordId}/purchases": { "post": { "tags": ["Bot"], "summary": "Refresh User Purchases", "operationId": "RefreshUserPurchases", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/bot/badges/{player}/{badgeId}": { "post": { "tags": ["Bot"], "summary": "Grant Badge", "operationId": "GrantBadge", "parameters": [ { "name": "player", "in": "path", "required": true, "description": "Player uuid or ign", "schema": { "type": "string" } }, { "name": "badgeId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } }, "delete": { "tags": ["Bot"], "summary": "Remove Badge", "operationId": "RemoveBadge", "parameters": [ { "name": "player", "in": "path", "required": true, "description": "Player uuid or ign", "schema": { "type": "string" } }, { "name": "badgeId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/bot/contestpings/{discordId}": { "delete": { "tags": ["Bot"], "summary": "Disable contest pings for a guild", "operationId": "DisableContestPingsPings", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "reason", "in": "query", "schema": { "type": "string", "nullable": true } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/bot/contestpings": { "get": { "tags": ["Bot"], "summary": "Get list of guilds with contest pings enabled", "operationId": "GetContestPings", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/ContestPingsFeatureDto" } } } } } } } }, "/bot/{discordId}": { "get": { "tags": ["Bot"], "summary": "Get guild", "operationId": "GetBotGuild", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PrivateGuildDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/bot/{discordId}/jacob": { "get": { "tags": ["Bot"], "summary": "Get guild jacob", "operationId": "GetJacobFeature", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GuildJacobLeaderboardFeature" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } }, "put": { "tags": ["Bot"], "summary": "Update guild jacob feature", "operationId": "UpdateJacobFeature", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "reason", "in": "query", "schema": { "type": "string", "nullable": true } } ], "requestBody": { "x-name": "feature", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateJacobFeatureRequest_UpdateJacobFeature" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GuildJacobLeaderboardFeature" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/bot/guild/{discordId}": { "post": { "tags": ["Bot"], "summary": "Request Guild Update", "operationId": "RefreshGuild", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } }, "patch": { "tags": ["Bot"], "summary": "Update Guild", "operationId": "UpdateGuild", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } } ], "requestBody": { "x-name": "guild", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IncomingGuildDto" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DiscordIdRequest" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/bot/guild/{discordId}/channels": { "post": { "tags": ["Bot"], "summary": "Update Guild Channel", "operationId": "UpdateGuildChannel", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } } ], "requestBody": { "x-name": "channel", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IncomingGuildChannelDto" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/bot/guild/{discordId}/members/{userId}/roles": { "post": { "tags": ["Bot"], "summary": "Update Guild Member Roles", "operationId": "UpdateGuildMemberRoles", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "userId", "in": "path", "required": true, "schema": { "type": "string" } } ], "requestBody": { "x-name": "roles", "content": { "application/json": { "schema": { "type": "array", "items": { "type": "string" } } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/bot/guild/{discordId}/roles": { "post": { "tags": ["Bot"], "summary": "Update Guild Role", "operationId": "UpdateGuildRole", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } } ], "requestBody": { "x-name": "role", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IncomingGuildRoleDto" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/bot/account": { "patch": { "tags": ["Bot"], "summary": "Update user Discord account", "operationId": "UpdateDiscordAccount", "requestBody": { "x-name": "IncomingAccountDto", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IncomingAccountDto" } } }, "required": true, "x-position": 1 }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AuthorizedAccountDto" } } } } } } }, "/admin/confirmations": { "post": { "tags": ["Admin"], "summary": "Create a new confirmation", "description": "Creates a new confirmation that users will need to accept.", "operationId": "CreateConfirmation", "requestBody": { "x-name": "CreateConfirmationDto", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateConfirmationDto" } } }, "required": true, "x-position": 1 }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfirmationDto" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] }, "get": { "tags": ["Admin"], "summary": "Get a confirmation", "description": "Gets a confirmation that users will need to accept.", "operationId": "GetAllConfirmations", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/ConfirmationDto" } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/confirmations/{id}": { "delete": { "tags": ["Admin"], "summary": "Delete a login confirmation", "operationId": "DeleteConfirmation", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfirmationDto" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] }, "put": { "tags": ["Admin"], "summary": "Update a confirmation", "description": "Updates a confirmation that users will need to accept.", "operationId": "UpdateConfirmation", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "requestBody": { "x-name": "UpdateConfirmationRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateConfirmationRequest" } } }, "required": true, "x-position": 1 }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfirmationDto" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/contest/{contestKey}": { "get": { "tags": ["Contests"], "summary": "Get a contest from a contest key", "operationId": "GetContestFromKey", "parameters": [ { "name": "contestKey", "in": "path", "required": true, "description": "A contest key in the format from the Hypixel API", "schema": { "type": "string" }, "example": "285:2_11:CACTUS" } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/JacobContestWithParticipationsDto" } } } } } } }, "/contests/{timestamp}": { "get": { "tags": ["Contests"], "summary": "Get the three contests that start at a specific timestamp", "operationId": "GetContestsAtTimestamp", "parameters": [ { "name": "timestamp", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } }, { "name": "limit", "in": "query", "required": true, "description": "Limit the number of participations returned in each contest.", "schema": { "type": "integer", "format": "int32" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/JacobContestWithParticipationsDto" } } } } } } } }, "/contests/at/{year}/{month}/{day}": { "get": { "tags": ["Contests"], "summary": "Get the three contests in a specific SkyBlock day", "operationId": "GetContestsInDay", "parameters": [ { "name": "year", "in": "path", "required": true, "description": "SkyBlock year", "schema": { "type": "integer", "format": "int32" } }, { "name": "month", "in": "path", "required": true, "description": "SkyBlock month", "schema": { "type": "integer", "format": "int32" } }, { "name": "day", "in": "path", "required": true, "description": "SkyBlock day", "schema": { "type": "integer", "format": "int32" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/JacobContestWithParticipationsDto" } } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/contests/at/{year}/{month}": { "get": { "tags": ["Contests"], "summary": "Get all contests in a SkyBlock month", "operationId": "GetContestsInMonth", "parameters": [ { "name": "year", "in": "path", "required": true, "description": "SkyBlock year", "schema": { "type": "integer", "format": "int32" } }, { "name": "month", "in": "path", "required": true, "description": "SkyBlock month", "schema": { "type": "integer", "format": "int32" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "additionalProperties": { "type": "array", "items": { "$ref": "#/components/schemas/JacobContestDto" } } } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/contests/at/{year}": { "get": { "tags": ["Contests"], "summary": "Get all contests in a SkyBlock year", "operationId": "GetContestsInYear", "parameters": [ { "name": "year", "in": "path", "required": true, "description": "SkyBlock year", "schema": { "type": "integer", "format": "int32" } }, { "name": "now", "in": "query", "description": "If the year being requested is the current year. Not required.", "schema": { "type": "boolean", "default": false, "nullable": true } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/YearlyContestsDto" } } } } } } }, "/contests/at/now": { "get": { "tags": ["Contests"], "summary": "Get upcoming contests for the current SkyBlock year", "description": "Uses crowd-sourced data, which may not be accurate.\nData used and provided by SkyHanni to display upcoming contests in-game.", "operationId": "GetCurrentContests", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/YearlyContestsDto" } } } } } }, "post": { "tags": ["Contests"], "summary": "Upload upcoming contests for the current SkyBlock year", "description": "Data used and provided by SkyHanni to display upcoming contests in-game.", "operationId": "UploadCurrentContests", "requestBody": { "x-name": "Dictionary`2", "description": "", "content": { "application/json": { "schema": { "type": "object", "example": { "1738390500": ["Cactus", "Carrot", "Melon"], "1738394100": ["Mushroom", "Nether Wart", "Pumpkin"], "1738397700": ["Cocoa Beans", "Potato", "Wheat"], "1738401300": ["Cactus", "Cocoa Beans", "Mushroom"], "1738404900": ["Carrot", "Nether Wart", "Wheat"] }, "additionalProperties": { "type": "array", "items": { "type": "string" } } } } }, "required": true, "x-position": 1 }, "responses": { "204": { "description": "No Content" } } } }, "/contests/{playerUuid}": { "get": { "tags": ["Contests"], "summary": "Get all contests for a player", "operationId": "GetPlayerParticipations", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/ContestParticipationDto" } } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/contests/{playerUuid}/{profileUuid}": { "get": { "tags": ["Contests"], "summary": "Get all contests for a profile member", "operationId": "GetProfileMemberParticipations", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/ContestParticipationDto" } } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/contests/records/{year}": { "get": { "tags": ["Contests"], "summary": "Get contest records for a SkyBlock year", "operationId": "GetRecordsInYear", "parameters": [ { "name": "year", "in": "path", "required": true, "description": "SkyBlock year", "schema": { "type": "integer", "format": "int32" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/YearlyCropRecordsDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/contests/{playerUuid}/selected": { "get": { "tags": ["Contests"], "summary": "Get contests for the player's selected profile member", "operationId": "GetSelectedMemberParticipations", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/ContestParticipationDto" } } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/guild/{discordId}/events/{eventId}/teams/{teamId}/members/{player}": { "post": { "tags": ["Guild"], "summary": "Add an Event Member to a Team", "operationId": "AddTeamMemberAdmin", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "teamId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "player", "in": "path", "required": true, "description": "Player uuid or ign", "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] }, "delete": { "tags": ["Guild"], "summary": "Kick an Event Team Member", "operationId": "KickTeamMemberAdmin", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "teamId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "player", "in": "path", "required": true, "description": "Player uuid or ign", "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guild/{discordId}/events/{eventId}/bans/{playerUuid}": { "post": { "tags": ["Guild"], "summary": "Ban an Event Member", "operationId": "BanMemberAdmin", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } } ], "requestBody": { "x-name": "reason", "content": { "application/json": { "schema": { "type": "string" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AdminEventMemberDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] }, "delete": { "tags": ["Guild"], "summary": "Unban an Event Member", "operationId": "UnbanMemberAdmin", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guild/{discordId}/events/weight": { "post": { "tags": ["Guild"], "summary": "Create Event", "operationId": "CreateEventAdmin", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } } ], "requestBody": { "x-name": "event", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateEventDto" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EventDetailsDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guild/{discordId}/events/{eventId}/teams": { "post": { "tags": ["Guild"], "summary": "Create an Event Team", "description": "This generally should only be used for events with a set amount of teams (when users are not allowed to create their own teams)", "operationId": "CreateTeamAdmin", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "userId", "in": "query", "schema": { "type": "string", "nullable": true } } ], "requestBody": { "x-name": "team", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateEventTeamDto" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guild/{discordId}/events/{eventId}": { "delete": { "tags": ["Guild"], "summary": "Delete Event", "description": "Delete an event and all associated data. Only available for unapproved events.", "operationId": "DeleteEventAdmin", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] }, "patch": { "tags": ["Guild"], "summary": "Update Event", "operationId": "UpdateEventAdmin", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } } ], "requestBody": { "x-name": "event", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EditEventDto" } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EventDetailsDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guild/{discordId}/events/{eventId}/banner": { "delete": { "tags": ["Guild"], "summary": "Delete Custom Event Banner", "operationId": "DeleteEventBannerAdmin", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] }, "post": { "tags": ["Guild"], "summary": "Set Custom Event Banner", "operationId": "SetEventBannerAdmin", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } } ], "requestBody": { "x-name": "data", "content": { "multipart/form-data": { "schema": { "$ref": "#/components/schemas/EditEventBannerDto" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guild/{discordId}/events/{eventId}/members/{playerUuid}": { "delete": { "tags": ["Guild"], "summary": "Delete an Event Member", "operationId": "DeleteMemberAdmin", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "profileUuid", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "recordId", "in": "query", "schema": { "type": "integer", "format": "int32", "nullable": true } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] }, "post": { "tags": ["Guild"], "summary": "Ban an Event Member", "operationId": "ForceAddMemberAdmin", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "profileUuid", "in": "query", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guild/{discordId}/events/{eventId}/teams/{teamId}": { "delete": { "tags": ["Guild"], "summary": "Delete an Event Team", "operationId": "DeleteTeamAdmin", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "teamId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] }, "patch": { "tags": ["Guild"], "summary": "Update a team", "operationId": "UpdateTeamAdmin", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "teamId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "requestBody": { "x-name": "team", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateEventTeamDto" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guild/{discordId}/event/{eventId}/bans": { "get": { "tags": ["Guild"], "summary": "Get banned event members", "operationId": "GetBannedMembersAdmin", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AdminEventMemberDto" } } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guild/{discordId}/event/{eventId}/members": { "get": { "tags": ["Guild"], "summary": "Get event members", "operationId": "GetGuildEventMembersAdmin", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AdminEventMemberDto" } } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guild/{discordId}/event/{eventId}/admin": { "get": { "tags": ["Guild"], "summary": "Get an event for a guild", "operationId": "GetGuildEventAdmin", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EventDetailsDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guild/{discordId}/events/admin": { "get": { "tags": ["Guild"], "summary": "Get all events for a guild", "operationId": "GetGuildEventsAdmin", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/EventDetailsDto" } } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guild/{discordId}/event/{eventId}/teams": { "get": { "tags": ["Guild"], "summary": "Get event teams", "operationId": "GetTeamsAdmin", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/EventTeamWithMembersDto" } } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guild/{discordId}/events/{eventId}/teams/{teamId}/owner": { "put": { "tags": ["Guild"], "summary": "Set player as team owner", "operationId": "SetTeamOwnerAdmin", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "teamId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "requestBody": { "x-name": "SetTeamOwnerRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SetTeamOwnerRequest" } } }, "required": true, "x-position": 1 }, "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/event/{eventId}": { "get": { "tags": ["Event"], "summary": "Get an event", "operationId": "GetEvent", "parameters": [ { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EventDetailsDto" } } } } } } }, "/event/defaults": { "get": { "tags": ["Event"], "summary": "Get event default constants", "description": "Default constants for event settings.", "operationId": "GetEventDefaults", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EventDefaultsDto" } } } } } } }, "/event/{eventId}/member/{playerUuid}": { "get": { "tags": ["Event"], "summary": "Get an event member", "operationId": "GetEventMember", "parameters": [ { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EventMemberDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/event/{eventId}/members": { "get": { "tags": ["Event"], "summary": "Get event members", "operationId": "GetEventMembers", "parameters": [ { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/EventMemberDetailsDto" } } } } } } } }, "/event/{eventId}/team/{teamId}": { "get": { "tags": ["Event"], "summary": "Get an event team", "operationId": "GetEventTeam", "parameters": [ { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "teamId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EventTeamWithMembersDto" } } } } } }, "delete": { "tags": ["Event"], "summary": "Delete team", "operationId": "DeleteTeam", "parameters": [ { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "teamId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] }, "patch": { "tags": ["Event"], "summary": "Update a team", "operationId": "UpdateTeam", "parameters": [ { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "teamId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "requestBody": { "x-name": "team", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateEventTeamDto" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/event/{eventId}/teams": { "get": { "tags": ["Event"], "summary": "Get event teams", "operationId": "GetEventTeams", "parameters": [ { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/EventTeamWithMembersDto" } } } } } } }, "post": { "tags": ["Event"], "summary": "Create a team", "operationId": "CreateTeam", "parameters": [ { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } } ], "requestBody": { "x-name": "team", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateEventTeamDto" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/event/teams/words": { "get": { "tags": ["Event"], "summary": "Get event team word list constants", "description": "Lists of whitelisted words for team name generation.", "operationId": "GetTeamWordList", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EventTeamsWordListDto" } } } } } } }, "/events": { "get": { "tags": ["Event"], "summary": "Get upcoming events", "operationId": "GetUpcomingEvents", "parameters": [ { "name": "offset", "in": "query", "description": "Offset by an amount of days to also include recently ended events.", "schema": { "type": "integer", "format": "int32", "default": 0, "nullable": true } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/EventDetailsDto" } } } } } } } }, "/event/{eventId}/join": { "post": { "tags": ["Event"], "summary": "Join an event", "operationId": "JoinEvent", "parameters": [ { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "playerUuid", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "profileUuid", "in": "query", "schema": { "type": "string", "nullable": true } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/event/{eventId}/team/{teamId}/join": { "post": { "tags": ["Event"], "summary": "Join a team", "operationId": "JoinTeam", "parameters": [ { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "teamId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "requestBody": { "x-name": "joinCode", "description": "Join code for the team", "content": { "application/json": { "schema": { "type": "string" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/event/{eventId}/team/{teamId}/member/{player}": { "delete": { "tags": ["Event"], "summary": "Kick a team member", "description": "Kicked members can rejoin the team if they have the join code.", "operationId": "KickTeamMember", "parameters": [ { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "teamId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "player", "in": "path", "required": true, "description": "Player uuid or ign", "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/event/{eventId}/leave": { "post": { "tags": ["Event"], "summary": "Join an event", "operationId": "LeaveEvent", "parameters": [ { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/event/{eventId}/team/{teamId}/leave": { "post": { "tags": ["Event"], "summary": "Leave a team", "operationId": "LeaveTeam", "parameters": [ { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "teamId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/event/{eventId}/team/{teamId}/owner": { "put": { "tags": ["Event"], "summary": "Set player as team owner", "operationId": "SetTeamOwner", "parameters": [ { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "teamId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "requestBody": { "x-name": "ChangeTeamOwnerRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ChangeTeamOwnerRequest" } } }, "required": true, "x-position": 1 }, "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/event/{eventId}/team/{teamId}/code": { "post": { "tags": ["Event"], "summary": "Generate new team join code", "operationId": "UpdateTeamJoinCode", "parameters": [ { "name": "eventId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } }, { "name": "teamId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/garden/{profileUuid}": { "get": { "tags": ["Garden"], "summary": "Get Garden data for a profile", "description": "Get Garden data for a specific profile by UUID", "operationId": "GetGarden", "parameters": [ { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" }, "example": "7da0c47581dc42b4962118f8049147b7" } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GardenDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "404": { "description": "Not Found" } } } }, "/garden/{playerUuid}/selected": { "get": { "tags": ["Garden"], "summary": "Get selected Garden data for a player", "description": "Get selected Garden data for a specific player by UUID", "operationId": "GetSelectedGarden", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" }, "example": "7da0c47581dc42b4962118f8049147b7" } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GardenDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "404": { "description": "Not Found" } } } }, "/graph/admin/{playerUuid}/{profileUuid}/crops": { "get": { "tags": ["Graph"], "summary": "Get Admin Crop Collections", "operationId": "GetAdminCropGraphs", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" }, "example": "7da0c47581dc42b4962118f8049147b7" }, { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" }, "example": "7da0c47581dc42b4962118f8049147b7" }, { "name": "from", "in": "query", "description": "Unix timestamp in seconds for the start of the data to return", "schema": { "type": "integer", "format": "int64", "default": 0, "nullable": true }, "example": 0 }, { "name": "days", "in": "query", "description": "Amount of days after the \"from\" timestamp to include", "schema": { "type": "integer", "format": "int32", "default": 7, "nullable": true }, "example": 7 }, { "name": "perDay", "in": "query", "description": "Data points returned per 24-hour period", "schema": { "type": "integer", "format": "int32", "default": 4, "nullable": true }, "example": 4 } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/CropCollectionsDataPointDto" } } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/graph/admin/{playerUuid}/{profileUuid}/skills": { "get": { "tags": ["Graph"], "summary": "Get Admin Skill XP", "operationId": "GetAdminSkillGraphs", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" }, "example": "7da0c47581dc42b4962118f8049147b7" }, { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" }, "example": "7da0c47581dc42b4962118f8049147b7" }, { "name": "from", "in": "query", "schema": { "type": "integer", "format": "int64", "default": 0, "nullable": true }, "example": 0 }, { "name": "days", "in": "query", "schema": { "type": "integer", "format": "int32", "default": 7, "nullable": true }, "example": 7 }, { "name": "perDay", "in": "query", "schema": { "type": "integer", "format": "int32", "default": 4, "nullable": true }, "example": 4 } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/SkillsDataPointDto" } } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/graph/{playerUuid}/{profileUuid}/crops": { "get": { "tags": ["Graph"], "summary": "Get Crop Collections Over Time", "operationId": "GetCropGraphs", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" }, "example": "7da0c47581dc42b4962118f8049147b7" }, { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" }, "example": "7da0c47581dc42b4962118f8049147b7" }, { "name": "from", "in": "query", "schema": { "type": "integer", "format": "int64", "default": 0, "nullable": true }, "example": 0 }, { "name": "days", "in": "query", "schema": { "type": "integer", "format": "int32", "default": 7, "nullable": true }, "example": 7 }, { "name": "perDay", "in": "query", "schema": { "type": "integer", "format": "int32", "default": 4, "nullable": true }, "example": 4 } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/CropCollectionsDataPointDto" } } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/graph/{playerUuid}/{profileUuid}/skills": { "get": { "tags": ["Graph"], "summary": "Get Skill XP Over Time", "operationId": "GetSkillGraphs", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" }, "example": "7da0c47581dc42b4962118f8049147b7" }, { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" }, "example": "7da0c47581dc42b4962118f8049147b7" }, { "name": "from", "in": "query", "schema": { "type": "integer", "format": "int64", "default": 0, "nullable": true }, "example": 0 }, { "name": "days", "in": "query", "schema": { "type": "integer", "format": "int32", "default": 7, "nullable": true }, "example": 7 }, { "name": "perDay", "in": "query", "schema": { "type": "integer", "format": "int32", "default": 4, "nullable": true }, "example": 4 } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/SkillsDataPointDto" } } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/graph/medals/now": { "get": { "tags": ["Graph"], "summary": "Get current average medal brackets", "operationId": "GetCurrentMedalBrackets", "parameters": [ { "name": "months", "in": "query", "description": "Amount of previous SkyBlock months to include in the average", "schema": { "type": "integer", "format": "int32", "default": 2, "nullable": true } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ContestBracketsDetailsDto" } } } } } } }, "/graph/medals/{year}/{month}": { "get": { "tags": ["Graph"], "summary": "Get average medal brackets for a specific SkyBlock month", "operationId": "GetMedalBrackets", "parameters": [ { "name": "year", "in": "path", "required": true, "description": "SkyBlock year", "schema": { "type": "integer", "format": "int32" } }, { "name": "month", "in": "path", "required": true, "description": "SkyBlock month", "schema": { "type": "integer", "format": "int32" } }, { "name": "months", "in": "query", "description": "Amount of previous SkyBlock months to include in the average", "schema": { "type": "integer", "format": "int32", "default": 2, "nullable": true } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ContestBracketsDetailsDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/graph/medals/{year}": { "get": { "tags": ["Graph"], "summary": "Get average medal brackets for multiple SkyBlock years", "operationId": "GetMedalBracketsGraph", "parameters": [ { "name": "year", "in": "path", "required": true, "description": "SkyBlock year", "schema": { "type": "integer", "format": "int32" } }, { "name": "years", "in": "query", "description": "Amount of previous SkyBlock years to include in the average", "schema": { "type": "integer", "format": "int32", "default": 2, "nullable": true } }, { "name": "months", "in": "query", "description": "Amount of previous SkyBlock months to include in the average", "schema": { "type": "integer", "format": "int32", "default": 2, "nullable": true } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/ContestBracketsDetailsDto" } } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/admin/guides/pending": { "get": { "tags": ["Admin"], "summary": "Get pending guides", "description": "Retrieves a list of guides waiting for approval.", "operationId": "AdminPendingGuides", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/GuideDto" } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/comments/{commentId}/approve": { "post": { "tags": ["Admin"], "summary": "Approve a comment", "description": "Approves a pending comment, making it visible to all users.", "operationId": "ApproveComment", "parameters": [ { "name": "commentId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/guides/{guideId}/approve": { "post": { "tags": ["Admin"], "summary": "Approve and publish a guide", "description": "Approve a pending guide and publish it.", "operationId": "ApproveGuide", "parameters": [ { "name": "guideId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guides/{guideId}/bookmark": { "post": { "tags": ["Guides"], "summary": "Bookmark a guide", "description": "Add a guide to user's bookmarks/favorites.", "operationId": "BookmarkGuide", "parameters": [ { "name": "guideId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] }, "delete": { "tags": ["Guides"], "summary": "Remove bookmark", "description": "Remove a guide from user's bookmarks.", "operationId": "UnbookmarkGuide", "parameters": [ { "name": "guideId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "404": { "description": "Not Found" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guides/{guideId}/comments": { "post": { "tags": ["Guides"], "summary": "Post a comment", "description": "Create a new comment on a guide.", "operationId": "CreateComment", "parameters": [ { "name": "guideId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "requestBody": { "x-name": "CreateCommentRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateCommentRequest" } } }, "required": true, "x-position": 1 }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CommentDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guides": { "post": { "tags": ["Guides"], "summary": "Create a new guide draft", "description": "Initializes a new empty guide draft for the user.", "operationId": "CreateGuide", "requestBody": { "x-name": "CreateGuideRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateGuideRequest" } } }, "required": true, "x-position": 1 }, "responses": { "201": { "description": "Created", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GuideDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] }, "get": { "tags": ["Guides"], "summary": "List guides", "description": "Search and list published guides with optional filtering and sorting.", "operationId": "ListGuides", "parameters": [ { "name": "query", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "type", "in": "query", "schema": { "nullable": true, "allOf": [ { "$ref": "#/components/schemas/GuideType" } ] } }, { "name": "tags", "in": "query", "style": "form", "explode": true, "schema": { "type": "array", "nullable": true, "items": { "type": "integer", "format": "int32" } } }, { "name": "sort", "in": "query", "required": true, "schema": { "allOf": [ { "$ref": "#/components/schemas/GuideSort" } ] } }, { "name": "page", "in": "query", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "pageSize", "in": "query", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/GuideDto" } } } } } } } }, "/admin/tags": { "post": { "tags": ["Admin"], "summary": "Create a tag", "description": "Create a new guide tag. Moderator only.", "operationId": "CreateTag", "requestBody": { "x-name": "CreateTagRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateTagRequest" } } }, "required": true, "x-position": 1 }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TagResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/comments/{commentId}": { "delete": { "tags": ["Admin"], "summary": "Delete a comment", "description": "Deletes a comment.", "operationId": "DeleteComment", "parameters": [ { "name": "commentId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guides/{id}": { "delete": { "tags": ["Guides"], "summary": "Delete a guide", "description": "Soft delete a guide. Only the author or an admin can delete.", "operationId": "DeleteGuide", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "security": [ { "JWTBearerAuth": [] } ] }, "put": { "tags": ["Guides"], "summary": "Update a guide draft", "description": "Update the draft version of a guide. Only the author can update their own guide.", "operationId": "UpdateGuide", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "requestBody": { "x-name": "UpdateGuideRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateGuideRequest" } } }, "required": true, "x-position": 1 }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateGuideResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/tags/{id}": { "delete": { "tags": ["Admin"], "summary": "Delete a tag", "description": "Delete a guide tag. Moderator only.", "operationId": "DeleteTag", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "security": [ { "JWTBearerAuth": [] } ] }, "put": { "tags": ["Admin"], "summary": "Update a tag", "description": "Update an existing guide tag. Moderator only.", "operationId": "UpdateTag", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "requestBody": { "x-name": "UpdateTagRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateTagRequest" } } }, "required": true, "x-position": 1 }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TagResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/comments/{commentId}": { "put": { "tags": ["Comments"], "summary": "Edit a comment", "description": "Edit comment content. Authors can edit their own comments, admins can edit any.", "operationId": "EditComment", "parameters": [ { "name": "commentId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "requestBody": { "x-name": "EditCommentRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EditCommentRequest" } } }, "required": true, "x-position": 1 }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guides/{slug}": { "get": { "tags": ["Guides"], "summary": "Get a guide", "description": "Retrieve a guide by its slug. Use ?draft=true to view draft version (requires author/mod permission).", "operationId": "GetGuide", "parameters": [ { "name": "slug", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "draft", "in": "query", "required": true, "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/FullGuideDto" } } } } } } }, "/users/{accountId}/bookmarks": { "get": { "tags": ["Users"], "summary": "Get user's bookmarked guides", "description": "Returns all guides bookmarked by the user. Only the owner can see their bookmarks.", "operationId": "GetUserBookmarks", "parameters": [ { "name": "accountId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/UserGuideDto" } } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/users/{accountId}/guides": { "get": { "tags": ["Users"], "summary": "Get guides by user", "description": "Returns all guides by a specific user. Shows only published guides for anonymous users. Author sees all their own guides.", "operationId": "GetUserGuides", "parameters": [ { "name": "accountId", "in": "path", "required": true, "schema": { "type": "integer", "format": "uint64" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/UserGuideDto" } } } } } } } }, "/guides/{slug}/comments": { "get": { "tags": ["Guides"], "summary": "List comments for a guide", "description": "Returns all comments for a specific guide.", "operationId": "ListComments", "parameters": [ { "name": "slug", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/CommentDto" } } } } } } } }, "/admin/comments/pending": { "get": { "tags": ["Admin"], "summary": "List all pending comments", "description": "Returns a list of all comments pending approval.", "operationId": "ListPendingComments", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/CommentDto" } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/tags": { "get": { "tags": ["Tags"], "summary": "List all tags", "description": "Returns all available guide tags.", "operationId": "ListTags", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/TagResponse" } } } } } } } }, "/admin/guides/{guideId}/reject": { "post": { "tags": ["Admin"], "summary": "Reject a guide", "description": "Reject a pending guide submission with an optional reason.", "operationId": "RejectGuide", "parameters": [ { "name": "guideId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "requestBody": { "x-name": "RejectGuideRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RejectGuideRequest" } } }, "required": true, "x-position": 1 }, "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guides/{guideId}/submit": { "post": { "tags": ["Guides"], "summary": "Submit guide for approval", "description": "Submit a draft guide for admin review.", "operationId": "SubmitGuideForApproval", "parameters": [ { "name": "guideId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guides/{guideId}/unpublish": { "post": { "tags": ["Guides"], "summary": "Unpublish a guide", "description": "Revert a published guide back to draft status. Only author or admin can unpublish.", "operationId": "UnpublishGuide", "parameters": [ { "name": "guideId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/comments/{commentId}/vote": { "post": { "tags": ["Comments"], "summary": "Vote on a comment", "description": "Cast an upvote (+1) or downvote (-1) on a comment.", "operationId": "VoteComment", "parameters": [ { "name": "commentId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "requestBody": { "x-name": "VoteCommentRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VoteCommentRequest" } } }, "required": true, "x-position": 1 }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guides/{guideId}/vote": { "post": { "tags": ["Guides"], "summary": "Vote on a guide", "description": "Cast an upvote (+1) or downvote (-1) on a guide.", "operationId": "VoteGuide", "parameters": [ { "name": "guideId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "requestBody": { "x-name": "VoteGuideRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/VoteGuideRequest" } } }, "required": true, "x-position": 1 }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guild/{discordId}/events": { "post": { "tags": ["Guild"], "summary": "Modify guild event permissions", "operationId": "SetEventFeature", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "enable", "in": "query", "schema": { "type": "boolean", "default": false, "nullable": true } }, { "name": "max", "in": "query", "schema": { "type": "integer", "format": "int32", "default": false, "nullable": true } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] }, "get": { "tags": ["Guild"], "summary": "Get public guild events", "operationId": "GetPublicGuildEvents", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/EventDetailsDto" } } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/guild/{discordId}/jacob": { "post": { "tags": ["Guild"], "summary": "Modify guild jacob permissions", "operationId": "SetJacobFeature", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "enable", "in": "query", "schema": { "type": "boolean", "default": true, "nullable": true } }, { "name": "max", "in": "query", "schema": { "type": "integer", "format": "int32", "default": false, "nullable": true } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guild/{discordId}/lock": { "post": { "tags": ["Guild"], "summary": "Lock or unlock a guild", "operationId": "SetGuildLocked", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "locked", "in": "query", "description": "If server subscriptions shouldn't override feature values", "schema": { "type": "boolean", "default": true, "nullable": true } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guild/{discordId}/public": { "post": { "tags": ["Guild"], "summary": "Set a guild to public or private", "operationId": "SetGuildPublic", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "public", "in": "query", "schema": { "type": "boolean", "default": true, "nullable": true } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guild/{discordId}": { "get": { "tags": ["Guild"], "summary": "Get public guild", "operationId": "GetPublicGuild", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PublicGuildDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/guilds": { "get": { "tags": ["Guild"], "summary": "Get public guilds", "operationId": "GetPublicGuilds", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/GuildDetailsDto" } } } } } } } }, "/user/guild/{discordId}/contestpings": { "delete": { "tags": ["User"], "summary": "Delete contest pings for a guild", "operationId": "DeleteContestPings", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "reason", "in": "query", "schema": { "type": "string", "nullable": true } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] }, "put": { "tags": ["User"], "summary": "Update contest pings for a guild", "operationId": "UpdateContestPings", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } } ], "requestBody": { "x-name": "settings", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateContestPingsRequest_UpdateContestPings" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/user/guilds": { "get": { "tags": ["User"], "summary": "Get guild memberships for the current user", "operationId": "GetUserGuilds", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/GuildMemberDto" } } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/user/guild/{discordId}": { "get": { "tags": ["User"], "summary": "Get a guild membership for the current user", "operationId": "GetUserGuild", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AuthorizedGuildDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/user/guild/{discordId}/jacob/leaderboard": { "post": { "tags": ["User"], "summary": "Create a Jacob leaderboard", "operationId": "CreateGuildJacobLeaderboard", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } } ], "requestBody": { "x-name": "leaderboard", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateJacobLeaderboardRequest_CreateJacobLeaderboard" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/user/guild/{discordId}/jacob/{leaderboardId}": { "delete": { "tags": ["User"], "summary": "Delete a Jacob leaderboard", "operationId": "DeleteGuildJacobLeaderboard", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "leaderboardId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] }, "patch": { "tags": ["User"], "summary": "Update a Jacob leaderboard", "operationId": "UpdateGuildJacobLeaderboard", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "leaderboardId", "in": "path", "required": true, "schema": { "type": "string" } } ], "requestBody": { "x-name": "leaderboard", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateJacobLeaderboardRequest_UpdateJacobLeaderboard" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/user/guild/{discordId}/jacob": { "get": { "tags": ["User"], "summary": "Get Jacob leaderboards for a guild", "operationId": "GetGuildJacob", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GuildJacobLeaderboardFeature" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] }, "patch": { "tags": ["User"], "summary": "Update Jacob leaderboards for a guild", "operationId": "UpdateGuildJacobFeature", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } }, { "name": "reason", "in": "query", "schema": { "type": "string", "nullable": true } } ], "requestBody": { "x-name": "feature", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateJacobFeatureRequest_UpdateJacobFeature" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guilds/{discordId}/jacob/exclusions/timespans": { "post": { "tags": ["Guilds"], "summary": "Add an excluded timespan", "operationId": "AddJacobLeaderboardExcludedTimespan", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } } ], "requestBody": { "x-name": "body", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AddExcludedTimespanRequest_AddExcludedTimespanRequestBody" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guilds/{discordId}/jacob/bans/participations": { "post": { "tags": ["Guilds"], "summary": "Ban a specific participation from the leaderboard", "operationId": "BanParticipationFromJacobLeaderboard", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } } ], "requestBody": { "x-name": "body", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BanParticipationRequest_BanParticipationRequestBody" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guilds/{discordId}/jacob/bans/players": { "post": { "tags": ["Guilds"], "summary": "Ban a player from all Jacob leaderboards", "operationId": "BanPlayerFromJacobLeaderboard", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } } ], "requestBody": { "x-name": "body", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BanPlayerRequest_BanPlayerRequestBody" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guilds/{discordId}/jacob/exclusions/timespans/{start}/{end}": { "delete": { "tags": ["Guilds"], "summary": "Remove an excluded timespan", "operationId": "RemoveJacobLeaderboardExcludedTimespan", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "start", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } }, { "name": "end", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guilds/{discordId}/jacob/bans/participations/{participationId}": { "delete": { "tags": ["Guilds"], "summary": "Unban a specific participation", "operationId": "UnbanParticipationFromJacobLeaderboard", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "participationId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/guilds/{discordId}/jacob/bans/players/{playerUuid}": { "delete": { "tags": ["Guilds"], "summary": "Unban a player from Jacob leaderboards", "operationId": "UnbanPlayerFromJacobLeaderboard", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/user/guild/{discordId}/jacob/{leaderboardId}/send": { "post": { "tags": ["User"], "summary": "Send a Jacob leaderboard to Discord", "operationId": "SendGuildJacobFeature", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "leaderboardId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/user/guild/{discordId}/jacob/{leaderboardId}/submit": { "post": { "tags": ["User"], "summary": "Submit scores to a Jacob leaderboard", "operationId": "SubmitScore", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "leaderboardId", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "discordUserId", "in": "query", "description": "Discord User ID of the submitter. Required when called by Bot.\nIf not provided, the authenticated user's Discord ID is used.", "schema": { "type": "integer", "format": "int64", "nullable": true } } ], "requestBody": { "x-name": "userRoleIds", "description": "Optional role IDs of the submitter. If provided, these are used for role checks.\nIf not provided, the backend will fetch the user's roles from stored guild member data.", "content": { "application/json": { "schema": { "type": "array", "items": { "type": "string" } } } }, "required": true }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SubmitScoreResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/user/refresh-guilds": { "post": { "tags": ["User"], "summary": "Refresh guild memberships for the current user", "operationId": "RefreshGuildMemberships", "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/user/guild/{discordId}/refresh": { "post": { "tags": ["User"], "summary": "Request Guild Refresh", "description": "This fetches the latest data from Discord for the specified guild", "operationId": "RequestGuildRefresh", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/user/guild/{discordId}/adminrole": { "put": { "tags": ["User"], "summary": "Set an admin role for a guild", "operationId": "SetAdminRole", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } } ], "requestBody": { "x-name": "roleId", "content": { "application/json": { "schema": { "type": "string" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/user/guild/{discordId}/invite": { "put": { "tags": ["User"], "summary": "Set invite code for a guild", "operationId": "SetInvite", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } } ], "requestBody": { "x-name": "invite", "content": { "application/json": { "schema": { "type": "string" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/user/guild/{discordId}/purchases": { "post": { "tags": ["User"], "summary": "Refresh Guild Purchases", "operationId": "UpdateGuildPurchases", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/hguilds/{guildId}": { "get": { "tags": ["Hypixel Guilds"], "summary": "Get Hypixel Guild", "operationId": "GetHypixelGuild", "parameters": [ { "name": "guildId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetHypixelGuildResponse" } } } } } } }, "/hguilds/{guildId}/leaderboards/{leaderboard}": { "get": { "tags": ["Hypixel Guilds"], "summary": "Get Hypixel Guild Members Leaderboard", "operationId": "GetHypixelGuildMembersLeaderboard", "parameters": [ { "name": "guildId", "in": "path", "required": true, "description": "Guild id to fetch members for (discord/hypixel guild id)", "schema": { "type": "string" } }, { "name": "leaderboard", "in": "path", "required": true, "description": "Id of leaderboard", "schema": { "type": "string" } }, { "name": "interval", "in": "query", "description": "Time interval key of a monthly leaderboard. Format: yyyy-MM", "schema": { "type": "string", "nullable": true } }, { "name": "mode", "in": "query", "description": "Game mode to filter leaderboard by. Leave empty to get all modes.\nOptions: \"ironman\", \"island\", \"classic\"", "schema": { "type": "string", "nullable": true } }, { "name": "removed", "in": "query", "description": "Removed filter to get leaderboard entries that have been removed from the leaderboard.\nDefault is profiles that have not been removed/wiped.\n0 = Not Removed\n1 = Removed\n2 = All", "schema": { "default": 0, "nullable": true, "allOf": [ { "$ref": "#/components/schemas/RemovedFilter" } ] } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GuildMembersLeaderboardDto" } } } } } } }, "/hguilds/{guildId}/rank": { "get": { "tags": ["Hypixel Guilds"], "summary": "Get Hypixel Guild Rank", "description": "Get the rank of a Hypixel guild on a specific leaderboard", "operationId": "GetHypixelGuildRank", "parameters": [ { "name": "guildId", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "sortBy", "in": "query", "schema": { "nullable": true, "allOf": [ { "$ref": "#/components/schemas/SortHypixelGuildsBy" } ] } }, { "name": "collection", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "skill", "in": "query", "schema": { "type": "string", "nullable": true } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetHypixelGuildRankResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/hguilds": { "get": { "tags": ["Hypixel Guilds"], "summary": "Get Hypixel Guilds", "operationId": "GetHypixelGuilds", "parameters": [ { "name": "sortBy", "in": "query", "schema": { "nullable": true, "allOf": [ { "$ref": "#/components/schemas/SortHypixelGuildsBy" } ] } }, { "name": "collection", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "skill", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "descending", "in": "query", "schema": { "type": "boolean", "nullable": true } }, { "name": "page", "in": "query", "schema": { "type": "integer", "format": "int32", "nullable": true } }, { "name": "pageSize", "in": "query", "schema": { "type": "integer", "format": "int32", "nullable": true } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetHypixelGuildsResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/hguilds/search": { "get": { "tags": ["Hypixel Guilds"], "summary": "Search Hypixel Guilds", "description": "Fuzzy search across Hypixel guild names", "operationId": "SearchHypixelGuilds", "parameters": [ { "name": "query", "in": "query", "required": true, "schema": { "type": "string" } }, { "name": "limit", "in": "query", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SearchHypixelGuildsResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/leaderboard/{leaderboard}": { "get": { "tags": ["Leaderboard"], "summary": "Get Leaderboard", "operationId": "GetLeaderboard", "parameters": [ { "name": "leaderboard", "in": "path", "required": true, "description": "Id of leaderboard", "schema": { "type": "string" } }, { "name": "offset", "in": "query", "schema": { "type": "integer", "format": "int32", "default": 0, "nullable": true } }, { "name": "limit", "in": "query", "schema": { "type": "integer", "format": "int32", "default": 20, "nullable": true } }, { "name": "interval", "in": "query", "description": "Time interval key of a monthly leaderboard. Format: yyyy-MM", "schema": { "type": "string", "nullable": true } }, { "name": "mode", "in": "query", "description": "Game mode to filter leaderboard by. Leave empty to get all modes.\nOptions: \"ironman\", \"island\", \"classic\"", "schema": { "type": "string", "nullable": true } }, { "name": "removed", "in": "query", "description": "Removed filter to get leaderboard entries that have been removed from the leaderboard.\nDefault is profiles that have not been removed/wiped.\n0 = Not Removed\n1 = Removed\n2 = All", "schema": { "default": 0, "nullable": true, "allOf": [ { "$ref": "#/components/schemas/RemovedFilter" } ] } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LeaderboardDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/leaderboards": { "get": { "tags": ["Leaderboard"], "summary": "Get Leaderboards", "operationId": "GetLeaderboards", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LeaderboardsResponse" } } } } } } }, "/leaderboards-multiple/{playerUuid}/{profileUuid}": { "get": { "tags": ["Leaderboard"], "summary": "Get multiple leaderboard ranks for a player", "operationId": "GetMultiplePlayerRanks", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "leaderboards", "in": "query", "required": true, "description": "Ids of leaderboards (comma-separated)", "schema": { "type": "string" } }, { "name": "includeUpcoming", "in": "query", "description": "Include upcoming players", "schema": { "type": "boolean", "default": false, "nullable": true } }, { "name": "upcoming", "in": "query", "description": "Amount of upcoming players to include (max 10).", "schema": { "type": "integer", "format": "int32", "default": 0, "nullable": true } }, { "name": "previous", "in": "query", "description": "Amount of passed players to include (max 3).", "schema": { "type": "integer", "format": "int32", "default": 0, "nullable": true } }, { "name": "atRank", "in": "query", "description": "Start at a specified rank for upcoming players", "schema": { "type": "integer", "format": "int32", "nullable": true } }, { "name": "interval", "in": "query", "description": "Time interval key of a monthly leaderboard. Format: yyyy-MM", "schema": { "type": "string", "nullable": true } }, { "name": "mode", "in": "query", "description": "Game mode to filter leaderboard by. Leave empty to get all modes.\nOptions: \"ironman\", \"island\", \"classic\"", "schema": { "type": "string", "nullable": true } }, { "name": "removed", "in": "query", "description": "Removed filter to get leaderboard entries that have been removed from the leaderboard.\nDefault is profiles that have not been removed/wiped.\n0 = Not Removed\n1 = Removed\n2 = All", "schema": { "default": 0, "nullable": true, "allOf": [ { "$ref": "#/components/schemas/RemovedFilter" } ] } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/LeaderboardPositionDto" } } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/leaderboards/{playerUuid}/{profileUuid}": { "get": { "tags": ["Leaderboard"], "summary": "Get a Player's Leaderboard Ranks", "operationId": "GetPlayerLeaderboardRanks", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "max", "in": "query", "description": "Maximum rank number to return. Used if you don't want ranks higher than a certain number.", "schema": { "type": "integer", "format": "int32", "nullable": true } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LeaderboardRanksResponse" } } } } } } }, "/leaderboard/rank/{leaderboard}/{playerUuid}/{profileUuid}": { "get": { "tags": ["Leaderboard"], "summary": "Get a Player's Leaderboard Rank", "operationId": "GetPlayerRank1", "parameters": [ { "name": "leaderboard", "in": "path", "required": true, "description": "Id of leaderboard", "schema": { "type": "string" } }, { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "includeUpcoming", "in": "query", "description": "Include upcoming players", "schema": { "type": "boolean", "default": false, "nullable": true } }, { "name": "upcoming", "in": "query", "description": "Amount of upcoming players to include (max 100). Only works with new leaderboard backend", "schema": { "type": "integer", "format": "int32", "default": 0, "nullable": true } }, { "name": "previous", "in": "query", "description": "Amount of passed players to include (max 3).", "schema": { "type": "integer", "format": "int32", "default": 0, "nullable": true } }, { "name": "atRank", "in": "query", "description": "Start at a specified rank for upcoming players.\nUse AtAmount instead for better lookups.", "schema": { "type": "integer", "format": "int32", "nullable": true } }, { "name": "atAmount", "in": "query", "description": "Start at a specified score threshold for upcoming players.\nPass your locally tracked score to get upcoming players\nwithout needing to calculate the correct rank.", "schema": { "type": "number", "format": "double", "nullable": true } }, { "name": "interval", "in": "query", "description": "Time interval key of a monthly leaderboard. Format: yyyy-MM", "schema": { "type": "string", "nullable": true } }, { "name": "mode", "in": "query", "description": "Game mode to filter leaderboard by. Leave empty to get all modes.\nOptions: \"ironman\", \"island\", \"classic\"", "schema": { "type": "string", "nullable": true } }, { "name": "removed", "in": "query", "description": "Removed filter to get leaderboard entries that have been removed from the leaderboard.\nDefault is profiles that have not been removed/wiped.\n0 = Not Removed\n1 = Removed\n2 = All", "schema": { "default": 0, "nullable": true, "allOf": [ { "$ref": "#/components/schemas/RemovedFilter" } ] } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LeaderboardPositionDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/leaderboard/{leaderboard}/{playerUuid}/{profileUuid}": { "get": { "tags": ["Leaderboard"], "summary": "Get a Player's Leaderboard Rank", "operationId": "GetPlayerRank2", "parameters": [ { "name": "leaderboard", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "includeUpcoming", "in": "query", "schema": { "type": "boolean", "default": false, "nullable": true } }, { "name": "upcoming", "in": "query", "schema": { "type": "integer", "format": "int32", "default": 0, "nullable": true } }, { "name": "previous", "in": "query", "schema": { "type": "integer", "format": "int32", "default": 0, "nullable": true } }, { "name": "atRank", "in": "query", "schema": { "type": "integer", "format": "int32", "nullable": true } }, { "name": "atAmount", "in": "query", "schema": { "type": "number", "format": "double", "nullable": true } }, { "name": "interval", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "mode", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "removed", "in": "query", "schema": { "default": 0, "nullable": true, "allOf": [ { "$ref": "#/components/schemas/RemovedFilter" } ] } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LeaderboardPositionDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/leaderboard/ranks/{playerUuid}/{profileUuid}": { "get": { "tags": ["Leaderboard"], "summary": "Get a Player's Leaderboard Ranks", "operationId": "GetPlayerRanks", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LeaderboardPositionsDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } }, "deprecated": true } }, "/leaderboard/rank/{leaderboard}/{profileUuid}": { "get": { "tags": ["Leaderboard"], "summary": "Get a Profiles's Leaderboard Rank", "operationId": "GetProfileRank1", "parameters": [ { "name": "leaderboard", "in": "path", "required": true, "description": "Id of leaderboard", "schema": { "type": "string" } }, { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "includeUpcoming", "in": "query", "description": "Include upcoming players", "schema": { "type": "boolean", "default": false, "nullable": true } }, { "name": "upcoming", "in": "query", "description": "Amount of upcoming players to include (max 100).", "schema": { "type": "integer", "format": "int32", "default": 0, "nullable": true } }, { "name": "previous", "in": "query", "description": "Amount of passed players to include (max 3).", "schema": { "type": "integer", "format": "int32", "default": 0, "nullable": true } }, { "name": "atRank", "in": "query", "description": "Start at a specified rank for upcoming players", "schema": { "type": "integer", "format": "int32", "nullable": true } }, { "name": "interval", "in": "query", "description": "Time interval key of a monthly leaderboard. Format: yyyy-MM", "schema": { "type": "string", "nullable": true } }, { "name": "mode", "in": "query", "description": "Game mode to filter leaderboard by. Leave empty to get all modes.\nOptions: \"ironman\", \"island\", \"classic\"", "schema": { "type": "string", "nullable": true } }, { "name": "removed", "in": "query", "description": "Removed filter to get leaderboard entries that have been removed from the leaderboard.\nDefault is profiles that have not been removed/wiped.\n0 = Not Removed\n1 = Removed\n2 = All", "schema": { "default": 0, "nullable": true, "allOf": [ { "$ref": "#/components/schemas/RemovedFilter" } ] } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LeaderboardPositionDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/leaderboard/{leaderboard}/{profileUuid}": { "get": { "tags": ["Leaderboard"], "summary": "Get a Profiles's Leaderboard Rank", "operationId": "GetProfileRank2", "parameters": [ { "name": "leaderboard", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "includeUpcoming", "in": "query", "schema": { "type": "boolean", "default": false, "nullable": true } }, { "name": "upcoming", "in": "query", "schema": { "type": "integer", "format": "int32", "default": 0, "nullable": true } }, { "name": "previous", "in": "query", "schema": { "type": "integer", "format": "int32", "default": 0, "nullable": true } }, { "name": "atRank", "in": "query", "schema": { "type": "integer", "format": "int32", "nullable": true } }, { "name": "interval", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "mode", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "removed", "in": "query", "schema": { "default": 0, "nullable": true, "allOf": [ { "$ref": "#/components/schemas/RemovedFilter" } ] } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LeaderboardPositionDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/account/{discordId}/entitlements": { "get": { "tags": ["Account"], "summary": "Get all entitlements for a user or guild", "operationId": "GetEntitlements", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "target", "in": "query", "schema": { "nullable": true, "allOf": [ { "$ref": "#/components/schemas/EntitlementTarget" } ] } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/EntitlementDto" } } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/account/{discordId}/entitlement/{productId}": { "post": { "tags": ["Account"], "summary": "Grant a test entitlement to a user or guild", "description": "This passes along a request to Discord to grant a test entitlement to a user or guild, which only works on subscription products.", "operationId": "GrantTestEntitlement", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "productId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } }, { "name": "target", "in": "query", "schema": { "nullable": true, "allOf": [ { "$ref": "#/components/schemas/EntitlementTarget" } ] } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] }, "delete": { "tags": ["Account"], "summary": "Remove a test entitlement from a user or guild", "description": "This passes along a request to Discord to remove a test entitlement from a user or guild.", "operationId": "RemoveTestEntitlement", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } }, { "name": "productId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } }, { "name": "target", "in": "query", "schema": { "nullable": true, "allOf": [ { "$ref": "#/components/schemas/EntitlementTarget" } ] } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/admin/products/{ProductId}/providers/tebex": { "get": { "tags": ["Admin"], "summary": "Get Tebex Product Settings", "operationId": "GetTebexProductSettings", "parameters": [ { "name": "productId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TebexProductSettingsDto" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] }, "put": { "tags": ["Admin"], "summary": "Create or Update Tebex Product Settings", "operationId": "UpsertTebexProductSettings", "parameters": [ { "name": "productId", "in": "path", "required": true, "schema": { "type": "string" } } ], "requestBody": { "x-name": "UpsertTebexProductSettingsRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpsertTebexProductSettingsRequest" } } }, "required": true, "x-position": 1 }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TebexProductSettingsDto" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/payments/tebex/checkout": { "post": { "tags": ["Payments"], "summary": "Create Tebex Checkout Session", "operationId": "HiddenCreateTebexCheckout", "requestBody": { "x-name": "CreateTebexCheckoutRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateTebexCheckoutRequest" } } }, "required": true, "x-position": 1 }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TebexCheckoutResponseDto" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/payments/tebex/checkout/{OrderId}": { "delete": { "tags": ["Payments"], "summary": "Delete Tebex Checkout Session Locally", "operationId": "HiddenDeleteTebexCheckout", "parameters": [ { "name": "orderId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] }, "put": { "tags": ["Payments"], "summary": "Update Tebex Checkout Session", "operationId": "HiddenUpdateTebexCheckout", "parameters": [ { "name": "orderId", "in": "path", "required": true, "schema": { "type": "string" } } ], "requestBody": { "x-name": "CreateTebexCheckoutRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateTebexCheckoutRequest" } } }, "required": true, "x-position": 1 }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TebexCheckoutResponseDto" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/payments/tebex/checkout/current": { "get": { "tags": ["Payments"], "summary": "Get Current Tebex Checkout Session", "operationId": "HiddenGetCurrentTebexCheckout", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TebexCurrentCheckoutDto" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/webhooks/tebex": { "post": { "tags": ["Webhooks"], "summary": "Handle Tebex Webhook", "operationId": "HiddenTebexWebhook", "responses": { "204": { "description": "No Content" } } } }, "/notifications/{Id}": { "delete": { "tags": ["Notifications"], "summary": "Delete a notification", "operationId": "DeleteNotification", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/notifications": { "get": { "tags": ["Notifications"], "summary": "Get user notifications", "description": "Retrieve paginated notifications for the authenticated user.", "operationId": "GetNotifications", "parameters": [ { "name": "offset", "in": "query", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "limit", "in": "query", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "unreadOnly", "in": "query", "required": true, "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetNotificationsResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/notifications/read-all": { "post": { "tags": ["Notifications"], "summary": "Mark all notifications as read", "operationId": "MarkAllNotificationsRead", "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/notifications/{Id}/read": { "post": { "tags": ["Notifications"], "summary": "Mark notification as read", "operationId": "MarkNotificationRead", "parameters": [ { "name": "id", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/payments/orders/{OrderId}": { "get": { "tags": ["Payments"], "summary": "Get Order Status", "operationId": "GetOrderStatus", "parameters": [ { "name": "orderId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OrderStatusDto" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/player/{discordId}": { "get": { "tags": ["Player"], "summary": "Get Linked Accounts", "operationId": "GetLinkedAccounts", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LinkedAccountsDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "404": { "description": "Not Found" } } } }, "/player/{player}": { "get": { "tags": ["Player"], "summary": "Get Player Data", "operationId": "GetPlayerData", "parameters": [ { "name": "player", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PlayerDataDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "404": { "description": "Not Found" } } } }, "/profiles/{playerUuid}": { "get": { "tags": ["Profile"], "summary": "Get All Profile Details", "operationId": "GetAllProfileDetails", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/ProfileDetailsDto" } } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/profile/{playerUuid}/{profileUuid}": { "get": { "tags": ["Profile"], "summary": "Get Profile Member", "operationId": "GetProfile", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ProfileMemberDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "404": { "description": "Not Found" } } } }, "/profile/{playerUuid}/{profileUuid}/auctions": { "get": { "tags": ["Profile"], "summary": "Get Specific Profile Member Auctions", "operationId": "GetProfileAuctions", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetProfileAuctionsResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/profile/{profileUuid}": { "get": { "tags": ["Profile"], "summary": "Get Profile Details", "operationId": "GetProfileDetails", "parameters": [ { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ProfileDetailsDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "404": { "description": "Not Found" } } } }, "/profile/{playerUuid}/{profileUuid}/inventories/{inventory}": { "get": { "tags": ["Profile"], "summary": "Get Specific Profile Member Inventory", "operationId": "GetProfileInventory", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "inventory", "in": "path", "required": true, "description": "Inventory ID", "schema": { "type": "string", "format": "guid" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HypixelInventoryDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/profiles/{player}/names": { "get": { "tags": ["Profile"], "summary": "Get names of a player's profiles", "operationId": "GetProfileNames", "parameters": [ { "name": "player", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/ProfileNamesDto" } } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/profile/{playerUuid}/{profileUuid}/networth": { "get": { "tags": ["Profile"], "summary": "Get Member Networth", "operationId": "GetProfileNetworth", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/NetworthBreakdown" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/profile/{playerUuid}/selected": { "get": { "tags": ["Profile"], "summary": "Get Profile Member", "operationId": "GetSelectedProfile", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ProfileMemberDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "404": { "description": "Not Found" } } } }, "/recap/{year}/player/{playerUuid}/{profileUuid}": { "get": { "tags": ["Recap"], "summary": "Get Player Recap", "description": "Retrieves the yearly recap for a player. Requires authentication if the recap is not public.", "operationId": "GetPlayerRecap", "parameters": [ { "name": "year", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/YearlyRecapDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/recap/{year}/player/{playerUuid}/{profileUuid}/visibility": { "post": { "tags": ["Recap"], "summary": "Toggle Recap Visibility", "description": "Toggles the public visibility of a player's yearly recap.", "operationId": "ToggleRecapVisibility", "parameters": [ { "name": "year", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" } } ], "requestBody": { "x-name": "body", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ToggleRecapVisibilityRequestBody" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/resources/auctions/{auctionId}": { "get": { "tags": ["Resources"], "summary": "Get Auction", "description": "Get a specific auction by id. Will not fetch auction from Hypixel, only returns auctions that exist locally.", "operationId": "GetAuction", "parameters": [ { "name": "auctionId", "in": "path", "required": true, "schema": { "type": "string", "format": "guid" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetAuctionResponse" } } } } } } }, "/resources/auctions-overview": { "get": { "tags": ["Resources"], "summary": "Get Auction House Overview", "description": "Get overview of auction house.", "operationId": "GetAuctionHouseOverview", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AuctionOverviewResponse" } } } } } } }, "/resources/auctions": { "get": { "tags": ["Resources"], "summary": "Get Auction House", "description": "Get lowest auction house prices.", "operationId": "GetAuctionHouseProducts", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AuctionHouseDto" } } } } } } }, "/resources/auctions/{skyblockId}/{variantKey}": { "get": { "tags": ["Resources"], "summary": "Get Auction History For Item", "operationId": "GetAuctionPriceHistory", "parameters": [ { "name": "skyblockId", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "variantKey", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "timespan", "in": "query", "schema": { "type": "string", "nullable": true } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetAuctionPriceHistoryResponse" } } } } } } }, "/resources/auctions/{skyblockId}/variants": { "get": { "tags": ["Resources"], "summary": "List Auction Variants", "description": "Retrieve aggregated BIN statistics for each tracked variant of a SkyBlock item.", "operationId": "GetAuctionVariants", "parameters": [ { "name": "skyblockId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetAuctionVariantsResponse" } } } } } } }, "/resources/auctions/{skyblockId}/ended": { "get": { "tags": ["Resources"], "summary": "Get Recently Ended Auctions for Item", "description": "Get recently ended auctions for a specific item and optional variant. Supports bundle: format for pets and runes.", "operationId": "GetItemEndedAuctions", "parameters": [ { "name": "skyblockId", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "variant", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "limit", "in": "query", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/AuctionDto" } } } } } } } }, "/resources/auctions/popular": { "get": { "tags": ["Resources"], "summary": "List Popular Auction Items", "description": "Returns a paginated list of auction items ranked by recent trading volume.", "operationId": "GetPopularAuctions", "parameters": [ { "name": "timespan", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "page", "in": "query", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "pageSize", "in": "query", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetPopularAuctionsResponse" } } } } } } }, "/resources/auctions/search": { "get": { "tags": ["Resources"], "summary": "Search Auction Items", "description": "Fuzzy search across known auctionable items by SkyBlock ID or display name.", "operationId": "SearchAuctionItems", "parameters": [ { "name": "query", "in": "query", "required": true, "schema": { "type": "string" } }, { "name": "limit", "in": "query", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SearchAuctionItemsResponse" } } } } } } }, "/resources/bazaar/overview": { "get": { "tags": ["Resources"], "summary": "Get Bazaar Overview", "description": "Get overview of bazaar with top movers and most traded items.", "operationId": "GetBazaarOverview", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BazaarOverviewResponse" } } } } } } }, "/resources/bazaar/{itemId}": { "get": { "tags": ["Resources"], "summary": "Get Bazaar Product", "description": "Get a specific bazaar product and it's npc price (if it exists)", "operationId": "GetBazaarProduct", "parameters": [ { "name": "itemId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetBazaarProductResponse" } } } } } } }, "/resources/bazaar/{itemId}/history": { "get": { "tags": ["Resources"], "summary": "Get Bazaar Product History", "description": "Get a specific bazaar product's history", "operationId": "GetBazaarProductHistory", "parameters": [ { "name": "itemId", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "timespan", "in": "query", "schema": { "type": "string", "nullable": true } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetBazaarProductHistoryResponse" } } } } } } }, "/resources/bazaar": { "get": { "tags": ["Resources"], "summary": "Get Bazaar Products", "description": "Get all bazaar products.", "operationId": "GetBazaarProducts", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetBazaarProductsResponse" } } } } } } }, "/resources/bazaar/search": { "get": { "tags": ["Resources"], "summary": "Search Bazaar Products", "description": "Search bazaar products by name or category. Returns all products if no filters provided.", "operationId": "SearchBazaarProducts", "parameters": [ { "name": "query", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "category", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "limit", "in": "query", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SearchBazaarProductsResponse" } } } } } } }, "/resources/firesales/current": { "get": { "tags": ["Resources"], "summary": "Get Current Skyblock Firesale", "description": "Get the current/upcoming Skyblock firesales.", "operationId": "SkyblockFiresale", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SkyblockFiresalesResponse" } } } } } } }, "/resources/gems": { "get": { "tags": ["Resources"], "summary": "Get Skyblock Gem Shops", "description": "Get the current/upcoming Skyblock firesales, Taylor's Collection, and Seasonal Bundles.", "operationId": "SkyblockGemShop", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SkyblockGemShopsResponse" } } } } } } }, "/resources/items/{skyblockId}/related": { "get": { "tags": ["Resources"], "summary": "Get Related Items and Trends", "description": "Get similar items and trend data for a specific item.", "operationId": "GetItemRelated", "parameters": [ { "name": "skyblockId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ItemRelatedResponse" } } } } } } }, "/resources/item-parse": { "post": { "tags": ["Resources"], "summary": "Parse Skyblock Item from Bytes", "description": "Get an ItemDto from raw bytes from Hypixel", "operationId": "GetItemsFromBytes", "requestBody": { "x-name": "GetItemsFromBytesRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetItemsFromBytesRequest" } } }, "required": true, "x-position": 1 }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetItemsFromBytesResponse" } } } } } } }, "/resources/items": { "get": { "tags": ["Resources"], "summary": "Get Skyblock Items", "description": "Get all items in the Hypixel resources endpoint", "operationId": "GetSkyblockItems", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetSkyblockItemsResponse" } } } } } }, "post": { "tags": ["Resources"], "summary": "Get Specific Skyblock Items", "description": "Get specific skyblock items from the Hypixel resources endpoint, along with bazaar data for each.", "operationId": "GetSpecifiedSkyblockItems", "requestBody": { "x-name": "GetSpecifiedSkyblockItemsRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetSpecifiedSkyblockItemsRequest" } } }, "required": true, "x-position": 1 }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetSpecifiedSkyblockItemsResponse" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/resources/items/{itemId}": { "get": { "tags": ["Resources"], "summary": "Get Skyblock Item", "description": "Get the Hypixel provided data of a specific item, as well as a bazaar summary.", "operationId": "SkyblockProduct", "parameters": [ { "name": "itemId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SkyblockItemResponse" } } } } } } }, "/shop/category/{categoryId}/banner": { "post": { "tags": ["Shop"], "summary": "Upload Category Banner Image", "operationId": "AddCategoryBanner", "parameters": [ { "name": "categoryId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "requestBody": { "x-name": "image", "content": { "multipart/form-data": { "schema": { "$ref": "#/components/schemas/UploadImageDto" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/shop/category/{categoryId}/product/{productId}": { "post": { "tags": ["Shop"], "summary": "Add Product to Shop Category", "operationId": "AddProductToCategory", "parameters": [ { "name": "categoryId", "in": "path", "required": true, "description": "Id of the category to add the product to", "schema": { "type": "integer", "format": "int32" } }, { "name": "productId", "in": "path", "required": true, "description": "Id of the product to add to the category", "schema": { "type": "integer", "format": "int64" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] }, "delete": { "tags": ["Shop"], "summary": "Remove Product from Shop Category", "operationId": "RemoveProductToCategory", "parameters": [ { "name": "categoryId", "in": "path", "required": true, "description": "Id of the category to add the product to", "schema": { "type": "integer", "format": "int32" } }, { "name": "productId", "in": "path", "required": true, "description": "Id of the product to add to the category", "schema": { "type": "integer", "format": "int64" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/shop/category/{categoryId}/artist/{accountId}": { "post": { "tags": ["Shop"], "summary": "Assign Artist to Category", "operationId": "AssignArtist", "parameters": [ { "name": "categoryId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "accountId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/shop/category": { "post": { "tags": ["Shop"], "summary": "Create Shop Category", "operationId": "CreateCategory", "requestBody": { "x-name": "CreateCategoryDto", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateCategoryDto" } } }, "required": true, "x-position": 1 }, "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/shop/category/{categoryId}": { "delete": { "tags": ["Shop"], "summary": "Delete Shop Category", "operationId": "DeleteCategory", "parameters": [ { "name": "categoryId", "in": "path", "required": true, "description": "Id of the category to delete", "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] }, "patch": { "tags": ["Shop"], "summary": "Update Shop Category", "operationId": "UpdateCategory", "parameters": [ { "name": "categoryId", "in": "path", "required": true, "description": "Id of the category to update", "schema": { "type": "integer", "format": "int32" } } ], "requestBody": { "x-name": "categoryData", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EditCategoryDto" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/shop/categories": { "get": { "tags": ["Shop"], "summary": "Get Shop Categories", "operationId": "GetCategories", "parameters": [ { "name": "includeProducts", "in": "query", "description": "Include products in response", "schema": { "type": "boolean", "nullable": true } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/ShopCategoryDto" } } } } } } } }, "/shop/category/{category}": { "get": { "tags": ["Shop"], "summary": "Get Shop Category", "operationId": "GetCategory", "parameters": [ { "name": "category", "in": "path", "required": true, "description": "Category id or slug", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ShopCategoryDto" } } } } } } }, "/shop/categories/reorder": { "post": { "tags": ["Shop"], "summary": "Reorder Shop Categories", "operationId": "ReorderCategories", "requestBody": { "x-name": "ReorderIntRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ReorderIntRequest" } } }, "required": true, "x-position": 1 }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/shop/category/{categoryId}/reorder": { "post": { "tags": ["Shop"], "summary": "Reorder Products in Shop Category", "operationId": "ReorderCategoryProducts", "parameters": [ { "name": "categoryId", "in": "path", "required": true, "description": "Category id", "schema": { "type": "integer", "format": "int32" } } ], "requestBody": { "x-name": "ReorderCategoryProductsRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ReorderCategoryProductsRequest" } } }, "required": true, "x-position": 1 }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/shop/category/{categoryId}/artist": { "delete": { "tags": ["Shop"], "summary": "Unassign Artist from Category", "operationId": "UnassignArtist", "parameters": [ { "name": "categoryId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/product/{productId}/cosmetics/{cosmeticId}": { "post": { "tags": ["Product"], "summary": "Add Cosmetic to Product", "operationId": "AddCosmeticToProduct", "parameters": [ { "name": "productId", "in": "path", "required": true, "description": "Id of the produc to add the cosmetic to", "schema": { "type": "integer", "format": "int64" } }, { "name": "cosmeticId", "in": "path", "required": true, "description": "Id of the cosmetic to add to the product", "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] }, "delete": { "tags": ["Product"], "summary": "Remove Cosmetic from Product", "operationId": "RemoveCosmeticToProduct", "parameters": [ { "name": "productId", "in": "path", "required": true, "description": "Id of the produc to add the cosmetic to", "schema": { "type": "integer", "format": "int64" } }, { "name": "cosmeticId", "in": "path", "required": true, "description": "Id of the cosmetic to add to the product", "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/product/{discordId}/images": { "post": { "tags": ["Product"], "summary": "Add Image To Product", "operationId": "AddProductImage", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "thumbnail", "in": "query", "description": "Use this to set the image as the product's thumbnail", "schema": { "type": "boolean", "default": false, "nullable": true } } ], "requestBody": { "x-name": "image", "content": { "multipart/form-data": { "schema": { "$ref": "#/components/schemas/UploadImageDto" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/product/{discordId}/images/{imagePath}": { "delete": { "tags": ["Product"], "summary": "Remove Image from Product", "operationId": "DeleteProductImage", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } }, { "name": "imagePath", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/products/admin": { "get": { "tags": ["Product"], "summary": "Get Admin Shop Products", "operationId": "GetAllProducts", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/ProductDto" } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": ["Artist", "Moderator", "Admin"] } ] } }, "/products/refresh": { "post": { "tags": ["Product"], "summary": "Refresh Shop Products", "operationId": "RefreshProducts", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/ProductDto" } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/product/{discordId}": { "patch": { "tags": ["Product"], "summary": "Update Shop Product", "operationId": "UpdateProduct", "parameters": [ { "name": "discordId", "in": "path", "required": true, "description": "Discord Snowflake ID of the requested resource (guild, user, etc.)", "schema": { "type": "integer", "format": "int64" } } ], "requestBody": { "x-name": "productData", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EditProductDto" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] }, "get": { "tags": ["Product"], "summary": "Get Shop Product", "operationId": "GetProduct", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ProductDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } } } } }, "/product/{discordId}/claim": { "post": { "tags": ["Product"], "summary": "Claim Free Shop Product", "operationId": "ClaimProduct", "parameters": [ { "name": "discordId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/products": { "get": { "tags": ["Product"], "summary": "Get Shop Products", "operationId": "GetProducts", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/ProductDto" } } } } } } } }, "/product/style/{styleId}/images": { "post": { "tags": ["Product"], "summary": "Add Image To Style", "operationId": "AddStyleImage", "parameters": [ { "name": "styleId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "thumbnail", "in": "query", "description": "Use this to set the image as the product's thumbnail", "schema": { "type": "boolean", "default": false, "nullable": true } } ], "requestBody": { "x-name": "image", "content": { "multipart/form-data": { "schema": { "$ref": "#/components/schemas/UploadImageDto" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/product/style": { "post": { "tags": ["Product"], "summary": "Create Shop Style", "operationId": "CreateStyle", "requestBody": { "x-name": "CreateStyleRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateStyleRequest" } } }, "required": true, "x-position": 1 }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/product/style/{styleId}": { "delete": { "tags": ["Product"], "summary": "Delete Shop Style", "operationId": "DeleteStyle", "parameters": [ { "name": "styleId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] }, "get": { "tags": ["Product"], "summary": "Get Shop Style", "operationId": "GetStyle", "parameters": [ { "name": "styleId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WeightStyleWithDataDto" } } } } } }, "post": { "tags": ["Product"], "summary": "Update Shop Style", "operationId": "UpdateStyle", "parameters": [ { "name": "styleId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "requestBody": { "x-name": "data", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WeightStyleWithDataDto" } } }, "required": true }, "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/product/style/{styleId}/images/{imagePath}": { "delete": { "tags": ["Product"], "summary": "Remove Image from Style", "operationId": "DeleteStyleImage", "parameters": [ { "name": "styleId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "imagePath", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/product/styles": { "get": { "tags": ["Product"], "summary": "Get Shop Styles", "operationId": "GetStyles", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/WeightStyleListDto" } } } } } } } }, "/product/style/{styleId}/artist/{accountId}": { "post": { "tags": ["Product"], "summary": "Reassign Style to a Different Artist", "operationId": "ReassignStyle", "parameters": [ { "name": "styleId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "accountId", "in": "path", "required": true, "schema": { "type": "integer", "format": "int64" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/textures/blocks/{blockId}": { "get": { "tags": ["Textures"], "summary": "Get Minecraft Block Texture", "operationId": "GetBlockTexture", "parameters": [ { "name": "blockId", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "packs", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "face", "in": "query", "schema": { "type": "string", "nullable": true } } ], "responses": { "204": { "description": "No Content" } } } }, "/textures/{inventoryUuid}/{slotId}/meta": { "get": { "tags": ["Textures"], "summary": "Get Inventory Item Texture Metadata", "operationId": "GetInventoryItemMeta", "parameters": [ { "name": "inventoryUuid", "in": "path", "required": true, "schema": { "type": "string", "format": "guid" } }, { "name": "slotId", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "packs", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "sub", "in": "query", "description": "Sub slot if nested inventory", "schema": { "type": "string", "nullable": true } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InventoryItemMetaResponse" } } } } } } }, "/textures/{inventoryUuid}/{slotId}": { "get": { "tags": ["Textures"], "summary": "Get Inventory Item Texture", "operationId": "GetInventoryItemTexture", "parameters": [ { "name": "inventoryUuid", "in": "path", "required": true, "schema": { "type": "string", "format": "guid" } }, { "name": "slotId", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "packs", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "sub", "in": "query", "description": "Sub slot if nested inventory", "schema": { "type": "string", "nullable": true } } ], "responses": { "204": { "description": "No Content" } } } }, "/textures/items/{itemId}": { "get": { "tags": ["Textures"], "summary": "Get Skyblock Item Texture", "operationId": "GetItemTexture", "parameters": [ { "name": "itemId", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "packs", "in": "query", "schema": { "type": "string", "nullable": true } } ], "responses": { "204": { "description": "No Content" } } } }, "/textures/pets/{petId}": { "get": { "tags": ["Textures"], "summary": "Get Skyblock Pet Texture", "operationId": "GetPetTexture", "parameters": [ { "name": "petId", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "packs", "in": "query", "schema": { "type": "string", "nullable": true } } ], "responses": { "204": { "description": "No Content" } } } }, "/texturepacks/{packId}/icon": { "get": { "tags": ["Textures"], "summary": "Get Registered Texture Pack Icon", "description": "Retrieves the icon image for a registered texture pack by its ID.", "operationId": "GetTexturePackIcon", "parameters": [ { "name": "packId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" } } } }, "/tool-settings": { "post": { "tags": ["Tool-Settings"], "summary": "Create a tool setting", "description": "Create a new tool setting entry with optional public visibility.", "operationId": "CreateToolSetting", "requestBody": { "x-name": "CreateToolSettingRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateToolSettingRequest" } } }, "required": true, "x-position": 1 }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ToolSettingDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] }, "get": { "tags": ["Tool-Settings"], "summary": "List tool settings", "description": "List the authenticated user's settings with optional target/visibility filters.", "operationId": "ListToolSettings", "parameters": [ { "name": "targetId", "in": "query", "schema": { "type": "string", "nullable": true } }, { "name": "isPublic", "in": "query", "schema": { "type": "boolean", "nullable": true } }, { "name": "limit", "in": "query", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "name": "offset", "in": "query", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/ToolSettingDto" } } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/tool-settings/{SettingId}": { "delete": { "tags": ["Tool-Settings"], "summary": "Delete a tool setting", "description": "Delete a setting by sqid. Only the owner can delete.", "operationId": "DeleteToolSetting", "parameters": [ { "name": "settingId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "No Content" }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] }, "get": { "tags": ["Tool-Settings"], "summary": "Get a tool setting", "description": "Get a setting by sqid. Public settings can be read by any authenticated user.", "operationId": "GetToolSetting", "parameters": [ { "name": "settingId", "in": "path", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ToolSettingDto" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/tool-settings/{settingId}": { "put": { "tags": ["Tool-Settings"], "summary": "Update a tool setting", "description": "Update an existing setting by sqid. Only the owner can update.", "operationId": "UpdateToolSetting", "parameters": [ { "name": "settingId", "in": "path", "required": true, "schema": { "type": "string" } } ], "requestBody": { "x-name": "UpdateToolSettingRequest", "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateToolSettingRequest" } } }, "required": true, "x-position": 1 }, "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ToolSettingDto" } } } }, "400": { "description": "Bad Request", "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } }, "401": { "description": "Unauthorized" } }, "security": [ { "JWTBearerAuth": [] } ] } }, "/weights/all": { "get": { "tags": ["Weight"], "summary": "Get all weight constants", "description": "Get all farming weight constants", "operationId": "GetAllWeights", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WeightsDto" } } } } } } }, "/weight/{playerUuid}/{profileUuid}": { "get": { "tags": ["Weight"], "summary": "Get farming weight for a profile member", "operationId": "GetWeightForProfile", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "profileUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "collections", "in": "query", "schema": { "type": "boolean", "default": false, "nullable": true } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/FarmingWeightDto" } } } }, "404": { "description": "Not Found" } } } }, "/weight/{playerUuid}/selected": { "get": { "tags": ["Weight"], "summary": "Get farming weight for a player's selected profile", "operationId": "GetWeightForSelected", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "collections", "in": "query", "schema": { "type": "boolean", "default": false, "nullable": true } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/FarmingWeightDto" } } } }, "404": { "description": "Not Found" } } } }, "/weight/{playerUuid}": { "get": { "tags": ["Weight"], "summary": "Get farming weight for all profiles of a player", "description": "Get farming weight for all profiles of a player", "operationId": "GetWeightForProfiles", "parameters": [ { "name": "playerUuid", "in": "path", "required": true, "schema": { "type": "string" } }, { "name": "collections", "in": "query", "schema": { "type": "boolean", "default": false, "nullable": true } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/FarmingWeightAllProfilesDto" } } } }, "404": { "description": "Not Found" } } } }, "/weights": { "get": { "tags": ["Weight"], "summary": "Get crop weight constants", "description": "Get crop weight constants", "operationId": "GetWeights", "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } } } } } }, "deprecated": true } } }, "components": { "schemas": { "MinecraftAccountDto": { "type": "object", "additionalProperties": false, "required": ["id", "name", "formattedName", "primaryAccount", "settings", "skin", "profiles", "badges"], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "formattedName": { "type": "string" }, "primaryAccount": { "type": "boolean" }, "discordId": { "type": "string", "nullable": true }, "discordUsername": { "type": "string", "nullable": true }, "discordAvatar": { "type": "string", "nullable": true }, "settings": { "$ref": "#/components/schemas/UserSettingsDto" }, "skin": { "$ref": "#/components/schemas/MinecraftSkinDto" }, "profiles": { "type": "array", "items": { "$ref": "#/components/schemas/ProfileDetailsDto" } }, "badges": { "type": "array", "items": { "$ref": "#/components/schemas/UserBadgeDto" } }, "playerData": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/PlayerDataDto" } ] } } }, "UserSettingsDto": { "type": "object", "additionalProperties": false, "properties": { "prefix": { "type": "string", "description": "Custom name prefix", "nullable": true }, "suffix": { "type": "string", "description": "Custom name suffix", "nullable": true }, "features": { "description": "Configurated features for the user", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ConfiguredProductFeaturesDto" } ] }, "weightStyle": { "description": "Selected weight style for the user", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleLinkedDto" } ] }, "leaderboardStyle": { "description": "Selected leaderboard style for the user", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleLinkedDto" } ] }, "nameStyle": { "description": "Selected name style for the user", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleLinkedDto" } ] }, "fortune": { "description": "Fortune settings for the user", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/FortuneSettingsDto" } ] } } }, "ConfiguredProductFeaturesDto": { "type": "object", "additionalProperties": false, "properties": { "weightStyle": { "type": "integer", "description": "Name of weight style to use.", "format": "int32", "nullable": true }, "weightStyleOverride": { "type": "boolean", "description": "Ability to override other's weight styles.", "nullable": true }, "embedColor": { "type": "string", "description": "Embed color for the bot.", "maxLength": 6, "nullable": true }, "moreInfoDefault": { "type": "boolean", "description": "Show \"More Info\" on weight command by default.", "nullable": true }, "hideShopPromotions": { "type": "boolean", "description": "If shop promotions should be hidden.", "nullable": true }, "emojiUrl": { "type": "string", "description": "Custom name emoji URL.", "maxLength": 256, "nullable": true } } }, "WeightStyleLinkedDto": { "type": "object", "additionalProperties": false, "required": ["id"], "properties": { "id": { "type": "integer", "format": "int32" }, "name": { "type": "string", "maxLength": 64, "nullable": true } } }, "FortuneSettingsDto": { "type": "object", "additionalProperties": false, "required": ["accounts"], "properties": { "accounts": { "type": "object", "description": "Member fortune settings for each minecraft account, then each profile.", "additionalProperties": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/MemberFortuneSettingsDto" } } } } }, "MemberFortuneSettingsDto": { "type": "object", "additionalProperties": false, "required": ["strength", "communityCenter", "rosewaterFlasks", "attributes", "chips"], "properties": { "strength": { "type": "integer", "description": "Amount of strength used for mooshroom fortune", "format": "int32" }, "communityCenter": { "type": "integer", "description": "Community center farming fortune level", "format": "int32" }, "rosewaterFlasks": { "type": "integer", "description": "Consumed Filled Rosewater Flasks", "format": "int32" }, "attributes": { "type": "object", "description": "Attribute shards", "additionalProperties": { "type": "integer", "format": "int32" } }, "chips": { "type": "object", "description": "Garden chips", "additionalProperties": { "type": "integer", "format": "int32" } } } }, "MinecraftSkinDto": { "type": "object", "additionalProperties": false, "properties": { "texture": { "type": "string", "description": "Minecraft skin texture ID", "nullable": true }, "face": { "type": "string", "description": "Base64 data image of the 8x8 face", "nullable": true }, "hat": { "type": "string", "description": "Base64 data image of the 8x8 hat (overlay on the face)", "nullable": true } } }, "ProfileDetailsDto": { "type": "object", "additionalProperties": false, "required": ["profileId", "profileName", "gameMode", "selected", "bankBalance", "deleted", "members"], "properties": { "profileId": { "type": "string" }, "profileName": { "type": "string" }, "gameMode": { "type": "string" }, "selected": { "type": "boolean" }, "bankBalance": { "type": "number", "format": "double" }, "deleted": { "type": "boolean" }, "members": { "type": "array", "items": { "$ref": "#/components/schemas/MemberDetailsDto" } } } }, "MemberDetailsDto": { "type": "object", "additionalProperties": false, "required": ["uuid", "username", "active", "farmingWeight"], "properties": { "uuid": { "type": "string" }, "username": { "type": "string" }, "profileName": { "type": "string", "nullable": true }, "active": { "type": "boolean" }, "farmingWeight": { "type": "number", "format": "double" }, "meta": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/MemberCosmeticsDto" } ] } } }, "MemberCosmeticsDto": { "type": "object", "additionalProperties": false, "properties": { "prefix": { "type": "string", "maxLength": 16, "nullable": true }, "suffix": { "type": "string", "maxLength": 16, "nullable": true }, "leaderboard": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/MemberLeaderboardCosmeticsDto" } ] } } }, "MemberLeaderboardCosmeticsDto": { "type": "object", "additionalProperties": false, "properties": { "styleId": { "type": "integer", "format": "int32", "nullable": true }, "backgroundColor": { "type": "string", "nullable": true }, "borderColor": { "type": "string", "nullable": true }, "textColor": { "type": "string", "nullable": true }, "rankColor": { "type": "string", "nullable": true }, "backgroundImage": { "type": "string", "nullable": true }, "overlayImage": { "type": "string", "nullable": true } } }, "UserBadgeDto": { "type": "object", "additionalProperties": false, "required": ["id", "image", "name", "description", "requirements", "timestamp", "visible", "order"], "properties": { "id": { "type": "integer", "format": "int32" }, "image": { "$ref": "#/components/schemas/ImageAttachmentDto" }, "name": { "type": "string" }, "description": { "type": "string" }, "requirements": { "type": "string" }, "timestamp": { "type": "string" }, "visible": { "type": "boolean" }, "order": { "type": "integer", "format": "int32" } } }, "ImageAttachmentDto": { "type": "object", "additionalProperties": false, "required": ["width", "height", "sources", "url"], "properties": { "title": { "type": "string", "description": "Image title", "maxLength": 64, "nullable": true }, "description": { "type": "string", "description": "Image description", "maxLength": 512, "nullable": true }, "order": { "type": "integer", "description": "Image ordering number", "format": "int32", "nullable": true }, "width": { "type": "integer", "description": "The original width of the image.", "format": "int32" }, "height": { "type": "integer", "description": "The original height of the image.", "format": "int32" }, "sources": { "type": "object", "description": "A dictionary of available image sources, keyed by a logical name (e.g., \"small\", \"medium\").", "additionalProperties": { "$ref": "#/components/schemas/ImageSourceDto" } }, "url": { "type": "string", "description": "Lowest quality image URL" } } }, "ImageSourceDto": { "type": "object", "additionalProperties": false, "required": ["url", "width"], "properties": { "url": { "type": "string", "description": "The fully-qualified public URL for this image variant." }, "width": { "type": "integer", "description": "The width of this image variant in pixels.", "format": "int32" } } }, "PlayerDataDto": { "type": "object", "additionalProperties": false, "required": [ "uuid", "firstLogin", "lastLogin", "lastLogout", "karma", "networkExp", "rewardHighScore", "rewardScore", "rewardStreak", "totalDailyRewards", "totalRewards" ], "properties": { "uuid": { "type": "string" }, "displayname": { "type": "string", "nullable": true }, "firstLogin": { "type": "integer", "format": "int64" }, "lastLogin": { "type": "integer", "format": "int64" }, "lastLogout": { "type": "integer", "format": "int64" }, "karma": { "type": "integer", "format": "int64" }, "networkExp": { "type": "number", "format": "double" }, "guildMember": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/HypixelGuildMemberDetailsDto" } ] }, "rewardHighScore": { "type": "integer", "format": "int32" }, "rewardScore": { "type": "integer", "format": "int32" }, "rewardStreak": { "type": "integer", "format": "int32" }, "totalDailyRewards": { "type": "integer", "format": "int32" }, "totalRewards": { "type": "integer", "format": "int32" }, "prefix": { "type": "string", "nullable": true }, "rank": { "type": "string", "nullable": true }, "packageRank": { "type": "string", "nullable": true }, "newPackageRank": { "type": "string", "nullable": true }, "rankPlusColor": { "type": "string", "nullable": true }, "monthlyPackageRank": { "type": "string", "nullable": true }, "mostRecentMonthlyPackageRank": { "type": "string", "nullable": true }, "monthlyRankColor": { "type": "string", "nullable": true }, "socialMedia": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/SocialMediaLinksDto" } ] } } }, "HypixelGuildMemberDetailsDto": { "type": "object", "additionalProperties": false, "required": ["joinedAt", "questParticipation", "active", "expHistory"], "properties": { "guild": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/HypixelGuildDetailsDto" } ] }, "rank": { "type": "string", "nullable": true }, "joinedAt": { "type": "integer", "format": "int64" }, "questParticipation": { "type": "integer", "format": "int32" }, "active": { "type": "boolean" }, "expHistory": { "type": "object", "additionalProperties": { "type": "integer", "format": "int32" } } } }, "HypixelGuildDetailsDto": { "type": "object", "additionalProperties": false, "required": ["id", "name", "createdAt", "memberCount", "lastUpdated", "amount"], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "createdAt": { "type": "integer", "format": "int64" }, "tag": { "type": "string", "nullable": true }, "tagColor": { "type": "string", "nullable": true }, "memberCount": { "type": "integer", "format": "int32" }, "lastUpdated": { "type": "integer", "format": "int64" }, "stats": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/HypixelGuildStatsDto" } ] }, "amount": { "type": "number", "description": "Populated when sorting guilds by a specific collection or skill", "format": "double" } } }, "HypixelGuildStatsDto": { "type": "object", "additionalProperties": false, "required": [ "recordedAt", "memberCount", "hypixelLevel", "skyblockExperience", "skillLevel", "slayerExperience", "catacombsExperience", "farmingWeight", "networth" ], "properties": { "recordedAt": { "type": "string", "format": "date-time" }, "memberCount": { "type": "integer", "format": "int32" }, "hypixelLevel": { "$ref": "#/components/schemas/HypixelGuildStat" }, "skyblockExperience": { "$ref": "#/components/schemas/HypixelGuildStat" }, "skillLevel": { "$ref": "#/components/schemas/HypixelGuildStat" }, "slayerExperience": { "$ref": "#/components/schemas/HypixelGuildStat" }, "catacombsExperience": { "$ref": "#/components/schemas/HypixelGuildStat" }, "farmingWeight": { "$ref": "#/components/schemas/HypixelGuildStat" }, "networth": { "$ref": "#/components/schemas/HypixelGuildStat" } } }, "HypixelGuildStat": { "type": "object", "additionalProperties": false, "required": ["total", "average"], "properties": { "total": { "type": "number", "format": "double" }, "average": { "type": "number", "format": "double" } } }, "SocialMediaLinksDto": { "type": "object", "additionalProperties": false, "properties": { "discord": { "type": "string", "nullable": true }, "hypixel": { "type": "string", "nullable": true }, "youtube": { "type": "string", "nullable": true } } }, "PlayerRequest": { "type": "object", "additionalProperties": false }, "ErrorResponse": { "type": "object", "additionalProperties": false, "required": ["statusCode", "message", "errors"], "properties": { "statusCode": { "type": "integer", "format": "int32", "default": 400 }, "message": { "type": "string", "default": "One or more errors occurred!" }, "errors": { "type": "object", "additionalProperties": { "type": "array", "items": { "type": "string" } } } } }, "DiscordIdRequest": { "type": "object", "additionalProperties": false }, "AuthorizedAccountDto": { "type": "object", "additionalProperties": false, "required": [ "id", "displayName", "username", "settings", "entitlements", "minecraftAccounts", "dismissedAnnouncements" ], "properties": { "id": { "type": "string", "description": "Discord user ID" }, "displayName": { "type": "string", "description": "Discord display name" }, "username": { "type": "string", "description": "Discord username (unique)" }, "discriminator": { "type": "string", "deprecated": true, "x-deprecatedMessage": "Discriminator is deprecated and will be removed in a future version.", "nullable": true }, "locale": { "type": "string", "description": "Discord user locale", "nullable": true }, "avatar": { "type": "string", "description": "Discord avatar URL hash", "nullable": true }, "banner": { "type": "string", "description": "Discord banner URL hash", "nullable": true }, "settings": { "$ref": "#/components/schemas/UserSettingsDto" }, "entitlements": { "type": "array", "description": "Purchased entitlements from the Discord store", "items": { "$ref": "#/components/schemas/EntitlementDto" } }, "minecraftAccounts": { "type": "array", "description": "Linked Minecraft accounts", "items": { "$ref": "#/components/schemas/MinecraftAccountDetailsDto" } }, "dismissedAnnouncements": { "type": "array", "description": "Dismissed announcements by the user", "items": { "type": "string" } } } }, "EntitlementDto": { "type": "object", "additionalProperties": false, "required": ["id", "type", "target", "productId", "product", "deleted"], "properties": { "id": { "type": "string", "description": "Entitlement ID" }, "type": { "description": "Type of entitlement", "oneOf": [ { "$ref": "#/components/schemas/EntitlementType" } ] }, "target": { "description": "Target of entitlement.\n0 = None\n1 = User\n2 = Guild", "oneOf": [ { "$ref": "#/components/schemas/EntitlementTarget" } ] }, "productId": { "type": "string", "description": "SKU ID of the product" }, "product": { "description": "Product details", "oneOf": [ { "$ref": "#/components/schemas/ProductDto" } ] }, "deleted": { "type": "boolean" }, "consumed": { "type": "boolean", "description": "Consumed status of the entitlement if applicable", "nullable": true }, "startDate": { "type": "string", "description": "Start date of the entitlement", "format": "date-time", "nullable": true }, "endDate": { "type": "string", "description": "End date of the entitlement", "format": "date-time", "nullable": true } } }, "EntitlementType": { "type": "integer", "description": "", "x-enumNames": [ "Purchase", "PremiumSubscription", "DeveloperGift", "TestModePurchase", "FreePurchase", "UserGift", "PremiumPurchase", "ApplicationSubscription" ], "enum": [1, 2, 3, 4, 5, 6, 7, 8] }, "EntitlementTarget": { "type": "integer", "description": "", "x-enumNames": ["None", "Guild", "User"], "enum": [0, 1, 2] }, "ProductDto": { "type": "object", "additionalProperties": false, "required": [ "id", "name", "slug", "price", "available", "type", "features", "weightStyles", "images", "flags", "isSubscription", "isGuildSubscription", "isUserSubscription" ], "properties": { "id": { "type": "string", "description": "Product ID" }, "name": { "type": "string", "description": "Product name" }, "slug": { "type": "string", "description": "Slug of the product" }, "price": { "type": "integer", "description": "Product price", "format": "int32" }, "description": { "type": "string", "description": "Product description", "nullable": true }, "available": { "type": "boolean", "description": "If the product is available for purchase" }, "type": { "description": "Type of product", "oneOf": [ { "$ref": "#/components/schemas/ProductType" } ] }, "features": { "description": "Features of the product", "oneOf": [ { "$ref": "#/components/schemas/UnlockedProductFeaturesDto" } ] }, "weightStyles": { "type": "array", "description": "Unlocked weight styles", "items": { "$ref": "#/components/schemas/WeightStyleLinkedDto" } }, "thumbnail": { "description": "Product thumbnail", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ImageAttachmentDto" } ] }, "images": { "type": "array", "description": "Product Images", "items": { "$ref": "#/components/schemas/ImageAttachmentDto" } }, "flags": { "type": "integer", "description": "Discord flags", "format": "int32" }, "isSubscription": { "type": "boolean" }, "isGuildSubscription": { "type": "boolean" }, "isUserSubscription": { "type": "boolean" }, "releasedAt": { "type": "string", "description": "Product release date", "format": "date-time", "nullable": true }, "tebex": { "description": "Tebex-specific checkout settings for the product", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexProductSettingsDto" } ] } } }, "ProductType": { "type": "integer", "description": "", "x-enumNames": ["Durable", "Consumable", "Subscription", "SubscriptionGroup", "Custom"], "enum": [2, 3, 5, 6, -1] }, "UnlockedProductFeaturesDto": { "type": "object", "additionalProperties": false, "properties": { "badgeId": { "type": "integer", "description": "ID of unlocked badge.", "format": "int32", "nullable": true }, "weightStyles": { "type": "array", "description": "Name of weight style to unlock.", "nullable": true, "items": { "type": "string" } }, "weightStyleOverride": { "type": "boolean", "description": "Ability to override other's weight styles.", "nullable": true }, "embedColors": { "type": "array", "description": "Embed color for the bot.", "nullable": true, "items": { "type": "string" } }, "hideShopPromotions": { "type": "boolean", "description": "Ability to hide shop promotions.", "nullable": true }, "moreInfoDefault": { "type": "boolean", "description": "Show \"More Info\" on weight command by default.", "nullable": true }, "customEmoji": { "type": "boolean", "description": "Ability to have custom name emoji for the user.", "nullable": true }, "maxMonthlyEvents": { "type": "integer", "description": "Maximum number of events that can be created in a month. (For guilds)", "format": "int32", "nullable": true }, "maxJacobLeaderboards": { "type": "integer", "description": "Maximum number of jacob leaderboard that can be active at once. (For guilds)", "format": "int32", "nullable": true }, "flags": { "type": "array", "description": "Unlocked product flags", "nullable": true, "items": { "type": "string" } } } }, "TebexProductSettingsDto": { "type": "object", "additionalProperties": false, "required": ["id", "productId", "enabled", "supportsGifting"], "properties": { "id": { "type": "string", "format": "guid" }, "productId": { "type": "integer", "format": "uint64" }, "enabled": { "type": "boolean" }, "supportsGifting": { "type": "boolean" }, "config": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexProductConfig" } ] } } }, "TebexProductConfig": { "type": "object", "additionalProperties": false, "required": ["allowGiftUser", "allowGiftGuild", "creatorCodeAllowed", "requiresMinecraftIdentity"], "properties": { "allowGiftUser": { "type": "boolean" }, "allowGiftGuild": { "type": "boolean" }, "creatorCodeAllowed": { "type": "boolean" }, "requiresMinecraftIdentity": { "type": "boolean" }, "defaultCreatorCode": { "type": "string", "nullable": true }, "checkoutNameOverride": { "type": "string", "nullable": true }, "checkoutDescriptionOverride": { "type": "string", "nullable": true }, "imageUrlOverride": { "type": "string", "nullable": true }, "billingType": { "type": "string", "nullable": true }, "billingPeriod": { "type": "string", "nullable": true }, "billingFrequency": { "type": "integer", "format": "int32", "nullable": true }, "variableData": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexVariableData" } ] } } }, "TebexVariableData": { "type": "object", "additionalProperties": false, "required": ["entries"], "properties": { "entries": { "type": "array", "items": { "$ref": "#/components/schemas/TebexVariableDataEntry" } } } }, "TebexVariableDataEntry": { "type": "object", "additionalProperties": false, "required": ["key", "value"], "properties": { "key": { "type": "string" }, "value": { "type": "string" } } }, "MinecraftAccountDetailsDto": { "type": "object", "additionalProperties": false, "required": ["id", "name", "primaryAccount", "badges", "skin"], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "primaryAccount": { "type": "boolean" }, "badges": { "type": "array", "items": { "$ref": "#/components/schemas/UserBadgeDto" } }, "skin": { "$ref": "#/components/schemas/MinecraftSkinDto" } } }, "ClaimGiftRequest": { "type": "object", "additionalProperties": false, "required": ["orderItemIds"], "properties": { "orderItemIds": { "type": "array", "items": { "type": "string" } } } }, "DeclineGiftRequest": { "type": "object", "additionalProperties": false, "required": ["orderItemIds"], "properties": { "orderItemIds": { "type": "array", "items": { "type": "string" } } } }, "PendingGiftDto": { "type": "object", "description": "Summary of a pending gift order that the authenticated user can claim.", "additionalProperties": false, "required": ["orderId", "buyerId", "buyerName", "provider", "orderDate", "items"], "properties": { "orderId": { "type": "string", "format": "guid" }, "buyerId": { "type": "string" }, "buyerName": { "type": "string" }, "provider": { "type": "string" }, "orderDate": { "type": "string", "format": "date-time" }, "completedAt": { "type": "string", "format": "date-time", "nullable": true }, "claimExpiresAt": { "type": "string", "format": "date-time", "nullable": true }, "giftMessage": { "type": "string", "nullable": true }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/GiftItemDto" } } } }, "GiftItemDto": { "type": "object", "additionalProperties": false, "required": ["orderItemId", "productId", "quantity"], "properties": { "orderItemId": { "type": "string" }, "productId": { "type": "string" }, "productName": { "type": "string", "nullable": true }, "quantity": { "type": "integer", "format": "int32" }, "gift": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/GiftItemStateDto" } ] } } }, "GiftItemStateDto": { "type": "object", "additionalProperties": false, "required": ["isReassignable"], "properties": { "recipientId": { "type": "string", "nullable": true }, "recipientGuildId": { "type": "string", "nullable": true }, "recipientType": { "type": "string", "nullable": true }, "recipientResolutionStatus": { "type": "string", "nullable": true }, "claimExpiresAt": { "type": "string", "format": "date-time", "nullable": true }, "recipientSnapshot": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexRecipientSnapshot" } ] }, "isReassignable": { "type": "boolean" }, "canAdminResolveRecipient": { "type": "boolean", "nullable": true } } }, "TebexRecipientSnapshot": { "type": "object", "additionalProperties": false, "required": ["recipientType"], "properties": { "mode": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexRecipientMode" } ] }, "recipientType": { "$ref": "#/components/schemas/PurchaseRecipientType" }, "discordUserId": { "type": "integer", "format": "uint64", "nullable": true }, "guildId": { "type": "integer", "format": "uint64", "nullable": true }, "minecraftUuid": { "type": "string", "nullable": true }, "minecraftIgn": { "type": "string", "nullable": true } } }, "TebexRecipientMode": { "type": "string", "description": "", "x-enumNames": ["Self", "GiftUser", "GiftGuild"], "enum": ["Self", "GiftUser", "GiftGuild"] }, "PurchaseRecipientType": { "type": "integer", "description": "", "x-enumNames": ["User", "Guild"], "enum": [1, 2] }, "ResendGiftRequest": { "type": "object", "additionalProperties": false, "required": ["orderItemIds"], "properties": { "orderItemIds": { "type": "array", "items": { "type": "string" } }, "mode": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexRecipientMode" } ] }, "playerUuidOrIgn": { "type": "string", "nullable": true }, "guildId": { "type": "integer", "format": "uint64", "nullable": true }, "message": { "type": "string", "nullable": true } } }, "ProblemDetails": { "type": "object", "additionalProperties": false, "required": ["type", "title", "status", "instance", "traceId", "errors"], "properties": { "type": { "type": "string", "default": "https://www.rfc-editor.org/rfc/rfc7231#section-6.5.1" }, "title": { "type": "string", "default": "One or more validation errors occurred." }, "status": { "type": "integer", "format": "int32", "default": 400 }, "instance": { "type": "string", "default": "/api/route" }, "traceId": { "type": "string", "default": "0HMPNHL0JHL76:00000001" }, "detail": { "type": "string", "nullable": true }, "errors": { "type": "array", "items": { "$ref": "#/components/schemas/ProblemDetails_Error" } } } }, "ProblemDetails_Error": { "type": "object", "additionalProperties": false, "required": ["name", "reason"], "properties": { "name": { "type": "string", "default": "Error or field name" }, "reason": { "type": "string", "default": "Error reason" }, "code": { "type": "string", "nullable": true }, "severity": { "type": "string", "nullable": true } } }, "UserOrderDto": { "type": "object", "additionalProperties": false, "required": [ "orderId", "buyerId", "status", "provider", "totalPrice", "currency", "orderDate", "isBuyer", "isRecipient", "isGiftSent", "isGiftReceived", "items" ], "properties": { "orderId": { "type": "string", "format": "guid" }, "buyerId": { "type": "string" }, "recipientId": { "type": "string", "nullable": true }, "recipientGuildId": { "type": "string", "nullable": true }, "status": { "type": "string" }, "provider": { "type": "string" }, "transactionId": { "type": "string", "nullable": true }, "basketIdent": { "type": "string", "nullable": true }, "recurringReference": { "type": "string", "nullable": true }, "providerStatus": { "type": "string", "nullable": true }, "purchaseMode": { "type": "string", "nullable": true }, "recipientResolutionStatus": { "type": "string", "nullable": true }, "totalPrice": { "type": "number", "format": "decimal" }, "currency": { "type": "string" }, "orderDate": { "type": "string", "format": "date-time" }, "completedAt": { "type": "string", "format": "date-time", "nullable": true }, "refundedAt": { "type": "string", "format": "date-time", "nullable": true }, "disputedAt": { "type": "string", "format": "date-time", "nullable": true }, "isBuyer": { "type": "boolean" }, "isRecipient": { "type": "boolean" }, "isGiftSent": { "type": "boolean" }, "isGiftReceived": { "type": "boolean" }, "recipientSnapshot": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexRecipientSnapshot" } ] }, "giftMetadata": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/GiftMetadata" } ] }, "tebex": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexUserOrderStateDto" } ] }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/UserOrderItemDto" } } } }, "GiftMetadata": { "type": "object", "additionalProperties": false, "properties": { "message": { "type": "string", "nullable": true }, "claimExpiresAt": { "type": "string", "format": "date-time", "nullable": true } } }, "TebexUserOrderStateDto": { "type": "object", "additionalProperties": false, "properties": { "basketIdent": { "type": "string", "nullable": true }, "basketUrl": { "type": "string", "nullable": true }, "checkoutLinks": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexUserCheckoutLinksDto" } ] }, "recurringReference": { "type": "string", "nullable": true }, "providerStatus": { "type": "string", "nullable": true }, "lastSyncedAt": { "type": "string", "format": "date-time", "nullable": true }, "lastWebhook": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexWebhookSummary" } ] }, "basket": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexUserBasketDto" } ] }, "expiresAt": { "type": "string", "format": "date-time", "nullable": true }, "priceDetails": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexPriceDetailsSnapshot" } ] }, "lastErrorCode": { "type": "string", "nullable": true }, "basketMismatch": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexBasketMismatchSnapshot" } ] }, "payment": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexAdminPaymentStateDto" } ] }, "recurring": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexAdminRecurringStateDto" } ] } } }, "TebexUserCheckoutLinksDto": { "type": "object", "additionalProperties": false, "properties": { "checkoutUrl": { "type": "string", "nullable": true }, "authUrl": { "type": "string", "nullable": true } } }, "TebexWebhookSummary": { "type": "object", "additionalProperties": false, "required": ["id", "type", "receivedAt"], "properties": { "id": { "type": "string" }, "type": { "type": "string" }, "receivedAt": { "type": "string", "format": "date-time" } } }, "TebexUserBasketDto": { "type": "object", "additionalProperties": false, "required": ["paymentStarted", "rows"], "properties": { "ident": { "type": "string", "nullable": true }, "creatorCode": { "type": "string", "nullable": true }, "country": { "type": "string", "nullable": true }, "paymentStarted": { "type": "boolean" }, "expiresAt": { "type": "string", "format": "date-time", "nullable": true }, "price": { "type": "number", "format": "decimal", "nullable": true }, "priceDetails": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexPriceDetailsSnapshot" } ] }, "rows": { "type": "array", "items": { "$ref": "#/components/schemas/TebexUserBasketRowDto" } } } }, "TebexPriceDetailsSnapshot": { "type": "object", "additionalProperties": false, "properties": { "subTotal": { "type": "number", "format": "decimal", "nullable": true }, "tax": { "type": "number", "format": "decimal", "nullable": true }, "total": { "type": "number", "format": "decimal", "nullable": true }, "fullPrice": { "type": "number", "format": "decimal", "nullable": true }, "currency": { "type": "string", "nullable": true } } }, "TebexUserBasketRowDto": { "type": "object", "additionalProperties": false, "required": ["quantity"], "properties": { "rowId": { "type": "integer", "format": "int32", "nullable": true }, "orderItemId": { "type": "string", "nullable": true }, "productId": { "type": "string", "nullable": true }, "type": { "type": "string", "nullable": true }, "quantity": { "type": "integer", "format": "int32" }, "unitPrice": { "type": "number", "format": "decimal", "nullable": true }, "totalPrice": { "type": "number", "format": "decimal", "nullable": true }, "name": { "type": "string", "nullable": true }, "description": { "type": "string", "nullable": true }, "imageUrl": { "type": "string", "nullable": true } } }, "TebexBasketMismatchSnapshot": { "type": "object", "additionalProperties": false, "required": ["expectedItems", "receivedItems"], "properties": { "reason": { "type": "string", "nullable": true }, "expectedItems": { "type": "array", "items": { "$ref": "#/components/schemas/TebexExpectedBasketItem" } }, "receivedItems": { "type": "array", "items": { "$ref": "#/components/schemas/TebexExpectedBasketItem" } }, "expectedAmount": { "type": "number", "format": "decimal", "nullable": true }, "receivedAmount": { "type": "number", "format": "decimal", "nullable": true }, "receivedBasketIdent": { "type": "string", "nullable": true } } }, "TebexExpectedBasketItem": { "type": "object", "additionalProperties": false, "required": ["orderItemId", "productId", "quantity"], "properties": { "orderItemId": { "type": "integer", "format": "uint64" }, "productId": { "type": "integer", "format": "uint64" }, "name": { "type": "string", "nullable": true }, "description": { "type": "string", "nullable": true }, "quantity": { "type": "integer", "format": "int32" }, "unitPrice": { "type": "number", "format": "decimal", "nullable": true }, "currency": { "type": "string", "nullable": true }, "billingType": { "type": "string", "nullable": true }, "billingPeriod": { "type": "string", "nullable": true }, "billingFrequency": { "type": "integer", "format": "int32", "nullable": true }, "imageUrl": { "type": "string", "nullable": true } } }, "TebexAdminPaymentStateDto": { "type": "object", "additionalProperties": false, "properties": { "transactionId": { "type": "string", "nullable": true }, "status": { "type": "string", "nullable": true }, "statusClass": { "type": "string", "nullable": true }, "paymentSequence": { "type": "string", "nullable": true }, "paymentMethod": { "type": "string", "nullable": true }, "refundable": { "type": "boolean", "nullable": true }, "declineReason": { "type": "string", "nullable": true }, "price": { "type": "number", "format": "decimal", "nullable": true }, "pricePaid": { "type": "number", "format": "decimal", "nullable": true }, "currency": { "type": "string", "nullable": true }, "createdAt": { "type": "string", "format": "date-time", "nullable": true }, "recurringReference": { "type": "string", "nullable": true } } }, "TebexAdminRecurringStateDto": { "type": "object", "additionalProperties": false, "required": ["paymentHistoryUrls"], "properties": { "reference": { "type": "string", "nullable": true }, "status": { "type": "string", "nullable": true }, "statusClass": { "type": "string", "nullable": true }, "isActive": { "type": "boolean", "nullable": true }, "createdAt": { "type": "string", "format": "date-time", "nullable": true }, "updatedAt": { "type": "string", "format": "date-time", "nullable": true }, "nextPaymentDate": { "type": "string", "format": "date-time", "nullable": true }, "pausedAt": { "type": "string", "format": "date-time", "nullable": true }, "pausedUntil": { "type": "string", "format": "date-time", "nullable": true }, "cancelledAt": { "type": "string", "format": "date-time", "nullable": true }, "cancellationRequestedAt": { "type": "string", "format": "date-time", "nullable": true }, "interval": { "type": "string", "nullable": true }, "amount": { "type": "number", "format": "decimal", "nullable": true }, "tax": { "type": "number", "format": "decimal", "nullable": true }, "cancelReason": { "type": "string", "nullable": true }, "initialPaymentUrl": { "type": "string", "nullable": true }, "paymentHistoryUrls": { "type": "array", "items": { "type": "string" } } } }, "UserOrderItemDto": { "type": "object", "additionalProperties": false, "required": ["orderItemId", "productId", "quantity", "unitPrice", "totalPrice"], "properties": { "orderItemId": { "type": "string" }, "productId": { "type": "string" }, "productName": { "type": "string", "nullable": true }, "quantity": { "type": "integer", "format": "int32" }, "unitPrice": { "type": "number", "format": "decimal" }, "totalPrice": { "type": "number", "format": "decimal" }, "tebexPackageId": { "type": "string", "nullable": true }, "tebexPackage": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexPackageSnapshot" } ] }, "tebexVariables": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexVariableData" } ] }, "gift": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/GiftItemStateDto" } ] } } }, "TebexPackageSnapshot": { "type": "object", "additionalProperties": false, "required": ["id", "name", "basePrice"], "properties": { "id": { "type": "integer", "format": "int32" }, "name": { "type": "string" }, "slug": { "type": "string", "nullable": true }, "description": { "type": "string", "nullable": true }, "type": { "type": "string", "nullable": true }, "basePrice": { "type": "number", "format": "decimal" }, "salesPrice": { "type": "number", "format": "decimal", "nullable": true }, "totalPrice": { "type": "number", "format": "decimal", "nullable": true }, "currency": { "type": "string", "nullable": true }, "category": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexPackageCategorySnapshot" } ] }, "image": { "type": "string", "nullable": true } } }, "TebexPackageCategorySnapshot": { "type": "object", "additionalProperties": false, "required": ["id", "name"], "properties": { "id": { "type": "integer", "format": "int32" }, "name": { "type": "string" } } }, "UserOrdersResponseDto": { "type": "object", "additionalProperties": false, "required": ["totalCount", "offset", "limit", "orders"], "properties": { "totalCount": { "type": "integer", "format": "int32" }, "offset": { "type": "integer", "format": "int32" }, "limit": { "type": "integer", "format": "int32" }, "orders": { "type": "array", "items": { "$ref": "#/components/schemas/UserOrderDto" } } } }, "GetUserOrdersRequest": { "type": "object", "additionalProperties": false }, "ReconciliationResultDto": { "type": "object", "description": "Result from a reconciliation attempt.", "additionalProperties": false, "required": ["ordersProcessed", "ordersResolved", "accessGranted", "errors"], "properties": { "ordersProcessed": { "type": "integer", "format": "int32" }, "ordersResolved": { "type": "integer", "format": "int32" }, "accessGranted": { "type": "integer", "format": "int32" }, "errors": { "type": "array", "items": { "type": "string" } } } }, "SearchRequest": { "type": "object", "additionalProperties": false }, "AccountSearchResultDto": { "type": "object", "additionalProperties": false, "required": ["ign", "uuid"], "properties": { "ign": { "type": "string" }, "uuid": { "type": "string" }, "discordId": { "type": "string", "nullable": true } } }, "UpdateUserSettingsDto": { "type": "object", "additionalProperties": false, "properties": { "prefix": { "type": "string", "description": "Custom name prefix", "nullable": true }, "suffix": { "type": "string", "description": "Custom name suffix", "nullable": true }, "features": { "description": "Configurated features for the user", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ConfiguredProductFeaturesDto" } ] }, "weightStyleId": { "type": "integer", "description": "Selected weight style for the user", "format": "int32", "nullable": true }, "leaderboardStyleId": { "type": "integer", "description": "Selected leaderboard style for the user", "format": "int32", "nullable": true }, "nameStyleId": { "type": "integer", "description": "Selected name style for the user", "format": "int32", "nullable": true } } }, "EditUserBadgeDto": { "type": "object", "additionalProperties": false, "required": ["badgeId"], "properties": { "badgeId": { "type": "integer", "format": "int32" }, "visible": { "type": "boolean", "nullable": true }, "order": { "type": "integer", "format": "int32", "nullable": true } } }, "UserRoleRequest": { "type": "object", "additionalProperties": false }, "AccountWithPermsDto": { "type": "object", "additionalProperties": false, "required": ["id", "displayName", "username", "roles"], "properties": { "id": { "type": "string" }, "displayName": { "type": "string" }, "username": { "type": "string" }, "roles": { "type": "array", "items": { "type": "string" } }, "discriminator": { "type": "string", "nullable": true }, "avatar": { "type": "string", "nullable": true } } }, "EventIdRequest": { "type": "object", "additionalProperties": false }, "EventDetailsDto": { "type": "object", "additionalProperties": false, "required": ["id", "name", "type", "dynamicStartTime", "active", "approved", "maxTeams", "maxTeamMembers"], "properties": { "id": { "type": "string", "description": "Event id as a string" }, "name": { "type": "string", "description": "Name of the event" }, "type": { "description": "Type of the event", "oneOf": [ { "$ref": "#/components/schemas/EventType" } ] }, "mode": { "type": "string", "description": "Team mode of the event", "nullable": true }, "description": { "type": "string", "description": "Event description", "nullable": true }, "rules": { "type": "string", "description": "Event rules", "nullable": true }, "prizeInfo": { "type": "string", "description": "Event prize information", "nullable": true }, "banner": { "description": "Image URL for the event banner", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ImageAttachmentDto" } ] }, "startTime": { "type": "string", "description": "Start time of the event as a string in Unix seconds", "nullable": true }, "joinUntilTime": { "type": "string", "description": "Join time of the event as a string in Unix seconds", "nullable": true }, "endTime": { "type": "string", "description": "End time of the event as a string in Unix seconds", "nullable": true }, "dynamicStartTime": { "type": "boolean", "description": "Currently unused" }, "active": { "type": "boolean", "description": "Event status" }, "approved": { "type": "boolean", "description": "Event approval status" }, "maxTeams": { "type": "integer", "description": "Max amount of teams allowed in the event, 0 if solo event, -1 if unlimited", "format": "int32" }, "maxTeamMembers": { "type": "integer", "description": "Max amount of members allowed in a team, 0 if solo event, -1 if unlimited", "format": "int32" }, "requiredRole": { "type": "string", "description": "Discord role id required to participate in the event", "nullable": true }, "blockedRole": { "type": "string", "description": "Discord role id blocked from participating in the event", "nullable": true }, "guildId": { "type": "string", "description": "Discord server id as a string", "nullable": true }, "data": { "description": "Data specific to the event", "nullable": true } } }, "EventType": { "type": "string", "description": "", "enum": ["none", "farmingWeight", "collection", "experience", "medals", "pests"] }, "SetEventApprovalRequest": { "type": "object", "additionalProperties": false }, "AdminLinkAccountRequest": { "type": "object", "additionalProperties": false, "required": ["discordId", "player"], "properties": { "discordId": { "type": "string" }, "player": { "type": "string" } } }, "GuildIdRequest": { "type": "object", "additionalProperties": false }, "HypixelGuildRefreshRequest": { "type": "object", "additionalProperties": false }, "AdminUnlinkAccountRequest": { "type": "object", "additionalProperties": false, "required": ["discordId", "player"], "properties": { "discordId": { "type": "string" }, "player": { "type": "string" } } }, "AdminOrderDetailDto": { "type": "object", "description": "Admin-facing detailed order view.", "additionalProperties": false, "required": ["orderId", "buyerId", "status", "provider", "totalPrice", "currency", "orderDate", "items"], "properties": { "orderId": { "type": "string", "format": "guid" }, "buyerId": { "type": "string" }, "recipientId": { "type": "string", "nullable": true }, "recipientGuildId": { "type": "string", "nullable": true }, "status": { "type": "string" }, "provider": { "type": "string" }, "transactionId": { "type": "string", "nullable": true }, "basketIdent": { "type": "string", "nullable": true }, "recurringReference": { "type": "string", "nullable": true }, "providerStatus": { "type": "string", "nullable": true }, "purchaseMode": { "type": "string", "nullable": true }, "recipientResolutionStatus": { "type": "string", "nullable": true }, "totalPrice": { "type": "number", "format": "decimal" }, "currency": { "type": "string" }, "orderDate": { "type": "string", "format": "date-time" }, "completedAt": { "type": "string", "format": "date-time", "nullable": true }, "refundedAt": { "type": "string", "format": "date-time", "nullable": true }, "disputedAt": { "type": "string", "format": "date-time", "nullable": true }, "recipientSnapshot": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexRecipientSnapshot" } ] }, "giftMetadata": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/GiftMetadata" } ] }, "tebex": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexAdminOrderDetailDto" } ] }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/GiftItemDto" } } } }, "TebexAdminOrderDetailDto": { "type": "object", "additionalProperties": false, "properties": { "basketIdent": { "type": "string", "nullable": true }, "basketUrl": { "type": "string", "nullable": true }, "recurringReference": { "type": "string", "nullable": true }, "providerStatus": { "type": "string", "nullable": true }, "lastSyncedAt": { "type": "string", "format": "date-time", "nullable": true }, "expectedBasket": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexExpectedBasketSnapshot" } ] }, "orderSnapshot": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexOrderSnapshot" } ] }, "basketMismatch": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexBasketMismatchSnapshot" } ] }, "payment": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexAdminPaymentStateDto" } ] }, "recurring": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexAdminRecurringStateDto" } ] } } }, "TebexExpectedBasketSnapshot": { "type": "object", "additionalProperties": false, "required": ["orderId", "buyerId", "purchaseMode", "items"], "properties": { "orderId": { "type": "string", "format": "guid" }, "buyerId": { "type": "integer", "format": "uint64" }, "purchaseMode": { "$ref": "#/components/schemas/PurchaseMode" }, "creatorCode": { "type": "string", "nullable": true }, "country": { "type": "string", "nullable": true }, "fingerprint": { "type": "string", "nullable": true }, "sale": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexSaleSnapshot" } ] }, "recipient": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexRecipientSnapshot" } ] }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/TebexExpectedBasketItem" } } } }, "PurchaseMode": { "type": "integer", "description": "", "x-enumNames": ["Self", "Gift"], "enum": [1, 2] }, "TebexSaleSnapshot": { "type": "object", "additionalProperties": false, "properties": { "name": { "type": "string", "nullable": true }, "discountType": { "type": "string", "nullable": true }, "amount": { "type": "number", "format": "decimal", "nullable": true } } }, "TebexOrderSnapshot": { "type": "object", "additionalProperties": false, "properties": { "links": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexCheckoutLinks" } ] }, "lastWebhook": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexWebhookSummary" } ] }, "basket": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexBasketSnapshot" } ] }, "basketJson": { "type": "string", "nullable": true }, "paymentJson": { "type": "string", "nullable": true }, "recurringJson": { "type": "string", "nullable": true }, "creatorCodeJson": { "type": "string", "nullable": true }, "lastWebhookPayloadJson": { "type": "string", "nullable": true }, "currency": { "type": "string", "nullable": true }, "totalPrice": { "type": "number", "format": "decimal", "nullable": true }, "expiresAt": { "type": "string", "format": "date-time", "nullable": true }, "priceDetails": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexPriceDetailsSnapshot" } ] }, "lastErrorCode": { "type": "string", "nullable": true } } }, "TebexCheckoutLinks": { "type": "object", "additionalProperties": false, "properties": { "checkoutUrl": { "type": "string", "nullable": true }, "authUrl": { "type": "string", "nullable": true } } }, "TebexBasketSnapshot": { "type": "object", "additionalProperties": false, "required": ["paymentStarted", "rows"], "properties": { "ident": { "type": "string", "nullable": true }, "checkoutUrl": { "type": "string", "nullable": true }, "paymentUrl": { "type": "string", "nullable": true }, "completeUrl": { "type": "string", "nullable": true }, "cancelUrl": { "type": "string", "nullable": true }, "creatorCode": { "type": "string", "nullable": true }, "country": { "type": "string", "nullable": true }, "fingerprint": { "type": "string", "nullable": true }, "paymentStarted": { "type": "boolean" }, "expiresAt": { "type": "string", "format": "date-time", "nullable": true }, "price": { "type": "number", "format": "decimal", "nullable": true }, "priceDetails": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexPriceDetailsSnapshot" } ] }, "rows": { "type": "array", "items": { "$ref": "#/components/schemas/TebexBasketRowSnapshot" } } } }, "TebexBasketRowSnapshot": { "type": "object", "additionalProperties": false, "required": ["quantity"], "properties": { "rowId": { "type": "integer", "format": "int32", "nullable": true }, "orderItemId": { "type": "integer", "format": "uint64", "nullable": true }, "productId": { "type": "integer", "format": "uint64", "nullable": true }, "type": { "type": "string", "nullable": true }, "quantity": { "type": "integer", "format": "int32" }, "unitPrice": { "type": "number", "format": "decimal", "nullable": true }, "totalPrice": { "type": "number", "format": "decimal", "nullable": true }, "name": { "type": "string", "nullable": true }, "description": { "type": "string", "nullable": true }, "imageUrl": { "type": "string", "nullable": true } } }, "ProviderEventDto": { "type": "object", "description": "Provider event from the append-only event log.", "additionalProperties": false, "required": ["id", "provider", "source", "occurredAt"], "properties": { "id": { "type": "string", "format": "guid" }, "provider": { "type": "string" }, "source": { "type": "string" }, "eventType": { "type": "string", "nullable": true }, "externalEventId": { "type": "string", "nullable": true }, "occurredAt": { "type": "string", "format": "date-time" }, "payloadJson": { "type": "string", "nullable": true } } }, "AdminOrdersResponseDto": { "type": "object", "additionalProperties": false, "required": ["totalCount", "orders"], "properties": { "totalCount": { "type": "integer", "format": "int32" }, "orders": { "type": "array", "items": { "$ref": "#/components/schemas/AdminOrderSummaryDto" } } } }, "AdminOrderSummaryDto": { "type": "object", "additionalProperties": false, "required": ["orderId", "buyerId", "status", "provider", "totalPrice", "currency", "orderDate", "itemCount"], "properties": { "orderId": { "type": "string", "format": "guid" }, "buyerId": { "type": "string" }, "recipientId": { "type": "string", "nullable": true }, "recipientGuildId": { "type": "string", "nullable": true }, "status": { "type": "string" }, "provider": { "type": "string" }, "transactionId": { "type": "string", "nullable": true }, "basketIdent": { "type": "string", "nullable": true }, "recurringReference": { "type": "string", "nullable": true }, "providerStatus": { "type": "string", "nullable": true }, "purchaseMode": { "type": "string", "nullable": true }, "recipientResolutionStatus": { "type": "string", "nullable": true }, "totalPrice": { "type": "number", "format": "decimal" }, "currency": { "type": "string" }, "orderDate": { "type": "string", "format": "date-time" }, "completedAt": { "type": "string", "format": "date-time", "nullable": true }, "refundedAt": { "type": "string", "format": "date-time", "nullable": true }, "disputedAt": { "type": "string", "format": "date-time", "nullable": true }, "itemCount": { "type": "integer", "format": "int32" }, "payment": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexAdminPaymentStateDto" } ] }, "recurring": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexAdminRecurringStateDto" } ] } } }, "GetAdminOrdersRequest": { "type": "object", "additionalProperties": false }, "PauseRecurringPaymentRequest": { "type": "object", "additionalProperties": false, "required": ["pausedUntil"], "properties": { "pausedUntil": { "type": "string", "format": "date-time" } } }, "ReplayWebhookResponse": { "type": "object", "additionalProperties": false, "required": ["webhookId", "succeeded"], "properties": { "webhookId": { "type": "string" }, "orderId": { "type": "string", "format": "guid", "nullable": true }, "succeeded": { "type": "boolean" }, "failureReason": { "type": "string", "nullable": true }, "processedAt": { "type": "string", "format": "date-time", "nullable": true } } }, "ResolveRecipientRequest": { "type": "object", "description": "Request to manually resolve a gift recipient.", "additionalProperties": false, "required": ["recipientType"], "properties": { "recipientType": { "type": "string" }, "minecraftUuid": { "type": "string", "nullable": true }, "guildId": { "type": "string", "nullable": true } } }, "CreateAnnouncementDto": { "type": "object", "additionalProperties": false, "required": ["title", "content", "type", "createdAt", "expiresAt"], "properties": { "title": { "type": "string", "description": "Announcement title" }, "content": { "type": "string", "description": "Announcement content" }, "type": { "description": "Type of the announcement", "oneOf": [ { "$ref": "#/components/schemas/AnnouncementType" } ] }, "targetLabel": { "type": "string", "description": "Label for the target of the announcement (e.g. \"Read more\", \"View article\")", "nullable": true }, "targetUrl": { "type": "string", "description": "Url to read more about the announcement", "nullable": true }, "targetStartsAt": { "type": "string", "description": "Optional time stamp for when the topic of the announcement starts", "format": "date-time", "nullable": true }, "targetEndsAt": { "type": "string", "description": "Optional time stamp for when the topic of the announcement ends", "format": "date-time", "nullable": true }, "createdAt": { "type": "string", "description": "Announcement creation date", "format": "date-time" }, "expiresAt": { "type": "string", "description": "Announcement expiration date (will no longer be shown after this date)", "format": "date-time" } } }, "AnnouncementType": { "type": "string", "description": "", "enum": ["other", "update", "article", "news", "event", "maintenance", "shop"] }, "DismissAnnouncementDto": { "type": "object", "additionalProperties": false }, "AnnouncementDto": { "type": "object", "additionalProperties": false, "required": ["title", "content", "type", "createdAt", "expiresAt", "id"], "properties": { "title": { "type": "string", "description": "Announcement title" }, "content": { "type": "string", "description": "Announcement content" }, "type": { "description": "Type of the announcement", "oneOf": [ { "$ref": "#/components/schemas/AnnouncementType" } ] }, "targetLabel": { "type": "string", "description": "Label for the target of the announcement (e.g. \"Read more\", \"View article\")", "nullable": true }, "targetUrl": { "type": "string", "description": "Url to read more about the announcement", "nullable": true }, "targetStartsAt": { "type": "string", "description": "Optional time stamp for when the topic of the announcement starts", "format": "date-time", "nullable": true }, "targetEndsAt": { "type": "string", "description": "Optional time stamp for when the topic of the announcement ends", "format": "date-time", "nullable": true }, "createdAt": { "type": "string", "description": "Announcement creation date", "format": "date-time" }, "expiresAt": { "type": "string", "description": "Announcement expiration date (will no longer be shown after this date)", "format": "date-time" }, "id": { "type": "string", "description": "Announcement id" } } }, "AuditLogFiltersResponse": { "type": "object", "additionalProperties": false, "required": ["actions", "targetTypes"], "properties": { "actions": { "type": "array", "items": { "type": "string" } }, "targetTypes": { "type": "array", "items": { "type": "string" } } } }, "GetAuditLogsResponse": { "type": "object", "additionalProperties": false, "required": ["logs", "totalCount"], "properties": { "logs": { "type": "array", "items": { "$ref": "#/components/schemas/AuditLogDto" } }, "totalCount": { "type": "integer", "format": "int32" } } }, "AuditLogDto": { "type": "object", "additionalProperties": false, "required": ["id", "adminUserId", "adminUserName", "action", "targetType", "createdAt"], "properties": { "id": { "type": "integer", "format": "int64" }, "adminUserId": { "type": "string" }, "adminUserName": { "type": "string" }, "action": { "type": "string" }, "targetType": { "type": "string" }, "targetId": { "type": "string", "nullable": true }, "details": { "type": "string", "nullable": true }, "createdAt": { "type": "string", "format": "date-time" }, "data": { "type": "object", "nullable": true, "additionalProperties": {} } } }, "GetAuditLogsRequest": { "type": "object", "additionalProperties": false }, "ConfirmationDto": { "type": "object", "additionalProperties": false, "required": ["id", "isActive", "createdAt"], "properties": { "id": { "type": "integer", "format": "int32" }, "title": { "type": "string", "nullable": true }, "content": { "type": "string", "nullable": true }, "isActive": { "type": "boolean" }, "createdAt": { "type": "string", "format": "date-time" } } }, "AcceptConfirmationRequest": { "type": "object", "additionalProperties": false }, "GetConfirmationDto": { "type": "object", "additionalProperties": false }, "AuthSessionDto": { "type": "object", "additionalProperties": false, "required": ["id", "username", "avatar", "ign", "uuid", "roles", "flags"], "properties": { "id": { "type": "string", "description": "Discord user ID" }, "username": { "type": "string", "description": "Discord username" }, "avatar": { "type": "string", "description": "Discord avatar hash" }, "ign": { "type": "string", "description": "Primary Minecraft IGN" }, "fIgn": { "type": "string", "description": "Formatted Primary Minecraft IGN", "nullable": true }, "uuid": { "type": "string", "description": "Primary Minecraft UUID" }, "roles": { "type": "array", "description": "List of user roles", "items": { "type": "string" } }, "flags": { "type": "array", "description": "List of account flags", "items": { "type": "string" } }, "pending_confirmation": { "description": "The pending confirmation for the user, if any", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ConfirmationDto" } ] } } }, "AuthResponseDto": { "type": "object", "additionalProperties": false, "required": ["access_token", "refresh_token", "first_login"], "properties": { "access_token": { "type": "string", "description": "Access token for the user" }, "expires_in": { "type": "string", "description": "Expiry date of the access token in Unix timestamp seconds", "nullable": true }, "refresh_token": { "type": "string", "description": "Refresh token for the user" }, "pending_confirmation": { "description": "The pending confirmation for the user, if any", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ConfirmationDto" } ] }, "first_login": { "type": "boolean", "description": "If this is the user's first login" } } }, "DiscordLoginDto": { "type": "object", "additionalProperties": false, "required": ["code", "redirect_uri"], "properties": { "code": { "type": "string", "description": "Discord login code from OAuth2" }, "redirect_uri": { "type": "string", "description": "Redirect URI from OAuth2" } } }, "AuthRefreshDto": { "type": "object", "additionalProperties": false, "required": ["user_id", "refresh_token"], "properties": { "user_id": { "type": "string", "description": "User ID" }, "refresh_token": { "type": "string", "description": "Refresh token for the user" } } }, "PlayerBadgeRequest": { "type": "object", "additionalProperties": false }, "BadgeRequest": { "type": "object", "additionalProperties": false }, "CreateBadgeRequest_CreateBadge": { "type": "object", "additionalProperties": false, "required": ["name", "description", "requirements", "tieToAccount"], "properties": { "name": { "type": "string", "maxLength": 50, "minLength": 0 }, "description": { "type": "string", "maxLength": 1024, "minLength": 0 }, "requirements": { "type": "string", "maxLength": 512, "minLength": 0 }, "tieToAccount": { "type": "boolean" }, "image": { "type": "string", "format": "binary", "nullable": true } } }, "BadgeDto": { "type": "object", "additionalProperties": false, "required": ["id", "name", "description", "requirements"], "properties": { "id": { "type": "integer", "format": "int32" }, "image": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ImageAttachmentDto" } ] }, "name": { "type": "string" }, "description": { "type": "string" }, "requirements": { "type": "string" } } }, "DiscordIdPlayerRequest": { "type": "object", "additionalProperties": false }, "UpdateBadgeRequest_UpdateBadge": { "type": "object", "additionalProperties": false, "properties": { "name": { "type": "string", "maxLength": 50, "minLength": 0, "nullable": true }, "description": { "type": "string", "maxLength": 1024, "minLength": 0, "nullable": true }, "requirements": { "type": "string", "maxLength": 512, "minLength": 0, "nullable": true }, "image": { "type": "string", "format": "binary", "nullable": true } } }, "BotGrantBadgeRequest": { "type": "object", "additionalProperties": false }, "BotRemoveBadgeRequest": { "type": "object", "additionalProperties": false }, "DisableContestPingsRequest": { "type": "object", "additionalProperties": false }, "ContestPingsFeatureDto": { "type": "object", "additionalProperties": false, "required": ["enabled", "delaySeconds"], "properties": { "enabled": { "type": "boolean" }, "guildId": { "type": "string", "nullable": true }, "channelId": { "type": "string", "nullable": true }, "alwaysPingRole": { "type": "string", "nullable": true }, "cropPingRoles": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/CropSettingsOfString" } ] }, "delaySeconds": { "type": "integer", "format": "int32" }, "disabledReason": { "type": "string", "nullable": true } } }, "CropSettingsOfString": { "type": "object", "additionalProperties": false, "properties": { "cactus": { "type": "string", "nullable": true }, "carrot": { "type": "string", "nullable": true }, "potato": { "type": "string", "nullable": true }, "wheat": { "type": "string", "nullable": true }, "melon": { "type": "string", "nullable": true }, "pumpkin": { "type": "string", "nullable": true }, "mushroom": { "type": "string", "nullable": true }, "cocoaBeans": { "type": "string", "nullable": true }, "sugarCane": { "type": "string", "nullable": true }, "netherWart": { "type": "string", "nullable": true }, "sunflower": { "type": "string", "nullable": true }, "moonflower": { "type": "string", "nullable": true }, "wildRose": { "type": "string", "nullable": true } } }, "PrivateGuildDto": { "type": "object", "additionalProperties": false, "required": [ "id", "name", "public", "features", "botPermissionsNew", "discordFeatures", "memberCount", "channels", "roles" ], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "public": { "type": "boolean" }, "features": { "$ref": "#/components/schemas/GuildFeatures" }, "icon": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ImageAttachmentDto" } ] }, "banner": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ImageAttachmentDto" } ] }, "inviteCode": { "type": "string", "nullable": true }, "description": { "type": "string", "nullable": true }, "adminRole": { "type": "string", "nullable": true }, "botPermissions": { "type": "string", "nullable": true }, "botPermissionsNew": { "type": "string" }, "discordFeatures": { "type": "array", "items": { "type": "string" } }, "memberCount": { "type": "integer", "format": "int32" }, "channels": { "type": "array", "items": { "$ref": "#/components/schemas/GuildChannelDto" } }, "roles": { "type": "array", "items": { "$ref": "#/components/schemas/GuildRoleDto" } } } }, "GuildFeatures": { "type": "object", "additionalProperties": false, "required": [ "locked", "jacobLeaderboardEnabled", "verifiedRoleEnabled", "eventsEnabled", "contestPingsEnabled" ], "properties": { "locked": { "type": "boolean" }, "jacobLeaderboardEnabled": { "type": "boolean" }, "jacobLeaderboard": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/GuildJacobLeaderboardFeature" } ] }, "verifiedRoleEnabled": { "type": "boolean" }, "verifiedRole": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/VerifiedRoleFeature" } ] }, "eventsEnabled": { "type": "boolean" }, "eventSettings": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/GuildEventSettings" } ] }, "contestPingsEnabled": { "type": "boolean" }, "contestPings": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ContestPingsFeature" } ] } } }, "GuildJacobLeaderboardFeature": { "type": "object", "additionalProperties": false, "required": [ "maxLeaderboards", "blockedRoles", "blockedUsers", "blockedPlayerUuids", "requiredRoles", "excludedParticipations", "excludedTimespans", "leaderboards" ], "properties": { "maxLeaderboards": { "type": "integer", "format": "int32" }, "blockedRoles": { "type": "array", "items": { "$ref": "#/components/schemas/DiscordRole" } }, "blockedUsers": { "type": "array", "items": { "type": "integer", "format": "uint64" } }, "blockedPlayerUuids": { "type": "array", "items": { "type": "string" } }, "requiredRoles": { "type": "array", "items": { "$ref": "#/components/schemas/DiscordRole" } }, "excludedParticipations": { "type": "array", "items": { "type": "string" } }, "excludedTimespans": { "type": "array", "items": { "$ref": "#/components/schemas/ExcludedTimespan" } }, "leaderboards": { "type": "array", "items": { "$ref": "#/components/schemas/GuildJacobLeaderboard" } } } }, "DiscordRole": { "type": "object", "additionalProperties": false, "required": ["id", "name", "position", "permissions"], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "position": { "type": "integer", "format": "int32" }, "permissions": { "type": "integer", "format": "uint64" } } }, "ExcludedTimespan": { "type": "object", "additionalProperties": false, "required": ["start", "end"], "properties": { "start": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" }, "reason": { "type": "string", "nullable": true } } }, "GuildJacobLeaderboard": { "type": "object", "additionalProperties": false, "required": ["id", "startCutoff", "endCutoff", "active", "pingForSmallImprovements", "crops"], "properties": { "id": { "type": "string" }, "channelId": { "type": "string", "nullable": true }, "startCutoff": { "type": "integer", "format": "int64" }, "endCutoff": { "type": "integer", "format": "int64" }, "title": { "type": "string", "maxLength": 64, "nullable": true }, "active": { "type": "boolean" }, "requiredRole": { "type": "string", "nullable": true }, "blockedRole": { "type": "string", "nullable": true }, "updateChannelId": { "type": "string", "nullable": true }, "updateRoleId": { "type": "string", "nullable": true }, "pingForSmallImprovements": { "type": "boolean" }, "crops": { "$ref": "#/components/schemas/CropRecords" } } }, "CropRecords": { "type": "object", "additionalProperties": false, "required": [ "cactus", "carrot", "potato", "wheat", "melon", "pumpkin", "mushroom", "cocoaBeans", "sugarCane", "netherWart", "sunflower", "moonflower", "wildRose" ], "properties": { "cactus": { "type": "array", "items": { "$ref": "#/components/schemas/GuildJacobLeaderboardEntry" } }, "carrot": { "type": "array", "items": { "$ref": "#/components/schemas/GuildJacobLeaderboardEntry" } }, "potato": { "type": "array", "items": { "$ref": "#/components/schemas/GuildJacobLeaderboardEntry" } }, "wheat": { "type": "array", "items": { "$ref": "#/components/schemas/GuildJacobLeaderboardEntry" } }, "melon": { "type": "array", "items": { "$ref": "#/components/schemas/GuildJacobLeaderboardEntry" } }, "pumpkin": { "type": "array", "items": { "$ref": "#/components/schemas/GuildJacobLeaderboardEntry" } }, "mushroom": { "type": "array", "items": { "$ref": "#/components/schemas/GuildJacobLeaderboardEntry" } }, "cocoaBeans": { "type": "array", "items": { "$ref": "#/components/schemas/GuildJacobLeaderboardEntry" } }, "sugarCane": { "type": "array", "items": { "$ref": "#/components/schemas/GuildJacobLeaderboardEntry" } }, "netherWart": { "type": "array", "items": { "$ref": "#/components/schemas/GuildJacobLeaderboardEntry" } }, "sunflower": { "type": "array", "items": { "$ref": "#/components/schemas/GuildJacobLeaderboardEntry" } }, "moonflower": { "type": "array", "items": { "$ref": "#/components/schemas/GuildJacobLeaderboardEntry" } }, "wildRose": { "type": "array", "items": { "$ref": "#/components/schemas/GuildJacobLeaderboardEntry" } } } }, "GuildJacobLeaderboardEntry": { "type": "object", "additionalProperties": false, "required": ["uuid", "ign", "discordId", "record"], "properties": { "uuid": { "type": "string" }, "ign": { "type": "string" }, "discordId": { "type": "string" }, "record": { "$ref": "#/components/schemas/ContestParticipationDto" } } }, "ContestParticipationDto": { "type": "object", "additionalProperties": false, "required": ["crop", "timestamp", "collected", "position", "participants"], "properties": { "crop": { "type": "string" }, "timestamp": { "type": "integer", "description": "Timestamp of the contest in seconds since unix epoch.", "format": "int64" }, "collected": { "type": "integer", "format": "int32" }, "position": { "type": "integer", "format": "int32" }, "participants": { "type": "integer", "format": "int32" }, "medal": { "type": "string", "nullable": true } } }, "VerifiedRoleFeature": { "type": "object", "additionalProperties": false, "required": ["enabled", "autoRoles"], "properties": { "enabled": { "type": "boolean" }, "autoRoles": { "type": "array", "items": { "$ref": "#/components/schemas/AutoRoles" } } } }, "AutoRoles": { "type": "object", "additionalProperties": false, "required": ["requiredWeight"], "properties": { "roleId": { "type": "string", "nullable": true }, "requiredWeight": { "type": "integer", "format": "int32" } } }, "GuildEventSettings": { "type": "object", "additionalProperties": false, "required": ["maxMonthlyEvents", "publicEventsEnabled", "createdEvents"], "properties": { "maxMonthlyEvents": { "type": "integer", "format": "int32" }, "publicEventsEnabled": { "type": "boolean" }, "createdEvents": { "type": "array", "items": { "$ref": "#/components/schemas/EventCreatedDto" } } } }, "EventCreatedDto": { "type": "object", "additionalProperties": false, "required": ["id", "createdAt"], "properties": { "id": { "type": "string" }, "createdAt": { "type": "string", "format": "date-time" } } }, "ContestPingsFeature": { "type": "object", "additionalProperties": false, "required": ["enabled", "delaySeconds"], "properties": { "enabled": { "type": "boolean" }, "channelId": { "type": "string", "nullable": true }, "alwaysPingRole": { "type": "string", "nullable": true }, "cropPingRoles": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/CropSettingsOfString" } ] }, "delaySeconds": { "type": "integer", "format": "int32" }, "disabledReason": { "type": "string", "nullable": true } } }, "GuildChannelDto": { "type": "object", "additionalProperties": false, "required": ["id", "name", "type", "position"], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "type": { "type": "integer", "format": "int32" }, "position": { "type": "integer", "format": "int32" } } }, "GuildRoleDto": { "type": "object", "additionalProperties": false, "required": ["id", "name", "position"], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "position": { "type": "integer", "format": "int32" } } }, "IncomingAccountDto": { "type": "object", "additionalProperties": false, "required": ["id", "username"], "properties": { "id": { "type": "integer", "format": "uint64" }, "username": { "type": "string" }, "displayName": { "type": "string", "nullable": true }, "discriminator": { "type": "string", "nullable": true }, "avatar": { "type": "string", "nullable": true }, "locale": { "type": "string", "nullable": true }, "banner": { "type": "string", "nullable": true } } }, "IncomingGuildDto": { "type": "object", "additionalProperties": false, "required": ["name"], "properties": { "id": { "type": "string", "nullable": true }, "name": { "type": "string" }, "icon": { "type": "string", "nullable": true }, "banner": { "type": "string", "nullable": true }, "permissions": { "type": "string", "nullable": true }, "botPermissions": { "type": "string", "nullable": true }, "features": { "type": "array", "nullable": true, "items": { "type": "string" } }, "channels": { "type": "array", "nullable": true, "items": { "$ref": "#/components/schemas/IncomingGuildChannelDto" } }, "roles": { "type": "array", "nullable": true, "items": { "$ref": "#/components/schemas/IncomingGuildRoleDto" } } } }, "IncomingGuildChannelDto": { "type": "object", "additionalProperties": false, "required": ["id", "name", "type", "position"], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "type": { "type": "integer", "format": "int32" }, "position": { "type": "integer", "format": "int32" }, "permissions": { "type": "string", "nullable": true } } }, "IncomingGuildRoleDto": { "type": "object", "additionalProperties": false, "required": ["id", "name", "position"], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "position": { "type": "integer", "format": "int32" } } }, "CreateConfirmationDto": { "type": "object", "additionalProperties": false, "required": ["title", "content", "isActive"], "properties": { "title": { "type": "string" }, "content": { "type": "string" }, "isActive": { "type": "boolean" } } }, "UpdateJacobFeatureRequest_UpdateJacobFeature": { "type": "object", "additionalProperties": false, "required": [ "blockedRoles", "blockedUsers", "requiredRoles", "excludedParticipations", "excludedTimespans", "leaderboards" ], "properties": { "blockedRoles": { "type": "array", "description": "Blocked roles from participating in the guild's Jacob Leaderboards", "items": { "$ref": "#/components/schemas/DiscordRole" } }, "blockedUsers": { "type": "array", "description": "Blocked users from participating in the guild's Jacob Leaderboards", "items": { "type": "integer", "format": "uint64" } }, "requiredRoles": { "type": "array", "description": "Required roles to participate in the guild's Jacob Leaderboards", "items": { "$ref": "#/components/schemas/DiscordRole" } }, "excludedParticipations": { "type": "array", "description": "Excluded participations from the guild's Jacob Leaderboards", "items": { "type": "string" } }, "excludedTimespans": { "type": "array", "description": "Excluded timespans from the guild's Jacob Leaderboards", "items": { "$ref": "#/components/schemas/ExcludedTimespan" } }, "leaderboards": { "type": "array", "description": "Leaderboards for the guild's Jacob Leaderboards", "items": { "$ref": "#/components/schemas/GuildJacobLeaderboard" } } } }, "DeleteConfirmationDto": { "type": "object", "additionalProperties": false }, "UpdateConfirmationRequest": { "type": "object", "additionalProperties": false, "required": ["isActive"], "properties": { "title": { "type": "string", "nullable": true }, "content": { "type": "string", "nullable": true }, "isActive": { "type": "boolean" } } }, "JacobContestWithParticipationsDto": { "type": "object", "additionalProperties": false, "required": ["crop", "timestamp", "participants", "brackets", "participations"], "properties": { "crop": { "type": "string" }, "timestamp": { "type": "integer", "format": "int64" }, "participants": { "type": "integer", "format": "int32" }, "brackets": { "$ref": "#/components/schemas/ContestBracketsDto" }, "participations": { "type": "array", "items": { "$ref": "#/components/schemas/StrippedContestParticipationDto" } } } }, "ContestBracketsDto": { "type": "object", "additionalProperties": false, "required": ["bronze", "silver", "gold", "platinum", "diamond"], "properties": { "bronze": { "type": "integer", "format": "int32" }, "silver": { "type": "integer", "format": "int32" }, "gold": { "type": "integer", "format": "int32" }, "platinum": { "type": "integer", "format": "int32" }, "diamond": { "type": "integer", "format": "int32" } } }, "StrippedContestParticipationDto": { "type": "object", "additionalProperties": false, "required": ["collected", "position", "removed", "playerUuid", "playerName", "profileUuid"], "properties": { "collected": { "type": "integer", "format": "int32" }, "position": { "type": "integer", "format": "int32" }, "medal": { "type": "string", "nullable": true }, "removed": { "type": "boolean" }, "playerUuid": { "type": "string" }, "playerName": { "type": "string" }, "profileUuid": { "type": "string" } } }, "GetContestFromKeyRequest": { "type": "object", "additionalProperties": false }, "GetContestsAtTimestampRequest": { "type": "object", "additionalProperties": false }, "SkyBlockDayRequest": { "type": "object", "additionalProperties": false }, "JacobContestDto": { "type": "object", "additionalProperties": false, "required": ["crop", "timestamp", "participants", "brackets"], "properties": { "crop": { "type": "string" }, "timestamp": { "type": "integer", "format": "int64" }, "participants": { "type": "integer", "format": "int32" }, "brackets": { "$ref": "#/components/schemas/ContestBracketsDto" } } }, "SkyBlockMonthRequest": { "type": "object", "additionalProperties": false }, "YearlyContestsDto": { "type": "object", "additionalProperties": false, "required": ["year", "count", "complete", "contests"], "properties": { "year": { "type": "integer", "format": "int32" }, "count": { "type": "integer", "format": "int32" }, "complete": { "type": "boolean" }, "contests": { "type": "object", "additionalProperties": { "type": "array", "items": { "type": "string" } } } } }, "GetContestsInYearRequest": { "type": "object", "additionalProperties": false }, "PlayerUuidRequest": { "type": "object", "additionalProperties": false }, "PlayerProfileUuidRequest": { "type": "object", "additionalProperties": false }, "YearlyCropRecordsDto": { "type": "object", "additionalProperties": false, "required": ["year", "crops"], "properties": { "year": { "type": "integer", "format": "int32" }, "crops": { "type": "object", "additionalProperties": { "type": "array", "items": { "$ref": "#/components/schemas/ContestParticipationWithTimestampDto" } } } } }, "ContestParticipationWithTimestampDto": { "type": "object", "additionalProperties": false, "required": [ "playerUuid", "playerName", "profileUuid", "removed", "timestamp", "collected", "position", "participants" ], "properties": { "playerUuid": { "type": "string" }, "playerName": { "type": "string" }, "profileUuid": { "type": "string" }, "removed": { "type": "boolean" }, "timestamp": { "type": "integer", "format": "int64" }, "collected": { "type": "integer", "format": "int32" }, "position": { "type": "integer", "format": "int32" }, "participants": { "type": "integer", "format": "int32" } } }, "SkyBlockYearRequest": { "type": "object", "additionalProperties": false }, "AddTeamMemberRequest": { "type": "object", "additionalProperties": false }, "AdminEventMemberDto": { "type": "object", "additionalProperties": false, "required": ["eventId", "status", "id"], "properties": { "playerUuid": { "type": "string", "nullable": true }, "profileId": { "type": "string", "nullable": true }, "playerName": { "type": "string", "nullable": true }, "eventId": { "type": "string" }, "teamId": { "type": "string", "nullable": true }, "status": { "$ref": "#/components/schemas/EventMemberStatus" }, "score": { "type": "string", "nullable": true }, "lastUpdated": { "type": "string", "nullable": true }, "disqualified": { "type": "boolean", "nullable": true }, "data": { "nullable": true }, "estimatedTimeActive": { "type": "string", "nullable": true }, "meta": { "description": "Metadata of the entry", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/MemberCosmeticsDto" } ] }, "id": { "type": "integer", "format": "int32" }, "accountId": { "type": "string", "nullable": true }, "notes": { "type": "string", "maxLength": 128, "nullable": true } } }, "EventMemberStatus": { "type": "integer", "description": "", "x-enumNames": ["Inactive", "Active", "Left", "Disqualified"], "enum": [0, 1, 2, 3] }, "DeleteEventRequest": { "type": "object", "additionalProperties": false }, "CreateEventDto": { "type": "object", "additionalProperties": false, "required": ["name", "guildId", "startTime", "endTime", "maxTeams", "maxTeamMembers"], "properties": { "name": { "type": "string", "description": "The name of the event", "maxLength": 64, "minLength": 1 }, "type": { "description": "The type of the event", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/EventType" } ] }, "guildId": { "type": "string", "description": "The Discord server id as a string for the event", "minLength": 1 }, "description": { "type": "string", "description": "An optional description for the event", "maxLength": 1024, "nullable": true }, "rules": { "type": "string", "description": "An optional set of rules for the event", "maxLength": 1024, "nullable": true }, "prizeInfo": { "type": "string", "description": "An optional description of prizes for the event", "maxLength": 1024, "nullable": true }, "startTime": { "type": "integer", "description": "Unix timestamp for the start time of the event in seconds", "format": "int64" }, "endTime": { "type": "integer", "description": "Unix timestamp for the end time of the event in seconds", "format": "int64" }, "joinTime": { "type": "integer", "description": "Unix timestamp for the latest time a new member can join the event in seconds", "format": "int64", "nullable": true }, "dynamicStartTime": { "type": "boolean", "description": "Currently unused", "nullable": true }, "requiredRole": { "type": "string", "description": "A Discord role id that is required to participate in the event", "maxLength": 24, "nullable": true }, "blockedRole": { "type": "string", "description": "A Discord role id that is blocked from participating in the event", "maxLength": 24, "nullable": true }, "maxTeams": { "type": "integer", "description": "Max amount of teams allowed in the event, 0 if solo event, -1 if unlimited", "format": "int32" }, "maxTeamMembers": { "type": "integer", "description": "Max amount of members allowed in a team, 0 if solo event, -1 if unlimited", "format": "int32" } } }, "CreateEventTeamDto": { "type": "object", "additionalProperties": false, "properties": { "name": { "type": "array", "description": "An array of strings for the team name, example: [ \"Bountiful\", \"Farmers\" ]", "maxItems": 3, "minItems": 1, "nullable": true, "items": { "type": "string" } }, "color": { "type": "string", "maxLength": 7, "nullable": true } } }, "DeleteEventBannerRequest": { "type": "object", "additionalProperties": false }, "DeleteMemberRequest": { "type": "object", "additionalProperties": false }, "DeleteTeamRequest": { "type": "object", "additionalProperties": false }, "ForceAddMemberRequest": { "type": "object", "additionalProperties": false }, "GetBannedMembersRequest": { "type": "object", "additionalProperties": false }, "GetEventMembersRequest": { "type": "object", "additionalProperties": false }, "GetAdminGuildEventRequest": { "type": "object", "additionalProperties": false }, "EventTeamWithMembersDto": { "type": "object", "additionalProperties": false, "required": ["id", "members"], "properties": { "id": { "type": "integer", "format": "int32" }, "eventId": { "type": "string", "nullable": true }, "name": { "type": "string", "nullable": true }, "color": { "type": "string", "nullable": true }, "score": { "type": "string", "nullable": true }, "ownerId": { "type": "string", "nullable": true }, "ownerUuid": { "type": "string", "nullable": true }, "members": { "type": "array", "items": { "$ref": "#/components/schemas/EventMemberDto" } }, "joinCode": { "type": "string", "description": "Join code for the team, only populated if authenticated user is the owner", "nullable": true } } }, "EventMemberDto": { "type": "object", "additionalProperties": false, "required": ["eventId", "status", "disqualified"], "properties": { "playerUuid": { "type": "string", "nullable": true }, "playerName": { "type": "string", "nullable": true }, "profileId": { "type": "string", "nullable": true }, "eventId": { "type": "string" }, "teamId": { "type": "string", "nullable": true }, "status": { "$ref": "#/components/schemas/EventMemberStatus" }, "score": { "type": "string", "nullable": true }, "data": { "nullable": true }, "lastUpdated": { "type": "string", "nullable": true }, "disqualified": { "type": "boolean" }, "notes": { "type": "string", "maxLength": 128, "nullable": true }, "meta": { "description": "Metadata of the entry", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/MemberCosmeticsDto" } ] } } }, "GetTeamsRequest": { "type": "object", "additionalProperties": false }, "KickTeamMemberRequest": { "type": "object", "additionalProperties": false }, "SetTeamOwnerRequest": { "type": "object", "additionalProperties": false, "required": ["player"], "properties": { "player": { "type": "string" } } }, "EditEventBannerDto": { "type": "object", "additionalProperties": false, "properties": { "image": { "type": "string", "format": "binary", "nullable": true } } }, "UnbanMemberRequest": { "type": "object", "additionalProperties": false }, "GetEventRequest": { "type": "object", "additionalProperties": false }, "EditEventDto": { "type": "object", "additionalProperties": false, "properties": { "name": { "type": "string", "nullable": true }, "type": { "type": "string", "nullable": true }, "description": { "type": "string", "nullable": true }, "rules": { "type": "string", "nullable": true }, "prizeInfo": { "type": "string", "nullable": true }, "startTime": { "type": "integer", "format": "int64", "nullable": true }, "joinTime": { "type": "integer", "format": "int64", "nullable": true }, "endTime": { "type": "integer", "format": "int64", "nullable": true }, "dynamicStartTime": { "type": "boolean", "nullable": true }, "active": { "type": "boolean", "nullable": true }, "requiredRole": { "type": "string", "nullable": true }, "blockedRole": { "type": "string", "nullable": true }, "guildId": { "type": "string", "nullable": true }, "weightData": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightEventData" } ] }, "medalData": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/MedalEventData" } ] }, "pestData": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/PestEventData" } ] }, "collectionData": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/CollectionEventData" } ] } } }, "WeightEventData": { "type": "object", "additionalProperties": false, "required": ["cropWeights"], "properties": { "cropWeights": { "type": "object", "description": "The weights of each crop in the event", "x-dictionaryKey": { "$ref": "#/components/schemas/Crop" }, "additionalProperties": { "type": "number", "format": "double" } } } }, "Crop": { "type": "integer", "description": "", "x-enumNames": [ "Cactus", "Carrot", "CocoaBeans", "Melon", "Mushroom", "NetherWart", "Potato", "Pumpkin", "SugarCane", "Wheat", "Seeds", "Sunflower", "Moonflower", "WildRose" ], "enum": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13] }, "MedalEventData": { "type": "object", "additionalProperties": false, "required": ["medalWeights"], "properties": { "medalWeights": { "type": "object", "x-dictionaryKey": { "$ref": "#/components/schemas/ContestMedal" }, "additionalProperties": { "type": "integer", "format": "int32" } } } }, "ContestMedal": { "type": "integer", "description": "", "x-enumNames": ["None", "Bronze", "Silver", "Gold", "Platinum", "Diamond", "Unclaimable"], "enum": [0, 1, 2, 3, 4, 5, -1] }, "PestEventData": { "type": "object", "additionalProperties": false, "required": ["pestWeights"], "properties": { "pestWeights": { "type": "object", "x-dictionaryKey": { "$ref": "#/components/schemas/Pest" }, "additionalProperties": { "type": "integer", "format": "int32" } } } }, "Pest": { "type": "integer", "description": "", "x-enumNames": [ "Mite", "Cricket", "Moth", "Earthworm", "Slug", "Beetle", "Locust", "Rat", "Mosquito", "Fly", "Mouse", "Dragonfly", "Firefly", "Mantis" ], "enum": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13] }, "CollectionEventData": { "type": "object", "additionalProperties": false, "required": ["collectionWeights"], "properties": { "collectionWeights": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/CollectionWeight" } } } }, "CollectionWeight": { "type": "object", "additionalProperties": false, "required": ["weight"], "properties": { "name": { "type": "string", "nullable": true }, "weight": { "type": "number", "format": "double" } } }, "UpdateEventTeamDto": { "type": "object", "additionalProperties": false, "properties": { "name": { "type": "array", "description": "An array of strings for the team name, example: [ \"Bountiful\", \"Farmers\" ]", "maxItems": 3, "minItems": 1, "nullable": true, "items": { "type": "string" } }, "color": { "type": "string", "maxLength": 7, "nullable": true }, "changeCode": { "type": "boolean", "description": "If join code should be changed", "nullable": true } } }, "EventDefaultsDto": { "type": "object", "additionalProperties": false, "required": ["cropWeights", "medalValues", "pestWeights"], "properties": { "cropWeights": { "type": "object", "x-dictionaryKey": { "$ref": "#/components/schemas/Crop" }, "additionalProperties": { "type": "number", "format": "double" } }, "medalValues": { "type": "object", "x-dictionaryKey": { "$ref": "#/components/schemas/ContestMedal" }, "additionalProperties": { "type": "integer", "format": "int32" } }, "pestWeights": { "type": "object", "x-dictionaryKey": { "$ref": "#/components/schemas/Pest" }, "additionalProperties": { "type": "integer", "format": "int32" } } } }, "GetEventMemberRequest": { "type": "object", "additionalProperties": false }, "EventMemberDetailsDto": { "type": "object", "additionalProperties": false, "required": ["eventId", "status"], "properties": { "playerUuid": { "type": "string", "nullable": true }, "profileId": { "type": "string", "nullable": true }, "playerName": { "type": "string", "nullable": true }, "eventId": { "type": "string" }, "teamId": { "type": "string", "nullable": true }, "status": { "$ref": "#/components/schemas/EventMemberStatus" }, "score": { "type": "string", "nullable": true }, "lastUpdated": { "type": "string", "nullable": true }, "disqualified": { "type": "boolean", "nullable": true }, "data": { "nullable": true }, "estimatedTimeActive": { "type": "string", "nullable": true }, "meta": { "description": "Metadata of the entry", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/MemberCosmeticsDto" } ] } } }, "GetEventMembersRequest2": { "type": "object", "additionalProperties": false }, "GetEventTeamRequest": { "type": "object", "additionalProperties": false }, "GetEventTeamsRequest": { "type": "object", "additionalProperties": false }, "EventTeamsWordListDto": { "type": "object", "additionalProperties": false, "required": ["first", "second", "third"], "properties": { "first": { "type": "array", "items": { "type": "string" } }, "second": { "type": "array", "items": { "type": "string" } }, "third": { "type": "array", "items": { "type": "string" } } } }, "GetUpcomingEventsRequest": { "type": "object", "additionalProperties": false }, "DeleteTeamRequest2": { "type": "object", "additionalProperties": false }, "JoinEventRequest": { "type": "object", "additionalProperties": false }, "KickTeamMemberRequest2": { "type": "object", "additionalProperties": false }, "LeaveEventRequest": { "type": "object", "additionalProperties": false }, "LeaveTeamRequest": { "type": "object", "additionalProperties": false }, "ChangeTeamOwnerRequest": { "type": "object", "additionalProperties": false, "required": ["player"], "properties": { "player": { "type": "string" } } }, "UpdateTeamJoinCodeRequest": { "type": "object", "additionalProperties": false }, "GardenDto": { "type": "object", "additionalProperties": false, "required": [ "profileId", "experience", "completedVisitors", "uniqueVisitors", "crops", "cropUpgrades", "plots", "composter", "visitors", "lastGrowthStageTime", "greenhouseSlots", "gardenUpgrades", "lastSave" ], "properties": { "profileId": { "type": "string", "description": "Profile ID" }, "experience": { "type": "integer", "description": "Garden experience", "format": "int32" }, "completedVisitors": { "type": "integer", "description": "Total completed visitors", "format": "int32" }, "uniqueVisitors": { "type": "integer", "description": "Unique visitors unlocked", "format": "int32" }, "crops": { "description": "Crops counted towards milestones", "oneOf": [ { "$ref": "#/components/schemas/CropSettingsOfString" } ] }, "cropUpgrades": { "description": "Crop upgrades", "oneOf": [ { "$ref": "#/components/schemas/CropSettingsOfInt32" } ] }, "plots": { "type": "array", "description": "List of unlocked plots", "items": { "type": "string" } }, "composter": { "description": "Composter data", "oneOf": [ { "$ref": "#/components/schemas/ComposterDto" } ] }, "visitors": { "type": "object", "description": "Visitor data", "additionalProperties": { "$ref": "#/components/schemas/VisitorDto" } }, "lastGrowthStageTime": { "type": "integer", "description": "Unix timestamp of the last greenhouse growth stage in milliseconds", "format": "int64" }, "greenhouseSlots": { "type": "array", "description": "Tracked unlocked greenhouse slots", "items": { "$ref": "#/components/schemas/GreenhouseSlotUnlock" } }, "gardenUpgrades": { "description": "Greenhouse upgrades", "oneOf": [ { "$ref": "#/components/schemas/GardenUpgradesDto" } ] }, "lastSave": { "type": "string", "description": "Last save time in unix seconds" } } }, "CropSettingsOfInt32": { "type": "object", "additionalProperties": false, "required": [ "cactus", "carrot", "potato", "wheat", "melon", "pumpkin", "mushroom", "cocoaBeans", "sugarCane", "netherWart", "sunflower", "moonflower", "wildRose" ], "properties": { "cactus": { "type": "integer", "format": "int32" }, "carrot": { "type": "integer", "format": "int32" }, "potato": { "type": "integer", "format": "int32" }, "wheat": { "type": "integer", "format": "int32" }, "melon": { "type": "integer", "format": "int32" }, "pumpkin": { "type": "integer", "format": "int32" }, "mushroom": { "type": "integer", "format": "int32" }, "cocoaBeans": { "type": "integer", "format": "int32" }, "sugarCane": { "type": "integer", "format": "int32" }, "netherWart": { "type": "integer", "format": "int32" }, "sunflower": { "type": "integer", "format": "int32" }, "moonflower": { "type": "integer", "format": "int32" }, "wildRose": { "type": "integer", "format": "int32" } } }, "ComposterDto": { "type": "object", "additionalProperties": false, "required": [ "organic_matter", "fuel_units", "compost_units", "compost_items", "conversion_ticks", "last_save", "upgrades", "lastSave" ], "properties": { "organic_matter": { "type": "number", "format": "double" }, "fuel_units": { "type": "number", "format": "double" }, "compost_units": { "type": "integer", "format": "int32" }, "compost_items": { "type": "integer", "format": "int32" }, "conversion_ticks": { "type": "integer", "format": "int32" }, "last_save": { "type": "integer", "format": "int64" }, "upgrades": { "$ref": "#/components/schemas/ComposterUpgrades" }, "lastSave": { "type": "integer", "description": "Last save time in unix seconds", "format": "int64" } } }, "ComposterUpgrades": { "type": "object", "additionalProperties": false, "required": ["speed", "multi_drop", "fuel_cap", "organic_matter_cap", "cost_reduction"], "properties": { "speed": { "type": "integer", "format": "int32" }, "multi_drop": { "type": "integer", "format": "int32" }, "fuel_cap": { "type": "integer", "format": "int32" }, "organic_matter_cap": { "type": "integer", "format": "int32" }, "cost_reduction": { "type": "integer", "format": "int32" } } }, "VisitorDto": { "type": "object", "additionalProperties": false, "required": ["visits", "accepted"], "properties": { "visits": { "type": "integer", "format": "int32" }, "accepted": { "type": "integer", "format": "int32" } } }, "GreenhouseSlotUnlock": { "type": "object", "additionalProperties": false, "required": ["x", "z"], "properties": { "x": { "type": "integer", "format": "int32" }, "z": { "type": "integer", "format": "int32" } } }, "GardenUpgradesDto": { "type": "object", "additionalProperties": false, "required": ["greenhouseYield", "greenhousePlotLimit", "greenhouseGrowthSpeed"], "properties": { "greenhouseYield": { "type": "integer", "format": "int32" }, "greenhousePlotLimit": { "type": "integer", "format": "int32" }, "greenhouseGrowthSpeed": { "type": "integer", "format": "int32" } } }, "ProfileUuidRequest": { "type": "object", "additionalProperties": false }, "CropCollectionsDataPointDto": { "type": "object", "additionalProperties": false, "required": ["timestamp", "cropWeight", "crops", "pests"], "properties": { "timestamp": { "type": "integer", "format": "int64" }, "cropWeight": { "type": "string" }, "crops": { "type": "object", "additionalProperties": { "type": "integer", "format": "int64" } }, "pests": { "type": "object", "additionalProperties": { "type": "integer", "format": "int32" } } } }, "GraphRequest": { "type": "object", "additionalProperties": false }, "SkillsDataPointDto": { "type": "object", "additionalProperties": false, "required": ["timestamp", "skills"], "properties": { "timestamp": { "type": "integer", "format": "int64" }, "skills": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } } } }, "ContestBracketsDetailsDto": { "type": "object", "additionalProperties": false, "required": ["start", "end", "brackets"], "properties": { "start": { "type": "string" }, "end": { "type": "string" }, "brackets": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/ContestBracketsDto" } } } }, "GetCurrentMedalBracketsRequest": { "type": "object", "additionalProperties": false }, "GetMedalBracketsRequest": { "type": "object", "additionalProperties": false }, "GetMedalBracketsGraphRequest": { "type": "object", "additionalProperties": false }, "GuideDto": { "type": "object", "additionalProperties": false, "required": ["id", "slug", "title", "status", "author", "score", "views", "createdAt", "description", "tags"], "properties": { "id": { "type": "integer", "format": "int32" }, "slug": { "type": "string" }, "title": { "type": "string" }, "status": { "type": "string" }, "iconSkyblockId": { "type": "string", "nullable": true }, "author": { "$ref": "#/components/schemas/AuthorDto" }, "score": { "type": "integer", "format": "int32" }, "views": { "type": "integer", "format": "int32" }, "createdAt": { "type": "string", "format": "date-time" }, "description": { "type": "string" }, "tags": { "type": "array", "items": { "type": "string" } } } }, "AuthorDto": { "type": "object", "additionalProperties": false, "required": ["id", "name"], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "avatar": { "type": "string", "nullable": true }, "uuid": { "type": "string", "nullable": true } } }, "ApproveCommentRequest": { "type": "object", "additionalProperties": false }, "ApproveGuideRequest": { "type": "object", "additionalProperties": false }, "BookmarkRequest": { "type": "object", "additionalProperties": false }, "CommentDto": { "type": "object", "additionalProperties": false, "required": [ "id", "sqid", "content", "author", "createdAt", "score", "isPending", "isDeleted", "isEdited", "isEditedByAdmin", "hasPendingEdit" ], "properties": { "id": { "type": "integer", "format": "int32" }, "sqid": { "type": "string" }, "parentId": { "type": "integer", "format": "int32", "nullable": true }, "content": { "type": "string" }, "draftContent": { "type": "string", "nullable": true }, "author": { "$ref": "#/components/schemas/AuthorDto" }, "createdAt": { "type": "string", "format": "date-time" }, "editedAt": { "type": "string", "format": "date-time", "nullable": true }, "score": { "type": "integer", "format": "int32" }, "liftedElementId": { "type": "string", "nullable": true }, "userVote": { "type": "integer", "format": "int32", "nullable": true }, "isPending": { "type": "boolean" }, "isDeleted": { "type": "boolean" }, "isEdited": { "type": "boolean" }, "isEditedByAdmin": { "type": "boolean" }, "hasPendingEdit": { "type": "boolean" } } }, "CreateCommentRequest": { "type": "object", "additionalProperties": false, "required": ["content"], "properties": { "parentId": { "type": "integer", "format": "int32", "nullable": true }, "content": { "type": "string", "maxLength": 2048, "minLength": 0, "nullable": false }, "liftedElementId": { "type": "string", "maxLength": 128, "minLength": 0, "nullable": true } } }, "CreateGuideRequest": { "type": "object", "additionalProperties": false, "required": ["type"], "properties": { "type": { "$ref": "#/components/schemas/GuideType" } } }, "GuideType": { "type": "integer", "description": "", "x-enumNames": ["General", "Farm", "Greenhouse", "Contest"], "enum": [0, 1, 2, 3] }, "TagResponse": { "type": "object", "additionalProperties": false, "required": ["id", "name", "category", "hexColor"], "properties": { "id": { "type": "integer", "format": "int32" }, "name": { "type": "string" }, "category": { "type": "string" }, "hexColor": { "type": "string" } } }, "CreateTagRequest": { "type": "object", "additionalProperties": false, "required": ["name", "category"], "properties": { "name": { "type": "string", "maxLength": 64, "minLength": 0, "nullable": false }, "category": { "type": "string", "maxLength": 32, "minLength": 0, "nullable": false }, "hexColor": { "type": "string", "maxLength": 7, "minLength": 0, "nullable": true } } }, "DeleteCommentRequest": { "type": "object", "additionalProperties": false }, "DeleteGuideRequest": { "type": "object", "additionalProperties": false }, "DeleteTagRequest": { "type": "object", "additionalProperties": false }, "EditCommentRequest": { "type": "object", "additionalProperties": false, "required": ["content"], "properties": { "content": { "type": "string", "maxLength": 2048, "minLength": 0, "nullable": false } } }, "FullGuideDto": { "type": "object", "additionalProperties": false, "required": [ "id", "slug", "title", "description", "content", "author", "createdAt", "score", "viewCount", "tags", "isDraft", "status", "concurrencyVersion" ], "properties": { "id": { "type": "integer", "format": "int32" }, "slug": { "type": "string" }, "title": { "type": "string" }, "iconSkyblockId": { "type": "string", "nullable": true }, "description": { "type": "string" }, "content": { "type": "string" }, "author": { "$ref": "#/components/schemas/AuthorDto" }, "createdAt": { "type": "string", "format": "date-time" }, "score": { "type": "integer", "format": "int32" }, "viewCount": { "type": "integer", "format": "int32" }, "tags": { "type": "array", "items": { "type": "string" } }, "isDraft": { "type": "boolean" }, "status": { "type": "string" }, "userVote": { "type": "integer", "nullable": true }, "isBookmarked": { "type": "boolean", "nullable": true }, "rejectionReason": { "type": "string", "nullable": true }, "concurrencyVersion": { "type": "integer", "format": "int32" } } }, "GetGuideRequest": { "type": "object", "additionalProperties": false }, "UserGuideDto": { "type": "object", "additionalProperties": false, "required": ["id", "slug", "title", "description", "type", "status", "score", "viewCount", "createdAt"], "properties": { "id": { "type": "integer", "format": "int32" }, "slug": { "type": "string" }, "title": { "type": "string" }, "description": { "type": "string" }, "type": { "type": "string" }, "status": { "type": "string" }, "score": { "type": "integer", "format": "int32" }, "viewCount": { "type": "integer", "format": "int32" }, "createdAt": { "type": "string", "format": "date-time" }, "updatedAt": { "type": "string", "format": "date-time", "nullable": true } } }, "GetUserBookmarksRequest": { "type": "object", "additionalProperties": false }, "GetUserGuidesRequest": { "type": "object", "additionalProperties": false }, "ListCommentsRequest": { "type": "object", "additionalProperties": false }, "ListGuidesRequest": { "type": "object", "additionalProperties": false }, "GuideSort": { "type": "string", "description": "", "enum": ["newest", "topRated", "trending"] }, "RejectGuideRequest": { "type": "object", "additionalProperties": false, "properties": { "reason": { "type": "string", "description": "Optional reason for rejection to provide feedback to the author.", "nullable": true } } }, "SubmitGuideRequest": { "type": "object", "additionalProperties": false }, "UnpublishGuideRequest": { "type": "object", "additionalProperties": false }, "UpdateGuideResponse": { "type": "object", "additionalProperties": false, "required": ["concurrencyVersion"], "properties": { "concurrencyVersion": { "type": "integer", "format": "int32" } } }, "UpdateGuideRequest": { "type": "object", "additionalProperties": false, "required": ["title", "description", "markdownContent", "concurrencyVersion"], "properties": { "title": { "type": "string" }, "iconSkyblockId": { "type": "string", "nullable": true }, "description": { "type": "string" }, "markdownContent": { "type": "string" }, "tags": { "type": "array", "nullable": true, "items": { "type": "string" } }, "richBlocks": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/GuideRichData" } ] }, "concurrencyVersion": { "type": "integer", "format": "int32" } } }, "GuideRichData": { "type": "object", "additionalProperties": false, "properties": { "greenhouseLayout": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/GreenhouseLayout" } ] } } }, "GreenhouseLayout": { "type": "object", "additionalProperties": false, "required": ["layoutId", "slots"], "properties": { "layoutId": { "type": "integer", "format": "int32" }, "slots": { "type": "array", "items": { "$ref": "#/components/schemas/GreenhouseSlot" } } } }, "GreenhouseSlot": { "type": "object", "additionalProperties": false, "required": ["index", "itemId"], "properties": { "index": { "type": "integer", "format": "int32" }, "itemId": { "type": "string" }, "backgroundTexture": { "type": "string", "nullable": true } } }, "UpdateTagRequest": { "type": "object", "additionalProperties": false, "properties": { "name": { "type": "string", "nullable": true }, "category": { "type": "string", "nullable": true }, "hexColor": { "type": "string", "nullable": true } } }, "VoteCommentRequest": { "type": "object", "additionalProperties": false, "required": ["value"], "properties": { "value": { "type": "integer" } } }, "VoteGuideRequest": { "type": "object", "additionalProperties": false, "required": ["value"], "properties": { "value": { "type": "integer" } } }, "SetEventFeatureRequest": { "type": "object", "additionalProperties": false }, "SetJacobFeatureRequest": { "type": "object", "additionalProperties": false }, "SetGuildLockedRequest": { "type": "object", "additionalProperties": false }, "SetGuildPublicRequest": { "type": "object", "additionalProperties": false }, "PublicGuildDto": { "type": "object", "additionalProperties": false, "required": ["id", "name", "memberCount", "features"], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "icon": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ImageAttachmentDto" } ] }, "banner": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ImageAttachmentDto" } ] }, "inviteCode": { "type": "string", "nullable": true }, "description": { "type": "string", "nullable": true }, "memberCount": { "type": "integer", "format": "int32" }, "features": { "$ref": "#/components/schemas/PublicGuildFeaturesDto" } } }, "PublicGuildFeaturesDto": { "type": "object", "additionalProperties": false, "required": ["jacobLeaderboardEnabled", "eventsEnabled", "contestPingsEnabled"], "properties": { "jacobLeaderboardEnabled": { "type": "boolean" }, "jacobLeaderboard": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/PublicJacobLeaderboardFeatureDto" } ] }, "eventsEnabled": { "type": "boolean" }, "eventSettings": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/GuildEventSettings" } ] }, "contestPingsEnabled": { "type": "boolean" }, "contestPings": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ContestPingsFeatureDto" } ] } } }, "PublicJacobLeaderboardFeatureDto": { "type": "object", "additionalProperties": false, "required": ["maxLeaderboards", "blockedRoles", "requiredRoles", "excludedTimespans", "leaderboards"], "properties": { "maxLeaderboards": { "type": "integer", "format": "int32" }, "blockedRoles": { "type": "array", "items": { "$ref": "#/components/schemas/DiscordRole" } }, "requiredRoles": { "type": "array", "items": { "$ref": "#/components/schemas/DiscordRole" } }, "excludedTimespans": { "type": "array", "items": { "$ref": "#/components/schemas/ExcludedTimespan" } }, "leaderboards": { "type": "array", "items": { "$ref": "#/components/schemas/PublicJacobLeaderboardDto" } } } }, "PublicJacobLeaderboardDto": { "type": "object", "additionalProperties": false, "required": ["id", "startCutoff", "endCutoff", "active", "pingForSmallImprovements", "crops"], "properties": { "id": { "type": "string" }, "channelId": { "type": "string", "nullable": true }, "startCutoff": { "type": "integer", "format": "int64" }, "endCutoff": { "type": "integer", "format": "int64" }, "title": { "type": "string", "nullable": true }, "active": { "type": "boolean" }, "requiredRole": { "type": "string", "nullable": true }, "blockedRole": { "type": "string", "nullable": true }, "updateChannelId": { "type": "string", "nullable": true }, "updateRoleId": { "type": "string", "nullable": true }, "pingForSmallImprovements": { "type": "boolean" }, "crops": { "$ref": "#/components/schemas/CropRecords" } } }, "GuildDetailsDto": { "type": "object", "additionalProperties": false, "required": ["id", "name", "memberCount"], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "icon": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ImageAttachmentDto" } ] }, "banner": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ImageAttachmentDto" } ] }, "inviteCode": { "type": "string", "nullable": true }, "memberCount": { "type": "integer", "format": "int32" } } }, "DisableContestPingsRequest2": { "type": "object", "additionalProperties": false }, "GuildMemberDto": { "type": "object", "additionalProperties": false, "required": ["id", "name", "hasBot", "permissions", "roles"], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "icon": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ImageAttachmentDto" } ] }, "hasBot": { "type": "boolean" }, "permissions": { "type": "string" }, "roles": { "type": "array", "items": { "type": "string" } }, "admin": { "type": "boolean", "nullable": true } } }, "UpdateContestPingsRequest_UpdateContestPings": { "type": "object", "additionalProperties": false, "required": ["enabled", "delaySeconds"], "properties": { "enabled": { "type": "boolean", "description": "Indicates whether the contest pings feature is enabled for the guild." }, "channelId": { "type": "string", "description": "Channel ID to send contest pings to.", "nullable": true }, "alwaysPingRole": { "type": "string", "description": "Role ID to ping when a contest starts.", "nullable": true }, "cropPingRoles": { "description": "Individual roles to ping when a contest for a specific crop starts.", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/CropSettingsOfString" } ] }, "delaySeconds": { "type": "integer", "description": "Not in use yet. Delay in seconds before sending the ping.", "format": "int32" }, "disabledReason": { "type": "string", "description": "Reason for disabling the feature.", "maxLength": 128, "minLength": 0, "nullable": true } } }, "AuthorizedGuildDto": { "type": "object", "additionalProperties": false, "required": ["id", "permissions"], "properties": { "id": { "type": "string" }, "permissions": { "type": "string" }, "guild": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/PrivateGuildDto" } ] }, "member": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/GuildMemberDto" } ] } } }, "DeleteGuildJacobLeaderboardRequest": { "type": "object", "additionalProperties": false }, "CreateJacobLeaderboardRequest_CreateJacobLeaderboard": { "type": "object", "additionalProperties": false, "required": ["title"], "properties": { "title": { "type": "string", "maxLength": 64, "minLength": 0, "nullable": false }, "channelId": { "type": "string", "nullable": true }, "startCutoff": { "type": "integer", "format": "int64", "nullable": true }, "endCutoff": { "type": "integer", "format": "int64", "nullable": true }, "active": { "type": "boolean", "nullable": true }, "requiredRole": { "type": "string", "nullable": true }, "blockedRole": { "type": "string", "nullable": true }, "updateChannelId": { "type": "string", "nullable": true }, "updateRoleId": { "type": "string", "nullable": true }, "pingForSmallImprovements": { "type": "boolean", "nullable": true } } }, "RemoveExcludedTimespanRequest": { "type": "object", "additionalProperties": false }, "AddExcludedTimespanRequest_AddExcludedTimespanRequestBody": { "type": "object", "additionalProperties": false, "required": ["start", "end"], "properties": { "start": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" }, "reason": { "type": "string", "nullable": true } } }, "BanParticipationRequest_BanParticipationRequestBody": { "type": "object", "additionalProperties": false, "required": ["uuid", "crop", "timestamp"], "properties": { "uuid": { "type": "string" }, "crop": { "type": "string" }, "timestamp": { "type": "integer", "format": "int64" } } }, "BanPlayerRequest_BanPlayerRequestBody": { "type": "object", "additionalProperties": false, "required": ["playerUuid"], "properties": { "playerUuid": { "type": "string" } } }, "UnbanParticipationRequest": { "type": "object", "additionalProperties": false }, "UnbanPlayerRequest": { "type": "object", "additionalProperties": false }, "SendJacobLeaderboardRequest": { "type": "object", "additionalProperties": false }, "SubmitScoreResponse": { "type": "object", "additionalProperties": false, "required": ["changes", "hasNewRecords", "shouldPing"], "properties": { "changes": { "type": "array", "items": { "$ref": "#/components/schemas/ScoreChangeDto" } }, "hasNewRecords": { "type": "boolean" }, "shouldPing": { "type": "boolean" } } }, "ScoreChangeDto": { "type": "object", "additionalProperties": false, "required": ["crop", "newPosition", "oldPosition", "submitter", "record", "isNewHighScore", "isImprovement"], "properties": { "crop": { "type": "string" }, "newPosition": { "type": "integer", "format": "int32" }, "oldPosition": { "type": "integer", "format": "int32" }, "submitter": { "$ref": "#/components/schemas/SubmitterInfoDto" }, "record": { "$ref": "#/components/schemas/ContestParticipationDto" }, "displacedEntry": { "description": "Information about the previous record holder at this position, if any.", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/DisplacedEntryDto" } ] }, "knockedOutEntry": { "description": "Information about the entry that was knocked out of the leaderboard (e.g., 3rd place -> off).", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/DisplacedEntryDto" } ] }, "improvement": { "type": "integer", "description": "The amount the submitter improved their own score (if applicable).", "format": "int32", "nullable": true }, "isNewHighScore": { "type": "boolean" }, "isImprovement": { "type": "boolean" } } }, "SubmitterInfoDto": { "type": "object", "additionalProperties": false, "required": ["uuid", "ign", "discordId"], "properties": { "uuid": { "type": "string" }, "ign": { "type": "string" }, "discordId": { "type": "string" } } }, "DisplacedEntryDto": { "type": "object", "additionalProperties": false, "required": ["uuid", "ign", "discordId", "collected", "previousPosition"], "properties": { "uuid": { "type": "string" }, "ign": { "type": "string" }, "discordId": { "type": "string" }, "collected": { "type": "integer", "format": "int32" }, "previousPosition": { "type": "integer", "format": "int32" } } }, "GetHypixelGuildResponse": { "type": "object", "additionalProperties": false, "required": ["guild"], "properties": { "guild": { "$ref": "#/components/schemas/HypixelGuildDto" } } }, "UpdateJacobLeaderboardRequest_UpdateJacobLeaderboard": { "type": "object", "additionalProperties": false, "properties": { "title": { "type": "string", "maxLength": 64, "nullable": true }, "channelId": { "type": "string", "nullable": true }, "startCutoff": { "type": "integer", "format": "int64", "nullable": true }, "endCutoff": { "type": "integer", "format": "int64", "nullable": true }, "active": { "type": "boolean", "nullable": true }, "requiredRole": { "type": "string", "nullable": true }, "blockedRole": { "type": "string", "nullable": true }, "updateChannelId": { "type": "string", "nullable": true }, "updateRoleId": { "type": "string", "nullable": true }, "pingForSmallImprovements": { "type": "boolean", "nullable": true } } }, "HypixelGuildDto": { "type": "object", "additionalProperties": false, "required": [ "id", "name", "createdAt", "description", "publiclyListed", "public", "exp", "gameExp", "ranks", "members", "memberCount", "lastUpdated", "stats" ], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "createdAt": { "type": "integer", "format": "int64" }, "description": { "type": "string" }, "preferredGames": { "type": "array", "nullable": true, "items": { "type": "string" } }, "publiclyListed": { "type": "boolean" }, "public": { "type": "boolean" }, "exp": { "type": "integer", "format": "int64" }, "tag": { "type": "string", "nullable": true }, "tagColor": { "type": "string", "nullable": true }, "gameExp": { "type": "object", "additionalProperties": { "type": "integer", "format": "int64" } }, "ranks": { "type": "array", "items": { "$ref": "#/components/schemas/RawHypixelGuildRank" } }, "members": { "type": "array", "items": { "$ref": "#/components/schemas/HypixelGuildMemberDto" } }, "memberCount": { "type": "integer", "format": "int32" }, "lastUpdated": { "type": "integer", "format": "int64" }, "stats": { "type": "array", "items": { "$ref": "#/components/schemas/HypixelGuildStatsFullDto" } } } }, "RawHypixelGuildRank": { "type": "object", "additionalProperties": false, "required": ["name", "default", "created", "priority"], "properties": { "name": { "type": "string" }, "tag": { "type": "string", "nullable": true }, "default": { "type": "boolean" }, "created": { "type": "integer", "format": "int64" }, "priority": { "type": "integer", "format": "int32" } } }, "HypixelGuildMemberDto": { "type": "object", "additionalProperties": false, "required": ["playerUuid", "name", "formattedName", "joinedAt", "questParticipation", "active", "expHistory"], "properties": { "playerUuid": { "type": "string" }, "name": { "type": "string" }, "formattedName": { "type": "string" }, "rank": { "type": "string", "nullable": true }, "joinedAt": { "type": "integer", "format": "int64" }, "questParticipation": { "type": "integer", "format": "int32" }, "active": { "type": "boolean" }, "expHistory": { "type": "object", "additionalProperties": { "type": "integer", "format": "int32" } } } }, "HypixelGuildStatsFullDto": { "type": "object", "additionalProperties": false, "required": [ "recordedAt", "memberCount", "hypixelLevel", "skyblockExperience", "skillLevel", "slayerExperience", "catacombsExperience", "farmingWeight", "networth", "collections", "skills" ], "properties": { "recordedAt": { "type": "string", "format": "date-time" }, "memberCount": { "type": "integer", "format": "int32" }, "hypixelLevel": { "$ref": "#/components/schemas/HypixelGuildStat" }, "skyblockExperience": { "$ref": "#/components/schemas/HypixelGuildStat" }, "skillLevel": { "$ref": "#/components/schemas/HypixelGuildStat" }, "slayerExperience": { "$ref": "#/components/schemas/HypixelGuildStat" }, "catacombsExperience": { "$ref": "#/components/schemas/HypixelGuildStat" }, "farmingWeight": { "$ref": "#/components/schemas/HypixelGuildStat" }, "networth": { "$ref": "#/components/schemas/HypixelGuildStat" }, "collections": { "type": "object", "additionalProperties": { "type": "integer", "format": "int64" } }, "skills": { "type": "object", "additionalProperties": { "type": "integer", "format": "int64" } } } }, "GetHypixelGuildRequest": { "type": "object", "additionalProperties": false }, "GuildMembersLeaderboardDto": { "type": "object", "additionalProperties": false, "required": [ "id", "title", "limit", "offset", "maxEntries", "minimumScore", "startsAt", "endsAt", "profile", "entries", "guildId" ], "properties": { "id": { "type": "string" }, "title": { "type": "string" }, "shortTitle": { "type": "string", "nullable": true }, "itemId": { "type": "string", "description": "Item Id if this is a collection leaderboard", "nullable": true }, "interval": { "type": "string", "nullable": true }, "firstInterval": { "type": "string", "nullable": true }, "limit": { "type": "integer", "format": "int32" }, "offset": { "type": "integer", "format": "int32" }, "maxEntries": { "type": "integer", "format": "int32" }, "minimumScore": { "type": "number", "description": "The minimum score required to be on the leaderboard", "format": "decimal" }, "startsAt": { "type": "integer", "format": "int64" }, "endsAt": { "type": "integer", "format": "int64" }, "profile": { "type": "boolean" }, "entries": { "type": "array", "items": { "$ref": "#/components/schemas/LeaderboardEntryDto" } }, "guildId": { "type": "string" } } }, "LeaderboardEntryDto": { "type": "object", "additionalProperties": false, "required": ["uuid", "amount", "removed", "initialAmount"], "properties": { "ign": { "type": "string", "description": "Player's IGN if player leaderboard", "nullable": true }, "profile": { "type": "string", "description": "Player's profile name if player leaderboard", "nullable": true }, "uuid": { "type": "string", "description": "Uuid of the player or profile" }, "amount": { "type": "number", "description": "Score of the entry", "format": "double" }, "removed": { "type": "boolean" }, "initialAmount": { "type": "number", "description": "Initial score of the entry", "format": "double" }, "mode": { "type": "string", "description": "Game mode of the entry. Classic profiles are considered default/null.", "nullable": true }, "members": { "type": "array", "nullable": true, "items": { "$ref": "#/components/schemas/ProfileLeaderboardMemberDto" } }, "meta": { "description": "Metadata of the entry", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/MemberCosmeticsDto" } ] } } }, "ProfileLeaderboardMemberDto": { "type": "object", "additionalProperties": false, "required": ["ign", "uuid", "xp", "removed"], "properties": { "ign": { "type": "string" }, "uuid": { "type": "string" }, "xp": { "type": "integer", "description": "Skyblock xp of the player (used for sorting)", "format": "int32" }, "removed": { "type": "boolean" } } }, "GetHypixelGuildMembersLeaderboardRequest": { "type": "object", "additionalProperties": false }, "RemovedFilter": { "type": "integer", "description": "", "x-enumNames": ["NotRemoved", "Removed", "All"], "enum": [0, 1, 2] }, "GetHypixelGuildRankResponse": { "type": "object", "additionalProperties": false, "required": ["guildId", "guildName", "rank", "amount"], "properties": { "guildId": { "type": "string" }, "guildName": { "type": "string" }, "rank": { "type": "integer", "format": "int32" }, "amount": { "type": "number", "format": "double" } } }, "GetHypixelGuildRankRequest": { "type": "object", "additionalProperties": false }, "SortHypixelGuildsBy": { "type": "string", "description": "", "enum": [ "memberCount", "skyblockExperience", "skyblockExperienceAverage", "skillLevel", "skillLevelAverage", "hypixelLevelAverage", "slayerExperience", "catacombsExperience", "farmingWeight", "networth", "networthAverage" ] }, "GetHypixelGuildsResponse": { "type": "object", "additionalProperties": false, "required": ["totalGuilds", "guilds"], "properties": { "totalGuilds": { "type": "integer", "format": "int32" }, "guilds": { "type": "array", "items": { "$ref": "#/components/schemas/HypixelGuildDetailsDto" } } } }, "GetHypixelGuildsRequest": { "type": "object", "additionalProperties": false }, "SearchHypixelGuildsResponse": { "type": "object", "additionalProperties": false, "required": ["results"], "properties": { "results": { "type": "array", "items": { "$ref": "#/components/schemas/HypixelGuildSearchResultDto" } } } }, "HypixelGuildSearchResultDto": { "type": "object", "additionalProperties": false, "required": ["id", "name", "memberCount"], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "memberCount": { "type": "integer", "format": "int32" }, "tag": { "type": "string", "nullable": true }, "tagColor": { "type": "string", "nullable": true } } }, "SearchHypixelGuildsRequest": { "type": "object", "additionalProperties": false }, "LeaderboardDto": { "type": "object", "additionalProperties": false, "required": [ "id", "title", "limit", "offset", "maxEntries", "minimumScore", "startsAt", "endsAt", "profile", "entries" ], "properties": { "id": { "type": "string" }, "title": { "type": "string" }, "shortTitle": { "type": "string", "nullable": true }, "itemId": { "type": "string", "description": "Item Id if this is a collection leaderboard", "nullable": true }, "interval": { "type": "string", "nullable": true }, "firstInterval": { "type": "string", "nullable": true }, "limit": { "type": "integer", "format": "int32" }, "offset": { "type": "integer", "format": "int32" }, "maxEntries": { "type": "integer", "format": "int32" }, "minimumScore": { "type": "number", "description": "The minimum score required to be on the leaderboard", "format": "decimal" }, "startsAt": { "type": "integer", "format": "int64" }, "endsAt": { "type": "integer", "format": "int64" }, "profile": { "type": "boolean" }, "entries": { "type": "array", "items": { "$ref": "#/components/schemas/LeaderboardEntryDto" } } } }, "LeaderboardSliceRequest": { "type": "object", "additionalProperties": false }, "LeaderboardsResponse": { "type": "object", "additionalProperties": false, "required": ["leaderboards"], "properties": { "leaderboards": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/LeaderboardInfoDto" } } } }, "LeaderboardInfoDto": { "type": "object", "additionalProperties": false, "required": [ "title", "category", "profile", "minimumScore", "cachedRankAmount", "intervalType", "scoreDataType" ], "properties": { "title": { "type": "string", "description": "Leaderboard title" }, "short": { "type": "string", "description": "Leaderboard short title", "nullable": true }, "itemId": { "type": "string", "description": "Item Id if a collection based leaderboard", "nullable": true }, "category": { "type": "string", "description": "Leaderboard category" }, "profile": { "type": "boolean", "description": "If true, the leaderboard is profile based" }, "minimumScore": { "type": "number", "description": "Minimum score required to be on the leaderboard", "format": "decimal" }, "cachedRankAmount": { "type": "integer", "description": "Amount of top ranks cached in Redis for this leaderboard.", "format": "int32" }, "intervalType": { "description": "Interval type of the leaderboard", "oneOf": [ { "$ref": "#/components/schemas/LeaderboardType" } ] }, "scoreDataType": { "description": "Score data type of the leaderboard", "oneOf": [ { "$ref": "#/components/schemas/LeaderboardScoreDataType" } ] } } }, "LeaderboardType": { "type": "string", "description": "", "x-enumNames": ["Current", "Weekly", "Monthly"], "enum": ["Current", "Weekly", "Monthly"] }, "LeaderboardScoreDataType": { "type": "string", "description": "", "x-enumNames": ["Double", "Long", "Decimal"], "enum": ["Double", "Long", "Decimal"] }, "LeaderboardPositionDto": { "type": "object", "additionalProperties": false, "required": ["rank", "amount", "initialAmount", "minAmount", "upcomingRank"], "properties": { "rank": { "type": "integer", "description": "Current rank of the player (-1 if not on leaderboard)", "format": "int32" }, "amount": { "type": "number", "description": "Current score of the player (0 if not on leaderboard)", "format": "double" }, "initialAmount": { "type": "number", "description": "The starting amount of the leaderboard entry for interval based leaderboards", "format": "double" }, "minAmount": { "type": "number", "description": "The minimum amount required to be on the leaderboard. If this is a time based leaderboard,\nthis score is instead required on the normal leaderboard before the player can be on the\ntime based leaderboard", "format": "double" }, "upcomingRank": { "type": "integer", "description": "The starting rank of the returned upcoming players list", "format": "int32" }, "upcomingPlayers": { "type": "array", "description": "List of upcoming players", "nullable": true, "items": { "$ref": "#/components/schemas/LeaderboardEntryWithRankDto" } }, "previous": { "type": "array", "description": "List of previous players", "nullable": true, "items": { "$ref": "#/components/schemas/LeaderboardEntryDto" } }, "disabled": { "type": "boolean", "description": "True if endpoint was disabled for this request", "nullable": true } } }, "LeaderboardEntryWithRankDto": { "type": "object", "additionalProperties": false, "required": ["uuid", "amount", "removed", "initialAmount", "rank"], "properties": { "ign": { "type": "string", "description": "Player's IGN if player leaderboard", "nullable": true }, "profile": { "type": "string", "description": "Player's profile name if player leaderboard", "nullable": true }, "uuid": { "type": "string", "description": "Uuid of the player or profile" }, "amount": { "type": "number", "description": "Score of the entry", "format": "double" }, "removed": { "type": "boolean" }, "initialAmount": { "type": "number", "description": "Initial score of the entry", "format": "double" }, "mode": { "type": "string", "description": "Game mode of the entry. Classic profiles are considered default/null.", "nullable": true }, "members": { "type": "array", "nullable": true, "items": { "$ref": "#/components/schemas/ProfileLeaderboardMemberDto" } }, "meta": { "description": "Metadata of the entry", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/MemberCosmeticsDto" } ] }, "rank": { "type": "integer", "format": "int32" } } }, "GetMultiplePlayerRanksRequest": { "type": "object", "additionalProperties": false }, "LeaderboardRanksResponse": { "type": "object", "additionalProperties": false, "required": ["ranks"], "properties": { "ranks": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/PlayerLeaderboardEntryWithRankDto" } } } }, "PlayerLeaderboardEntryWithRankDto": { "type": "object", "additionalProperties": false, "required": ["title", "slug", "rank", "amount", "initialAmount", "type"], "properties": { "title": { "type": "string" }, "short": { "type": "string", "nullable": true }, "slug": { "type": "string" }, "profile": { "type": "boolean", "nullable": true }, "rank": { "type": "integer", "format": "int32" }, "intervalIdentifier": { "type": "string", "nullable": true }, "amount": { "type": "number", "format": "double" }, "initialAmount": { "type": "number", "format": "double" }, "type": { "$ref": "#/components/schemas/LeaderboardScoreDataType" } } }, "LeaderboardRanksRequest": { "type": "object", "additionalProperties": false }, "GetPlayerRankRequest": { "type": "object", "additionalProperties": false }, "LeaderboardPositionsDto": { "type": "object", "additionalProperties": false, "required": ["misc", "skills", "collections", "pests", "profile"], "properties": { "misc": { "type": "object", "additionalProperties": { "type": "integer", "format": "int32" } }, "skills": { "type": "object", "additionalProperties": { "type": "integer", "format": "int32" } }, "collections": { "type": "object", "additionalProperties": { "type": "integer", "format": "int32" } }, "pests": { "type": "object", "additionalProperties": { "type": "integer", "format": "int32" } }, "profile": { "type": "object", "additionalProperties": { "type": "integer", "format": "int32" } } } }, "GetProfileRankRequest": { "type": "object", "additionalProperties": false }, "GetEntitlementsRequest": { "type": "object", "additionalProperties": false }, "UserEntitlementRequest": { "type": "object", "additionalProperties": false }, "UpsertTebexProductSettingsRequest": { "type": "object", "additionalProperties": false, "required": ["enabled", "supportsGifting"], "properties": { "enabled": { "type": "boolean" }, "supportsGifting": { "type": "boolean" }, "config": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexProductConfig" } ] } } }, "TebexCheckoutResponseDto": { "type": "object", "additionalProperties": false, "required": ["orderId", "provider", "status"], "properties": { "orderId": { "type": "string", "format": "guid" }, "provider": { "type": "string" }, "status": { "type": "string" }, "checkoutIdent": { "type": "string", "nullable": true }, "checkoutUrl": { "type": "string", "nullable": true }, "authUrl": { "type": "string", "nullable": true }, "currency": { "type": "string", "nullable": true }, "totalPrice": { "type": "number", "format": "decimal", "nullable": true }, "expiresAt": { "type": "string", "format": "date-time", "nullable": true } } }, "CreateTebexCheckoutRequest": { "type": "object", "additionalProperties": false, "required": ["items"], "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/CheckoutItemDto" } }, "recipient": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/CheckoutRecipientDto" } ] }, "creatorCode": { "type": "string", "nullable": true }, "country": { "type": "string", "nullable": true }, "fingerprint": { "type": "string", "nullable": true } } }, "CheckoutItemDto": { "type": "object", "additionalProperties": false, "required": ["productId", "quantity"], "properties": { "productId": { "type": "string" }, "quantity": { "type": "integer", "format": "int32" } } }, "CheckoutRecipientDto": { "type": "object", "additionalProperties": false, "properties": { "mode": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/TebexRecipientMode" } ] }, "playerUuidOrIgn": { "type": "string", "nullable": true }, "guildId": { "type": "integer", "format": "uint64", "nullable": true }, "message": { "type": "string", "nullable": true } } }, "TebexCurrentCheckoutDto": { "type": "object", "additionalProperties": false, "required": ["orderId", "provider", "status", "paymentStarted", "canMutate", "checkoutRequest"], "properties": { "orderId": { "type": "string", "format": "guid" }, "provider": { "type": "string" }, "status": { "type": "string" }, "providerStatus": { "type": "string", "nullable": true }, "checkoutIdent": { "type": "string", "nullable": true }, "checkoutUrl": { "type": "string", "nullable": true }, "authUrl": { "type": "string", "nullable": true }, "currency": { "type": "string", "nullable": true }, "totalPrice": { "type": "number", "format": "decimal", "nullable": true }, "expiresAt": { "type": "string", "format": "date-time", "nullable": true }, "paymentStarted": { "type": "boolean" }, "canMutate": { "type": "boolean" }, "checkoutRequest": { "$ref": "#/components/schemas/CreateTebexCheckoutRequest" } } }, "GetNotificationsResponse": { "type": "object", "additionalProperties": false, "required": ["notifications", "unreadCount"], "properties": { "notifications": { "type": "array", "items": { "$ref": "#/components/schemas/NotificationDto" } }, "unreadCount": { "type": "integer", "format": "int32" } } }, "NotificationDto": { "type": "object", "additionalProperties": false, "required": ["id", "type", "title", "isRead", "createdAt"], "properties": { "id": { "type": "integer", "format": "int64" }, "type": { "$ref": "#/components/schemas/NotificationType" }, "title": { "type": "string" }, "message": { "type": "string", "nullable": true }, "link": { "type": "string", "nullable": true }, "isRead": { "type": "boolean" }, "createdAt": { "type": "string", "format": "date-time" }, "data": { "type": "object", "nullable": true, "additionalProperties": {} } } }, "NotificationType": { "type": "string", "description": "", "enum": [ "system", "guideApproved", "guideEditApproved", "guideRejected", "guideDeleted", "commentApproved", "commentEditApproved", "commentRejected", "newComment", "newReply", "shopPurchase", "guideSubmitted", "shopRefund", "giftReceived", "giftReassignable", "giftClaimed" ] }, "GetNotificationsRequest": { "type": "object", "additionalProperties": false }, "OrderStatusDto": { "type": "object", "description": "Response for querying order status.", "additionalProperties": false, "required": ["orderId", "status", "provider", "accessGranted", "orderDate"], "properties": { "orderId": { "type": "string", "format": "guid" }, "status": { "type": "string" }, "provider": { "type": "string" }, "providerStatus": { "type": "string", "nullable": true }, "transactionId": { "type": "string", "nullable": true }, "basketIdent": { "type": "string", "nullable": true }, "checkoutUrl": { "type": "string", "nullable": true }, "recurringReference": { "type": "string", "nullable": true }, "accessGranted": { "type": "boolean" }, "orderDate": { "type": "string", "format": "date-time" }, "completedAt": { "type": "string", "format": "date-time", "nullable": true } } }, "LinkedAccountsDto": { "type": "object", "additionalProperties": false, "required": ["players"], "properties": { "selectedUuid": { "type": "string", "nullable": true }, "players": { "type": "array", "items": { "$ref": "#/components/schemas/PlayerDataDto" } } } }, "ProfileMemberDto": { "type": "object", "additionalProperties": false, "required": [ "profileId", "playerUuid", "profileName", "api", "skyblockXp", "socialXp", "purse", "bankBalance", "personalBank", "networth", "collections", "collectionTiers", "craftedMinions", "sacks", "pets", "unparsed", "jacob", "farmingWeight", "skills", "memberData", "chocolateFactory", "events", "inventories", "isSelected", "wasRemoved", "lastUpdated", "lastDataChanged" ], "properties": { "profileId": { "type": "string" }, "playerUuid": { "type": "string" }, "profileName": { "type": "string" }, "api": { "$ref": "#/components/schemas/ApiAccessDto" }, "skyblockXp": { "type": "integer", "format": "int32" }, "socialXp": { "type": "number", "format": "double" }, "purse": { "type": "number", "format": "double" }, "bankBalance": { "type": "number", "format": "double" }, "personalBank": { "type": "number", "format": "double" }, "networth": { "$ref": "#/components/schemas/ProfileMemberNetworthDto" }, "meta": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/MemberCosmeticsDto" } ] }, "collections": { "type": "object", "additionalProperties": { "type": "integer", "format": "int64" } }, "collectionTiers": { "type": "object", "additionalProperties": { "type": "integer", "format": "int32" } }, "craftedMinions": { "type": "object", "additionalProperties": { "type": "integer", "format": "int32" } }, "sacks": { "type": "object", "additionalProperties": { "type": "integer", "format": "int64" } }, "pets": { "type": "array", "items": { "$ref": "#/components/schemas/PetDto" } }, "unparsed": { "$ref": "#/components/schemas/UnparsedApiDataDto" }, "jacob": { "$ref": "#/components/schemas/JacobDataDto" }, "farmingWeight": { "$ref": "#/components/schemas/FarmingWeightDto" }, "garden": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/GardenDto" } ] }, "skills": { "$ref": "#/components/schemas/SkillsDto" }, "memberData": { "$ref": "#/components/schemas/ProfileMemberDataDto" }, "chocolateFactory": { "$ref": "#/components/schemas/ChocolateFactoryDto" }, "events": { "type": "array", "items": { "$ref": "#/components/schemas/ProfileEventMemberDto" } }, "inventories": { "type": "array", "items": { "$ref": "#/components/schemas/HypixelInventoryOverviewDto" } }, "isSelected": { "type": "boolean" }, "wasRemoved": { "type": "boolean" }, "lastUpdated": { "type": "integer", "format": "int64" }, "lastDataChanged": { "type": "integer", "format": "int64" } } }, "ApiAccessDto": { "type": "object", "additionalProperties": false, "required": ["inventories", "collections", "skills", "vault", "museum"], "properties": { "inventories": { "type": "boolean" }, "collections": { "type": "boolean" }, "skills": { "type": "boolean" }, "vault": { "type": "boolean" }, "museum": { "type": "boolean" } } }, "ProfileMemberNetworthDto": { "type": "object", "additionalProperties": false, "required": ["normal", "liquid", "functional", "liquidFunctional"], "properties": { "normal": { "type": "number", "format": "double" }, "liquid": { "type": "number", "format": "double" }, "functional": { "type": "number", "format": "double" }, "liquidFunctional": { "type": "number", "format": "double" } } }, "PetDto": { "type": "object", "additionalProperties": false, "required": ["type", "exp", "active", "candyUsed", "level"], "properties": { "uuid": { "type": "string", "nullable": true }, "type": { "type": "string" }, "exp": { "type": "number", "format": "double" }, "active": { "type": "boolean" }, "tier": { "type": "string", "nullable": true }, "heldItem": { "type": "string", "nullable": true }, "candyUsed": { "type": "integer" }, "skin": { "type": "string", "nullable": true }, "level": { "type": "integer", "format": "int32" } } }, "UnparsedApiDataDto": { "type": "object", "additionalProperties": false, "required": ["copper", "consumed", "dnaMilestone", "levelCaps"], "properties": { "copper": { "type": "integer", "format": "int32" }, "consumed": { "type": "object", "additionalProperties": { "type": "integer", "format": "int32" } }, "exportedCrops": { "type": "object", "nullable": true, "additionalProperties": { "type": "boolean" } }, "dnaMilestone": { "type": "integer", "format": "int32" }, "levelCaps": { "type": "object", "additionalProperties": { "type": "integer", "format": "int32" } }, "perks": { "type": "object", "nullable": true, "additionalProperties": { "type": "integer", "format": "int32" } }, "tempStatBuffs": { "type": "array", "nullable": true, "items": { "$ref": "#/components/schemas/TempStatBuffResponse" } }, "accessoryBagSettings": { "nullable": true }, "bestiary": { "nullable": true }, "dungeons": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/RawDungeonsResponse" } ] } } }, "TempStatBuffResponse": { "type": "object", "additionalProperties": false, "required": ["stat", "amount", "expire_at"], "properties": { "stat": { "type": "integer", "format": "int32" }, "key": { "type": "string", "nullable": true }, "amount": { "type": "integer", "format": "int32" }, "expire_at": { "type": "integer", "format": "int64" } } }, "RawDungeonsResponse": { "type": "object", "additionalProperties": false, "required": ["secrets"], "properties": { "dungeon_types": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/DungeonTypes" } ] }, "player_classes": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/DungeonPlayerClasses" } ] }, "secrets": { "type": "integer", "format": "int64" } } }, "DungeonTypes": { "type": "object", "additionalProperties": false, "required": ["catacombs", "master_catacombs"], "properties": { "catacombs": { "$ref": "#/components/schemas/DungeonData" }, "master_catacombs": { "$ref": "#/components/schemas/DungeonData" } } }, "DungeonData": { "type": "object", "additionalProperties": false, "required": [ "experience", "highest_tier_completed", "tier_completions", "times_played", "best_score", "mobs_killed", "most_mobs_killed", "watcher_kills", "most_healing", "fastest_time", "fastest_time_s", "fastest_time_s_plus", "most_damage_tank", "most_damage_mage", "most_damage_healer", "most_damage_archer", "milestone_completions" ], "properties": { "experience": { "type": "number", "format": "double" }, "highest_tier_completed": { "type": "integer", "format": "int32" }, "tier_completions": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "times_played": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "best_score": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "mobs_killed": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "most_mobs_killed": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "watcher_kills": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "most_healing": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "fastest_time": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "fastest_time_s": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "fastest_time_s_plus": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "most_damage_tank": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "most_damage_mage": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "most_damage_healer": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "most_damage_archer": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "milestone_completions": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } } } }, "DungeonPlayerClasses": { "type": "object", "additionalProperties": false, "required": ["healer", "mage", "berserk", "archer", "tank"], "properties": { "healer": { "$ref": "#/components/schemas/DungeonClassData" }, "mage": { "$ref": "#/components/schemas/DungeonClassData" }, "berserk": { "$ref": "#/components/schemas/DungeonClassData" }, "archer": { "$ref": "#/components/schemas/DungeonClassData" }, "tank": { "$ref": "#/components/schemas/DungeonClassData" } } }, "DungeonClassData": { "type": "object", "additionalProperties": false, "required": ["experience"], "properties": { "experience": { "type": "number", "format": "double" } } }, "JacobDataDto": { "type": "object", "additionalProperties": false, "required": ["medals", "earnedMedals", "perks", "stats", "participations", "firstPlaceScores", "contests"], "properties": { "medals": { "$ref": "#/components/schemas/MedalInventoryDto" }, "earnedMedals": { "$ref": "#/components/schemas/EarnedMedalInventoryDto" }, "perks": { "$ref": "#/components/schemas/JacobPerksDto" }, "stats": { "$ref": "#/components/schemas/JacobStatsDto" }, "participations": { "type": "integer", "format": "int32" }, "firstPlaceScores": { "type": "integer", "format": "int32" }, "contests": { "type": "array", "items": { "$ref": "#/components/schemas/ContestParticipationDto" } } } }, "MedalInventoryDto": { "type": "object", "additionalProperties": false, "required": ["bronze", "silver", "gold"], "properties": { "bronze": { "type": "integer", "format": "int32" }, "silver": { "type": "integer", "format": "int32" }, "gold": { "type": "integer", "format": "int32" } } }, "EarnedMedalInventoryDto": { "type": "object", "additionalProperties": false, "required": ["bronze", "silver", "gold", "platinum", "diamond"], "properties": { "bronze": { "type": "integer", "format": "int32" }, "silver": { "type": "integer", "format": "int32" }, "gold": { "type": "integer", "format": "int32" }, "platinum": { "type": "integer", "format": "int32" }, "diamond": { "type": "integer", "format": "int32" } } }, "JacobPerksDto": { "type": "object", "additionalProperties": false, "required": ["doubleDrops", "levelCap", "personalBests"], "properties": { "doubleDrops": { "type": "integer", "format": "int32" }, "levelCap": { "type": "integer", "format": "int32" }, "personalBests": { "type": "boolean" } } }, "JacobStatsDto": { "type": "object", "additionalProperties": false, "required": ["brackets", "personalBests", "crops"], "properties": { "brackets": { "type": "object", "x-dictionaryKey": { "$ref": "#/components/schemas/Crop" }, "additionalProperties": { "$ref": "#/components/schemas/ContestMedal" } }, "personalBests": { "type": "object", "x-dictionaryKey": { "$ref": "#/components/schemas/Crop" }, "additionalProperties": { "type": "integer", "format": "int64" } }, "crops": { "type": "object", "x-dictionaryKey": { "$ref": "#/components/schemas/Crop" }, "additionalProperties": { "$ref": "#/components/schemas/JacobCropStatsDto" } } } }, "JacobCropStatsDto": { "type": "object", "additionalProperties": false, "required": ["participations", "firstPlaceScores", "medals"], "properties": { "participations": { "type": "integer", "format": "int32" }, "firstPlaceScores": { "type": "integer", "format": "int32" }, "personalBestTimestamp": { "type": "integer", "format": "int32", "nullable": true }, "medals": { "$ref": "#/components/schemas/EarnedMedalInventoryDto" } } }, "FarmingWeightDto": { "type": "object", "additionalProperties": false, "required": ["totalWeight", "cropWeight", "bonusWeight", "uncountedCrops", "pests", "lastUpdated"], "properties": { "totalWeight": { "type": "number", "format": "double" }, "crops": { "type": "object", "nullable": true, "additionalProperties": { "type": "integer", "format": "int64" } }, "cropWeight": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "bonusWeight": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "uncountedCrops": { "type": "object", "additionalProperties": { "type": "integer", "format": "int32" } }, "pests": { "$ref": "#/components/schemas/PestsDto" }, "inventory": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/FarmingInventoryDto" } ] }, "lastUpdated": { "type": "integer", "format": "int64" } } }, "PestsDto": { "type": "object", "additionalProperties": false, "required": [ "beetle", "cricket", "fly", "locust", "mite", "mosquito", "moth", "rat", "slug", "earthworm", "mouse", "dragonfly", "firefly", "mantis" ], "properties": { "beetle": { "type": "integer", "format": "int32" }, "cricket": { "type": "integer", "format": "int32" }, "fly": { "type": "integer", "format": "int32" }, "locust": { "type": "integer", "format": "int32" }, "mite": { "type": "integer", "format": "int32" }, "mosquito": { "type": "integer", "format": "int32" }, "moth": { "type": "integer", "format": "int32" }, "rat": { "type": "integer", "format": "int32" }, "slug": { "type": "integer", "format": "int32" }, "earthworm": { "type": "integer", "format": "int32" }, "mouse": { "type": "integer", "format": "int32" }, "dragonfly": { "type": "integer", "format": "int32" }, "firefly": { "type": "integer", "format": "int32" }, "mantis": { "type": "integer", "format": "int32" } } }, "FarmingInventoryDto": { "type": "object", "additionalProperties": false, "required": ["armor", "tools", "equipment", "accessories"], "properties": { "armor": { "type": "array", "items": { "$ref": "#/components/schemas/ItemDto" } }, "tools": { "type": "array", "items": { "$ref": "#/components/schemas/ItemDto" } }, "equipment": { "type": "array", "items": { "$ref": "#/components/schemas/ItemDto" } }, "accessories": { "type": "array", "items": { "$ref": "#/components/schemas/ItemDto" } } } }, "ItemDto": { "type": "object", "additionalProperties": false, "required": ["id", "count", "damage"], "properties": { "id": { "type": "integer", "description": "Old Minecraft id of the item", "format": "int32" }, "count": { "type": "integer", "description": "Minecraft stack count of the item", "format": "byte" }, "damage": { "type": "integer", "description": "Minecraft damage value of the item" }, "skyblockId": { "type": "string", "description": "Skyblock ID of the item", "nullable": true }, "uuid": { "type": "string", "description": "Item UUID to uniquely identify a specific instance of this item", "nullable": true }, "name": { "type": "string", "description": "Item name, first line of the lore", "nullable": true }, "lore": { "type": "array", "description": "List of item lore in order", "nullable": true, "items": { "type": "string" } }, "enchantments": { "type": "object", "description": "Applied enchantments with their levels", "nullable": true, "additionalProperties": { "type": "integer", "format": "int32" } }, "attributes": { "description": "ExtraAttributes not included elsewhere", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ItemAttributes" } ] }, "itemAttributes": { "type": "object", "description": "ExtraAtrributes.Attributes for attribute shards", "nullable": true, "additionalProperties": { "type": "string" } }, "gems": { "type": "object", "description": "Applied gems with gem rarity, null for an unlocked gem slot without a gem", "nullable": true, "additionalProperties": { "type": "string", "nullable": true } }, "petInfo": { "description": "Pet info if item is a pet", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ItemPetInfoDto" } ] }, "imageUrl": { "type": "string", "description": "Image url for the item", "nullable": true }, "textureId": { "type": "string", "description": "Texture id for the item, used to look up the image in our image service", "nullable": true }, "slot": { "type": "string", "description": "Slot identifier where the item was located, if applicable", "nullable": true } } }, "ItemAttributes": { "type": "object", "additionalProperties": {}, "properties": { "runes": { "type": "object", "nullable": true, "additionalProperties": { "type": "integer", "format": "int32" } }, "effects": { "type": "array", "nullable": true, "items": { "$ref": "#/components/schemas/ItemEffectAttribute" } }, "necromancer_souls": { "type": "array", "nullable": true, "items": { "$ref": "#/components/schemas/ItemSoulAttribute" } }, "hook": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ItemRodPartAttribute" } ] }, "line": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ItemRodPartAttribute" } ] }, "sinker": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ItemRodPartAttribute" } ] }, "ability_scroll": { "type": "array", "nullable": true, "items": { "type": "string" } }, "inventory_data": { "type": "object", "nullable": true, "additionalProperties": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ItemDto" } ] } } } }, "ItemEffectAttribute": { "type": "object", "additionalProperties": false, "required": ["level", "duration_ticks"], "properties": { "level": { "type": "integer", "format": "int32" }, "effect": { "type": "string", "nullable": true }, "duration_ticks": { "type": "integer", "format": "int32" } } }, "ItemSoulAttribute": { "type": "object", "additionalProperties": false, "properties": { "mob_id": { "type": "string", "nullable": true }, "dropped_instance_id": { "type": "string", "nullable": true }, "dropped_mode_id": { "type": "string", "nullable": true } } }, "ItemRodPartAttribute": { "type": "object", "additionalProperties": false, "required": ["donated_museum"], "properties": { "part": { "type": "string", "nullable": true }, "donated_museum": { "type": "boolean" } } }, "ItemPetInfoDto": { "type": "object", "additionalProperties": {}, "required": ["type", "active", "exp", "level", "tier", "candyUsed"], "properties": { "type": { "type": "string" }, "active": { "type": "boolean" }, "exp": { "type": "number", "format": "decimal" }, "level": { "type": "integer", "format": "int32" }, "tier": { "type": "string" }, "candyUsed": { "type": "integer", "format": "int32" }, "heldItem": { "type": "string", "nullable": true }, "skin": { "type": "string", "nullable": true } } }, "SkillsDto": { "type": "object", "additionalProperties": false, "required": [ "farming", "mining", "combat", "foraging", "fishing", "enchanting", "alchemy", "carpentry", "runecrafting", "taming", "social", "hunting" ], "properties": { "farming": { "type": "number", "format": "double" }, "mining": { "type": "number", "format": "double" }, "combat": { "type": "number", "format": "double" }, "foraging": { "type": "number", "format": "double" }, "fishing": { "type": "number", "format": "double" }, "enchanting": { "type": "number", "format": "double" }, "alchemy": { "type": "number", "format": "double" }, "carpentry": { "type": "number", "format": "double" }, "runecrafting": { "type": "number", "format": "double" }, "taming": { "type": "number", "format": "double" }, "social": { "type": "number", "format": "double" }, "hunting": { "type": "number", "format": "double" } } }, "ProfileMemberDataDto": { "type": "object", "additionalProperties": false, "required": ["attributes", "capturedShards", "garden"], "properties": { "attributes": { "type": "object", "additionalProperties": { "type": "integer", "format": "int32" } }, "capturedShards": { "type": "array", "items": { "$ref": "#/components/schemas/ProfileMemberShardDataDto" } }, "garden": { "$ref": "#/components/schemas/ProfileMemberGardenDataDto" } } }, "ProfileMemberShardDataDto": { "type": "object", "additionalProperties": false, "required": ["type", "amount", "capturedAt"], "properties": { "type": { "type": "string" }, "amount": { "type": "integer", "format": "int32" }, "capturedAt": { "type": "integer", "format": "int64" } } }, "ProfileMemberGardenDataDto": { "type": "object", "additionalProperties": false, "required": ["copper", "dnaMilestone", "mutations"], "properties": { "copper": { "type": "integer", "format": "int32" }, "dnaMilestone": { "type": "integer", "format": "int32" }, "chips": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ProfileMemberGardenChipsDataDto" } ] }, "mutations": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/ProfileMemberMutationDataDto" } } } }, "ProfileMemberGardenChipsDataDto": { "type": "object", "additionalProperties": false, "properties": { "cropshot": { "type": "integer", "format": "int32", "nullable": true }, "sowledge": { "type": "integer", "format": "int32", "nullable": true }, "hypercharge": { "type": "integer", "format": "int32", "nullable": true }, "quickdraw": { "type": "integer", "format": "int32", "nullable": true }, "mechamind": { "type": "integer", "format": "int32", "nullable": true }, "overdrive": { "type": "integer", "format": "int32", "nullable": true }, "synthesis": { "type": "integer", "format": "int32", "nullable": true }, "verminVaporizer": { "type": "integer", "format": "int32", "nullable": true }, "evergreen": { "type": "integer", "format": "int32", "nullable": true }, "rarefinder": { "type": "integer", "format": "int32", "nullable": true } } }, "ProfileMemberMutationDataDto": { "type": "object", "additionalProperties": false, "required": ["analyzed", "discovered"], "properties": { "analyzed": { "type": "boolean" }, "discovered": { "type": "boolean" } } }, "ChocolateFactoryDto": { "type": "object", "additionalProperties": false, "required": [ "chocolate", "totalChocolate", "chocolateSincePrestige", "chocolateSpent", "prestige", "lastViewed", "uniqueRabbits", "totalRabbits", "unlockedZorro", "refinedTrufflesConsumed", "cocoaFortuneUpgrades" ], "properties": { "chocolate": { "type": "integer", "format": "int64" }, "totalChocolate": { "type": "integer", "format": "int64" }, "chocolateSincePrestige": { "type": "integer", "format": "int64" }, "chocolateSpent": { "type": "integer", "format": "int64" }, "prestige": { "type": "integer", "format": "int32" }, "lastViewed": { "type": "integer", "format": "int64" }, "uniqueRabbits": { "$ref": "#/components/schemas/ChocolateFactoryRabbitsDto" }, "totalRabbits": { "$ref": "#/components/schemas/ChocolateFactoryRabbitsDto" }, "unlockedZorro": { "type": "boolean" }, "refinedTrufflesConsumed": { "type": "integer", "format": "int32" }, "cocoaFortuneUpgrades": { "type": "integer", "format": "int32" } } }, "ChocolateFactoryRabbitsDto": { "type": "object", "additionalProperties": false, "required": ["common", "uncommon", "rare", "epic", "legendary", "mythic", "divine"], "properties": { "common": { "type": "integer", "format": "int32" }, "uncommon": { "type": "integer", "format": "int32" }, "rare": { "type": "integer", "format": "int32" }, "epic": { "type": "integer", "format": "int32" }, "legendary": { "type": "integer", "format": "int32" }, "mythic": { "type": "integer", "format": "int32" }, "divine": { "type": "integer", "format": "int32" } } }, "ProfileEventMemberDto": { "type": "object", "additionalProperties": false, "required": ["eventId", "eventName", "status", "rank"], "properties": { "eventId": { "type": "string" }, "eventName": { "type": "string" }, "teamId": { "type": "string", "nullable": true }, "status": { "$ref": "#/components/schemas/EventMemberStatus" }, "rank": { "type": "integer", "description": "Currently not populated", "format": "int32" }, "score": { "type": "string", "nullable": true } } }, "HypixelInventoryOverviewDto": { "type": "object", "additionalProperties": false, "required": ["id", "name"], "properties": { "id": { "type": "string", "format": "guid" }, "name": { "type": "string", "maxLength": 64 }, "metadata": { "type": "object", "nullable": true, "additionalProperties": { "type": "string" } } } }, "GetProfileAuctionsResponse": { "type": "object", "additionalProperties": false, "required": ["ended"], "properties": { "ended": { "type": "array", "description": "Ended auctions", "items": { "$ref": "#/components/schemas/AuctionDto" } } } }, "AuctionDto": { "type": "object", "additionalProperties": false, "required": [ "auctionId", "sellerUuid", "sellerProfileUuid", "start", "end", "soldAt", "price", "count", "bin", "variantKey", "lastUpdatedAt", "startingBid" ], "properties": { "auctionId": { "type": "string", "format": "guid" }, "sellerUuid": { "type": "string", "format": "guid" }, "sellerProfileUuid": { "type": "string", "format": "guid" }, "seller": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/AccountMetaDto" } ] }, "buyerUuid": { "type": "string", "format": "guid", "nullable": true }, "buyerProfileUuid": { "type": "string", "format": "guid", "nullable": true }, "buyer": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/AccountMetaDto" } ] }, "start": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" }, "soldAt": { "type": "integer", "format": "int64" }, "price": { "type": "integer", "format": "int64" }, "count": { "type": "integer" }, "bin": { "type": "boolean" }, "skyblockId": { "type": "string", "nullable": true }, "variantKey": { "type": "string" }, "itemUuid": { "type": "string", "nullable": true }, "item": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ItemDto" } ] }, "lastUpdatedAt": { "type": "string", "format": "date-time" }, "startingBid": { "type": "integer", "format": "int64" }, "highestBid": { "type": "integer", "format": "int64", "nullable": true } } }, "AccountMetaDto": { "type": "object", "additionalProperties": false, "required": ["id", "name", "formattedName"], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "formattedName": { "type": "string" } } }, "GetProfileAuctionsRequest": { "type": "object", "additionalProperties": false }, "HypixelInventoryDto": { "type": "object", "additionalProperties": false, "required": ["id", "name", "items"], "properties": { "id": { "type": "string", "format": "guid" }, "name": { "type": "string", "maxLength": 64 }, "items": { "type": "object", "description": "Dictionary of slot to item mapping, null if the slot is empty", "additionalProperties": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ItemDto" } ] } }, "metadata": { "type": "object", "nullable": true, "additionalProperties": { "type": "string" } } } }, "GetProfileInventoryRequest": { "type": "object", "additionalProperties": false }, "ProfileNamesDto": { "type": "object", "additionalProperties": false, "required": ["id", "name", "selected"], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "selected": { "type": "boolean" } } }, "NetworthBreakdown": { "type": "object", "additionalProperties": false, "required": [ "networth", "liquidNetworth", "functionalNetworth", "liquidFunctionalNetworth", "purse", "bank", "personalBank", "categories" ], "properties": { "networth": { "type": "number", "format": "double" }, "liquidNetworth": { "type": "number", "format": "double" }, "functionalNetworth": { "type": "number", "format": "double" }, "liquidFunctionalNetworth": { "type": "number", "format": "double" }, "purse": { "type": "number", "format": "double" }, "bank": { "type": "number", "format": "double" }, "personalBank": { "type": "number", "format": "double" }, "categories": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/NetworthCategory" } } } }, "NetworthCategory": { "type": "object", "additionalProperties": false, "required": ["total", "liquidTotal", "functionalTotal", "liquidFunctionalTotal", "items"], "properties": { "total": { "type": "number", "format": "double" }, "liquidTotal": { "type": "number", "format": "double" }, "functionalTotal": { "type": "number", "format": "double" }, "liquidFunctionalTotal": { "type": "number", "format": "double" }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/NetworthResult" } } } }, "NetworthResult": { "type": "object", "additionalProperties": false, "required": [ "basePrice", "price", "networth", "soulbound", "cosmetic", "liquidNetworth", "functionalNetworth", "liquidFunctionalNetworth", "cosmeticValue", "illiquidValue" ], "properties": { "item": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/NetworthItemSimple" } ] }, "basePrice": { "type": "number", "format": "double" }, "price": { "type": "number", "format": "double" }, "networth": { "type": "number", "format": "double" }, "calculation": { "type": "array", "nullable": true, "items": { "$ref": "#/components/schemas/NetworthCalculation" } }, "soulbound": { "type": "boolean" }, "cosmetic": { "type": "boolean" }, "liquidNetworth": { "type": "number", "format": "double" }, "functionalNetworth": { "type": "number", "format": "double" }, "liquidFunctionalNetworth": { "type": "number", "format": "double" }, "cosmeticValue": { "type": "number", "format": "double" }, "illiquidValue": { "type": "number", "format": "double" } } }, "NetworthItemSimple": { "type": "object", "additionalProperties": false, "required": ["count", "damage"], "properties": { "skyblockId": { "type": "string", "nullable": true }, "name": { "type": "string", "nullable": true }, "slot": { "type": "string", "nullable": true }, "count": { "type": "integer", "format": "int32" }, "damage": { "type": "integer" }, "uuid": { "type": "string", "nullable": true } } }, "NetworthCalculation": { "type": "object", "additionalProperties": false, "required": ["id", "type", "value", "count"], "properties": { "id": { "type": "string" }, "type": { "type": "string" }, "value": { "type": "number", "format": "double" }, "count": { "type": "integer", "format": "int32" } } }, "YearlyRecapDto": { "type": "object", "additionalProperties": false, "required": ["playerUuid", "year", "public", "data", "global", "discord"], "properties": { "playerUuid": { "type": "string" }, "year": { "type": "integer", "format": "int32" }, "public": { "type": "boolean" }, "data": { "$ref": "#/components/schemas/YearlyRecapData" }, "global": { "$ref": "#/components/schemas/GlobalRecap" }, "discord": { "$ref": "#/components/schemas/DiscordRecapInfoDto" } } }, "YearlyRecapData": { "type": "object", "additionalProperties": false, "required": [ "player", "profiles", "allProfilesSummary", "contests", "events", "shop", "collections", "pests", "skills", "streak", "leaderboards", "year", "currentProfile" ], "properties": { "player": { "$ref": "#/components/schemas/PlayerRecapInfo" }, "profiles": { "type": "array", "items": { "$ref": "#/components/schemas/ProfileRecapInfo" } }, "allProfilesSummary": { "$ref": "#/components/schemas/AllProfilesSummaryRecap" }, "contests": { "$ref": "#/components/schemas/ContestRecap" }, "events": { "type": "array", "items": { "$ref": "#/components/schemas/EventRecap" } }, "shop": { "$ref": "#/components/schemas/ShopRecap" }, "collections": { "$ref": "#/components/schemas/CollectionRecap" }, "pests": { "$ref": "#/components/schemas/PestRecap" }, "skills": { "$ref": "#/components/schemas/SkillRecap" }, "streak": { "$ref": "#/components/schemas/StreakRecap" }, "leaderboards": { "$ref": "#/components/schemas/LeaderboardRecap" }, "year": { "type": "string" }, "currentProfile": { "type": "string" } } }, "PlayerRecapInfo": { "type": "object", "additionalProperties": false, "required": [ "ign", "uuid", "firstDataPoint", "lastDataPoint", "daysActive", "mostActiveMonth", "farmingWeight" ], "properties": { "ign": { "type": "string" }, "uuid": { "type": "string" }, "firstDataPoint": { "type": "string" }, "lastDataPoint": { "type": "string" }, "daysActive": { "type": "integer", "format": "int32" }, "mostActiveMonth": { "type": "string" }, "farmingWeight": { "$ref": "#/components/schemas/FarmingWeightRecap" } } }, "FarmingWeightRecap": { "type": "object", "additionalProperties": false, "required": ["gained", "total", "averageComparison"], "properties": { "gained": { "type": "number", "format": "double" }, "total": { "type": "number", "format": "double" }, "averageComparison": { "type": "number", "format": "double" } } }, "ProfileRecapInfo": { "type": "object", "additionalProperties": false, "required": ["name", "cuteName", "isMain"], "properties": { "name": { "type": "string" }, "cuteName": { "type": "string" }, "isMain": { "type": "boolean" }, "wiped": { "type": "boolean", "nullable": true } } }, "AllProfilesSummaryRecap": { "type": "object", "additionalProperties": false, "required": ["totalWeightGained", "totalCoinsGained", "wipedProfiles"], "properties": { "totalWeightGained": { "type": "number", "format": "double" }, "totalCoinsGained": { "type": "number", "format": "double" }, "wipedProfiles": { "type": "integer", "format": "int32" } } }, "ContestRecap": { "type": "object", "additionalProperties": false, "required": ["total", "perCrop", "highestPlacements"], "properties": { "total": { "type": "integer", "format": "int32" }, "perCrop": { "type": "object", "additionalProperties": { "type": "integer", "format": "int32" } }, "highestPlacements": { "type": "array", "items": { "$ref": "#/components/schemas/ContestPlacementRecap" } } } }, "ContestPlacementRecap": { "type": "object", "additionalProperties": false, "required": ["crop", "rank", "medal"], "properties": { "crop": { "type": "string" }, "rank": { "type": "integer", "format": "int32" }, "medal": { "type": "string" } } }, "EventRecap": { "type": "object", "additionalProperties": false, "required": ["name", "type", "participated"], "properties": { "name": { "type": "string" }, "type": { "type": "string" }, "participated": { "type": "boolean" }, "rank": { "type": "integer", "format": "int32", "nullable": true }, "score": { "type": "number", "format": "double", "nullable": true }, "banner": { "type": "string", "nullable": true }, "typeLabel": { "type": "string", "nullable": true } } }, "ShopRecap": { "type": "object", "additionalProperties": false, "required": ["hasPurchased"], "properties": { "hasPurchased": { "type": "boolean" } } }, "CollectionRecap": { "type": "object", "additionalProperties": false, "required": ["increases", "globalTotals", "averageComparison", "monthly"], "properties": { "increases": { "type": "object", "additionalProperties": { "type": "integer", "format": "int64" } }, "globalTotals": { "type": "object", "additionalProperties": { "type": "integer", "format": "int64" } }, "averageComparison": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "monthly": { "type": "array", "items": { "$ref": "#/components/schemas/MonthlyStatRecap" } } } }, "MonthlyStatRecap": { "type": "object", "additionalProperties": false, "required": ["month", "amount"], "properties": { "month": { "type": "string" }, "amount": { "type": "number", "format": "double" } } }, "PestRecap": { "type": "object", "additionalProperties": false, "required": ["kills", "breakdown", "globalTotal", "averageComparison", "monthly"], "properties": { "kills": { "type": "integer", "format": "int32" }, "breakdown": { "type": "object", "additionalProperties": { "type": "integer", "format": "int32" } }, "globalTotal": { "type": "integer", "format": "int64" }, "averageComparison": { "type": "number", "format": "double" }, "monthly": { "type": "array", "items": { "$ref": "#/components/schemas/MonthlyStatRecap" } } } }, "SkillRecap": { "type": "object", "additionalProperties": false, "required": ["farmingXp", "breakdown", "globalTotal", "averageComparison"], "properties": { "farmingXp": { "type": "number", "format": "double" }, "breakdown": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "globalTotal": { "type": "number", "format": "double" }, "averageComparison": { "type": "number", "format": "double" } } }, "StreakRecap": { "type": "object", "additionalProperties": false, "required": ["longestStreakHours", "start", "end", "averageDailyDowntime", "sparkline"], "properties": { "longestStreakHours": { "type": "integer", "format": "int32" }, "start": { "type": "integer", "format": "int64" }, "end": { "type": "integer", "format": "int64" }, "averageDailyDowntime": { "type": "number", "format": "double" }, "sparkline": { "type": "array", "items": { "type": "integer", "format": "int64" } } } }, "LeaderboardRecap": { "type": "object", "additionalProperties": false, "required": ["top1000", "monthlyHighs"], "properties": { "top1000": { "type": "array", "items": { "$ref": "#/components/schemas/LeaderboardPlacementRecap" } }, "monthlyHighs": { "type": "array", "items": { "$ref": "#/components/schemas/MonthlyLeaderboardRecap" } } } }, "LeaderboardPlacementRecap": { "type": "object", "additionalProperties": false, "required": ["title", "slug", "rank", "amount"], "properties": { "title": { "type": "string" }, "slug": { "type": "string" }, "rank": { "type": "integer", "format": "int32" }, "amount": { "type": "number", "format": "double" }, "shortTitle": { "type": "string", "nullable": true } } }, "MonthlyLeaderboardRecap": { "type": "object", "additionalProperties": false, "required": ["month", "name", "rank"], "properties": { "month": { "type": "string" }, "name": { "type": "string" }, "rank": { "type": "integer", "format": "int32" } } }, "GlobalRecap": { "type": "object", "additionalProperties": false, "required": [ "totalCrops", "totalXp", "totalPests", "totalFarmingWeight", "trackedPlayers", "bannedWiped", "ironmanToNormal", "crops", "totalCropsBreakdown", "skills", "totalSkillsBreakdown", "pests", "totalPestsBreakdown" ], "properties": { "totalCrops": { "type": "integer", "format": "int64" }, "totalXp": { "type": "number", "format": "double" }, "totalPests": { "type": "integer", "format": "int64" }, "totalFarmingWeight": { "type": "number", "format": "double" }, "trackedPlayers": { "type": "integer", "format": "int32" }, "bannedWiped": { "type": "integer", "format": "int32" }, "ironmanToNormal": { "type": "integer", "format": "int32" }, "crops": { "type": "object", "additionalProperties": { "type": "integer", "format": "int64" } }, "totalCropsBreakdown": { "type": "object", "additionalProperties": { "type": "integer", "format": "int64" } }, "skills": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "totalSkillsBreakdown": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "pests": { "type": "object", "additionalProperties": { "type": "integer", "format": "int64" } }, "totalPestsBreakdown": { "type": "object", "additionalProperties": { "type": "integer", "format": "int64" } } } }, "DiscordRecapInfoDto": { "type": "object", "additionalProperties": false, "required": ["username", "id", "avatar"], "properties": { "username": { "type": "string" }, "id": { "type": "string" }, "avatar": { "type": "string" } } }, "RecapRequest": { "type": "object", "additionalProperties": false }, "GetAuctionResponse": { "type": "object", "additionalProperties": false, "required": ["auction"], "properties": { "auction": { "$ref": "#/components/schemas/AuctionDto" } } }, "ToggleRecapVisibilityRequestBody": { "type": "object", "additionalProperties": false, "required": ["public"], "properties": { "public": { "type": "boolean" } } }, "GetAuctionRequest": { "type": "object", "additionalProperties": false }, "AuctionOverviewResponse": { "type": "object", "additionalProperties": false, "required": ["new", "ended"], "properties": { "new": { "type": "array", "items": { "$ref": "#/components/schemas/AuctionDto" } }, "ended": { "type": "array", "items": { "$ref": "#/components/schemas/AuctionDto" } } } }, "AuctionHouseDto": { "type": "object", "additionalProperties": false, "required": ["items"], "properties": { "items": { "type": "object", "additionalProperties": { "type": "array", "items": { "$ref": "#/components/schemas/AuctionItemDto" } } } } }, "AuctionItemDto": { "type": "object", "additionalProperties": false, "required": [ "skyblockId", "variantKey", "variedBy", "lowest", "lowestVolume", "lowest3Day", "lowest3DayVolume", "lowest7Day", "lowest7DayVolume" ], "properties": { "skyblockId": { "type": "string" }, "variantKey": { "type": "string" }, "variedBy": { "description": "Data used to generate variant key (easier to parse)", "oneOf": [ { "$ref": "#/components/schemas/AuctionItemVariation" } ] }, "lowest": { "type": "number", "description": "Lowest price seen recently (excluding outliers)", "format": "decimal" }, "lowestVolume": { "type": "integer", "description": "Volume of prices used to get the lowest recent price", "format": "int32" }, "lowest3Day": { "type": "number", "description": "Lowest price seen in 3 days (excluding outliers)", "format": "decimal" }, "lowest3DayVolume": { "type": "integer", "description": "Volume of prices used to get the lowest 3 day price", "format": "int32" }, "lowest7Day": { "type": "number", "description": "Lowest price seen in 7 days (excluding outliers)", "format": "decimal" }, "lowest7DayVolume": { "type": "integer", "description": "Volume of prices ued to get lowest 3 day price", "format": "int32" } } }, "AuctionItemVariation": { "type": "object", "additionalProperties": false, "properties": { "rarity": { "type": "string", "nullable": true }, "enchantments": { "type": "object", "nullable": true, "additionalProperties": { "type": "integer", "format": "int32" } }, "pet": { "type": "string", "nullable": true }, "petLevel": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/AuctionItemVariation_PetLevelGroup" } ] }, "itemAttributes": { "type": "object", "nullable": true, "additionalProperties": { "type": "string" } }, "extra": { "type": "object", "nullable": true, "additionalProperties": { "type": "string" } } } }, "AuctionItemVariation_PetLevelGroup": { "type": "object", "additionalProperties": false, "required": ["key", "min", "max"], "properties": { "key": { "type": "string" }, "min": { "type": "integer", "format": "int32" }, "max": { "type": "integer", "format": "int32" } } }, "GetAuctionPriceHistoryResponse": { "type": "object", "additionalProperties": false, "required": ["history"], "properties": { "history": { "type": "array", "items": { "$ref": "#/components/schemas/PriceHistoryDataPoint" } } } }, "PriceHistoryDataPoint": { "type": "object", "additionalProperties": false, "required": ["timestamp", "binListings", "saleAuctions", "itemsSold"], "properties": { "timestamp": { "type": "string", "format": "date-time" }, "lowestBinPrice": { "type": "number", "format": "decimal", "nullable": true }, "averageBinPrice": { "type": "number", "format": "decimal", "nullable": true }, "binListings": { "type": "integer", "format": "int32" }, "lowestSalePrice": { "type": "number", "format": "decimal", "nullable": true }, "averageSalePrice": { "type": "number", "format": "decimal", "nullable": true }, "saleAuctions": { "type": "integer", "format": "int32" }, "itemsSold": { "type": "integer", "format": "int32" } } }, "GetAuctionPriceHistoryRequest": { "type": "object", "additionalProperties": false }, "GetAuctionVariantsResponse": { "type": "object", "additionalProperties": false, "required": ["variants"], "properties": { "variants": { "type": "array", "items": { "$ref": "#/components/schemas/AuctionItemDto" } } } }, "GetAuctionVariantsRequest": { "type": "object", "additionalProperties": false }, "ItemEndedAuctionsRequest": { "type": "object", "additionalProperties": false }, "GetPopularAuctionsResponse": { "type": "object", "additionalProperties": false, "required": ["page", "pageSize", "totalCount", "totalPages", "items"], "properties": { "page": { "type": "integer", "format": "int32" }, "pageSize": { "type": "integer", "format": "int32" }, "totalCount": { "type": "integer", "format": "int64" }, "totalPages": { "type": "integer", "format": "int32" }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/PopularAuctionItemDto" } } } }, "PopularAuctionItemDto": { "type": "object", "additionalProperties": false, "required": ["skyblockId", "itemsSold", "saleAuctions", "binListings"], "properties": { "skyblockId": { "type": "string" }, "name": { "type": "string", "nullable": true }, "itemsSold": { "type": "integer", "format": "int32" }, "saleAuctions": { "type": "integer", "format": "int32" }, "binListings": { "type": "integer", "format": "int32" }, "averageSalePrice": { "type": "number", "format": "decimal", "nullable": true }, "averageBinPrice": { "type": "number", "format": "decimal", "nullable": true }, "lowestSalePrice": { "type": "number", "format": "decimal", "nullable": true }, "lowestBinPrice": { "type": "number", "format": "decimal", "nullable": true } } }, "GetPopularAuctionsRequest": { "type": "object", "additionalProperties": false }, "SearchAuctionItemsResponse": { "type": "object", "additionalProperties": false, "required": ["results"], "properties": { "results": { "type": "array", "items": { "$ref": "#/components/schemas/AuctionItemSearchResult" } } } }, "AuctionItemSearchResult": { "type": "object", "additionalProperties": false, "required": ["skyblockId", "hasVariants", "variantCount", "recentVolume"], "properties": { "skyblockId": { "type": "string" }, "variantKey": { "type": "string", "nullable": true }, "name": { "type": "string", "nullable": true }, "hasVariants": { "type": "boolean" }, "variantCount": { "type": "integer", "format": "int32" }, "recentLowestPrice": { "type": "number", "format": "decimal", "nullable": true }, "recentVolume": { "type": "integer", "format": "int32" } } }, "SearchAuctionItemsRequest": { "type": "object", "additionalProperties": false }, "BazaarOverviewResponse": { "type": "object", "additionalProperties": false, "required": ["topMovers", "mostTraded"], "properties": { "topMovers": { "type": "array", "items": { "$ref": "#/components/schemas/BazaarOverviewItemDto" } }, "mostTraded": { "type": "array", "items": { "$ref": "#/components/schemas/BazaarOverviewItemDto" } } } }, "BazaarOverviewItemDto": { "type": "object", "additionalProperties": false, "required": ["itemId", "summary"], "properties": { "itemId": { "type": "string" }, "name": { "type": "string", "nullable": true }, "category": { "type": "string", "nullable": true }, "summary": { "$ref": "#/components/schemas/BazaarProductSummaryDto" } } }, "BazaarProductSummaryDto": { "type": "object", "additionalProperties": false, "required": [ "npc", "sell", "buy", "sellOrder", "buyOrder", "topBuyOrder", "topSellOrder", "averageSell", "averageBuy", "averageSellOrder", "averageTopSellOrder", "averageBuyOrder", "averageTopBuyOrder" ], "properties": { "name": { "type": "string", "description": "Name of the item if it exists.", "nullable": true }, "npc": { "type": "number", "description": "NPC sell price of the item if it exists.", "format": "double" }, "sell": { "type": "number", "description": "Instant Sell price taken directly from most recently fetched data", "format": "double" }, "buy": { "type": "number", "description": "Instant Buy price taken directly from most recently fetched data", "format": "double" }, "sellOrder": { "type": "number", "description": "Sell Order price calculated from most recently fetched data", "format": "double" }, "buyOrder": { "type": "number", "description": "Buy Order price calculated from most recently fetched data", "format": "double" }, "topBuyOrder": { "type": "number", "description": "Top buy-order price from the current order book", "format": "double" }, "topSellOrder": { "type": "number", "description": "Top sell-order price from the current order book", "format": "double" }, "averageSell": { "type": "number", "description": "Calculated average Instant Sell price that should be more resistant to price fluctuations", "format": "double" }, "averageBuy": { "type": "number", "description": "Calculated average Instant Buy price that should be more resistant to price fluctuations", "format": "double" }, "averageSellOrder": { "type": "number", "description": "Calculated average Sell Order price that should be more resistant to price fluctuations", "format": "double" }, "averageTopSellOrder": { "type": "number", "description": "Calculated average top sell-order price", "format": "double" }, "averageBuyOrder": { "type": "number", "description": "Calculated average Buy Order price that should be more resistant to price fluctuations", "format": "double" }, "averageTopBuyOrder": { "type": "number", "description": "Calculated average top buy-order price", "format": "double" }, "orders": { "description": "Current orders in the bazaar for this item if they exist.", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/BazaarOrders" } ] } } }, "BazaarOrders": { "type": "object", "additionalProperties": false, "properties": { "sellSummary": { "type": "array", "nullable": true, "items": { "$ref": "#/components/schemas/BazaarOrder" } }, "buySummary": { "type": "array", "nullable": true, "items": { "$ref": "#/components/schemas/BazaarOrder" } } } }, "BazaarOrder": { "type": "object", "additionalProperties": false, "required": ["amount", "pricePerUnit", "orders"], "properties": { "amount": { "type": "integer", "format": "int32" }, "pricePerUnit": { "type": "number", "format": "double" }, "orders": { "type": "integer", "format": "int32" } } }, "GetBazaarProductResponse": { "type": "object", "additionalProperties": false, "required": ["productId", "product"], "properties": { "productId": { "type": "string" }, "product": { "$ref": "#/components/schemas/BazaarProductSummaryDto" } } }, "GetBazaarProductRequest": { "type": "object", "additionalProperties": false }, "GetBazaarProductHistoryResponse": { "type": "object", "additionalProperties": false, "required": ["productId", "product", "history"], "properties": { "productId": { "type": "string" }, "product": { "$ref": "#/components/schemas/BazaarProductSummaryDto" }, "history": { "type": "array", "items": { "$ref": "#/components/schemas/BazaarHistoryDataPoint" } } } }, "BazaarHistoryDataPoint": { "type": "object", "additionalProperties": false, "required": [ "timestamp", "instaSellPrice", "instaBuyPrice", "buyOrderPrice", "topBuyOrderPrice", "sellOrderPrice", "topSellOrderPrice" ], "properties": { "timestamp": { "type": "string", "format": "date-time" }, "instaSellPrice": { "type": "number", "format": "double" }, "instaBuyPrice": { "type": "number", "format": "double" }, "buyOrderPrice": { "type": "number", "format": "double" }, "topBuyOrderPrice": { "type": "number", "format": "double" }, "sellOrderPrice": { "type": "number", "format": "double" }, "topSellOrderPrice": { "type": "number", "format": "double" } } }, "GetBazaarProductHistoryRequest": { "type": "object", "additionalProperties": false }, "GetBazaarProductsResponse": { "type": "object", "additionalProperties": false, "required": ["products"], "properties": { "products": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/BazaarProductSummaryDto" } } } }, "SearchBazaarProductsResponse": { "type": "object", "additionalProperties": false, "required": ["products"], "properties": { "products": { "type": "array", "items": { "$ref": "#/components/schemas/BazaarSearchResultDto" } } } }, "BazaarSearchResultDto": { "type": "object", "additionalProperties": false, "required": ["itemId", "summary"], "properties": { "itemId": { "type": "string" }, "name": { "type": "string", "nullable": true }, "category": { "type": "string", "nullable": true }, "summary": { "$ref": "#/components/schemas/BazaarProductSummaryDto" } } }, "SearchBazaarProductsRequest": { "type": "object", "additionalProperties": false }, "SkyblockFiresalesResponse": { "type": "object", "additionalProperties": false, "required": ["firesales"], "properties": { "firesales": { "type": "array", "items": { "$ref": "#/components/schemas/SkyblockFiresaleDto" } } } }, "SkyblockFiresaleDto": { "type": "object", "additionalProperties": false, "required": ["startsAt", "endsAt", "items"], "properties": { "startsAt": { "type": "integer", "format": "int64" }, "endsAt": { "type": "integer", "format": "int64" }, "items": { "type": "array", "items": { "$ref": "#/components/schemas/SkyblockFiresaleItemDto" } } } }, "SkyblockFiresaleItemDto": { "type": "object", "additionalProperties": false, "required": ["itemId", "slotId", "amount", "price", "startsAt", "endsAt"], "properties": { "itemId": { "type": "string" }, "slotId": { "type": "integer", "format": "int32" }, "amount": { "type": "integer", "format": "int32" }, "price": { "type": "integer", "description": "Price in Skyblock Gems", "format": "int32" }, "startsAt": { "type": "integer", "description": "Unix seconds", "format": "int64" }, "endsAt": { "type": "integer", "description": "Unix seconds", "format": "int64" } } }, "SkyblockGemShopsResponse": { "type": "object", "additionalProperties": false, "required": ["firesales", "taylorCollection", "seasonalBundles"], "properties": { "firesales": { "type": "array", "items": { "$ref": "#/components/schemas/SkyblockFiresaleDto" } }, "taylorCollection": { "$ref": "#/components/schemas/TaylorCollection" }, "seasonalBundles": { "$ref": "#/components/schemas/TaylorCollection" } } }, "TaylorCollection": { "type": "object", "additionalProperties": false, "required": ["items"], "properties": { "items": { "type": "array", "items": { "$ref": "#/components/schemas/TaylorCollectionItem" } } } }, "TaylorCollectionItem": { "type": "object", "additionalProperties": false, "required": ["name", "output", "cost", "released"], "properties": { "name": { "type": "string" }, "output": { "type": "array", "items": { "$ref": "#/components/schemas/UpgradeCost" } }, "cost": { "type": "array", "items": { "$ref": "#/components/schemas/UpgradeCost" } }, "released": { "type": "string" } } }, "UpgradeCost": { "type": "object", "additionalProperties": false, "required": ["type", "amount"], "properties": { "type": { "$ref": "#/components/schemas/UpgradeCostType" }, "essence_type": { "type": "string", "nullable": true }, "item_id": { "type": "string", "nullable": true }, "medal_type": { "type": "string", "nullable": true }, "amount": { "type": "integer", "format": "int32" } } }, "UpgradeCostType": { "type": "integer", "description": "", "x-enumNames": [ "Unknown", "Item", "Essence", "Coins", "Motes", "Copper", "Gems", "Bits", "JacobMedal", "Pelts" ], "enum": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] }, "ItemRelatedResponse": { "type": "object", "additionalProperties": false, "required": ["similar"], "properties": { "similar": { "type": "array", "items": { "$ref": "#/components/schemas/ItemResponse" } }, "trends": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ItemTrendDto" } ] } } }, "ItemResponse": { "type": "object", "additionalProperties": {}, "required": [ "durability", "unstackable", "glowing", "npc_sell_price", "can_auction", "can_trade", "can_place", "museum", "generator_tier", "hide_from_viewrecipe_command", "salvagable_from_recipe" ], "properties": { "id": { "type": "string", "nullable": true }, "material": { "type": "string", "nullable": true }, "color": { "type": "string", "nullable": true }, "durability": { "type": "integer", "format": "int32" }, "skin": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ItemSkin" } ] }, "name": { "type": "string", "nullable": true }, "category": { "type": "string", "nullable": true }, "tier": { "type": "string", "nullable": true }, "unstackable": { "type": "boolean" }, "glowing": { "type": "boolean" }, "npc_sell_price": { "type": "number", "format": "double" }, "can_auction": { "type": "boolean" }, "can_trade": { "type": "boolean" }, "can_place": { "type": "boolean" }, "gemstone_slots": { "type": "array", "nullable": true, "items": { "$ref": "#/components/schemas/ItemGemstoneSlot" } }, "requirements": { "type": "array", "nullable": true, "items": { "$ref": "#/components/schemas/ItemRequirement" } }, "museum": { "type": "boolean" }, "museum_data": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ItemMuseumData" } ] }, "stats": { "type": "object", "nullable": true, "additionalProperties": { "type": "number", "format": "double" } }, "generator_tier": { "type": "integer", "format": "int32" }, "dungeon_item_conversion_cost": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/DungeonItemConversionCost" } ] }, "upgrade_costs": { "type": "array", "nullable": true, "items": { "type": "array", "items": { "$ref": "#/components/schemas/UpgradeCosts" } } }, "catacombs_requirements": { "type": "array", "nullable": true, "items": { "$ref": "#/components/schemas/CatacombsRequirements" } }, "hide_from_viewrecipe_command": { "type": "boolean" }, "salvagable_from_recipe": { "type": "boolean" }, "item_specific": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/JsonDocument" } ] } } }, "ItemSkin": { "type": "object", "additionalProperties": false, "properties": { "value": { "type": "string", "nullable": true }, "signature": { "type": "string", "nullable": true } } }, "ItemGemstoneSlot": { "type": "object", "additionalProperties": false, "required": ["costs", "requirements"], "properties": { "slot_type": { "type": "string", "nullable": true }, "costs": { "type": "array", "items": { "$ref": "#/components/schemas/ItemGemstoneSlotCosts" } }, "requirements": { "type": "array", "items": { "$ref": "#/components/schemas/ItemRequirement" } } } }, "ItemGemstoneSlotCosts": { "type": "object", "additionalProperties": {}, "required": ["type", "coins"], "properties": { "type": { "type": "string" }, "item_id": { "type": "string", "nullable": true }, "coins": { "type": "integer", "format": "int32" } } }, "ItemRequirement": { "type": "object", "additionalProperties": {}, "required": ["type", "level"], "properties": { "type": { "type": "string" }, "skill": { "type": "string", "nullable": true }, "data_key": { "type": "string", "nullable": true }, "value": { "type": "string", "nullable": true }, "operator": { "type": "string", "nullable": true }, "level": { "type": "integer", "format": "int32" } } }, "ItemMuseumData": { "type": "object", "additionalProperties": {}, "required": ["donation_xp", "parent"], "properties": { "donation_xp": { "type": "integer", "format": "int32" }, "parent": { "type": "object", "additionalProperties": { "type": "string" } }, "type": { "type": "string", "nullable": true }, "armor_set_donation_xp": { "type": "object", "nullable": true, "additionalProperties": { "type": "integer", "format": "int32" } }, "game_stage": { "type": "string", "nullable": true } } }, "DungeonItemConversionCost": { "type": "object", "additionalProperties": {}, "required": ["amount"], "properties": { "essence_type": { "type": "string", "nullable": true }, "amount": { "type": "integer", "format": "int32" } } }, "UpgradeCosts": { "type": "object", "additionalProperties": {}, "required": ["amount"], "properties": { "type": { "type": "string", "nullable": true }, "essence_type": { "type": "string", "nullable": true }, "item_id": { "type": "string", "nullable": true }, "amount": { "type": "integer", "format": "int32" } } }, "CatacombsRequirements": { "type": "object", "additionalProperties": {}, "required": ["level"], "properties": { "type": { "type": "string", "nullable": true }, "dungeon_type": { "type": "string", "nullable": true }, "level": { "type": "integer", "format": "int32" } } }, "JsonDocument": { "type": "object", "additionalProperties": false, "required": ["rootElement"], "properties": { "rootElement": {} } }, "ItemTrendDto": { "type": "object", "additionalProperties": false, "required": ["priceChangePercentage", "volumeChangePercentage"], "properties": { "priceChangePercentage": { "type": "number", "format": "double" }, "volumeChangePercentage": { "type": "number", "format": "double" } } }, "ItemRelatedRequest": { "type": "object", "additionalProperties": false }, "GetItemsFromBytesResponse": { "type": "object", "additionalProperties": false, "required": ["items"], "properties": { "items": { "type": "array", "items": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ItemDto" } ] } } } }, "GetItemsFromBytesRequest": { "type": "object", "additionalProperties": false, "required": ["bytes"], "properties": { "bytes": { "type": "string" } } }, "GetSkyblockItemsResponse": { "type": "object", "additionalProperties": false, "required": ["items"], "properties": { "items": { "type": "object", "additionalProperties": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ItemResponse" } ] } } } }, "GetSpecifiedSkyblockItemsResponse": { "type": "object", "additionalProperties": false, "required": ["items"], "properties": { "items": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/SkyblockItemResponse" } } } }, "SkyblockItemResponse": { "type": "object", "additionalProperties": false, "required": ["itemId"], "properties": { "itemId": { "type": "string" }, "name": { "type": "string", "nullable": true }, "data": { "description": "Data from the Hypixel items endpoint", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ItemResponse" } ] }, "bazaar": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/BazaarProductSummaryDto" } ] }, "auctions": { "type": "array", "nullable": true, "items": { "$ref": "#/components/schemas/AuctionItemDto" } } } }, "GetSpecifiedSkyblockItemsRequest": { "type": "object", "example": { "items": ["NETHER_STALK", "ENCHANTED_NETHER_STALK", "MUTANT_NETHER_STALK"] }, "additionalProperties": false, "required": ["items"], "properties": { "items": { "type": "array", "example": ["NETHER_STALK", "ENCHANTED_NETHER_STALK", "MUTANT_NETHER_STALK"], "items": { "type": "string" } } } }, "SkyblockProductRequest": { "type": "object", "additionalProperties": false }, "AddProductToCategoryRequest": { "type": "object", "additionalProperties": false }, "UploadImageDto": { "type": "object", "additionalProperties": false, "required": ["image"], "properties": { "title": { "type": "string", "maxLength": 64, "nullable": true }, "description": { "type": "string", "maxLength": 512, "nullable": true }, "image": { "type": "string", "format": "binary" } } }, "AssignArtistRequest": { "type": "object", "additionalProperties": false }, "CreateCategoryDto": { "type": "object", "additionalProperties": false, "required": ["title", "slug"], "properties": { "title": { "type": "string", "maxLength": 256 }, "slug": { "type": "string", "maxLength": 32 }, "description": { "type": "string", "maxLength": 512, "nullable": true }, "longDescription": { "type": "string", "maxLength": 4096, "nullable": true } } }, "DeleteCategoryRequest": { "type": "object", "additionalProperties": false }, "ShopCategoryDto": { "type": "object", "additionalProperties": false, "required": ["id", "title", "slug", "order", "published", "products"], "properties": { "id": { "type": "integer", "format": "int32" }, "title": { "type": "string" }, "slug": { "type": "string" }, "description": { "type": "string", "nullable": true }, "longDescription": { "type": "string", "nullable": true }, "bannerImage": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ImageAttachmentDto" } ] }, "assignedArtist": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/AuthorDto" } ] }, "order": { "type": "integer", "format": "int32" }, "published": { "type": "boolean" }, "products": { "type": "array", "items": { "$ref": "#/components/schemas/ProductDto" } } } }, "GetCategoriesRequest": { "type": "object", "additionalProperties": false }, "GetCategoryRequest": { "type": "object", "additionalProperties": false }, "RemoveProductFromCategoryRequest": { "type": "object", "additionalProperties": false }, "ReorderIntRequest": { "type": "object", "additionalProperties": false, "required": ["elements"], "properties": { "elements": { "type": "array", "minLength": 1, "nullable": false, "items": { "$ref": "#/components/schemas/ReorderElementOfInt32" } } } }, "ReorderElementOfInt32": { "type": "object", "additionalProperties": false, "required": ["id", "order"], "properties": { "id": { "type": "integer", "format": "int32" }, "order": { "type": "integer", "format": "int32" } } }, "ReorderCategoryProductsRequest": { "type": "object", "additionalProperties": false, "required": ["elements"], "properties": { "elements": { "type": "array", "minLength": 1, "nullable": false, "items": { "$ref": "#/components/schemas/ReorderElementOfString" } } } }, "ReorderElementOfString": { "type": "object", "additionalProperties": false, "required": ["order"], "properties": { "id": { "type": "string", "nullable": true }, "order": { "type": "integer", "format": "int32" } } }, "UnassignArtistRequest": { "type": "object", "additionalProperties": false }, "AddCosmeticToProductRequest": { "type": "object", "additionalProperties": false }, "EditCategoryDto": { "type": "object", "additionalProperties": false, "properties": { "title": { "type": "string", "maxLength": 256, "nullable": true }, "slug": { "type": "string", "maxLength": 32, "nullable": true }, "description": { "type": "string", "maxLength": 512, "nullable": true }, "longDescription": { "type": "string", "maxLength": 4096, "nullable": true }, "published": { "type": "boolean", "nullable": true } } }, "DeleteProductImageRequest": { "type": "object", "additionalProperties": false }, "RemoveCosmeticToProductRequest": { "type": "object", "additionalProperties": false }, "CreateStyleRequest": { "type": "object", "additionalProperties": false, "required": ["name", "data"], "properties": { "styleFormatter": { "type": "string", "maxLength": 64, "nullable": true }, "name": { "type": "string", "maxLength": 64, "minLength": 0, "nullable": false }, "collection": { "type": "string", "maxLength": 64, "nullable": true }, "description": { "type": "string", "maxLength": 1024, "nullable": true }, "data": { "minLength": 1, "nullable": false, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleData" } ] } } }, "EditProductDto": { "type": "object", "additionalProperties": false, "properties": { "description": { "type": "string", "description": "Description of the product", "maxLength": 1024, "nullable": true }, "available": { "type": "boolean", "description": "If the product is available for purchase", "nullable": true }, "price": { "type": "integer", "description": "Product price in USD cents", "format": "int32", "nullable": true }, "features": { "description": "Features of the product", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/UnlockedProductFeaturesDto" } ] }, "releasedAt": { "type": "string", "description": "Unix seconds timestamp of release date", "nullable": true } } }, "WeightStyleData": { "type": "object", "additionalProperties": false, "required": ["elements"], "properties": { "decal": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleDecal" } ] }, "elements": { "$ref": "#/components/schemas/WeightStyleElements" } } }, "WeightStyleDecal": { "type": "object", "additionalProperties": false, "required": ["start", "end"], "properties": { "start": { "$ref": "#/components/schemas/WeightStylePosition" }, "end": { "$ref": "#/components/schemas/WeightStylePosition" }, "fill": { "type": "string", "nullable": true }, "imageUrl": { "type": "string", "nullable": true }, "crops": { "type": "object", "nullable": true, "additionalProperties": { "type": "string" } } } }, "WeightStylePosition": { "type": "object", "additionalProperties": false, "required": ["x", "y"], "properties": { "x": { "type": "number", "format": "double" }, "y": { "type": "number", "format": "double" } } }, "WeightStyleElements": { "type": "object", "additionalProperties": false, "required": ["background"], "properties": { "background": { "$ref": "#/components/schemas/WeightStyleBackground" }, "gradients": { "type": "array", "nullable": true, "items": { "$ref": "#/components/schemas/WeightStyleGradient" } }, "name": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleElement" } ] }, "weight": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleElement" } ] }, "label": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleElement" } ] }, "head": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleElement" } ] }, "badge": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleElement" } ] }, "rank": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleElement" } ] }, "rankWithBadge": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleElement" } ] } } }, "WeightStyleBackground": { "type": "object", "additionalProperties": false, "properties": { "size": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStylePosition" } ] }, "fill": { "type": "string", "nullable": true }, "rects": { "type": "array", "nullable": true, "items": { "$ref": "#/components/schemas/WeightStyleBackgroundRect" } }, "imageUrl": { "type": "string", "nullable": true }, "radius": { "type": "integer", "format": "int32", "nullable": true }, "opacity": { "type": "number", "format": "double", "nullable": true } } }, "WeightStyleBackgroundRect": { "type": "object", "additionalProperties": false, "required": ["start", "end"], "properties": { "start": { "$ref": "#/components/schemas/WeightStylePosition" }, "end": { "$ref": "#/components/schemas/WeightStylePosition" }, "fill": { "type": "string", "nullable": true }, "useEmbedColor": { "type": "boolean", "nullable": true }, "opacity": { "type": "number", "format": "double", "nullable": true } } }, "WeightStyleGradient": { "type": "object", "additionalProperties": false, "required": ["direction", "bounds"], "properties": { "direction": { "$ref": "#/components/schemas/WeightStyleDirection" }, "bounds": { "$ref": "#/components/schemas/WeightStyleDirection" }, "stops": { "type": "array", "nullable": true, "items": { "$ref": "#/components/schemas/WeightStyleGradientStop" } }, "opacity": { "type": "number", "format": "double", "nullable": true } } }, "WeightStyleDirection": { "type": "object", "additionalProperties": false, "required": ["start", "end"], "properties": { "start": { "$ref": "#/components/schemas/WeightStylePosition" }, "end": { "$ref": "#/components/schemas/WeightStylePosition" } } }, "WeightStyleGradientStop": { "type": "object", "additionalProperties": false, "required": ["position", "fill"], "properties": { "position": { "type": "number", "format": "double" }, "fill": { "type": "string" } } }, "WeightStyleElement": { "type": "object", "additionalProperties": false, "required": ["position"], "properties": { "font": { "type": "string", "nullable": true }, "fill": { "type": "string", "nullable": true }, "fontSize": { "type": "integer", "format": "int32", "nullable": true }, "position": { "$ref": "#/components/schemas/WeightStylePosition" }, "maxWidth": { "type": "number", "format": "double", "nullable": true }, "maxHeight": { "type": "number", "format": "double", "nullable": true }, "outline": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleElementOutline" } ] }, "background": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleTextBackground" } ] } } }, "WeightStyleElementOutline": { "type": "object", "additionalProperties": false, "properties": { "width": { "type": "integer", "format": "int32", "nullable": true }, "opacity": { "type": "number", "format": "double", "nullable": true }, "fill": { "type": "string", "nullable": true } } }, "WeightStyleTextBackground": { "type": "object", "additionalProperties": false, "properties": { "fill": { "type": "string", "nullable": true }, "opacity": { "type": "number", "format": "double", "nullable": true }, "padding": { "type": "integer", "format": "int32", "nullable": true }, "radius": { "type": "integer", "format": "int32", "nullable": true } } }, "DeleteStyleRequest": { "type": "object", "additionalProperties": false }, "DeleteStyleImageRequest": { "type": "object", "additionalProperties": false }, "WeightStyleWithDataDto": { "type": "object", "additionalProperties": false, "required": ["id", "images", "products", "imageRefs"], "properties": { "id": { "type": "integer", "format": "int32" }, "styleFormatter": { "type": "string", "maxLength": 64, "nullable": true }, "name": { "type": "string", "maxLength": 64, "nullable": true }, "collection": { "type": "string", "maxLength": 64, "nullable": true }, "description": { "type": "string", "maxLength": 1024, "nullable": true }, "image": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/ImageAttachmentDto" } ] }, "author": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/AuthorDto" } ] }, "images": { "type": "array", "items": { "$ref": "#/components/schemas/ImageAttachmentDto" } }, "products": { "type": "array", "items": { "$ref": "#/components/schemas/ParentProductDto" } }, "data": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleDataDto" } ] }, "leaderboard": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/LeaderboardStyleDataDto" } ] }, "imageRefs": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/ImageAttachmentDto" } } } }, "ParentProductDto": { "type": "object", "additionalProperties": false, "required": ["id", "name"], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "slug": { "type": "string", "nullable": true } } }, "WeightStyleDataDto": { "type": "object", "additionalProperties": false, "required": ["elements"], "properties": { "decal": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleDecalDto" } ] }, "elements": { "$ref": "#/components/schemas/WeightStyleElementsDto" } } }, "WeightStyleDecalDto": { "type": "object", "additionalProperties": false, "required": ["start", "end"], "properties": { "start": { "$ref": "#/components/schemas/WeightStylePositionDto" }, "end": { "$ref": "#/components/schemas/WeightStylePositionDto" }, "fill": { "type": "string", "nullable": true }, "imageUrl": { "type": "string", "nullable": true }, "crops": { "type": "object", "nullable": true, "additionalProperties": { "type": "string" } } } }, "WeightStylePositionDto": { "type": "object", "additionalProperties": false, "required": ["x", "y"], "properties": { "x": { "type": "number", "format": "double" }, "y": { "type": "number", "format": "double" } } }, "WeightStyleElementsDto": { "type": "object", "additionalProperties": false, "required": ["background"], "properties": { "background": { "$ref": "#/components/schemas/WeightStyleBackgroundDto" }, "gradients": { "type": "array", "nullable": true, "items": { "$ref": "#/components/schemas/WeightStyleGradientDto" } }, "name": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleElementDto" } ] }, "weight": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleElementDto" } ] }, "label": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleElementDto" } ] }, "head": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleElementDto" } ] }, "badge": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleElementDto" } ] }, "rank": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleElementDto" } ] }, "rankWithBadge": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleElementDto" } ] } } }, "WeightStyleBackgroundDto": { "type": "object", "additionalProperties": false, "properties": { "size": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStylePositionDto" } ] }, "fill": { "type": "string", "nullable": true }, "align": { "type": "string", "nullable": true }, "rects": { "type": "array", "nullable": true, "items": { "$ref": "#/components/schemas/WeightStyleBackgroundRectDto" } }, "imageUrl": { "type": "string", "nullable": true }, "radius": { "type": "integer", "format": "int32", "nullable": true }, "opacity": { "type": "number", "format": "double", "nullable": true } } }, "WeightStyleBackgroundRectDto": { "type": "object", "additionalProperties": false, "required": ["start", "end"], "properties": { "start": { "$ref": "#/components/schemas/WeightStylePositionDto" }, "end": { "$ref": "#/components/schemas/WeightStylePositionDto" }, "fill": { "type": "string", "nullable": true }, "useEmbedColor": { "type": "boolean", "nullable": true }, "opacity": { "type": "number", "format": "double", "nullable": true } } }, "WeightStyleGradientDto": { "type": "object", "additionalProperties": false, "required": ["direction", "bounds"], "properties": { "direction": { "$ref": "#/components/schemas/WeightStyleDirectionDto" }, "bounds": { "$ref": "#/components/schemas/WeightStyleDirectionDto" }, "stops": { "type": "array", "nullable": true, "items": { "$ref": "#/components/schemas/WeightStyleGradientStopDto" } }, "opacity": { "type": "number", "format": "double", "nullable": true } } }, "WeightStyleDirectionDto": { "type": "object", "additionalProperties": false, "required": ["start", "end"], "properties": { "start": { "$ref": "#/components/schemas/WeightStylePositionDto" }, "end": { "$ref": "#/components/schemas/WeightStylePositionDto" } } }, "WeightStyleGradientStopDto": { "type": "object", "additionalProperties": false, "required": ["position", "fill"], "properties": { "position": { "type": "number", "format": "double" }, "fill": { "type": "string" } } }, "WeightStyleElementDto": { "type": "object", "additionalProperties": false, "required": ["position"], "properties": { "font": { "type": "string", "nullable": true }, "fill": { "type": "string", "nullable": true }, "fontSize": { "type": "integer", "format": "int32", "nullable": true }, "position": { "$ref": "#/components/schemas/WeightStylePositionDto" }, "maxWidth": { "type": "number", "format": "double", "nullable": true }, "maxHeight": { "type": "number", "format": "double", "nullable": true }, "outline": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleElementOutlineDto" } ] }, "background": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleTextBackgroundDto" } ] } } }, "WeightStyleElementOutlineDto": { "type": "object", "additionalProperties": false, "properties": { "width": { "type": "integer", "format": "int32", "nullable": true }, "opacity": { "type": "number", "format": "double", "nullable": true }, "fill": { "type": "string", "nullable": true } } }, "WeightStyleTextBackgroundDto": { "type": "object", "additionalProperties": false, "properties": { "fill": { "type": "string", "nullable": true }, "opacity": { "type": "number", "format": "double", "nullable": true }, "padding": { "type": "integer", "format": "int32", "nullable": true }, "radius": { "type": "integer", "format": "int32", "nullable": true } } }, "LeaderboardStyleDataDto": { "type": "object", "additionalProperties": false, "properties": { "background": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/LeaderboardStyleLayerDto" } ] }, "overlay": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/LeaderboardStyleLayerDto" } ] }, "gradientOpacity": { "type": "number", "format": "double", "nullable": true }, "gradientColor": { "type": "string", "nullable": true }, "font": { "type": "string", "nullable": true }, "name": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/LeaderboardStyleTextDto" } ] }, "score": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/LeaderboardStyleTextDto" } ] }, "rank": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/LeaderboardStyleTextDto" } ] }, "subtitle": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/LeaderboardStyleTextDto" } ] } } }, "LeaderboardStyleLayerDto": { "type": "object", "additionalProperties": false, "properties": { "imageUrl": { "type": "string", "nullable": true }, "imageOpacity": { "type": "string", "nullable": true }, "fillColor": { "type": "string", "nullable": true }, "fillOpacity": { "type": "number", "format": "double", "nullable": true }, "borderColor": { "type": "string", "nullable": true }, "borderOpacity": { "type": "number", "format": "double", "nullable": true }, "align": { "type": "string", "nullable": true } } }, "LeaderboardStyleTextDto": { "type": "object", "additionalProperties": false, "properties": { "color": { "type": "string", "nullable": true }, "shadowColor": { "type": "string", "nullable": true }, "shadowOpacity": { "type": "number", "format": "double", "nullable": true }, "fontWeight": { "type": "integer", "format": "int32", "nullable": true } } }, "GetStyleRequest": { "type": "object", "additionalProperties": false }, "WeightStyleListDto": { "type": "object", "additionalProperties": false, "required": ["id", "imageRefs"], "properties": { "id": { "type": "integer", "format": "int32" }, "styleFormatter": { "type": "string", "maxLength": 64, "nullable": true }, "name": { "type": "string", "maxLength": 64, "nullable": true }, "description": { "type": "string", "maxLength": 1024, "nullable": true }, "author": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/AuthorDto" } ] }, "data": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/WeightStyleData" } ] }, "leaderboard": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/LeaderboardStyleData" } ] }, "imageRefs": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/ImageAttachmentDto" } } } }, "LeaderboardStyleData": { "type": "object", "additionalProperties": false, "properties": { "background": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/LeaderboardStyleLayer" } ] }, "overlay": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/LeaderboardStyleLayer" } ] }, "gradientOpacity": { "type": "number", "format": "double", "nullable": true }, "gradientColor": { "type": "string", "nullable": true }, "font": { "type": "string", "nullable": true }, "name": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/LeaderboardStyleText" } ] }, "score": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/LeaderboardStyleText" } ] }, "rank": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/LeaderboardStyleText" } ] }, "subtitle": { "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/LeaderboardStyleText" } ] } } }, "LeaderboardStyleLayer": { "type": "object", "additionalProperties": false, "properties": { "imageUrl": { "type": "string", "nullable": true }, "imageOpacity": { "type": "string", "nullable": true }, "fillColor": { "type": "string", "nullable": true }, "fillOpacity": { "type": "number", "format": "double", "nullable": true }, "borderColor": { "type": "string", "nullable": true }, "borderOpacity": { "type": "number", "format": "double", "nullable": true }, "align": { "type": "string", "nullable": true } } }, "LeaderboardStyleText": { "type": "object", "additionalProperties": false, "properties": { "color": { "type": "string", "nullable": true }, "shadowColor": { "type": "string", "nullable": true }, "shadowOpacity": { "type": "number", "format": "double", "nullable": true }, "fontWeight": { "type": "integer", "format": "int32", "nullable": true } } }, "ReassignStyleRequest": { "type": "object", "additionalProperties": false }, "GetBlockTextureRequest": { "type": "object", "additionalProperties": false }, "InventoryItemMetaResponse": { "type": "object", "additionalProperties": false, "properties": { "packId": { "type": "string", "description": "Texture Pack ID where the item texture is located", "nullable": true }, "variantKey": { "type": "string", "description": "Variant key for price lookups", "nullable": true }, "networth": { "description": "Networth calculation result for this item", "nullable": true, "oneOf": [ { "$ref": "#/components/schemas/NetworthResult" } ] } } }, "GetInventoryItemMetaRequest": { "type": "object", "additionalProperties": false }, "GetInventoryItemTextureRequest": { "type": "object", "additionalProperties": false }, "GetItemTextureRequest": { "type": "object", "additionalProperties": false }, "GetPetTextureRequest": { "type": "object", "additionalProperties": false }, "GetTexturePackIcon": { "type": "object", "additionalProperties": false }, "ToolSettingDto": { "type": "object", "additionalProperties": false, "required": ["id", "ownerId", "targetId", "version", "isPublic", "data", "createdAt", "updatedAt"], "properties": { "id": { "type": "string" }, "ownerId": { "type": "string" }, "targetId": { "type": "string" }, "version": { "type": "integer", "format": "int32" }, "name": { "type": "string", "nullable": true }, "description": { "type": "string", "nullable": true }, "isPublic": { "type": "boolean" }, "data": {}, "createdAt": { "type": "string", "format": "date-time" }, "updatedAt": { "type": "string", "format": "date-time" } } }, "CreateToolSettingRequest": { "type": "object", "additionalProperties": false, "required": ["targetId", "version", "isPublic", "data"], "properties": { "targetId": { "type": "string", "maxLength": 128, "minLength": 0, "nullable": false }, "version": { "type": "integer", "format": "int32" }, "name": { "type": "string", "maxLength": 128, "minLength": 0, "nullable": true }, "description": { "type": "string", "maxLength": 512, "minLength": 0, "nullable": true }, "isPublic": { "type": "boolean" }, "data": {} } }, "ListToolSettingsRequest": { "type": "object", "additionalProperties": false }, "UpdateToolSettingRequest": { "type": "object", "additionalProperties": false, "required": ["targetId", "version", "isPublic", "data"], "properties": { "targetId": { "type": "string", "maxLength": 128, "minLength": 0, "nullable": false }, "version": { "type": "integer", "format": "int32" }, "name": { "type": "string", "maxLength": 128, "minLength": 0, "nullable": true }, "description": { "type": "string", "maxLength": 512, "minLength": 0, "nullable": true }, "isPublic": { "type": "boolean" }, "data": {} } }, "WeightsDto": { "type": "object", "additionalProperties": false, "required": ["crops", "pests"], "properties": { "crops": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "pests": { "$ref": "#/components/schemas/PestWeightsDto" } } }, "PestWeightsDto": { "type": "object", "additionalProperties": false, "required": ["brackets", "values"], "properties": { "brackets": { "type": "object", "additionalProperties": { "type": "integer", "format": "int32" } }, "values": { "type": "object", "additionalProperties": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } } } } }, "GetWeightProfilesRequest": { "type": "object", "additionalProperties": false }, "GetWeightSelectedProfileRequest": { "type": "object", "additionalProperties": false }, "FarmingWeightAllProfilesDto": { "type": "object", "additionalProperties": false, "required": ["profiles"], "properties": { "selectedProfileId": { "type": "string", "nullable": true }, "profiles": { "type": "array", "items": { "$ref": "#/components/schemas/FarmingWeightWithProfileDto" } } } }, "FarmingWeightWithProfileDto": { "type": "object", "additionalProperties": false, "required": [ "profileId", "profileName", "totalWeight", "cropWeight", "bonusWeight", "uncountedCrops", "pests", "lastUpdated" ], "properties": { "profileId": { "type": "string" }, "profileName": { "type": "string" }, "totalWeight": { "type": "number", "format": "double" }, "crops": { "type": "object", "nullable": true, "additionalProperties": { "type": "integer", "format": "int64" } }, "cropWeight": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "bonusWeight": { "type": "object", "additionalProperties": { "type": "number", "format": "double" } }, "uncountedCrops": { "type": "object", "additionalProperties": { "type": "integer", "format": "int32" } }, "pests": { "$ref": "#/components/schemas/PestsDto" }, "lastUpdated": { "type": "integer", "format": "int64" } } }, "GetWeightForProfilesRequest": { "type": "object", "additionalProperties": false } }, "securitySchemes": { "JWTBearerAuth": { "type": "http", "description": "Enter a JWT token to authorize the requests...", "scheme": "Bearer", "bearerFormat": "JWT" } } }, "tags": [ { "name": "Account", "description": "Endpoints related to user accounts and settings." }, { "name": "Admin", "description": "Administrative endpoints for managing the API." }, { "name": "Hypixel Guilds", "description": "Endpoints for retrieving and managing Hypixel Guild data." }, { "name": "Announcements", "description": "Endpoints for fetching and managing announcements." }, { "name": "Auth", "description": "Endpoints for authentication and authorization." }, { "name": "Badge", "description": "Endpoints related to user badges." } ] }