HaloSync
Sandbox(3.1.0)
  • Sandbox(3.1.0)
  • Production(3.1.0)
HomeLunaAlbus
HomeLunaAlbus
Sandbox(3.1.0)
  • Sandbox(3.1.0)
  • Production(3.1.0)
  1. PolarHub API
  • Overview
  • Get Started
    • What is HaloSync?
    • Supported Airlines
    • PolarHub Credential
  • Airline Integration Guide
    • Carrier Support Matrix
    • Operational Notes
  • PolarHub API
    • 🔑 Transaction ID Guidelines
    • 🔐 Authentication: HMAC Guide
    • AirShopping
      POST
    • OfferPrice
      POST
    • OrderCreate
      POST
    • OrderRetrieve
      POST
    • ServiceList
      POST
    • SeatAvailability
      POST
    • OrderChange
      POST
    • OrderReshop
      POST
    • OrderQuote
      POST
    • OrderCancel
      POST
  • PolarHub Errors&Troubleshooting
    • Common Error Codes
  • Release Notes
    • PolarHub Release Note
    • Albus Release Note
    • Luna Release Note
  • Support & Contact
    • General FAQ
    • Contact (Integration & Support)
  • Schemas
    • PolarHub Schema 2025.6
      • comm
        • RequestOfferItemType
        • RequestOrderItemType
        • OrderServicingDeleteType
        • TravelAgencyType
        • OriginDestType
        • PaxCodeType
        • CriteriaType
        • ResponseParameterType
        • ResultMessageType
        • DataListsType
        • OrderOfferType
        • OfferType
        • OfferItemInfoType
        • PaxType
        • PaymentType
        • ContactInfoType
        • OrderViewOrderType
        • OfferType_Extend
      • OrderChangeRQ
      • OrderCancelRS
      • OrderCancelRQ
      • OrderReshopRS
      • OrderQuoteRQ
      • OrderReshopRQ
      • OrderRetrieveRQ
      • ServiceListRS
      • ServiceListRQ
      • SeatAvailabilityRS
      • SeatAvailabilityRQ
      • OrderViewRS
      • OrderCreateRQ
      • OfferPriceRS
      • OfferPriceRQ
      • AirShoppingRS
      • AirShoppingRQ
    • PolarHub Schema 2025.3
      • comm
        • TravelAgencyType
        • OriginDestType
        • PaxCodeType
        • CriteriaType
        • ResponseParameterType
        • ResultMessageType
        • DataListsType
        • OrderOfferType
        • OfferType
        • OfferItemInfoType
        • PaxType
        • PaymentType
        • ContactInfoType
        • OrderViewOrderType
        • OfferType_Extend
      • AirShoppingRS
      • OrderChangeRQ
      • OrderCancelRQ
      • OfferPriceRS
      • OrderCreateRQ
      • OrderViewRS
      • SeatAvailabilityRQ
      • SeatAvailabilityRS
      • ServiceListRQ
      • ServiceListRS
      • OrderRetrieveRQ
      • OrderReshopRQ
      • OrderQuoteRQ
      • OrderReshopRS
      • OrderCancelRS
      • OfferPriceRQ
      • AirShoppingRQ
    • PolarHub Schema 2025.7
      • comm
        • TravelAgencyType
        • OriginDestType
        • PaxCodeType
        • CriteriaType
        • ResponseParameterType
        • ResultMessageType
        • DataListsType
        • OrderOfferType
        • OfferType
        • OfferItemInfoType
        • PaxType
        • PaymentType
        • ContactInfoType
        • OrderViewOrderType
        • OfferType_Extend
      • AirShoppingRS
      • OfferPriceRS
      • OrderViewRS
      • SeatAvailabilityRS
      • ServiceListRS
      • OrderReshopRS
      • OrderCancelRS
      • OrderChangeRQ
      • OrderCancelRQ
      • OrderQuoteRQ
      • OfferPriceRQ
      • AirShoppingRQ
      • OrderCreateRQ
      • SeatAvailabilityRQ
      • OrderRetrieveRQ
      • OrderReshopRQ
      • ServiceListRQ
  1. PolarHub API

