Advanced Deepview Configurations

Configure advanced settings for your Branch Deepviews.

Advanced Configurations

The default Deepview template simply displays the content from three of the link's control parameters. You can specify the content of these parameters when creating your link to control what will display in that link’s Deepview. If nothing is set for a particular link, we will gracefully fall back to the OG values set for your entire app in Configuration > General > Social Media Preview.

Key

Value

$og_title

The title you'd like to appear on the deepview

$og_description

The description you'd like to appear on the deepview

$og_image_url

The URL for the image you'd like to appear on the deepview

$uri_redirect_mode

Allows you to control how and when Branch uses URI schemes to open your app.

0 - This is the default value that yields the standard behavior where we don't try to open the app if the user can see an error.

1 - Smart redirect mode. Same behavior as 0 until we know the user has the app installed through Branch persona data. In that case, force URI schemes to open the app.

2 - Forceful redirect mode. Always try to force open the app, even if it risks showing an error message when the app is not installed.

📘

Hosting your own OG tags

If you want to use OG tags you host elsewhere, leave these parameters empty and specify a $desktop_url control parameter when you create the link. Branch will perform a one-time scrape to populate the Deepview using the OG tags from the URL you specify.

If you're creating a link by appending query parameters, just append the parameters to the URL. Please make sure to URL encode everything, lest the link will break.

"https://[branchsubdomain]?%24og_title=MyApp%20is%20disrupting%20apps&$og_image_url=http%3A%2F%2Fmyapp.com%2Fimage.png"

When you create links via a mobile SDK, you simply need to set the OG tag parameters..

BranchUniversalObject *branchUniversalObject = [[BranchUniversalObject alloc] initWithCanonicalIdentifier:@"item/12345"];
// Facebook OG tags -- this will overwrite any defaults you set up on the Branch Dashboard
branchUniversalObject.title = @"My Content Title";
branchUniversalObject.contentDescription = @"My Content Description";
branchUniversalObject.imageUrl = @"https://example.com/mycontent-12345.png";

// Add any additional custom OG tags here
[branchUniversalObject addMetadataKey:@"$og_video" value:@"http://mysite/video.mpg"];
let branchUniversalObject: BranchUniversalObject = BranchUniversalObject(canonicalIdentifier: "item/12345")
// Facebook OG tags -- this will overwrite any defaults you set up on the Branch Dashboard
branchUniversalObject.title = "My Content Title"
branchUniversalObject.contentDescription = "My Content Description"
branchUniversalObject.imageUrl = "https://example.com/mycontent-12345.png"

// Add any additional custom OG tags here
branchUniversalObject.addMetadataKey("$og_video", value: "http://mysite/video.mpg")
BranchUniversalObject branchUniversalObject = new BranchUniversalObject()
                 .setCanonicalIdentifier("item/12345")
 // Facebook OG tags -- This will overwrite any defaults you have set on the Branch Dashboard
                 .setTitle("My Content Title")
                 .setContentDescription("My Content Description")
                 .setContentImageUrl("https://example.com/mycontent-12345.png")

 // Add any additional custom OG tags here
                 .setContentMetadata(new ContentMetadata().addCustomMetadata("$og_video", "http://mysite/video.mpg"));

Note: The Deep Link section accepts most link control parameters, but $og_title, $og_description and $og_image_url cannot be specified there.

Enable per-link Deepviews

If you don't want to enable Deepviews globally, you can do it for each platform on a per-link basis by inserting custom link control parameters link control parameters.

Enable Desktop Deepviews by appending query parameters:

"https://[branchsubdomain]?%24desktop_deepview=default_template&%24ios_deepview=default_template"

Enable iOS and Android Deepviews through the SDK.

BranchLinkProperties *linkProperties = [[BranchLinkProperties alloc] init];
 linkProperties.feature = @"sharing";
 linkProperties.channel = @"facebook";
 [linkProperties addControlParam:@"$ios_deepview" withValue:@"default_template"];
 [linkProperties addControlParam:@"$android_deepview" withValue:@"default_template"];
let linkProperties: BranchLinkProperties = BranchLinkProperties()
 linkProperties.feature = "sharing"
 linkProperties.channel = "facebook"
 linkProperties.addControlParam("$ios_deepview", withValue: "default_template")
 linkProperties.addControlParam("$android_deepview", withValue: "default_template")
LinkProperties linkProperties = new LinkProperties()
               .setChannel("facebook")
               .setFeature("sharing")
               .addControlParameter("$ios_deepview", "default_template")
               .addControlParameter("$android_deepview", "default_template");

Disable per-link Deepviews

If you've enabled Deepviews globally, it's likely that you'll want to disable them now and again for specific use cases. To do so, just follow the instructions for enabling Deepviews for one link and set one or more of the key values to false.

Key

Value

$ios_deepview

false

$android_deepview

false

$desktop_deepview

false


What’s Next
Did this page help you?