Snapptrip APIsnapptrip.com ↗
Search hotels and short-term rentals on Snapptrip.com via API. Get prices, room types, reviews, star ratings, and availability for Iranian properties.
What is the Snapptrip API?
The Snapptrip API provides 3 endpoints to query Iran's Snapptrip travel platform for hotels and short-term rental accommodations. The search_hotels endpoint returns paginated hotel listings — up to 20 per page — including star rating, user score, price, address, amenities, and coordinates. Companion endpoints deliver room-level detail and reviews for a specific hotel, plus a separate villa and apartment search covering property types like VILLA, APARTMENT, and HOTEL_APARTMENT.
curl -X GET 'https://api.parse.bot/scraper/ff72dcac-7906-4ac2-9a4d-97617b563c93/search_hotels?city=tehran&check_in=2026-09-05&check_out=2026-09-07' \ -H 'X-API-Key: $PARSE_API_KEY'
Search for available hotels in a given city for specified dates. Returns paginated results ordered by best-selling, including hotel name, star rating, user score, price, address, amenities, and location. Each page returns up to 20 hotels. The hotel_id in results can be used with get_hotel_detail.
| Param | Type | Description |
|---|---|---|
| cityrequired | string | City name in Persian or English (e.g. 'tehran', 'مشهد', 'isfahan'). Resolved to a city_id internally. |
| page | integer | Page number for pagination, starting from 1. |
| guests | string | Number of rooms/guests (used as no_rooms parameter). |
| check_inrequired | string | Check-in date in ISO format YYYY-MM-DD. |
| check_outrequired | string | Check-out date in ISO format YYYY-MM-DD. Must be after check_in. |
{
"type": "object",
"fields": {
"page": "Current page number",
"total": "Total number of hotels matching the search",
"hotels": "Array of hotel objects with id, name, stars, user_score, price, address, amenities, location",
"total_pages": "Total number of pages available"
},
"sample": {
"data": {
"page": 1,
"total": 169,
"hotels": [
{
"name": "پارسیان آزادی",
"stars": 5,
"address": "تهران، بزرگراه شهید چمران، تقاطع یادگار امام.",
"hotel_id": 60,
"location": [
35.789872,
51.389829
],
"amenities": [
"نمازخانه",
"سالن اجتماعات",
"کافینت"
],
"image_url": "https://cdnsnapptrip.com/images/market/domestic-hotel/galleries/hotel/60/17924.jpeg",
"user_score": 4,
"price_total": 27930000,
"is_available": true,
"review_count": 741,
"price_per_night": null,
"discount_percent": 0
}
],
"total_pages": 9
},
"status": "success"
}
}About the Snapptrip API
Hotel Search
The search_hotels endpoint accepts a city name in Persian or English (city parameter — e.g. tehran, مشهد, isfahan), along with check_in and check_out dates in YYYY-MM-DD format. It returns a paginated list of available hotels sorted by best-selling. Each hotel object includes id, name, stars, user_score, price, address, amenities, and location coordinates. The total and total_pages fields let you iterate through all results; each page holds up to 20 hotels. The hotel_id returned here feeds directly into get_hotel_detail.
Hotel Detail and Reviews
get_hotel_detail takes a hotel_id from search results along with check_in and check_out dates. It returns two main arrays: rooms (available room types with pricing, capacity, and facilities) and reviews (user-submitted feedback with rating, pros, cons, and free-text comments). The total_reviews field gives the count of all reviews on file, even if only a subset is returned in the response.
Villa and Apartment Search
search_villas mirrors the hotel search interface but targets short-term rental inventory. Supply a city slug (Persian or English), dates, and an optional guests count for capacity filtering. Results come back paginated with up to 20 listings per page, each including pricing, capacity, location, rating, and amenities. Property types in the results span VILLA, APARTMENT, HOTEL_APARTMENT, and related categories, reflecting Snapptrip's full non-hotel accommodation inventory.
The Snapptrip API is a managed, monitored endpoint for snapptrip.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when snapptrip.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 snapptrip.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.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a hotel price-comparison tool for Iranian cities using
search_hotelsstar ratings and prices across multiple date ranges. - Aggregate user review sentiment for hotels in Tehran or Mashhad using the
reviewsarray fromget_hotel_detail. - Display room-type availability and per-room pricing for a specific hotel on a travel itinerary planner.
- Create a villa and apartment availability tracker for popular Iranian resort cities like Ramsar using
search_villas. - Filter short-term rentals by guest capacity using the
guestsparameter insearch_villasfor group travel planning. - Monitor nightly hotel prices over time by repeatedly querying
search_hotelswith different check-in/check-out windows. - Populate a destination guide with amenity data, star ratings, and addresses for hotels in a given Persian city.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Snapptrip have an official public developer API?+
What does `get_hotel_detail` return beyond basic hotel info?+
get_hotel_detail returns two structured arrays not available in search results: rooms (with per-room pricing, capacity, and facilities for the requested dates) and reviews (with rating, pros, cons, and comment text per reviewer). It also returns total_reviews as a count. You need a hotel_id from search_hotels and valid check_in/check_out dates to get room pricing.Can I search for hotels across all Iranian cities at once, or filter by amenity?+
search_hotels requires a specific city parameter — there is no all-cities sweep or amenity-based filter input. Amenity data is returned per hotel in results and can be filtered client-side. You can fork this API on Parse and revise it to add an amenity filter or multi-city aggregation endpoint.Does the API cover flight or bus bookings on Snapptrip?+
How does pagination work across `search_hotels` and `search_villas`?+
page field (current page), total (total matching listings), and total_pages (total pages). Each page holds up to 20 results. Pass the page integer parameter to step through results. Page numbering starts at 1.