PMS · Sistema de Gestión de Propiedades Hoteleras
API REST · Versión 2 | OpenAPI 3.0 | Bearer Token
¿Primera vez aquí? Visita la sección
Autenticación
para obtener tu Bearer token antes de usar cualquier endpoint protegido.
Módulos disponibles
| Módulo | Descripción |
|---|---|
| Sesiones | Envío OTP, iniciar sesión y cerrar sesión |
| Reservas del Hotel | Listado y filtrado de reservas |
Servidores disponibles
| Entorno | URL | Descripción |
|---|---|---|
| Staging HTTP | http://staging-aos.ayenda.co | Entorno de pruebas. Úsalo para validar cambios antes de pasar a producción. |
| Producción | https://aos.ayenda | Entorno real. |
Códigos de respuesta HTTP
| Código | Estado | Significado |
|---|---|---|
✅ 200 | OK | La solicitud fue exitosa y la respuesta contiene datos. |
✅ 204 | No Content | La solicitud fue exitosa pero no hay datos que retornar. |
🔴 401 | Unauthorized | No autorizado. El teléfono está en lista negra o el token es inválido. |
🔴 422 | Unprocessable Entity | Los parámetros enviados son inválidos o están mal formados. |
⚠️ 429 | Too Many Requests | Se superó el límite de intentos de inicio de sesión (5 por hora). |
🔴 503 | Service Unavailable | El proveedor de OTP (SMS/WhatsApp) falló. |
Estándar de respuestas de error
Todos los endpoints de error en la V2 retornan un objeto errors con la misma estructura. El campo details es opcional y solo aparece cuando hay información adicional relevante.
Sin detalles adicionales:
{
"errors": {
"code": "unauthorized",
"title": "Phone is blocked"
}
}Con detalles adicionales:
{
"errors": {
"code": "too_many_requests",
"title": "Login attempt limit exceeded",
"details": "Maximum 5 attempts per hour. Try again later."
}
}| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
code | string | si | Identificador del error. |
title | string | si | Descripción legible del error. |
details | string | no | Información adicional para ayudar a diagnosticar el problema. |
Estándar de respuestas Index (paginación)
Todos los endpoints de listado en la V2 retornan la paginación en los headers de la respuesta y los datos en el body bajo la llave data. Los filtros aplicados se reflejan en filters.
Headers de respuesta:
Current-Page: 1
Page-Limit: 20
Total-Count: 150
Total-Pages: 8
Body de respuesta:
{
"data": [
{ "id": 1001, "status": "active", "..." : "..." }
],
"filters": {
"stage": "checkin_registered",
"pre_reservations": false,
"post_reservations": false,
"search_all_date_fields": {
"start_date": "2024-03-01",
"end_date": "2024-03-31"
}
}
}| Header | Tipo | Descripción |
|---|---|---|
Current-Page | integer | Número de la página actual. |
Page-Limit | integer | Cantidad máxima de elementos por página. |
Total-Count | integer | Total de registros disponibles. |
Total-Pages | integer | Total de páginas disponibles. |
Documentación generada automáticamente · PMS Loggro © 2026/06/16