Skip to main content

LosCenotes Partner Documentation

This site explains how to call the LosCenotes Partner API: the URL, the credential, and what each route returns.

Base URL for every example:

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

Prices in API responses are integers in cents unless a page says otherwise.

Choose a credential​

External booking system — X-API-Key​

Send X-API-Key: sk_live_... on /api/partner/*. There is no X-API-Secret.

Typical sequence: list cenotes, list packages for a cenote, read availability, calculate price, create a reservation, then pay through checkout.

sk_test_ keys are rejected on /api/partner/* with 403 error.partner.sandbox_key_not_allowed_on_production_api. Use them only on /api/partner-sandbox/* and /api/partner/webhooks/simulator/*.

Signed-in partner user — JWT​

Portal, settings, users, reports, and portal reservations expect Authorization: Bearer <jwt>.

LosCenotes staff — admin JWT​

Organization approval, key regeneration, and support-ticket triage use an admin JWT. Those pages are for operators, not for an external integrator's production key.

Start here​

Behavior you will hit​

  • Sandbox. Portal routes under /api/partner-portal/sandbox/* (including reset) return HTTP 200 with a payload that explains unavailability when sandbox storage is not provisioned. POST /api/partner-sandbox/generate-data returns 400 partners.sandbox_schema_not_available in that case. GET /api/partner-sandbox/statistics returns zeros. DELETE /api/partner-sandbox/cleanup succeeds with deletedRecords: 0. Reset exists only on the portal path.
  • Realtime. Connect a Socket.IO client to /partner/ws. Authenticate with a portal JWT or an sk_live_ API key. Sandbox keys are rejected. Details are on the Authentication page.
  • Metrics. GET /api/partner-portal/metrics is your API traffic series. An empty series stays empty.
  • Billing. Portal billing (usage, invoices, plan) is available and still partial: call counts can be real; bandwidth, webhook usage, the plan catalog, and settlements-as-invoices are not a full commercial billing product.
  • Support. A partner user can create, list, read, and reply to their own tickets. Staff triage is /api/admin/partner-support-tickets with an admin JWT.
  • Webhooks. Save only public HTTPS URLs. Private and metadata hosts are rejected. Delivery does not follow redirects.
  • Invites. POST /api/partners/users/invite creates a pending membership and does not send email (emailDelivery=pending_manual).
  • Commission. A partner may update customRates[] only. Changing the payout rate returns 403 error.partner.commission_rate_admin_only.

OpenAPI​

  • Full API reference: /docs
  • Partner-filtered reference: /partner-docs

Updated 2026-09-21 against the live Partner API.