Heap automates away the annoying parts of analytics so that companies can focus on making smarter business decisions. The company's mission is to power business decisions with truth. It encourages companies to focus on discovering insights and taking action.


The events Branch sends to third party data tools varies based on the events the partner supports as well as whether or not you've implemented the Branch SDK to measure said events.

Heap supports the following events:

  • Commerce Events
  • Custom Events
  • Lifecycle Event
  • Install
  • Open

1. Complete Data Integration Prerequisites





  • Implement the Heap SDK
    • Heap for Android SDK version 1.2.0 or greater
    • Heap for iOS SDK version 6.2.1 or greater
    • Heap for React Native SDK version 0.10 or greater

2. Retrieve Keys/Credentials from Your Partner

Before you can enable the integration in your Branch dashboard, you need to retrieve your credentials from your Heap account.

Branch requires these credentials to not only authenticate, but to ensure your Branch data is being sent to the correct account.

Find your Heap environment ID and enter it into the Branch Dashboard.

  1. Log in to your Heap account and navigate to
    Account > Manage > Projects
  1. Select the appropriate project from the list and copy the environment ID for the Heap environment that you want to receive Branch events in.

3. Enable the Integration

To enable the integration:

  1. In the left-hand navigation, under the Exports section, click Data Feeds.
  2. On the Data Feeds Manager page, click the Data Integrations tab at the top.
  3. Search for and click on your data partner.
  4. Provide the necessary credentials on the data partner's Export page.
  5. Click Enable.

5. Pass ID/Metadata to Branch

Heap requires you to pass through the correct identifiers to the Branch SDKs. In order to do so, retrieve the ID from the Heap SDK and pass this value to Branch using the following method:

  • setRequestMetadataKey() method of the Branch SDKs
[[Branch getInstance] setRequestMetadataKey:@"$heap_user_id" value:[Heap userId]];
Branch.getInstance().setRequestMetadata("$heap_user_id", Heap.getUserId());