ساخت فرایند رزرو پرواز
این راهنما مسافر را از انتخاب مسیر تا صدور بلیت همراهی میکند و پنج اندپوینت پرواز را در یک فرایند کنار هم میگذارد.
پیش از شروع#
- یک
SessionId. بخش احراز هویت را ببینید. - مجوزهای
air_low_fare_search،air_revalidate،air_bookوair_order_ticket.
قدم ۱: جستوجو#
مسیر، تاریخها، کلاس پرواز و ترکیب مسافران را بفرستید. FareSourceCode برنامهٔ سفری را که مسافر انتخاب میکند نگه دارید.
curl -X POST https://api.simorghapi.com/api/Air/AirLowFareSearch \
-H "Content-Type: application/json" \
-d '{
"SessionId": "8f3c81d2-4a5b-4c6d-9e0f-1a2b3c4d5e6f",
"AdultCount": 1, "ChildCount": 0, "InfantCount": 0,
"PricingSourceType": "All", "RequestOption": "All",
"TravelPreference": { "CabinType": 3 },
"OriginDestinationInformations": [
{ "OriginLocationCode": "IST", "DestinationLocationCode": "DXB", "DepartureDateTime": "2026-10-12T00:00:00" }
]
}'برای رابط کاربری سریعتر، از جستوجوی جریانی (streaming) استفاده کنید و نتایج را همانطور که میرسند نمایش دهید.
قدم ۲: اعتبارسنجی مجدد#
وقتی مسافر انتخابش را تأیید کرد، نرخ را دوباره قیمتگذاری کنید. رزرو را با FareSourceCodeـی انجام دهید که این فراخوانی برمیگرداند، نه کدی که از جستوجو گرفتهاید.
curl -X POST https://api.simorghapi.com/api/Air/AirRevalidate \
-H "Content-Type: application/json" \
-d '{ "SessionId": "8f3c81d2-...", "FareSourceCode": "dHA6ODc0NTE6ZmwxMjM0OjMyNw==" }'اگر این فراخوانی Err0102003 یا Err0102005 برگرداند، آن نرخ دیگر موجود نیست. دوباره جستوجو کنید.
قدم ۳: رزرو#
مسافران و یک مخاطب اصلی را بفرستید. یک UniqueId و یک TktTimeLimit دریافت میکنید. هنوز مبلغی کسر نمیشود.
curl -X POST https://api.simorghapi.com/api/Air/AirBook \
-H "Content-Type: application/json" \
-d '{
"SessionId": "8f3c81d2-...",
"FareSourceCode": "dHA6ODc0NTE6ZmwxMjM0OjMyNw==",
"TravelerInfo": {
"PhoneNumber": "+441234567890",
"Email": "traveller@example.com",
"AirTravelers": [
{ "PassengerType": 1, "Gender": 0, "DateOfBirth": "1990-05-14",
"PassengerName": { "PassengerFirstName": "Jane", "PassengerLastName": "Doe" } }
]
}
}'قدم ۴: دریافت پول، سپس صدور بلیت#
مبلغ را از طریق درگاه پرداخت خودتان از مسافر بگیرید. سپس پیش از TktTimeLimit بلیت را صادر کنید. در همین مرحله مبلغ نرخ از موجودی دفتر شما کسر میشود.
curl -X POST https://api.simorghapi.com/api/Air/AirOrderTicket \
-H "Content-Type: application/json" \
-d '{ "SessionId": "8f3c81d2-...", "UniqueId": "TP-2026-000512" }'اگر مهلت را از دست بدهید، رزرو آزاد میشود و باید دوباره از قدم ۱ شروع کنید.
قدم ۵: تأیید بلیت#
رزرو را بخوانید تا شمارهٔ بلیتهای الکترونیکی و وضعیت را به مسافر نشان دهید.
curl -X POST https://api.simorghapi.com/api/Air/AirBookingData \
-H "Content-Type: application/json" \
-d '{ "SessionId": "8f3c81d2-...", "UniqueId": "TP-2026-000512" }'مدیریت خطاهای رایج#
Err0101001در هر مرحله: نشست منقضی شده است. دوباره احراز هویت کنید و یک بار دیگر تلاش کنید.Err0102003یاErr0102005در اعتبارسنجی مجدد یا رزرو: نرخ تغییر کرده است. دوباره جستوجو کنید و قیمت جدید را نشان دهید.Err0103006در صدور بلیت: رزرو در وضعیت قابل صدور نیست. رزرو را بخوانید و مهلت را بررسی کنید.
فهرست کامل فیلدها در صفحههای مرجع پرواز آمده است.