List forms across your company
New: GET /forms
Lists your company’s forms across every project and opportunity, including forms on account work orders, paginated. Use it to sync forms incrementally instead of listing them one record at a time.
Query parameters
Send only one of project_id, opportunity_id or account_id; more than one returns 400.
Each form returns id, name, templateId, projectId, opportunityId or accountId (whichever record the form is on; the other two are null), workOrderId (null if it isn’t on a work order), status, isCompleted, completedAt, isArchived, createdAt and updatedAt. Field values are not included; fetch them with GET /forms/{form_id}.
Note: Archiving a form doesn’t update its
updatedAt, soupdated_afterdoesn’t pick up archive changes.
Docs: work-order collaborators replaces the full list
On PATCH work orders, collaborators sets the full collaborator list. Include everyone who should remain, send [] to remove all collaborators, or omit the field to leave them unchanged. The behavior hasn’t changed; the docs now say so.
Updated: work orders return createdBy
Work orders now include a read-only createdBy field showing who created them, the same person the Coperniq UI shows as “Created by”.
- Returned by
GET /work-orders,GET /work-orders/{id}, and the work-order lists and gets under projects, opportunities, requests, accounts and clients. nullwhen the creator is unknown.- Update responses return the same shape as a
GET. Create responses return{ "id": 123 }only. - It’s the equivalent of
createdByUseron forms.
