Saltar al contenido principal

Resumen de la API

La API de Solução42 Console es una API RESTful que te permite gestionar compañías, usuarios, grupos y permisos de forma programática.

URL Base

EntornoURL
Producciónhttps://api.console.solucao42.com.br

Todos los endpoints tienen el prefijo /v1/ para versionado.

Autenticación

Todas las solicitudes a la API (excepto login y endpoints públicos) requieren autenticación usando un token JWT:

curl https://api.console.solucao42.com.br/v1/users \
-H "Authorization: Bearer YOUR_JWT_TOKEN"

Consulta Autenticación para detalles sobre cómo obtener tokens.

Formato de Solicitud

Headers

HeaderRequeridoDescripción
AuthorizationSí*Bearer token para autenticación
Content-TypePara POST/PUTSiempre application/json

*No requerido para login y endpoints públicos.

Cuerpo de Solicitud

Todos los cuerpos de solicitud deben ser JSON válido:

{
"name": "Example",
"email": "[email protected]"
}

Formato de Respuesta

Respuestas Exitosas

Recurso individual:

{
"_id": "507f1f77bcf86cd799439011",
"name": "Example Resource",
"created_at": "2024-03-01T10:30:00.000Z"
}

Lista de recursos:

{
"total": 100,
"quantity": 20,
"records": [
{ "_id": "...", "name": "Resource 1" },
{ "_id": "...", "name": "Resource 2" }
]
}
CampoDescripción
totalNúmero total de registros que coinciden con tu consulta
quantityNúmero de registros en esta respuesta
recordsArray de objetos de recurso

Respuestas de Error

Error de validación (422):

{
"errors": [
{
"instancePath": "/email",
"message": "must be a valid email"
}
]
}

Error de lógica de negocio (400):

{
"error": "User with this email already exists",
"error_code": "USER_EMAIL_DUPLICATE"
}

Códigos de Estado HTTP

CódigoDescripción
200Éxito
201Creado exitosamente
204Éxito sin contenido (ej. eliminar)
400Solicitud incorrecta - revisa el mensaje de error
401No autorizado - token inválido o faltante
403Prohibido - permisos insuficientes
404Recurso no encontrado
422Error de validación - revisa el array errors
429Límite de tasa excedido
500Error interno del servidor

Paginación

Los endpoints de lista soportan paginación:

GET /v1/users?page=2&per_page=50
ParámetroPor defectoMáximoDescripción
page1-Número de página (empieza en 1)
per_page20100Elementos por página

Limitación de Tasa

Para proteger la API, se aplican límites de tasa:

Endpoints Disponibles

Autenticación

MétodoEndpointDescripción
GET/v1/auth/validate-companyVerificar si la compañía existe
POST/v1/auth/loginIniciar sesión con email/contraseña
POST/v1/auth/googleIniciar sesión con Google OAuth
POST/v1/auth/passwordless/requestSolicitar código de inicio de sesión
POST/v1/auth/passwordless/verifyVerificar código de inicio de sesión
POST/v1/auth/2fa/loginVerificar token 2FA
GET/v1/auth/sso/:slug/startIniciar flujo SSO
GET/v1/auth/meObtener usuario actual
POST/v1/auth/logoutCerrar sesión

Ver API de Autenticación →

Usuarios

MétodoEndpointDescripción
GET/v1/usersListar todos los usuarios
GET/v1/users/:idObtener usuario por ID
POST/v1/users/inviteInvitar nuevo usuario
POST/v1/users/accept-invitationAceptar invitación
POST/v1/users/reset-password/requestSolicitar restablecimiento de contraseña
POST/v1/users/:id/activateActivar usuario
POST/v1/users/:id/deactivateDesactivar usuario
POST/v1/users/:id/groupsAgregar grupos al usuario
PUT/v1/users/:id/groupsReemplazar grupos del usuario
DELETE/v1/users/:id/groupsEliminar grupos del usuario

Ver API de Usuarios →

Grupos

MétodoEndpointDescripción
GET/v1/groupsListar todos los grupos
GET/v1/groups/:idObtener grupo por ID
POST/v1/groupsCrear grupo
PUT/v1/groups/:idActualizar grupo
DELETE/v1/groups/:idEliminar grupo
POST/v1/groups/:id/permissionsAgregar permisos
PUT/v1/groups/:id/permissionsReemplazar permisos
DELETE/v1/groups/:id/permissionsEliminar permisos

Ver API de Grupos →

Permisos

MétodoEndpointDescripción
GET/v1/permissionsListar todos los permisos
GET/v1/permissions/:idObtener permiso por ID
POST/v1/permissionsCrear permiso
PUT/v1/permissions/:idActualizar permiso
DELETE/v1/permissions/:idEliminar permiso

Ver API de Permisos →

Códigos de Error

Códigos de error comunes que puedes encontrar:

Código de ErrorDescripción
INVALID_CREDENTIALSEmail, contraseña o compañía incorrectos
UNAUTHORIZEDToken faltante o expirado
FORBIDDENPermisos insuficientes
VALIDATION_ERRORValidación de solicitud fallida
NOT_FOUNDEl recurso no existe
USER_EMAIL_DUPLICATEEmail ya en uso
COMPANY_NOT_FOUNDSlug de compañía no encontrado
CANNOT_DEACTIVATE_SELFNo puedes desactivar tu propia cuenta de usuario

SDKs y Bibliotecas

Aunque aún no tenemos SDKs oficiales, aquí hay recursos de la comunidad:

  • Cliente JavaScript de ejemplo en nuestra guía de Primeros Pasos
  • Especificación OpenAPI disponible bajo solicitud

¿Necesitas Ayuda?