﻿---
title: "GetHistory | Retrieve Booking | پرواز | مستندات وب سرویس سپهر"
---
# retrieve-booking



## متد GetHistory

با استفاده از این متد می توان کلیه اطلاعات مربوط به یک رزرو را دریافت نمود

این اطلاعات شامل آخرین وضعیت رزرو، رزرو اولیه و تاریخچه اتفاقات – مثلا سگمنت های کنسل شده یا تغییر پرواز – را شامل می گردد.

زمان (تاریخ و ساعت) هایی که در این وب سرویس خروجی داده میشود – مثلا فیلد BookingDateTime – بر اساس ناحیه زمانی UTC می باشد و در صورت نیاز باید آنها را به زمان ایران تبدیل نمایید.

زمان پرواز به ناحیه زمانی محلی خروجی داده می شود. مثلا برای یک پرواز تهران استانبول، زمان خروج از مبدا به ناحیه زمانی ایران و زمان رسیدن به مقصد به ناحیه زمانی ترکیه خروجی داده می شود.

<br>

API Endpoint

```http
POST https://{SupplierWebsiteUrl}/api/Partners/Flight/RetrieveBooking/V3/GetHistory
```

<br>

## Request Parameters

- `Username`

  string

  required

  نام کاربری

- `Password`

  string

  required

  رمز عبور به صورت MD5 شده

- `Pnr`

  string

  required

  رفرنس سیستم سپهر که بعد از فراخوانی متد Book دریافت نموده اید

<br>

## Sample Request

```curl
curl -X POST https://SepehrApiTest.ir/api/Partners/Flight/RetrieveBooking/V3/GetHistory \
  -H "Content-Type: application/json; charset=utf-8" \
  -H "Accept: application/json" \
  -H "Accept-Encoding: gzip, deflate" \
  -d '{
    "Username": "testdev1",
    "Password": "25f9e794323b453885f5181f1b624d0b",
    "Pnr": "ES566K"
}'
```

<br>

## Response Parameters

