Skip to main content
Every example uses app.buildingswell.com. Swap in your own host if you are pointed somewhere else.

Reading data

List projects

Find work in progress

Count what is still open

Break work down by status

Resolve project names in one request

Rather than a lookup per row, join the project onto the deliverable:

Send a long filter in the body

Big id lists exceed URL length limits, so use the POST twin:

Hours and payroll

Pull a pay period

Paid time per row is (endDate - startDate) - breakTimeInSec. See break time and how it is carved out.

Attribute hours to an order, station, and phase

Find sessions that need a human to look at them

Returns the ids of overlapping and over-shift sessions, so you can clean a period up before you run payroll off it.

Check what an external system has not picked up

Creating work

Create a project with a jobsite address

Start an order from a route

The usual way to begin work that follows a standard process:

Create a node with the rules enforced

Leaving data.stageId out finds or creates the Welding station in that department.

Create several deliverables at once

Learn the concept model as data

Validate payloads against this instead of hard-coding the nesting rules.

Updating and removing

Change a few fields

Update many records at once

The filter goes in the query string. A filter in the body is ignored:

Archive instead of deleting

For deliverables, the batch endpoint cascades through the subtree:
See archiving and deleting before reaching for DELETE.

Preview a destructive progress action

Nothing is written, so you can show someone the effect first.