SERP Scraping with OpenClaw: Google, Bing, and Brave
Why multi-engine SERP scraping matters
Ranking data from a single search engine is a partial picture. Google dominates, but Bing powers Copilot's web grounding, and Brave's independent index is increasingly used by privacy-conscious users and AI agents looking for a non-Google source.
For any workflow that touches SEO monitoring, competitive intelligence, or AI enrichment, pulling results from all three gives you:
- Cross-engine ranking gaps: a page ranking #3 on Google may not appear in Brave's top 20
- Different SERP features: Bing surfaces AI-generated answers and shopping panels that Google omits in certain markets
- Index freshness differences: Brave often indexes new content before Google
OpenClaw workflows can fan out a single search query to all three engines in parallel, aggregate the results, and push them downstream in seconds.
OpenClaw and the HTTP Action node
OpenClaw is a no-code automation platform built around AI-first workflows. Its HTTP Action node accepts any REST API call-headers, body, authentication-and maps the JSON response directly to downstream nodes.
Autom's SERP endpoints return clean, structured JSON with no parsing required: organic_results, pagination, search_parameters, and search_information are the top-level keys in every response.
That predictable schema is why Autom plugs cleanly into OpenClaw without custom code.
Connecting Autom to OpenClaw
Before building any workflow, generate an API key at app.autom.dev.
Store the key in OpenClaw's Credential Vault (Settings → Credentials → New → HTTP Header Auth). Set:
- Header name:
x-api-key - Header value: your Autom API key
Reference this credential in every HTTP Action node instead of hardcoding the key.
Scraping Google Search
The Google endpoint returns organic results, pagination state, and rich SERP metadata.
POST https://api.autom.dev/v1/google/search
Content-Type: application/json
x-api-key: YOUR_API_KEY
{
"query": "best project management software",
"page": 1,
"gl": "us",
"hl": "en",
"num": 10,
"device": "desktop"
}
Key response fields:
{
"organic_results": [
{
"position": 1,
"title": "...",
"link": "...",
"domain": "...",
"snippet": "..."
}
],
"search_information": {
"total_results": 412000000,
"time_taken_displayed": 0.31
}
}
OpenClaw node config:
- Method:
POST - URL:
https://api.autom.dev/v1/google/search - Authentication: HTTP Header Auth (your Autom credential)
- Body type: JSON
- Map
organic_resultsto your next node for filtering or storage
Google-specific parameters worth using
| Parameter | Use case |
|---|---|
gl | Target a specific country market |
hl | Language of results |
device | desktop vs mobile yields different rankings |
num | Results per page (up to 10 since Google removed num=100) |
Scraping Bing Search
Bing's endpoint mirrors the Google structure, making it trivial to duplicate the node and change the URL.
POST https://api.autom.dev/v1/bing/search
Content-Type: application/json
x-api-key: YOUR_API_KEY
{
"query": "best project management software",
"page": 1
}
Bing results are useful for:
- Copilot grounding: Microsoft's AI assistant uses Bing's index; ranking on Bing affects AI-generated citations
- Geographic coverage: Bing maintains stronger market share in certain enterprise and education verticals
- Competitive benchmarking: competitors who optimize only for Google sometimes rank differently on Bing
Scraping Brave Search
Brave runs an independent crawler-it doesn't rely on Google or Bing indexes. That independence makes it a cleaner signal for content quality assessments.
POST https://api.autom.dev/v1/brave/search
Content-Type: application/json
x-api-key: YOUR_API_KEY
{
"query": "best project management software",
"page": 0
}
Note: Brave uses zero-based pagination (page: 0 for the first page).
The response schema is identical to Google and Bing, so a single OpenClaw processing node can handle all three outputs without branching.
A parallel multi-engine workflow
The most efficient OpenClaw pattern runs all three engines simultaneously:
[Trigger: Keyword input]
│
├── [HTTP: Google Search] ──┐
├── [HTTP: Bing Search] ────┤── [Merge] ── [Deduplicate] ── [Store / Notify]
└── [HTTP: Brave Search] ──┘
Merge logic: Use a Union node to combine organic_results arrays from all three responses. Tag each result with its engine source before merging.
Deduplication: Filter by link-the same URL appearing in all three engines is a strong ranking signal worth flagging separately.
Output options: Push the merged dataset to Google Sheets, a Postgres table, a Slack digest, or an AI node for summarization.
Practical use cases inside OpenClaw
Daily rank tracking
Schedule the workflow to fire every morning. Pass a list of keywords via a Loop node, call all three engines per keyword, and write position data to a spreadsheet with a timestamp. Detect drops over 3 positions and send an alert.
Competitor monitoring
Track competitor domains across all three engines for a target keyword set. When a competitor enters the top 5 on any engine, trigger a Slack notification with the result title and snippet.
AI agent enrichment
Feed SERP results into a GPT-4 or Claude node inside OpenClaw. The model summarizes the competitive landscape, extracts common themes from snippets, and drafts a content brief-fully automated from a single keyword input.
Lead generation
Combine Google local results (gl + location parameter) with Bing and Brave to surface businesses in a niche. Extract domains, filter out known competitors, and push new leads to your CRM.
Error handling in OpenClaw
SERP APIs can occasionally return empty results or hit rate limits. Handle both:
- Retry on 429: Configure OpenClaw's HTTP node to retry up to 3 times with exponential backoff when the rate limit is reached
- Retry on 500: Autom returns a
500only on internal errors-these are rare but worth catching with an automatic retry - Check result count: Add a Condition node after each HTTP call-if
organic_results.length === 0, route to a fallback branch that logs the miss and skips downstream processing - Timeout: Set HTTP node timeout to 30,000ms; Autom's median response time is under 2 seconds, so a 30-second ceiling is safe
- Only successful requests are billed: Autom charges credits only on
200responses. Failed requests (4xx,5xx) cost nothing, so retries are safe.
What Autom handles so you don't have to
Building SERP scraping from scratch requires rotating proxies, CAPTCHA solving, constant maintenance as search engines update their HTML structure, and legal exposure. None of that scales inside a no-code workflow builder.
Autom abstracts the entire stack-proxy rotation, bot detection evasion, HTML parsing, structured JSON delivery-so OpenClaw gets clean, predictable data and you focus on the logic.
Every endpoint returns the same top-level schema (organic_results, pagination, search_parameters), meaning a single OpenClaw processing node works unchanged across all engines and content types.
Full API surface available in your workflows
All endpoints share the same x-api-key authentication and 1 credit per call pricing:
| Engine / Type | Endpoint | What it returns |
|---|---|---|
| Google Search | /v1/google/search | Organic results, pagination, SERP metadata |
| Google Search Light | /v1/google/search/light | Organic results only - faster, lower latency |
| Google Images | /v1/google/images | Image URLs, titles, sources, dimensions |
| Google News | /v1/google/news | News articles with publisher and date |
| Google Videos | /v1/google/videos | Video results with metadata |
| Google Shopping | /v1/google/shopping | Product listings with prices, ratings, merchants |
| Google Jobs | /v1/google/jobs | Job listings with title, company, location |
| Google Maps | /v1/google/maps | Place results with address, website, phone (experimental) |
| Google Autocomplete | /v1/google/search/autocomplete | Keyword suggestions for a query |
| Bing Search | /v1/bing/search | Organic results from Bing's index |
| Brave Search | /v1/brave/search | Organic results from Brave's independent index |
In an OpenClaw workflow this means you can chain engines and content types in sequence: pull organic results from Google Search, cross-reference with Google Shopping for product-intent queries, enrich with Google News for freshness signals, and validate against Brave Search-all within a single automated run.
Get your API key at app.autom.dev and browse the full reference at docs.autom.dev.