Method: accounts.properties.ingestLosPropertyPrices

使用“住宿晚数”格式的价格更新单个房源的价格。对于指定房源,请求范围内的每个到达日期都将替换其所有 LOS 价格,包括所有产品和入住人数。到达日期不在指定日期范围内的价格不会受到影响。

HTTP 请求

POST https://travelpartnerprices.googleapis.com/v1/{propertyPrices.property=accounts/*/properties/*}:ingestLosPropertyPrices

网址采用 gRPC 转码语法。

路径参数

参数
propertyPrices.property

string

PropertyPrices 的资源名称。采用 accounts/{account_id}/properties/{property_id} 格式。

account_id:此字符串值为“Account ID”值。

property_id:此元素的值必须是与您的酒店列表 Feed 中的房源 ID 匹配的字符串。

请求正文

请求正文中包含结构如下的数据:

JSON 表示法
{
  "requestTime": string,
  "propertyPrices": {
    "property": string,
    "arrivalDatePrices": [
      {
        "productPrices": [
          {
            object (LosProductPrices)
          }
        ],
        "startDate": {
          object (Date)
        },
        "endDate": {
          object (Date)
        }
      }
    ]
  }
}
字段
requestTime

string (Timestamp format)

必需。LoS 价格消息的发送时间,以 RFC 3339 格式的字符串表示。

系统会处理在之前 24 小时内使用 requestTime 发送的所有消息,并舍弃那些未发送的消息。

无论消息的接收顺序如何,都会按照 requestTime 的顺序处理消息。例如,如果 requestTime2019-05-03T14:09:00Z 的价格更新在 requestTime2019-05-03T14:10:00Z 的相同行程的消息之后收到的,该更新将会被舍弃,取而代之的是带有较晚时间戳的消息。

时间戳采用 RFC3339 世界协调时间(UTC,即“祖鲁时”)格式,精确到纳秒,最多九个小数位。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

propertyPrices.arrivalDatePrices[]

object (LosArrivalDatePrices)

到达日期的价格。此arrivalDayPrices中的所有价格均适用于特定房源,但入住日期不同。

响应正文

如果成功,则响应正文包含一个 PropertyPrices 实例。

授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/travelpartner

如需了解详情,请参阅 OAuth 2.0 概览

LosPropertyPrices

住宿晚数价格,在房源级别指定。

JSON 表示法
{
  "arrivalDatePrices": [
    {
      object (LosArrivalDatePrices)
    }
  ],
  "property": string
}
字段
arrivalDatePrices[]

object (LosArrivalDatePrices)

到达日期的价格。此arrivalDayPrices中的所有价格均适用于特定房源,但入住日期不同。

property

string

PropertyPrices 的资源名称。采用 accounts/{account_id}/properties/{property_id} 格式。

account_id:此字符串值为“Account ID”值。

property_id:此元素的值必须是与您的酒店列表 Feed 中的房源 ID 匹配的字符串。

LosArrivalDatePrices

住宿晚数价格,按入住日期范围分组。

JSON 表示法
{
  "productPrices": [
    {
      object (LosProductPrices)
    }
  ],
  "startDate": {
    object (Date)
  },
  "endDate": {
    object (Date)
  }
}
字段
productPrices[]

object (LosProductPrices)

商品的价格。此productPrices中的所有价格均适用于特定房源和到达日期组合,但适用于不同的商品。

startDate

object (Date)

productPrices适用于 startDateendDate(含)之间的所有抵达日期。

如果只是尝试指定一个到达日期(而非范围),则可以省略 endDate

endDate

object (Date)

productPrices适用于 startDateendDate(含)之间的所有抵达日期。

如果只是尝试指定一个到达日期(而非范围),则可以省略 endDate

日期

