Skip to main content

Migratable Endpoint

Note

This help page covers the usage of a Server API endpoint. To get started with the Server API, visit the Server API Overview.API Overview

Use the migratable endpoint to migrate workflows across Server environments. You can use this to manage workflow deployments during development and testing phases.

To begin, you have to enable workflows for migration. Once you mark workflows for migration, follow these steps to publish them from the source environment into the appropriate subscription (studio) of a target environment.

Step 1. Get a List of Workflows Ready to Migrate

Next, get a list of workflows ready to migrate using the following endpoint:

  • Environment: Source

  • Method: GET

  • Endpoint: webapi/admin/v1/workflows/migratable/?subscriptionIds={subscriptionIds}/

Include a comma-separated list of subscriptionIds as a query parameter. Subscription IDs identify a specific studio.

The return is an array of workflows marked as ready to migrate under the specified subscription (studio). If you do not provide subscriptionsIds, the return includes all workflows marked as ready to migrate. The return includes 3 properties: appId, the currently published revisionId, and the subscriptionID the workflow belongs to.

Step 2. Download Workflows from the Source Environment

The following endpoint downloads the workflow as a YXZP file.

  • Environment: Source

  • Method: GET

  • Endpoint: webapi/admin/v1/{appID}/package/

Include an appID as a path parameter. The return will be a download of the entire workflow as a package.

Step 3. Publish Workflows in the Target Environment

The following endpoint publishes the downloaded workflow to the target environment.

  • Environment: Target

  • Method: POST

  • Endpoint: webapi/admin/v1/workflows/

Parameters

Parameter

Description

Type

Required

file

The filename of the new workflow.

String

True

name

The new workflow name.

String

True

owner

The owner of the migrated workflow. The email address must exist in the target environment.

String

True

validate

Flag to validate the workflow upon migrating to the target environment.

Boolean

True

isPublic

Flag to set the workflow to public to show in “My Company’s Server” in the target environment.

Boolean

True

sourceId

This is the Source environment appId of the to-be-migrated workflow. If a workflow with the same sourceId exists, the version of the workflow is incremented. Otherwise, a new workflow will be generated.

(Send an empty string if you do not wish to specify an appID.)

String

True

workerTag

Add a worker tag to the workflow to have a specific worker run the workflow.

(Send an empty string if you do not wish to specify the worker.)

String

True

canDownload

Flag to set the workflow as available for download by other users in the target environment.

Boolean

True

(Optional) Step 4. Reset Migration Setting Workflows in the Source Environment

If you want, you can use the migratable endpoint to toggle the This workflow is ready to be migrated setting on a workflow back to No in the source environment after workflow migration in the target environment.

  • Environment: Source

  • Method: PUT

  • Endpoint: webapi/admin/v1/workflows/migratable/{appID}/