Discover/Traveloka API
live

Traveloka APItraveloka.com

Access Traveloka hotel data via 3 endpoints: search by property, list hotels by region, and discover popular destinations with prices and ratings.

Endpoint health
verified 6h ago
get_popular_destinations
get_hotels_by_region
1/2 passing latest checkself-healing
Endpoints
3
Updated
26d ago

What is the Traveloka API?

The Traveloka API exposes 3 endpoints for retrieving hotel data from Traveloka.com, covering hotel names, star ratings, user ratings, review counts, prices, and location details. Use get_hotels_by_region to list hotels in cities like Bali or Jakarta, search_hotels to find properties similar to a known hotel, or get_popular_destinations to enumerate valid region slugs and geo IDs for region-based queries.

Try it
Number of rooms
Number of adults
Check-in date (YYYY-MM-DD)
Check-out date (YYYY-MM-DD)
Currency code
Base hotel ID for the search
api.parse.bot/scraper/fbbb6f69-7fe3-4f0b-bd86-98fd3f029c37/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/fbbb6f69-7fe3-4f0b-bd86-98fd3f029c37/search_hotels' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace traveloka-com-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""
Traveloka Hotel API - Discover destinations and browse hotels by region.
Get your API key from: https://parse.bot/settings
"""

from parse_apis.traveloka_hotel_api import Traveloka, Destination, Hotel, NotFoundError

# Initialize the client
traveloka = Traveloka(api_key="YOUR_API_KEY")

# List popular destinations - discover region slugs and geo IDs
for destination in traveloka.destinations.list(limit=5):
    print(destination.slug, destination.geo_id)

# Pick the first destination and list its hotels
dest = traveloka.destinations.list(limit=1).first()
if dest:
    for hotel in dest.hotels.list(checkin="2026-07-01", checkout="2026-07-02", limit=3):
        print(hotel.name, hotel.star_rating, hotel.user_rating, hotel.num_reviews)
        if hotel.price is not None:
            print(f"  Price: {hotel.price.amount} {hotel.price.currency}")

# Construct a known destination directly and browse its hotels
bali = Destination(_api=traveloka, geo_id="102746", slug="bali")
try:
    first_hotel = bali.hotels.list(limit=1).first()
    if first_hotel:
        print(first_hotel.name, first_hotel.location, first_hotel.accommodation_type)
except NotFoundError as exc:
    print(f"Region not found: {exc}")

print("exercised: destinations.list / destination.hotels.list / constructible Destination")
All endpoints · 3 totalmissing one? ·

Search for hotels similar to a given property. Useful for discovering and listing multiple hotels with names, ratings, prices, and locations.

Input
ParamTypeDescription
roomsintegerNumber of rooms
adultsintegerNumber of adults
checkinstringCheck-in date (YYYY-MM-DD)
checkoutstringCheck-out date (YYYY-MM-DD)
currencystringCurrency code
hotel_idrequiredstringBase hotel ID for the search
Response
{
  "type": "object",
  "fields": {
    "hotels": "array"
  },
  "sample": {
    "hotels": [
      {
        "id": "254012",
        "name": "Harris Suites FX Sudirman",
        "price": {
          "amount": "9733",
          "currency": "USD"
        },
        "region": "Senayan",
        "location": {
          "lat": "-6.2246542736947585",
          "lng": "106.80359624326229"
        },
        "image_url": "https://ik.imagekit.io/...",
        "star_rating": "4.0",
        "user_rating": "8.6",
        "review_count": "6193"
      }
    ]
  }
}

About the Traveloka API

Endpoints and What They Return

get_popular_destinations takes no parameters and returns an array of destination objects, each with a slug (e.g. bali, singapore) and a geo_id (e.g. 102746). These values are required inputs to get_hotels_by_region, making this endpoint the natural starting point for any region-scoped hotel search.

get_hotels_by_region accepts a required region_slug and geo_id (from get_popular_destinations) plus optional checkin and checkout dates in YYYY-MM-DD format. If dates are omitted, checkin defaults to 7 days from today and checkout to one day after. The response includes an array of hotel objects with fields: id, name, location, star_rating, user_rating, num_reviews, price, accommodation_type, image_url, and seo_p, alongside a total_hotels count for the region.

Search by Similar Property

search_hotels takes a required hotel_id and optional occupancy parameters — rooms, adults, checkin, checkout, and currency — then returns an array of hotels similar to the specified property. This is useful when you already know a reference hotel and want to surface alternatives. The currency parameter lets you request prices in a specific denomination across results.

Reliability & maintenanceVerified

The Traveloka API is a managed, monitored endpoint for traveloka.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when traveloka.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official traveloka.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
6h ago
Latest check
1/2 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a hotel comparison tool for a specific region using get_hotels_by_region with star_rating and price fields.
  • Populate a destination picker UI by mapping get_popular_destinations slugs to supported cities.
  • Display user rating and review count alongside pricing for hotels in a city like Bangkok or Jakarta.
  • Suggest alternative hotels to a known property using search_hotels with a reference hotel_id.
  • Track nightly price changes for a region by querying get_hotels_by_region with different check-in and check-out dates.
  • Filter accommodation listings by accommodation_type to separate hotels from other lodging categories.
  • Embed hotel thumbnails in a travel app using the image_url field returned per property.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Traveloka offer an official developer API?+
Traveloka does not publish a public developer API or developer portal for third-party access to its hotel inventory data.
What does get_hotels_by_region return beyond basic hotel names?+
Each hotel object includes id, name, location, star_rating, user_rating, num_reviews, price, accommodation_type, image_url, and seo_p. The response also returns the region slug queried, the checkin and checkout dates used, and a total_hotels count indicating how many hotels exist in that region.
Does the API support filtering hotels by price range, star rating, or amenities within a region?+
Not currently. The API returns all hotels for a region and includes price and star_rating fields in the response, but there are no server-side filter parameters for those fields. You can fork the API on Parse and revise it to add filtering logic over those response fields.
How do I get valid geo_id and region_slug values for get_hotels_by_region?+
get_popular_destinations returns an array of destination objects each containing a slug and geo_id. Pass those values directly as region_slug and geo_id to get_hotels_by_region. The endpoint documentation also lists a few examples: 102813 for Jakarta and 102746 for Bali.
Does the API cover flight search, car rentals, or activity bookings from Traveloka?+
Not currently. The API covers hotel search and region-based hotel listings only. You can fork it on Parse and revise to add endpoints for other Traveloka product categories.
Page content last updated . Spec covers 3 endpoints from traveloka.com.
Related APIs in TravelSee all →
travelocity.com API
Search for travel destinations and browse hotel listings on Travelocity. Compare options by location, dates, and availability to find and book accommodation.
hotels.com API
Search for hotels across millions of properties, view room availability and pricing, and get detailed information about accommodations at specific destinations. Get location suggestions and discover popular travel spots to help plan your next getaway.
agoda.com API
agoda.com API
hotelscan.ai API
Search and compare hotels with detailed guest reviews, room availability, and pricing information across flexible dates. Find similar properties, get autocomplete suggestions for locations, and access comprehensive hotel details all in one place.
expedia.com API
Search for hotels and flights across Expedia while viewing detailed property information to compare prices and amenities for your travel plans. Get comprehensive travel options all from one integration without manually browsing the website.
orbitz.com API
Search for hotels and destinations on Orbitz, then view detailed property information including pricing and amenities. Get typeahead location suggestions as you type to quickly find your travel destination.
tripadvisor.com API
Search for travel destinations and discover hotels with detailed information like ratings, reviews, and amenities. Get comprehensive place details to help plan your perfect trip and compare accommodation options.
booking.com API
Search for accommodations across Booking.com and instantly access detailed property information including pricing, amenities, and guest reviews to compare your options. Find the perfect stay by filtering thousands of listings and retrieving comprehensive details like room descriptions, availability, and booking terms all in one place.