Türk Hava Yolları (THY) API & XML Entegrasyonu Rehberi
THY'nin sağladığı API, uçuş bilgileri, rezervasyon, biletleme ve check-in gibi hizmetlere erişim sağlar. Bu rehberde, THY API entegrasyonunu adım adım nasıl gerçekleştirebileceğinizi öğreneceksiniz.
Türk Hava Yolları (THY) API Entegrasyonu: Adım Adım Rehber
Giriş
API (Application Programming Interface), farklı yazılım uygulamalarının birbirleriyle iletişim kurmasını sağlayan arayüzlerdir. THY'nin sağladığı API, uçuş bilgileri, rezervasyon, biletleme ve check-in gibi hizmetlere erişim sağlar. Bu rehberde, THY API entegrasyonunu adım adım nasıl gerçekleştirebileceğinizi öğreneceksiniz.
Tüm hayayolu firmalarıyla entegre tek bir API istiyacınız var ise, Demircode firmasının FAPI (Flight API) ürününe göz atmak için tıklayın.
1. API'ye Erişim Sağlama
a. Kayıt ve API Anahtarı Alma
THY API'sine erişmek için öncelikle THY Developer Portal'a (https://developer.turkishairlines.com/) kayıt olmanız gerekmektedir. Kayıt işlemini tamamladıktan sonra, API anahtarınızı alabilirsiniz.
b. API Dokümantasyonunu İnceleme
API anahtarını aldıktan sonra, THY API dokümantasyonunu dikkatlice inceleyin. Dokümantasyon, kullanabileceğiniz uç noktalar (endpoints), istek ve yanıt formatları hakkında ayrıntılı bilgiler sağlar.
2. Temel Entegrasyon Adımları
a. Gerekli Kütüphanelerin Kurulumu
API entegrasyonu için bazı kütüphanelere ihtiyacınız olacak. Python örneği için:
python kodu
pip install requests
b. API Anahtarı ile Kimlik Doğrulama
THY API'sine istek göndermek için, API anahtarınızı kullanarak kimlik doğrulaması yapmanız gerekir. Aşağıdaki örnekte, bir uçuş sorgulaması yapılmaktadır:
python kodu
import requests API_KEY = 'SİZİN_API_ANAHTARINIZ' headers = { 'Authorization': f'Bearer {API_KEY}' } response = requests.get('https://api.turkishairlines.com/flight-status', headers=headers) print(response.json())
3. Uç Noktaların Kullanımı
a. Uçuş Bilgileri Sorgulama
Uçuş bilgilerini sorgulamak için flight-status uç noktasını kullanabilirsiniz. İstek formatı ve parametreler dokümantasyonda belirtilmiştir.
b. Rezervasyon Yapma
Rezervasyon yapmak için gerekli olan uç nokta ve parametreler, yine API dokümantasyonunda detaylı bir şekilde açıklanmıştır. Örnek bir rezervasyon isteği:
python kodu
data = { "flightNumber": "TK123", "date": "2024-07-11", "passengerInfo": [ { "firstName": "John", "lastName": "Doe", "passportNumber": "123456789" } ] } response = requests.post('https://api.turkishairlines.com/reservation', headers=headers, json=data) print(response.json())
c. Biletleme ve Check-in
Biletleme ve check-in işlemleri için de benzer şekilde ilgili uç noktaları kullanarak istek gönderebilirsiniz. Parametrelerin doğruluğuna ve zorunlu alanlara dikkat etmek önemlidir.
4. Hata Yönetimi ve Debugging
a. Hata Kodları ve Anlamları
API isteği sırasında karşılaşabileceğiniz hata kodlarını ve anlamlarını bilmek, sorunları hızlıca çözmenizi sağlar. Örneğin, 401 Unauthorized hatası genellikle yanlış veya eksik API anahtarından kaynaklanır.
b. Loglama
Entegrasyon sırasında loglama yaparak, hangi adımda hata aldığınızı kolayca tespit edebilirsiniz.
python kodu
import logging logging.basicConfig(level=logging.INFO) try: response = requests.get('https://api.turkishairlines.com/flight-status', headers=headers) response.raise_for_status() logging.info(response.json()) except requests.exceptions.HTTPError as err: logging.error(f'HTTP error occurred: {err}') except Exception as err: logging.error(f'Other error occurred: {err}')
5. Performans ve Güvenlik İpuçları
a. İstek Sayısını Optimize Etme
API çağrılarınızı optimize ederek performansı artırabilirsiniz. Mümkün olduğunca toplu istekler yapmaya çalışın.
b. Güvenlik Önlemleri
API anahtarınızı güvende tutun ve sadece güvenli bağlantılar (https) kullanın. Anahtarınızı kod içerisine hardcode etmekten kaçının, çevresel değişkenler veya güvenli bir saklama yöntemi kullanın.
python kodu
import os API_KEY = os.getenv('THY_API_KEY') headers = { 'Authorization': f'Bearer {API_KEY}' }
Sonuç
THY API entegrasyonu, uçuş bilgileri, rezervasyon ve biletleme gibi işlemleri otomatikleştirmenizi sağlar. Bu rehberde, temel entegrasyon adımlarından hata yönetimine kadar çeşitli konuları ele aldık. Başarılı bir entegrasyon için, API dokümantasyonunu dikkatlice incelemeniz ve güvenlik önlemlerini almanız önemlidir.
Web Yazılım