Skip to content
Rate Extra

Developer overview

Two APIs, one contract. TravelDistro is Rate Extra's B2B travel API; the Hotel API is provided by Safaryar Holidays. This page is a conceptual map with deep links into the public references; it does not duplicate them.

TravelDistro API

Auth
TD-HMAC-SHA256 (Authorization, X-TD-Timestamp, X-TD-Nonce)
Base URL
https://api.traveldistro.com/v1
Support
api@traveldistro.com
API reference

Hotel API by Safaryar Holidays

Contracted separately with Safaryar Holidays (Sindibad Turizm Ticaret A.Ş.), Istanbul.

Auth
X-API-Key header
Base URL
https://api.safaryarholidays.com
Support
support@safaryarholidays.com
API reference

API key and contract scope

One key covers every vertical your contract includes. A product outside the contract answers 403 MODULE_NOT_ENABLED on all of its endpoints; GET /v1/account lists what is open.

Prepaid wallet

Bookings debit a prepaid balance in a contracted currency. Balance, statement and currency rates are readable over the API. A 429 or a failed booking charges nothing.

quote_token flow

Every search returns priced results with a quote_token that locks the price until quote_expires_at. Booking redeems the token; prices are never cached on your side.

Idempotency

Booking and cancellation require an Idempotency-Key. The same key and body replay the original response, so a retried request cannot double-book.

Rate limits

Per agency, reads and writes counted separately in a rolling one-minute window, reported in X-RateLimit-* headers with Retry-After on 429.

Error envelope

Every error uses one envelope with a stable error.code and a details object, so clients branch on codes, not on messages.

Webhooks

Outbound events are signed, retried twice with exponential backoff and deduplicable by X-TD-Webhook-Id. The Hotel API signs with X-Webhook-Signature and does not retry.

Licensed travel agency? Apply for API access.

Get API access