Signup comes with $1 in credit. No subscription needed.Claim your $1

Tools / Web search and scraping / API

Scrape public pages from a Python script with one POST request

In Python, send requests.post to https://api.routergrowth.com/v1/run with a Bearer key, capability web.scrape and input url. The JSON response carries result.markdown, result.title, result.description and result.status_code, plus the run_id and what was charged. No headless browser, proxy pool or HTML parser to maintain in the script.

Real run: 1 record $0.0056 per page web.scrape MCP · REST · CLI

Ask your agent

Write a Python script that scrapes every URL in urls.txt and saves each page as a markdown file named after its domain.

Connect RouterGrowth once, then ask in plain words. New workspaces start with $1 of credit. Get a key or read the setup guide.

A real run

What does it return?

One call to web.scrape (website scrape), run through RouterGrowth on October 26, 2026. These are the first rows it returned; fields that name a person are masked.

1records returned
0.7 sto answer
$0.0064charged for the run
urltitlelanguagestatus_code
https://www.shopify.com/posPoint of Sale (POS) for Business - Shopifyen200

The Shopify POS page as the script receives it: status 200 and 22,934 characters of markdown with 46 headings, ready to split into sections.

Step by step

How do you do it?

  1. Keep the key in the environment

    Read ROUTERGROWTH_API_KEY with os.environ and send it as Authorization: Bearer.

  2. POST the URL

    requests.post('https://api.routergrowth.com/v1/run', json={'capability': 'web.scrape', 'input': {'url': url}}, headers=headers, timeout=120).

  3. Read the result

    data = r.json(); data['result']['markdown'] is the page text and data['result']['status_code'] the HTTP status.

  4. Poll when it is still running

    If status is running, GET the poll_url in the response until done is true.

  5. Loop over a URL list

    Run the list in a for loop or a thread pool, write each page to a .md file and keep the run_id.

Price

What does it cost?

List prices on this call, read from the catalog when this page was built. The exact figure is quoted before every run, and a monthly plan lowers it.

$0.0056per page
No seatand no monthly plan needed
$0when the call finds nothing

In practice

What do you ask it?

You describe the job; the agent picks the calls, shows the price and runs them.

Write a Python script that scrapes every URL in urls.txt and saves each page as a markdown file named after its domain.

In Python, search the web for three queries about our category, then scrape the top five results of each into one CSV.

Connect

How do you connect it?

One MCP server for Claude, ChatGPT, Claude Code, Codex and Cursor, or the same call over the CLI and REST with the input above.

MCP server
claude mcp add --transport http routergrowth https://api.routergrowth.com/mcp
CLI
npm install -g routergrowth && routergrowth setup
routergrowth run -c web.scrape -i '{"url": "https://www.shopify.com/pos"}'
REST
curl -X POST https://api.routergrowth.com/v1/run \
  -H "Authorization: Bearer $ROUTERGROWTH_API_KEY" \
  -d '{"capability": "web.scrape", "input": {"url": "https://www.shopify.com/pos"}}'

Worth knowing

What should you know first?

Skip pages that did not load

A 403 or 404 page still returns its text. Keep rows whose status_code is 200.

Split on headings

Lines starting with # mark the sections, which makes chunking for a model a few lines of code.

Same helper for other calls

Change the capability and input to search the web or the news with the same function.

FAQ

Questions about web scraping api python

Is there a Python SDK?

None is needed. The API is JSON over HTTPS, so requests or httpx is enough.

Does it handle pages built with JavaScript?

Yes. The page is rendered on the provider side before it is turned into markdown.

Can I scrape many URLs in parallel?

Yes. Send requests concurrently; each URL is its own run and its own charge.

Does it extract fields like price or SKU?

No. It returns the page as markdown. Pull the fields in your script or with a model.

More on Web search and scraping

Related pages

Reading this as an agent? This page as markdown: /tools/web-scraping/api-python.md

One key. Every network.

Connect your agent once. The first calls run on the $1 that comes with signup.