Agir nas pendências
Pega uma pendência para si, atribui a alguém, adia, conclui ou reabre.
Estas ações movem a pendência pela fila. A resolução em si (aprovar o cadastro, moderar o produto) é feita na tela de origem, indicada em link; quando o fato que gerou a pendência é resolvido lá, a plataforma fecha a pendência sozinha. Pegar para si (claim) exige view_tasks ou manage_tasks; as demais ações exigem manage_tasks.
Pegar para si
/api/v1/admin/tasks/{id}/claimAdminO usuário do token assume a pendência
Parâmetros de caminho
iduuidobrigatórioId da pendência.
Exemplo de requisição
bash
curl -X POST "$BASE_URL/api/v1/admin/tasks/6012aec0-1d2a-421a-ba12-4f040d41b5e5/claim" \
-H "Authorization: Bearer $TOKEN"Resposta
200Assumida
json
{
"status": "claimed"
}Campos da resposta
statusstringSempre
claimed. A pendência passa a in_progress e a assigned_to é o usuário do token.Erros
| Status | Quando | Exemplo de corpo |
|---|---|---|
| 401 | Token ausente, inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O token não é de um usuário administrador. | {"error":"admin access required"} |
| 403 | O usuário é administrador, mas não tem o privilégio exigido. | {"error":"insufficient privileges","privilege_required_any":["view_tasks","manage_tasks"]} |
| 409 | Já tem responsável, não está em um estado que permite pegar (open ou snoozed) ou não existe. A mensagem é a mesma nos três casos. | {"error":"already assigned"} |
| 500 | id não é um UUID válido (a mensagem vem em português). | {"error":"failed","detail":"o valor \"abc\" não é um uuid válido. Envie o identificador completo, com os 36 caracteres e os hífens. Corrija o campo e reenvie."} |
Atribuir
/api/v1/admin/tasks/{id}/assignAdminDefine (ou troca) o responsável
Parâmetros de caminho
iduuidobrigatórioId da pendência.
Corpo da requisição
user_iduuidUsuário que será o responsável. Vazio ou ausente remove o responsável.
Exemplo de requisição
bash
curl -X POST "$BASE_URL/api/v1/admin/tasks/6012aec0-1d2a-421a-ba12-4f040d41b5e5/assign" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"user_id": "d4613dde-ac7a-431c-9232-50d8cd6ad5fc"}'Resposta
200Atribuída
json
{
"status": "assigned"
}Campos da resposta
statusstringSempre
assigned. Uma pendência open passa a in_progress. Funciona nos estados open, in_progress e snoozed.Erros
| Status | Quando | Exemplo de corpo |
|---|---|---|
| 401 | Token ausente, inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O token não é de um usuário administrador. | {"error":"admin access required"} |
| 403 | O usuário é administrador, mas não tem o privilégio exigido. | {"error":"insufficient privileges","privilege_required_any":["manage_tasks"]} |
| 500 | user_id ou id não é um UUID válido (a mensagem vem em português). | {"error":"failed","detail":"..."} |
Adiar
/api/v1/admin/tasks/{id}/snoozeAdminAdia a pendência até uma data
Parâmetros de caminho
iduuidobrigatórioId da pendência.
Corpo da requisição
untilstringobrigatórioAté quando adiar, RFC 3339 (
2026-10-15T12:00:00Z). No máximo 30 dias a partir de agora. Obrigatório.Exemplo de requisição
bash
curl -X POST "$BASE_URL/api/v1/admin/tasks/6012aec0-1d2a-421a-ba12-4f040d41b5e5/snooze" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"until": "2026-10-15T12:00:00Z"}'Resposta
200Adiada
json
{
"status": "snoozed"
}Campos da resposta
statusstringSempre
snoozed. Só muda pendências open ou in_progress; nos demais estados responde 200 sem alterar.Erros
| Status | Quando | Exemplo de corpo |
|---|---|---|
| 401 | Token ausente, inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O token não é de um usuário administrador. | {"error":"admin access required"} |
| 403 | O usuário é administrador, mas não tem o privilégio exigido. | {"error":"insufficient privileges","privilege_required_any":["manage_tasks"]} |
| 400 | until ausente, vazio ou corpo inválido. | {"error":"invalid until"} |
| 422 | until está a mais de 30 dias. | {"error":"failed","detail":"snooze exceeds 30 days"} |
Concluir
/api/v1/admin/tasks/{id}/doneAdminMarca a pendência como resolvida
Parâmetros de caminho
iduuidobrigatórioId da pendência.
Exemplo de requisição
bash
curl -X POST "$BASE_URL/api/v1/admin/tasks/6012aec0-1d2a-421a-ba12-4f040d41b5e5/done" \
-H "Authorization: Bearer $TOKEN"Resposta
200Concluída
json
{
"status": "done"
}Campos da resposta
statusstringSempre
done. Registra o usuário do token como quem resolveu. Vale para open, in_progress e snoozed.Erros
| Status | Quando | Exemplo de corpo |
|---|---|---|
| 401 | Token ausente, inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O token não é de um usuário administrador. | {"error":"admin access required"} |
| 403 | O usuário é administrador, mas não tem o privilégio exigido. | {"error":"insufficient privileges","privilege_required_any":["manage_tasks"]} |
| 500 | id não é um UUID válido (a mensagem vem em português). | {"error":"failed","detail":"o valor \"abc\" não é um uuid válido. Envie o identificador completo, com os 36 caracteres e os hífens. Corrija o campo e reenvie."} |
Reabrir
/api/v1/admin/tasks/{id}/reopenAdminVolta uma pendência concluída, cancelada ou adiada para aberta
Parâmetros de caminho
iduuidobrigatórioId da pendência.
Exemplo de requisição
bash
curl -X POST "$BASE_URL/api/v1/admin/tasks/6012aec0-1d2a-421a-ba12-4f040d41b5e5/reopen" \
-H "Authorization: Bearer $TOKEN"Resposta
200Reaberta
json
{
"status": "reopened"
}Campos da resposta
statusstringSempre
reopened. Funciona em done, cancelled e snoozed; limpa o adiamento. O responsável anterior continua o mesmo.Erros
| Status | Quando | Exemplo de corpo |
|---|---|---|
| 401 | Token ausente, inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O token não é de um usuário administrador. | {"error":"admin access required"} |
| 403 | O usuário é administrador, mas não tem o privilégio exigido. | {"error":"insufficient privileges","privilege_required_any":["manage_tasks"]} |
| 500 | id não é um UUID válido (a mensagem vem em português). | {"error":"failed","detail":"o valor \"abc\" não é um uuid válido. Envie o identificador completo, com os 36 caracteres e os hífens. Corrija o campo e reenvie."} |