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.
Quotes — full CRUD
You can now create, read, update, delete, send, and download PDF quotes through the public API.
Endpoints
Create a quote with sections
opportunityId is required. Provide line items either flat or grouped into named sections.
Business rules
opportunityIdis always required;workOrderIdis not accepted (usePUT /work-orders/{workOrderId}/line-itemsfor work order line items).- Each section must contain at least one line item (
lineItemsmin length 1). issueDatemay only be provided whenstatusisSENTorAPPROVED.discountTypemust bePERCENTAGEorFLATwhendiscountValueis set.
Work order line items
New: PUT /work-orders/{workOrderId}/line-items
Replace all line items on a service work order’s underlying quote. If no quote exists yet, one is created automatically.
This endpoint is only available for service work orders on an account (i.e. the parent project type is ACCOUNT). Calling it on a non-account work order returns 400.
New: lineItems on GET /work-orders/{workOrderId}
The work order detail response now includes a lineItems array when the work order is a service work order on an account and has at least one line item. The property is omitted entirely when there are no line items or the work order is not on an account.
List taxes
New: GET /taxes
List tax rates configured for your company. Use these IDs when assigning taxes to quotes, invoices, and other financial documents.
