İçeriğe geç

Hızlı Başlangıç

Bu rehber sizi yaklaşık 30 dakika içinde hiçbir şeyden çalışan bir entegrasyona götürür. Sonunda şunlara sahip olacaksınız:

  • Partner API’den bir şehirdeki otellerin canlı fiyatları,
  • rezervasyonları hesabınıza yazan bir rezervasyon bağlantısı,
  • bir test rezervasyonu ve bunun gerçekleştiğini bildiren bir webhook.

Her şey staging ortamında, test ortamımızda gerçekleşir. Bizden erişim istemenize gerek yoktur ve daha sonra üretime geçiş için onay gerekmez.

Yapmak istiyorsunuz…Buradan başlayın
Uygulamanızda, sitenizde veya AI ürününüzde otelleri gösterip yolcuları rezervasyon yapmaya göndererek komisyon kazanmakBu rehber
Lisanslı bir seyahat acentesi olarak müşterileriniz adına rezervasyon yapmakBu rehberin 5. adıma kadar, sonra Seyahat acentesi olarak rezervasyon
Entegrasyon yazmadan rezervasyon yapılabilir otelleri gömmekWeb Bileşenleri
Bir AI ajanının arama yapıp rezervasyon yapmasını sağlamakMCP Sunucuları ve Agentic Payments
Bir kanal yöneticisi veya PMS bağlamakKanal Yöneticinizi Ekleyin

Otelleri ve canlı fiyatlarını bulmak için Partner API kullanırsınız. Her otelin sabit bir urlName değeri vardır. Bunu, kimlik bilgilerinizi taşıyan Wink Rezervasyon Motoru book.wink.travel bağlantısına dönüştürürsünüz. Yolcu orada rezervasyon yapar ve ödemeyi gerçekleştirir, rezervasyon hesabınıza yazılır.

Şunlara ihtiyacınız olacak:

  • grpcurl veya Postman ya da Insomnia. Partner API gRPC tabanlıdır, REST değildir.
  • curl.

Staging, üretimden tamamen ayrı olup kendi giriş bilgileri ve hesapları vardır.

  1. staging-app.wink.travel adresine gidin, Sign-In / Register butonuna tıklayın ve kayıt olun.

  2. Sol kenar çubuğunda Accountsa tıklayın, sonra Create ve I am an Affiliate seçeneğini seçin. Gönderdiğiniz rezervasyonlar bu hesaba yazılır. Bkz. Hesap Oluşturma.

Uygulama, kodunuza kimlik bilgilerini verir.

  1. Hesap kartınızda Actions > Manage accounta tıklayın, ardından Applications sekmesine geçin.

  2. Create new applicationa tıklayın, bir isim verin ve istemci türü olarak Machine-to-machine seçin.

  3. Kapsamlar altında Inventory & rates (okuma) seçin. Partner API inventory.read kontrol eder.

  4. Create applicationa tıklayın ve Client ID ile Client secret değerlerini kopyalayın. Secret sadece bir kez gösterilir, sonra alınamaz.

Diğer istemci türleri ve kapsamlar için Applications sayfasına bakın.

Terminal window
curl -X POST https://staging-iam.wink.travel/oauth2/token \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials" \
-d "client_id=<YOUR_CLIENT_ID>" \
-d "client_secret=<YOUR_CLIENT_SECRET>" \
-d "scope=inventory.read"

Yanıttan access_token değerini kaydedin:

Terminal window
export WINK_TOKEN=<access_token>

Belirteçlerin süresi dolar. Kendi kodunuzda bir OAuth2 kütüphanesi kullanarak bunları alıp yenileyin. Bkz. Kimlik Doğrulama.

Her Partner API çağrısı, işlem yaptığınız hesabı managing-entity-id başlığında belirtir. Belirtecinizin işlem yapabileceği hesapları listeleyin:

Terminal window
grpcurl -H "authorization: Bearer $WINK_TOKEN" \
-d '{}' \
staging-partner.wink.travel:443 wink.partner.v1.Accounts/ListAccounts

Adım 1’deki bağlı hesap accountId değerini kopyalayın:

Terminal window
export WINK_ACCOUNT_ID=<accountId>
Terminal window
grpcurl -H "authorization: Bearer $WINK_TOKEN" \
-H "managing-entity-id: $WINK_ACCOUNT_ID" \
-d '{
"urlName": "bangkok-thailand",
"userSession": {
"itinerary": {
"startDate": "2026-12-01",
"nights": 2,
"room": { "adults": 2 }
},
"currencyCode": "USD",
"languageCode": "en"
}
}' \
staging-partner.wink.travel:443 wink.partner.v1.Search/SearchByCity

