Direct and deferred links
Resolve a direct link received by your app or return a matched post-install destination. Your app handles navigation.
Configure app links and the SDK to resolve direct links and recover post-install destinations under supported conditions.
Free Beta. No payment required.
SDK result example
go.yourbrand.com/summer /products/42{ "product_id": "42" }deferred: falseA successful direct resolution. The SDK resolves the HTTPS share URL on the server; your app navigates using the returned destination.
Configure direct opens, store redirects, and post-install recovery for the conditions your app and domain support.
Set the app path, parameters, platform stores, and web fallback.
Configure App Links or Universal Links so your app can receive the link, with a store path available on the web.
Navigate when the SDK returns a link. Post-install recovery depends on platform evidence and matching conditions.
Manage links and app settings, then check domain connections and usage.
Resolve a direct link received by your app or return a matched post-install destination. Your app handles navigation.
Use a service domain after an operator manually connects its DNS, HTTPS, and routing. Custom-domain connections are not available in the current Beta.
A successful match uses the version recorded at click time. Disabled, deleted, or expired links and inactive domains are not recovered.
Check DNS, HTTPS, and app association files. Last-7-day event analytics is not enabled in the current deployment.
Android and iOS SDK sources, with Flutter and React Native bridges using the same native code. Integrate them using the repository's platform guides.
Add your Android and iOS app details and get an SDK key for each app.
Initialize the SDK with a service domain connected by an operator, then connect your app's App Links or Universal Links event handling.
Use a deployed HTTPS domain and app to test direct opens, store redirects, and post-install results on real devices.
{
"url": "https://go.yourbrand.com/summer",
"target": "/products/42",
"params": {
"product_id": "42"
},
"deferred": true
}A successful match returns this object. Without a match or when the request fails, getInitialLink() returns null. Your app handles navigation.
Create a project and see link and SDK usage. Service domains become available after an operator connects them.
No payment details required.
Start Free BetaAll projects share workspace limits. Monthly counts use UTC. SDK request limits are informational; exceeding them does not block resolution.
Pro · Business plannedExpansion plans for greater scale and operational features are planned. Pricing is not set, and billing or automatic charging is not connected.
No. iOS uses best-effort matching from limited signals and returns no link when evidence is missing or ambiguous. If exact continuity across installation is required, provide a separate explicit-token or same-account flow. When the current SDK returns null, choose a default screen or guidance in your app.
When the OS delivers an App Link or Universal Link, the SDK resolves its share URL on the server. Browser requests redirect to a configured store or web destination based on the OS; the server does not detect app installation. A valid signed Google Play referrer recovers its click. Android without a token and iOS use best-effort matching. Transient Android referrer-read failures require retrying rather than falling back to matching.
An operator manually connects DNS, HTTPS, and routing for each service domain. Custom-domain connections are not available in the current Beta. Configure Android App Links for the actual release signing identity, or iOS Associated Domains and Universal Links. Diagnostics check DNS and app association files; separately verify post-install behavior with the deployed app on a real device.
Billing is not connected, and we do not collect payment details. Free Beta is the starting offering; Pro and Business are planned expansion tiers. Pricing and commercial transition terms are not yet set.
No. Each valid SDK resolution attempt returning HTTP 200 is counted, including no_match results. Retries from the same installation each count once. This is neither a unique-install metric nor a billing basis. Monthly usage is recorded in UTC.