Opportunity
Opportunity is one of Demiton's published registers for Australian civil construction. Changes to a pipeline opportunity over time. 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
opportunityUse this name to ask for the register. The API calls it a shelf ID.- Each record is
- An eventSomething that happened at a point in time.
- Status
- AvailableFilled today from connected systems, uploads or public data.
- Data
- OrganisationPrivate to each organisation's own workspace.
- Version
- v2 (2.0.2)Current version.
Standards
This register's contract was designed against these standards and laws. Holding these records does not by itself certify compliance.
- CPRsCommonwealth Procurement Rules
- EU 2019/1780 (eForms)Commission Implementing Regulation (EU) 2019/1780 standard forms for procurement notices, as amended by (EU) 2023/2884
- OCDSOpen Contracting Data Standard
- NZ GPRNew Zealand Government Procurement Rules
Connectors
On the roadmap
Systems in the planned connector rollout that can fill this register. Partial means the system holds only some of its fields.
- MYOB Acumatica
- ProcorePartial
Fields
17 fields: 7 required, 10 optional.
Required
Every record carries these fields.
- titleText
Human identity of the opportunity, truncated to 500 characters.
Example:
ITT2529 Streetscape Upgrade - Mill & Currie Streets, Nambour- valueNumber
Estimated opportunity value,
INSTANTANEOUS.Example:
1850000- outcomeText
won,lostoropen.Example:
open- currencycurrency
Denomination of
value.Example:
AUD- bid_statusText
bidwhen the opportunity was actually pursued, elselogged_no_bid(a tenant may log every opportunity, including no-bids).Example:
submitted- external_idText
The tenant's own opportunity number, unique per source company; the fact's natural key.
Example:
OPP-2026-021- occurred_atDate and time
The episodic event time: source creation date, falling back to last-modified then close date.
Example:
2026-06-20T09:00:00Z
Optional
Present when the source system records them.
- projectText
The project/job anchor, when one resolves.
- customerText
The customer entity anchor, when the source row names a contact company/number.
Example:
Sunshine Coast Council- estimatorText
The internal estimator assigned to the pursuit.
Example:
Kim Tanaka- salespersonText
Name of the source-system opportunity owner.
Example:
Brett Hollis- jurisdictionjurisdiction
AU state/territory the opportunity is in, matched from the title text.
Example:
QLD- legal_entityText
The BC company that owns the opportunity.
- work_type_idText
The org's classification of the work, from the shared
work_types.yamlcatalogue.- financial_periodText
The financial period the event falls in.
- sales_cycle_codeText
The source system's sales-stage code.
Example:
TENDER- work_type_sourceText
Provenance of the classification (keyword vs LLM path).
Filed against
Records are indexed along these dimensions, so they can be asked for by any of them.
- Currencycontext for the record, from
Always set - Customercontext for the record, from
When known - Projectwhat the record is about, from
When known - Financial periodcontext for the record, from
When known
Example record
A sample from Bridgeworks Group, Demiton's demonstration company. The values are illustrative; the shape is exactly what the contract describes.
{ "bid_status": "submitted", "currency": "AUD", "customer": "Sunshine Coast Council", "estimator": "Kim Tanaka", "external_id": "OPP-2026-021", "jurisdiction": "QLD", "occurred_at": "2026-06-20T09:00:00Z", "outcome": "open", "sales_cycle_code": "TENDER", "salesperson": "Brett Hollis", "source_system": "D365_BUSINESS_CENTRAL", "title": "ITT2529 Streetscape Upgrade - Mill & Currie Streets, Nambour", "value": 1850000}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/opportunity/v2.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.