Give this API a link to any website's sitemap
Give this API a link to any website's sitemap.xml file and it will fetch and parse it, returning every URL found inside. If the sitemap links to other sitemaps (called sitemap indexes), it will follow and extract those too. Each URL is returned with any extra information available, such as when the page was last updated and how often it changes. Useful for SEO audits, content inventories, broken link checks, and competitive research.
10000 (raw units)
price
3
calls / 30d
3
unique payers
2026-09-14
updated
Provider
sitemap-url-extractor.underscoredone.com · discovered, not yet claimed by its owner
Payment (x402 accepts[])
[
{
"scheme": "exact",
"network": "eip155:8453",
"payTo": "0xE9740820225B3918b4ddd1292C7cA4Ca0e2C2F08",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "10000",
"maxTimeoutSeconds": 300
},
{
"scheme": "exact",
"network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
"payTo": "8ugAWAXDB8V18kiUrGZTq1oMvU3C6Fxs8hfC6rvzQT3b",
"asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"amount": "10000",
"maxTimeoutSeconds": 300
}
]Output schema
{
"bazaar": {
"info": {
"input": {
"body": {
"sitemap_url": "https://onescales.com/sitemap.xml"
},
"bodyType": "json",
"method": "POST",
"type": "http"
},
"output": {
"example": {
"api_version": "1.0.0",
"sitemaps_found": 1,
"total_urls": 6,
"urls": [
{
"changefreq": "weekly",
"lastmod": "2022-12-27T03:01:05-05:00",
"priority": null,
"url": "https://onescales.com/pages/contact"
},
{
"changefreq": "weekly",
"lastmod": "2025-09-29T21:38:56-04:00",
"priority": null,
"url": "https://onescales.com/pages/about"
},
{
"changefreq": "weekly",
"lastmod": "2023-11-29T18:49:48-05:00",
"priority": null,
"url": "https://onescales.com/pages/join-our-community"
},
{
"changefreq": "weekly",
"lastmod": "2024-01-01T23:12:34-05:00",
"priority": null,
"url": "https://onescales.com/pages/podcast"
},
{
"changefreq": "weekly",
"lastmod": "2024-10-07T21:21:59-04:00",
"priority": null,
"url": "https://onescales.com/pages/support-us"
},
{
"changefreq": "weekly",
"lastmod": "2025-05-06T21:28:16-04:00",
"priority": null,
"url": "https://onescales.com/pages/shopify-growth-course"
}
]
},
"type": "json"
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"body": {
"additionalProperties": false,
"properties": {
"sitemap_url": {
"description": "The full web address of the sitemap.xml file you want to read, for example: https://example.com/sitemap.xml",
"type": "string"
}
},
"required": [
"sitemap_url"
],
"type": "object"
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
},
"method": {
"enum": [
"POST",
"PUT",
"PATCH"
],
"type": "string"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method",
"bodyType",
"body"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"properties": {
"api_version": {
"type": "string"
},
"sitemaps_found": {
"type": "integer"
},
"total_urls": {
"type": "integer"
},
"urls": {
"items": {
"type": "object"
},
"type": "array"
}
},
"required": [
"api_version",
"total_urls",
"sitemaps_found",
"urls"
],
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}
}
}Use it
curl
curl "https://sitemap-url-extractor.underscoredone.com/extract" # -> 402 Payment Required, accepts[] lists how to pay # retry with a PAYMENT-SIGNATURE (or PAYMENT header) once paid
JavaScript
const res = await fetch("https://sitemap-url-extractor.underscoredone.com/extract");
if (res.status === 402) {
const { accepts } = await res.json();
// pay one of accepts[] via an x402 client, then retry with the payment header
}Python
import httpx
res = httpx.get("https://sitemap-url-extractor.underscoredone.com/extract")
if res.status_code == 402:
accepts = res.json()["accepts"]
# pay one of accepts[] via an x402 client, then retry with the payment headerMachine-readable
Everything on this page is also available as clean JSON at /resources/3640.json, and this resource appears in /discovery/resources and /discovery/search.