Sabre · Schema

Sabre Hotel

A hotel property as returned from the Sabre Hotels API

TravelGDSAirlinesHotelsCar RentalBooking

Properties

Name Type Description
hotelCode string Sabre GDS property code
chainCode string Hotel chain code (e.g., HH for Hilton, MC for Marriott)
name string Hotel property name
starRating integer Normalized star rating
address object
coordinates object
amenities array List of hotel amenity codes (OTA HAC list)
images array
lowestRate object
availableRooms array
View JSON Schema on GitHub

JSON Schema

sabre-hotel-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://developer.sabre.com/schemas/hotel",
  "title": "Sabre Hotel",
  "description": "A hotel property as returned from the Sabre Hotels API",
  "type": "object",
  "properties": {
    "hotelCode": {
      "type": "string",
      "description": "Sabre GDS property code"
    },
    "chainCode": {
      "type": "string",
      "description": "Hotel chain code (e.g., HH for Hilton, MC for Marriott)"
    },
    "name": {
      "type": "string",
      "description": "Hotel property name"
    },
    "starRating": {
      "type": "integer",
      "minimum": 1,
      "maximum": 5,
      "description": "Normalized star rating"
    },
    "address": {
      "$ref": "#/$defs/Address"
    },
    "coordinates": {
      "type": "object",
      "properties": {
        "latitude": {
          "type": "number",
          "minimum": -90,
          "maximum": 90
        },
        "longitude": {
          "type": "number",
          "minimum": -180,
          "maximum": 180
        }
      },
      "required": ["latitude", "longitude"]
    },
    "amenities": {
      "type": "array",
      "description": "List of hotel amenity codes (OTA HAC list)",
      "items": {
        "type": "string"
      }
    },
    "images": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "format": "uri"
          },
          "category": {
            "type": "string",
            "enum": ["Exterior", "Lobby", "Room", "Pool", "Restaurant", "Other"]
          }
        },
        "required": ["url"]
      }
    },
    "lowestRate": {
      "$ref": "#/$defs/Rate"
    },
    "availableRooms": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/RoomType"
      }
    }
  },
  "required": ["hotelCode", "name", "address"],
  "$defs": {
    "Address": {
      "type": "object",
      "properties": {
        "street": {
          "type": "string"
        },
        "city": {
          "type": "string"
        },
        "stateProvince": {
          "type": "string"
        },
        "postalCode": {
          "type": "string"
        },
        "countryCode": {
          "type": "string",
          "pattern": "^[A-Z]{2}$",
          "description": "ISO 3166-1 alpha-2 country code"
        }
      },
      "required": ["city", "countryCode"]
    },
    "Rate": {
      "type": "object",
      "properties": {
        "amount": {
          "type": "number",
          "minimum": 0
        },
        "currencyCode": {
          "type": "string",
          "pattern": "^[A-Z]{3}$"
        },
        "rateType": {
          "type": "string",
          "enum": ["PerNight", "Total"]
        }
      },
      "required": ["amount", "currencyCode"]
    },
    "RoomType": {
      "type": "object",
      "properties": {
        "roomTypeCode": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "maxOccupancy": {
          "type": "integer",
          "minimum": 1
        },
        "bedConfiguration": {
          "type": "string",
          "examples": ["King", "2 Queens", "Twin"]
        },
        "smokingAllowed": {
          "type": "boolean"
        },
        "ratePlans": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "ratePlanCode": {
                "type": "string"
              },
              "ratePlanName": {
                "type": "string"
              },
              "dailyRate": {
                "$ref": "#/$defs/Rate"
              },
              "totalRate": {
                "$ref": "#/$defs/Rate"
              },
              "refundable": {
                "type": "boolean"
              },
              "cancellationPolicy": {
                "type": "string"
              },
              "mealPlan": {
                "type": "string",
                "enum": ["RoomOnly", "BedAndBreakfast", "HalfBoard", "FullBoard", "AllInclusive"]
              }
            },
            "required": ["ratePlanCode", "dailyRate"]
          }
        }
      },
      "required": ["roomTypeCode", "name"]
    }
  }
}