Utilizador¶
Entidade utilizador da aplicação. Os utilizadores são objectos de autenticação e autorização.
Endpoints¶
| Método | URL |
|---|---|
GET |
/user/<user> |
POST |
/user |
PUT |
/user/<user> |
DELETE |
/user/<user> |
GET /user/<user>¶
Payload: Sem payload.
Devolve: O utilizador (o campo password devolve o hash, não a password em texto simples).
Example:
Response:
{
"success": true,
"data": {
"user": {
"id": 1,
"username": "user@example.com",
"smtp_server": 1,
"sms_server": 1,
"parent": 522,
"limit_contacts": 1000,
"limit_monthly_emails": 1000,
"limit_monthly_sms": 1000
},
"month_delta": 0
}
}
POST /user¶
| Parâmetro | Tipo | Descrição |
|---|---|---|
username |
string | Nome de utilizador (endereço de email) |
password_hash |
string | A password do utilizador (texto simples no POST/PUT) |
parent |
int | ID do utilizador pai |
smtp_server |
int | ID do servidor SMTP para este utilizador |
sms_server |
int | ID do servidor SMS para este utilizador |
limit_contacts |
int | Máximo de contactos permitidos em todas as listas deste utilizador |
limit_monthly_emails |
int | Máximo de mensagens de email por mês civil |
limit_monthly_sms |
int | Máximo de SMS por mês civil |
Devolve: O novo utilizador.
Aviso
Os três campos limit_* usam -1 como sentinela de "sem limite" — é o que a aplicação
web envia para Unlimited. Submeter um valor vazio grava 0, não null:
limit_contacts=0 bloqueia a criação de contactos e limit_monthly_emails=0 /
limit_monthly_sms=0 desativam o envio nesse canal. Ao editar um utilizador, reenviar
-1 em cada limite que deva continuar ilimitado.
Um password_hash vazio no PUT preserva a password atual.
PUT /user/<user>¶
Mesmo payload que o POST.
Nota
Esta rota não aceita o verbo HTTP PUT nativo (devolve
Requested URL not found … for HTTP verb PUT). Enviar um POST para /user/<user> com
um campo adicional x-verb=PUT — é o que a aplicação web faz.
Devolve: O utilizador editado.
DELETE /user/<user>¶
Payload: Sem payload.
Devolve: O utilizador eliminado.