You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Client#serp(q:, engine: nil, gl: nil, hl: nil, page: nil) for the new GET /serp endpoint — parsed Google search results (organic results, related searches, pagination) as a Hash. Flat 15 credits per search. Raises ArgumentError when q is blank or not a String, or when page is not an Integer >= 1 (the server also rejects it with a 400, not billed; checking client-side saves the round trip). Pages are 1–100: the server rejects a page above 100 with a 400.
bin/smoke.rb live smoke script: asserts result shapes (not just the absence of exceptions), runs page tools with js: false on datacenter proxies (~32 credits per sweep), and redacts the API key from failure output.
Fixed
Client#inspect and Configuration#inspect no longer print the API key; it is shown as api_key="[FILTERED]".