Skip to main content
projects

Create /projects

Create a project. Required: name, client, start_date. Optional: status (defaults to tenant default), type, deadline, description, project number, cost, estimated hours, members, opportunity, contact persons, related project, organization, address, phone, schedule, learning fields, and custom fields. billing_type defaults to task hours (3). Returns record with the detail projection.

POST
/projects
Authorizationstringheaderrequired

API key (Bearer token) created in Setup → API & MCP.

Body

application/json
addressstring

Project address.

billing_typeintegerrequired

Billing type: 1=fixed cost, 2=project hourly, 3=task hourly.

clientstringrequired

Client UUID.

contact_personsstring[]

Contact person UUIDs.

custom_fieldsobject[]

Custom field values by slug.

deadlinestring

Project deadline (Y-m-d).

descriptionstring

Project description (HTML allowed).

estimated_hoursstring

Estimated hours.

membersstring[]

Project member staff UUIDs. On update, replaces the full member list when sent.

namestringrequired

Project name.

opportunitystring

Related opportunity UUID.

organizationstring

Organization UUID.

phonestring

Project phone number.

project_coststring

Total project cost.

project_numberstring

Project number.

rel_projectstring

Related parent project UUID.

start_datestringrequired

Project start date (Y-m-d).

statusstring

Project status picklist value UUID. Uses tenant default when omitted on create.

typestring

Project type picklist value UUID.

Response

application/json

Success

recordobject

Fields enabled for this documentation instance (projection enabled: feature, option, subdomain, closures) plus account-level form field visibility. Role- and user-level field overrides are not applied here, so an API key whose staff user has such overrides may receive fewer fields. A disabled field is omitted from the response object entirely; a present key with a null value means the record simply has no value.