TABLE OF CONTENTS

概述

我们提供 3 种接口用于 PMS 与 PropertyConnector 间传递酒店信息。这些接口在整合时不是必须开发。

  1. 更新酒店:用于创建/更新酒店信息
  2. 查询酒店:查询酒店在 PropertyConnector 中酒店的信息 
  3. 查询 PMS 酒店:查询指定账户所有酒店信息




更新酒店

此 API 用于在 PropertyConenctor 创建或更新酒店信息。 酒店 ID 在 PropertyConnector 中不存在时将新建酒店。 酒店 ID 在 PropertyConnector 中已经存在时将更新酒店的信息

POST /pcapigateway/profile/{accountId}/hotels/{hotelId} HTTP/1.1
Authorization: Bearer 53ac07777cdffac2d53000002d698728ce964432d7167596bc005c5fc
Accept-Encoding: gzip
Content-Encoding: gzip
Content-Type: application/json;charset=utf-8
JavaScript


请求


字段

类型

是否必填

描述

备注

hotelId

String

是

酒店在PMS中的唯一编号

 

hotelName

String

是

 

 

timezone

String

是

 

请参考tz database time zones或时区标准

defaultLanguage

String

是

 

请参考语言

countryCode

String

是

 

请参考Country Codes, Phone Codes, Dialing Codes, Telephone Codes, ISO Country Codes

provinceName
String
否

请参考 国家、省份、城市

cityName

String

否

 

 请参考 国家、省份、城市

address

String

否

 

 

longitude

String

是

 

 

latitude

String

是

 

 

shortDescription

String

否

 

 

longDescription

String

否

 

 

roomCount
Number
否
酒店总房数

propertyType

Enum

  • HOTEL

  • HOMESTAY

  • OTHER


是




postalCode
String
否


officialPhoneNumber
String
否

officialWebsite
String
否

contactEmail
String
否

contactPhoneNumber
String
否

status

Enum

  • Bookable

  • Presale

  • Suspend

  • Stopsell

  • UnderConstruction

是

 

 

childPolicy

Enum

  • childAsAdult

  • free

是

 

 

rateType

Enum

  • AmountBeforeTax

  • AmountAfterTax

  • Both

是

 

resNotifyMailList

List[String]

否

 

 

resFailedNotifyMailList

List[String]

否

 

 



示例 创建或更新酒店


请求

{
  "header": {
    "echoToken": "25c8cb40-52a0-449f-8fc9-0187c6f3f19e",
    "timeStamp": "2018-06-27T17:09:04.674Z",
    "version": "0.1"
  },
  "hotelId": "CATNT0001",
  "hotelName": "Pan Pacific Toronto",
  "timezone": "Canada/Eastern",
  "defaultLanguage": "zh-CN",
  "countryCode": "CA",
  "provinceName": "TOR",
  "cityName": "TOR",
  "address": "XXXX street",
  "longitude": "43.75694536080885",
  "latitude": "-79.35038028630848",
  "shortDescription": "short desc",
  "longDescription": "long desc",
  "roomCount": 100,
  "propertyType": "HOTEL",
  "officialPhoneNumber": "X-XXX-XXXXXXX",
  "officialWebsite": "www.xxx.com",
  "postalCode": "XXXXXX",
  "contactEmail": "xxx@xxx.com",
  "contactPhoneNumber": "X-XXX-XXXXXXX",
  "status": "Bookable",
  "childPolicy": "free",
  "rateType": "AmountBeforeTax",
  "resNotifyMail": [
    "xxx@xxx.com",
    "xxx@xxx.com"
  ],
  "resFailedNotifyMail": [
    "xxx@xxx.com",
    "xxx@xxx.com"
  ]
}
JavaScript

成功响应

{
  "header": {
    "echoToken": "25c8cb40-52a0-449f-8fc9-0187c6f3f19e",
    "timeStamp": "2018-06-27T17:09:04.674Z",
    "version": "0.1"
  },
  "hotelId": "CATNT0001",
  "hotelName": "Pan Pacific Toronto",
  "derbyHotelId": "XXXX",
  "timezone": "Canada/Eastern",
  "defaultLanguage": "zh-CN",
  "countryCode": "CA",
  "provinceName": "TOR",
  "cityName": "TOR",
  "address": "XXXX street",
  "longitude": "43.75694536080885",
  "latitude": "-79.35038028630848",
  "shortDescription": "short desc",
  "longDescription": "long desc",
  "roomCount": 100,
  "propertyType": "HOTEL",
  "officialPhoneNumber": "X-XXX-XXXXXXX",
  "officialWebsite": "www.xxx.com",
  "postalCode": "XXXXXX",
  "contactEmail": "xxx@xxx.com",
  "contactPhoneNumber": "X-XXX-XXXXXXX",
  "status": "Bookable",
  "childPolicy": "free",
  "rateType": "AmountBeforeTax",
  "resNotifyMail": [
    "xxx@xxx.com",
    "xxx@xxx.com"
  ],
  "resFailedNotifyMail": [
    "xxx@xxx.com",
    "xxx@xxx.com"
  ]
}
JavaScript

失败响应

{
  "header": {
    "echoToken": "25c8cb40-52a0-449f-8fc9-0187c6f3f19e",
    "timeStamp": "2018-06-27T17:09:04.674Z",
    "version": "0.2"    
  },
  "errorCode": "InvalidField",
  "errorMessage": "Invalid token"
}
JavaScript



查询指定酒店

