Travelstart Flights Scraper | Africa OTA Fares avatar

Travelstart Flights Scraper | Africa OTA Fares

Pricing

from $3.00 / 1,000 results

Go to Apify Store
Travelstart Flights Scraper | Africa OTA Fares

Travelstart Flights Scraper | Africa OTA Fares

Scrape Travelstart flight search results & airport suggestions across .com / .co.za / .com.ng / .co.ke. Extract fares, airlines, segments. Export Excel/CSV/JSON. Unofficial — not affiliated with Travelstart.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

kane liu

kane liu

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

a day ago

Last modified

Share

Travelstart Flights Scraper | Africa & Global OTA

Scrape Travelstart flight search results and airport / city suggestions across Africa and global Travelstart sites — then download structured itineraries as Excel, CSV, or JSON.

Use this Actor as a practical Travelstart flights data API for South Africa, Nigeria, Kenya, and the global .com market. Pick a country site, enter origin / destination IATA codes (or city text), set dates and cabin, and get Dataset rows with prices, airlines, segments, stops, and trip metadata.

  • Scrape Travelstart flight search (return, one-way, multi-city style trips)
  • Resolve airports / cities via suggestions (lc.json autocomplete)
  • Cover hosts such as travelstart.com, travelstart.co.za, travelstart.com.ng, travelstart.co.ke
  • Extract fares, airlines, segments, baggage flags, and outbound / inbound itineraries
  • Export to Excel / CSV / JSON, or connect Make, n8n, Zapier, Python, or the Apify API
  • Pay per event — Actor start + each Dataset result; platform usage is included (you do not pay separate Apify compute on top)

Unofficial tool. This Actor is not affiliated with, endorsed by, or sponsored by Travelstart. It collects publicly reachable shopping surfaces and does not complete bookings or access private accounts.


What does the Travelstart Flights Scraper do?

Travelstart Flights Scraper lets you extract structured flight inventory from Travelstart OTAs without running your own anti-bot browser fleet. Give it a route (for example JNBCPT), dates, and a mode, then start a run.

Under the hood, the Actor:

  1. Validates your input (mode, country site, route, dates, cabin, travellers)
  2. Enforces free-tier caps when you are on a free Apify plan
  3. Calls a managed Cloud Run worker (travelstart-com) that completes the Angular flight search with residential egress
  4. Reads guest-visible flightResults / suggestion payloads into normalized records
  5. Pushes Dataset rows ready for Excel / CSV / JSON export
  6. Writes RUN_SUMMARY (and ERROR_SUMMARY on failure) to the key-value store

You run it like any other Apify Actor — schedule it, call it from the API, or plug it into automations.


What Travelstart data can I extract?

DataFlights searchAirport suggestions
Itinerary id / amount / currency
Airline code / name
Segments (times, airports, flight no.)
Stops / duration
Outbound + inbound (unbundled domestic)
Fare breakdown signals
IATA / city / locationId
Country / countryIata
Country site

Not shipped as successful scrapes (schema waivers): hotelsSearch (Travelstart hotel subdomain was infrastructure-unavailable during recon), carsSearch (Meili + Turnstile), buses, packages — selecting these returns a clear failure instead of fake empty success.


Why scrape Travelstart?

Travelstart is a major African / global flight OTA with strong coverage in markets such as South Africa, Nigeria, and Kenya. Teams scrape Travelstart to:

  • Monitor flight prices and availability on popular African routes
  • Compare airline / fare signals for JNB, CPT, DUR, LOS, ABV, NBO, and more
  • Enrich catalogs with airport / city suggestions (IATA + locationId)
  • Feed BI dashboards, pricing tools, or AI agents with structured OTA rows

Compared with generic Google Flights or Skyscanner scrapers, this Actor targets Travelstart-specific shopping results across multiple Travelstart country sites in one input surface.


How to scrape Travelstart flights (no code required)

  1. Create a free Apify account
  2. Open Travelstart Flights Scraper
  3. Choose a mode: flightsSearch (default) or suggestions / airportSuggest
  4. Choose a country site (default travelstart.com)
  5. Enter from + to (flights) or query (suggestions)
  6. (Optional) Set departureDate / returnDate, tripType, cabin, travellers
  7. Click Start and download the Dataset as JSON, CSV, Excel, or JSONL

Start with maxResults: 5–10 to verify the query, then scale up.


How much does it cost to scrape Travelstart?

This Actor uses pay-per-event pricing. You are charged for:

EventPrice
Actor Start (apify-actor-start)$0.005 per start
Result (apify-default-dataset-item)$3.00 / 1,000 results ($0.003 each)

Platform usage costs are included — you do not pay separate Apify compute/proxy usage for this Actor on top of the event prices above (User pays platform usage costs = No).

Example cost estimates

Results collectedApprox. event cost*
100~$0.31
1,000~$3.01
10,000~$30.01

*Assumes one Actor start at default memory billing for start events, plus $0.003 per Dataset item. Exact start billing can scale with allocated memory (one start event per GB, minimum one).

Free Apify trial credit can cover a small test run — try maxResults: 5 first.

Free-tier caps (Actor developer limits)

CapValue
Free Apify-plan runs of this Actor10 total
Free results / run200
Paying Apify usersUnlimited runs (schema max still applies)

These limits are enforced in Actor code (set by the Actor developer, not Apify). When the run cap is hit, the Actor finishes successfully with RUN_SUMMARY.status = FREE_TIER_LIMIT and a clear status message.


