Platform setup iOS

Set up iOS Universal Links

Associate your HTTPS domain with your iOS app so supported links can open in the app. You’ll configure the domain, enable the app capability, and publish Apple’s association file.

About 10 minutes Apple Developer access
Choose a hosting method

Where should the association file live?

01

Serve it through Lativiq

Available on the Growth plan and above. Point the link domain to Lativiq, or to a reverse proxy that forwards requests to Lativiq while preserving the original Host header. Lativiq then serves the domain’s configured file.

02

Host the file yourself

Download the generated AASA file from Lativiq and publish it on your domain at /.well-known/apple-app-site-association. Keep it updated when your app configuration changes.

What you’ll need

  • A public domain for your links, such as go.yourcompany.com, with working HTTPS.
  • Your Apple Team ID and the app’s exact Bundle ID.
  • Access to the iOS project’s Signing & Capabilities settings.

Lativiq configuration

Add your domain and app IDs

Open Universal Links & App Links and create or edit the configuration for your link domain.

Domain
go.yourcompany.com
Team ID
ABCD123456
Bundle ID
com.yourcompany.app

Use the domain only—don’t include https:// or a path. The Apple App ID combines the Team ID and Bundle ID as ABCD123456.com.yourcompany.app.

App capability

Enable Associated Domains in Xcode

In your app target, open Signing & Capabilities, add the Associated Domains capability, then add this entry using your actual domain:

applinks:go.yourcompany.com

Include every link domain the app should handle. The app must be signed with a provisioning profile that includes the Associated Domains entitlement. See Apple’s Associated Domains documentation.

Domain association

Publish the AASA file

Apple looks for the extensionless apple-app-site-association file at this exact URL:

https://go.yourcompany.com/.well-known/apple-app-site-association

For manual hosting, the file must contain your exact App ID and the URL patterns your app should open. A simplified example is:

{
  "applinks": {
    "details": [{
      "appIDs": ["ABCD123456.com.yourcompany.app"],
      "components": [{ "/": "/*" }]
    }]
  }
}

Serve valid JSON directly over HTTPS, without a redirect. With dynamic hosting, the domain must resolve to Lativiq or a proxy that forwards the original host; otherwise, host the generated file on your web server.

Verify and test

Confirm the domain association

Check that the public URL returns the expected JSON, then use Verify Domain in the Lativiq configuration:

curl -i https://go.yourcompany.com/.well-known/apple-app-site-association

Install a build with the Associated Domains entitlement on a real device and tap a matching HTTPS link from another app or message. Typing the URL directly into Safari is not a reliable test of app handoff.