Consultar e manter um representante
Consulta, atualiza (de forma parcial), exclui e reativa um representante comercial.
Consultar um representante
/api/v1/admin/trade-reps/{id}AdminConsulta um representante
Parâmetros de caminho
idintegerobrigatórioId do representante (inteiro).
Devolve o mesmo objeto da lista.
Atualizar um representante
Apesar de ser PUT, a atualização é parcial: só os campos enviados mudam. Para limpar um texto mande ""; para limpar owner_vendor_id mande "".
/api/v1/admin/trade-reps/{id}AdminAtualiza campos de um representante
Parâmetros de caminho
idintegerobrigatórioId do representante.
Corpo da requisição
namestringNome.
emailstringNovo e-mail (validado e normalizado). Atualiza só o cadastro do representante, não o e-mail de login.
phonestringTelefone.
regionstringTerritório, texto livre.
regional_codestringRegional de distribuição. Validada contra as regionais da loja.
statesarrayLista completa de estados.
is_activebooleanfalse desativa. true num representante que excluiu a própria conta o reativa de verdade, restaurando o login.commission_rateintegerComissão em pontos-base.
notesstringObservações internas.
owner_vendor_idstringSeller dono.
"" volta ao modo marketplace.internal_codestringCódigo interno.
hierarchy_levelinteger01234Nível hierárquico.
discount_limit_bpintegerAlçada de desconto, em pontos-base.
destination_idsarrayLista completa de destinos.
passwordstringNova senha do login vinculado. Não vazia para ter efeito.
usergroup_idsarrayGrupos de privilégio a acrescentar ao login (não remove os atuais).
bash
curl -X PUT "$BASE_URL/api/v1/admin/trade-reps/31" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"discount_limit_bp": 300, "states": ["SP", "RJ"]}'A resposta é o representante atualizado (200).
Excluir um representante
/api/v1/admin/trade-reps/{id}AdminExclui um representante e seus vínculos
Parâmetros de caminho
idintegerobrigatórioId do representante.
200Excluído
json
{ "status": "deleted" }Reativar uma conta excluída pelo próprio representante
O representante pode excluir a própria conta pelo app (exclusão reversível). Esta rota reabre o cadastro, restaura o usuário de login e devolve o representante com reactivated_at. É idempotente: chamar para um representante já ativo devolve o cadastro sem mudar nada.
/api/v1/admin/trade-reps/{id}/reactivateAdminReativa a conta de um representante
Parâmetros de caminho
idintegerobrigatórioId do representante.
Erros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 400 | id não é inteiro. | {"error":"invalid trade rep ID"} |
| 400 | Corpo do PUT não é JSON, e-mail inválido, senha fraca. | {"error":"traderep_email_invalid","detail":"..."} |
| 404 | Representante não existe (consulta, PUT, reativação). | {"error":"trade rep not found"} |
| 409 | PUT com password/usergroup_ids em conta que não é de seller. | {"error":"email_in_use","detail":"..."} |
| 401 / 403 | Sem token, módulo desligado ou sem privilégio. | {"error":"module_disabled","module":"trade-reps"} |