Export and import a flow
The Extension Kit portal lets you export and import flows to allow:
- Reuse of flows. Exporting integration flows allows reuse of pre-built flows across different clients or environments. Once a flow is designed and tested, it can be exported and reused in similar scenarios, saving time and effort in recreating similar flows from scratch.
- Collaboration. Easy export and import of flows enables sharing of flows.
- Version control and backup. Exported flows can be versioned and stored as backups, and reimported if required to roll back to a previous version.
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.
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:
A new dialog window appears:
This window has the following mandatory fields:
- Product Id: A unique identifier of the market-flow. This is a 36 character long field that can only contain lower-case letters, numbers, dashes and underscores.
- Developer Id: A unique identifier of the developer of that market-flow. This is a 36 character long field that can only contain lower-case letters, numbers, dashes and underscores.
- Developer name: The commercial name of the developer. This is a 255 character long field that can accept any character.
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
andDeveloperName
.
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:
A new dialog window appears:
In the flow definition field, select the JSON file containing the flow definition and the parameters that are needed for that flow to work.
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.
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.
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.