# List of Hotels

The List of Hotels endpoint provides a list of all hotels accessible for an authorized user. This endpoint is part of our Smart Feed API and allows you to retrieve up-to-date hotel content for search results, competitor analysis, and more.

# Authentication & Authorization

It follows standard UBIO authentication and authorization process. Please refer to the authentication documentation for more details.

# Common Response Codes

  • 200 OK - Request successful
  • 400 Bad Request - Invalid request parameters
  • 401 Unauthorized - Invalid or missing authentication
  • 403 Forbidden - Valid authentication but insufficient permissions
  • 404 Not Found - Resource not found
  • 500 Server Error - Internal server error

# Hotel Object Structure

Field Type Description
hotelId string Unique identifier for the hotel
name string Display name of the hotel
ibe string Internet Booking Engine identifier
address string Full address of the hotel
bookingServiceId string/null UUID of the booking service associated with this hotel
countryCode string/null ISO 3166-1 alpha-2 country code (e.g., "us", "gb")
guests array Array of guest capacity numbers for different room types

# API Endpoint

Returns a list of all hotels accessible for authorized user.

# Headers

  • Authorization (string, required): The basic authorization header to authorize against the API.
    • Example: `Authorization: Basic QVBJX0tFWTo='

# Query Parameters

Parameter Type Required Description
limit number No Limit of hotels in response
offset number No Amount of items to skip before fetching (for pagination)

# Example Request

curl -X GET 'https://hotels.automationcloud.net/Pull/Hotels' \
    -H 'Authorization: Basic QVBJX0tFWTo=' \
    -G \
    -d 'limit=333' \
    -d 'offset=222'

# Success Response (200)

# Response Schema

{
  "type": "array",
  "minItems": 0,
  "items": {
    "type": "object",
    "properties": {
      "hotelId": {
        "type": "string",
        "maxLength": 200
      },
      "name": {
        "type": "string",
        "maxLength": 200
      },
      "ibe": {
        "type": "string",
        "maxLength": 200
      },
      "address": {
        "type": "string",
        "maxLength": 500
      },
      "bookingServiceId": {
        "type": ["string", "null"],
        "format": "uuid"
      },
      "countryCode": {
        "type": ["string", "null"],
        "title": "ISO 3166-1 alpha-2 Country Code",
        "description": "ISO 3166-1 alpha-2 code representing the country. United Kingdom is officially assigned the alpha-2 code gb rather than uk. Lowercase.",
        "example": "us",
        "minLength": 2,
        "maxLength": 2,
        "enum": [
          "ad", "ae", "af", "ag", "ai", "al", "am", "ao", "aq", "ar", "as", "at", "au", "aw", "ax", "az",
          "ba", "bb", "bd", "be", "bf", "bg", "bh", "bi", "bj", "bl", "bm", "bn", "bo", "bq", "br", "bs", "bt", "bv", "bw", "by", "bz",
          "ca", "cc", "cd", "cf", "cg", "ch", "ci", "ck", "cl", "cm", "cn", "co", "cr", "cu", "cv", "cw", "cx", "cy", "cz",
          "de", "dj", "dk", "dm", "do", "dz",
          "ec", "ee", "eg", "eh", "er", "es", "et",
          "fi", "fj", "fk", "fm", "fo", "fr",
          "ga", "gb", "gd", "ge", "gf", "gg", "gh", "gi", "gl", "gm", "gn", "gp", "gq", "gr", "gs", "gt", "gu", "gw", "gy",
          "hk", "hm", "hn", "hr", "ht", "hu",
          "id", "ie", "il", "im", "in", "io", "iq", "ir", "is", "it",
          "je", "jm", "jo", "jp",
          "ke", "kg", "kh", "ki", "km", "kn", "kp", "kr", "kw", "ky", "kz",
          "la", "lb", "lc", "li", "lk", "lr", "ls", "lt", "lu", "lv", "ly",
          "ma", "mc", "md", "me", "mf", "mg", "mh", "mk", "ml", "mm", "mn", "mo", "mp", "mq", "mr", "ms", "mt", "mu", "mv", "mw", "mx", "my", "mz",
          "na", "nc", "ne", "nf", "ng", "ni", "nl", "no", "np", "nr", "nu", "nz",
          "om",
          "pa", "pe", "pf", "pg", "ph", "pk", "pl", "pm", "pn", "pr", "ps", "pt", "pw", "py",
          "qa",
          "re", "ro", "rs", "ru", "rw",
          "sa", "sb", "sc", "sd", "se", "sg", "sh", "si", "sj", "sk", "sl", "sm", "sn", "so", "sr", "ss", "st", "sv", "sx", "sy", "sz",
          "tc", "td", "tf", "tg", "th", "tj", "tk", "tl", "tm", "tn", "to", "tr", "tt", "tv", "tw", "tz",
          "ua", "ug", "um", "us", "uy", "uz",
          "va", "vc", "ve", "vg", "vi", "vn", "vu",
          "wf", "ws",
          "xk",
          "ye", "yt",
          "za", "zm", "zw"
        ]
      },
      "guests": {
        "type": "array",
        "minItems": 1,
        "items": {
          "type": "number"
        }
      }
    },
    "required": [
      "hotelId",
      "name",
      "ibe",
      "address",
      "countryCode",
      "bookingServiceId",
      "guests"
    ],
    "additionalProperties": false
  }
}

# Response Example

{
  "hotelId": "hotel-id-333",
  "name": "Real Hotel",
  "ibe": "hotel-ibe-123-123",
  "address": "Real st. 14",
  "bookingServiceId": "00000000-0000-0000-0000-000000000000",
  "countryCode": null,
  "guests": "[2]"
}

# Error Responses

# 401 Unauthorized

{
  "object": "error",
  "name": "EndpointAccessAuthorizationError",
  "message": "Access to the endpoint is not authorised",
  "details": {}
}

Authenticated user doesn't have access to this endpoint.

# 404 Not Found

{
  "object": "error",
  "name": "HttpRequestFailed",
  "message": "404 - GET https://hotels.automationcloud.net/Pull/Hotel",
  "details": {}
}

There's no hotel with the ID you provided or you don't have access to this hotel.