Documentação
Tudo que existe na API da onny, gerado dos contratos de cada serviço. Teste qualquer rota daqui: entre uma vez e as próximas chamadas já vão autenticadas.
Primeira chamada
Sem conta e sem token: confirme que a API responde.
curl https://api.onny.space/api/health/ready
# HealthyDepois, crie uma conta ou entre por aqui mesmo e siga para criar um projeto.
Serviços
Identity
5 rotasContas, login e sessões da plataforma onny. Emite os tokens JWT (RS256) aceitos por todos os serviços.
https://api.onny.space/identityCore API
5 rotasRegras de negócio da plataforma onny. Todas as rotas exigem o access token emitido pelo Identity.
https://api.onny.space/apiAutenticação
As rotas da Core API exigem um access token (JWT) no header Authorization: Bearer …. Ele vale 15 minutos; o refresh token renova a sessão sem pedir a senha de novo.
Envie
O accessToken no header Authorization de toda chamada autenticada.
curl -X POST "https://api.onny.space/identity/v1/auth/login" \
-H "Content-Type: application/json" \
-d '{"email":"ana@exemplo.com","password":"SenhaForte123"}'
# resposta
{
"accessToken": "eyJhbGciOiJSUzI1NiIs…",
"refreshToken": "rt_9qX2…",
"expiresIn": 900,
"tokenType": "Bearer"
}Erros
Toda falha volta como Problem Details (RFC 9457) com um code estável para o front tratar, e um traceId para rastrear nos logs.
{
"title": "projects.slug_taken",
"status": 409,
"detail": "Você já tem um projeto com esse nome.",
"code": "projects.slug_taken",
"traceId": "00-4bf92f3577b34da6…-01"
}auth.invalid_credentials401E-mail ou senha inválidos.auth.locked_out4035 senhas erradas: conta bloqueada por 10 minutos.auth.invalid_refresh_token401Refresh inválido, expirado ou já usado (a sessão cai).auth.email_taken409Já existe conta com o e-mail.auth.credentials_changed401A senha mudou durante o login. Entre de novo.projects.slug_taken409Você já tem um projeto com esse nome.projects.invalid400Dados do projeto inválidos (detalhes em errors).Limites e paginação
Acima do limite a resposta é 429; espere o minuto virar. Listas são paginadas com page (a partir de 1) e pageSize (1 a 100) e devolvem total.