Send data to multiple subscriptions

Last updated:

If you deploy Pendo using the Pendo Launcher browser extension, you can configure additional API keys to send event data from multiple applications to multiple Pendo subscriptions.

How it works

Sending application data to multiple subscriptions involves additional configuration alongside the original API key for the extension, following the same method used to configure the Pendo Launcher browser extension. The subscriptions can be in any of Pendo’s data environments and might require specifying which environment each subscription is in.

The extension downloads the application list from all subscriptions that you specify and tracks all of the configured applications.

To avoid data duplication and inconsistency, you can't have more than one application across subscriptions that target the same URL. If two applications overlap in target URLs, only one application is used to send data.

To send data to multiple subscriptions, you need:

  • The API key for your subscription. Subscription admins can find the API key for a subscription in Settings > Subscription settings > Extension.
  • The data environment for your subscription. You can check which data environment your subscription is hosted in by looking at the URL you use to access Pendo:
    • The URL for the default US data environment is app.pendo.io, and is commonly referred to as the "io" environment.
    • The URL for the US1 data environment is us1.app.pendo.io.
    • The URL for the EU data environment is app.eu.pendo.io.
    • The URL for the Japan data environment is app.jpn.pendo.io.
    • The URL for the Australian data environment is app.au.pendo.io.

Update the extension configuration

To send data to multiple subscriptions, edit the configuration previously used for the Pendo Launcher browser extension to include additionalAPIKeys. If the additional subscriptions are in different data environments from the original (primary) subscription, you must specify the environment alongside the key. For example:

APIKey: 'API_KEY_FOR_SUB1',
dataEnvironment: 'eu'
additionalAPIKeys: [
  '{"key": "API_KEY_FOR_SUB2", "env": "io"}',
  'API_KEY_FOR_SUB3'
]

In the above example, the primary subscription's API key is API_KEY_FOR_SUB1 and resides in the EU data environment. The second subscription's API key is API_KEY_FOR_SUB2, which is in the default ("io") US data environment. The third subscription's API key is API_KEY_FOR_SUB3, which is in the EU data environment.

Code examples

The following examples show how to configure the additionalAPIKeys parameter in different environments using the Pendo Launcher browser extension.

Microsoft Intune

Add the following content to the PowerShell script described within the Pendo configuration documentation for Intune.

    # Create variable to hold additionalAPIKeys information
    $additionalAPIKeys_array
    =
    "[
     '{"key": "API_KEY_FOR_SUB2", "env": "io"}',
     'API_KEY_FOR_SUB3'
    ]"
 
    # Set the additionalAPIKeys property alongside the APIKey and visitor properties
    Set-ItemProperty -Path $registry_path_chrome -Name "additionalAPIKeys" -Value $additionalAPIKeys_array -Type ExpandString
  

The value for additionalAPIKeys must be an expanded string (REG_EXPAND_SZ) that contains a JSON-formatted array of strings.

Google Admin Console

{"APIKey":{"Value":"API_KEY_FOR_SUB1"},"dataEnvironment":{"Value":"eu"},"additionalAPIKeys":{"Value":["{\"key\": \"API_KEY_FOR_SUB2\",\"env\":\"io\"}","API_KEY_FOR_SUB3"]}}

macOS Configuration Profile

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>APIKey</key>
    <string>API_KEY_FOR_SUB1</string>
    <key>dataEnvironment</key>
    <string>eu</string>
    <key>additionalAPIKeys</key>
    <array
      <string>
{&quot;key&quot;: &quot;API_KEY_FOR_SUB2&quot;,&quot;env&quot;:&quot;io&quot;}</string>
      <string>API_KEY_FOR_SUB3</string
    </array>
  </dict>
</plist>

Validation

First, test the script on a single device that you can physically access to verify the correct configuration. Validation involves confirming the registry keys are set correctly and that the extension is configured as expected.

Confirm the presence of the registry key

  1. On your Windows device, open the registry editor and enter "regedit" into the search box of the task bar, then select Registry Editor (Desktop app) from the results.
  2. Navigate to the registry key location: HKEY_LOCAL_MACHINE > SOFTWARE > Google > Chrome > 3rdparty > extensions > epnhoepnmfjdbjjfanpjklemanhkjgil.

The registry keys should look similar to the following image:

WindowsRegistry_APIKeys_KeyValidation.png

Confirm the extension is configured in the browser

After confirming that the registry keys are set, validate that the content is formatted correctly by checking that the browser extension is working. Intune can take up to 24 hours to run your configuration script on the end device.

  1. Open Chrome on a device that has the configuration profile present. If the app is already running, quit and reopen it.
  2. In your browser, copy and paste the following into your URL bar: https://www.pendo.io/.
  3. Find the Pendo Launcher extension in the top-right corner of your browser toolbar. If it isn't visible, you might need to select the puzzle icon to view more extensions.
  4. Right-click on the extension icon, then select Show Configuration Info.

    PendoLauncher_ShowConfigurationInfo.png
     
  5. Select Show Configuration Tab > IT-Managed Config.
  6. Check for the presence of the additionalAPIKeys property and its content.

    Launcher_APIKeyValidation.png
Was this article helpful?
0 out of 0 found this helpful