For the complete documentation index, see llms.txt. This page is also available as Markdown.

πŸ“±Open External App

Launch other installed apps directly from your app using URL schemes.

What is Open External App?

Open External App lets your app launch other installed applications on the user's device using URL schemes. This is useful for directing users to specific content in another app - opening a location in Google Maps, starting a WhatsApp chat, triggering the phone dialer with a pre-filled number, or any other app that supports deep linking via a URL scheme.

If the target app is not installed on the user's device, the command will be silently ignored by the OS - nothing will happen.

Prerequisites

Common App Schemes

A URL scheme is a string that identifies an app on the device - similar to how https:// identifies a web URL.

The table below lists URL schemes for popular apps, along with the correct value to enter in your Natively Dashboard and the scheme to use when calling openExternalApp.

On Android, you can open any app using its Bundle ID followed by :// - for example com.whatsapp:// - even if you don't know the app's custom URL scheme.

This does not work on iOS, which requires the app's registered custom URL scheme.

App
External App Scheme
Usage Example

Phone Dialer

tel

tel:[PHONE_NUMBER]

Email

mailto

mailto:[EMAIL_ADDRESS]

WhatsApp

whatsapp

whatsapp://send?phone=[PHONE_NUMBER]

Telegram

tg

tg://

tg://msg?text=[MESSAGE]

tg://resolve?domain=[TELEGRAM_USERNAME]

Facebook

fb

fb:// fb://profile?id=[FACEBOOK_ID] fb://page?id=[PAGE_ID]

Twitter / X

twitter

twitter://user?screen_name=[USERNAME]

twitter://post?message=[MESSAGE]

Waze

waze

waze://

waze://?q=[LOCATION]

App Store (iOS only)

itms-apps

itms-apps://itunes.apple.com/app/id[APP_STORE_APP_ID]

Play Store (Android only)

market

market://details?id=[PLAY_STORE_APP_BUNDLE_ID]

Natively Dashboard Setup

Before using openExternalApp, you must whitelist the URL scheme of the target app in your Natively Dashboard.

  1. Open your Natively app dashboard and navigate to Settings > External App Schemes.

  2. Enter the URL scheme of the app you want to open.

  3. Click Add.

  4. Repeat for each app you want to support.

  5. Click Save.

  6. Rebuild your app(s).

Implementation

Choose your integration method below: Bubble.io Plugin (No-Code), JavaScript SDK (Code), or AI Agents (for AI-powered editors like Lovable, Base44, and Replit).

Initialization

Check Plugin

Before starting, verify if the Natively plugin is already installed in your Bubble project.

  1. Open your Bubble editor and navigate to the Plugins tab in the left sidebar.

  2. Check Installed Plugins: Look through your list of installed plugins for "Natively iOS & Android app builder".

    • If it IS installed: Check the version number. If an update is available (e.g., you see a button saying "Update"), click it to ensure you have the latest features and bug fixes.

  • If it is NOT installed: Click the + Add plugins button, search for "Natively", and click Install.

Setup Logic

[Action] Natively - Open external app

  • App URL β€” the app's URL scheme including :// (e.g. whatsapp://send?phone=+1234567890).

How to use

Open a specific chat or contact

The most common use case - opening WhatsApp, Telegram, or Facebook with a pre-filled phone number or username so the user can start a conversation in one tap, without having to find the contact themselves.

Open the phone dialer

Use tel:[PHONE_NUMBER] to pre-fill the dialer with a support number or contact. The user still has to tap call button - nothing is dialed automatically.

Handle the app not being installed

If the target app is not installed, nothing happens - the OS silently ignores the call. Consider showing a message to the user first, or falling back to a web URL using Open External URL.

Troubleshooting

Nothing happens when calling openExternalApp

Make sure the URL scheme is added to Settings > External App Schemes in your Natively Dashboard and that you've rebuilt your app after adding it. Without both steps, openExternalApp will not work.

The wrong app opens

Multiple apps can register the same URL scheme. If an unexpected app opens, the device has a different app set as the default handler for that scheme. This is an OS-level behavior and cannot be controlled from Natively.

The scheme works on iOS but not on Android (or vice versa)

Some apps use different schemes on iOS and Android. Check the app's official documentation for the correct scheme per platform. On Android, you can also try using the app's Bundle ID followed by :// as an alternative.

App opens but navigates to the wrong place

The scheme parameters may be incorrect, or the app may have updated its URL scheme format. Check the app's latest documentation for the correct parameters.

Last updated