Autenticação
O AgentHub usa dois tipos de credencial: o token de acesso (para pessoas e
integrações administrativas) e o client_secret (para um agente conversar).
Ambos vão no cabeçalho Authorization: Bearer <credencial>.
Login
POST /auth/login
Login local com e-mail e senha.
Requisição
{ "email": "voce@empresa.com", "password": "sua-senha" }
Resposta 200
{
"access_token": "…",
"refresh_token": "…",
"token_type": "bearer"
}
O token de acesso tem vida curta; o token de renovação dura mais e serve para obter um novo token de acesso sem refazer o login.
Renovar a sessão
POST /auth/refresh
Requisição
{ "refresh_token": "…" }
Resposta 200
{ "access_token": "…" }
Encerrar a sessão
POST /auth/logout
Revoga o token de renovação. Resposta 204 (sem corpo).
Perfil atual
GET /auth/me token de usuário
Retorna o perfil do usuário autenticado (nome, e-mail, papel, último acesso).
SSO (login federado)
| Endpoint | Descrição |
|---|---|
GET /auth/providers | Lista os provedores de identidade ativos (para exibir os botões de login). Sem autenticação. |
GET /auth/oidc/{provider_id}/login | Inicia o login no provedor (redireciona). |
GET /auth/oidc/{provider_id}/callback | Retorno do provedor; provisiona o usuário e devolve a sessão. |
A configuração dos provedores é feita em SSO (login federado).
Chat do agente é diferente
O endpoint POST /api/v1/agents/{id}/chat não usa o token de usuário — ele
usa o client_secret do agente:
Authorization: Bearer <client_secret>
O client_secret é retornado uma única vez, na primeira aprovação de acesso do
agente. Veja Agentes.