Project
This section shows how to create, modify and list projects in AI & Analytics Engine using
- Using the GUI
- Using API access through SDK
Using the GUI
Creating a project
Creating a project can be done in one of two methods.
- From the dashboard, when it's focused on the organization. You will see a darkened rectangle "NEW PROJECT". Click on it.
- From within an organization. On the lower right part you have the '+' icon. Clicking on it will expand and allow to create a new project.
After using one of these methods, the project creation menu will open and is straight forward:
Step 1 | Step 2 |
---|---|
![]() |
![]() |
In the first step you assign a name, organization and an optional description to the project. In the second step you may add more users and their privileges with respect to the project. Users that already exist in your organization will appear in the window, as can be seen.
Retrieving information of a project
The project information can be seen partially via the dashboard (Count of datasets, application, models and deployments). It can be seen fully by clicking the project on the dashboard and entering the project menu. The first tab is the "SUMMARY" as below:
Updating a project
Enter the project menu, select the "SETTINGS" tab under the project name headline. A menu will appear. In the menu update the project details. Once finished, click the "SAVE" button and the project details will be updated.
Deleting a project
Enter the project menu, select the garbage bin icon in the rightmost side of the tabs ribbon. A menu will appear asking you to verify the deletion. After typing in delete
and clicking the "DELETE" button, the project will be deleted and the UI will return to the dashboard.
Listing projects in an organization
The listing is performed via observation in the dashboard. Enter the dashboard and select the relevant organization. Once the organization is selected, you will see the projects attached to it connected by a curved line as in the example below:
Listing projects that belong to a user and users that can access a project
Unlike the API, in the UI there's no easy way to get a concentrated list of projects that belong to a specific user.
In a project menu, select the "USERS" tab in the tabs ribbon. The list of users that this project belongs to will appear, together with their privileges.
Adding a user to a project
In a project menu, select the "USERS" tab in the tabs ribbon. Once there, in the lower right side of the window will be a '+' icon. Hovering above it will expand to show an "ADD USERS" button. Clicking on it will open the familiar "ADD USER" window, where an existing/new user can be added to the project and also determine the user privileges. Example:
Step 1 | Step 2 |
---|---|
![]() |
![]() |
Deleting a user from a project
In a project menu, select the "USERS" tab in the tabs ribbon. Once there the list of users will be displayed:
On the right side of a user who's not an owner, there's a garbage bin icon. Clicking on it will lead to the standard deletion window which will prompt the deletion of the user from the project. Clicking on "DELETE" button will remove the user.
Using API access through SDK
To access the API functions, you must first authenticate into the platform.
from aiaengine import api
client = api.Client()
Importing project
Then you need to import project
to proceed with the next steps.
from aiaengine.api import project
Creating a project
Now you can create a new project within an organization by specifying a project name, some description and the org
id.
create_project_response = client.projects.CreateProject(
project.CreateProjectRequest(
name='Project Name',
description='What is this project about',
org_id='id_of_org_where_this_project_is_included'
)
)
project_id = create_project_response.id
Once created, the project is assigned to a unique id which is frequently used in other functions.
Retrieving information of a project
You can get information about a project by providing the project id.
client.projects.GetProject(
project.GetProjectRequest(
id='id_of_project'
)
)
Updating a project
You can modify the name and description of an existing project by specifying the project id.
client.projects.UpdateProject(
project.UpdateProjectRequest(
id='id_of_updated_project',
name='Updated Project',
description='This project has been updated'
)
)
Deleting a project
You can also remove a project which is no longer needed by giving the project id.
client.projects.DeleteProject(
project.DeleteProjectRequest(
id='id_of_deleted_project'
)
)
Listing projects in an organization
You can list all the projects within an organization by providing the organization id.
client.projects.ListOrgProjects(
project.ListOrgProjectsRequest(
org_id='id_of_org_where_projects_are_included'
)
)
Listing projects that belong to a user
Similarly you can inspect all the projects that can be accessed by the current user.
client.projects.ListUserProjects(
project.ListUserProjectsRequest()
)
Here if user_id
is omitted or set to None
, the above code returns the list of projects associated with the current user.
Listing users that can access a project
You can also list all the users who have access to a particular project by providing the project id.
client.projects.ListProjectUsers(
project.ListProjectUsersRequest(
id='id_of_project_that_listed_users_can_access'
)
)
Adding a user to a project
You can add an existing user of the platform to a project by specifying the project id, the user id and the role of the user (project-viewer, project-owner, project-editor).
client.projects.CreateProjectUser(
project.CreateProjectUserRequest(
id='id_of_project',
user_id='id_of_added_user',
role_id='project-editor'
)
)
Deleting a user from a project
Once a user is no longer interested in a project, you can remove the user with input of the project id and user id.
client.projects.DeleteProjectUser(
project.DeleteProjectUserRequest(
id='id_of_project_that_user_can_access',
user_id='id_of_user_whose_access_to_project_is_deleted'
)
)