Plan Enterprise
Integración Completa
Descripción
Integración completa con APIs REST para sincronización bidireccional. Incluye migración inicial por lotes y sincronización continua automática.
Arquitectura de Integración
Requisitos Técnicos
Importante
El área de TI de la universidad debe poder:
- • Enviar peticiones POST para crear estudiantes
- • Enviar peticiones PATCH para actualizar estudiantes
- • Manejar autenticación mediante API keys
- • Integrar desde sus sistemas internos
Autenticación y seguridad
Todas las peticiones requieren un token de autenticación enviado en el header:
x-api-key: {api_key}Si una solicitud proviene de una IP no autorizada, la API responderá con un error 403 – Forbidden, incluso si el API Key es válido.
Endpoints Disponibles
Estudiantes
/api/students/pushCrear o actualizar información de un estudiante (Upsert)
POST /api/students/push{
"status": 201,
"success": true,
"message": "Estudiante creado exitosamente",
"result": "created",
"data": {
"university_id": "UTest"
}
}Referencia de campos
| Campo | Tipo | Requerido | Descripción | Valores permitidos |
|---|---|---|---|---|
| university_id | string | Sí | Identificador de la universidad | — |
| displayName | string | Sí | Nombre completo del estudiante | — |
| string | Sí | Correo electrónico institucional o personal | — | |
| phone | string | No | Número de teléfono con código de país (ej: 51...) | — |
| university | string | Sí | Nombre completo de la universidad | — |
| career | string | Sí | Carrera del estudiante (ver referencia) | — |
| studentStatus | string | Sí | Estado académico actual | "Estudiante" | "Egresado" |
| dni | string | No | Documento de identidad nacional | — |
| cycle | number | No | Ciclo académico actual (1 – 12) | — |
Empleadores
/api/companies/pushCrear o actualizar información de un empleador (Upsert)
POST /api/companies/push{
"status": 201,
"success": true,
"message": "Companie creado exitosamente",
"result": "created",
"data": {
"ruc": "20209999980"
}
}Referencia de campos
| Campo | Tipo | Requerido | Descripción | Valores permitidos |
|---|---|---|---|---|
| university_id | string | Sí | Identificador de la universidad | — |
| company_id | string | Sí | Slug único de la empresa (sin espacios, en minúsculas) | — |
| displayName | string | Sí | Nombre completo de la empresa | — |
| logo | string | No | URL pública del logo de la empresa | — |
| ruc | string | Sí | RUC de la empresa (11 dígitos) | — |
| description | string | No | Descripción o presentación de la empresa | — |
| sitio_web | string | No | URL del sitio web oficial | — |
| contactEmail | string | Sí | Correo de contacto principal | — |
| representative | string | No | Nombre del representante de la empresa | — |
| sector | string | No | Sector o rubro de la empresa | — |
| phone | string | No | Teléfono con código de país (ej: 51...) | — |
| status | string | Sí | Estado de la empresa | "active" | "inactive" |
| users_companies | array | No | Lista de usuarios vinculados a la empresa | — |
| string | Sí | Correo del usuario a vincular | — | |
| └role | string | Sí | Rol del usuario dentro de la empresa | "ceo" | "admin" | "recruiter" |
| └status | string | Sí | Estado del usuario en la empresa | "active" | "inactive" |
Manejo de Errores
La API responde con códigos de estado HTTP claros y mensajes descriptivos ante cualquier error. Es fundamental que las integraciones manejen adecuadamente estos errores, validando los datos enviados y gestionando respuestas como se muestra a continuación.
| Código | Descripción |
|---|---|
| 400 | Datos inválidos |
| 401 | API key inválida |
| 404 | No encontrado |
| 429 | Rate limit excedido |
{
"status": 400,
"label": "Bad Request",
"description": "Datos inválidos",
"body": {
"error": "Bad Request",
"message": "El cuerpo de la petición contiene datos inválidos o mal formateados.",
"details": [
{
...
}
]
}
}Rate Limiting
Fases de Implementación
Fase 1: Migración (días 1-3)
Excel inicial + creación masiva en Firebase
Fase 2: APIs (días 4-7)
Configuración de endpoints y autenticación
Fase 3: Go-live (días 8-10)
Capacitación, pruebas y monitoreo