此 API 用于查询指定酒店在 PropertyConnector 中的信息

GET /pcapigateway/profile/{accountId}/hotels/{hotelId} HTTP/1.1
Authorization: Bearer 53ac07777cdffac2d53000002d698728ce964432d7167596bc005c5fc
Accept-Encoding: gzip
Content-Encoding: gzip
Content-Type: application/json;charset=utf-8
JavaScript

示例


成功响应

{
  "header": {
    "echoToken": "25c8cb40-52a0-449f-8fc9-0187c6f3f19e",
    "timeStamp": "2018-06-27T17:09:04.674Z",
    "version": "0.1"
  },
  "hotelId": "CATNT0001",
  "hotelName": "Pan Pacific Toronto",
  "derbyHotelId": "XXXX",
  "timezone": "Canada/Eastern",
  "defaultLanguage": "zh-CN",
  "countryCode": "CA",
  "provinceName": "TOR",
  "cityName": "TOR",
  "address": "XXXX street",
  "longitude": "43.75694536080885",
  "latitude": "-79.35038028630848",
  "shortDescription": "short desc",
  "longDescription": "long desc",
  "roomCount": 100,
  "propertyType": "HOTEL",
  "officialPhoneNumber": "X-XXX-XXXXXXX",
  "officialWebsite": "www.xxx.com",
  "postalCode": "XXXXXX",
  "contactEmail": "xxx@xxx.com",
  "contactPhoneNumber": "X-XXX-XXXXXXX",
  "status": "Bookable",
  "childPolicy": "free",
  "rateType": "AmountBeforeTax",
  "resNotifyMail": [
    "xxx@xxx.com",
    "xxx@xxx.com"
  ],
  "resFailedNotifyMail": [
    "xxx@xxx.com",
    "xxx@xxx.com"
  ]
}
JavaScript

失败响应

{
  "header": {
    "echoToken": "25c8cb40-52a0-449f-8fc9-0187c6f3f19e",
    "timeStamp": "2018-06-27T17:09:04.674Z",
    "version": "0.2"
  },
  "errorCode": "InvalidField",
  "errorMessage": "Invalid token"
}
JavaScript



查询 PMS 酒店信息

此 API 用于查询指定账户的所有酒店信息

GET /pcapigateway/profile/{accountId}/hotels HTTP/1.1
Authorization: Bearer 53ac07777cdffac2d53000002d698728ce964432d7167596bc005c5fc
Accept-Encoding: gzip
Content-Encoding: gzip
Content-Type: application/json;charset=utf-8
JavaScript


成功响应

{
  "header": {
    "echoToken": "25c8cb40-52a0-449f-8fc9-0187c6f3f19e",
    "timeStamp": "2018-06-27T17:09:04.674Z",
    "version": "0.1"
  },
  "hotelList": [
    {
      "hotelId": "CATNT0001",
      "derbyHotelId": "XXXX",
      "hotelName": "Pan Pacific Toronto",
      "timezone": "Canada/Eastern",
      "defaultLanguage": "zh-CN",
      "countryCode": "CA",
      "provinceName": "TOR",
      "cityName": "TOR",
      "address": "XXXX street",
      "longitude": "43.75694536080885",
      "latitude": "-79.35038028630848",
      "shortDescription": "short desc",
      "longDescription": "long desc",
      "roomCount": 100,
      "propertyType": "HOTEL",
      "officialPhoneNumber": "X-XXX-XXXXXXX",
      "officialWebsite": "www.xxx.com",
      "postalCode": "XXXXXX",
      "contactEmail": "xxx@xxx.com",
      "contactPhoneNumber": "X-XXX-XXXXXXX",
      "status": "Bookable",
      "childPolicy": "free",
      "rateType": "AmountBeforeTax",
      "resNotifyMail": [
        "xxx@xxx.com",
        "xxx@xxx.com"
      ],
      "resFailedNotifyMail": [
        "xxx@xxx.com",
        "xxx@xxx.com"
      ]
    },
    {
      "hotelId": "CATNT0002",
      "derbyHotelId": "XXXX",
      "hotelName": "Pan Pacific Toronto2",
      "timezone": "Canada/Eastern",
      "defaultLanguage": "zh-CN",
      "countryCode": "CA",
      "provinceName": "TOR",
      "cityName": "TOR",
      "address": "XXXX street",
      "longitude": "43.75694536080885",
      "latitude": "-79.35038028630848",
      "shortDescription": "short desc",
      "longDescription": "long desc",
      "roomCount": 100,
      "propertyType": "HOTEL",
      "officialPhoneNumber": "X-XXX-XXXXXXX",
      "officialWebsite": "www.xxx.com",
      "postalCode": "XXXXXX",
      "contactEmail": "xxx@xxx.com",
      "contactPhoneNumber": "X-XXX-XXXXXXX",
      "status": "Bookable",
      "childPolicy": "free",
      "rateType": "AmountBeforeTax",
      "resNotifyMail": [
        "xxx@xxx.com",
        "xxx@xxx.com"
      ],
      "resFailedNotifyMail": [
        "xxx@xxx.com",
        "xxx@xxx.com"
      ]
    }
  ]
}
JavaScript

失败响应

{
  "header": {
    "echoToken": "25c8cb40-52a0-449f-8fc9-0187c6f3f19e",
    "timeStamp": "2018-06-27T17:09:04.674Z",
    "version": "0.2"
  },
  "errorCode": "InvalidField",
  "errorMessage": "Invalid token"
}
JavaScript