App Pairing

App Pairing is only available for enrollments which use both Foundry and Gotham. App Pairing only supports cross-application workflows between Foundry's Workshop and Gotham's Gaia and Graph applications.

Through Workshop's App Pairing widget, users can connect supported Palantir platform applications - such as Gotham's Gaia and Graph - to Workshop modules. This functionality enables cross-application workflows where changes to data or an object in one application update automatically in the paired Workshop module, and vice versa.

App pairing gif between graph and workshop.

For example, a user can make changes to data in the Graph application that will update the corresponding data in their paired Workshop module. To establish this connection, a user adds the App Pairing widget to their Workshop module that pairs to their Graph application. This connection enables a user to select an object in Graph which will highlight in their Workshop module's object list.

Set up the App Pairing widget

Add the App Pairing widget to a Workshop module

To add the App Pairing widget to a Workshop module, navigate to Workshop and select + New Module. Similar to other Workshop widgets, you will have the option to add a widget in a Workshop section or in the module header. This functionality works best when the widget is visible, so you should add it to your Workshop application header.

App pairing widget card

Give your widget a name after you add it to the Workshop application's header. Every widget must have a user-facing name to enable its identification and discovery by other applications. Additional configuration is optional, and you can refer to the advanced configuration section below for more details.

App pairing widget set up

Configure the App Pairing widget

After you add the App Pairing widget to your workshop module, you can select the widget to update its configurations through the right-hand panel so it uses one of two built-in shared state types: Selection or Open data. Shared state types define which interactions App Pairing will share across applications.

  • Selection: Allows sharing a selection of data between Workshop and the connected application. When you select objects in an application, then the same objects and their metadata will be selected in Workshop.
  • Open data: Allows sharing of visible data in a supported application with Workshop. For example, if a user opens a graph with 10 objects and pairs the Graph application with their Workshop module, then all 10 objects on the graph will be populated in the workshop module at the time of pairing.

App Pairing via the Open data state type is only supported in Graph.

App pairing widget configuration page

By default, there will be a pre-configured selected objects variable, since this is the most commonly used variable type. The default value will record the currently selected objects in Graph or Gaia when the widget is paired with a Gaia or Graph tab.

You can select Add Variable to add multiple Selection or Open data variables for your module's required data types.

Once configured, any updates from the paired application will cause these Workshop variables to update. When using the Selection variable, any updates to variables from within a user’s Workshop module will send an update to the paired application.

Pair the widget

To pair the widget, open the application you would like to pair with your Workshop module. Once open, the application displays as Discovered in the App Pairing menu, which you can select from the top right side of your application header.

App pairing widget pairing card

Select Pair next to the application you would like to pair with your Workshop module. The chosen application will display in the Paired section of the pairing card.

App pairing widget gaia is paired in card

If no supported applications are discovered, the App Pairing widget will display the following message:

App pairing widget no apps discovered

If you would like to pair your widget automatically with any discovered application that meets its criteria, then you can toggle on Auto Pair in the Pairing section of the widget's configuration panel. Workshop toggles the option off by default, as automatic pairing is a potentially intrusive behavior.

App pairing widget auto pair

You can also enable automatic pairing when you select the Auto pairing checkbox within the widget's pairing card.

App pairing widget auto pair in the pairing pop-up window

Apply advanced configurations

You can customize the App Pairing experience through the following advanced configurations accessible through the widget configuration panel, offering you control over its otherwise automated features. You can also create custom variables if the existing built-in variables do not suit your use-case.

You can learn more about App Pairing's advanced configurations below:

  • Pause updates: Enables you to pause and resume sending and receiving state updates in your widget when toggled on. When updates resume after a pause, the widget will synchronize to the latest state.

App pairing widget pause updates toggle

  • Custom state variable: If the built-in variable types do not fit the required data for your use case, and you are certain that the paired application is passing the required data, you can create a custom variable. Configure the following to describe the custom data type:
    • Media (MIME) type string.
    • Variable data type.

Workshop supports the following data types as standard variables:

  • Boolean
  • Date
  • Numeric
  • Numeric array
  • String
  • String array

App pairing widget variable configuration

Additionally, custom state variable configuration enables the App Pairing widget to support future application integrations without Palantir-made updates to its existing presets.

Disable data enrichment: You can disable data enrichment if you are certain that the paired application and Workshop pass compatible state payloads between one another. Both Gaia and Graph require enrichment to synchronize Object Synonym RIDs set variable types with Workshop.

App pairing widget disable data enrichment