Turo Scraper - Vehicle Search, Trip Quotes and Hosts
Pricing
from $1.20 / 1,000 vehicle results
Turo Scraper - Vehicle Search, Trip Quotes and Hosts
Collect Turo vehicles by location and trip dates or listing URLs. Get make, model, year, ratings, photos, dated price estimates, vehicle details and public host profiles, with resume and recurring change detection.
Pricing
from $1.20 / 1,000 vehicle results
Rating
0.0
(0)
Developer
Abot API
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
Turo vehicle search
Collect Turo vehicle listings for selected locations and trip dates, or supply vehicle listing URLs. Results include make, model, year, rating, public location, photos and dated estimated prices. Optional full details add specifications, delivery options, owner information and the public host profile.
Quick start
{"mode": "search","locations": ["Los Angeles, California"],"maxItems": 20,"fetchDetails": true}
Without dates, the actor searches a three-day trip starting at 10:00 seven days from the run date. Set both startDateTime and endDateTime, for example 2026-10-13T10:00:00 and 2026-10-16T10:00:00, to collect a specific trip. Times are local at the vehicle location; omit a time zone. Fixed dates are recommended for recurring comparisons.
For individual vehicles, choose mode: "url" and supply one or more HTTPS Turo vehicle listing links in urls. Links must end with the numeric vehicle ID. Search fields are ignored in URL mode. The actor uses the explicitly selected trip dates, not dates in a pasted URL.
Inputs
| Input | Behavior |
|---|---|
mode | search or url. |
locations | City, airport or place names. Multiple locations share the output budget. |
makes | Search-only make names, such as Tesla. |
minYear, maxYear, minRating | Search-only filters applied to returned vehicles before the output limit. Unrated vehicles do not match a rating filter. |
urls | Individual vehicle listing URLs, not search links or host profiles. |
startDateTime, endDateTime | Paired local ISO trip dates used for availability and quotes. |
fetchDetails | Return full vehicle details and fetch the public host profile. Default true. A detail-enrichment event applies only after a record with a successfully fetched host profile is returned. |
maxItems | Maximum returned records, default 20. Zero removes this output limit but cannot remove Turo's source limit. |
proxy | Standard Apify proxy configuration. The default uses Apify datacenter. |
resumeFromRunId | Skip vehicle IDs already returned by a prior run with the same query, dates and detail settings. Unlike incrementalMode, this continues one interrupted run. |
incrementalMode | Remember a baseline for recurring comparisons. Default false. Unlike resumeFromRunId, no prior run ID is required. |
stateKey | Optional name for a baseline. Use separate keys for separate searches and avoid overlapping runs sharing a key. |
emitUnchanged | Return and bill unchanged rows too. Default false. |
emitExpired | Return and bill absent rows only after a complete, nonempty scan. Default false. |
mcpConnectors | Optional output connector IDs. |
notionParentPageUrl | Parent page for a Notion export. |
maxNotifyListings | Maximum summaries exported per connector, default 50. |
Output and coverage
Each row includes id, the canonical url when available, title, make, model, year, vehicleType, rating, completedTrips, hostId, city/state/country, coordinates, images and requested dates. Coordinates may be approximate; the original location retains any supplied precision information.
tripTotal, quotedDailyPrice, currency and quote come from a dated estimated quote joined by vehicle ID. The source's estimate is before taxes and may exclude protection and other checkout options; consult quote.nonIncludedLineItems and quote.pricingDisplay. This is not a final booking price. averageDailyPrice is the separate search-card estimate and is never substituted for a dated quote. quoteStatus reports unavailable quotes explicitly.
searchVehicle retains the public search card. With details enabled, detail retains the full public vehicle response, owner preserves the owner block, basicCarDetails holds specifications, and host contains the separate public profile. Fields absent at the source remain null or absent; the actor does not infer contact details. Public text reviews are not collected. Rating counts and trip counts are different measures.
Turo may return at most 200 vehicles for a location even when totalHits is larger. There is no page/offset continuation in this actor. Search-only year/rating filters narrow that returned selection, so a filtered run can return fewer than maxItems while other matching vehicles remain outside it. Narrow your locations or make filter for broader targeted coverage. maxItems: 0 does not imply an exhaustive catalogue.
The RUN_SUMMARY key-value record and each row's coverage object report returned counts and source coverage. A cap, source failure, missing quote, partial enrichment or resumed run prevents expiry. Failed entry requests fail the run rather than producing a billable error row. Repeated enrichment failures disable further enrichment for that run; base records retain explicit status fields. Incremental comparison preserves previously collected enrichment when a later request fails.
Incremental rows carry changeType (NEW, UPDATED, REAPPEARED, optionally UNCHANGED or EXPIRED), changedFields, firstSeenAt and lastSeenAt. Baselines are scoped to mode, locations or URLs, dates, filters and detail settings. An existing baseline cannot be combined with resume. State is saved only after collection completes normally, with a best-effort revision check; do not schedule overlapping runs against the same baseline.
Send results into your apps (MCP connectors)
Authorize a connector under Apify Settings, API & Integrations, then select it in mcpConnectors. Set notionParentPageUrl for Notion and use maxNotifyListings to limit the export. Connectors receive condensed titles, key fields and readable summaries, not the complete nested JSON. Full records stay in the dataset. No connector means no export; export failures leave the dataset available.
Pricing
Each returned dataset row uses the standard result event. Optional full details add one detail-enrichment event per returned row with a successfully fetched public host profile. Suppressed unchanged rows and failed enrichment do not incur that extra event. Refer to the actor's current Pricing tab for rates. CSV, JSON and Excel exports are available from the dataset.