Create a Project to use in vRealize Automation Cloud Assembly

As a vRealize Automation Cloud Assembly administrator, you make a POST request with a project name to create a project. Then you add members and cloud zones to the project so that project members can deploy cloud templates to the associated zones.

Prerequisites

Procedure

  1. Assign the project name variable.
    project_name='<your_project_name>'

    your_project_name is a name that you choose.

  2. Create a project.
    curl -X POST \
      "$url/iaas/api/projects?apiVersion=$api_version"
      -H 'Content-Type: application/json' 
      -H "Authorization: Bearer $access_token" 
      -d '{ 
        "name" : "'$project_name'", 
        "description" : "your-description", 
        "administrators" : [{ "email" : "<admin_email>", ["type" : <"user" | "group">]}], 
        "members" : [{ "email" : "<member_email>", ["type" : <"user" | "group">]}],
        "viewers" : [{ "email" : "<viewer_email>", ["type" : <"user" | "group">]}], 
      }' | jq "."
    • admin_email, member_email, and viewer_email are email addresses of an administrator, member, and viewer user or name of the group in the project.
    • The type parameter is optional. It assigns the administrator, member, or viewer to a user or group type. If unspecified, the value defaults to user.
  3. Get a list of projects and filter for the project with your_project_name.
    curl -X GET -H 'Accept: application/json' -H "Authorization: Bearer $access_token" "$url/iaas/api/projects?apiVersion=$api_version&"'$filter'"=name%20eq%20'$project_name'" | jq "."
  4. Examine the response and record the ID of your newly created project.

Example: Create a Project to use in vRealize Automation Cloud Assembly

Create a project named Example-CA-project with administrators, members, and viewers at mycompany.com. This example assumes that Example-project does not exist.

$ url='https://appliance.domain.com'
$ api_version='2021-07-15'
$ project_name='Example-CA-project'

Create a project for Cloud Assembly.

$ curl -X POST \
  "$url/iaas/api/projects?apiVersion=$api_version" \
  -H 'Content-Type: application/json' \
  -H "Authorization: Bearer $access_token" \
  -d '{ 
    "name" : "'$project_name'", 
    "description" : "This is an example project for Cloud Assembly", 
    "administrators" : [{"email" : "[email protected]", "type" : "user"}], 
    "members" : [{"email" : "[email protected]", "type" : "user"}], 
    "viewers" : [{"email" : "[email protected]", "type" : "user"} ] 
  }' | jq "."

The response shows the administrators, members, and viewers related to the project and the project ID.

{
  "administrators": [
    {
      "email": "[email protected]",
      "type": "user"
    }
  ],
  "members": [
    {
      "email": "[email protected]",
      "type": "user"
    }
  ],
  "viewers": [
    {
      "email": "[email protected]",
      "type": "user"
    }
  ],
  "sharedResources": true,
  "name": "Example-CA-project",
  "description": "This is an example project for Cloud Assembly",
  "id": "5944aacb-91de-4541-bb9e-ef2a5403f81b",
  "orgId": "8327d53f-91ea-420a-8613-ba8f3149db95"
}

What to do next

Add a cloud zone to your project. See Add a Cloud Zone to Your Project. If you want to add an administrator or user, see Add Users to Your Project.