Consultar todos los administradores
[ GET ]
Visión general
Recupera el listado de todos los administradores asociados a tu organización. Este endpoint permite paginar resultados, ordenar por diferentes criterios y filtrar por rango de fechas, facilitando la gestión de grandes equipos y la generación de reportes administrativos.
- URL:
https://sync.airbagtech.io/manager - Uso principal: auditorías de accesos, revisión de equipos operativos
- Consideración: combina los parámetros de consulta para obtener vistas específicas del equipo.
Autenticación
Incluye el encabezado Authorization: apikey {API_KEY}. Las claves API se solicitan al equipo de soporte de Airbag Tech y se asignan a contactos autorizados dentro de la organización.
Encabezados
| Encabezado | Valor | Descripción |
|---|---|---|
Authorization | apikey {API_KEY} | Clave única solicitada al equipo de soporte para validar la llamada. |
Parámetros de consulta
Todos los parámetros son opcionales y pueden combinarse para refinar los resultados.
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
limit | Number | No | Número máximo de administradores a devolver. Útil para implementar paginación del lado del cliente. |
sort | String | No | Campo por el cual ordenar los resultados. Valores válidos: fullName, lastName, gender, authRole, created, status. |
direction | String | No | Dirección del ordenamiento. Valores válidos: asc (ascendente) o desc (descendente). Debe usarse junto con sort. |
startDate | String | No | Fecha inicial del rango de búsqueda en formato ISO 8601 (YYYY-MM-DD). Debe usarse junto con endDate. |
endDate | String | No | Fecha final del rango de búsqueda en formato ISO 8601 (YYYY-MM-DD). Debe usarse junto con startDate. |
Si utilizas los parámetros startDate y endDate, el campo sort debe ser created o no especificarse. Esta restricción asegura consistencia en las consultas temporales.
Ejemplos de solicitud
Consulta básica (todos los administradores)
curl --location -g 'https://sync.airbagtech.io/manager' \
--header 'Authorization: apikey ${API_KEY}'
Consulta con paginación
curl --location -g 'https://sync.airbagtech.io/manager?limit=10' \
--header 'Authorization: apikey ${API_KEY}'
Consulta con ordenamiento
curl --location -g 'https://sync.airbagtech.io/manager?sort=fullName&direction=asc' \
--header 'Authorization: apikey ${API_KEY}'
Consulta con rango de fechas
curl --location -g 'https://sync.airbagtech.io/manager?startDate=2024-01-01&endDate=2024-12-31' \
--header 'Authorization: apikey ${API_KEY}'
Consulta combinada
curl --location -g 'https://sync.airbagtech.io/manager?limit=20&sort=created&direction=desc&startDate=2024-01-01&endDate=2024-12-31' \
--header 'Authorization: apikey ${API_KEY}'
Respuestas
✅ Respuesta exitosa (200 OK)
Devuelve un array de administradores con sus datos completos y metadatos de la consulta.
{
"status": true,
"length": 2,
"managers": [
{
"airbagId": "abc123xyz",
"company": "Transportes Ejemplo S.A.",
"id": "ADM-001",
"fullName": "Rosa González",
"name": "Rosa",
"lastName": "González",
"email": "[email protected]",
"phone": "+525555555555",
"authRole": "admin",
"gender": "female",
"groups": ["grupo-central"],
"status": "active",
"created": "2024-01-15T10:30:00.000Z"
},
{
"airbagId": "def456uvw",
"company": "Transportes Ejemplo S.A.",
"id": "ADM-002",
"fullName": "Carlos Méndez",
"name": "Carlos",
"lastName": "Méndez",
"email": "[email protected]",
"phone": "+525566666666",
"authRole": "group-limited",
"gender": "male",
"status": "active",
"created": "2024-02-20T14:45:00.000Z"
}
]
}
Descripción de campos de respuesta
| Campo | Tipo | Descripción |
|---|---|---|
status | Boolean | Indica si la operación fue exitosa. |
length | Number | Cantidad de administradores devueltos en esta consulta. |
managers | Array | Lista de administradores con sus datos completos. |
Campos dentro de cada manager
| Campo | Tipo | Descripción |
|---|---|---|
airbagId | String | Identificador interno único en la plataforma Airbag (equivalente al _id o userId en Firebase). Útil para operaciones internas y referencias cruzadas. |
company | String | Nombre de la organización a la que pertenece el administrador. |
id | String | Identificador único del administrador proporcionado durante la creación. Este es el ID que utilizas en tus sistemas. |
fullName | String | Nombre completo del administrador (nombre + apellido). |
name | String | Nombre de pila del administrador. |
lastName | String | Apellido del administrador. |
email | String | Correo electrónico corporativo. Canal principal de comunicación y autenticación. |
phone | String | Número de teléfono con código de país (formato: +525555555555). |
authRole | String | Rol de permisos asignado. Valores: admin (acceso total) o group-limited (acceso limitado a grupos específicos). |
gender | String | Género del administrador. Valores: male, female, other. Campo opcional. |
groups | Array | Lista de IDs de grupos asignados . |
status | String | Estado de la cuenta. Valores: active (activa) o inactive (inactiva). |
created | String | Fecha y hora de creación de la cuenta en formato ISO 8601. |
❌ Sin resultados (404 Not Found)
Se devuelve cuando no existen administradores que cumplan con los criterios de búsqueda.
{
"status": true,
"message": "No managers found with given parameters",
"length": 0,
"managers": []
}
⚠️ Error en la solicitud (400 Bad Request)
Se devuelve cuando los parámetros de consulta son inválidos.
{
"status": false,
"message": "Direction must be 'asc' or 'desc' but xyz was found",
"errorId": "sentry_error_id_123"
}
Errores comunes de validación:
- Usar
directionsin especificarsort - Especificar
startDatesinendDate(o viceversa) - Usar un campo de ordenamiento no válido en
sort - Combinar fechas con un campo
sortdiferente acreated
Respuestas y buenas prácticas
- 200 OK: devuelve el array completo con todos los administradores que cumplen los criterios.
- 404 No encontrado: confirma que existen administradores registrados en la organización.
- 400 Solicitud incorrecta: verifica la sintaxis de los parámetros de consulta.
Recomendaciones
- Paginación eficiente: utiliza
limitpara evitar sobrecargar la respuesta cuando gestionas equipos grandes. - Ordenamiento consistente: mantén el mismo criterio de
sortydirectionen consultas subsecuentes para una experiencia predecible. - Filtrado por fechas: ideal para auditorías mensuales o trimestrales; combina con
sort=createdpara orden cronológico. - Vista general primero: usa este endpoint para obtener el listado general, luego consulta detalles individuales cuando necesites información completa (email, teléfono, rol, etc.).
- Referencia por ID: utiliza el campo
idpara realizar operaciones específicas en otros endpoints (actualizar, eliminar, consultar detalle).
Casos de uso
- Listado general: obtén una vista rápida de todos los administradores registrados en la organización.
- Dashboards y reportes: muestra nombres y conteo de administradores en interfaces de administración.
- Sincronización de sistemas: mantén actualizada la lista de administradores en sistemas externos usando el
airbagIdcomo referencia. - Verificación de registro: confirma que los nuevos administradores se hayan creado correctamente consultando por fecha.
- Exportación básica: genera listados simples con nombres e identificadores para reportes ejecutivos.