文档中心 > API类目 > 酒店API(新)

taobao.xhotel.multiplerates.update (复杂价格推送接口(批量全量))

批量更新复杂价格 涵盖了taobao.xhotel.rates.update的功能

公共参数

请求参数

名称 类型 是否必须 示例值 更多限制 描述
rate_quota_map String 必须 [ { "useRoomInventory": false, "outRoomId": "abc", "ratePlanCode": "WHL03", "vendor": "taobao", "currencyCode": "CNY","lockStartTime":"","lockEndTime":"","priceCalendar": [ { "date": "2015-07-13", "inventoryPrice": [ { "lengthOfStay": 2, "rateSwitch": 1, "quota": 100, "price": [ { "occupancy": 1,"childnum": 1, "infantnum": 1, "ckinSwitch": 1, "ckoutSwitch": 1, "basePrice": 20000, "taxAndFee": 20000, "addBedPrice": 12233, "addPersonPrice": 20000 } ] } ] } ] } ] 批量全量修改价格和库存信息,会以请求参数中的数据覆盖掉原来报价库存数据。A:useRoomInventory:是否使用room级别共享库存,可选值 true false 2、false时:使用rate级别私有库存,此时如果填写了库存,那么会写入库存表。B:date 日期必须为 T---T+180 日内的日期(T为当天),且不能重复C:basePrice 基本价格 int类型 取值范围1-99999999 单位为分D:quota 库存 int 类型 取值范围 0-999(数量库存) 支持状态库存, 60000(状态库存关) 61000(状态库存开);E:occupancy为入住人数,范围为1~10;F:lengthofStay为连住天数,范围为1~10;G:taxAndFee为总税费;H:addBedPrice为加床价;I:addPersonPrice为加人价;J:rateSwitch为开关房状态,1为开房,0为关房。K:支持outRoomId和ratePlanCode来更新报价库存。L:childnum为儿童人数。M:infantnum为婴儿人数。N:ckinSwitch为入住开关(0,关闭;1,打开) O:ckoutSwitch为离店开关 (0,关闭;1,打开) P:lockStartTime锁库存开始时间 Q:lockEndTime锁库存截止时间

响应参数

名称 类型 示例值 描述
gid_and_rpid_occupancy_lengthofstay Json [] 1000-12300-1-1 商品id,房价id,入住人数,连住天数
warnmessage String [{gid:123,rpId:234,occupancy:2,lengthofstay:2,code:-1,msg:参数格式错误}] 批量更新的时候,如果部分更新失败,会展示部分失败的原因

请求示例

  • JAVA
  • .NET
  • PHP
  • CURL
  • Python
  • C/C++
  • NodeJS
TaobaoClient client = new DefaultTaobaoClient(url, appkey, secret);
XhotelMultipleratesUpdateRequest req = new XhotelMultipleratesUpdateRequest();
req.setRateQuotaMap("[ { \"useRoomInventory\": false,  \"outRoomId\":  \"abc\", \"ratePlanCode\": \"WHL03\", \"vendor\": \"taobao\", \"currencyCode\": \"CNY\",\"lockStartTime\":\"\",\"lockEndTime\":\"\",\"priceCalendar\": [ { \"date\": \"2015-07-13\", \"inventoryPrice\": [ { \"lengthOfStay\":  2, \"rateSwitch\": 1, \"quota\":  100, \"price\": [ { \"occupancy\": 1,\"childnum\": 1, \"infantnum\": 1, \"ckinSwitch\": 1, \"ckoutSwitch\": 1, \"basePrice\": 20000, \"taxAndFee\": 20000, \"addBedPrice\": 12233, \"addPersonPrice\": 20000 } ] } ] } ]  } ]");
XhotelMultipleratesUpdateResponse rsp = client.execute(req, sessionKey);
System.out.println(rsp.getBody());

响应示例

  • XML示例
  • JSON示例
<xhotel_multiplerates_update_response>
    <gid_and_rpid_occupancy_lengthofstay>
        <json>1000-12300-1-1</json>
    </gid_and_rpid_occupancy_lengthofstay>
    <warnmessage>[{gid:123,rpId:234,occupancy:2,lengthofstay:2,code:-1,msg:参数格式错误}]</warnmessage>
</xhotel_multiplerates_update_response>

异常示例

  • XML示例
  • JSON示例
<error_response>
    <code>50</code>
    <msg>Remote service error</msg>
    <sub_code>isv.invalid-parameter</sub_code>
    <sub_msg>非法参数</sub_msg>
</error_response>

错误码解释

错误码 错误描述 解决方案
isv.invalid-parameter:FORMAT_ERROR 参数格式不正确 请检查输入参数格式
isv.invalid-parameter:ERROR 参数不正确 请检查输入参数
isv.permission-error:NO_PERMISSIONS_ERROR 权限不够、非法访问 请申请权限或者使用正确的账号操作
isv.biz-error: RATEPLAN_NOT_EXIST_ERROR 定价信息关联的房价不存在 请检查输入参数中对应的房价编码是否存在
isv.biz-error:BIZ_ERROR 业务异常 请稍后重试
isv.invalid-parameter:NOTNULL 参数不能为空 参数不能为空,请检查必填项
isv.remote-service:CONVERT_ERROR 转换对象时出错 请检查输入参数
isv.invalid-parameter:ROOM_TYPE_NOT_EXIST 房型不存在 房型不存在,请检查参数中的房型编码是否已经存在
isp.top-remote-connection-timeout top链接超时 top链接超时
isp.session-not-exist session信息不存在 session信息不存在,请检查,确保输入正确的session信息
isv.invalid-parameter: RATE_UPDATE_PARAM_DATA_SIZE_ERROR 批量更新房价时,数据长度超长。一次最多允许更新10个rate 批量更新房价时,数据长度超长。一次最多允许更新10个rate 请截取以后重试。

API工具

如何获得此API

FAQ

返回
顶部