Two endpoints people mix up — Map and Crawl. They sound similar but do different jobs, and picking the right one is the difference between a 1-credit call and a few hundred.
Map — discover URLs (from 1 credit)
Mapanswers “what pages exist here?” without reading any of them. It parses sitemap.xml, and falls back to extracting same-origin links when a site has no sitemap. You get back the URL list, a total count, and which source was used — metered at roughly one credit per 300 URLs, so even a large site is barely a rounding error.
curl -X POST https://synoppy.com/api/map \
-H "Authorization: Bearer $SYNOPPY_KEY" \
-d '{ "url": "https://example.com" }'
# → { "urls": [...], "count": 1204, "source": "sitemap" }Crawl — read every page
Crawlanswers “give me the content of this site.” It discovers URLs and then reads each one through the same Read engine, returning one clean Markdown document per page. It's bounded by a limit you set (1–25 per call) and bills each page the way a Read does — by the content it pulls — so a site of short pages stays cheap.
curl -X POST https://synoppy.com/api/crawl \
-H "Authorization: Bearer $SYNOPPY_KEY" \
-d '{ "url": "https://example.com", "limit": 10 }'
# → { "discovered": 1204, "count": 10, "pages": [...] }Combine them
The pattern that scales: Map first to see how big a site is and scope a targeted subset, then Crawl only the URLs you care about. Mapping a 1,204-page docs site costs a few credits; blindly crawling all of it would cost far more. Discovery is cheap on purpose — use it to spend your crawl budget where it counts.