Hotel API & XMLIntegration
Connect your booking platform, OTA, or travel management system to Safaryar Holidays's live inventory of 257+ Istanbul hotels. RESTful API, OTA-compatible XML feed, real-time availability, and instant confirmation — all under a single integration contract.
257+
Live Hotel Inventory
<200ms
Avg API Response Time
99.9%
Platform Uptime
40K+
Annual API Transactions
Integration Methods
Choose the integration method that best fits your technical stack — or combine multiple methods for different use cases.
RESTful API
Our primary integration method. JSON-based REST API with OAuth 2.0 authentication. Full CRUD support for availability, bookings, amendments, and cancellations. Comprehensive Swagger documentation available in the developer portal.
- JSON responses
- OAuth 2.0 auth
- Webhook support
- Rate: 100 req/sec
OTA XML Feed
OTA-standard XML messaging compatible with major GDS and legacy booking systems. Supports OTA_HotelAvailRQ, OTA_HotelResRQ, OTA_ReadRQ, and OTA_CancelRQ message sets. Ideal for systems already using XML-based hotel feeds.
- OTA 2015B standard
- SOAP envelope support
- Full OTA message set
- GDS-compatible format
Webhooks
Subscribe to real-time events for booking confirmations, cancellation notices, rate updates, and allotment changes. Push notifications eliminate the need for polling and keep your system in sync without API overhead.
- Booking confirmed events
- Cancellation notices
- Rate change alerts
- HMAC signature verification
API Capabilities
Our API exposes the complete booking lifecycle — from search and availability through to cancellation and voucher generation.
Hotel Search & Availability
Real-time search by destination, dates, occupancy, star rating, and board type. Returns live rates and allotment status with availability confidence indicators.
GET /hotels/searchGET /hotels/{id}/availabilityBooking & Confirmation
Instant booking with guaranteed confirmation. Includes room allocation, special request handling, and automated voucher generation with unique booking reference.
POST /bookingsGET /bookings/{ref}Amendments
Modify existing bookings — date changes, room upgrades, occupancy adjustments. Automatic rebooking with rate recalculation and penalty fee preview before commit.
PATCH /bookings/{ref}GET /bookings/{ref}/amend-quoteCancellations
Process cancellations with automatic penalty calculation. Returns cancellation fee preview before confirming. Full audit trail with confirmation receipts.
DELETE /bookings/{ref}GET /bookings/{ref}/cancel-quoteVoucher Generation
Generate branded booking vouchers in PDF format via API. Customizable with your agency logo, reference numbers, and contact details. Delivered as base64-encoded PDF.
GET /bookings/{ref}/voucherPOST /vouchers/customReporting & Analytics
Pull booking reports, revenue summaries, and cancellation statistics programmatically. Supports date range filtering, property-level breakdowns, and CSV export.
GET /reports/bookingsGET /reports/revenueTechnical Specifications
Built on enterprise-grade cloud infrastructure with performance and reliability at its core.
Azure Cloud Infrastructure
- Hosted on Microsoft Azure West Europe region
- Auto-scaling across multiple availability zones
- Azure CDN for global low-latency delivery
- Managed database with automated failover
Performance & Reliability
- 99.9% uptime SLA with financial backing
- Sub-200ms average API response time
- Sub-500ms for complex multi-property searches
- Real-time status page at status.safaryarholidays.com
Security & Compliance
- TLS 1.3 encryption for all API traffic
- OAuth 2.0 with JWT token authentication
- IP allowlisting available for enterprise partners
- Full audit logging with 90-day retention
Rate Limiting & Quotas
- 100 requests/second for search endpoints
- 20 requests/second for booking endpoints
- Burst allowance up to 5x standard rate for 10 seconds
- Custom quotas available for high-volume partners
Sample API Request
Get started quickly with our clean, well-documented API. Here's a sample hotel availability search request and response.
GET /v1/hotels/search
Authorization: Bearer {your_token}
Content-Type: application/json
{
"destination": "istanbul",
"check_in": "2025-06-01",
"check_out": "2025-06-05",
"occupancy": [
{
"adults": 2,
"children": 0
}
],
"currency": "USD",
"star_rating": [4, 5],
"board_type": "BB"
}{
"status": "success",
"results": 47,
"hotels": [
{
"id": "IST-0042",
"name": "Grand Hyatt Istanbul",
"stars": 5,
"district": "Taksim",
"rooms": [
{
"type": "Deluxe Double",
"board": "BB",
"net_rate": 142.00,
"currency": "USD",
"available": true,
"allotment": 8,
"cancellation": "free_until_2025-05-29"
}
]
}
],
"token": "search_abc123",
"expires_at": "2025-04-05T14:32:00Z"
}Developer Resources
Everything you need to integrate quickly and ship confidently.
API Documentation
Full Swagger/OpenAPI 3.0 docs with interactive request builder. Browse every endpoint, see example payloads, and test against our sandbox.
Sandbox Environment
Fully isolated test environment with simulated hotel inventory, booking flows, and edge cases. No billing in sandbox — test as much as you need.
SDK Libraries
Official client libraries for JavaScript/TypeScript, Python, PHP, and Java. Auto-generated from our OpenAPI spec and maintained on GitHub.
Postman Collection
Pre-built Postman collection covering all endpoints with environment variables configured for both sandbox and production use.
Technical Questions
How long does a typical API integration take?
Most experienced development teams complete the core search and booking integration within 3-5 business days using our REST API. Our sandbox environment, Postman collection, and SDK libraries are designed to minimize integration time. We also provide dedicated technical support during the integration phase.
Is there a difference between the sandbox and production environments?
The sandbox uses simulated hotel data that mirrors production data structures exactly. All endpoint signatures, response formats, error codes, and webhook events are identical between environments. The only difference is that sandbox bookings are not real and no billing occurs.
What authentication method does the API use?
We use OAuth 2.0 with client credentials flow. You receive a client ID and secret upon account activation. Exchange these for a JWT access token, which is valid for 1 hour. IP allowlisting is available as an additional security layer for enterprise accounts.
Can we integrate your XML feed with our existing GDS setup?
Yes. Our XML feed follows the OTA 2015B standard, which is compatible with major GDS middleware and legacy travel booking systems. Our technical team provides mapping guidance for non-standard implementations at no additional cost.
Is there a revenue share or per-transaction cost for API use?
API access pricing is negotiated as part of your partner contract and is based on booking volume. There are no per-request charges — you pay for the hotel bookings you make, not the API calls you make. High-volume partners benefit from reduced per-booking fees.
Ready to Connect Your Platform?
Apply for API access and our technical team will have you live on the sandbox within 24 hours. Integration support is included for all new partners at no charge.