在Amadeus Flight Post Booking API中,可以使用以下代码示例将常客旅客号码添加到PNR中:
import requests
import json
# 设置API访问凭证
client_id = "your_client_id"
client_secret = "your_client_secret"
# 获取访问令牌
def get_access_token():
url = "https://test.api.amadeus.com/v1/security/oauth2/token"
data = {
"grant_type": "client_credentials",
"client_id": client_id,
"client_secret": client_secret
}
response = requests.post(url, data=data)
access_token = response.json()["access_token"]
return access_token
# 在PNR中添加常客旅客号码
def add_frequent_traveler_number(pnr, frequent_traveler_number):
url = f"https://test.api.amadeus.com/v2/booking/flight-order/{pnr}/traveler/{traveler_id}"
headers = {
"Authorization": f"Bearer {get_access_token()}",
"Content-Type": "application/json"
}
data = {
"frequentTravelerNumber": frequent_traveler_number
}
response = requests.patch(url, headers=headers, data=json.dumps(data))
if response.status_code == 200:
print("常客旅客号码已成功添加到PNR中")
else:
print("添加常客旅客号码失败")
# 调用添加常客旅客号码函数
pnr = "ABC123" # 替换为实际的PNR编号
frequent_traveler_number = "123456789" # 替换为实际的常客旅客号码
add_frequent_traveler_number(pnr, frequent_traveler_number)
请注意,上述代码示例中的client_id和client_secret需要替换为您自己的API访问凭证。另外,该示例仅适用于Amadeus测试环境,如果要在生产环境中使用,请将URL中的test.api.amadeus.com替换为api.amadeus.com。