Flinku Docs

Custom domains

Serve short links from your own hostname (e.g. links.yourapp.com) instead of yourapp.flku.dev. Available on Indie and Studio plans.

How it works

Custom domains are a presentation layer only. Your SDK config, API calls, and deferred deep linking all continue to use your flku.dev subdomain. Only the short URL that users see and share changes.

ThingBeforeAfter
Short URLyourapp.flku.dev/abclinks.yourapp.com/abc
SDK baseUrlyourapp.flku.devunchanged ✓
API callsflku.dev/api/*unchanged ✓
Deepview pageyourapp.flku.devlinks.yourapp.com
Deferred deep linkingworksunchanged ✓

Step 1: Add DNS record

We recommend using a subdomain (e.g. links.yourapp.com) rather than your apex domain to avoid interfering with your main website.

Subdomain (recommended)

TypeNameValue
CNAMElinksyourapp.flku.dev

Apex domains (e.g. yourapp.com) are not supported. Use a subdomain.

Provider-specific notes

⚠️ CloudflareSet the proxy status to DNS only (grey cloud, not orange). The Cloudflare proxy intercepts SSL provisioning and will block Flinku from issuing a certificate for your domain.
GoDaddy / Namecheap / SquarespaceStandard CNAME for subdomains works with no special configuration needed.

Step 2: Add and verify in dashboard

Go to your project → SettingsCustom Domain. Enter your domain and click Save, then click Verify Domain.

Flinku checks your DNS, provisions an SSL certificate via Let's Encrypt, and configures the server automatically. This takes 30 to 60 seconds. You'll receive a confirmation email when done.

Once verified, all new links created via the dashboard or API will return your custom domain in the shortUrl field.

Step 3: Update your app

For the custom domain to open your app directly (without a browser flash), register it in your app's platform config. This requires a rebuild and app store update.

ℹ️ Do NOT change Flinku.configure() baseUrlKeep baseUrl as your yourapp.flku.dev subdomain. It controls API calls and deferred deep linking. Only Associated Domains and intent filters change.

iOS: Runner.entitlements

Add your custom domain alongside your existing flku.dev entry:

<key>com.apple.developer.associated-domains</key>
<array>
  <string>applinks:yourapp.flku.dev</string>
  <string>applinks:links.yourapp.com</string>
</array>

Android: AndroidManifest.xml

Add your custom domain to the existing Flinku intent filter:

<intent-filter android:autoVerify="true">
  <action android:name="android.intent.action.VIEW" />
  <category android:name="android.intent.category.DEFAULT" />
  <category android:name="android.intent.category.BROWSABLE" />
  <data android:scheme="https" android:host="yourapp.flku.dev" />
  <data android:scheme="https" android:host="links.yourapp.com" />
</intent-filter>

Removing a custom domain

Go to project Settings → Custom Domain → click Remove Domain. Short links immediately revert to your flku.dev subdomain. SSL certificates and server config are cleaned up automatically.