API Reference
Projects
Projects group work for a customer with a status, schedule, and associated tasks. Partner responses use UUIDs; numeric `customerId` and `statusId` fields are stripped.
Last updated 2026-06-21
Overview
The Projects API lets your integration list project statuses, create and manage projects, and list the tasks attached to a project. Projects optionally link to a customer and always carry a workspace-defined status.
Use `GET /partners/projects/statuses` to discover status UUIDs before creating or filtering projects. Soft-deleted projects return 404 and are excluded from list results. Updates use PATCH (not PUT).
Key concepts
Status discovery
Call List project statuses first. Pass the returned UUID as `statusUuid` on create/update, or filter list with `statusUuids` (comma-separated).
Customer linking
Pass `customerUuid` from the Customers API on create. On update, pass a UUID to set the customer, `null` or empty string to clear, or omit to leave unchanged.
Soft delete
DELETE soft-deletes the project. Deleted projects are excluded from list and return 404 on retrieve.
Project tasks
Tasks linked to a project are listed via `GET /partners/projects/{uuid}/tasks` with the same sanitized task shape as the Tasks API.
The project object
Fields returned on a project. Customer and projectStatus associations expose UUIDs.
Attributes
iduuidProject identifier (UUID).
namestringProject name. Required on create.
descriptionstringFree-text description.
customIdstringOptional external reference id.
startDatedateProject start date (ISO).
endDatedateProject end date (ISO).
customerobjectLinked customer, or null when the project is not customer-specific.
uuiduuidCustomer UUID.
customerstringCustomer display name.
projectStatusobjectCurrent project status.
uuiduuidStatus UUID.
namestringStatus label.
colorstringDisplay color.
createdAtdatetimeISO 8601 creation timestamp.
updatedAtdatetimeISO 8601 last update timestamp.
{
"id": "11223344-5566-7788-99aa-bbccddeeff00",
"name": "Website Redesign",
"description": "Redesign the marketing website for Acme Corporation.",
"customId": "PRJ-2026-001",
"startDate": "2026-02-01",
"endDate": "2026-06-30",
"customer": {
"uuid": "dfa3219e-6af8-4c53-997a-037534f63a35",
"customer": "Acme Corporation"
},
"projectStatus": {
"uuid": "aabbccdd-eeff-4012-8000-001122334455",
"name": "In Progress",
"color": "#E48642"
},
"createdAt": "2026-01-15T10:30:00.000Z",
"updatedAt": "2026-01-28T14:22:30.000Z"
}Use UUID filter params
List filters accept `customerUuids` and `statusUuids` (comma-separated). Legacy numeric `customers` and `statusIds` query params are stripped server-side.Related
Recent changes
Complete Partner API reference
Documented all remaining API reference groups: Chart of Accounts, Vendors, Products & Services, Recurring Invoice Templates, Credit Memos, Bills, Journal Entries, Tags, People, Projects, Tasks, Time Entries, Expense Receipts, Reports, and Workspace Stats. Added missing invoice endpoints (audit log, attachments, credit application, remove transaction) and group overviews for Invoices and Transactions.
Endpoints
/partners/projects/statusesReturns the project statuses available in the workspace.
/partners/projectsReturns a paginated list of projects.
/partners/projectsCreates a new project in the workspace.
/partners/projects/{uuid}/tasksReturns tasks attached to a project.
/partners/projects/{uuid}Retrieves a single project by UUID.
/partners/projects/{uuid}Updates an existing project. Only the fields you send are changed.
/partners/projects/{uuid}Soft-deletes a project.
