Recipe · Hotels API
Hotel search with Apify
Live Booking.com rates with the filters the real site has (24 of them). Every property returns with a price, review score, room type, and a working booking link, so the agent can present a shortlist the user can act on immediately.
Pay-per-event on your own Apify account. No monthly plan.
Step 1 · Connect
Run the actor
Pay-per-event through your own Apify account: no monthly plan, and an idle month costs nothing. The input field names and the endpoint values are the actors’ own published input schemas, read from api.apify.com on 2026-09-02. Nothing to subscribe to on RapidAPI for this path.
curl -X POST "https://api.apify.com/v2/acts/mtnrabi~booking-real-time-api/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"endpoint":"/search","destination":"Lisbon","checkin_date":"2026-10-09","checkout_date":"2026-10-12","adults":2,"currency":"USD"}'Billed per event on your own Apify account. No RapidAPI subscription needed for this path.
Step 2 · The job
The job
The job in plain words. In Apify you express it as the configuration below instead of a prompt.
“Find me a hotel in Lisbon, October 9 to 12, 2 adults, review score 8+, free cancellation.”
Step 3 · Under the hood
The actor input
Paste this into the actor’s Input tab, or send it as the JSON body of a run. Field names come from the actor’s own published input schema.
// actor: mtnrabi~booking-real-time-api
{
"endpoint": "/search",
"destination": "Lisbon",
"checkin_date": "2026-10-09",
"checkout_date": "2026-10-12",
"adults": 2,
"currency": "USD"
}Step 4 · Read the response
Fields your logic reads
The response is flat JSON. These are the fields this recipe branches on, with what each one means.
namestringThe property name as listed on Booking.com.
price_stringstringThe total rate for the stay as Booking.com displays it: “US$2,434”.
review_scorenumberBooking.com guest score out of 10.
review_countnumberHow many reviews the score rests on: a 9.1 from 12 reviews is not a 9.1 from 1,200.
room_typestringWhich room the rate belongs to: compare like with like across markets.
linkstring (URL)A working Booking.com link to the property.
Questions, answered plainly
- Is my key billed to me?
- Not to RapidAPI. This path bills pay-per-event through your own Apify account, so an idle month costs nothing. The RapidAPI subscription and the Apify actor are two separate doors to the same data; you need one, not both.
- Does this need a server of mine?
- No. The actor runs on Apify’s infrastructure, and runs, retries and result storage live in your Apify console alongside your other actors.
- What does it cost?
- On this path, whatever the actor’s own event table charges for the events a run fires. There is no monthly plan and no minimum. The current rates are on the actor listing, which is the only place they are authoritative. If you would rather have a fixed monthly bill and synchronous HTTP, the RapidAPI plans are the other door: see /pricing.
Also works with
Hotel search, elsewhere in your stack
More recipes
More to build in Apify
One-way flight search
Flights API · search_oneway_flights
Round-trip search
Flights API · search_roundtrip_flights
Price-insights check
Flights API · search_oneway_flights
Cheapest-date scan
Flights API · search_oneway_flights
Rate-parity check
Hotels API · find_hotel_by_name
Fare-alert cron
Flights API · search_oneway_flights
Get live flight and hotel data
Live Google Flights and Booking.com data as clean JSON. Free tier on RapidAPI, no card to try.
Free tier: 10 requests/month. No card to try.