API do Servidor: mudanças entre as edições
Ir para navegação
Ir para pesquisar
Criou página com 'Esta página documenta as interfaces públicas (HTTP Handlers) expostas pelo servidor da Engine e do Jogo. A API segue o padrão RESTful com comunicação via JSON padronizada através do modelo '''ApiResponseDTO'''. = Organização dos Handlers = * '''Handlers da Engine''' – Responsáveis por funcionalidades comuns a qualquer jogo usando a Engine PlayTale. * '''Handlers do Jogo''' – Responsáveis pelas lógicas específicas do jogo ''Mystery Realms''. = Formato Ge...' |
Sem resumo de edição |
||
| Linha 38: | Linha 38: | ||
} | } | ||
</pre> | </pre> | ||
== /api/register == | |||
* '''Descrição:''' Registra um novo usuário no sistema com nome de usuário, senha e e-mail. O usuário será criado com status de e-mail não confirmado e deverá confirmar o e-mail antes de realizar login. | |||
* '''Método:''' POST | |||
* '''Autenticação:''' Não requer | |||
* '''Corpo da requisição:''' | |||
<pre> | |||
{ | |||
"userName": "string", | |||
"password": "string", | |||
"email": "string" | |||
} | |||
</pre> | |||
* '''Resposta (sucesso):''' | |||
<pre> | |||
{ | |||
"success": true, | |||
"code": "SUCCESS", | |||
"message": "Usuário registrado com sucesso", | |||
"data": null | |||
} | |||
</pre> | |||
* '''Resposta (erro - campos obrigatórios):''' | |||
<pre> | |||
{ | |||
"success": false, | |||
"code": "(PTE_000005|PTE_000006|PTE_000007)", | |||
"message": "(Usuário|Senha|Email) não preenchido", | |||
"data": null | |||
} | |||
</pre> | |||
* '''Resposta (erro - e-mail inválido):''' | |||
<pre> | |||
{ | |||
"success": false, | |||
"code": "RFW_000059", | |||
"message": "Formato de e-mail inválido", | |||
"data": null | |||
} | |||
</pre> | |||
* '''Resposta (erro - usuário já existente):''' | |||
<pre> | |||
{ | |||
"success": false, | |||
"code": "(MRS_000007)", | |||
"message": "Nome de usuário já registrado", | |||
"data": null | |||
} | |||
</pre> | |||
== /api/login == | == /api/login == | ||
Edição atual tal como às 17h00min de 23 de abril de 2025
Esta página documenta as interfaces públicas (HTTP Handlers) expostas pelo servidor da Engine e do Jogo. A API segue o padrão RESTful com comunicação via JSON padronizada através do modelo ApiResponseDTO.
Organização dos Handlers
- Handlers da Engine – Responsáveis por funcionalidades comuns a qualquer jogo usando a Engine PlayTale.
- Handlers do Jogo – Responsáveis pelas lógicas específicas do jogo Mystery Realms.
Formato Geral
- Base URL: `http://<host>:<porta>/api`
- Formato de resposta: JSON no padrão:
{
"success": true | false,
"code": "código interno",
"message": "descrição",
"data": { ... }
}
- Cabeçalhos adicionais:
- Quando requerido: `X-Session-Token: <token>`
Handlers da Engine
/api/status
- Descrição: Verifica se a API da Engine está online e retorna sua versão.
- Método: GET
- Autenticação: Não requer
- Parâmetros: Nenhum
- Resposta:
{
"success": true,
"code": "SUCCESS",
"message": "OK",
"data": {
"status": "online",
"version": "1.0.0"
}
}
/api/register
- Descrição: Registra um novo usuário no sistema com nome de usuário, senha e e-mail. O usuário será criado com status de e-mail não confirmado e deverá confirmar o e-mail antes de realizar login.
- Método: POST
- Autenticação: Não requer
- Corpo da requisição:
{
"userName": "string",
"password": "string",
"email": "string"
}
- Resposta (sucesso):
{
"success": true,
"code": "SUCCESS",
"message": "Usuário registrado com sucesso",
"data": null
}
- Resposta (erro - campos obrigatórios):
{
"success": false,
"code": "(PTE_000005|PTE_000006|PTE_000007)",
"message": "(Usuário|Senha|Email) não preenchido",
"data": null
}
- Resposta (erro - e-mail inválido):
{
"success": false,
"code": "RFW_000059",
"message": "Formato de e-mail inválido",
"data": null
}
- Resposta (erro - usuário já existente):
{
"success": false,
"code": "(MRS_000007)",
"message": "Nome de usuário já registrado",
"data": null
}
/api/login
- Descrição: Realiza a autenticação do usuário. Retorna um token de sessão válido para acesso autenticado.
- Método: POST
- Autenticação: Não requer
- Corpo da requisição:
{
"username": "string",
"password": "string"
}
- Resposta (sucesso):
{
"success": true,
"code": "SUCCESS",
"message": "OK",
"data": {
"token": "UUID"
}
}
- Resposta (erro - campos obrigatórios):
{
"success": false,
"code": "PTE_000003",
"message": "Campo obrigatório ausente",
"data": null
}
- Resposta (erro - autenticação inválida):
{
"success": false,
"code": "MRS_000001",
"message": "Usuário ou senha incorretos",
"data": null
}
Handlers do Jogo
@TODO – Esta seção será preenchida com os endpoints definidos na lógica específica do jogo ''Mystery Realms''.