Hotel display-price monitoring
Mit Trip.com-Endpunkten verwandelst du hotel display-price monitoring in wiederholbare API-Requests mit dokumentierten Inputs und JSON-Antworten.
Turn public Trip.com pages into structured hotel data — a city's curated top-hotels list carrying each hotel's display nightly price, star and guest ratings, and location, plus full hotel detail with facilities, policies, images and a rating breakdown. Normalized JSON, credential-free. Nightly prices come from the city listing, not the detail page.
Get Trip.com's curated top-hotels page for a city with display prices, plus full hotel detail, as structured JSON.
Endpunkt-Familien
1
Dokumentierte Parameter
6
Beispiele
2
Live-Katalog-Snapshot
Aktive Endpunkte
2
Methoden
GET
Pflichtparameter
5
Schema-Referenzen
2
{
"platform": "Trip.com",
"endpoint": "tripcom-hotels-search",
"method": "GET",
"path": "/tripcom/hotels/search",
"auth": "apiKey"
}Use Cases
Get Trip.com's curated top-hotels page for a city with display prices, plus full hotel detail, as structured JSON.
Mit Trip.com-Endpunkten verwandelst du hotel display-price monitoring in wiederholbare API-Requests mit dokumentierten Inputs und JSON-Antworten.
Mit Trip.com-Endpunkten verwandelst du travel-market research in wiederholbare API-Requests mit dokumentierten Inputs und JSON-Antworten.
Mit Trip.com-Endpunkten verwandelst du hotel metadata enrichment in wiederholbare API-Requests mit dokumentierten Inputs und JSON-Antworten.
Managed Execution
Jede Zahl unten stammt direkt aus dem Live-Trip.com-Endpunktkatalog — 2 Endpunkte, 6 dokumentierte Request-Parameter und 2 veröffentlichte Response-Schemas — demselben Katalog, gegen den auch Docs und Playground laufen.
2 documented Trip.com endpoints, all in the Hotels family.
6 request parameters are documented across those Trip.com endpoints, 5 of them required — the full input contract is public before you write any integration code.
2 of the 2 Trip.com endpoints ship a recorded example response, and 2 carry a documented response schema — you can code against the real JSON before the first request.
Trip.com endpoints document their error responses (400, 404, 500 and 503) alongside the success schema, so a block, a rate limit, or a missing record comes back as a typed error rather than silently empty data.
2 hosted MCP tools back the Trip.com endpoints, so an agent can call the same routes with the same parameters and the same JSON contract, with no custom glue.
Abdeckungskarte
Diese Karten werden aus dem aktiven Endpunktkatalog generiert, damit die Landingpage dieselbe API-Oberfläche widerspiegelt, die auch Docs und Playground nutzen.
/tripcom/hotels/search
Endpunktkatalog
/tripcom/hotels/searchReturns Trip.com's own top-hotels page for a city: normalized hotel summaries (name, location, star rating, guest rating, review count, image, display price) for the hotels Trip.com features on that city's hotel-list page. Trip.com does not expose a credential-free free-text city search, so callers supply the exact city_slug and city_id pair from a known Trip.com hotel-list URL of the form https://www.trip.com/hotels/{city_slug}-hotels-list-{city_id}/. Credential-free public data sourced from Trip.com's own server-rendered hotel-list page.
Hinweise zur Response
- Both `city_slug` and `city_id` must be exactly correct — Trip.com's own page 404s on a mismatched slug even when the id is valid, and this endpoint surfaces that as a `404`. - `hotels` is Trip.com's own curated top-hotels page for the city, not a fully paginated search — Trip.com does not expose page/offset parameters credential-free on this page. `count` reports exactly how many hotels this page returned, not a citywide total. - Each hotel's `price` is the list page's display price for the shown stay length (usually one night), not a full rate breakdown. - `hotel_id` in each result is the numeric Trip.com hotel id to pass to the hotel-detail endpoint. Example response: ```json { "code": 200, "msg": "OK", "data": { "city_slug": "bangkok", "city_id": "359", "count": 9, "hotels": [ { "hotel_id": 39371462, "name": "Divalux Resort and Spa Bangkok, Suvarnabhumi Airport-Free Shuttle", "url": "https://www.trip.com/hotels/bang-sao-thong-district-hotel-detail-39371462/divalux-resort-and-spa-bangkok-suvarnabhumi-airport-free-shuttle/", "image_url": "https://ak-d.tripcdn.com/images/0585b12000sq6ih4c6345.jpg", "location": "88 Moo3, Sriwaree Road, Sisa Chokhe Noi, Bang Sao Thong District, Srisa Chorakhe Noi, Bang Sao Thong", "star_rating": 5, "rating_score": 8.7, "review_count": 872, "description": "The hotel has a relaxing wellness atmosphere, and the staff are friendly and provide excellent service.", "price": {"raw": "US$38", "currency": "US$", "amount": 38, "unit": "1 night"} } ], "source_url": "https://www.trip.com/hotels/bangkok-hotels-list-359/" } } ```
MCP-Tool tripcom_hotels_search
/tripcom/hotels/{id}Returns a normalized Trip.com hotel-detail page: identity (name, local name, star rating, city/province/country), location (address, zone, latitude/longitude, nearby-transport description), guest rating (overall score plus cleanliness/amenities/location/service breakdown), images, description, check-in/check-out and child policy summaries, and popular facilities. Credential-free public data sourced from Trip.com's own server-rendered hotel-detail page. Pricing is not included: Trip.com's detail page only returns per-night rates alongside check-in/check-out dates, which this endpoint does not take as input -- use the search endpoint for a city's current display prices.
Hinweise zur Response
- `id` must be numeric; a non-numeric value returns `400` before any upstream request is made. - Trip.com's own detail route always returns HTTP `200`, even for a nonexistent hotel id — this endpoint detects Trip.com's own not-found page content and returns `404` instead of an empty `200`. - Pricing is intentionally not included: Trip.com's detail page only returns per-night rates alongside check-in/check-out dates and occupancy, which this endpoint does not take as input. Use the search endpoint for a city's current display prices. - `images` is a list of image URLs from the hotel's photo gallery; `image_count` reports the gallery's full photo count, which may be larger than `images`. - `policy.check_in_out` and `policy.child` are short human-readable lines taken directly from Trip.com's own display text, not a structured rule schema. Example response: ```json { "code": 200, "msg": "OK", "data": { "hotel_id": 39371462, "name": "Divalux Resort and Spa Bangkok, Suvarnabhumi Airport-Free Shuttle", "star_rating": 5, "city_name": "Bang Sao Thong", "province_name": "Samut Prakan Province", "country_name": "Thailand", "open_year": "2019", "highlights": ["Free airport transfers", "Great views"], "location": { "address": "88 Moo3, Sriwaree Road, Sisa Chokhe Noi, Bang Sao Thong District, Samut Prakan Province, 10570, Thailand", "zone_name": "Suvarnabhumi Airport", "latitude": 13.69316, "longitude": 100.793475, "traffic_description": "15 km from Pra Chom Klao, approx. 27 mins by car" }, "rating": { "score": 8.6, "score_description": "Very good", "score_max": 10, "total_comment": 875, "recommend": "79% Recommended", "cleanliness_score": 8.7, "amenities_score": 8.8, "location_score": 8.3, "service_score": 8.7 }, "images": ["https://ak-d.tripcdn.com/images/0585b12000sq6ih4c6345_R_960_660_R5_D.jpg"], "image_count": 10, "description": "With a stay at Divalux Resort & Spa Bangkok, Suvarnabhumi Airport in Bang Sao Thong, you'll be 6.1 mi (9.9 km) from Lakewood Golf And Country Club...", "policy": { "check_in_out": ["Check-in: After 14:00", "Check-out: Before 12:00", "Front desk hours: 24/7"], "child": ["Children of all ages are welcome at this property."] }, "popular_facilities": ["Outdoor swimming pool", "Spa", "Massage room"], "source_url": "https://www.trip.com/hotels/bang-sao-thong-district-hotel-detail-39371462/divalux-resort-and-spa-bangkok-suvarnabhumi-airport-free-shuttle/" } } ```
MCP-Tool tripcom_hotel_detail
Verwandte APIs
Travel & Hospitality
Build travel and lodging research workflows from structured Airbnb stay, room, availability, and review data.
Travel & Hospitality
Research hotels, restaurants, attractions, and destination pages from TripAdvisor with normalized listing and review endpoints.
Travel & Hospitality
Turn Expedia's Stays, Flights, and Things To Do results into structured JSON — destination search, hotel listings with pricing and reviews, flight offers, and activity search, sourced from the same API the official mobile app uses. Credential-free.
Unternehmensabdeckung
Trip.com Group Ltd · TCOM
Trip.com wird von Trip.com Group Ltd (TCOM) betrieben. Crawloras SEC-Endpunkte nutzen dieselbe CIK dieses Unternehmens, sodass Filings, Finanzdaten, Insider-Transaktionen und 13F-Beteiligungen mit demselben API-Key wie die Trip.com-Endpunkte oben abrufbar sind.
SEC-Filings & Finanzdaten-API →So scrapst du Trip.com
Crawlora's two Trip.com endpoints return a city's curated top-hotels page and full hotel detail as normalized JSON with one API key — no account or signed session. The important thing to know before you start is that the nightly price lives on the city listing, not on the hotel detail.
/tripcom/hotels/search takes city_slug and city_id, and both are required and must match each other — there is no plain city-name parameter, and passing one returns a 400. Read the pair off a Trip.com city hotel-list URL; paris with 192, london with 338, singapore with 73 and bangkok with 359 all resolve. A mismatched pair 404s even when the id itself is valid.
Each hotel in the response carries hotel_id, name, url, image, location, star_rating, rating_score, review_count and a price object — for example a raw display string of US$67 broken out into currency, amount and a unit of 1 night. This is Trip.com's own headline display rate, not a quote for specific dates.
The response is Trip.com's curated top-hotels page for that city — typically around nine hotels — not a fully paginated search. Trip.com exposes no page or offset parameter credential-free here, so count reports what this page returned rather than a city-wide total. Treat it as a monitored sample, not an inventory sweep.
Pass a hotel_id to /tripcom/hotels/{id} for identity and local name, star rating, city/province/country, location with coordinates and nearby transport, a guest-rating breakdown, images, description, policies and popular facilities. The id must be numeric or you get a 400, and because Trip.com serves HTTP 200 even for a nonexistent hotel, this endpoint detects its not-found page and returns a real 404 instead of an empty success.
FAQ
Call /tripcom/hotels/search with both city_slug and city_id — for example paris and 192 — and each hotel comes back with a price object holding the raw display string, currency, amount and unit. A city name on its own will not work: both parameters are required and must correspond to the same Trip.com city page.
No, and this is the one thing worth knowing before you build against it. Nightly rates only exist on Trip.com's detail page alongside specific check-in and check-out dates, so the endpoint deliberately excludes them and returns hotel metadata instead — facilities, policies, images, coordinates and the guest-rating breakdown. The display price you can collect comes from the city listing endpoint.
Not credential-free. The endpoint returns Trip.com's own curated top-hotels page for the city, around nine hotels, and Trip.com exposes no page or offset parameter on it. The count field reports how many that page returned, not how many hotels exist in the city.
Almost always a city_slug and city_id that do not match. Trip.com's own page 404s on a mismatched slug even when the id is valid, and the endpoint surfaces that rather than guessing. On the detail endpoint, a 404 means the hotel genuinely does not exist — Trip.com returns a 200 with a not-found page there, which this endpoint detects and converts into a real 404.
Collecting publicly accessible hotel data is generally permissible if you respect Trip.com's terms of use, robots directives, rate limits, and applicable law. This is for public data you are authorized to collect.