Egress IP ranges
Allow-list our capture traffic in your WAF or firewall.
If the pages you capture are behind a WAF, an IP allow-list, or a staging firewall, you need to know which addresses our browsers come from.
Machine-readable
curl https://api.pagecapture.dev/egress-ips.json
{
"version": "egress-2026-08-1",
"updated_at": "2026-08-01",
"change_notice_days": 30,
"ranges": [
{ "cidr": "203.0.113.0/24", "region": "default", "effective_from": "2026-08-01" }
]
}
The document needs no API key — firewall automation is usually a cron with curl and no credential to give.
How we change it
- A new range appears with an
effective_fromdate before we start using it, so you can allow-list it ahead of time. - A range being retired carries
retiring_onfor at leastchange_notice_days— 30 days — rather than disappearing between two deploys. versionchanges whenever the set changes, so a diff is cheap to detect.
Poll the document daily and reconcile. Hard-coding today's list into a firewall rule is the failure mode this endpoint exists to prevent.
Regions
When you pin captures to a country with ip_country_code, the exit addresses come from that region's block. The region field on each range tells you which. The country catalog itself is at /v1/regions.