List company documents
GET/company/documents
Obtiene una lista paginada de todos los documentos asociados a la compañía del usuario autenticado.
Flujo de operación:
- Autenticación mediante JWT válido con rol gestor o superior
- Validación de parámetros de paginación
- Filtrado opcional por tipo de documento
- Consulta paginada a base de datos (solo última versión de cada documento)
- Retorno de documentos con metadatos y rutas de archivos
Requisitos de acceso:
- Autenticación: Token JWT válido (Bearer token)
- Rol mínimo: Gestor de compañía (isGestor)
- Permisos: Acceso solo a documentos de la propia compañía
Casos de uso típicos:
- Consultar facturas y contratos de la empresa
- Filtrar documentos por categoría (documentType)
- Revisar estado de aprobación de documentos pendientes
- Acceder a historial de versiones recientes
Estados de documento:
pending: Pendiente de revisión por administraciónapproved: Aprobado y disponible para usorejected: Rechazado con motivo especificado
Consideraciones importantes:
- Solo devuelve la última versión de cada documento (excluye versiones obsoletas con
newVersion: null) - Todos los timestamps están en formato UTC
- Máximo 100 documentos por página
- Ordenación por fecha de creación descendente (más recientes primero)
- Los archivos se almacenan en S3/MinIO con rutas relativas en
filePaths
Ejemplo de solicitud:
GET /company/documents?page=1&limit=25&documentType=648ac82b769e704acd2c73f5
Authorization: Bearer {token}
Ejemplo de respuesta exitosa:
{
"docs": [
{
"_id": "5f8d3b7a9c2d1e0f4a6b5c4d",
"name": "Factura Q1 2023",
"status": "approved",
"documentType": "5f8d3b7a9c2d1e0f4a6b5c4e",
"version": 1,
"filePaths": ["documents/company1/factura_q1.pdf"],
"createdAt": "2023-04-15T09:30:00.000Z",
"updatedAt": "2023-04-20T14:15:00.000Z"
}
],
"totalDocs": 15,
"limit": 10,
"page": 1,
"totalPages": 2
}
Request
Responses
- 200
- 401
- 403
Lista de documentos obtenida exitosamente
No autorizado - Token JWT inválido o faltante
Prohibido - Permisos insuficientes