Migrate a project to another Environment/Org

POST /project/migrate/{project_path}

Overview

This API migrates a SnapLogic Project from one Environment/Org to another.

If the destination project does not exist, it will be created.

Prerequisites

  • Read access to the source project
  • Write access to the target Environment/Org

Request

 POST https://{controlplane_path}/api/1/rest/public/project/migrate/{project_path}

Path Parameters

Key Description
controlplane_path Required. The path to the SnapLogic control plane.

Example: control-plane-name.snaplogic.com

Where control-plane-name is the control plane you are using. For example,
  • elastic
  • uat
  • emea
project_path
Required. The path of the source SnapLogic project.

Format: /{env_org}/{project_space}/{project_name}

Important: The path comparison is case-sensitive.

Query Parameters

None.

Request Header

Specify Basic for authorization and application/json for content type.

 Authorization: Basic {your_encoded_security_credentials}
Content-Type: application/json

Request Body

 {
  "dest_path" : "...",
  "asset_types" : [ ... ],
  "duplicate_check" : true,
  "async" : true
}
Key Type Description
dest_path string Required. The path to the destination Project.
asset_types array The list of asset types to migrate.
Valid values:
  • Account
  • File
  • Job (task)
  • Pipeline
  • Policy
Important:
If you are migrating or copying accounts or policies to a different Environment/Org,
  • The source Environment/Org must recognize the destination Environment/Org as a Trusted Environment/Org.
  • The destination Environment/Org must have at least the same security level as the source Environment/Org.
Learn how to add a trusted Environment/Org.
duplicate_check Boolean

If true, throws an exception if a project with the same name already exists at the destination path.

If false, overwrites any existing project with the same name at the destination path.

Default: true

async Boolean If true, the migration is done asynchronously.

A response is immediately returned with status_token and status_url, which you can use to check on the status of the migration (Started, Completed, or Failed).

Default: true

Response

Status code only.

Notes

Project Migration Guidelines

  • The first migration to the destination Environment/Org creates a new Project if there is no conflict. However, the existing Project is overwritten if there is a conflict.
  • When you include previously migrated accounts and Tasks in subsequent migrations, the API overwrites any changes that you may have manually made to the assets after the initial migration.
  • If the account name is changed after the migration, you must update all references to that account in the Pipelines.
  • Every time you migrate a Project, SnapLogic retains existing associations between Pipelines and Tasks if the associated Tasks are included in the migration.