AirShopping

POST
https://polarhub-tsdv001.sandbox.halo-platform.net/hub/polarpie/v2/airShopping
PolarHub API
Last modified:2025-11-06 06:17:21

Overview#

The AirShopping API performs flight searches based on specific conditions and returns a list of airline offers that match the request criteria. The search results include additional information such as fares, baggage allowance, and fare rules.

Usage Guidelines#

Passenger#

Type: ADT / CHD / INF
Max 9 passengers supported

Trip type#

One-way, Round-trip, Multi-city, Open jaw
📌
OW, RT only supported : KE

Airlines selection#

One specific
Multiple
All

Direct flight only#

Fare search restricted to non-stop flights only
📌
AA, AF, BA, EK, HA, KE, KL, LH

Schedule#

Interline, codeshare schedules are provided

Fare#

Public / Private / Negotiated fare supported
📌
Public fare only supported : KE
Special fare / Program fare / Promotion fare apply
📌
Promotion Fare Application Differences by Airline
Airline-specific rules for applying promotion fares may vary.
Although PolarHub supports three types of promotion fares, the way airlines apply their promotion codes is not fixed.
The application point can differ by airline or even by individual promotion within the same airline.

FFN (Loyalty program)#

Supported: AF, KL

MatchResult#

Full
Partial
Path: AirShoppingRS/Offer/MatchResult
🔈Note
Refer to the following example code

Request

Header Params

Body Params application/json

Examples
{
    "Sender": {
        "TravelAgency": {
            "AgencyID": "TSDV001",
            "SiteCode": null,
            "SalesBranchID": "01"
        }
    },
    "PointOfSale": "KR",
    "TransactionID": "7f797f97b24143438c58c95bc3d842e5",
    "Query": {
        "OriginDestList": [
            {
                "OriginCode": "ICN",
                "DestCode": "LHR",
                "DepartureDate": "2025-12-06"
            },
            {
                "OriginCode": "LHR",
                "DestCode": "ICN",
                "DepartureDate": "2026-01-05"
            }
        ],
        "PaxList": [
            {
                "Ptc": "ADT",
                "PaxID": "PAXA1",
                "LoyaltyProgramAccount": []
            }
        ],
        "Cabin": "Y",
        "Criteria": {
            "Direct": false,
            "AirlinePreference": {
                "AirlineID": [
                    "LH",
                    "LX",
                    "OS",
                    "SQ",                
                    "TK"
                ]
            }
        }
    }
}

Request Code Samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
cURL
curl --location --request POST 'https://polarhub-tsdv001.sandbox.halo-platform.net/hub/polarpie/v2/airShopping' \
--header 'x-date: {{Header Construction - Step 1: Date Header}}' \
--header 'digest: SHA-512={{Header Construction - Step 2: Digest Header}}' \
--header 'authorization: hmac username={{TenantID}}, algorithm="hmac-sha512", headers="x-date digest", signature={{Header Construction - Step 3: Authorization Header}}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "Sender": {
        "TravelAgency": {
            "AgencyID": "TSDV001",
            "SiteCode": null,
            "SalesBranchID": "01"
        }
    },
    "PointOfSale": "KR",
    "TransactionID": "7f797f97b24143438c58c95bc3d842e5",
    "Query": {
        "OriginDestList": [
            {
                "OriginCode": "ICN",
                "DestCode": "LHR",
                "DepartureDate": "2025-12-06"
            },
            {
                "OriginCode": "LHR",
                "DestCode": "ICN",
                "DepartureDate": "2026-01-05"
            }
        ],
        "PaxList": [
            {
                "Ptc": "ADT",
                "PaxID": "PAXA1",
                "LoyaltyProgramAccount": []
            }
        ],
        "Cabin": "Y",
        "Criteria": {
            "Direct": false,
            "AirlinePreference": {
                "AirlineID": [
                    "LH",
                    "LX",
                    "OS",
                    "SQ",                
                    "TK"
                ]
            }
        }
    }
}'

