Formato de error
Los errores de la API siguen el formato estándar de NestJS:Códigos HTTP
Diagnóstico rápido
401 en todos los endpoints protegidos
401 en todos los endpoints protegidos
- Verifica que copiaste API Key y Secret sin espacios extra.
- Confirma que estás en el entorno correcto (sandbox vs producción).
- Prueba
GET /mecon los mismos headers.
403 en GET /tours
403 en GET /tours
- Llama a
GET /mey revisa quepermissionsincluyatours:read. - Contacta al equipo Vulcano si necesitas que asignen el permiso.
403 o Missing required permission: reservations:write
403 o Missing required permission: reservations:write
- Verifica
GET /me→permissionsdebe incluirreservations:write. - El partner debe tener canal Vulcano vinculado; si no: Partner is not linked to a Vulcano sale channel.
409 en POST /reservations
409 en POST /reservations
- No hay disponibilidad para ese
tour_id+date+time+pax. - Revisa
availabilityenGET /toursy vuelve a intentar con menos pax u otro horario.
409 en POST /reservations/confirm
409 en POST /reservations/confirm
- Hold expirado (
expires_atpasado): crea una reservation nueva y, si ya cobraste, reembolsa. - Hold cancelado o sin cupo al confirmar.
422 en confirm por passengers
422 en confirm por passengers
passengerses obligatorio.- La cantidad por
typedebe coincidir con elpaxdel hold. - Campos requeridos:
type,name,lastname,email,birthday,identification.
404 en tours, zonas o reservations
404 en tours, zonas o reservations
- Los filtros usan IDs de Vulcano; valida
zone,category,countryId,tour_id. - En reservations, valida que el UUID exista y pertenezca a tu partner.
503 o timeouts
503 o timeouts
- Prueba
GET /health(Partners API) yGET /health/saas(conexión a Vulcano). - Si el hold falla con 503, el error real puede estar en SaaS; reporta timestamp y body.
Health checks
Soporte
Al reportar un incidente, incluye:- Entorno (sandbox / producción)
- Endpoint y body/query
- Código HTTP y body del error
- Timestamp aproximado del request
- UUID del booking /
order_idsi aplica