Bill Of Materials
A Bill of Materials (BOM) is a list of materials and quantities that are estimated to be needed for a job. Contractors already make materials estimates in order to bid on jobs, and these estimates can be used in Kojo once the job is won to guide procurement decisions and track spending throughout the project.
Project managers and purchasing agents can view and edit the BOM and track spending. Foremen can requisition from the BOM on their mobile devices, quickly choosing from a job-specific list of planned, approved, and in-spec materials every time.
Schema​
BillOfMaterials
​
Name | Type | Description | Example |
---|---|---|---|
id | ID | Unique BOM identifier | "ckmnpybisiy5x08abky4g2d1f" |
createdAt | DateTime | When this Bill of Materials was created | "2021-03-24 17:26:46.983Z" |
updatedAt | DateTime | When this Bill of Materials was updated | "2021-03-24 17:26:46.983Z" |
name | string | Name of the Bill of Materials | "Rough in" |
jobId | ID | The ID of the job this BOM is associated with | See Jobs docs |
jobCode | string | The code of the job this BOM is associated with | See Jobs docs |
Queries​
getBillsOfMaterials
​
Read all billOfMaterials from a parent job.
Parameters​
Name | Type | Description | Example |
---|---|---|---|
jobId | ID? | The job ID to get the BOMs from. | "ckmnpybisiy5x08abky4g2d1f" |
jobCode | string? | The job code to get the BOMs from. | "01-100" |
Response​
A list of BillOfMaterials
objects.
Example Query​
query {
getBillsOfMaterials(
jobId: "ckyd9f1jn4332914x62igy1oni"
) {
id
jobId
name
}
}
Example Response​
[
{
"id": "ckyd9f1jn4332914x62igytcx",
"jobId": "ckyd9f1jn4332914x62igy1oni",
"name": "Rough in"
}
]
Mutations​
createBillOfMaterials
​
Creates a new Bill Of Materials on a job.
Parameters​
Name | Type | Description | Example |
---|---|---|---|
jobId | ID? | The job ID to create the BOM against. | "ckmnpybisiy5x08abky4g2d1f" |
jobCode | string? | The job code to create the BOM against. | "01-100" |
name | string? | Name of the Bill of Materials | "Rough in" |
Response​
Returns the BillOfMaterials.
Example Mutation​
mutation {
createBillOfMaterials(
jobId: "ckyd9f1jn4332914x62igy1oni", name: "Rough in"
) {
id
createdAt
name
jobId
jobCode
updatedAt
}
}
Example Response​
{
"createdAt": "2022-01-13T17:42:40.019Z",
"id": "ckyd9f1jn4332914x62igytcx",
"name": "Rough in",
"jobId": "ckyd9f1jn4332914x62igy1oni",
"jobCode": "01-100",
"updatedAt": "2022-01-13T17:42:40.020Z"
}