API Autenticação
Aprenda como se autenticar na API do BotLaunch usando tokens JWT. Proteja suas requisições e gerencie o acesso aos seus recursos.
Autenticação stateless segura usando JSON Web Tokens.
Tokens de acesso expiram em 1 hora, tokens de atualização em 7 dias.
Use tokens de atualização para obter novos tokens de acesso de forma transparente.
Fluxo de Autenticação
Siga estes passos para autenticar e fazer requisições seguras à API.
Login
Obtenha tokens com credenciais
Armazenar Tokens
Armazene ambos os tokens com segurança
Fazer Requisições
Inclua o token nos cabeçalhos
Atualizar
Obtenha novo token quando expirado
Endpoints de Autenticação
/api/auth/loginAutentique um usuário e receba tokens de acesso e atualização.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| string | User's email address | ||
| password | string | User's password |
Example Request
curl -X POST "https://api.botlaunch.io/api/auth/login" \
-H "Content-Type: application/json" \
-d '{
"email": "user@example.com",
"password": "your-secure-password"
}'Example Response
{
"data": {
"accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"refreshToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"expiresIn": 3600,
"user": {
"id": "usr_abc123",
"email": "user@example.com",
"role": "CLIENT_OWNER"
}
},
"message": "Login successful"
}/api/auth/registerCrie uma nova conta de usuário e organização.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| string | Valid email address | ||
| password | string | Min 8 chars, 1 uppercase, 1 number | |
| name | string | User's full name | |
| organizationName | string | Optional | Organization name |
Example Request
curl -X POST "https://api.botlaunch.io/api/auth/register" \
-H "Content-Type: application/json" \
-d '{
"email": "newuser@example.com",
"password": "SecureP@ssw0rd!",
"name": "John Doe",
"organizationName": "My Company"
}'/api/auth/refreshTroque um token de atualização por um novo token de acesso.
Example Request
curl -X POST "https://api.botlaunch.io/api/auth/refresh" \
-H "Content-Type: application/json" \
-d '{
"refreshToken": "your-refresh-token"
}'Rotação de Token
Cada requisição de atualização retorna um novo token de atualização. Armazene e use o token de atualização mais recente para requisições subsequentes.
/api/auth/logoutInvalide a sessão atual e revogue os tokens.
Example Request
curl -X POST "https://api.botlaunch.io/api/auth/logout" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json"Usando Tokens de Acesso
Inclua seu token de acesso no cabeçalho Authorization para todas as requisições da API.
// Include the access token in all API requests
const response = await fetch("https://api.botlaunch.io/api/bots", {
headers: {
"Authorization": "Bearer eyJhbGciOiJIUzI1NiIs...",
"x-organization-id": "org_xyz789",
"Content-Type": "application/json"
}
});Cabeçalhos Obrigatórios
AuthorizationBearer tokenx-organization-idOrganization IDContent-Typeapplication/jsonMelhores Práticas de Segurança
- Armazene tokens com segurança (nunca em localStorage para web)
- Use HTTPS para todas as requisições da API
- Implemente a atualização do token antes da expiração
- Revogue tokens ao fazer logout ou em eventos de segurança
Erros de Autenticação
Erros comuns de autenticação e como tratá-los.
| Status | Error | Description | Solution |
|---|---|---|---|
| 401 | Unauthorized | Missing or invalid token | Check Authorization header |
| 401 | Token Expired | Access token has expired | Use refresh token to get new access token |
| 403 | Forbidden | Insufficient permissions | Check user role and organization access |
| 429 | Too Many Requests | Login rate limit exceeded | Wait and retry after cooldown |
| 400 | Invalid Credentials | Wrong email or password | Verify credentials and try again |