bookyogaretreats.com APIbookyogaretreats.com ↗
Access yoga retreat listings, pricing, ratings, instructor data, and search results from BookYogaRetreats.com via 4 structured JSON endpoints.
curl -X GET 'https://api.parse.bot/scraper/33981cd6-6f52-4c48-857d-62bc5aed2af6/get_retreat_listings?page=1' \ -H 'X-API-Key: $PARSE_API_KEY'
Fetch paginated retreat listings from the BookYogaRetreats homepage. Returns an array of retreat summaries with pricing, ratings, and availability information.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number to fetch for pagination. |
{
"type": "object",
"fields": {
"page": "integer indicating the current page number",
"listings": "array of retreat summary objects with website, retreat_title, country, duration_days, price_rs, rating, no_of_reviews, and availability fields"
},
"sample": {
"data": {
"page": 1,
"listings": [
{
"rating": 4.5,
"country": "Spain",
"website": "https://www.bookyogaretreats.com/la-crisalida-retreats/4-day-refreshing-yoga-retreat-in-alicante-costa-blanca-valencia",
"price_rs": "611",
"source_page": 1,
"availability": "Available",
"veg_friendly": true,
"duration_days": 4,
"no_of_reviews": 633,
"retreat_title": "4 Day Refreshing Yoga Retreat with Meditation and Guided Walks in Alicante, Costa Blanca, Spain",
"max_no_of_booking": 1,
"people_interested": 4,
"all_meals_included": true,
"instructed_in_english": true,
"airport_transfer_included": true,
"airport_transfer_available": true
}
]
},
"status": "success"
}
}About the bookyogaretreats.com API
This API provides access to yoga retreat data from BookYogaRetreats.com across 4 endpoints, covering paginated listings, keyword search, full retreat detail pages, and bulk crawl with CSV export. The get_retreat_detail endpoint returns per-retreat fields including organizer name, instructor list, duration in days, price, rating, and review count — all addressable by retreat URL.
Endpoints and Data Coverage
The API exposes four endpoints. get_retreat_listings returns paginated summaries from the BookYogaRetreats homepage — each listing object includes retreat_title, country, duration_days, price_rs, rating, no_of_reviews, and availab. Pass an integer page parameter to navigate through result pages. search_retreats accepts a query string (e.g. 'bali', 'meditation') plus an optional page parameter, and returns the same listing summary shape filtered to matching retreats, with the query echoed back in the response.
Retreat Detail and Bulk Export
get_retreat_detail takes a full BookYogaRetreats.com URL and returns the complete record for that retreat: organizer_name, instructors (an array of name strings), duration_days, price_rs, rating, no_of_reviews, retreat_title, and website. This is the endpoint to use when you need instructor-level or organizer-level data beyond what the listing summaries expose.
scrape_all_retreats_paginated iterates through listing pages up to a configurable max_pages integer, fetches the detail page for each retreat found, and returns two outputs: a retreats array of full detail objects and a csv string containing a CSV-formatted export of the same data. This endpoint is suited for bulk data collection, dataset building, or offline analysis without additional orchestration on the caller's side.
- Build a retreat comparison tool that surfaces pricing, duration, and ratings across destinations using listing data from
get_retreat_listings. - Aggregate instructor profiles across retreats by extracting the
instructorsarray fromget_retreat_detailfor a set of retreat URLs. - Generate a CSV dataset of all available yoga retreats by running
scrape_all_retreats_paginatedwith a definedmax_pageslimit. - Power a geo-filtered retreat search feature using
search_retreatswith location-based queries like'costa rica'or'thailand'. - Track pricing trends over time by periodically calling
get_retreat_detailon known retreat URLs and storingprice_rsandratingvalues. - Identify top-rated retreats by filtering
no_of_reviewsandratingfields returned across paginated listing results. - Populate a travel recommendation engine with organizer names, durations, and review counts from bulk retreat detail records.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 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.
Does BookYogaRetreats.com have an official developer API?+
What does `get_retreat_detail` return that listing endpoints do not?+
get_retreat_detail adds organizer_name and an instructors array (individual instructor name strings) to the data. The listing endpoints — get_retreat_listings and search_retreats — return summary-level fields only: title, country, duration, price, rating, review count, and availability.Does the API return guest reviews or review text, not just review counts?+
no_of_reviews (an integer count) and rating (a score), but individual review text is not included in any endpoint's response shape. You can fork this API on Parse and revise it to add a reviews endpoint that returns per-review content.Are there limitations on how deep the paginated crawl goes?+
scrape_all_retreats_paginated accepts a max_pages integer to cap how many listing pages are traversed. Without that cap the crawl will iterate through all available pages, which increases response time proportionally. Setting a reasonable max_pages value is advisable for latency-sensitive use cases.Does the API support filtering retreats by country, price range, or retreat style?+
search_retreats accepts a free-text query and get_retreat_listings supports pagination only — neither endpoint accepts structured filters like country, price range, or style. You can fork this API on Parse and revise it to add parameter-based filtering to the search endpoint.