TollNode
Illustration: a hotel building with a map pin above it and a key and bed in front

Hotel search by city

Find 10 hotels or apartments in any city with price for your dates, rating, review count, stars, address and link. Prices show when you send travel dates.

POST /api/v1/nodes/hotel-search

Is this the right node?

Use it when
A travel task needs real places to stay in a city, with prices and ratings.
Not for
Booking a room; it returns links, it does not reserve.
You get
10 properties: name, type, price for your dates (when sent), rating, review count, stars, address, coordinates, facilities and link.
Typical time
About 41 seconds per call

How it works

Your agent pays for itself

Explained in 5 minutes →
  1. Step 1: Needs something. Mid-task, your agent needs an image, a search or a voice.

    1Needs something

  2. Step 2: Finds it on TollNode. It picks the right tool. The price is shown up front.

    2Finds it on TollNode

  3. Step 3: Pays a few cents. Its wallet pays for that one use. No sign-up.

    3Pays a few cents

  4. Step 4: Gets the result. The result comes straight back. If it fails, it's free.

    4Gets the result

Two ways to use Hotel search by city

Way 1 · Pay per call (x402)

For AI agents, no sign-up

Your agent sends the request, gets a 402 with the exact price ($0.054 per search (up to 10 hotels)), signs a USDC payment on Base and retries. Nothing is collected unless the call succeeds.

add TollNode to Claude Code, Cursor or Codex (once)
npx agentcash add https://tollnode.com
or call it directly
npx agentcash@latest fetch https://tollnode.com/api/v1/nodes/hotel-search -m POST -b '{"city":"Lisbon"}'

Way 2 · Account + API key

For apps and teams

Create a free account, load a balance with USDC on Base, create an API key and call any node. Same prices; each successful call is deducted from your balance.

curl
curl -X POST https://tollnode.com/api/v1/nodes/hotel-search \
  -H "Authorization: Bearer $TOLLNODE_API_KEY" \
  -H "content-type: application/json" \
  -d '{"city":"Lisbon"}'

Step-by-step, with code in JavaScript and Python: full guide for Hotel search by city.

Input

FieldTypeNotes
city*stringCity or area, e.g. Lisbon
adultsintegerOptional number of adults, default 2
checkInstringOptional check-in date, YYYY-MM-DD
checkOutstringOptional check-out date, YYYY-MM-DD

Example response

{
  "results": [
    {
      "url": "https://www.booking.com/hotel/pt/flh-heart-of-rossio-apartment-xi.en-gb.html?lang=en-gb&group_children=0&soz=1&explic…",
      "name": "FLH Heart of Rossio Units",
      "type": "apartment",
      "image": "https://cf.bstatic.com/xdata/images/hotel/max1024x768/775119060.jpg?k=ef65a3330d497737e72905901a3523996381c700cb74fdc…",
      "price": null,
      "rooms": [],
      "stars": null,
      "rating": 8.9,
      "address": {
        "city": "Lisbon",
        "full": "Rua Dom Ant&atildeo de Almada, 3, Santa Maria Maior, 1100-373 Lisbon, Portugal",
        "country": "pt"
      },
      "checkIn": "From 15:00You'll need to let the property know in advance what time you'll arrive.",
      "hotelId": 15172511,
      "reviews": 250,
      "checkOut": "Until 11:00",
      "currency": null,
      "location": {
        "lat": "38.7142423",
        "lng": "-9.1387489"
      },
      "policies": [],
      "breakfast": null,
      "finePrint": "Please note that all guests need to provide a valid ID or passport at check-in.Please inform FLH Heart of Rossio Unit…",
      "hotelChain": null,
      "checkInDate": null,
      "description": "About this propertyCentral Location: FLH Heart of Rossio Units in Lisbon offers a city centre apartment with Rossio j…",
      "ratingLabel": null,
      "checkOutDate": null,
      "categoryReviews": [
        {
          "score": 9.7,
          "title": "Location"
        }
      ],
      "timeOfScrapeISO": "2026-11-08T18:47:47.075Z"
    }
  ]
}

FAQ

When should an agent use the Hotel search by city node?
A travel task needs real places to stay in a city, with prices and ratings. It is not meant for booking a room; it returns links, it does not reserve. A call usually takes about 41 seconds.
What does the Hotel search by city node return?
Find 10 hotels or apartments in any city with price for your dates, rating, review count, stars, address and link. Prices show when you send travel dates. Each call returns 10 properties: name, type, price for your dates (when sent), rating, review count, stars, address, coordinates, facilities and link.
How much does one call cost?
$0.054 in USDC on Base per search (up to 10 hotels) (one call = up to 10 hotels), charged only when it succeeds. No sign-up, subscription or API key.
What happens if the call fails?
You are not charged. TollNode checks your signed payment first, runs the node, and only collects the payment if the result is usable. A failed, empty or timed-out call is never settled, so there is nothing to refund.
How does an AI agent pay?
With x402. The first request returns HTTP 402 and the exact price. Any x402 wallet signs the USDC payment and retries automatically. In Claude Code or Cursor, run npx agentcash add https://tollnode.com once.
Can I use an API key instead?
Yes. Create a free account, add funds in USDC on Base, create an API key and send it as Authorization: Bearer. Each successful call is deducted from your balance at the same price; failed calls cost nothing.