[POST] .../v1/project/add
Creates a new project. Use this method to create a project that groups project tasks and defines who can access them. The method writes a new project, stores its responsible user and optional ACL lists, invalidates project caches and returns InsertResult with the new project ID. The request body is required, name and responsible_user_id are mandatory, the caller needs project add permission and validation, denied permission, unknown users, database failures or persistent errors are returned as HTTP 200 ErrorResult business errors.
Request Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| access_all | Boolean | Optional | true - grant access to all users. |
| access_group_ids | Array of Int64 | Optional | List of groups with access. |
| access_user_ids | Array of Int64 | Optional | List of users with access. |
| description | String | Optional | Project description. |
| logo_file_id | Int64 | Optional | Logo file ID. |
| name | String | Required | Project name. |
| responsible_user_id | Int64 | Required | Responsible user ID. |
Request Example
{
"name": "New store launch",
"description": "Tasks for opening the next retail store.",
"logo_file_id": 42,
"responsible_user_id": 5,
"access_all": false,
"access_user_ids": [
5,
18
],
"access_group_ids": [
3
]
}
Response Parameters
| Name | Type | Description |
|---|---|---|
| ok | Boolean | Indicates whether the request completed successfully. |
| result | Insert | Created record result. |
Response Example
{
"ok": true,
"result": {
"new_id": 10
}
}