Skip to content
Demiton

Portal document (v1)

Portal document is one of Demiton's published registers for Australian civil construction. Documents downloaded from a client or tender portal, by project. 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 Projects in the register catalog.

Register ID
portal_documentUse 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
DeclaredDefined, and fills when a source produces its first record.
Data
OrganisationPrivate to each organisation's own workspace.
Version
v1 (1.0.1)Superseded by v2.

Standards

This register's contract was designed against these standards and laws. Holding these records does not by itself certify compliance.

  • ISO 19650Organization and digitization of information about buildings and civil engineering works, including BIM - Information management using BIM - Part 1: Concepts and principlesAustralia · 2019 · public summary
  • ISO 19650Information management using BIM - Part 2: Delivery phase of the assetsAustralia · 2019 · public summary
  • ISO 19650Information management using building information modelling - Part 1: Concepts and principlesInternational · 2018 · public summary
  • ISO 19650Information management using building information modelling - Part 2: Delivery phase of the assetsInternational · 2018 · public summary

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.

  • Oracle AconexPartial

Fields

13 fields: 8 required, 5 optional.

Required

Every record carries these fields.

nameText

The file name as the portal listed it.

Example: ITT242-Tender-Specification.pdf

sha256Text

Content fingerprint of the fetched bytes; the integrity claim about a file whose bytes are not kept.

Example: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7…

fact_classText

Provenance class: an agent's metadata capture of a downloaded file, not a value the source system reported.

Example: agent_document_fetch

size_bytesWhole numberUnit: bytes

Size of the fetched bytes at download time.

Example: 4821302

external_idText

Identity of the fetched document: {portal}:{document_id}. Maps to Fact.source_id.

Example: vendorpanel:1bc13508218f4795a38bdf5c85dc01ec

occurred_atDate and timeISO 8601, with time zone

The download time, stamped at write; the event key of an episodic fact and the source FINANCIAL_PERIOD derives from.

Example: 2026-07-10T02:15:00Z

source_portalText

Which portal the document came from; defaults to the literal "portal" when the artifact omits it.

Example: vendorpanel

financial_periodDateYYYY-MM-DD

Declared FINANCIAL_PERIOD axis; resolved from occurred_at when the writer passes no coordinate.

Example: 2026-07-01

Optional

Present when the source system records them.

contentText

One generated sentence: "Portal document {name} fetched by estimating/portal_fetch (agent run {id})." The searchable prose half.

Example: Portal document ITT242-Tender-Specification.pdf fetched b…

projectText

Declared PROJECT axis; populated only when the opportunity resolves to a project.

agent_run_idText

The AgentRun that performed the fetch; also the fact's citation.origin_uri (demiton://agent/portal_fetch/run/{id}).

Example: 76031

source_systemText

Originating system stamp; the writer hard-codes "DEMITON" here.

Example: DEMITON

opportunity_refText

The opportunity the fetch was for, from the agent goal; a reference, not a resolved entity.

Example: ITT242 Civil Construction - Caloundra Transport Corridor …

Example record

A sample from Bridgeworks Group, Demiton's demonstration company. The values are illustrative; the shape is exactly what the contract describes.

portal_document.example.json
{
"agent_run_id": 76031,
"content": "Portal document ITT242-Tender-Specification.pdf fetched by estimating/portal_fetch (agent run 76031).",
"external_id": "vendorpanel:1bc13508218f4795a38bdf5c85dc01ec",
"fact_class": "agent_document_fetch",
"financial_period": "2026-07-01",
"name": "ITT242-Tender-Specification.pdf",
"occurred_at": "2026-07-10T02:15:00Z",
"opportunity_ref": "ITT242 Civil Construction - Caloundra Transport Corridor Upgrade",
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85",
"size_bytes": 4821302,
"source_portal": "vendorpanel",
"source_system": "DEMITON"
}

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.

Schema URL
https://docs.demiton.io/registers/portal_document/v1.json
Show 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.

Book a 30-minute callStart free