Migrate a project to another Environment/Org
POST https://{controlplane_path}/api/1/rest/public/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:
elastic.snaplogic.com
For the UAT or EMEA control plane, substitute the name for elastic. For
example:
|
project_path |
Required. The path of the source SnapLogic project.
Format:
Important: The path comparison is case-sensitive.
|
Query parameters
None.
Request header
Basic authentication
To use basic authentication, specify Basic for authorization in the request
header, add your credentials (email and password for your SnapLogic user or service account), and
specify application/json for content type. For example:
Authorization: Basic {base64_encoded <email>:<password>}
Content-Type: application/json
Example of basic authentication using Postman:
Learn more about the basic authentication header in REST API requests.
JWT authentication
When using JWT authentication, the API request includes specific headers. In the request header,
specify Bearer Token for authorization, add the token, and specify
application/json for content type. These headers are automatically added when
you configure bearer token authentication in your API client. The authorization header contains
the word Bearer followed by a space and your JWT.
Authorization: Bearer Token {token}
Content-Type: application/json
Example of JWT authentication using Postman:
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:
Important:
If you are migrating or copying accounts or policies to
a different environment (Org):
|
duplicate_check |
Boolean |
If If Default:
|
async |
Boolean | If true, the migration
proceeds asynchronously. A response is immediately returned with
Default:
|
Response
{
"response_map": {},
"http_status_code": 200
}
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.