Redirect & Canonical Destination Validator
Pricing
from $16.00 / 1,000 url validations
Redirect & Canonical Destination Validator
Checks public URL redirects, final HTTP status, canonical URLs, and expected migration targets.
Validate public URL migration mappings in bulk before or after a site move. For every source URL, the Actor records the redirect chain, final HTTP status, final canonical URL, expected-target checks, a concise migration-QA verdict, and an actionable next step for every detected mismatch.
Use it when an SEO, engineering, or QA team needs to verify that old URLs land on the intended replacement pages—not merely that a redirect exists.
Start with the ready-made migration check
Use the public Validate Website Redirects & Canonicals task when you want a bounded, prefilled migration-QA run. Duplicate the task, paste a CSV migration sheet, and set the run's maximum charge before starting.
What it checks
- Redirect path and hop count (up to 10 redirects)
- Final HTTP status
- HTML canonical link on the final page
- Mismatches between the final URL, canonical URL, and expected migration target
- A
passorneeds-attentionverdict with deterministic, issue-linked remediation actions
Input
Provide urlMappings such as:
{"urlMappings": [{"sourceUrl": "https://old.example.com/product-a","expectedTargetUrl": "https://www.example.com/product-a"}]}
For a redirect-only health check, omit expectedTargetUrl. For a migration QA check, include the approved target URL for every mapping.
Paste a spreadsheet CSV
You can also export a migration sheet as CSV and paste it into URL mappings CSV. The first two columns may be used without headers, or use these headers:
sourceUrl,expectedTargetUrlhttps://old.example.com/product-a,https://www.example.com/product-a
When both JSON mappings and CSV rows are supplied, duplicate source URLs are checked once.
Use public http or https URLs only. The Actor rejects localhost and non-public DNS addresses, checks every redirect destination again, follows at most 10 redirects, and reads at most 2 MiB per response.
Pricing
- From $0.02 per completed URL validation (Free-tier price; eligible higher tiers receive a progressive Store discount)
- A validation is charged only after its result is stored in the default Dataset.
- Failed requests are not charged.
For example, 100 stored validation results cost up to $2.00 at the Free-tier price. A DNS, timeout, or connection failure is logged and is not billed.
Automate it
Use the Actor from a deployment script, CI job, or any Apify integration. Keep the token outside source control and pass it as an environment variable:
curl -X POST "https://api.apify.com/v2/acts/x2ppi~redirect-canonical-destination-validator/runs?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"urlMappingsCsv":"sourceUrl,expectedTargetUrl\\nhttps://old.example.com/a,https://www.example.com/a"}'
For a release gate, save the approved migration sheet as an Apify task and alert on any needs-attention result. Review the stored issues and recommendations before changing production redirects or canonical tags.
How to interpret results
verdict: "pass"means the Actor found no checked HTTP, redirect-chain, expected-target, or canonical mismatch.verdict: "needs-attention"meansissuesandrecommendationsexplain what to review next. Recommendations are technical QA guidance; confirm the migration plan before changing production redirects or canonicals.expectedTargetMatchesFinalUrl: falsemeans the redirect finished at a different page than the supplied migration target.finalCanonicalMatchesFinalUrl: falsemeans the destination page declares another canonical URL.issuescontains concise flags for non-2xx finals, long redirect chains, and mapping/canonical mismatches.
Output fields for QA handoff
redirectChain: every observed redirect hop, including status andLocationtarget.finalUrlandfinalStatus: where the request ended.finalCanonicalUrl: canonical declared by the final HTML response, if present.recommendations: issue code, priority, and a concrete next action for an engineer or SEO reviewer.
Boundaries
This Actor makes bounded public HTTP requests only. It rejects localhost and non-public DNS addresses, checks redirect destinations again, follows at most 10 redirects, and reads at most 2 MiB per response. It does not log in, bypass access controls, use customer credentials, or confirm indexing, ranking, or migration success in search engines.
This is an HTTP and HTML QA tool. It does not confirm indexing, ranking, or migration success in search engines.