Responses

🟢200Success
application/json
Body

Example
{
    "ResultMessage": {
        "Code": "string",
        "Message": "string",
        "MessageDetail": {
            "Errors": [
                {
                    "Owner": "string",
                    "Message": "string",
                    "Code": "string",
                    "Status": "string",
                    "ShortText": "string",
                    "Type": "string"
                }
            ],
            "Warnings": [
                {
                    "Owner": "string",
                    "Message": "string",
                    "Code": "string",
                    "Status": "string",
                    "ShortText": "string",
                    "Type": "string"
                }
            ]
        }
    },
    "Recipient": {
        "TravelAgency": {
            "AgencyID": "string",
            "SiteCode": "string",
            "AgencyName": "string",
            "ContactInfoRefID": [
                "string"
            ]
        }
    },
    "PointOfSale": "string",
    "TransactionID": "string",
    "Offer": [
        {
            "ResponseID": "string",
            "OfferID": "string",
            "Owner": "string",
            "TotalPrice": {
                "TotalAmount": {
                    "Amount": 0,
                    "CurCode": "string"
                },
                "TravelAgencyServiceFee": [
                    {
                        "Ptc": "string",
                        "Fee": {
                            "Amount": 0,
                            "CurCode": "string"
                        }
                    }
                ],
                "TotalBaseAmount": {
                    "Amount": 0,
                    "CurCode": "string"
                },
                "TotalTaxAmount": {
                    "Amount": 0,
                    "CurCode": "string"
                },
                "AgencyPromotion": {
                    "PromotionCode": "string",
                    "TotalPromotionAmount": {
                        "Amount": 0,
                        "CurCode": "string"
                    },
                    "PtcPromotionAmount": [
                        {
                            "Ptc": "string",
                            "Amount": {
                                "Amount": 0,
                                "CurCode": "string"
                            }
                        }
                    ]
                },
                "FopPromotion": [
                    {
                        "PromotionCode": "string",
                        "PaymentType": "string",
                        "TotalPromotionAmount": {
                            "Amount": 0,
                            "CurCode": "string"
                        },
                        "PtcPromotionAmount": [
                            {
                                "Ptc": "string",
                                "Amount": {
                                    "Amount": 0,
                                    "CurCode": "string"
                                }
                            }
                        ],
                        "CardCode": "string",
                        "CardName": "string"
                    }
                ]
            },
            "OfferTimeLimit": "string",
            "JourneyOverview": [
                {
                    "PaxJourneyRefID": "string",
                    "PriceClassInfo": {
                        "PriceClass": "string",
                        "Code": "string",
                        "Name": "string",
                        "Descriptions": [
                            {
                                "DescID": "string",
                                "Text": "string",
                                "Application": "string"
                            }
                        ]
                    }
                }
            ],
            "MatchResult": "string",
            "BaggageAllowance": [
                {
                    "PaxJourneyRefID": "string",
                    "PaxSegmentRefID": "string",
                    "PaxRefID": [
                        "string"
                    ],
                    "TypeCode": "string",
                    "ApplicableBagType": "string",
                    "Desc": [
                        "string"
                    ],
                    "PieceAllowance": "1PC",
                    "DimensionAllowance": {
                        "Length": {
                            "Value": 0,
                            "UnitCode": "string"
                        },
                        "Width": {
                            "Value": 0,
                            "UnitCode": "string"
                        },
                        "Height": {
                            "Value": 0,
                            "UnitCode": "string"
                        }
                    },
                    "MaximumWeightAllowance": {
                        "Value": 0,
                        "UnitCode": "string"
                    }
                }
            ],
            "OfferItem": [
                {
                    "OfferItemID": "string",
                    "Mandatory": true,
                    "Owner": "string",
                    "Price": {
                        "TotalAmount": {
                            "Amount": 0,
                            "CurCode": "string"
                        }
                    },
                    "PaxJourneyRefID": [
                        "string"
                    ],
                    "PaxRefID": [
                        "string"
                    ],
                    "Service": [
                        {
                            "ServiceID": "string",
                            "PaxRefID": "string",
                            "PaxJourneyRefID": "string",
                            "PaxSegmentRefID": "string",
                            "Status": "string",
                            "SelectedSeat": {
                                "Column": "string",
                                "Row": "string"
                            },
                            "Definition": {
                                "Name": "string",
                                "Desc": [
                                    {
                                        "DescID": "string",
                                        "Text": "string",
                                        "Application": "string"
                                    }
                                ],
                                "Rfic": "string",
                                "Rfisc": "string",
                                "ServiceCode": "string",
                                "BookingInstructions": {
                                    "SsrCode": [
                                        "string"
                                    ],
                                    "OsiText": [
                                        "string"
                                    ],
                                    "Text": [
                                        "string"
                                    ],
                                    "UpgradeMethod": "string",
                                    "Method": "string",
                                    "Equipment": "string"
                                }
                            }
                        }
                    ],
                    "FareDetail": [
                        {
                            "BaseAmount": {
                                "Amount": 0,
                                "CurCode": "string"
                            },
                            "TaxTotal": {
                                "Amount": 0,
                                "CurCode": "string"
                            },
                            "Tax": [
                                {
                                    "Amount": {
                                        "Amount": 0,
                                        "CurCode": "string"
                                    },
                                    "TaxCode": "string",
                                    "LocalAmount": {
                                        "Amount": 0,
                                        "CurCode": "string"
                                    },
                                    "Desc": "string",
                                    "Nation": "string"
                                }
                            ],
                            "FareComponent": [
                                {
                                    "PaxSegmentRefID": [
                                        "string"
                                    ],
                                    "Penalty": {
                                        "Change": "string",
                                        "Refund": "string",
                                        "NoShow": "string",
                                        "Detail": [
                                            {
                                                "Type": "string",
                                                "Amounts": [
                                                    {
                                                        "CurrencyAmountValue": 0,
                                                        "Code": "string",
                                                        "AmountApplication": "string"
                                                    }
                                                ],
                                                "Application": {
                                                    "Code": "string"
                                                }
                                            }
                                        ],
                                        "Description": [
                                            {
                                                "DescID": "string",
                                                "Text": "string",
                                                "Application": "string"
                                            }
                                        ]
                                    },
                                    "FareBasis": {
                                        "FareBasisCode": "string",
                                        "FareCode": "string",
                                        "CabinType": [
                                            {
                                                "PaxSegmentRefID": "string",
                                                "CabinCode": "string",
                                                "CabinName": "string",
                                                "Rbd": "string"
                                            }
                                        ]
                                    },
                                    "Remarks": [
                                        "string"
                                    ]
                                }
                            ],
                            "PaxRefID": [
                                "string"
                            ]
                        }
                    ]
                }
            ]
        }
    ],
    "DataLists": {
        "OriginDestList": [
            {
                "OriginCode": "string",
                "DestCode": "string",
                "OriginDestID": "string",
                "PaxJourneyRefID": [
                    "string"
                ]
            }
        ],
        "PaxJourneyList": [
            {
                "PaxJourneyID": "string",
                "FlightTime": "string",
                "OnPoint": "string",
                "OffPoint": "string",
                "PaxSegmentRefID": [
                    "string"
                ]
            }
        ],
        "PaxSegmentList": [
            {
                "PaxSegmentID": "string",
                "ArnkInd": true,
                "Departure": {
                    "AirportCode": "string",
                    "Date": "string",
                    "Time": "string",
                    "AirportName": "string",
                    "Terminal": {
                        "Name": "string"
                    }
                },
                "Arrival": {
                    "AirportCode": "string",
                    "Date": "string",
                    "Time": "string",
                    "AirportName": "string",
                    "Terminal": {
                        "Name": "string"
                    }
                },
                "FlightDuration": "string",
                "Equipment": {
                    "AircraftCode": "string",
                    "Name": "string"
                },
                "MarketingCarrier": {
                    "AirlineID": "string",
                    "Name": "string",
                    "FlightNumber": "string"
                },
                "OperatingCarrier": {
                    "AirlineID": "string",
                    "Name": "string",
                    "FlightNumber": "string"
                },
                "Status": "string",
                "Legs": [
                    {
                        "Departure": {
                            "AirportCode": "string",
                            "Date": "string",
                            "Time": "string",
                            "AirportName": "string",
                            "Terminal": {
                                "Name": "string"
                            }
                        },
                        "Arrival": {
                            "AirportCode": "string",
                            "Date": "string",
                            "Time": "string",
                            "AirportName": "string",
                            "Terminal": {
                                "Name": "string"
                            }
                        },
                        "ChangeofGaugeInd": true,
                        "Equipment": {
                            "AircraftCode": "string",
                            "Name": "string"
                        },
                        "OnGroundDuration": "string",
                        "TicketlessInd": true
                    }
                ]
            }
        ],
        "PaxList": [
            {
                "PaxID": "string",
                "Ptc": "string",
                "Individual": {
                    "IndividualID": "string",
                    "Birthdate": "string",
                    "Birthplace": "string",
                    "Gender": "Female",
                    "NameTitle": "string",
                    "GivenName": [
                        "string"
                    ],
                    "MiddleName": [
                        "string"
                    ],
                    "Surname": "string",
                    "SurnameSuffix": "string"
                },
                "ContactInfoRefID": [
                    "string"
                ],
                "Gender": "Female",
                "ResidenceCountryCode": "string",
                "CitizenshipCountryCode": "string",
                "PaxRefID": "string",
                "IdentityDoc": [
                    {
                        "IdentityDocumentNumber": "string",
                        "IdentityDocumentType": "string",
                        "IssuingCountryCode": "string",
                        "CitizenshipCountryCode": "string",
                        "ResidenceCountryCode": "string",
                        "IssueDate": "string",
                        "ExpiryDate": "string",
                        "Birthdate": "string",
                        "Birthplace": "string",
                        "Gender": "Female",
                        "NameTitle": "string",
                        "GivenName": [
                            "string"
                        ],
                        "MiddleName": [
                            "string"
                        ],
                        "Surname": "string",
                        "SurnameSuffix": "string",
                        "Visa": [
                            {
                                "VisaNumber": "string",
                                "VisaType": "string",
                                "VisaHostCountryCode": "string",
                                "EnterBeforeDate": "string",
                                "DurationOfStay": 0,
                                "NumberOfEntries": 0
                            }
                        ]
                    }
                ],
                "LoyaltyProgramAccount": [
                    {
                        "Alliance": {
                            "Name": "string",
                            "Code": "string",
                            "Url": "http://example.com",
                            "Airline": [
                                {
                                    "AirlineName": "string",
                                    "AirlineDesignator": "string"
                                }
                            ]
                        },
                        "Airline": {
                            "AirlineName": "string",
                            "AirlineDesignator": "string"
                        },
                        "ProviderName": "string",
                        "ProgramName": "string",
                        "ProgramCode": "string",
                        "AccountNumber": "string",
                        "Url": "http://example.com",
                        "SignInID": "string",
                        "TierCode": "string",
                        "TierName": "string",
                        "TierPriority": "string"
                    }
                ]
            }
        ],
        "CurrencyDecimalPlaceList": [
            {
                "CurCode": "string",
                "DecimalPlace": 0
            }
        ],
        "TicketDocList": [
            {
                "TicketDocument": [
                    {
                        "TicketDocNbr": "string",
                        "Type": "string",
                        "NumberofBooklets": 0,
                        "IssueDate": "string",
                        "IssueTime": "string",
                        "ReportingType": "string",
                        "Status": "string",
                        "VoidLimit": "string",
                        "CouponInfos": [
                            {
                                "CouponNumber": "string",
                                "FareBasisCode": "string",
                                "PaxSegmentRefID": "string",
                                "Status": "string",
                                "InConnectionWithInfo": {
                                    "InConnectionDocNbr": "string",
                                    "InConnectionCpnNbr": "string"
                                },
                                "ServiceRefID": [
                                    "string"
                                ]
                            }
                        ],
                        "InConnectionDocNbr": "string"
                    }
                ],
                "PaxRefID": "string",
                "AgentIDs": {
                    "Type": "string",
                    "Id": "string"
                },
                "IssuingAirlineInfo": {
                    "AirlineName": "string"
                },
                "FareDetail": [
                    {
                        "BaseAmount": {
                            "Amount": 0,
                            "CurCode": "string"
                        },
                        "TaxTotal": {
                            "Amount": 0,
                            "CurCode": "string"
                        },
                        "Tax": [
                            {
                                "Amount": {
                                    "Amount": 0,
                                    "CurCode": "string"
                                },
                                "TaxCode": "string",
                                "LocalAmount": {
                                    "Amount": 0,
                                    "CurCode": "string"
                                },
                                "Desc": "string",
                                "Nation": "string"
                            }
                        ],
                        "FareComponent": [
                            {
                                "PaxSegmentRefID": [
                                    "string"
                                ],
                                "Penalty": {
                                    "Change": "string",
                                    "Refund": "string",
                                    "NoShow": "string",
                                    "Detail": [
                                        {
                                            "Type": "string",
                                            "Amounts": [
                                                {
                                                    "CurrencyAmountValue": 0,
                                                    "Code": "string",
                                                    "AmountApplication": "string"
                                                }
                                            ],
                                            "Application": {
                                                "Code": "string"
                                            }
                                        }
                                    ],
                                    "Description": [
                                        {
                                            "DescID": "string",
                                            "Text": "string",
                                            "Application": "string"
                                        }
                                    ]
                                },
                                "FareBasis": {
                                    "FareBasisCode": "string",
                                    "FareCode": "string",
                                    "CabinType": [
                                        {
                                            "PaxSegmentRefID": "string",
                                            "CabinCode": "string",
                                            "CabinName": "string",
                                            "Rbd": "string"
                                        }
                                    ]
                                },
                                "Remarks": [
                                    "string"
                                ]
                            }
                        ],
                        "PaxRefID": [
                            "string"
                        ]
                    }
                ]
            }
        ],
        "PaymentList": [
            {
                "Type": "CA",
                "Amount": 1474000,
                "CurCode": "KRW",
                "Status": "395",
                "PaxRefID": [],
                "OrderItemID": [
                    "PoIP676BC2CD-86EA-4E50-97C6-1-1"
                ]
            }
        ],
        "ContactInfoList": [
            {
                "ContactInfoID": "CI1",
                "EmailAddress": [
                    "user@example.com"
                ],
                "Phone": [
                    {
                        "Label": "Mobile",
                        "CountryDialingCode": "82",
                        "AreaCode": "2",
                        "PhoneNumber": "12345678",
                        "Extension": "1234"
                    }
                ],
                "ContactRefusedInd": false,
                "PostalAddress": [
                    {
                        "Label": "HOME",
                        "Street": [
                            "201 W 79th St"
                        ],
                        "CityName": "Seoul",
                        "CountryCode": "KR"
                    }
                ]
            }
        ]
    },
    "AugmentationPoint": {
        "Any": [
            {}
        ]
    }
}
Modified at 2025-11-06 06:17:21
Previous
🔐 Authentication: HMAC Guide
Next
OfferPrice
Built with