Deploying projects

Deploy a project that is published by another tenant to your tenant.

Before you begin

  • You need an admin access to deploy a project into the tenant.
  • If you do not have admin access but hold a custom role, ensure that you have the write access specifically for the project you intend to deploy.

About this task

If you deploy a project that includes integrations with custom connectors and the connectors are not configured automatically during deployment, you must manually configure those components. To configure a connector,

  1. Open the integration in the editor.
  2. Select the appropriate account for the connector.
  3. Save the integration to apply the changes.

This step is required to ensure that the workflow works as intended in the new environment.

Starting with version 12.0, configurations must be included in the import and deploy APIs to import project parameters and variables.

Procedure

  1. In a REST client platform, add the authentication details of the tenant where you want to deploy a project.
    
    //In case of Instance API key 
    Headers:
    {
    "x-instance-api-key": "instance_api_key"
    }
     
    // In case of MCSP or ISV token
    Headers:
    {
    "Authorization": "Bearer mcsp_or_isv_token"
    }
    Body:
    {
    	"version":<version_number>*,
    	"new_project_name":<new_project_name>$
    }
    
    // A field with the asterisk (*) character in the body of the request is a required field. 
    // The dollar ($) character appended to the project name in the body of the request indicates that you are deploying a project for the first time and you already have a project with the same name in the target tenant.
  2. Make a POST request at the URL of the project.

    URL syntax: <domain>/apis/v1/rest/projects/:project/deploy

    In this URL request, /:project is the name of the project you want to deploy.
    Note: The new_project_name parameter is not supported in develop anywhere, deploy anywhere environments, as these environments follow a different project configuration model that does not accommodate this naming convention or structure.

    Method: POST

    If the request is successful, you receive the response code for success.

    {
    output: 
    	{
            "status": "<deployment_status>",
            "messaging_issues": 
    		{
    		"issues": [<commaseparated_string_arr>],
    		"description": "<messaging_issue_desc>"
    		}
    	}
    }