Validate Apple App Site Association (AASA): check reachability, Content-Type, JSON structure and applinks rules; includes a Universal Links matcher and a troubleshooting guide.
Free online AASA / iOS Universal Links validator: check HTTPS reachability and Content-Type for .well-known/apple-app-site-association (or root path), parse and validate AASA JSON structure (applinks.apps, details.appID, paths/components), and test whether a Universal Link URL matches your AASA rules. Includes a practical setup and troubleshooting guide for common Universal Links failures.
AASA / iOS Universal Links Validator
Note: Browsers are restricted by CORS, so this tool fetches AASA via a public proxy. Do not input sensitive internal addresses; AASA should be publicly accessible.
Results
AASA source for validation/matching
Paste AASA JSON
Universal Links Matcher
No valid AASA selected
Note: this is rule-level matching only; real iOS behavior is affected by caching, install state, OS version, and entry points.
Tutorial (quick troubleshooting)
1) Deploy AASA (server)
Place the file at https://<domain>/.well-known/apple-app-site-association (recommended) or https://<domain>/apple-app-site-association.
No extension (no .json), HTTPS accessible, and return 200.
Content-Type: application/json is recommended (signed AASA may be application/pkcs7-mime).
Typical structure: applinks.apps is []; applinks.details contains appID and paths/components.
2) Configure iOS (client)
In Xcode > Associated Domains, add applinks:your-domain.com (include subdomains as needed).
Make sure appID is correct: <TeamID>.<BundleID> and matches your signing.
Install the app and test by tapping links from Safari/Notes/Messages.
3) Common failure causes
Wrong path/filename (missing .well-known or mistakenly using .json).
Redirect/auth/WAF returns HTML.
Invalid AASA JSON: missing applinks.details[].appID or missing paths/components.
iOS caching: updates may take time to take effect.
Apple CDN may cache: app-site-association.cdn-apple.com may not be real-time.