Skip to main content
Skip table of contents

How to create and use deep links

The inability to directly access specific content or features within an app or website can be frustrating for users who want to quickly access specific information or tasks, and can also be a hindrance to businesses that want to direct users to specific content. Using XR technologies, accessing the right content becomes even more difficult and time-consuming.

Innoactive Portal's launch arguments feature solves this problem by allowing users to create deep-links that directly access specific content or features, in the right mode, within an app or website. This makes it easier for users to access the information they need and helps businesses to direct users to specific content more efficiently.

For a general understanding about how launch arguments work, please refer to this How to use launch arguments.

To use deep linking with the Innoactive Portal, you can use the following process:

  1. First, you will need to make sure that your XR application is set up to accept deep link arguments. This typically involves adding code to your application to parse and handle deep link arguments passed to it when it is launched, you can refer to this example.

  2. Once your application is set up to handle deep link arguments, you can create a deep link URL that points to your application on the Innoactive Portal. The deep link URL should include the following information:

    1. The base URL of the Innoactive Portal, which is typically https://[orgname]

    2. The ID of your application as stated in the Integrations tab of your application in Portal Control Panel, an alpha numerical identifier like 29a09326-7892-4759-a3c2-50fc06ae8ef5

    3. The launch command for the Innoactive Portal, which is typically launch/somehow/somewhere and defines the way you want to launch the app:

      1. Append launch/cloud/standalone to Cloud-launch in VR mode (e.g. stream to Quest using CloudXR).

      2. Append launch/cloud/browser to Cloud-launch in Screen mode (stream to browser using WebRTC)

      3. Append launch/local/windows to Local-launch on Windows PC

      4. Append launch/local/standalone to Local-launch in VR mode (e.g. launch an .apk on Quest)

    4. (optional) Specify the performance tier with vmSize=tier for example vmSize=t4.medium you can find the available tiers in the cloud rendering tab of your application in the control panel.

    5. (optional) Specify the cloud rendering location with region=region-1 for example region=eu-central-1. If you don’t know the name of your region, please reach out to

    6. (optional) Any additional custom arguments args=customarg

  3. Once you have created the deep link URL, you can use it to launch your application from anywhere that supports deep linking, such as a web browser or an email client. When the deep link URL is clicked, the Innoactive Portal will launch your application and pass any specified arguments to it.

  4. Your application can then use the deep link arguments to perform any necessary actions, such as navigating to a specific location within the application, like a meeting room or a training scenario, or displaying a particular piece of content, like an avatar or a 3D model.

For example, a deep link URL for an XR application on the Innoactive Portal might look like this:


This URL would launch the application with ID 29a09326-7892-4759-a3c2-50fc06ae8ef5 on Portal org, specifying that it should be launched in a web browser via cloud streaming, on a T4 medium GPU, in Frankfurt, passing the argument --argname argvalue to the application.

Note: deep links with the old format, like this one:


Will continue to work as usual, but you can’t specify performance tiers and cloud rendering locations with the old format.

Another example that launches the app on the headset and hands over an avatar url would look like this https://[orgname][appID]/launch/cloud/standalone?args=--avatar%20

The url needs to be encoded, you can use external tools to do that.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.