Skip to main content
POST
Create a deliverable

Authorizations

X-API-Key
string
header
required

Organization-scoped API key. Create one in the BuildingSwell app under Organization settings, API keys.

Body

application/json

These raw endpoints do not enforce the nesting rules. A step under an order, or a stage node with no station, is accepted here and leaves the tree in a state the app cannot show. Use the domain concepts endpoints for validated writes.

name
string
required

Display name.

type
enum<string>
required

Which concept this node represents.

Available options:
order,
route,
overhead,
template-phase,
phase,
component,
stage,
step,
qcstep,
group
id
string<uuid>

Unique id. Generated on create unless you supply one.

identifier
string

Human-readable id, unique within your organization. Generated for you when you leave it out.

isArchived
boolean
default:false

Archived records are hidden from list results unless you ask for them. Set this to archive or restore the record.

archivedAt
string<date-time> | null

When the record was archived. Set automatically when isArchived flips to true, and cleared on restore.

quantity
integer
default:1

How many of this node the work covers.

parentId
string<uuid> | null

Node directly above this one.

rootParentId
string<uuid> | null

Root of this node's tree. A root node points at itself.

originTemplateId
string<uuid> | null

Route or template this node was built from.

cycleTimeSec
integer
default:0

Cycle time per unit, in seconds.

durationSec
integer
default:0

Total duration, in seconds.

peopleNum
integer
default:1

How many people the node is planned for.

data
object

Per-concept fields. Which keys apply depends on type: a stage node needs stageId, an order needs projectId, and so on. See the domain concepts guide for the full table.

Example:
costCode
string | null

Cost code. Trimmed on write, and an empty string is rejected: send a non-empty string or null.

Stored as a plain string. It is not validated against the cost code list, and renaming an entry in that list does not change this value.

createdAt
string<date-time>

When the record was created.

updatedAt
string<date-time>

When the record last changed.

Response

The created deliverable. An array request returns values instead of value.

value
object
required

One generic work-tree node. Its type decides which domain concept it represents, from an order down to a single step.