表示整个或部分日历日期(例如生日)。一天中的时间和时区要么在别处指定,要么不重要。日期相对于公历。可以表示以下任一情况:

  • 包含非零年份、月份和天值的完整日期。
  • 月份和天,年份值为零(例如周年纪念日)。
  • 单独的年份,月份和天值为零。
  • 年份和月份,天值为零(例如,信用卡到期日期)。

相关类型:

JSON 表示法
{
  "year": integer,
  "month": integer,
  "day": integer
}
字段
year

integer

日期中的年份。必须介于 1 到 9999 之间,或为 0(即指定不含年份的日期)。

month

integer

一年中的第几个月。必须介于 1 到 12 之间,或为 0(即只指定年份,不指定月份和天值)。

day

integer

一个月中的第几天。必须介于 1 到 31 之间并且对年份和月份有效,或为 0(即天不重要,指定单独的年份或者年份和月份)。

LosProductPrices

住宿晚数价格,按产品类型(roomTypeId/ratePlanId 组合)分组。

JSON 表示法
{
  "occupancyPrices": [
    {
      object (LosOccupancyPrices)
    }
  ],
  "roomTypeId": string,
  "ratePlanId": string
}
字段
occupancyPrices[]

object (LosOccupancyPrices)

入住人数价格。此occupancyPrices中的所有价格都适用于特定房源、到达日期和产品组合,但适用于其他入住人数。

roomTypeId

string

此价格所代表的房间的唯一 ID。使用此 ID 将客房套餐数据与您在 Roomdata 中发送的数据相匹配。如需了解详情,请参阅会议室套餐元数据

如果填充了 roomTypeId,则还必须填充 ratePlanId

ratePlanId

string

此价格所引用的套餐数据的唯一 ID。使用此 ID 将客房套餐数据与您在 packagedata 中发送的内容进行匹配。如需了解详情,请参阅会议室套餐元数据

如果填充了 ratePlanId,则还必须填充 roomTypeId

LosOccupancyPrices

住宿晚数价格,按成人入住人数分组。

JSON 表示法
{
  "prices": [
    {
      object (LosPrices)
    }
  ],
  "adults": integer
}
字段
prices[]

object (LosPrices)

住宿晚数价格。prices范围内的所有价格均适用于特定房源、到达日期、产品和入住人数组合。

adults

integer

每个客房可预订的房客人数上限(包括成人和儿童)。此值针对相应 occupancyPrices 字段内的所有费率进行设置,且必须是介于 199 之间的正整数。

LosPrices

住宿晚数价格。

JSON 表示法
{
  "rates": [
    number
  ],
  "taxes": [
    number
  ],
  "fees": [
    number
  ],
  "rateRuleId": string,
  "currencyCode": string
}
字段
rates[]

number

住宿晚数价格中的基本费率组件。

如果提供了相应的 taxes 值,则此税率不包含税费(总价将为相关税率和税费的总和)。

此值应为以英文逗号分隔的费率列表。索引 n 处的值对应的是 n+1 的住宿晚数。

您必须一次发送包含 30 个价格的完整 LoS 集合。如果您汇出的 LoS 价格少于 30,我们会照常处理已提供的所有 LoS 价格,并将剩余的费率视为不可提供,最高不超过 30。如果您发送超过 30 个运费,则超出第 30 个价格后,我们将丢弃您发送的所有价格。

不可用的住宿晚数应由 0 表示。

taxes[]

number

住宿晚数价格的税费部分。

此值应为以逗号分隔的税费列表。索引 n 处的值对应的是 n+1 的住宿晚数。

fees[]

number

可选。住宿晚数价格的费用组成部分。

此值应为以英文逗号分隔的费用列表。索引 n 处的值对应的是 n+1 的住宿晚数。

rateRuleId

string

对于条件式费率,此 ID 会将费率与费率规则定义文件中的定义相匹配。

该字段的字符数限制为 40 个字符。

currencyCode

string

提供税率和税费的货币代码(由 3 个字母组成)。例如,"USD"代表美元。

适用于ratestaxes