Firecrawl cache: maxAge 2 days vs Sume's fresh: true
Firecrawl scrape caches for 2 days by default (maxAge 172800000 ms). Sume's scrape has a boolean fresh, default false; fresh: true bypasses cached content.

Firecrawl's scrape takes a numeric maxAge, which its guide says defaults to 172800000 ms (2 days). Sume's scrape takes no number: it has a boolean fresh, default false, and the crawl_scrape description says fresh true bypasses cached content. If your code sets maxAge to ask for a live page, send fresh: true to Sume.
Firecrawl facts are from its advanced scraping guide and Sume's from the OpenAPI file and MCP tool descriptions, all read 2026-09-30.
How do maxAge and fresh map to each other?
The two are different shapes, so only the extremes translate.
| Intent | Firecrawl | Sume |
|---|---|---|
| Accept a cached copy | Leave maxAge unset (2 days) | Leave fresh unset (false) |
| Force a live fetch | Lower maxAge | fresh: true |
| Accept a copy up to N ms old | maxAge: N | No equivalent field |
| Default | 172800000 ms | false |
What does fresh: true look like in a request?
Add the flag next to url. It is accepted by the scrape route and, per the crawl_site description, by crawl for each page.
const res = await fetch("https://api.sume.com/v1/firecrawl/scrape", {
method: "POST",
headers: {
Authorization: "Bearer " + process.env.SUME_API_KEY,
"Content-Type": "application/json",
},
body: JSON.stringify({ url: "https://example.com/pricing", fresh: true }),
});
console.log(res.status, await res.json());Does Sume say how long its cache lasts?
Not in the pages I read. The sources give the flag and its default but no cache lifetime, so do not assume 2 days. If staleness matters, set fresh: true; if it does not, leave it off and accept whatever the cache holds.
Should I always set fresh: true?
No. Use it when the page changes by the hour, such as a price or a status page, and leave it off for stable documentation. A live fetch still has to finish inside timeout_ms, which is capped at 30000. Search results come from the search endpoint; pick pages there, then scrape.
Sources
Related posts
More in Developers
- Firecrawl includePaths regex vs Sume's literal path prefixes
Firecrawl's includePaths are regex on the URL pathname. Sume's include_paths are literal prefixes starting with /, max 10 items. How to rewrite one.
- Firecrawl map endpoint limit 5000 vs Sume crawl_map limit 100
Firecrawl's /map defaults to 5000 links and allows 100000. Sume's crawl_map takes limit 1 to 100, so pick URLs, then scrape them with crawl_scrape.
- Firecrawl map sitemap skip/include/only: Sume crawl_map has no switch
Firecrawl's /map has a sitemap option (skip, include, only) and includeSubdomains. Sume's crawl_map takes only url and limit, and maps one origin.
- Firecrawl MCP timeout: Sume crawl_scrape's 35, 40 and 45 s deadlines
A synchronous crawl_scrape call has three deadlines: client abort at 35 s, MCP at 40 s, host watchdog at 45 s. Narrow the page or use crawl_site.
Written by Sume