Demiton · Schema

tendered_budget contract v2

Tendered budget lines across all cost categories, from the winning estimate.

CompanyConstructionCivil EngineeringProject ManagementComplianceMCPArtificial IntelligenceOpen Contracting

Properties

Name Type Description
total number The section subtotal; `grand_total` must equal their sum.
lines array 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.
category string The cost category a section total belongs to.
coverage string `empty`)
currency currency the currency of every amount on this record (`total`, `grand_total`), an ISO 4217 alpha-3 code as the source states it. A record with no currency has no usable amount.
sections array 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_id integer The entity the price belongs to. Always an `opportunity` for this shelf: `doc_entity_type='opportunity'` (`baseline_squash_02_seed.sql:274`), resolved by `resolve_anchor_entity` preferring opportunity
line_count integer How many nested lines the section carries, so a truncated parse is detectable.
grand_total number The whole tendered sum: the sum of every section's total.
budget_hours number Total labour hours behind the labour portion, for rate-per-hour and productivity checks.
job_entity_id integer The project (job) entity this price prices, once the tender is won and the job exists. `entity_id` stays the opportunity; this names the job its cost is measured on. Absent until the link is made.
source_format string Which parser format produced the record, so a consumer can tell a Pronamics workbook from a future parser's output.
financial_period string The period the budget belongs to, so successive periods coexist instead of superseding one another.
labour_total_value number The Labour section's subtotal, kept for labour-only consumers.
View JSON Schema on GitHub

JSON Schema

demiton-io-tendered_budget-v2-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://docs.demiton.io/registers/tendered_budget/v2.json",
  "title": "tendered_budget contract v2",
  "type": "object",
  "required": [
    "category",
    "coverage",
    "currency",
    "entity_id",
    "financial_period",
    "grand_total",
    "line_count",
    "sections",
    "source_format",
    "total"
  ],
  "properties": {
    "total": {
      "type": "number",
      "description": "The section subtotal; `grand_total` must equal their sum.",
      "x-demiton-requiredness": "required"
    },
    "lines": {
      "type": "array",
      "description": "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.",
      "x-demiton-requiredness": "optional",
      "x-demiton-unit": "mixed (each line carries its own unit)"
    },
    "category": {
      "type": "string",
      "description": "The cost category a section total belongs to.",
      "x-demiton-requiredness": "required",
      "x-demiton-unit": "none"
    },
    "coverage": {
      "type": "string",
      "description": "`empty`)",
      "x-demiton-requiredness": "required",
      "x-demiton-unit": "`labour_only` \\"
    },
    "currency": {
      "type": "currency",
      "description": "the currency of every amount on this record (`total`, `grand_total`), an ISO 4217 alpha-3 code as the source states it. A record with no currency has no usable amount.",
      "x-demiton-requiredness": "required"
    },
    "sections": {
      "type": "array",
      "description": "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.",
      "x-demiton-requiredness": "required",
      "x-demiton-unit": "AUD (per section)"
    },
    "entity_id": {
      "type": "integer",
      "description": "The entity the price belongs to. Always an `opportunity` for this shelf: `doc_entity_type='opportunity'` (`baseline_squash_02_seed.sql:274`), resolved by `resolve_anchor_entity` preferring opportunity at tender stage, and the writer skips the write entirely when resolution returns None.",
      "x-demiton-requiredness": "required",
      "x-demiton-unit": "none"
    },
    "line_count": {
      "type": "integer",
      "description": "How many nested lines the section carries, so a truncated parse is detectable.",
      "x-demiton-requiredness": "required",
      "x-demiton-unit": "count"
    },
    "grand_total": {
      "type": "number",
      "description": "The whole tendered sum: the sum of every section's total.",
      "x-demiton-requiredness": "required"
    },
    "budget_hours": {
      "type": "number",
      "description": "Total labour hours behind the labour portion, for rate-per-hour and productivity checks.",
      "x-demiton-requiredness": "optional",
      "x-demiton-unit": "hours"
    },
    "job_entity_id": {
      "type": "integer",
      "description": "The project (job) entity this price prices, once the tender is won and the job exists. `entity_id` stays the opportunity; this names the job its cost is measured on. Absent until the link is made.",
      "x-demiton-requiredness": "optional"
    },
    "source_format": {
      "type": "string",
      "description": "Which parser format produced the record, so a consumer can tell a Pronamics workbook from a future parser's output.",
      "x-demiton-requiredness": "required",
      "x-demiton-unit": "none"
    },
    "financial_period": {
      "type": "string",
      "description": "The period the budget belongs to, so successive periods coexist instead of superseding one another.",
      "x-demiton-requiredness": "required",
      "x-demiton-unit": "none",
      "format": "date",
      "x-demiton-type": "date"
    },
    "labour_total_value": {
      "type": "number",
      "description": "The Labour section's subtotal, kept for labour-only consumers.",
      "x-demiton-requiredness": "optional"
    }
  },
  "x-demiton-register-type": "tendered_budget",
  "x-demiton-contract-version": "2.1.0",
  "x-demiton-store": "tenant",
  "x-demiton-axes": [
    {
      "axis": "financial_period",
      "requirement": "optional",
      "role": "context"
    }
  ],
  "x-demiton-measures": [],
  "x-demiton-provenance": {
    "standards": []
  },
  "description": "Tendered budget lines across all cost categories, from the winning estimate.",
  "x-demiton-contract-url": "https://docs.demiton.io/registers/tendered_budget/",
  "x-demiton-register-catalog": "https://docs.demiton.io/concepts/register-catalog"
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/demiton-io-tendered_budget-v2"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.