Grabber

formats=links

Extract every link from any page

Send a URL and get back a JSON array of every link on the page, as absolute URLs. The building block for crawlers, sitemap checks and agents that need to know where to go next.

  • $1 free credit, no card
  • No subscription
  • Failed requests are free

One request, every link

With unwrap=true the response body is the JSON array itself.

  • Absolute URLs, ready to fetch
  • From the final page, after redirects
  • Combine with markdown in one request
curl -G https://api.grabber.sh/fetch \
  -H "Authorization: Bearer $GRABBER_API_KEY" \
  --data-urlencode "url=https://example.com/" \
  -d "formats=links" \
  -d "unwrap=true"

Response body

[
  "https://example.com/pricing",
  "https://example.com/docs",
  "https://example.com/blog",
  "https://example.com/blog/rag-guide",
  "https://github.com/example"
]

How it works

  1. 1

    Send the URL

    Call GET /fetch with url and formats=links.

  2. 2

    Grabber reads the page

    It follows redirects, loads the page and collects every link on it as an absolute URL.

  3. 3

    Decide what is next

    Filter the list, then fetch the pages you want. Each fetch is its own request.

What people build with it

Crawlers

Discover pages one level at a time and decide yourself which ones to follow.

SEO audits

Check internal links, find pages that nothing links to, and spot links to old domains.

Agents that navigate

Let an agent see the links on a page so it can choose the next one to read.

Monitoring

Watch a listing or changelog page and act when a new link appears.

Pricing

Prepaid credit, taken one request at a time. Ask for several formats in one request at the price of one.

RequestPrice
A page$0.001
A page with js_render=true$0.005
Any error$0
Credit when you sign up$1, about 1,000 pages

Questions

Something else? The docs cover every parameter and error, and you can reach us from the dashboard.

Are relative links turned into full URLs?

Yes. Every link comes back as an absolute URL, so you can fetch it as it is.

Does Grabber crawl the links for me?

No. Grabber loads one page per request, so you stay in control of what is fetched and what it costs. Fetch the next pages yourself, up to 60 requests per minute per key.

Can I get the links and the content together?

Yes. Ask for formats=markdown,links and you get both in the JSON envelope, for $0.001.

What about links that JavaScript adds?

Add js_render=true and the links are read after the page has run in a headless browser, for $0.005 a page.

Give your agents the web

Sign up in a minute and fetch your first 1,000 pages for free.