Booking.com Power BI

Get Booking.com rates into Power BI.

One endpoint call, the Power BI setup steps, and a field-to-column map. Then keep it refreshing on a schedule.

50 free requests on signup No credit card

Trusted by hospitality teams at

The pieces

One source, one destination.

Booking.com Booking.com

Booking.com carries the largest structured review corpus in hospitality: numeric sub-scores, reviewer country, stay type, and dated text on every property. Rates and rooms sit behind the same hotel_id. Below, those nightly rates land in Power BI as sortable rows.

Power BI Power BI

Power BI talks to REST APIs natively through Power Query. No connector to install: the Web source plus one request header gets the JSON in, and scheduled refresh keeps it current. In this guide it reads Booking.com rates straight from the StayAPI endpoint.

The call

One endpoint returns Booking.com rates.

The Hotel Prices endpoint returns clean JSON for one hotel. Send your key in the X-API-Key header. See the endpoint docs for every parameter.

Setup

Wire Power BI to the endpoint.

  1. 01

    Create a StayAPI account and copy your API key from the dashboard.

  2. 02

    In Power BI Desktop, choose Get Data > Web > Advanced.

  3. 03

    Enter the endpoint URL and add an x-api-key request header.

  4. 04

    Expand the JSON in Power Query, load it, and set a scheduled refresh in the service.

Config

Power Query: one M expression.

This uses the real endpoint URL with the example Angsana Laguna Phuket id. Swap in your hotel id and your API key.

query.m
let
  Source = Json.Document(
    Web.Contents(
      "https://api.stayapi.com/v1/booking/hotel/prices?hotel_id=346648&check_in=2026-05-01&check_out=2026-05-03",
      [ Headers = [ #"x-api-key" = "YOUR_API_KEY" ] ]
    )
  ),
  Records = Source[data][reviews],
  Table   = Table.FromList(Records, Splitter.SplitByNothing()),
  Expanded = Table.ExpandRecordColumn(
    Table, "Column1", { "block_id", "room_name", "is_refundable", "total_price" }
  )
in
  Expanded

50 free requests on signup, no card.

Field mapping

Response fields to columns.

Each field from the Hotel Prices response, and a suggested column name.

Response field Column
hotel_id hotel_id
block_id block_id
room_name room_name
is_refundable is_refundable
total_price total_price
available_rooms_count available_rooms_count
is_soldout is_soldout
Result

What it looks like in Power BI.

The fields from the mapping above land as columns: hotel_id, block_id, room_name, is_refundable. Refreshed on the schedule you set.

The columns you get

Every row is one hotel record from the Hotel Prices response. These fields become columns:

  • hotel_id
  • block_id
  • room_name
  • is_refundable
  • total_price
  • available_rooms_count
Power BI showing Booking.com rates

Get your key.

Sign up, copy your key into the snippet above, and pull live Booking.com rates into Power BI.

01 · the fast path

Try it free

50 free requests on signup. Fastest way to see if the schema fits.

Start free
  • Live API key in 30 seconds
  • No credit card required
  • Same schema as paid
02 · talk to us

Talk through your pipeline

15 minutes. Volume, endpoint mix, and where the data lands. Walk out with a quote.

Book a demo
  • Quote on the call, not after
  • Engineering, not sales
  • No deck, no slides