Change Passenger Info
متد GetPenalty
- تغییر عنوان مسافر (آقا / خانم): در حال حاضر این نوع تغییر رایگان بوده و مشمول هزینه نمیباشد.
- تغییر نام مسافر (حداکثر یک یا دو کاراکتر): امکانپذیری این تغییر بسته به تنظیمات تأمینکننده خدمات است و مشمول هزینه میباشد. هدف اصلی استفاده از این متد، محاسبه هزینه جریمه تغییر نام مسافر است.
- تغییر اطلاعات گذرنامه شامل شماره گذرنامه، تاریخ انقضا و محل صدور: در حال حاضر این نوع تغییر رایگان بوده و مشمول هزینه نمیباشد.
نحوهی عملکرد این متد به این صورت است که تغییرات موردنظر خود را در اطلاعات یک مسافر به وبسرویس ارسال میکنید. وبسرویس پس از بررسی، امکانپذیر بودن یا نبودن این تغییرات را اعلام میکند (برای مثال اگر تعداد کاراکترهای تغییر یافته در نام مسافر بیش از حد مجاز باشد، تغییر غیرقابل انجام اعلام میشود) و در صورت امکان، مبلغ جریمهی مربوط به این تغییرات را در خروجی برمیگرداند.
در نهایت، پس از تأیید و در صورت تمایل، میتوانید متد DoChange را برای اعمال نهایی تغییرات فراخوانی کنید.
توجه: سرویس «تغییر اطلاعات مسافر» ممکن است برای برخی از تأمینکنندگان غیرفعال باشد. در چنین شرایطی، هنگام فراخوانی متد GetPenalty، خطای Error1033-ChangePassengerInfoAccessDenied به عنوان پاسخ بازگردانده خواهد شد. در صورت دریافت این خطا، امکان تغییر اطلاعات مسافر از طریق وبسرویس وجود ندارد و لازم است تغییرات موردنظر بهصورت مستقیم با تأمینکننده مربوطه انجام شود.
API Endpoint
https://{SupplierWebsiteUrl}/api/Partners/Flight/ChangePassengerInfo/V1/GetPenalty post
Request Parameters
نمونه کلاس Request به زبان سی شارپ در پروژه Partners.Contracts (دانلود) در پوشه زیر موجود است:
\Flight\ChangePassengerInfo\V1\GetPenalty\RequestModel
string
string
رمز عبور به صورت MD5 شده
Pnr
string
رفرنس رزروی که می خواهیم اطلاعات مسافران آن را تغییر دهیم.
List(Passenger)
لیست مسافرانی که می خواهیم اطلاعات آنها را تغییر دهیم.
string
این شناسه بهصورت یکتا برای هر مسافر تعریف میشود و در خروجی متدهای زیر قابل دسترسی است:
Complex type
اطلاعات جدیدی که می خواهید برای مسافر ثبت شود
string
جنسیت مسافر که مقدار آن میتواند یکی از دو حالت زیر باشد:
M: مردF: زن
string
نام مسافر
string
نام خانوادگی مسافر
complex type
اطلاعات گذرنامه مسافر
Number
string
شماره گذرنامه مسافر
string
تارخ انقضا گذرنامه با فرمت yyyy-MM-dd و به صورت میلادی.
string
کد ISO دو حرفی یا سه حرفی محل صدور گذرنامه مسافر
جهت مشاهده کد ISO کشور ها اینجا کلیک نمایید.
به عنوان مثال برای ایران می توانید یکی از مقدارهای IR یا IRN را وارد نمایید.
Culture
string
مشخص میکند پیامهای خطا بر اساس کدام زبان خروجی داده شوند. مقدار این فیلد میتواند یکی از گزینههای en-US، ar-IQ یا fa-IR باشد.
{
"Username": "TestDev1",
"Password": "25f9e794323b453885f5181f1b624d0b",
"Pnr": "AG3B2V",
"PassengerList": [{
"Id": "ae3c2436-4be8-48b3-a3f1-1b2c2c03c32d",
"PassengerNewData": {
"GenderType": "M",
"FirstName": "SEYEDEHKIANA",
"LastName": "MOSTAMAND",
"Passport": null
}
}, {
"Id": "f0ecdce9-3734-4074-80ac-e3f0c173afd7",
"PassengerNewData": {
"GenderType": "F",
"FirstName": "MOHADESEH",
"LastName": "ASHRAFVAGHEFI",
"Passport": null
}
}
],
"Culture": "fa-IR"
}
{
"Username": "TestDev1",
"Password": "25f9e794323b453885f5181f1b624d0b",
"Pnr": "I54848",
"PassengerList": [{
"Id": "355e2df8-fae0-4cad-86f4-5d511b9008bc",
"PassengerNewData": {
"GenderType": "M",
"FirstName": "ABED",
"LastName": "HOSSEYNI",
"Passport": {
"Number": "A56753465",
"ExpiryDate": "2029-11-20",
"PlaceOfIssueCountryCode": "IR"
}
}
}
],
"Culture": "fa-IR"
}
Response Data
نمونه کلاس Response به زبان سی شارپ در پروژه Partners.Contracts (دانلود) در پوشه زیر موجود است:
\Flight\ChangePassengerInfo\V1\GetPenalty\ResponseModel
PassengerList
List(Passenger)
لیستی از مسافران به همراه جزییات جریمه هر کدام.
string
شناسه منحصر به فرد مسافر
string
جنسیت مسافر
string
نام مسافر
string
نام خانوادگی مسافر
string
string
شماره گذرنامه مسافر
string
تارخ انقضا گذرنامه با فرمت yyyy-MM-dd و به صورت میلادی.
string
کد ISO دو حرفی محل صدور گذرنامه مسافر
complex type
Status
این فیلد نشان میدهد که آیا تغییرات مجاز هستند یا خیر. به عنوان مثال، اگر تعداد کاراکترهای تغییر یافته در نام مسافر (مثلاً ۳ کاراکتر) بیشتر از تعداد کاراکترهای مجاز برای تغییر (مثلاً ۲ کاراکتر) باشد، مقدار این فیلد false خواهد بود.
ErrorMessage
string
اگر مقدار فیلد Status برابر با false باشد، این فیلد حاوی توضیحاتی است که دلیل عدم امکان اعمال تغییرات را مشخص میکند.
Penalty
decimal
{
"PassengerList": [{
"Id": "ae3c2436-4be8-48b3-a3f1-1b2c2c03c32d",
"OldData": {
"GenderType": "M",
"FirstName": "SEYEDEHKIANA",
"LastName": "MOSTAMAND",
"Passport": null
},
"NewData": {
"GenderType": "M",
"FirstName": "SEYEDEHKIANA",
"LastName": "MOSTAMAND",
"Passport": null
},
"Status": true,
"ErrorMessage": "",
"Penalty": 0.0
}, {
"Id": "f0ecdce9-3734-4074-80ac-e3f0c173afd7",
"OldData": {
"GenderType": "M",
"FirstName": "MOHADES",
"LastName": "ASHRAFVAGHEFI",
"Passport": null
},
"NewData": {
"GenderType": "F",
"FirstName": "MOHADESEH",
"LastName": "ASHRAFVAGHEFI",
"Passport": null
},
"Status": true,
"ErrorMessage": "",
"Penalty": 2000000.0
}
]
}
{
"PassengerList": [{
"Id": "355e2df8-fae0-4cad-86f4-5d511b9008bc",
"OldData": {
"GenderType": "M",
"FirstName": "ABED",
"LastName": "HOSSEYNI",
"Passport": {
"Number": "A15793202",
"ExpiryDate": "2028-01-28",
"PlaceOfIssueCountryCode": "IR"
}
},
"NewData": {
"GenderType": "M",
"FirstName": "ABED",
"LastName": "HOSSEYNI",
"Passport": {
"Number": "A56753465",
"ExpiryDate": "2029-11-20",
"PlaceOfIssueCountryCode": "IR"
}
},
"Status": true,
"ErrorMessage": "",
"Penalty": 0.0
}
]
}
Response common exceptions
در جدول زیر لیستی از خطاهایی که ممکن است بعد از فراخوانی این متد برگشت داده شود، فهرست شده است.
| ExceptionType | توضیح خطا |
|---|---|
Error1032-ReservationChangePassengerInfoIsDoneOnceBefore | این رزرو قبلا اصلاح شده است و امکان ویرایش مجدد آن وجود ندارد. |
Error1033-ChangePassengerInfoAccessDenied | سرویس ویرایش اطلاعات مسافران روی سیستم تامین کننده فعال نیست. |
Exception | خطای نامشخص. جهت دریافت اطلاعات بیشتر باید به ErrorMessage داخل json برگشتی مراجعه نمود. |