Google Hotels search (SearchAPI)
Drop-in for SearchAPI's engine=google_hotels.
/v1/serp/google_hotelsSame request names and response hierarchy (search_parameters, search_information, properties[], brands[], pagination). Extracted prices are exact floats rather than rounded integers, and each property adds prices[] where Google attached seller rows. Filters this source cannot honour are refused with 422 instead of being ignored.
Request
https://api.scrapercompany.com/v1/serp/google_hotelsAuthenticate with your API key in the x-api-key header (see Authentication).
Body
JSON object. Unknown fields are rejected with 422.
- qstringrequiredmin length 2, max length 200
Destination query exactly as a traveller would type it into Google Hotels, e.g.
hotels in Montreal,Paris,hotels near JFK. Google resolves it to a place; the response reports which insearch_information.location. - adultsintegerdefault
2min 1, max 10Adults in the room. Encoded as one guest entry each, the way Google's own control sends them.
- currencystringdefault
USDISO 4217 code for the returned prices. Major currencies include AED, AUD, BRL, CAD, CHF, CNY, EUR, GBP, HKD, INR, JPY, KRW, MXN, NZD, SGD, USD; all 39 supported codes are listed in the enum.
39 allowed values
AED, ARS, AUD, BRL, CAD, CHF, CLP, CNY, COP, CZK, DKK, EGP, EUR, GBP, HKD, HUF, IDR, ILS, INR, JPY, KRW, MXN, MYR, NOK, NZD, PEN, PHP, PLN, QAR, RON, SAR, SEK, SGD, THB, TRY, TWD, USD, VND, ZAR
- glstringdefault
usTwo-letter Google country (market). Sets the market; the currency is requested separately.
251 allowed values
ad, ae, af, ag, ai, al, am, ao, aq, ar, as, at, au, aw, ax, az, ba, bb, bd, be, bf, bg, bh, bi, bj, bl, bm, bn, bo, bq, br, bs, bt, bv, bw, by, bz, ca, cc, cd, cf, cg, ch, ci, ck, cl, cm, cn, co, cr, cu, cv, cw, cx, cy, cz, de, dj, dk, dm, do, dz, ec, ee, eg, eh, er, es, et, fi, fj, fk, fm, fo, fr, ga, gb, gd, ge, gf, gg, gh, gi, gl, gm, gn, gp, gq, gr, gs, gt, gu, gw, gy, hk, hm, hn, hr, ht, hu, id, ie, il, im, in, io, iq, ir, is, it, je, jm, jo, jp, ke, kg, kh, ki, km, kn, kp, kr, kw, ky, kz, la, lb, lc, li, lk, lr, ls, lt, lu, lv, ly, ma, mc, md, me, mf, mg, mh, mk, ml, mm, mn, mo, mp, mq, mr, ms, mt, mu, mv, mw, mx, my, mz, na, nc, ne, nf, ng, ni, nl, no, np, nr, nu, nz, om, pa, pe, pf, pg, ph, pk, pl, pm, pn, pr, ps, pt, pw, py, qa, re, ro, rs, ru, rw, sa, sb, sc, sd, se, sg, sh, si, sj, sk, sl, sm, sn, so, sr, ss, st, sv, sx, sy, sz, tc, td, tf, tg, th, tj, tk, tl, tm, tn, to, tr, tt, tv, tw, tz, ua, ug, uk, um, us, uy, uz, va, vc, ve, vg, vi, vn, vu, wf, ws, xk, ye, yt, za, zm, zw
- hlstringdefault
enpattern ^[a-z]{2,3}(-[A-Za-z]{2,4})?$Interface language. Display strings follow it; hotel amenity names are always English.
- sort_bystringdefault
relevanceResult order, as Google's Sort by control.
One of
highest_ratinglowest_pricemost_reviewedrelevance - price_mininteger | nullmin 0
Minimum nightly price in
currency. - price_maxinteger | nullmin 0
Maximum nightly price in
currency. - free_cancellationbooleandefault
falseOnly properties Google lists with free cancellation.
- special_offersbooleandefault
falseOnly properties with a special offer.
- eco_certifiedbooleandefault
falseOnly eco-certified properties.
- enginestringdefault
google_hotelsAccepted for SearchAPI compatibility; must be
google_hotels.One of
google_hotels - property_typestringdefault
hotelhotel(default) is Google's own list, which Google may blend with vacation rentals; each result states itstype.vacation_rentalis refused with 422: Google does not honour the rentals-only category for this search, so it is refused rather than silently ignored.One of
hotelvacation_rental - check_in_datestring (date)required
First night of the stay,
YYYY-MM-DD. - check_out_datestring (date)required
Departure date, after
check_in_date; at most 30 nights. - children_agesstring | array of integer | null
Comma-separated child ages, 0-17 (SearchAPI:
2,5). - ratinginteger | null
SearchAPI rating code: 7 (3.5+), 8 (4.0+), 9 (4.5+).
One of
789 - hotel_classstring | array of integer | null
Comma-separated star classes, 2-5.
- amenitiesstring | array of integer | null
Comma-separated amenity ids (same ids as SearchAPI/SerpApi, e.g. 6 Pool, 35 Free Wi-Fi).
- property_typesstring | array of integer | null
Comma-separated property-type ids, e.g. 19 Bed and breakfasts, 14 Hostels.
- brandsstring | array of integer | null
Not supported: Google ignores brand filters on this search, so a non-empty value is refused with 422.
- for_displaced_individualsbooleandefault
falseNot supported;
trueis refused with 422. - bedroomsinteger | nullmin 0
Vacation-rental filter. Not supported; a value above 0 is refused with 422.
- bathroomsinteger | nullmin 0
Vacation-rental filter. Not supported; a value above 0 is refused with 422.
- bounding_boxstring | null
Not supported; search by
q. - next_page_tokenstring | nullpattern ^[A-Za-z0-9_\-+/=]{1,200}$
Opaque cursor from
pagination.next_page_tokenof the previous page. Resend the same query, stay, occupancy and filters with it, exactly as with SearchAPI. - zero_retentionbooleandefault
falseAccepted for SearchAPI compatibility; search results are never persisted.
Example request
curl -X POST "https://api.scrapercompany.com/v1/serp/google_hotels" \
-H "x-api-key: $SCRAPERCOMPANY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"q": "hotels in Montreal",
"adults": 2,
"currency": "CAD",
"gl": "ca",
"check_in_date": "2026-11-30",
"check_out_date": "2026-12-02"
}'Response
200 — SearchAPI google_hotels shape; extracted prices are exact floats. Metered responses carry x-credits-charged and x-credits-remaining headers (see credit headers).
{
"search_metadata": {
"status": "Success",
"created_at": "2026-09-30T22:46:08Z",
"request_time_taken": 1.89,
"total_time_taken": 1.89
},
"search_parameters": {
"engine": "google_hotels",
"q": "hotels in Montreal",
"check_in_date": "2029-03-14",
"check_out_date": "2029-03-16",
"adults": 2,
"currency": "CAD",
"gl": "ca",
"hl": "en",
"sort_by": "relevance"
},
"search_information": {
"total_results": 5778,
"location": "Montreal",
"currency_matches_request": true
},
"properties": [
{
"type": "hotel",
"property_token": "ChgImtDg_rW5k8iWARoLL2cvMXRzamQ4NncQAQ",
"data_id": "0x4cc9178df6e67b8d:0x96904dcb5fd8281a",
"name": "Radisson Hotel Montreal Airport",
"link": "https://www.choicehotels.com/quebec/montreal/radisson-hotels/cnc37?mc=llgoxxpx",
"description": "Modern lodging with a restaurant & an indoor pool, plus free WiFi & an airport shuttle.",
"gps_coordinates": {
"latitude": 45.4851544,
"longitude": -73.6909316
},
"city": "Montreal",
"country": "CA",
"check_in_time": "3:00 PM",
"check_out_time": "11:00 AM",
"price_per_night": {
"price": "$121",
"extracted_price": 121,
"price_before_taxes": "$102",
"extracted_price_before_taxes": 101.67969
},
"total_price": {
"price": "$242",
"extracted_price": 242,
"price_before_taxes": "$203",
"extracted_price_before_taxes": 203.36
},
"deal": "27% less than usual",
"deal_description": "Great Deal",
"nearby_places": [
{
"name": "Côte-de-Liesse / No 6400",
"transportations": [
{
"type": "Walking",
"duration": "2 min"
}
]
}
],
"hotel_class": "4-star hotel",
"extracted_hotel_class": 4,
"rating": 3.5,
"reviews": 2535,
"reviews_histogram": {
"1": 443,
"2": 220,
"3": 396,
"4": 674,
"5": 802
},
"location_rating": 3.1,
"proximity_to_things_to_do_rating": 3.2,
"proximity_to_restaurants_rating": 2.8,
"proximity_to_transit_rating": 2.5,
"airport_access_rating": 4.6,
"reviews_breakdown": [
{
"name": "Fitness",
"description": "Fitness",
"total": 199,
"positive": 119,
"neutral": 13,
"negative": 67
},
{
"name": "Pool",
"description": "Pool",
"total": 107,
"positive": 78,
"neutral": 7,
"negative": 22
}
],
"amenities": [
"Breakfast ($)",
"Free Wi-Fi"
],
"images": [
{
"thumbnail": "https://lh3.googleusercontent.com/gps-cs-s/AHRPTWk0lycQOr7G_2oWSLSEpBlBBfN0wY5jwgISonycKD0xeg__AHXxCEpS3XqlR9IcD1alML-r6P2EvsCMBx_Lt3KN8sOYNRZU4Jouiz7gc8JcjOskWyeb7HyYDCnqD1bR4L-24cbbvm9TvXHm=s287-w287-h192-n-k-no-v1",
"original": "https://lh3.googleusercontent.com/gps-cs-s/AHRPTWk0lycQOr7G_2oWSLSEpBlBBfN0wY5jwgISonycKD0xeg__AHXxCEpS3XqlR9IcD1alML-r6P2EvsCMBx_Lt3KN8sOYNRZU4Jouiz7gc8JcjOskWyeb7HyYDCnqD1bR4L-24cbbvm9TvXHm=s10000"
}
],
"thumbnail": "https://lh3.googleusercontent.com/gps-cs-s/AHRPTWk0lycQOr7G_2oWSLSEpBlBBfN0wY5jwgISonycKD0xeg__AHXxCEpS3XqlR9IcD1alML-r6P2EvsCMBx_Lt3KN8sOYNRZU4Jouiz7gc8JcjOskWyeb7HyYDCnqD1bR4L-24cbbvm9TvXHm=s150-w92-h150-n-k-no",
"currency": "CAD"
},
{
"type": "vacation_rental",
"property_token": "ChkQzZioqLvP4IUiGg0vZy8xMXpjZmhoMzJwEAI",
"name": "HoMa Loft 206 – Bright, Modern & Easy Parking",
"link": "https://www.host-me.ca/properties/69e924482b031c00122c840e",
"gps_coordinates": {
"latitude": 45.54264831542969,
"longitude": -73.53958129882812
},
"city": "Montreal",
"country": "CA",
"check_in_time": "4:00 PM",
"check_out_time": "10:00 AM",
"price_per_night": {
"price": "$152",
"extracted_price": 152.34,
"price_before_taxes": "$138",
"extracted_price_before_taxes": 138.49
},
"total_price": {
"price": "$305",
"extracted_price": 304.68,
"price_before_taxes": "$277",
"extracted_price_before_taxes": 276.98
},
"nearby_places": [
{
"name": "Montréal-Pierre Elliott Trudeau International Airport",
"transportations": [
{
"type": "Taxi",
"duration": "35 min"
},
{
"type": "Public transport",
"duration": "1 hr 30 min"
}
]
}
],
"location_rating": 2.9,
"proximity_to_restaurants_rating": 2.5,
"airport_access_rating": 3.9,
"amenities": [
"Air conditioning",
"Kid-friendly"
],
"excluded_amenities": [
"No balcony",
"No crib"
],
"essential_info": [
"Entire apartment",
"Sleeps 2"
],
"images": [
{
"thumbnail": "https://lh3.googleusercontent.com/grass-proxy/AIM7gW39AJ5sNUqWYbyQkdBH2YHq7dV63MGIYm0DnOBPevzdmKuKVhPt19sLNF1TWMEzHBW2kN-KopL4tXsF2coEPixiQxcAV6aM2SWxYoWA73riNVMyRVNI3QHt-96hRHLb5couboHdgW6G-tN6pu_pOwPJZdNGqL_RGKM9UOM7G9cUNeoBDdsqXM6hNg=s287-w287-h192-n-k-no-v1",
"original": "https://lh3.googleusercontent.com/grass-proxy/AIM7gW39AJ5sNUqWYbyQkdBH2YHq7dV63MGIYm0DnOBPevzdmKuKVhPt19sLNF1TWMEzHBW2kN-KopL4tXsF2coEPixiQxcAV6aM2SWxYoWA73riNVMyRVNI3QHt-96hRHLb5couboHdgW6G-tN6pu_pOwPJZdNGqL_RGKM9UOM7G9cUNeoBDdsqXM6hNg=s10000"
}
],
"thumbnail": "https://lh3.googleusercontent.com/grass-proxy/AIM7gW39AJ5sNUqWYbyQkdBH2YHq7dV63MGIYm0DnOBPevzdmKuKVhPt19sLNF1TWMEzHBW2kN-KopL4tXsF2coEPixiQxcAV6aM2SWxYoWA73riNVMyRVNI3QHt-96hRHLb5couboHdgW6G-tN6pu_pOwPJZdNGqL_RGKM9UOM7G9cUNeoBDdsqXM6hNg=s150-w92-h150-n-k-no",
"prices": [
{
"source": "host-me",
"raw_source": "host-me",
"displayed_prices": [
"$138",
"$152"
],
"partner_id": "420480647",
"logo": "//www.gstatic.com/travel-hotels/branding/icon_default.png",
"price_per_night": "$152",
"price_per_night_before_taxes": "$138",
"extracted_price_per_night": 152,
"extracted_price_per_night_before_taxes": 138,
"has_free_cancellation": true,
"free_cancellation_until": "Oct 16",
"free_cancellation_time": "4:00 PM",
"is_featured": true
}
],
"currency": "CAD"
}
],
"brands": [
{
"id": 33,
"title": "Accor Live Limitless",
"children": [
{
"id": 8,
"title": "Fairmont Hotels and Resorts"
},
{
"id": 47,
"title": "Novotel"
}
]
},
{
"id": 18,
"title": "Best Western International",
"children": [
{
"id": 155,
"title": "Best Western"
},
{
"id": 104,
"title": "Best Western Plus"
}
]
}
],
"pagination": {
"records_from": 1,
"records_to": 20,
"next_page_token": "CBI="
}
}Response fields
Fields marked required are always present; others appear when they apply.
- search_metadataobjectrequired
Show 4 child fieldsHide child fields
- search_metadata.statusstringrequired
One of
Success - search_metadata.created_atstring (date-time)required
UTC, ISO-8601 with
Z. - search_metadata.request_time_takennumberrequired
Seconds.
- search_metadata.total_time_takennumberrequired
Seconds.
- search_parametersobjectrequired
Echo of the effective request. Optional filters appear only when set.
Show 21 child fieldsHide child fields
- search_parameters.enginestringrequired
One of
google_hotels - search_parameters.qstringrequired
- search_parameters.check_in_datestring (date)required
- search_parameters.check_out_datestring (date)required
- search_parameters.adultsintegerrequired
- search_parameters.children_agesarray of integerrequired
One age per child; empty when none.
- search_parameters.currencystringrequired
Requested currency, upper-case.
- search_parameters.glstringrequired
Market country code, lower-case.
- search_parameters.hlstringrequired
- search_parameters.sort_bystringrequired
One of
relevancelowest_pricehighest_ratingmost_reviewed - search_parameters.price_mininteger
Present only when set in the request.
- search_parameters.price_maxinteger
Present only when set in the request.
- search_parameters.min_ratingnumber
3.5, 4.0 or 4.5. Present only when set in the request. Converted from the
ratingcode (7, 8, 9). - search_parameters.hotel_classarray of integer
Present only when set in the request.
- search_parameters.amenitiesarray of integer
Present only when set in the request.
- search_parameters.property_typesarray of integer
Present only when set in the request.
- search_parameters.free_cancellationboolean
Present only when true.
- search_parameters.special_offersboolean
Present only when true.
- search_parameters.eco_certifiedboolean
Present only when true.
- search_parameters.next_page_tokenstring
Page token this page was fetched with. Present only when one was sent.
- search_parameters.property_typestringrequired
Always
hotel.One of
hotel
- search_informationobjectrequired
Show 3 child fieldsHide child fields
- search_information.total_resultsinteger | nullrequired
Total properties Google reports for the search.
- search_information.locationstring | nullrequired
Place Google resolved
qto. - search_information.currency_matches_requestbooleanrequired
False when Google returned a currency other than the one requested.
- propertiesarray of objectrequired
About 20 per page.
Show 34 child fieldsHide child fields
- properties[].typestringrequired
Google blends vacation rentals into the default list; this says which each result is.
One of
hotelvacation_rental - properties[].property_tokenstringrequired
Google property token; pass it to
/v1/serp/google_hotels_propertyor/v1/calendar. - properties[].data_idstring
Google Maps data id (
0x...:0x...). - properties[].namestringrequired
- properties[].linkstring
The property's own website.
- properties[].descriptionstring
- properties[].gps_coordinatesobject
Show 2 child fieldsHide child fields
- properties[].gps_coordinates.latitudenumberrequired
- properties[].gps_coordinates.longitudenumberrequired
- properties[].citystring
The place Google resolved
qto (same assearch_information.location), not a per-property city. - properties[].countrystring
ISO 3166-1 alpha-2 country code.
- properties[].check_in_timestring
As displayed, e.g.
3:00 PM. - properties[].check_out_timestring
- properties[].price_per_nightobject
Present only when the stay total is known.
Show 4 child fieldsHide child fields
- properties[].price_per_night.pricestring | nullrequired
Display string including taxes and fees.
- properties[].price_per_night.extracted_pricenumber | nullrequired
Stay total / nights: nightly price including taxes and fees.
- properties[].price_per_night.price_before_taxesstring | nullrequired
Display string before taxes; the price Google's card shows.
- properties[].price_per_night.extracted_price_before_taxesnumber | nullrequired
Google's exact nightly figure before taxes (base + mandatory fees).
- properties[].total_priceobject
Present only when the stay total is known.
Show 4 child fieldsHide child fields
- properties[].total_price.pricestring | nullrequired
Whole-stay display string including taxes and fees.
- properties[].total_price.extracted_pricenumberrequired
Whole-stay price including taxes and fees.
- properties[].total_price.price_before_taxesstring | nullrequired
Whole-stay display string before taxes.
- properties[].total_price.extracted_price_before_taxesnumber | nullrequired
Whole-stay base + mandatory fees.
- properties[].dealstring
Deal text, e.g.
27% less than usual. - properties[].deal_descriptionstring
Badge Google renders:
Deal,Great Deal,Great Price, or another label. - properties[].nearby_placesarray of objectrequired
Show 2 child fieldsHide child fields
- properties[].nearby_places[].namestringrequired
- properties[].nearby_places[].transportationsarray of objectrequired
- properties[].hotel_classstring
As displayed, e.g.
4-star hotel. - properties[].extracted_hotel_classinteger
Star class, 1-5.
- properties[].ratingnumber
Guest rating out of 5.
- properties[].reviewsinteger
- properties[].reviews_histogramobject
Review count per star rating, keyed
1-5.Show 5 child fieldsHide child fields
- properties[].reviews_histogram.1integer
- properties[].reviews_histogram.2integer
- properties[].reviews_histogram.3integer
- properties[].reviews_histogram.4integer
- properties[].reviews_histogram.5integer
- properties[].location_ratingnumber
Overall location score, out of 5.
- properties[].proximity_to_things_to_do_ratingnumber
Score for proximity to things to do, out of 5.
- properties[].proximity_to_restaurants_ratingnumber
Score for proximity to restaurants, out of 5.
- properties[].proximity_to_transit_ratingnumber
Score for proximity to public transit, out of 5.
- properties[].airport_access_ratingnumber
Score for airport access, out of 5.
- properties[].reviews_breakdownarray of objectrequired
Empty when Google gave none.
Show 6 child fieldsHide child fields
- properties[].reviews_breakdown[].namestringrequired
Review topic, e.g.
Fitness. - properties[].reviews_breakdown[].descriptionstringrequired
- properties[].reviews_breakdown[].totalintegerrequired
Reviews that mention the topic.
- properties[].reviews_breakdown[].positiveintegerrequired
- properties[].reviews_breakdown[].neutralintegerrequired
total - positive - negative, never below 0. - properties[].reviews_breakdown[].negativeintegerrequired
- properties[].amenitiesarray of stringrequired
Hotel amenity names are always English; rentals use Google's own labels.
- properties[].excluded_amenitiesarray of string
Amenities a rental states it lacks, e.g.
No balcony. - properties[].essential_infoarray of string
Rental basics such as
Entire apartmentorSleeps 2. - properties[].imagesarray of objectrequired
Show 2 child fieldsHide child fields
- properties[].images[].thumbnailstringrequired
Image URL as Google sent it (card size).
- properties[].images[].originalstringrequired
Largest rendition of the same image; equals
thumbnailwhen no larger size is available.
- properties[].thumbnailstring
- properties[].pricesarray of object
Seller rows Google attached to the card (an addition to SearchAPI's shape); mostly vacation rentals.
Show 13 child fieldsHide child fields
- properties[].prices[].sourcestringrequired
Seller name, with country-domain variants merged (e.g.
Booking.com). - properties[].prices[].raw_sourcestringrequired
Seller name as displayed.
- properties[].prices[].displayed_pricesarray of stringrequired
Every price string on the row, as displayed, including a lone one whose basis Google does not label.
- properties[].prices[].partner_idstring | nullrequired
Google's partner id for the seller.
- properties[].prices[].logostring | nullrequired
Logo URL; may be protocol-relative (
//...). - properties[].prices[].price_per_nightstring | nullrequired
Nightly display string including taxes and fees. Null unless the row shows a before-taxes / all-in pair.
- properties[].prices[].price_per_night_before_taxesstring | nullrequired
Nightly display string before taxes. Null unless the row shows a pair.
- properties[].prices[].extracted_price_per_nightnumber | nullrequired
Nightly price including taxes and fees.
- properties[].prices[].extracted_price_per_night_before_taxesnumber | nullrequired
Nightly price before taxes.
- properties[].prices[].has_free_cancellationbooleanrequired
- properties[].prices[].free_cancellation_untilstring | nullrequired
Last free-cancellation date as displayed, e.g.
Oct 16. - properties[].prices[].free_cancellation_timestring | nullrequired
e.g.
4:00 PM. - properties[].prices[].is_featuredbooleanrequired
True for rows from Google's featured list.
- properties[].currencystring
ISO 4217 code of every price on the property.
- brandsarray of objectrequired
Show 3 child fieldsHide child fields
- brands[].idintegerrequired
Google brand id.
- brands[].titlestringrequired
Brand name; empty string when Google did not name it.
- brands[].childrenarray of objectrequired
Sub-brands.
Show 2 child fieldsHide child fields
- brands[].children[].idintegerrequired
- brands[].children[].titlestringrequired
- paginationobjectrequired
Pages overlap by a few results (page 2 starts before page 1 ends); de-duplicate by
property_token.Show 3 child fieldsHide child fields
- pagination.records_frominteger | nullrequired
1-based position of the first result on this page.
- pagination.records_tointeger | nullrequired
1-based position of the last result on this page.
- pagination.next_page_tokenstring | nullrequired
Send it back (as
page_tokenon/v1/hotels/search,next_page_tokenon/v1/serp/google_hotels) with the same query, stay, party and filters for the next page. Null on the last page.
Errors
Errors return a JSON body with a detail field. Failed requests are not charged. See Errors for the full list and retry advice.
| Status | Meaning | Retry? |
|---|---|---|
401Unauthorized | Missing or invalid API key. {"detail":"missing or invalid API key"} | No, fix the request |
402Payment Required | Not enough credits for this request. Only returned once credit enforcement is switched on; during the beta metering runs in shadow mode and never blocks. {"detail":"insufficient credits: this request costs 5, 0 available. Credits renew 2026-11-01."} | No, fix the request |
404Not Found | The property, stay, job or record was not found. {"detail":"job not found"} | No, fix the request |
422Unprocessable Content | Request validation failed. {"detail":[{"loc":["body","name"],"msg":"Field required","type":"missing"}]} | No, fix the request |
429Too Many Requests | Too many requests: the key's requests-per-minute limit was exceeded, or (once credit enforcement is on) the plan's concurrent-request limit. No rate-limit or Retry-After headers are sent; back off and retry. {"detail":"rate limit 60/min exceeded"} | Yes, with backoff |
502Bad Gateway | The upstream source failed, blocked the request or returned an unusable answer. Safe to retry later; failed requests are not charged. {"detail":"RuntimeError"} | Yes, with backoff |
Try it
- Export your key:
export SCRAPERCOMPANY_API_KEY=sk_...(no key yet? request access). - Copy the cURL example above and run it in a terminal.
- Or open the interactive playground on api.scrapercompany.com, paste your key and pick this endpoint.