Export and import a flow

The Extension Kit portal lets you export and import flows to allow:

Export a flow

Exporting a flow generates a JSON file that includes the definition of the flow along with the flow parameters. The process also retrieves each parameter definition to define whether they are sensitive or not.

Note: Sensitive data is not included in the resulting JSON file.

Export flow button

An example of an exported flow's JSON file is shown below:

{
  "FlowDefinitions": [
    {
      "FlowId": "id",
      "FlowType": "Customer",
      "ProductId": "",
      "DeveloperId": "",
      "DeveloperName": "",
      "Version": 4,
      "Description": "export parameters",
      "UserId": "u4pp-sandbox-directory\\user",
      "Trigger": {
        "Type": "http-webhook",
        "Version": 2,
        "Config": {
          "Name": "123",
          "TenantId": null,
          "AuthenticationType": "None"
        }
      },
      "Actions": [
        {
          "Type": "stop",
          "Version": 1,
          "Filter": [],
          "Condition": [],
          "Input": {
            "Name": "name",
            "Properties": [
              {
                "Name": "StopWith",
                "Value": {
                  "Text": "Success"
                }
              },
              {
                "Name": "Summary",
                "Value": {
                  "Text": "{{parameters.test}}"
                }
              }
            ]
          }
        }
      ],
      "IsParked": false,
      "Status": "Active",
      "Configuration": {
        "IsSensitive": false
      }
    }
  ],
  "Parameters": [
    {
      "Name": "test",
      "Sensitive": false
    }
  ]
}

Export a flow as an app

You can export a flow as an app to be reused later by system administrators for installation as a market-flow.

A JSON file is generated similar to the file created when exporting a flow, except that its FlowType is set to Marketplace instead of Customer and it has the extra fields Product Id, Developer Id and Developer name.

To export a flow as an app, first edit the flow to be exported, then click the "Export as an App" button under the More menu:

Export As An App Button

A new dialog window appears:

Export As An App Dialog Empty

This window has the following mandatory fields:

Export As An App Dialog Full

Select the Export button to export the flow as an app. The resulting "exported as an app" JSON file will look similar to the example below:

{
  "FlowDefinitions": [
    {
      "FlowId": "6e847f5c-398c-4086-a478-632b0af954bf",
      "FlowType": "Marketplace",
      "ProductId": "u4mesh-product-id1_v1-1",
      "DeveloperId": "dev-id_123345_azerty",
      "DeveloperName": "Unit4 Industry Mesh (R & D)",
      "Version": 16,
      "Description": "[TEST CASE] JSON to XML",
      "UserId": "u4pp-sandbox-directory\\user",
      "Trigger": {
...

Note that the difference between Export and Export as an App is these four fields in the header: FlowType, ProductId, DeveloperId and DeveloperName.

Import a flow

You can import a flow as a JSON file. When the flow is imported, the corresponding parameters are also created in the current tenant, with the sensitive setting as detailed in the file. If any parameter already exists in the current tenant, it is not overwritten.

To import a flow, select the "Import" button in the footer toolbar:

Import flow, how to

A new dialog window appears:

Import flow, dialog overview

In the flow definition field, select the JSON file containing the flow definition and the parameters that are needed for that flow to work.

Import flow, flow definition

Note that if you are using an exported file, you should edit it to populate the sensitive fields that have been cleared in the exporting process.

Once the import finishes successfully, you are redirected to the flow overview window.

When you enable the imported flow you are prompted to set values for any parameters used in the imported flow, as well as certificates and SFTP connections. If you disable a flow and reenable it, the data set in the previous activation is saved and can be changed in a later activation if required.

If the imported parameters already exist in the tenant, their values are shown and you can change them as required. If the parameters do not exist in current tenant, they are created and their values must be assigned.

Define values for imported flow

The step names in the imported flow that use certificates are shown in the Step Description column and you must assign a corresponding certificate value. If no corresponding certificate is available in the host client, then you must add it in the Certificates menu.

Define certificates for imported flow

Similarly, the step names that use an SFTP connection are listed in the Step Description column and a corresponding SFTP connection must be assigned. If no corresponding SFTP connection is available in the host client, then it must be defined in the SFTP Connections menu.

Define SFTP connection for imported flow