Web search
1 credit/v1/google/searchOrganic SERP rows for a query: title, URL, snippet, position. Optional region, date_posted window, and page.
query, region, date_posted, page
Fetch Google Search, Ads Transparency, Business Profiles, reviews, Q&A, and hotels as structured JSON with one SocialCrawl API key. No Google Cloud OAuth. Reads are priced in credits.
10 active endpoints. SERP, ads, Maps business, hotels.
Ten live read endpoints across Google web search, Ads Transparency, Business Profiles, and hotels. SERP at 1 credit. Ads and deep business pulls at 5. Data API only. No ranking tools, no Google Cloud project, no write access.
/v1/google/searchOrganic SERP rows for a query: title, URL, snippet, position. Optional region, date_posted window, and page.
query, region, date_posted, page
/v1/google/adOne Ads Transparency creative by full creative URL. Ad copy, advertiser, and format. Use a URL from company/ads.
url
/v1/google/adlibrary/advertisers/searchFind advertisers in the Ads Transparency Center by keyword. Optional region (defaults to US).
query, region
/v1/google/company/adsList ads by domain or advertiser_id. Filter by region, platform surface, format, and date range. Cursor pagination.
domain or advertiser_id, region, platform, cursor
/v1/google/business/infoGoogle Business Profile card: name, category, rating, address, phone, hours, attributes. Resolve by keyword, cid, or place_id.
keyword or cid or place_id, location_name, language_name
/v1/google/business/extended-reviewsMulti-source reviews for a place, including third-party outlets. Star rating, text, reviewer stats, owner replies. Depth controls count.
keyword or cid or place_id, depth
/v1/google/business/updatesOwner-published GBP posts: text, image, publish date, CTA link. Empty list means no posts, not a failure.
keyword or cid
/v1/google/business/questionsCommunity questions and answers on a Business Profile, flattened with parent_id links. Depth controls how many questions return.
keyword or cid or place_id, depth
/v1/google/hotels/searchHotels for a query: name, star rating, review score, coordinates, nightly price. Optional check_in and check_out. Returns hotel_identifier for detail.
keyword, check_in, check_out, location_name
/v1/google/hotels/infoFull hotel by hotel_identifier: description, amenities, review-sentiment topics, multi-vendor price comparison.
hotel_identifier
Returns Google web search results for a query: each result's title, page URL, text snippet, and its position in the ranking.
Use it for general web results; for Korean web pages use naver/webkr/search, and for news headlines use google_news/search.
1 credit
query · Search keyword or phrase
$ curl https://www.socialcrawl.dev/v1/google/search?query=best+restaurants+in+London \
-H "x-api-key: sc_YOUR_API_KEY"// Running this live needs your own API key. Hit "Try it" to see an example responseGoogle is a normal SocialCrawl surface. You call GET /v1/google/… with an API key, spend credits on live misses, and get a single JSON envelope back. No Google Cloud OAuth. No second SDK.
Send your key in the x-api-key header. No Google Cloud project, no OAuth client secrets. The same key works for TikTok, Reddit, Google News, Google Finance, and the rest of the catalog.
All Google routes are GET. Pass query, url, domain, keyword, cid, place_id, hotel_identifier, region, depth, or cursor as query strings. We validate oneOf and formats before charging.
SERP, business info, updates, and hotel search cost 1 credit. Ads Transparency, extended reviews, Q&A, and hotel info cost 5. Cache hits cost 0. Empty or hard failures refund.
Every response is the same shape: success, data, credits_used, credits_remaining, request_id, cached. Lists may carry pagination (page, cursor, has_more).
Most products do not call every endpoint on every tick. They search the web or resolve an advertiser, then deepen ads or business detail only when a hit matters.
GET /v1/google/search?query=…SearchResult list: title, url, snippet, position
Broad discovery by keyword. Page with page. Region narrows country results.
GET /v1/google/adlibrary/advertisers/search?query=…AuthorList of Ads Transparency advertisers
Resolve brand names to advertiser entities before listing creatives.
GET /v1/google/company/ads?domain=…PostList of ads by domain or advertiser_id
Inventory of creatives and creative URLs. Feed /ad for full detail.
GET /v1/google/business/info?keyword=…Place with rating, hours, contact, attributes
Local entity card once you have keyword, cid, or place_id.
GET /v1/google/search
?query=best+restaurants+in+London
®ion=UK
Host: www.socialcrawl.dev
x-api-key: sc_your_api_key_here
# ads transparency
GET /v1/google/company/ads?domain=example.com®ion=US
GET /v1/google/ad?url=https://adstransparency.google.com/advertiser/…/creative/…{
"success": true,
"data": {
"items": [
{
"title": "Example result",
"url": "https://example.com",
"snippet": "…",
"position": 1
}
]
},
"credits_used": 1,
"credits_remaining": 9999,
"request_id": "req_…",
"cached": false
}Field names match the rest of SocialCrawl. SERP, ads, places, and reviews use shared archetypes so parsers stay reusable.
items[] with title, url, snippet, position; page for further SERP pages
ad creative detail or company ad rows; GBP updates as PostList with text, media, published_at
advertiser search hits: id, name, region context, transparency URLs in ext
business info and hotels as Place; hotel search as PlaceList; extended-reviews as ReviewList; Q&A as CommentList with parent_id
Same request lifecycle as every other /v1 platform endpoint. Google is not a sidecar.
Next.js catch-all routes into the Hono social API. We mint a request_id, authenticate the key, then enforce rate limit (600/min) and concurrency (50 in flight per key).
Registry lookup finds google/search (or ad, business/info, hotels/*). Required params and oneOf constraints run first. Invalid input returns 400 with no charge. Valid calls debit the tier cost atomically before upstream work.
A deterministic cache key is built from platform + resource + params. Hit: return immediately, credits_used = 0. Miss: SERP and ads read live; business and hotels run as server-side business-data reads. Retries on 5xx/network with a circuit breaker if the source is unhealthy.
Upstream JSON is mapped to SearchResult, Post, AuthorList, Place, PlaceList, ReviewList, or CommentList, validated against the canonical Zod schema, then wrapped in the success envelope and logged for billing audit.
Billing rules that matter in production
Google surfaces here are public-read search, ads transparency, and business data. We normalize them into the SocialCrawl schema so your code does not learn a second OAuth flow or three upstream SDKs.
Organic SERP, Ads Transparency creatives and advertisers, Business Profile cards, multi-source reviews, owner updates, Q&A, and hotel search plus detail. Read-only. No Search Console, no Ads Manager writes, no private account data.
Search and Ads Transparency routes are read live on request. Business Profiles, extended reviews, updates, Q&A, and hotels run as server-side business-data reads. One SocialCrawl key covers all of them.
A unified JSON envelope: success, data, credits_used, request_id, cached. Organic rows become SearchResult. Creatives become Post. Places and hotels become Place or PlaceList. Reviews and Q&A share ReviewList and CommentList leaves.
No Google Cloud OAuth. No ranking history product. No async job_id surface for multi-minute review crawls yet. No write or moderation endpoints.
The jobs this API is most often used for.
SERP checks, ad intel, and local business enrichment
Callers concentrate on search, company/ads chains, and business/info. Hotels and Q&A show up when travel or local reputation jobs need deeper place data. SERP at 1 credit, Ads Transparency, and business and hotels on the same key. No Google Cloud OAuth project.
SERP and standard business reads are typically a few seconds on live miss. Ads lists and deep hotel detail can run longer when upstream work is heavier.
The jobs Google data is most often used for. Each one is a full recipe with the endpoint chain and pricing.
Common ways teams put this data to work, and the stack each one tends to run.
Poll google/search for keyword SERP snapshots by region and date window. Store title, URL, position. Cache hits keep recurring runs cheap.
Resolve advertisers, list company/ads by domain, then open /ad for creative detail. Filter by platform surface and format.
business/info plus reviews, updates, or Q&A into CRM enrichment. hotels/search then hotels/info for travel inventory jobs. Same key as the rest of SocialCrawl.
Standard tier is one credit per live call. Advanced ads and deep business pulls are five. Cache hits are free.
curl "https://www.socialcrawl.dev/v1/google/search?query=best+restaurants+in+London®ion=UK" \
-H "x-api-key: sc_your_api_key_here"curl "https://www.socialcrawl.dev/v1/google/business/info?keyword=Blue+Bottle+Coffee&location_name=San+Francisco" \
-H "x-api-key: sc_your_api_key_here"Same key as the rest of the catalog
Every endpoint returns structured JSON in a unified envelope. Computed fields such as engagement rate and content category are included only where the endpoint supports them and the required source inputs are present.
Same Google Search data, two very different paths. Auth, rate limits, schema, and cost, side by side.
| Feature | SocialCrawl | DIY SERP scraping |
|---|---|---|
| Authentication | One x-api-key header shared across 51 platforms | None, but you manage proxy credentials and session cookies yourself |
| Setup | One GET request; first call in minutes | Headless browsers, proxy rotation, and HTML parsers to build and host |
| Rate limits / CAPTCHAs | Flat credit pricing; CAPTCHA and block handling happens upstream | Google blocks aggressively. CAPTCHAs and IP bans are your problem |
| Response schema | Unified JSON envelope shared with all 51 platforms | Raw HTML that breaks every time Google changes its markup |
| Pricing | 1 credit per SERP query, 5 for ad and review endpoints; 100 free credits | Free to attempt, but proxies and CAPTCHA solvers cost real money at scale |
| Data coverage | SERP, ad transparency, business profiles, reviews, Q&A, and hotels in one API | Each surface needs its own scraper and parser |
| Maintenance | Schema stays stable when Google changes its layout | Constant parser fixes as Google updates its HTML |
Authentication
Setup
Rate limits / CAPTCHAs
Response schema
Pricing
Data coverage
Maintenance
Find answers to frequently asked questions about SocialCrawl's API, pricing, and capabilities.
Contact usAsk AI about SocialCrawl