Create Time Tracking Project
Changed onCreates a time tracking project. If a deleted project with the same name exists, that project is restored and updated with the supplied values instead of a new project being created; the response returns the restored project's existing ID. hasTasks in the response is set automatically based on whether tasks were supplied and cannot be set directly on create. Created tasks are not embedded; retrieve them with List Time Tracking Project Tasks (list-project-tasks).
OAuth Scopes: time_tracking:project.write
Request
- Base URLhttps://companySubDomain.bamboohr.com
- AuthOAuth 2Authorization code/authorize.phpToken URL/token.phpScopestime_tracking:project.write
- TypeScriptA function with typed inputs. Its response is checked against the schema.
Request body
Example request
{
"name": "Project A",
"billable": true,
"includeInPayroll": true,
"employeeIds": [
1,
2,
3
],
"tasks": [
{
"name": "Task A",
"billable": true
}
]
}Response
The created or restored project resource. Created tasks are not embedded.
Example response
{
"id": 1,
"name": "Project A",
"allEmployeesAssigned": true,
"hasTasks": true,
"createdAt": "2025-10-15T16:00:00Z",
"updatedAt": "2025-10-15T16:00:00Z",
"deletedAt": "2025-10-15T16:00:00Z",
"employeeIds": [
1,
2,
3
]
}Changes
- breaking
removed the media type
application/jsonfor the response with the status - warning
removed the optional property
from the response with the status - warning
removed the optional property
from the response with the status - warning
removed the optional property
from the response with the status - warning
removed the optional property
from the response with the status - warning
removed the optional property
from the response with the status - warning
removed the optional property
from the response with the status - warning
removed the optional property
from the response with the status - warning
removed the optional property
from the response with the status - warning
removed the optional property
from the response with the status - warning
removed the optional property
from the response with the status - warning
removed the optional property
from the response with the status - warning
removed the optional property
from the response with the status - warning
removed the optional property
from the response with the status - warning
removed the optional property
from the response with the status - warning
removed the optional property
from the response with the status - info
api operation id
create-projectremoved and replaced withcreate-time-tracking-project - info
the endpoint scheme security
basicwas removed from the API - info
added the non-success response with the status
- info
removed the non-success response with the status
- info
the response property
became required for the status - info
the response property
became required for the status - info
the response property
became required for the status - info
the response property
became required for the status - info
the response property
became required for the status - info
the response property
became required for the status - info
added the required property
to the response with the status - info
added the required property
to the response with the status - info
added the required property
to the response with the status
- breaking