Download OpenAPI specification:
RESTful Web API for managing and solving mazes
This endpoint returns the list of maze IDs, names and (optionally) their definitions that the user currently has access to
| includeDefinitions required | boolean Include the definitions for the mazes (default: false) |
[- {
- "definition": "string",
- "id": "string",
- "name": "string"
}
]This endpoint creates a new maze and, if successful, returns the newly created maze object containing its allocated ID
required | object (MazeDefinition) MazeDefinition, containing the layout of the maze |
| id required | string |
| name required | string |
{- "definition": {
- "grid": [
- [
- "string"
]
]
}, - "id": "string",
- "name": "string"
}{- "definition": {
- "grid": [
- [
- "string"
]
]
}, - "id": "string",
- "name": "string"
}This endpoint attempts to load a maze given its ID and, if successful, returns the maze definition
| id required | string Unique ID of the maze to retrieve |
{- "definition": {
- "grid": [
- [
- "string"
]
]
}, - "id": "string",
- "name": "string"
}This endpoint attempts to update an existing maze given its ID and, if successful, returns the updated maze definition
| id required | string Unique ID of the maze to update |
required | object (MazeDefinition) MazeDefinition, containing the layout of the maze |
| id required | string |
| name required | string |
{- "definition": {
- "grid": [
- [
- "string"
]
]
}, - "id": "string",
- "name": "string"
}{- "definition": {
- "grid": [
- [
- "string"
]
]
}, - "id": "string",
- "name": "string"
}This endpoint attempts to solve a maze given its ID and, if successful, returns a maze solution containing the solution path
| id required | string Unique ID of the maze to solve |
{- "path": {
- "points": [
- {
- "col": 0,
- "row": 0
}
]
}
}This endpoint attempts to solve a maze definition that is supplied by the caller and, if successful, returns a maze solution containing the solution path
required | object (MazeDefinition) MazeDefinition, containing the layout of the maze |
| id required | string |
| name required | string |
{- "definition": {
- "grid": [
- [
- "string"
]
]
}, - "id": "string",
- "name": "string"
}{- "path": {
- "points": [
- {
- "col": 0,
- "row": 0
}
]
}
}This endpoint creates a new user and, if successful, returns the newly created user item containing its allocated ID
| email required | string Email address |
| full_name required | string Full name |
| is_admin required | boolean Is administrator? |
| password required | string Password |
| username required | string Username |
{- "email": "string",
- "full_name": "string",
- "is_admin": true,
- "password": "string",
- "username": "string"
}{- "email": "string",
- "full_name": "string",
- "id": "string",
- "is_admin": true,
- "username": "string"
}This endpoint attempts to load a user item given its ID and, if successful, returns the details
| id required | string Unique ID of the user to retrieve |
{- "email": "string",
- "full_name": "string",
- "id": "string",
- "is_admin": true,
- "username": "string"
}This endpoint attempts to update an existing user given its ID and, if successful, returns the updated details
| id required | string Unique ID of the user to update |
| email required | string Email address |
| full_name required | string Full name |
| is_admin required | boolean Is administrator? |
| username required | string Username |
{- "email": "string",
- "full_name": "string",
- "is_admin": true,
- "username": "string"
}{- "email": "string",
- "full_name": "string",
- "id": "string",
- "is_admin": true,
- "username": "string"
}