- `LastState`

  complex type

  اطلاعات مربوط به آخرین وضعیت رزرو

  - `PassengerList`

    List(Passenger)

    لیست مسافران

    - `PassengerList.FirstName`

      string

      نام مسافر

    - `PassengerList.LastName`

      string

      نام خانوادگی مسافر

    - `PassengerList.AgeType`

      string

      گروه سنی مسافر که شامل یکی از مقادیر ADL یا CHD یا INF می باشد

    - `PassengerList.Gender`

      string

      جنسیت مسافر که شامل یکی از مقادیر M به معنی مذکر یا F به معنی مونث می باشد.

    - `PassengerList.Birthdate`

      string

      تاریخ تولد مسافر به صورت میلادی و با فرمت yyyy-MM-dd

    - `PassengerList.NationalityCountry`

      string

      کد دوحرفی کشور مربوط به ملیت مسافر

    - `PassengerList.IranianCartMelli`

      complex type

      کد ملی مسافر برای مسافران ایرانی

      - `PassengerList.IranianCartMelli.CodeMelli`

        string

        کد ملی

    - `PassengerList.Passport`

      complex type

      اطلاعات مربوط به گذرنامه مسافر

      - `PassengerList.Passport.Number`

        string

        شماره گذرنامه

      - `PassengerList.Passport.ExpiryDate`

        string

        تاریخ انقضا گذرنامه به صورت میلادی و با فرمت yyyy-MM-dd

      - `PassengerList.Passport.PlaceOfIssueCountry`

        string

        کد دو حرفی محل صدور گذرنامه

    - `PassengerList.SegmentList`

      List(Segment)

      لیست سگمنت های مسافر

      بعد از کنسل شده یک سگمنت، اطلاعات مربوط به آن از لیست خروجی این فیلد حذف می گردد.

      و رفتار سیستم بدین شکل نخواهد بود که سگمنت های کنسل شده را خروجی داده و با یک فیلد مثلا Status یا UN وضیت کنسل شدن آن را مشخص نماید.

      بعد از کنسل شدن یک سگمنت، اطلاعات آن به همراه جزییات جریمه و مبلغ عودتی در فیلد History_Cancelation خروجی داده می شود.

      - `PassengerList.SegmentList.FlightNumber`

        string

        شماره پرواز

      - `PassengerList.SegmentList.FlightDate`

        string

        تاریخ پرواز به صورت میلادی و به ناحیه زمانی فرودگاه مبدا و با فرمت yyyy-MM-dd HH:mm

      - `PassengerList.SegmentList.OriginIataCode`

        string

        کد یاتا فرودگاه مبدا

      - `PassengerList.SegmentList.DestinationIataCode`

        string

        کد یاتا فرودگاه مقصد

      - `PassengerList.SegmentList.CabinType`

        string

        نوع کابین کلاس پروازی که می تواند یکی از موارد زیر را داشته باشد:

        - Economy
        - EconomyPlus
        - PremiumEconomy
        - Business
        - BusinessComfort
        - BusinessPremium
        - First

      - `PassengerList.SegmentList.BookingCode`

        string

        معمولا ترکیب یک یا دو حرف بوده و مشخص کننده نوع BookingCode می باشد. مانند Y یا M.

      - `PassengerList.SegmentList.FareName`

        string

        اسم Fare

      - `PassengerList.SegmentList.AirlineIataCode`

        string

        کد یاتا ایرلاین

      - `PassengerList.SegmentList.OriginalPnr`

        string

        رفرنس مرجع که پذیرش مسافر در فرودگاه بر اساس آن انجام می شود.

        پیشنهاد می گردد این رفرنس را به همراه رفرنس خود روی بلیط مسافر نمایش دهید.

        کاربرد این رفرنس صرفا جهت نمایش روی بلیط می باشد و برای انجام مواردی مانند استرداد بلیط، شما از طریق رفرنس LocalPnr با تامین کننده ارتباط برقرار می نمایید.

        مقدار این فیلد می تواند تا 20 کاراکتر طول داشته باشد.

        جهت تست این فیلد می توانید از تست سناریوهای زیر استفاده نمایید:

        - [تست سناریو شماره 17 پرواز چارتری](/flight/booking/v12/testscenarios#CH17)
        - [تست سناریو شماره 10 پرواز وب سرویسی](/flight/booking/v12/testscenarios#WS10)

      - `PassengerList.SegmentList.LocalTicketNumber`

        string

        شماره بلیط سیستم داخلی تامین کننده.

        این شماره بلیط مربوط به سیستم داخلی تامین کننده بوده و جهت استرداد یا ارتباطات بعدی شما با تامین کننده کاربرد دارد.

        پذیرش مسافر در فرودگاه بر اساس شماره بلیط OriginalTicketNumber انجام می گردد.

        بنابراین پیشنهاد می کنیم این شماره بلیط را روی بلیط مسافر نمایش ندهید و صرفا جهت استرداد یا پیگیری های بعدی آن را در دیتابیس خود ذخیره نمایید.

        در صورت رفت و برگشت بودن رزرو، سیستم دو شماره بلیط متفاوت برای پرواز رفت و برگشت تولید خواهد کرد.

        به دلیل اینکه شماره بلیط ممکن است با عدد صفر شروع شود، لطفا دقت نمایید که مقدار این فیلد را به صورت string ذخیره نمایید و نه integer.

        مقدار این فیلد می تواند تا 13 کاراکتر طول داشته باشد.

      - `PassengerList.SegmentList.OriginalTicketNumber`

        string

        شماره بلیط مرجع

        با توجه با اینکه در سال های اخیر پذیرش مسافر در فرودگاه بر اساس رفرنس انجام می پذیرد، این فیلد عملا بدون کاربرد می باشد و نیازی به نمایش آن روی بلیط مسافر وجود ندارد.

        با توجه به بدون کاربرد بودن این فیلد، به دلیل شرایط احتمالی فرودگاهای قدیمی تر، این فیلد حذف نگردیده است.

        در صورت رفت و برگشت بودن رزرو، سیستم دو شماره بلیط متفاوت برای پرواز رفت و برگشت تولید خواهد کرد.

        به دلیل اینکه شماره بلیط ممکن است با عدد صفر شروع شود، لطفا دقت نمایید که مقدار این فیلد را به صورت string ذخیره نمایید و نه integer.

        مقدار این فیلد می تواند تا 13 کاراکتر طول داشته باشد.

      - `PassengerList.SegmentList.OriginalSupplierName`

        string

        در صورتی که تامین کننده خود از طریق وب سرویس روی یک تامین کننده دیگر اقدام به رزرو نموده باشد، نام تامین کننده اصلی در این فیلد خروجی داده خواهد شد

      - `PassengerList.SegmentList.SaleInfo`

        Complex type

        اطلاعات مربوط به نرخ فروش

        - `PassengerList.SegmentList.SaleInfo.BaseFare`

          decimal

          نرخ پایه بلیط

        - `PassengerList.SegmentList.SaleInfo.Tax`

          decimal

          مجموع مالیات

        - `PassengerList.SegmentList.SaleInfo.TotalFare`

          decimal

          مجموع نرخ پایه به علاوه مالیات

        - `PassengerList.SegmentList.SaleInfo.CommissionPercent`

          decimal

          کمیسیون درصدی

        - `PassengerList.SegmentList.SaleInfo.CalculatedAmountOfCommissionPercent`

          decimal

          مقدار مبلغی معادل کمیسیون درصدی

        - `PassengerList.SegmentList.SaleInfo.CommissionValue`

          decimal

          کمیسیون مبلغی

          در برخی پروازها، کمیسیون به جای درصدی به صورت مبلغی ارائه می گردد. که البته این مورد بسیار نادر اتفاق می افتد.

          در صورت تعریف شدن کمیسیون به صورت مبلغ، مقدار این فیلد مشخص کننده مقدار آن خواهد بود

        - `PassengerList.SegmentList.SaleInfo.Payable`

          decimal

          مبلغ نهایی

          مبلغ این فیلد در حساب بدهکاری خریدار منظور می گردد و مبنای پرداخت های پولی می باشد.

      - `PassengerList.SegmentList.FreeBaggage`

        Complex type

        اطلاعات مربوط به بار مجاز رایگان

        - `PassengerList.SegmentList.FreeBaggage.CheckedBaggage_Quantity`

          number

          تعداد چمدان

        - `PassengerList.SegmentList.FreeBaggage.CheckedBaggage_TotalWeight`

          number

          مجموع وزن چمدان ها

        - `PassengerList.SegmentList.FreeBaggage.HandBaggage_Quantity`

          number

          تعداد کیف بار دستی

        - `PassengerList.SegmentList.FreeBaggage.HandBaggage_TotalWeight`

          number

          مجموع وزن کیف و بار دستی

      - `PassengerList.SegmentList.JarimeCanceliTextFa`

        string

        جدول جریمه های استرداد به زبان فارسی

      - `PassengerList.SegmentList.JarimeCanceliTextEn`

        string

        جدول جریمه های استرداد به زبان انگلیسی

- `History_InitialBooking`

  complex type

  اطلاعات مربوط به رزرو اولیه

  مستندات این بخش در آینده تکمیل می گردد.

- `History_Cancelation`

  complex type

  تاریخچه مربوط به سگمنت های کنسل شده

  مستندات این بخش در آینده تکمیل می گردد.

- `History_PassengerInfoChanged`

  complex type

  تاریخچه مربوط به تغییرات اسامی و اطلاعات شخصی مسافران

  مستندات این بخش در آینده تکمیل می گردد.

- `History_ChangedFlight`

  complex type

  تاریخچه مربوط به تغییرات پرواز

  مستندات این بخش در آینده تکمیل می گردد.

<br>

## Sample Response

```json
{
    "LastState": {
        "PassengerList": [{
                "Id": "ed725f88-0b4f-47f9-adfc-453109618e21",
                "FirstName": "KHALED",
                "LastName": "SEDIGHI",
                "AgeType": "ADL",
                "Gender": "M",
                "Birthdate": "1994-09-16",
                "NationalityCountry": "IR",
                "IranianCartMelli": {
                    "CodeMelli": "0011756470"
                },
                "Passport": null,
                "SegmentList": [{
                        "FlightNumber": "3654",
                        "FlightDate": "2024-09-17 14:20",
                        "OriginIataCode": "THR",
                        "DestinationIataCode": "KIH",
                        "CabinType": "First",
                        "BookingCode": "FI",
                        "FareName": "JCL",
                        "AirlineIataCode": "B9",
                        "OriginalPnr": "ES566K",
                        "LocalTicketNumber": "1417222",
                        "OriginalTicketNumber": "1417222",
                        "OriginalSupplierName": "",
                        "SaleInfo": {
                            "BaseFare": 18000000.00,
                            "Tax": 0.00,
                            "TotalFare": 18000000.00,
                            "CommissionPercent": 5,
                            "CalculatedAmountOfCommissionPercent": 900000.00,
                            "CommissionValue": 0.00,
                            "Payable": 17100000.00
                        },
                        "FreeBaggage": {
                            "CheckedBaggage_Quantity": 0,
                            "CheckedBaggage_TotalWeight": 0,
                            "HandBaggage_Quantity": 0,
                            "HandBaggage_TotalWeight": 0
                        },
                        "JarimeCanceliTextFa": "جريمه استرداد تا 15 دقيقه بعد از رزرو (فقط تا 12 ساعت قبل از پرواز) 0 درصد مي باشد.\r\nجريمه استرداد از زمان صدور بليت تا ساعت 12 ظهر 3 روز قبل از پرواز 30 درصد مي باشد.\r\nجريمه استرداد از ساعت 12 ظهر 3 روز قبل از پرواز تا ساعت 12 ظهر 2 روز قبل از پرواز 50 درصد مي باشد.\r\nجريمه استرداد از ساعت 12 ظهر 2 روز قبل از پرواز تا ساعت 12 ظهر 1 روز قبل از پرواز 70 درصد مي باشد.\r\nجريمه استرداد از ساعت 12 ظهر 1 روز قبل از پرواز تا 20 ساعت قبل از پرواز 90 درصد مي باشد.\r\nجريمه استرداد از 20 ساعت قبل از پرواز به بعد 100 درصد مي باشد (NoShow).",
                        "JarimeCanceliTextEn": "The cancellation penalty until 15 minutes after reservation(only 12 hours before flight): 0%\r\nThe cancellation penalty from the time of ticket issuance until (12:00 noon), 3 days before the flight: 30%\r\nThe cancellation penalty from (12:00 noon), 3 days before the flight until (12:00 noon), 2 days before the flight: 50%\r\nThe cancellation penalty from (12:00 noon), 2 days before the flight until (12:00 noon), 1 days before the flight: 70%\r\nThe cancellation penalty from (12:00 noon), 1 days before the flight until 20 hours before the flight: 90%\r\nThe cancellation penalty from 20 hours before the flight onwards: 100% (No-Show)"
                    }
                ]
            }, {
                "Id": "5ba9cbcf-72a4-4a85-8fc4-0179b40242ec",
                "FirstName": "SAGHAR",
                "LastName": "ABASI",
                "AgeType": "INF",
                "Gender": "M",
                "Birthdate": "2023-09-16",
                "NationalityCountry": "IR",
                "IranianCartMelli": {
                    "CodeMelli": "0010175393"
                },
                "Passport": null,
                "SegmentList": [{
                        "FlightNumber": "3654",
                        "FlightDate": "2024-09-17 14:20",
                        "OriginIataCode": "THR",
                        "DestinationIataCode": "KIH",
                        "CabinType": "First",
                        "BookingCode": "FI",
                        "FareName": "JCL",
                        "AirlineIataCode": "B9",
                        "OriginalPnr": "ES566K",
                        "LocalTicketNumber": "1417223",
                        "OriginalTicketNumber": "1417223",
                        "OriginalSupplierName": "",
                        "SaleInfo": {
                            "BaseFare": 10000000.00,
                            "Tax": 0.00,
                            "TotalFare": 10000000.00,
                            "CommissionPercent": 0,
                            "CalculatedAmountOfCommissionPercent": 0.00,
                            "CommissionValue": 0.00,
                            "Payable": 10000000.00
                        },
                        "FreeBaggage": {
                            "CheckedBaggage_Quantity": 0,
                            "CheckedBaggage_TotalWeight": 0,
                            "HandBaggage_Quantity": 0,
                            "HandBaggage_TotalWeight": 0
                        },
                        "JarimeCanceliTextFa": "جریمه استرداد نوزاد بدون صندلی صفر می باشد",
                        "JarimeCanceliTextEn": "Infants without a seat are not charged for cancel/refund"
                    }
                ]
            }
        ]
    },
    "History_InitialBooking": {
        "BookingDateTime": "2024-09-16 09:23:30",
        "Phone": "+989352283333",
        "Email": "your-email-address@your-domain.com",
        "Remarks": null,
        "PassengerList": [{
                "Id": "ed725f88-0b4f-47f9-adfc-453109618e21",
                "AgeTypeCode": "ADL",
                "FirstName": "KHALED",
                "LastName": "SEDIGHI",
                "Gender": "M",
                "Birthdate": "1994-09-16",
                "NationalityCountry": "IR",
                "IranianCartMelli": {
                    "CodeMelli": "0011756470"
                },
                "Passport": null,
                "SegmentList": [{
                        "FlightNumber": "3654",
                        "FlightDate": "2024-09-17 14:20",
                        "OriginIataCode": "THR",
                        "DestinationIataCode": "KIH",
                        "CabinType": "First",
                        "BookingCode": "FI",
                        "FareName": "JCL",
                        "AirlineIataCode": "B9",
                        "OriginalPnr": "ES566K",
                        "LocalTicketNumber": "1417222",
                        "OriginalTicketNumber": "1417222",
                        "OriginalSupplierName": "",
                        "SaleInfo": {
                            "BaseFare": 18000000.00,
                            "Tax": 0.00,
                            "TotalFare": 18000000.00,
                            "CommissionPercent": 5,
                            "CalculatedAmountOfCommissionPercent": 900000.00,
                            "CommissionValue": 0.00,
                            "Payable": 17100000.00
                        }
                    }
                ]
            }, {
                "Id": "5ba9cbcf-72a4-4a85-8fc4-0179b40242ec",
                "AgeTypeCode": "INF",
                "FirstName": "SAGHAR",
                "LastName": "ABASI",
                "Gender": "M",
                "Birthdate": "2023-09-16",
                "NationalityCountry": "IR",
                "IranianCartMelli": {
                    "CodeMelli": "0010175393"
                },
                "Passport": null,
                "SegmentList": [{
                        "FlightNumber": "3654",
                        "FlightDate": "2024-09-17 14:20",
                        "OriginIataCode": "THR",
                        "DestinationIataCode": "KIH",
                        "CabinType": "First",
                        "BookingCode": "FI",
                        "FareName": "JCL",
                        "AirlineIataCode": "B9",
                        "OriginalPnr": "ES566K",
                        "LocalTicketNumber": "1417223",
                        "OriginalTicketNumber": "1417223",
                        "OriginalSupplierName": "",
                        "SaleInfo": {
                            "BaseFare": 10000000.00,
                            "Tax": 0.00,
                            "TotalFare": 10000000.00,
                            "CommissionPercent": 0,
                            "CalculatedAmountOfCommissionPercent": 0.00,
                            "CommissionValue": 0.00,
                            "Payable": 10000000.00
                        }
                    }
                ]
            }
        ]
    },
    "History_Cancelation": {
        "HistoryList": []
    },
    "History_PassengerInfoChanged": {
        "HistoryList": []
    },
    "History_ChangedFlight": {
        "HistoryList": []
    }
}
```

<br>

## Response common exceptions

در جدول زیر لیستی از خطاهایی که ممکن است بعد از فراخوانی این متد برگشت داده شود، فهرست شده است.

| ExceptionType | توضیح خطا |
|---|---|
| Exception | خطای نامشخص. جهت دریافت اطلاعات بیشتر باید به ErrorMessage داخل json برگشتی مراجعه نمود. |

<br>
