Exporting and importing flows

You can use the export and import functions in App Connect Designer to share flows with other users who want to configure identical or similar integrations.

About this task

To share an event-driven or API flow, export it from the App Connect Design page Icon that represents the Design page as a YAML or BAR file. Users with access to the exported flow can then import it into their own environments. You can also export API flows as OpenAPI documents. For more information, see Exporting your API flow as an OpenAPI document.

Warning: The size of the YAML file that represents an event-driven or API flow in App Connect Designer is limited to 800 KB. You might not be able to import a flow to App Connect where the YAML file is larger than 800 KB. And you might not be able to save a flow in App Connect Designer when the YAML file becomes larger than 800 KB.

Exporting a flow

When you export a flow, all its configuration settings except for the connection credentials for your accounts, are preserved in the exported definition.

Procedure

  1. On the Design page Icon that represents the Design page, locate the flow that you want to export.
  2. Make sure that the flow has no validation errors. (You don't need to fix errors that are related to your account credentials.)
  3. Open the flow's menu, then click Export.
    Export option in the flow menu
  4. Choose the appropriate format for the exported event-driven or API flow.
    The following options are available for both event-driven flows and API flows.
    Design-time flow asset (YAML)
    Export the flow as a YAML file that can then be imported into any App Connect instance. (For more information, see Importing a flow.)
    Runtime flow asset (BAR)
    Export the flow as a broker archive (BAR) file that you can deploy to an integration runtime. (For more information, see Deploying integrations.
    For API flows, you can also choose from the following options.
    OpenAPI V3.0 YAML and Runtime flow BAR assets (ZIP)
    Export the flow in two separate formats within a compressed file. This compressed file contains an OpenAPI document (in YAML format), which conforms to the OpenAPI Specification Version 3.0. The file also contains a BAR file that you can deploy to an integration runtime. This option is displayed only for API flows. For more information, see Exporting your API flow as an OpenAPI document.
    OpenAPI V3.0 (YAML) or OpenAPI V3.0 (JSON)
    Export an API flow as an OpenAPI document (in YAML or JSON format) that conforms to the OpenAPI Specification Version 3.0. For more information, see Exporting your API flow as an OpenAPI document.
    OpenAPI V2.0/Swagger document (YAML) or OpenAPI V2.0/Swagger document (JSON)
    Export an API flow as an OpenAPI document (in YAML or JSON format) that conforms to the OpenAPI Specification Version 2.0. For more information, see Exporting your API flow as an OpenAPI document.
    Export options for an API flow, as described in the preceding text
  5. Click Export.
  6. If prompted, save the file, which is named after your flow by default, as flow name.yaml, flow_name.bar, or flow name.zip.
    Depending on your browser, the file might be downloaded automatically to a configured download location.
    Warning: The prefix "shared-integration-runtime" is used in BAR file names internally. BAR files with "shared-integration-runtime" in their name are hidden from the BAR files view. Therefore, avoid the use of this prefix when you name your BAR files.
  7. If you selected the Design-time flow asset (YAML) option, choose how to make the exported YAML file available to other users.
    For example, you can copy the file to a file system directory, or a content management and file sharing system. You can also upload the file to a server with a public HTTP or HTTPS URL.
    Restriction: The URL must point to a public network that anyone can connect to without login credentials, such as a public GitHub repository or GitHub Pages site.

    If the file is hosted on a public GitHub repository, make sure that you provide the raw URL for sharing. Go to the YAML file location. For example, https://github.com/username/myrepo/main/Document%20API.yaml. Then click Raw to obtain the raw URL. For example, https://raw.githubusercontent.com/username/myrepo/main/Document%20API.yaml.

Importing a flow

You can import event-driven or API flows into your App Connect Designer instance by using a YAML file that contains an exported flow definition. You can get the exported flow definition from any App Connect Designer instance.

About this task

Because connection details are not saved with an exported flow, you need to set up your own accounts for each application in the flow if you don't already have one. You can add these accounts from the Applications and APIs page before you import the flow, or from the flow (or API) editor of the imported flow. For more information, see the How to guides for applications.

After you import the flow, make sure that the configuration settings for the nodes are validated. You can also modify the flow in the flow editor or API editor if necessary. Don't try to modify the YAML file before you import it.

Procedure

To import an exported flow, complete the following steps.

  1. From the Design page Design page icon, click Create > Import flow.
  2. Specify a file or URL location for the YAML file that you want to import.
    • If the file is stored in a file system directory, drag the file from a file browser into the Add a YAML file area. Alternatively, click the Add a YAML file area, then locate the YAML file.

      You see the file name in the File to be imported area.

    • If the file is stored on a server that is accessible from a URL, enter the fully qualified URL for the YAML file in the or specify a file URL field, then click Add file. This URL must be a public URL that doesn't need login credentials. Only the HTTP and HTTPS transports are supported, as shown in the following examples.
      http://www.example.com/path/Pricing%20API.yaml
      https://raw.githubusercontent.com/username/myrepo/main/Pricing%20API.yaml
    Import a flow panel
  3. Click Import.

    The imported event-driven flow opens in the flow editor, or an API flow opens on the Define tab of the API editor. The flow name is inherited from the exported flow definition. If you already have an existing flow with an identical name (such as Customer API), the imported flow is renamed by appending a number (such as Customer API_1).

    The following example shows an imported event-driven flow in the flow editor. The flow was validated automatically. A warning icon Validation warning icon indicates a problem with one of the nodes that needs your attention.
    Imported event-driven flow within the flow editor
    The following example shows the Define tab for an imported API flow.
    Define tab in API editor
  4. Fix any validation errors in the flow.

    For an API flow, validate the settings for each model and its operations. From the Define tab, click Operations, then click Edit flow for each operation.

    For more information, see Validating your flow.

Results

Your flow is displayed as a tile on the Design page. You can use the tile to manage your flow. The options that are available for managing your flows depend on your plan, the type of flow, and its status. For more information, see Managing flows during development.

What to do next

  • You can test the behavior of your flow before you deploy it. Depending on your plan, you can either test with sample or real data. For more information, see Testing flows during development.
  • When you're ready to run your flow in a production environment, deploy it. For more information, see Deploying integrations.