Skip to main content
Version: 1.0.0

GoHub Booking API

The GoHub Core Booking Engine aggregates ticket and service inventory from external suppliers, normalises it into one canonical model, and resells it to agents and partners.

You call GoHub, not the supplier. The engine holds the supplier contracts, credentials and wire formats. You never sign a supplier request, and you never send a price — prices come from the price-locked quote you booked against.

The universal flow

Every vertical is the same four steps:

discover  →  quote  →  POST /api/v1/bookings  →  GET /api/v1/bookings/{id}

Discovery differs per vertical (a search, or a catalog browse) and always returns a quoteId with a frozen price. Booking is a single vertical-agnostic call that takes quote ids plus an opaque per-vertical details bag. The response envelope is identical for every supplier; only the per-item detail object varies, discriminated by its own type.

A round trip is not a special request shape — it is two items in one order, booked atomically.

Idempotency

Every booking carries an idempotencyKey you choose. Replaying the same key returns the original order instead of booking again. That is your retry-safety net, and it matters here more than usual: no supplier in the estate exposes an agent cancel, so a duplicate booking cannot be undone by you or by us.

Quotes expire

A quote is bound to the channel it was minted for, is single-use, and has a per-vertical TTL — airport transfer 15 minutes, express bus 10 minutes, iQIYI 24 hours. Read expiresAt; do not hardcode a TTL. Booking an expired quote returns 409; booking another agent's quote returns 404.

Authentication

Your partner API key. The key is the only source of identity — it resolves to your agent, and from there to your channel, your pricing and your entitlements. You never send a channel or an agent id; anything you did send would be ignored.

Nothing is defaulted or inferred, in any environment:

ConditionResponse
No header401 {"reason":"missing-api-key"}
Key resolves to nothing active401 {"reason":"invalid-api-key"}
Key resolves, agent not ACTIVE403 {"reason":"agent-suspended"}

Security Scheme Type:

apiKey

Header parameter name:

X-API-KEY

Contact

GoHub Engineering: engineering@zoltpay.com

License