Overview
Durable Links are deep links that work across platforms, survive app installs, and track attribution.
Durable Links are AppPanel's deep linking solution, a drop-in replacement for Firebase Dynamic Links. They route users to the right destination based on their platform and whether your app is installed.
How it works
When a user clicks a Durable Link:
- The redirect service identifies whether the user is on iOS, Android, or desktop.
- On iOS, a preview page is shown. If the app is installed, it opens via Universal Links. If not, the user is sent to the App Store.
- Click events are tracked automatically, including
click,app_first_open, andapp_re_open.
Link parameters
Every Durable Link supports:
| Parameter | Description |
|---|---|
| Deep link URL | The destination URL your app will receive |
| iOS parameters | Bundle ID, App Store ID, fallback URL, custom scheme, minimum version |
| Android parameters | Package name, fallback URL, minimum version |
| UTM parameters | source, medium, campaign, term, content |
| Social meta tags | Title, description, image for link previews |
| iTunes Connect | Affiliate token, campaign token, provider token |
| Navigation | Force redirect (skip preview page) |
Allowed URL patterns
By default, a project has no URL restrictions, meaning anyone with API access can create a Durable Link that points to any URL. This is a security risk: a malicious actor could use your short link domain to redirect users to phishing sites or other destinations you don't control.
To prevent this, you can configure allowed URL patterns for your project. When patterns are set, every URL in a Durable Link (the main link, fallback URLs, etc.) must match at least one pattern, or the link will be rejected.
Patterns support wildcards via *. For example:
| Pattern | Matches |
|---|---|
https://yourapp.com/* | Any path on yourapp.com |
https://*.yourapp.com/* | Any subdomain and path |
https://yourapp.com/products/* | Only URLs under /products |
You can configure up to 10 patterns per project from the dashboard.
If no patterns are configured, all URLs are allowed. Set up at least one pattern before going to production.
Creating links
You can create Durable Links in three ways:
- Use the web UI in the dashboard to create and manage links.
- Build links programmatically with the iOS SDK using
DurableLinkComponents. - Use the
/v1/durable-linksREST API endpoint to shorten links server-side.