Sabre Exchange Shopping SOAP API Postman调用配置咨询
Sabre Exchange Shopping SOAP API Postman调用配置咨询
我能理解你对着Sabre文档抓头的感觉——他们的SOAP API配置细节确实有时候藏得比较深。我来帮你梳理下Postman调用这个Exchange Shopping API的关键配置点,以及你当前设置里需要注意的地方:
1. 基础请求配置先盯紧
你选的v2_5版本端点是对的,但Postman里的请求方法必须设为POST,所有SOAP API都是靠POST传递XML请求体的。另外绝对不能忘的是认证头:Sabre API要么用Bearer Token,要么用传统的Session Token,没有有效认证的话请求肯定直接失败,这是新手最容易踩的坑。
2. 补全并校验你的XML请求体
你贴的XML代码没写完,我帮你补全核心必填部分,同时划几个重点:
<ExchangeShoppingRQ targetCity="LAX" xmlns="http://services.sabre.com/sp/exchange/shopping/v2_5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5.0"> <STL_Header.RQ> <OrchestrationID seq="0">231488734192050161</OrchestrationID> </STL_Header.RQ> <TicketingProvider>1S</TicketingProvider> <!-- 原票信息是核心,必须完整填写 --> <OriginalTicket> <TicketNumber>1S-1234567890</TicketNumber> <Passenger> <Name>DOE/JOHN</Name> <PTC>ADT</PTC> </Passenger> </OriginalTicket> <!-- 新行程搜索条件不能少 --> <NewItinerary> <DepartureDate>2024-12-15</DepartureDate> <Origin>JFK</Origin> <Destination>LAX</Destination> </NewItinerary> </ExchangeShoppingRQ>
targetCity要替换成实际的目标城市IATA代码,别用AAAA这种占位符OrchestrationID只要是唯一数字串就行,每次请求换一个也没关系- 所有XML标签必须闭合,你原来的
<Ticketi...明显没写完,语法错误会直接被API拒绝 - 命名空间
xmlns必须和API版本严格对应,不能写错
3. Postman里的XML格式设置
在Postman的Body标签里,一定要选raw格式,然后把右侧下拉框的类型改成XML(别用默认的Text)。这样Postman会自动帮你加上Content-Type: application/xml请求头,这是SOAP API能正确解析请求体的关键。
4. 常见排错小技巧
如果请求返回错误,优先查这几点:
- 认证Token是否过期:Sabre的Token有效期不长,建议用刚获取的新Token测试
- XML里的IATA代码是否正确:城市、航司、票号这些代码错一个都不行
- 有没有遗漏必填字段:原票信息、新行程条件都是Exchange Shopping API的必填项,缺了就会返回参数错误
备注:内容来源于stack exchange,提问作者max power




