Saltar al contenido principal

Referencia rápida de la Public Partner API

Integraciones externas autenticadas principalmente con X-API-Key.

URL base

https://service-gateway.loscenotes.com/api/partner

Autenticación

X-API-Key: sk_live_your_api_key

Entornos de clave

  • Usa sk_live_ para todos los ejemplos de /api/partner/* abajo.
  • sk_test_ se rechaza en /api/partner/* con Forbidden error.partner.sandbox_key_not_allowed_on_production_api. Las claves sandbox solo sirven para /api/partner-sandbox/* y el webhook simulator.

Excepción: seed-test-data

POST /api/partner/seed-test-data es @Public (sin API key), pero no es un helper de producción para partners. Solo se permite cuando config.environment es development o test. En producción devuelve Forbidden error.partner.seed_not_allowed_in_production.

Endpoints

MétodoEndpointDescripción
GET/api/partner/reservationsLista reservaciones del partner autenticado
GET/api/partner/reservations/:idObtiene una reservación
POST/api/partner/reservationsCrea una reservación
POST/api/partner/reservations/:id/cancelCancela una reservación
GET/api/partner/cenotesLista cenotes disponibles para partners
GET/api/partner/availability/:cenoteId?date=YYYY-MM-DDConsulta disponibilidad de un cenote
POST/api/partner/seed-test-dataSolo dev/test (@Public); Forbidden en producción

Ejemplo de lista de reservaciones

curl -X GET "https://service-gateway.loscenotes.com/api/partner/reservations?page=1&perPage=20" \
-H "X-API-Key: sk_live_your_api_key" \
-H "Content-Type: application/json"

Ejemplo de creación de reservación

curl -X POST "https://service-gateway.loscenotes.com/api/partner/reservations" \
-H "X-API-Key: sk_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"cenoteId": "550e8400-e29b-41d4-a716-446655440000",
"date": "2026-04-20",
"startTime": "09:00",
"endTime": "13:00",
"visitors": 4,
"firstName": "John",
"lastName": "Smith",
"guestEmail": "john@example.com",
"guestPhone": "+52 999 123 4567"
}'

Notas de contrato

  • los campos monetarios se devuelven en centavos
  • los endpoints de lista usan el wrapper estándar con paginación
  • detail/create/cancel devuelven resúmenes normalizados de reservación