Search code examples
restsabre

Sabre BargainFinderMax REST API error for /offers/shop for southwest airlines (IATA code: WN)


We are trying to use BargainFinderMax REST API v3/offers/shop and /v4/offers/shop for southwest airlines (WN) but getting errors for the following requests in the CERT environment

We have tied both the old & new domain name endpoints (as per https://developer.sabre.com/guides/travel-agency/developer-guides/api-endpoints) but still throwing the error

New Endpoints:

https://api.cert.platform.sabre.com/v4/offers/shop

https://api.cert.platform.sabre.com/v3/offers/shop
Old Endpoints:

https://api-crt.cert.havail.sabre.com/v4/offers/shop

https://api-crt.cert.havail.sabre.com/v3/offers/shop

Request#1:

{
    "OTA_AirLowFareSearchRQ": {
        "MaxResponses": "10",
        "OriginDestinationInformation": [{
            "RPH": "1",
            "DepartureDateTime": "2022-08-19T00:00:00",
            "OriginLocation": {
                "LocationCode": "SFO"
            },
            "DestinationLocation": {
                "LocationCode": "LAX"
            },
            "TPA_Extensions": {
                "SegmentType": {
                    "Code": "O"
                }
            }
        }],
        "POS": {
            "Source": [{
                "PseudoCityCode": "xxxx",
                "RequestorID": {
                    "CompanyName": {
                        "Code": "TN"
                    },
                    "ID": "xxx.xx",
                    "Type": "x.xxx.x"
                }
            }]
        },
        "TravelPreferences": {
            "MaxStopsQuantity": 99,
            "TPA_Extensions": {
                "DataSources": {
                    "ATPCO": "Enable",
                    "LCC": "Disable",
                    "NDC": "Disable"
                },
                "NumTrips": {
                    "Number": 10
                }
            },
            "VendorPref": [{
                "Code": "WN"
            }]
        },
        "TravelerInfoSummary": {
            "AirTravelerAvail": [{
                "PassengerTypeQuantity": [{
                    "Code": "ADT",
                    "Quantity": 1
                }]
            }],
            "PriceRequestInformation": {
                "TPA_Extensions": {}
            },
            "SeatsRequested": [1]
        },
        "TPA_Extensions": {
            "IntelliSellTransaction": {
                "RequestType": {
                    "Name": "xxxITINS"
                }
            }
        },
        "Version": "3"
    }
}

Request#2:

{
    "OTA_AirLowFareSearchRQ": {
        "MaxResponses": "10",
        "OriginDestinationInformation": [{
            "RPH": "1",
            "DepartureDateTime": "2022-08-20T00:00:00",
            "OriginLocation": {
                "LocationCode": "SFO"
            },
            "DestinationLocation": {
                "LocationCode": "LAX"
            },
            "TPA_Extensions": {
                "SegmentType": {
                    "Code": "O"
                }
            }
        }],
        "POS": {
            "Source": [{
                "PseudoCityCode": "xxxx",
                "RequestorID": {
                    "CompanyName": {
                        "Code": "TN"
                    },
                    "ID": "xx.xx",
                    "Type": "x.xxx.x"
                }
            }]
        },
        "TravelPreferences": {
            "MaxStopsQuantity": 99,
            "TPA_Extensions": {
                "DataSources": {
                    "ATPCO": "Enable",
                    "LCC": "Disable",
                    "NDC": "Disable"
                },
                "NumTrips": {
                    "Number": 10
                }
            },
            "VendorPref": [{
                "Code": "WN"
            }]
        },
        "TravelerInfoSummary": {
            "AirTravelerAvail": [{
                "PassengerTypeQuantity": [{
                    "Code": "ADT",
                    "Quantity": 1
                }]
            }],
            "PriceRequestInformation": {
                "TPA_Extensions": {}
            },
            "SeatsRequested": [1]
        },
        "TPA_Extensions": {
            "IntelliSellTransaction": {
                "RequestType": {
                    "Name": "xxxITINS"
                }
            }
        },
        "Version": "3"
    }
}

Response#1:

{
    "groupedItineraryResponse": {
        "version": "6.6.1",
        "messages": [{
            "severity": "Info",
            "type": "SERVER",
            "code": "ASE032LPSCIL672.ATSE.CERT.ASCINT.SABRECIRRUS.COM",
            "text": "27040"
        }, {
            "severity": "Info",
            "type": "WORKERTHREAD",
            "code": "TRANSACTIONID",
            "text": "3620995504794847122"
        }, {
            "severity": "Info",
            "type": "DRE",
            "code": "RULEID",
            "text": "13292"
        }, {
            "severity": "Info",
            "type": "DEFAULT",
            "code": "RULEID",
            "text": "25238"
        }, {
            "severity": "Info",
            "type": "SCHEDULES",
            "code": "MSG",
            "text": "NO FLIGHT SCHEDULES FOR QUALIFIERS USED"
        }, {
            "severity": "Error",
            "type": "IF2",
            "code": "PROCESS",
            "text": "No complete journey can be built in IF2/ADVJR1."
        }, {
            "severity": "Error",
            "type": "ERR",
            "code": "ERR",
            "text": "Error during Processing"
        }],
        "statistics": {
            "itineraryCount": 0
        }
    }
}

Response#2:

{
    "groupedItineraryResponse": {
        "version": "6.3.0",
        "messages": [{
            "severity": "Info",
            "type": "SERVER",
            "code": "ASE032LPSCIL744.ATSE.CERT.ASCINT.SABRECIRRUS.COM",
            "text": "27035"
        }, {
            "severity": "Info",
            "type": "WORKERTHREAD",
            "code": "TRANSACTIONID",
            "text": "3623196258955057549"
        }, {
            "severity": "Info",
            "type": "DRE",
            "code": "RULEID",
            "text": "13292"
        }, {
            "severity": "Info",
            "type": "DEFAULT",
            "code": "RULEID",
            "text": "25238"
        }, {
            "severity": "Info",
            "type": "SCHEDULES",
            "code": "MSG",
            "text": "NO FLIGHT SCHEDULES FOR QUALIFIERS USED"
        }, {
            "severity": "Error",
            "type": "IF2",
            "code": "PROCESS",
            "text": "No complete journey can be built in IF2/ADVJR1."
        }, {
            "severity": "Error",
            "type": "ERR",
            "code": "ERR",
            "text": "Error during Processing"
        }],
        "statistics": {
            "itineraryCount": 0
        }
    }
}

Also, tested this using /v1/offers/shop/ in PROD environment using old endpoint and still see the same issue.

Endpoint: https://api.havail.sabre.com/v1/offers/shop, 

{
    "groupedItineraryResponse": {
        "version": "5.2.0",
        "messages": [{
            "severity": "Info",
            "type": "SERVER",
            "code": "ASE032LPSPIL9BE.IDM.SGDCPROD.SABRE.COM",
            "text": "27041"
        }, {
            "severity": "Info",
            "type": "WORKERTHREAD",
            "code": "TRANSACTIONID",
            "text": "3629312323318444028"
        }, {
            "severity": "Info",
            "type": "DRE",
            "code": "RULEID",
            "text": "15943"
        }, {
            "severity": "Info",
            "type": "DEFAULT",
            "code": "RULEID",
            "text": "17500"
        }, {
            "severity": "Info",
            "type": "SCHEDULES",
            "code": "MSG",
            "text": "NO FLIGHT SCHEDULES FOR QUALIFIERS USED"
        }, {
            "severity": "Error",
            "type": "IF2",
            "code": "PROCESS",
            "text": "No complete journey can be built in IF2/ADVJR1."
        }, {
            "severity": "Error",
            "type": "ERR",
            "code": "ERR",
            "text": "Error during Processing"
        }],
        "statistics": {
            "itineraryCount": 0
        }
    }
}

Same API call is working fine for other airline codes like Delta Airlines ('DL'), American Airlines ('AA'), United Airlines ('UA'), etc.

Can anyone share any insight on why this is happening and how can we fix this behaviour ?


Solution

  • Here's the approach we followed to fix this

    In order for us to get southwest airlines(WN) content, the PCC we use has to be whitelisted and southwest airlines(WN) does that by whitelisting using the actual ARC numbers. We have an active ARC number and requested that it be added to the PCC by Sabre as it's already been whitelisted by Southwest. Once Sabre made the changes, the WN content became available for PCC and we could see WN flights being listed when we hit Sabre BFM REST API v4.

    FYI - https://developer.sabre.com/guides/travel-agency/concepts/glossary