Start Free Trial
Developer Platform

A live API for integration partners

Best Guest's API lets PMSs, channel managers, and booking engines offer Czech guest-registration compliance directly inside their own product.

Why integrate with Best Guest

Your Czech customers need guest registration, UbyPort reporting, e-Turista readiness, and local accommodation fee compliance. Best Guest handles it — your platform can offer it as a built-in feature instead of sending customers elsewhere.

Developer Platform

Capabilities

What the API supports today. A couple of pieces below are still on the roadmap, marked as such.

Reservation API

Push bookings into Best Guest so guest registration starts automatically.

Check-in API

Trigger and track online guest check-in without leaving your product.

Compliance API

Read back registration status, house book entries, and fee calculations.

UbyPort Reporting

Foreign-guest reports filed with Czech authorities on your customers' behalf.

Webhooks (planned)

Real-time events for registration completion, fee reports, and reservation changes — on our near-term roadmap; today, poll a reservation's status instead.

Sandbox

We'll set your integration up with a demo workspace to build and validate against before you go live with real guest data.

SDKs

Client libraries planned to speed up integration for common partner stacks.

Security & Data Residency

GDPR-aligned handling of guest data, hosted in the EU.

Developer Platform

How to get access

Two paths, depending on what you're building.

Your own API key

Already a Best Guest customer? Generate a scoped, revocable key yourself in Settings → API Access — no approval needed.

Platform integration

Building this into a channel manager, PMS, or booking engine used by many customers? Tell us about your platform below and we'll set you up as an integration partner.

Live example

POST /v1/upsertReservation
Authorization: {partner_api_key}
Content-Type: application/json

{
  "externalId": "your-own-booking-id",
  "accommodationId": 4821,
  "listingIds": [10432],
  "fromDate": "2026-08-14",
  "toDate": "2026-08-18",
  "personsCount": 2,
  "countryOfResidence": "Germany",
  "recipientLanguage": "en",
  "email": "guest@example.com"
}

→ HTTP 200
{
  "result": true,
  "data": {
    "reservationId": 9310,
    "externalId": "your-own-booking-id",
    "created": true,
    "status": "NOT_COMPLETED",
    "checkinUrl": "https://bestguest.app/..."
  }
}

This is the real request/response shape from the live API — not a mockup.

Request API access

Tell us about your platform and we'll get back to you about a partnership.

By submitting, you agree that Best Guest may contact you about a partnership. See our Privacy Policy for details.