Bargain Finder Max——在第二次航班搜索尝试时,罚则部分未返回

编程语言 2026-07-11

SABRE BFM URL: https://api.platform.sabre.com/v4/offers/shop

我的POST请求:

{
    "OTA_AirLowFareSearchRQ": {
        "POS": {
            "Source": [
                {
                    "RequestorID": {
                        "CompanyName": {
                            "Code": "**hided**",
                            "CodeContext": "Context"
                        },
                        "Type": "1",
                        "ID": "1"
                    },
                    "PseudoCityCode": "**hided**"
                }
            ]
        },
        "OriginDestinationInformation": [
            {
                "DepartureWindow": "00002359",
                "ArrivalDateTime": "2026-04-28T00:00:00",
                "ArrivalWindow": "00002359",
                "OriginLocation": {
                    "LocationCode": "WAW",
                    "CodeContext": "IATA",
                    "LocationType": "A"
                },
                "DestinationLocation": {
                    "LocationCode": "JFK",
                    "CodeContext": "IATA",
                    "LocationType": "A"
                },
                "TPA_Extensions": {
                    "SegmentType": {
                        "Code": "O"
                    },
                    "MaxOneWayOptions": {
                        "Value": 50
                    }
                },
                "RPH": "0"
            }
        ],
        "TravelPreferences": {
            "FlightTypePref": {
                "MaxConnections": "1",
                "PreferLevel": "Preferred"
            },
            "CabinPref": [
                {
                    "Cabin": "Economy",
                    "PreferLevel": "Preferred"
                }
            ],
            "TPA_Extensions": {
                "ExcludeVendorPref": [],
                "DataSources": {
                    "ATPCO": "Enable",
                    "LCC": "Disable",
                    "NDC": "Disable"
                },
                "JumpCabinLogic": {
                    "Disabled": true
                },
                "KeepSameCabin": {
                    "Enabled": true
                },
                "FlexibleFares": {
                    "FareParameters": [
                        {
                            "RefundPenalty": {
                                "Ind": true
                            },                           
                            "VoluntaryChanges": {
                                "Match": "Info",
                                "Penalty":[]
                            }
                        }
                    ]
                },
                "FlightStopsAsConnections": {
                    "Ind": true
                }
            }
        },
        "TravelerInfoSummary": {
            "AirTravelerAvail": [
                {
                    "PassengerTypeQuantity": [
                        {
                            "Code": "ADT",
                            "Quantity": 1
                        }
                    ]
                }
            ],
            "PriceRequestInformation": {
                "TPA_Extensions": {
                    "Priority": {
                        "Price": {
                            "Priority": 3
                        },
                        "DirectFlights": {
                            "Priority": 1
                        },
                        "Time": {
                            "Priority": 2
                        },
                        "Vendor": {
                            "Priority": 4
                        }
                    }
                },
                "CurrencyCode": "USD"
            }
        },
        "TPA_Extensions": {
            "IntelliSellTransaction": {
                "RequestType": {
                    "Name": "200ITINS"
                }
            },
            "MultiTicket": {
                "DisplayPolicy": "SOW"
            }
        },
        "Version": "v4"
    }
}

有人遇到过这样的情况吗:在第二次尝试(发送相同的请求)时,罚金条款部分消失?第一次尝试时,该部分显示正常。大约过了 30分钟 后,该部分再次显示。我希望Sabre的支持团队有相关人员可以查看。

响应片段:

Sabre 响应片段

解决方案

Sabre要求即使该对象不是必填项,也要对其进行填充。就我而言,我在Penalty属性上添加了一个空对象。之后,我便开始收到预期的响应:

在此处输入图片描述

站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。

相关文章