---
title: "List hotels"
method: GET
path: "/hotels"
---

# List hotels

`GET /hotels`

Returns a paginated list of hotels accessible with your API key.

## Query parameters

- `limit` integer
- `offset` integer
- `giata_id` integer

## Response `200`

A list of hotels

- Hotel[]
  - `id` string, required — Unique hotel identifier
  - `name` string, required — Hotel name
  - `description` string, nullable, required — Marketing description of the hotel (null if not available)
  - `address` string, nullable — Street address of the hotel
  - `postal_code` string, nullable, required — Postal code (null if not available)
  - `city` string, nullable, required — City name (null if not available)
  - `country_code` string, nullable, required — Country code (ISO 3166-1 alpha-2, null if not available)
  - `latitude` number, nullable — Geographic latitude in decimal degrees
  - `longitude` number, nullable — Geographic longitude in decimal degrees
  - `language` string, nullable, required — Primary language at the hotel (ISO 639-1 code)
  - `star_rating` number, nullable, required — Official hotel star rating, e.g. 4 or 4.5 (null if not available)
  - `room_count` integer, nullable — Total number of rooms (null if not configured)
  - `website_url` string, uri, nullable, required — Hotel website URL (null if not available)
  - `email` string, email, nullable, required — Hotel reception email address (null if not available)
  - `images` object[], required — Hotel photos (up to 3), served from the Valpas CDN. Empty array if no photos are available.
    - `url` string, uri, required — Publicly accessible image URL
    - `caption` string, nullable, required — Short image caption (null if not available)
  - `certified` boolean, required — Whether the hotel holds a current Valpas certification
  - `certified_from` string, date, nullable, required — Date when the hotel's Valpas certification becomes valid (YYYY-MM-DD)
  - `certified_until` string, date, nullable, required — Date when the hotel's Valpas certification expires (YYYY-MM-DD)
  - `certification_url` string, uri, nullable, required — Link target for the Valpas certification badge (null when the hotel is not certified)
  - `netstorming_id` string, nullable, required — Netstorming integration identifier
  - `giata_id` integer, nullable, required — GIATA MultiCodes property identifier (null if the hotel is not mapped to a GIATA code, or if your API key lacks the `giata` scope)

## Other responses

- `400` — The supplied giata_id is not an integer
- `401` — Missing or invalid API key
- `403` — The giata_id filter was used with an API key that lacks the `giata` scope
- `500` — Internal server error

## Changes

- **2026-08-18** `d2a682f49584` — 1 info
  - added the non-success response with the status `403`
- **2026-08-12** `cb5a271ac266` — 3 info
  - added the new optional `query` request parameter `giata_id`
  - added the non-success response with the status `400`
  - added the required property `items/giata_id` to the response with the `200` status
- **2026-07-26** `064436a18735` — 6 info
  - added the required property `items/city` to the response with the `200` status
  - added the required property `items/country_code` to the response with the `200` status
  - added the required property `items/email` to the response with the `200` status
  - added the required property `items/postal_code` to the response with the `200` status
  - …2 more

[Change history](https://skmtc.dev/valpashotels/apis/valpas-public-api/changes/hotels/get.md)

---

[API](https://skmtc.dev/valpashotels/apis/valpas-public-api.md) · [All operations](https://skmtc.dev/valpashotels/apis/valpas-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/valpashotels/valpas-public-api/revisions/d2a682f49584/schema)
