API de viajes · v1
Construya sobre el viaje completo
Una integración, dos productos: la API de Vuelos (calendario de tarifas, búsqueda, precio, servicios adicionales, pedido, emisión, cancelación) y la API de Hoteles (búsqueda por ciudad o por códigos de hotel, habitaciones, comprobación de tarifa, reserva, cancelación), además de contenido estático. JSON limpio sobre HTTPS, solicitudes firmadas y una sola URL base para sandbox y producción.
URL base
https://api.dubaitrip.com/v1Una sola URL para sandbox y producción; la clave decide: las claves dt_sbx_ llegan a los sistemas de prueba de nuestros proveedores y las claves dt_live_, al inventario real.
Guías
- Guía rápidaDel registro a un vuelo reservado en el sandbox, en cinco pasos.
- AutenticaciónDos formas de autenticarse, ambas vinculadas a su ID de clave: solicitudes firmadas (recomendado) o tokens Bearer de OAuth 2 con credenciales de cliente.
- Entornos, límites y versionesUna sola URL base para sandbox y producción; la clave con la que firma selecciona el entorno.
- ErroresCada fallo es un documento de problema RFC 7807 con un código estable legible por máquina.
- API de VuelosCalendario de tarifas, búsqueda en 900+ aerolíneas, precio de una oferta, servicios adicionales, creación de pedidos, emisión de billetes, cotización y tramitación de reembolsos.
- API de HotelesBusque entre 1.5M+ alojamientos por código de ciudad (estilo IATA, p. ej. DXB) o por los códigos de hotel que guarde de nuestro catálogo, consulte tarifas por habitación con régimen de comidas y política de cancelación, valide y reserve, y cancele según la política.
- Contenido estáticoConsultas de referencia para construir una interfaz de búsqueda y para almacenar nuestro catálogo de hoteles por ciudad: aeropuertos, aerolíneas, ciudades y hoteles.
- Registro de cambiosTodos los cambios de la API de viajes, del más reciente al más antiguo.
Endpoints
Autenticación
Cuenta
Vuelos
- get
/v1/flights/price-calendarCheapest fare per day for a route over a date window, from our price cache — instant and never a live supplier call. Draw a fare calendar before searching. Omit the return window for one-way prices. - post
/v1/flights/searchSearch flights. Returns a session to poll, or the complete result when `wait` is true. - get
/v1/flights/search/{searchId}Read the next page of a running search. `status` becomes `complete` when every supplier answered. - post
/v1/flights/offers/{offerId}/priceRe-price an offer right before booking. `priceChanged` tells you the total moved. - get
/v1/flights/offers/{offerId}/fare-rulesFare rules and conditions of an offer. - get
/v1/flights/offers/{offerId}/ancillariesChargeable extras available for an offer — today extra checked-baggage allowances, priced by the airline per passenger. Add them to the order via `ancillaries[]` on POST /v1/flights/orders. - post
/v1/flights/ordersCreate an order (hold) from an offer. Requires an `Idempotency-Key` header. - get
/v1/flights/orders/{orderId}Read an order: status, time limit, tickets. - post
/v1/flights/orders/{orderId}/issueIssue the tickets of a held order (charges your deposit balance). - get
/v1/flights/orders/{orderId}/refund-quoteWhat a cancellation would refund, before you commit. - post
/v1/flights/orders/{orderId}/cancelCancel: a held order is released; a ticketed order is voided inside the void window, else refunded. - get
/v1/flights/scheduleTimetable for a route on one day: which flights operate, with local times and equipment — no fares. Query: `origin`, `destination` (IATA), `date` (yyyy-MM-dd). - post
/v1/flights/orders/{orderId}/exchange/searchExchange step 1: search replacement itineraries for a ticketed order. Offers come back in the search shape and expire the same way. - post
/v1/flights/orders/{orderId}/exchange/quoteExchange step 2: what exchanging the listed tickets onto an offer would cost. No side effects. - post
/v1/flights/orders/{orderId}/exchangeExchange step 3: re-issue the listed tickets onto the offer (charges your deposit balance). Requires an `Idempotency-Key` header.
Hoteles
- post
/v1/hotels/searchSearch hotels by city code (IATA-style, e.g. DXB — see /v1/content/cities), by hotel codes from your stored catalogue, or by a geo circle. Returns a session to poll, or the complete result when `wait` is true. - get
/v1/hotels/search/{searchId}Read the next page of a running search. Pass the same dates and room count as the search so rate keys stay bookable. - get
/v1/hotels/{hotelCode}/roomsRoom types of a hotel. Pass any `rateKey` from the same search so the right supplier answers. - post
/v1/hotels/rates/{rateKey}/checkPre-book check: confirms the rate is still bookable and its price. - post
/v1/hotels/bookingsBook a rate. Requires an `Idempotency-Key` header. - get
/v1/hotels/bookings/{bookingId}Read a booking (voucher). - get
/v1/hotels/bookings/{bookingId}/cancellation-quoteWhat a cancellation would refund, before you commit. - post
/v1/hotels/bookings/{bookingId}/cancelCancel a booking under its cancellation policy.
Contenido
- get
/v1/content/airportsAirports (IATA), optionally filtered by a free-text term or a country. - get
/v1/content/citiesCities usable as a hotel search destination, optionally filtered by term or country. - get
/v1/content/airlinesAirlines (IATA two-letter codes). - get
/v1/content/hotelsLook up hotels by city and/or name — a lookup, not a catalogue export: a cityCode or a name of 3+ characters is required, 50 per page, 20 pages per query. Store the codes you need: availability is searched by `cityCode` or `hotelCodes`.