Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

...

...

...

Info

This topic might be out-of-date and is replaced by the following:

In this article

Table of Contents
maxLevel2
absoluteUrltrue
excludeOlder Versions|Additional Resources|Related Links|Related Information

...

Use the Project Migration API to migrate a SnapLogic Project from one Org to another.

Note

When you migrate a Project more than once, the existing assets are overwritten. You might have to associate your Tasks with the correct Pipelines after the migration. Typically, even after multiple migrations, Account account references remain intact in the Pipeline, but we recommend that you verify all references before starting your Pipeline executions.

HTTP Request 

POST api/1/rest/public/project/migrate/<project_pathname>


Parameters

Parameter NameDescriptionDefault ValueExample
dest_path

The path of the target destination. 

Note

In the 4.24 Release (February 2021), this parameter no longer supports specifying Project Spaces. You can only use this API parameter to specify Project folders.


N/A"/myotherorg/clientprojects/sales"
asset_typesA list of the asset types to be included in the Project for migration. N/A["File", "Job", "Account", "Pipeline"]
async_modeIf true, then the request is returned immediately with message to wait for motd notification.true"false"
duplicate_check

If true, then the request raises a conflict error if the Project with the same name exists in the specified destination path.

Note

This parameter is currently not available. 

falsetrue"false"
content-type

Binary header specifying the content type. Since all SnapLogic assets are JSON files, this parameter's value must always be application/json.

Note

Use this parameter only in the HTTP header section of the API call.


application/json"application/json"

Sample

...

Request

Paste code macro
titleSample Request BodyExample
{
   
       "dest_path":"/<org_name>/<project_space>/<project_name>",
          
"asset_types":["File","Job","Account","Pipeline"],

          "async_mode":"true",
        
  "duplicate_check":"false"
}

When the async_mode parameter is set to true, the request returns immediately with status_token and status_url

Sample Response

Paste code macro
titleSample ResponseExample
{
"response_map": {"status_token": "xxxxxxxxxxxxxx", "status_url": "https://<pod_name>/api/1/rest/public/project/migrate/<status_token>"} , 
"http_status_code": 200
}

The status URL is a public API that checks the migration status: Started, Completed, or Failed. If the status is Failed, then the response includes error messages.

...

Paste code macro
{
"_id" : "a8f70684-f422-42ed-83d1-78fa3aa1759a",
"status" : "Completed",
"user_id" : "inttest@snaplogic.com",
"src_path" : "exportorg/projects/acct",
"create_time" : ISODate("2017-03-21T18:37:46.249Z"),
"dest_path" : "/importorg/projects/acct",
"asset_types" : [
"File",
"Job",
"Account",
"Pipeline"
],
"successful" : [
{ "snode_id" : "58d172f773fe032daac6350c", "name" : "rest_account" }
,
{ "snode_id" : "58d172fa73fe032daac63510", "name" : "import_pipe" }
],
"failed" : [ ],
"warnings" : [ ]
}

Project Migration Guidelines

  • The first migration to the destination Org creates a new Project if there is not a no conflict.   The However, the existing Project is overwritten If overwritten if there is a conflict. Exclude accounts and Tasks during subsequent migrations other than the first one, when migrating using SnapLogic Manager
  • Do not migrate accounts and Tasks using the public API. 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. 
  • Update all account references in Pipelines if the account's name is changed after the migration. 
  • Every time you migrate a Project, SnapLogic retains existing associations between Pipelines and Tasks if the associated Tasks are included in the migration.