Tendered budget (v1)
Tendered budget is one of Demiton's published registers for Australian civil construction. Tendered budget lines across all cost categories, from the winning estimate. Demiton keeps it current from the systems a contractor already runs and publishes the record's shape as a versioned JSON Schema, so the same question works whichever system produced the record.
Part of Opportunities in the register catalog.
- Register ID
tendered_budgetUse this name to ask for the register. The API calls it a shelf ID.- Each record is
- A stateThe current value of something, replaced when it changes.
- Status
- AvailableFilled today from connected systems, uploads or public data.
- Data
- OrganisationPrivate to each organisation's own workspace.
- Version
- v1 (1.0.0)Superseded by v2.
Connectors
Connected today
Demiton keeps this register current from these systems now.
No system fills this register yet.
On the roadmap
Systems in the planned connector rollout that can fill this register. Partial means the system holds only some of its fields.
None planned yet.
Fields
12 fields: 9 required, 3 optional.
Required
Every record carries these fields.
- categoryText
The cost category a section total belongs to.
Example:
Labour- coverageText
empty)Example:
full- sectionsList
The cost-category breakdown (Labour, Plant, Subcontract, Travel, Materials, Overhead on a full parse), one entry per category: category label, section total, line count, and the nested line list.
- entity_idWhole number
The entity the price belongs to. Always an
opportunityfor this shelf:doc_entity_type='opportunity'(baseline_squash_02_seed.sql:274), resolved byresolve_anchor_entitypreferring opportunity at tender stage, and the writer skips the write entirely when resolution returns None.Example:
7001- total_audNumber
The section subtotal;
grand_total_audmust equal their sum.- line_countWhole number
How many nested lines the section carries, so a truncated parse is detectable.
Example:
22- source_formatText
Which parser format produced the record, so a consumer can tell a Pronamics workbook from a future parser's output.
Example:
pronamics_workbook- grand_total_audNumber
The whole tendered sum: the sum of every section's total.
- financial_periodDate
The period the budget belongs to, so successive periods coexist instead of superseding one another.
Example:
2026-06-01
Optional
Present when the source system records them.
- lines[]List
The priced line detail: what was priced, how much, in what unit, at what rate, for what total, and the work-activity / cost-type coding where the workbook carries it.
- budget_hoursNumber
Total labour hours behind the labour portion, for rate-per-hour and productivity checks.
Example:
8200- labour_total_valueNumber
The Labour section's subtotal, kept for labour-only consumers.
Example:
480000
Example record
A sample from Bridgeworks Group, Demiton's demonstration company. The values are illustrative; the shape is exactly what the contract describes.
{ "budget_hours": 8200, "category": "Labour", "coverage": "full", "currency": "AUD", "entity_id": 7001, "financial_period": "2026-06-01", "grand_total": 2650000, "labour_total_value": 480000, "line_count": 22, "sections": [ { "category": "Labour", "line_count": 22, "total": 480000 }, { "category": "Plant", "line_count": 14, "total": 610000 }, { "category": "Subcontract", "line_count": 9, "total": 950000 }, { "category": "Materials", "line_count": 18, "total": 410000 }, { "category": "Overhead", "line_count": 3, "total": 200000 } ], "source_format": "pronamics_workbook", "total": 480000}Version history
- v2 (current)
- v1
Use this contract
The contract is a standard JSON Schema (draft 2020-12) document, so any JSON Schema validator can check a record against it. Keywords starting with x-demiton- add Demiton's own meaning, such as units and requiredness, and validators ignore them.
https://docs.demiton.io/registers/tendered_budget/v1.jsonShow the full JSON Schema
Loading the schema…
Talk to the team
Tell us what you run - your ERP, field, payroll and document systems - and we will show you the registers Demiton would fill from them, on your data, in a 30-minute call.