Headout Scraper
Pricing
from $3.00 / 1,000 results
Headout Scraper
Scrape Headout - the global marketplace for tours, attractions, shows, day trips and water activities. Search by keyword, browse by city or category, fetch by URL, and get full experience details: prices, ratings, reviews, meeting points, highlights, inclusions and images.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
Crawler Bros
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
21 days ago
Last modified
Categories
Share
Scrape Headout — the global marketplace for tours, attractions, shows, day trips and water activities across 20+ cities. Search by keyword, browse by city or category, fetch by URL, and get full experience details: prices per person, ratings, review counts, meeting points, highlights, inclusions, supported languages, and image galleries. HTTP-only via the public Headout JSON API. No auth, no proxy required.
What this actor does
- Four modes:
search,browseByCity,browseByCategory,byUrl - 20 cities (Dubai, London, New York, Paris, Barcelona, Singapore, Rome, …)
- 15 categories (attractions, tours, shows, food & drink, cruises, water sports, …)
- Filters: price range, min rating, language, currency, sort order
- Optional reviews: emit per-experience review records
- Empty fields are omitted
Data Source
Headout (headout.com) — the global marketplace for tours, attractions, shows, day trips and water activities across 20+ cities. The actor reads the public Headout JSON API (api-ho.headout.com) that powers the website. HTTP-only, no auth, no proxy required; a proxy is engaged automatically only if direct access gets blocked.
Output per experience
experienceId,titlecityCode,city,category,subCategorydurationMin,durationMaxMinpricePerPerson,currency,priceTyperating,reviewCount,ratingSplitdescriptors— duration, cancellation, guided-tour flagshighlights[],summary,included[],excluded[],knowBeforeYouGomeetingPoint— address and coordinateslanguages[]— languages the experience is offered inimages[]— CDN image gallerypromotionLabel,tourType,availableFrom,availableUntilcancellable,cancellationCutoffHours,reschedulable,rescheduleCutoffHours— booking policystartLatitude/startLongitude,endLatitude/endLongitude— meeting / end coordinatesnextAvailableDate,availability— next bookable date and availability stateisCombo— combo-experience flagtopReviews[]— up to 2 inline review samplessourceUrl— canonical Headout experience pagerecordType: "experience",scrapedAt
Output per review (when includeReviews is on)
reviewId,experienceId,rating,content,sourceLanguagereviewerName,reviewedAt,persona,reviewerImageUrlsourceUrl,recordType: "review",scrapedAt
Input
| Field | Type | Default | Description |
|---|---|---|---|
mode | string | search | search / browseByCity / browseByCategory / byUrl |
searchQuery | string | eiffel tower | Free-text keyword (mode=search) |
city | enum | PARIS | 20 curated cities |
category | enum | – | 15 categories (mode=browseByCategory) |
experienceUrls | array | – | Experience URLs or IDs (mode=byUrl) |
minPrice | int | – | Min price per person in selected currency |
maxPrice | int | – | Max price per person in selected currency |
minRating | number | – | Min rating (1–5) |
currency | enum | USD | ISO 4217 currency (20 options) |
language | enum | en | Localization language (17 options) |
sortType | enum | POPULARITY | POPULARITY / TRENDING / RECOMMENDED |
sortOrder | enum | ASC | ASC / DESC (browse modes) |
includeReviews | bool | false | Emit review records |
reviewsPerExperience | int | 10 | Review cap per experience |
maxItems | int | 50 | Hard cap (1–1000) |
Example: search Paris experiences
{"mode": "search","searchQuery": "eiffel tower","city": "PARIS","currency": "EUR","minRating": 4,"maxItems": 20}
Example: browse everything in a city
{"mode": "browseByCity","city": "LONDON","sortType": "TRENDING","maxItems": 100}
Example: category browse with price filter
{"mode": "browseByCategory","city": "DUBAI","category": "shows","minPrice": 30,"maxPrice": 150,"maxItems": 50}
Example: fetch by URL with reviews
{"mode": "byUrl","experienceUrls": ["https://www.headout.com/dubai-lifestyle-and-entertainment/60-min-guided-tour-of-dubai-opera-house-e-9780/"],"includeReviews": true,"reviewsPerExperience": 15}
Limitations
meetingPointaddress is detail-only — Headout exposes a full address on the detail endpoint; browse listings carry coordinates only. InbyUrlmode the address is included when Headout provides it.- Reviews are opt-in and capped —
includeReviewsemits review records, capped atreviewsPerExperience(default 10) per experience andmaxItemsoverall. - Prices and availability are per currency and live — prices are per person in the selected currency; availability windows and prices reflect Headout at scrape time.
- Coverage is limited to Headout's catalog — 20 curated cities and 15 categories; experiences outside Headout's inventory are not reachable.
- Empty fields are omitted — e.g. experiences without an exclusions list simply don't emit
excluded.
Use cases
- Travel price intelligence — track experience pricing across cities and categories
- Itinerary builders — pull structured activity data for trip-planning products
- OTA / tour aggregation — feed a competitor marketplace with Headout's catalog
- Content marketing — enrich destination guides with real tours, ratings and highlights
- Review analytics — sentiment and rating distribution per attraction or operator
- Event discovery — shows, concerts and food tours per city with live availability
FAQ
What is the data source? The public Headout JSON API (api-ho.headout.com) that powers the Headout website. No login, cookies or proxy are required.
Are there rate limits? None documented for normal scraping. The actor paces requests politely and retries on 429/5xx with backoff. A proxy is used automatically only if direct access gets blocked.
What do the record types mean? experience records are full tour/attraction details. review records (opt-in) are individual customer reviews with ratings and text.
Why are some experiences missing a meetingPoint address? Headout only exposes a full address on the detail endpoint; browse listings carry coordinates only. In byUrl mode the address is included when Headout provides it.
What is pricePerPerson? The final (discounted) per-person price in the currency you selected. priceType is typically PER_PERSON.
Why are some fields missing on some records? Empty fields are omitted entirely — e.g. experiences without an exclusions list simply don't emit excluded. Prices, ratings and images are always present when Headout has them.
How fresh is the data? Live — every run queries the Headout API in real time, including prices, availability windows and ratings.
Is this affiliated with Headout? No — this is a third-party actor using the public Headout API and website.