BuildE2EBuildE2E
DocsStart Free
ScrapingMap
Map Endpoint

Map (URL Discovery)

Discover all URLs on a website via sitemaps, robots.txt, and HTML link extraction. Returns a deduplicated, filtered list optionally ranked by relevance.
POST/v1/map
Discover URLs from a website using multiple discovery strategies.

Request Body

ParameterTypeDescription
urlrequired
stringBase URL to discover links from
limit
numberMax number of URLs to return (1-5000). Defaults to 100
search
stringKeyword to filter and rank discovered URLs by relevance.
includeSubdomains
booleanInclude URLs from subdomains (e.g., blog.example.com when base is example.com). Defaults to false
ignoreQueryParameters
booleanStrip query parameters from URLs for deduplication. Defaults to true

Example Request

curl -X POST https://api.builde2e.com/api/v1/map \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer uc-YOUR-API-KEY' \
  -d '{
    "url": "https://example.com",
    "search": "blog",
    "limit": 50
  }'

Example Response

json
{
  "success": true,
  "links": [
    "https://example.com/pricing",
    "https://example.com/pricing/enterprise",
    "https://example.com/about",
    "https://example.com/blog",
    "https://example.com/docs"
  ],
  "total": 5,
  "cost": 0.002,
  "timestamp": "2026-03-04T10:15:30.123Z"
}

Response Structure

FieldTypeDescription
successbooleanWhether URL discovery succeeded
linksstring[]Discovered URLs
totalnumberTotal number of URLs returned (equal to links array length)
costnumberCost in USD ($0.002 per request)
errorstringError message if discovery failed
timestampstringISO timestamp of the response

Map + Fetch Pattern — SDK Only

A common pattern is to discover URLs with map, then fetch their content. The Node.js SDK makes this easy:
Node.js
// Discover URLs then fetch their content
const mapResult = await BuildE2E.map({
  url: 'https://example.com',
  search: 'documentation',
  limit: 10
});

const fetchResult = await BuildE2E.batchFetch({
  urls: mapResult.urls,
  type: 'markdown'
});

fetchResult.results.forEach(page => {
  if (page.success) {
    console.log(`${page.url}: ${page.markdown?.length} chars`);
  }
});

Pricing

Flat rate of $$0.002 per request, regardless of how many URLs are discovered.