Gelecekte bir giriş tarihi kullanın; geçmiş tarih reddedilir. Her sonuçta şunlar bulunur:

  • name, starRating ve heroImageUrl, bir sonuç satırı göstermek için yeterli,
  • roomTypes, canlı teklifler, en ucuz oda ilk,
  • urlName, rezervasyon bağlantısı için gereken slug.

Fiyatlar küçük birimlerde tam sayıdır: yanıttaki currencyExponent değerinin (USD için 2) 10’un kuvvetiyle bölünür (örneğin 12500 125,00 $’dır).

Bir şehrin slug’ını bilmiyor musunuz? wink.partner.v1.Lookup/Search ile çözün. Bir mülkün tam içeriği için Content servisini kullanın. Partner API referansı her çağrıyı belgeler.

https://staging-book.wink.travel/hotel/<urlName>?client-id=<YOUR_CLIENT_ID>&configuration-id=<YOUR_CUSTOMIZATION_ID>
  • <urlName> Adım 5’teki otelin urlName değeridir.
  • client-id Adım 2’deki uygulamanızın Client ID’sidir.
  • configuration-id özelleştirme ID’nizdir: Manage account > Customizations. Bir özelleştirme, rezervasyon sayfasında markanızı, varsayılan dili ve para birimini de ayarlar.

Tek bir otel yerine rezervasyon motoru ana sayfasına bağlantı için Doğrudan Bağlantı bölümüne bakın.

Bağlantınızı açın, tarih ve oda seçin, ve örneğin 4242 4242 4242 4242 numaralı Stripe test kartı ile ödeme yapın; herhangi bir gelecekteki son kullanma tarihi ve herhangi bir CVC kullanabilirsiniz. Staging ortamında gerçek karttan ücret alınmaz. Onay sayfasındaki rezervasyon kodunu not edin; WNK ile başlar.

  1. Portal’da Applications > Webhooksa gidin ve POST isteklerini kabul eden bir uç nokta ekleyin.

  2. booking.create olayına abone olun veya geliştirme sırasında her şeyi almak için olay listesini boş bırakın.

  3. Kendinize bir test olayı gönderin, sonra başka bir test rezervasyonu yapın ve gelmesini izleyin.

Her teslimatın imzasını doğrulamadan güvenmeyin. Bkz. Webhook Entegrasyonu ve Webhook Olayları Kataloğu.

Geliştiriciler için onay adımı yoktur. (Seyahat acentesi hesapları önce sertifikalandırılır; bkz. aşağı.) Entegrasyonunuz staging’de çalıştığında:

  1. app.wink.travel adresinde Adım 1 ve 2’deki gibi bir hesap ve uygulama oluşturun. Kimlik bilgileri ortamlar arasında taşınmaz.

  2. Her hosttan staging- önekini kaldırın:

    StagingÜretim
    https://staging-iam.wink.travelhttps://iam.wink.travel
    staging-partner.wink.travel:443partner.wink.travel:443
    https://staging-book.wink.travelhttps://book.wink.travel
  3. Üretim hesap ID’nizi (Adım 4) ve özelleştirme ID’nizi (Adım 6) tekrar bulun. Bunlar staging’den farklıdır.

Partner API kullanımı otel-geceleri üzerinden ölçülür ve aylık ücretsiz kontenjan vardır. Fiyatlandırma ve limitler için Partner API sayfasına bakın.

Hesabınız lisanslı bir seyahat acentesiyse, yolcuları book.wink.travel adresine göndermenize gerek yoktur: wink.partner.v1.Booking/CreateBooking ile doğrudan rezervasyon oluşturabilir ve diğer Booking çağrılarıyla yönetebilirsiniz. Diğer hesaplar yolcuları rezervasyon bağlantısına gönderir.

Seyahat acentesi hesapları sertifikalandırılır: Wink her acentenin kaydını rezervasyon yapmadan önce inceler. Müşterilerinden doğrudan ödeme almak isteyen acenteler, kayıtlı satıcı olarak, Partner API üzerinden rezervasyon yapmalı ve Wink’in yazılı onayını almalıdır. Bkz. Seyahat Acentesi Olarak Başlarken ve Partner API referansı.