Welcome to the Coperniq API release notes. This section highlights noteworthy changes across endpoints, schemas, and docs.
Recent highlights
- New: Labels —
GET /labels(filter bytype),POST /labels,GET /labels/{labelId}.typeisWORK(work orders) orASSET. v2 mirrors these under/v2with the standard success envelope. - New: Assets —
GET /assets(filter byaccount_id),POST /assets,GET/PATCH /assets/{assetId}(setisArchived: truevia PATCH to archive). v2 mirrors these under/v2with the standard success envelope. - New: Invoice payments —
GET /invoices/{invoiceId}/payments,GET /invoices/{invoiceId}/payments/{paymentId}, andPOST /invoices/{invoiceId}/payments(optionalpaymentReferenceon create). - New: Quotes — full CRUD via
GET/POST /quotes,GET/PATCH/DELETE /quotes/{quoteId},GET /quotes/{quoteId}/pdf,POST /quotes/{quoteId}/send, andGET /opportunities/{opportunityId}/quotes. - New: Work order line items —
PUT /work-orders/{workOrderId}/line-itemsreplaces line items on service work orders (account type).GET /work-orders/{workOrderId}now includeslineItemswhen present. - New: Taxes —
GET /taxeslists company tax rates with pagination and archived filtering. - New: Bills — full CRUD for project bills via
GET/POST /bills,GET/PATCH/DELETE /bills/{billId}, andGET /projects/{projectId}/bills. Supports LINE_ITEMS and PERCENTAGE calculation methods. - Improvement: Nullable fields on
PATCH /projects/{projectId},PATCH /accounts/{accountId}, andPATCH /clients/{clientId}— passnullto clear a field (e.g.description,ownerId,primaryEmail) or any custom property.
Looking for a specific date? See the entries below.
Bills
New: Bills endpoints
You can now create, read, update, and delete bills on projects via the public API.
Bills support two calculation methods:
LINE_ITEMS— itemised bill with one or more line items. Each line item requirescatalogItemId,quantity,unitCost(must be > 0), andunitPrice(may be negative for discounts).PERCENTAGE— percentage of the project’s base amount (0–100).
Create a LINE_ITEMS bill
Create a PERCENTAGE bill
Business rules
calculationMethodcannot be changed after creation.PERCENTAGEbills cannot haveissueDateorstatus.LINE_ITEMSbills: whenissueDateis provided,statusmust also be provided and must not beDRAFT.unitCostmust be greater than 0 for all line items.percentagemust be between 0 and 100.
Nullable fields on project, account, and client updates
Improvement: Clear fields by passing null
You can now explicitly clear nullable fields on projects, accounts, and clients by passing null in a PATCH request. Previously, null values were ignored and the existing value was left unchanged.
This applies to the following endpoints:
PATCH /projects/{projectId}PATCH /accounts/{accountId}PATCH /clients/{clientId}
Clearable fields
Custom properties (via the custom object) can also be cleared by passing null for any key.
Example
This will clear description, unassign the owner, and clear the pud_incentive custom property on the project.
Omitting a field entirely still leaves the existing value unchanged.
