Redirect checking with history.
Follow redirect chains and detect changes over time. Every check is stored, so you can look up what a URL did last week or last month.
|Zero SSRF risk
We block private IPs, cloud metadata, and IPv6 ranges. Safe URL checking without building your own validation.
100% reproducible
Every check is stored. Look up what a URL did last week, or see when its redirect behavior changed.
1 line integration
Run npx 3xx check URL. Sign up with your email for 100 free requests, then upgrade when you need more.
Use it anywhere
CLI or curl.
Every redirect chain is recorded
Look up what a URL did last week. See when its redirect behavior changed. This data can’t be backfilled.
{
"id": "chk_01HN5V8XQR...",
"final_url": "https://x.com/user/status/123",
"final_status": 200,
"chain": [
{
"status": 301,
"from": "https://t.co/example",
"to": "https://twitter.com/...",
"ms": 45
},
{
"status": 302,
"from": "https://twitter.com/...",
"to": "https://x.com/user/...",
"ms": 52
}
],
"chain_hash": "a8f2c3...",
"flags": {
"cross_domain": true,
"has_loop": false
},
"total_ms": 135
}chain_hashA hash of the redirect chain. When this changes, the URL started redirecting somewhere different. Query history to see when.
chainEach hop: status code, source, destination, latency. Private IPs and metadata endpoints are blocked.
flagsAnswers to common questions: Did it cross domains? Did it loop? Are there tracking parameters?
402 / 429402 means quota exceeded—stop retrying. 429 means rate limited—wait, then retry.
Pricing
Every plan starts with 100 free requests. Upgrade only when you need more.
Starter
For makers and small projects
- 50K requests/month
- CLI & API access
- Historical queries
- Email support
Developer
For production use
- 250K requests/month
- Batch processing
- Priority support
- Usage analytics
Team
For CI/CD and monitoring
- 1M requests/month
- Monitors & webhooks
- Team seats
- SLA guarantee