Fiyat Alma API'si

API aracılığıyla listenizden otel fiyatlarını aktarın.

Etkileşim pull-şeması

  1. Bağlanırken, iş ortağı fiyat alma API'sinin URL'sini ve sorguya bağlı olarak HTTP basic kimlik doğrulama parametrelerini sağlar.

  2. Sorguya bağlı olarak iş ortağı Live pricing API'sinin URL'sini iletebilir.

    Live pricing API'si şunları sağlar:

    • Fiyat taleplerinde misafir sayısını varsayılan değerden farklı olarak ayarlama (örn. 3 yetişkin + 10 yaşında çocuk);
    • İş ortağı sorguda belirtilen zaman aşımı süresi içinde (3 saniyeye kadar) sorguyu yanıtlayabilmişse, cevabı doğrudan arama anında kullanıcıya gösterme.
  3. İş ortağı, belirtilen API'lerde izin verilen maksimum yükü ve bir HTTP sorgusunda sorgulanan otel sayısını bildirir.

  4. Robot, belirtilen fiyat alma API URL'sini kullanarak iş ortağının varsayılan konaklama (2 yetişkin) tekliflerini saatte bir kez sorgular.

  5. Fiyat alma API'si, otel listesi XML dosyasında aktarılan tüm ortak oteller için, geçerli tarihten itibaren en az 7 gün sonraki bir süre için sorgulanır.

  6. Fiyat alma API'si, HTTP POST yöntemi kullanılarak bir Query sorgusu gönderilerek sorgulanır.

Sorgu örnekleri

Fiyat alma API'si sorgulamaları, Yandex robot tarafından Http post sorgu verilerinde Query mesajı gönderilerek gerçekleştirilir.

  • Fiyat alma API'sine basit bir Query sorgusu örneği:

    
      <?xml version="1.0" encoding="UTF-8"?>
      <Query>
        <Checkin>2025-05-20</Checkin>
         <Nights>1</Nights>
         <PropertyList>
           <Property>HotelId123</Property>
           <Property>HotelId345</Property>
      ...
         </PropertyList>
      </Query>
    
    
  • Maksimum 3 saniyelik zaman aşımı ile 3 yetişkin misafir ve 10 yaşında bir çocuk için Live Pricing API'sine sorgu örneği:

    
      <?xml version="1.0" encoding="UTF-8"?>
      <Query latencySensitive="true">
        <DeadlineMs>3000</DeadlineMs>
        <Checkin>2025-05-20</Checkin>
        <Nights>1</Nights>
        <PropertyList>
          <Property>HotelId123</Property>
          <Property>HotelId345</Property>
           ...
        </PropertyList>
        <Context>
          <Occupancy>4</Occupancy>
          <OccupancyDetails>
           <NumAdults>3</NumAdults>
           <Children>
            <Child age="10"/>
           </Children>
         </OccupancyDetails>
       </Context>
      </Query>
    
    

Yanıt örnekleri

  • Fiyat bilgisi içeren basit bir yanıt örneği

    <?xml version="1.0" encoding="UTF-8"?>
    <Transaction>
      <Result>
       <Property>HotelId123</Property>
       <Checkin>2025-05-20</Checkin>
       <Nights>1</Nights>
       <Baserate currency="TRY">1430</Baserate>
       <Tax currency="TRY">70</Tax>
       <OtherFees currency="TRY">0</OtherFees>
       <Custom1>PrettyHotelName</Custom1>
      </Result>
    </Transaction>
    
    
  • Satış noktası bağlantısı oluşturmak için veri içeren bir yanıt örneği:

    <?xml version="1.0" encoding="UTF-8"?>
    <Transaction>
    <Result>
      <Property>HotelId123</Property>
      <Checkin>2025-05-20</Checkin>
      <Nights>1</Nights>
      <Baserate currency="TRY">1430</Baserate>
      <Tax currency="TRY">70</Tax>
      <OtherFees currency="TRY">0</OtherFees>
      <Custom1>PrettyHotelName</Custom1>
      <AllowablePointsOfSale>
      	<PointOfSale id="default">
              <URL>https://online-agency.tr/booking?hotel=(CUSTOM1)&checkin=(CHECKINYEAR)(CHECKINMONTH)(CHECKINDAY)&checkout=(CHECKOUTYEAR)(CHECKOUTMONTH)(CHECKOUTDAY)&adults=(NUM-ADULTS)</URL>
          </PointOfSale>
      </AllowablePointsOfSale>
    </Result>
    </Transaction>
    
  • İstenen tarih için bir rezervasyon seçeneği mevcut değilse yanıt örneği:

    <?xml version="1.0" encoding="UTF-8"?>
    <Transaction>
     <Result>
      <Property>HotelId123</Property>
      <Checkin>2025-06-25</Checkin>
      <Nights>1</Nights>
      <Baserate currency="TRY">-1</Baserate>
      <Tax currency="TRY">0</Tax>
      <OtherFees currency="TRY">0</OtherFees>
     </Result>
    </Transaction>