Input

Open the Input tab for the full form. Common fields:

FieldDescription
modeflightsSearch, suggestions, airportSuggest (plus unsupported waivers)
countrySitetravelstart.com (default), .co.za, .com.ng, .co.ke
from / toOrigin and destination IATA or city text for flights
queryText for airport / city suggestions
departureDate / returnDateYYYY-MM-DD (return empty for one-way)
tripTypereturn, oneway, multicity (roundtrip normalized to return)
cabinECONOMY, PREMIUM, BUSINESS, FIRST
adults / children / infants / youngAdultsTraveller counts
maxResultsCap on emitted Dataset rows
workerBaseUrlAdvanced allowlisted worker override (optional)

Input example (flights)

{
"mode": "flightsSearch",
"countrySite": "travelstart.co.za",
"from": "JNB",
"to": "CPT",
"tripType": "return",
"departureDate": "2026-08-20",
"returnDate": "2026-08-27",
"cabin": "ECONOMY",
"adults": 1,
"maxResults": 20
}

Input example (suggestions)

{
"mode": "suggestions",
"query": "Johannesburg",
"countrySite": "travelstart.com",
"maxResults": 8
}

Output

You can download the dataset extracted by Travelstart Flights Scraper in formats such as JSON, HTML, CSV, or Excel.

Each Dataset item includes mode / site metadata plus fields such as:

FieldDescription
mode / countrySiteCollection mode and Travelstart host
directionoutbound, inbound, or bundled
idItinerary id when present
airlineCode / airlineNameMarketing / validating carrier signals
amount / currencyCode / priceTextPrice signals
segmentsLeg details (times, airports, flight numbers)
stops / durationMsRoute complexity
origin / destinationRequested route
iata / locationIdSuggestion fields
capturedAtCapture timestamp

Output example

{
"type": "flight_itinerary",
"mode": "flightsSearch",
"direction": "outbound",
"id": 0,
"amount": 849,
"currencyCode": "ZAR",
"priceText": "ZAR849",
"airlineCode": "FA",
"airlineName": "FlySafair",
"stops": 0,
"origin": "JNB",
"destination": "DUR",
"countrySite": "travelstart.co.za",
"source": "travelstart_flightResults"
}

Field presence depends on mode and what the public page exposes for that run.


Coverage matrix

DimensionCoverage
Country sitestravelstart.com (default) + .co.za / .com.ng / .co.ke
Modes shippedflightsSearch · suggestions / airportSuggest
WaiversHotels UNAVAILABLE · cars / buses / packages UNSUPPORTED

Tips for best results

  • Prefer IATA codes (JNB, CPT) over ambiguous city strings when possible
  • Use maxResults: 2–5 for first smoke tests, then raise the cap
  • Domestic South African routes often return separate outbound + inbound lists (isBundled=false)
  • Do not rely on README sample inputs for production monitoring — rotate routes and dates
  • Default run memory is 1024 MB (thin Actor; browser work runs on the worker)

Architecture and proxy ownership

Apify Actor (input, Dataset, free tier, Standby, PPE)
│ HTTPS + WORKER_AUTH
Cloud Run worker travelstart-com (Patchright session, parse, OpenAPI)
Travelstart public flight shopping / suggestion APIs

WORKER_PROVIDES_PROXY=1 is enabled by default. The Actor does not mint or transmit proxyUrl; proxy/egress is configured on the worker (including egress-control). Set WORKER_BASE_URL and secret WORKER_AUTH in Actor settings.


Run artifacts

KeyPurpose
INPUT_ECHONormalized non-secret input and resolved worker source
RUN_SUMMARYWorker, proxy source, free-tier, and record metrics
ERROR_SUMMARYStructured failure before valid records are emitted

Integrations & API

  • Schedule recurring Travelstart flight pulls from Apify Console
  • Call the Actor from Python, Node.js, or curl via the Apify API
  • Connect to Make, n8n, Zapier, Google Sheets, or your BI stack

API example

curl -X POST "https://api.apify.com/v2/acts/lentic_clockss~travelstart-scraper/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"mode": "flightsSearch",
"countrySite": "travelstart.com",
"from": "JNB",
"to": "CPT",
"maxResults": 20
}'

FAQ

Is login required?

No. The Actor targets publicly reachable Travelstart shopping / suggestion surfaces via the managed worker.

Can it book flights?

No. Booking, payment, and traveller checkout flows are intentionally excluded.

Why not hotels or cars?

Hotels were unavailable (Cloudflare 522 on the hotel subdomain during recon). Cars use a third-party Meili embed with Turnstile. Those modes stay visible and fail with clear waiver errors.

Do I pay Apify platform usage separately?

No for this Actor’s configured PPE plan — User pays platform usage costs = No. You pay the event prices above; platform usage is covered by the Actor developer.

How is this different from Google Flights scrapers?

This Actor scrapes Travelstart OTA results (Africa / global Travelstart hosts), not Google Flights aggregates. Use it when you need Travelstart-specific prices and suggestion IDs.


Use this Actor only for lawful purposes and in line with Travelstart terms and applicable laws. You are responsible for how you store and use the data. Prefer low-volume smoke inputs first (maxResults: 2–5).

Our scrapers target publicly shared shopping / suggestion data. Results may still contain personal or business data depending on what the site exposes. Do not scrape personal data unless you have a legitimate reason. If unsure, consult your counsel.


Support

Questions or feature requests: open an issue on the Actor page in Apify Console or contact the developer through Apify.