Errores

Códigos HTTP estándar y cuerpos de error consistentes en toda la API.

Códigos de estado

CampoTipoDescripción
200OKPetición correcta.
201CreatedRecurso creado (p. ej. un check-in nuevo).
400Bad RequestJSON inválido o validación fallida — el detalle indica el campo exacto.
401UnauthorizedFalta la API key o no es válida (la rechaza el gateway).
404Not FoundEl recurso no existe en tu cuenta (o aún no está disponible, p. ej. un contrato sin firmar).
500InternalError nuestro. Reintenta; si persiste, contáctanos.

Formato del error

Los errores de validación detallan cada campo problemático:

400 Bad Request
{
  "error": "validation",
  "details": {
    "fieldErrors": {
      "checkInDate": ["Invalid string: must match pattern"]
    }
  }
}
404 Not Found
{ "error": "not found" }

Reintentos

La creación de check-ins es idempotente: reintentar un POST /checkins con el mismo reservationId devuelve el check-in existente (200) en vez de duplicarlo. Ante un 500 o un timeout, reintenta con backoff exponencial sin miedo.