Blueshift’s Deep Links, universal links on iOS and app links on Android, provide the ability to point customers to the optimal destination inside a mobile app to ensure a smooth end-to-end experience for the customer. You can create seamless channel-to-app experiences using this feature. 

Blueshift Deep Links are http or https URLs that take users to a particular page in the app or launch a particular page in a browser. When you send a Blueshift deep link in an SMS or an email and a customer clicks the link, both iOS and Android can launch your app and open a particular page in the app that is mapped to the link.

For example, a campaign email message from Blueshift contains a link to a product. When a user opens the email on a mobile device and clicks the link, the mobile operating system launches the app installed on the user's device and opens the product page in the app.



To use Deep links in your campaign messages, you must use Blueshift’s mobile SDKs. 

When an email message is rendered, the Blueshift platform rewrites the URL and the path starts with /track or /z if the URL is shortened. If you set web-only="true", the URL is rewritten and its path starts with /web-only/track or /web-only/z.

For more information, see Blueshift’s iOS and Android SDKs. 

For more information about setting up product URLs and domain mappings, contact 

Opening links in browsers or other apps

If you want the linked page to open in the browser in the mobile device or in a third party app, add the attribute ‘web-only = true’ to your URL. When a user clicks the link, the mobile OS determines whether there is an app registered to open the link. If there is, it launches the app. Otherwise, it opens the link in a browser tab.

For example, if you want to link to a product URL but you don’t want the mobile device to launch the app when a customer clicks on the link, specify the link as:

<a href="{{url}}" web-only="true">Product URL (Liquid variable)</a>

Deep links for specific actions

Dismiss Action

You can use the blueshift://dismiss URL to define a custom dismiss action for an in-app message. A user click action to dismiss the message is tracked separately from other click actions.

Trigger in-app push permission request workflow

To get explicit consent from users to receive push notifications from your app before you send push notifications to them, you can launch the Blueshift SDK’s push permission request workflow by using the blueshift://req-push-permission deep link in your in-app message.

Note: To use this deep link, your app must use Blueshift's iOS SDK version 2.2.6 and above or Blueshift's Android SDK version 3.3.0 and above.

In your in-app template, set the context for sending the push notifications.

  • For the “Allow” button, use the URL blueshift://req-push-permission to launch the Blueshift SDK’s push permission request workflow.
  • For the “Deny” button, use the URL blueshift://dismiss. This will help you to track the number of users who opted out of receiving push notifications.

When a user clicks on an in-app notification button to "Allow" push notifications, a push permission dialog is displayed and the user can grant the permission. If the user had already granted push permission, the dialog is not displayed.

If the user clicks on an in-app notification button to "Deny" push notifications permission or if push notifications are disabled, then a dialog is displayed with a message asking the user to go to the app settings to enable push notifications. 



Example use case to open product link in app

Let's use a basic example of an email template. Blueshift uses the liquid template language and html to create an email template. After you create your HTML email template, you can use liquid variables in the template to link an HTML element with the product. In this example, we have used a liquid variable in multiple places.

For example:

<!DOCTYPE html>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<meta name="viewport" content="width=device-width">


  #main {

    background: #fff; min-height: 400px; padding: 10px;





<div id="main">

    <br/><a href="{{products[0].url}}">Product URL (Recommendation)</a>

    {% assign url = products[1].url %}

    <br/><a href="{{url}}">Product URL (Liquid variable)</a>

    <br/><a href="">Product URL (Direct URL - Matilda)</a>

    <br/><a href="{{products[2].url}}" bsft-no-track>Product URL (bsft-no-track)</a>


    <br/><a href="">Blueshift Reads URL without Product path</a>


    <br/><a href=""> (http without www)</a>

    <br/><a href=""></a>

    {% assign products_in_grid = products %}

    <br/><br/><h2>Regular Product Grid </h2>

    <shared_asset> bsft_generic_product_grid </shared_asset>






Was this article helpful?
0 out of 0 found this helpful



Please sign in to leave a comment.