> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.wynncraft.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.wynncraft.com/_mcp/server.

# Exceptions

Errors use this common shape:

```json
{
  "error": "ErrorName",
  "detail": "Error description",
  "code": 400
}
```

## Exception List

| Category                   | Exception               | Code | Description                                                                 |
| :------------------------- | :---------------------- | :--: | :-------------------------------------------------------------------------- |
| **System**                 | MultipleObjectsReturned |  300 | Query returned multiple results.                                            |
| **System**                 | InvalidFormError        |  400 | Provided form is invalid.                                                   |
| **System**                 | InvalidQueryParamsError |  400 | Disallowed query parameters.                                                |
| **System**                 | MalformedPayload        |  400 | Malformed payload.                                                          |
| **System**                 | MalformedTokenError     |  400 | Malformed token in the `Authorization` header. It must be `Bearer <token>`. |
| **System**                 | CSRFError               |  401 | CSRF verification failed.                                                   |
| **System**                 | InvalidTokenError       |  403 | Invalid token.                                                              |
| **System**                 | PaginationError         |  500 | Pagination error.                                                           |
|                            |                         |      |                                                                             |
| **Core**                   | Forbidden               |  403 | You do not have permission to perform this action.                          |
| **Core**                   | NotFound                |  404 | Resource not found.                                                         |
| **Core**                   | MethodNotAllowed        |  405 | Method is not allowed.                                                      |
| **Core**                   | TooManyRequest          |  429 | Too many requests have been made.                                           |
| **Core**                   | InternalError           |  500 | An unknown internal error occurred.                                         |
|                            |                         |      |                                                                             |
| **Player**                 | InvalidCharacterUUID    |  400 | The given character UUID is invalid.                                        |
| **Player**                 | NoCharacterFound        |  400 | No character was found.                                                     |
|                            |                         |      |                                                                             |
| **Guild**                  | MalformedPrefixError    |  400 | Given prefix is invalid.                                                    |
|                            |                         |      |                                                                             |
| **Ability Tree / Aspects** | InvalidTree             |  400 | Provided ability tree is invalid.                                           |

## Routes That Can Return `MultipleObjectsReturned`

* [GET /player/\{username}](https://docs.wynncraft.com/modules/player/get-player)
* [GET /player/\{username}/characters](https://docs.wynncraft.com/modules/player/list-player-characters)
* [GET /player/\{username}/characters/\{uuid}](https://docs.wynncraft.com/modules/player/get-player-character)
* [GET /player/\{username}/characters/\{uuid}/abilities](https://docs.wynncraft.com/modules/player/get-player-character-abilities)
* [GET /guild/prefix/\{query}](https://docs.wynncraft.com/modules/guild/get-guild-by-prefix)
* [GET /guild/uuid/\{query}](https://docs.wynncraft.com/modules/guild/get-guild-by-uuid)
* [GET /guild/\{query}](https://docs.wynncraft.com/modules/guild/get-guild-by-name)