Introducing Highlights: the context that matters

Sitemap extractor API. Find every page on a site.

Discover every URL on a domain from its sitemaps, with page titles and descriptions when available. Build the map before you collect the content.

stripe.com

includeSubdomains

maxLinks: 100

Map

Discovered pages

urls[]

  • Payments

    stripe.com/payments

  • Billing

    stripe.com/billing

  • Pricing

    stripe.com/pricing

  • Documentation

    docs.stripe.com

  • Connect

    stripe.com/connect

  • No title yet

    stripe.com/newsroom

4 pages

Selected from the map. Collect their content when you are ready.

Scrape selected

Send the list to Batches

Discovered pages

Backed by Y Combinator. Teams build with Context.dev.

  • Mintlify
  • daily.dev
  • Daydream
  • Super.com
per map call, 2 with search
1 credit
maximum URLs per call
100,000
and descriptions when available
Titles
free maps every month
1,000
Extract every sitemap
Read a domain’s sitemaps, including nested sitemap indexes, or fall back to homepage links when there is no sitemap.
Scope the discovery
Include subdomains and set a maximum number of links for your request.
Use available metadata
Read titles and descriptions when available. Newly discovered URLs can arrive before enrichment.

Map first. Then collect.

Call mapUrls as your sitemap scraper API. Pass the URLs you want into Scrape or Batches when you are ready to retrieve their content.

npm install context.dev

map.ts

import ContextDev from 'context.dev';

const client = new ContextDev({ apiKey: 'YOUR_API_KEY' });

const { urls } = await client.web.mapUrls({
  domain: 'stripe.com',
  includeSubdomains: true,
  maxLinks: 100,
});

for (const page of urls) {
  console.log(page.url, page.title, page.description);
}

Turn a site map into a useful dataset.

Discover the pages, then build the content workflow that your product needs.

Scrape anything

Read websites and PDFs. Get clean Markdown, HTML, structured JSON, images, and screenshots in the formats your product needs.

context.dev

Webpages & PDFs

Markdown

HTML

JSON

Screenshot

# Web data API for AI agents

Web scraping, data, and
search infrastructure
for AI products.

## Map domains
Discover URLs across a
website before you scrape.

Run batches at scale

Scrape thousands of URLs in one job. Process large URL lists or crawl entire sites, then collect results when the batch completes.

Markdown

Running

25,000 URLs

78.7%

19,680 complete

5,320 remaining

Browse results →

Paginated dataset

A few things to know.

More details in the API documentation.

How do I find all pages on a website?

Start with the site’s sitemaps, which list the pages it publishes. The Map API does that step for you: it reads the domain’s sitemaps, falls back to homepage links when there is no sitemap, and returns up to 100,000 URLs for 1 credit. Use a crawl for pages the sitemap leaves out.

Does Map return the content of every page?

Map returns discovered URLs and available metadata. Use Scrape for page content, or submit the discovered URLs to a batch for larger collection jobs.

Can I include subdomains?

Yes. Set includeSubdomains for the domain discovery request.

Can I limit the number of URLs?

Yes. Use maxLinks to bound the number of discovered links returned for your request.

Why might a title or description be missing?

URLs without stored enrichment can be returned immediately and queued for background HTML scraping. Later requests may include the additional metadata.

Start with your next request.

One API key for scraping, research, brand data, batches, and monitoring.