Browse documentation
GET

Otelpuan Rooms & Prices API

Check rooms and prices for your dates and guests.

Overview

Get Otelpuan rooms and prices for a hotel URL, stay dates, and guests. Read board plans, stay totals, daily prices, cancellation terms, and occupancy with StayAPI.

Scope

The response is an illustrative one-room excerpt. Use the canonical hotel URL from Search, with check-in and check-out dates. Prices apply to the requested stay and occupancy. Keep the source total_price as the stay total; daily amounts may not sum to the provider stay total; both are preserved as supplied. No currency selector, pagination, or booking action. A valid stay with no offers returns rooms: [] and total: 0. Reviews still use hotel_id.

Authentication

Send your StayAPI key in the X-API-Key header. Successful requests return JSON; failures use RFC 7807 Problem Details.

Endpoint URL

GET https://api.stayapi.com/v1/otelpuan/hotel/rooms

Parameters

Parameter Type Required Description
url string Required Canonical Otelpuan hotel URL, for example https://www.otelpuan.com/Turkler-Otel. Use the url returned by Search. Maximum 2,048 characters.
check_in date Required YYYY-MM-DD, today or later in Turkey local time.
check_out date Required YYYY-MM-DD, strictly after check_in.
adults integer Optional 1–10 adults. Default: 2.
child_ages string Optional Comma-separated ages, for example 5,12. Up to 4 children, each aged 0–16. Omit or leave empty for no children.

Response schema

Field Type Description
success / url boolean / string Success flag and canonical hotel URL.
check_in / check_out / nights string / integer Requested stay window and number of nights.
adults / child_ages integer / array Requested adult count and normalized child ages.
rooms array Room name, night_count, and offers for the requested stay.
rooms[].offers[].board object Board plan code and source name.
rooms[].offers[].total_price / base_price / currency number / nullable number / string Source stay totals and currency. Preserve total_price; do not replace it with a sum of daily amounts.
rooms[].offers[].daily_prices array Dated price, total_payment_amount, tax_amount, and currency.
rooms[].offers[].non_refundable / cancellation_policies nullable boolean / array Refundability and dated cancellation charges, currency, and nullable free_cancellation flag. Unavailable policy fields are null; timestamps retain source precision without an inferred timezone.
rooms[].offers[].occupancy object or null Published max_occupancy, max_adults, and max_children when available.
total integer Number of room types returned; zero is a successful empty result.

Errors and limitations

Errors use RFC 7807 Problem Details with provider: "otelpuan", an instance and correlation id.

  • 400: invalid hotel URL, stay dates, adults (1–10), or child ages. Dates must use YYYY-MM-DD, check-in cannot be in the past, and check-out must follow check-in.
  • 422: a required parameter is missing, or adults is not an integer.
  • 404 NOT_FOUND: the hotel is not found.
  • 502 UPSTREAM_ERROR or 504 UPSTREAM_TIMEOUT: the source request could not complete.
  • 503: service temporarily unavailable.
  • 500 CONTENT_EXTRACTION_FAILED: the source response could not be interpreted.

Related resources