Demiton · Schema
opportunity_specifications contract v1
Technical and scope specifications extracted from an opportunity's tender documents.
CompanyConstructionCivil EngineeringProject ManagementComplianceMCPArtificial IntelligenceOpen Contracting
Properties
| Name | Type | Description |
|---|---|---|
| issuing_body | string | The issuing body / code-set grouping the entry sits under; explicit null only when the drawing set places the entry nowhere. |
| specifications | array | The extracted governing-specification entries. Empty array is meaningful and must be written. |
| extraction_notes | string | Free-text caveats from the extractor (raster pages, LLM notes). |
| specification_code | string | The clause/document code **exactly as written on the drawing**, including parenthetical alternative codes and revision suffixes (the parser's own examples: `C242`, `TS 02168.1 (R64)`, `AS3798-2007`); |
| extracted_page_count | number | Pages the parser actually read, capped at 40. |
| source_document_name | string | Human-readable file name. |
| source_document_path | string | The resolved path of the drawing-set PDF. Provenance key for the fact. |
| specification_description | string | The specification's title as the issuing body wrote it. |
| specifications_table_present | boolean | Whether the drawing set carried a literal boxed "PROJECT SPECIFICATIONS" table rather than inline/clause-list references. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://docs.demiton.io/registers/opportunity_specifications/v1.json",
"title": "opportunity_specifications contract v1",
"type": "object",
"required": [
"issuing_body",
"source_document_path",
"specification_code",
"specification_description",
"specifications"
],
"properties": {
"issuing_body": {
"type": "string",
"description": "The issuing body / code-set grouping the entry sits under; explicit null only when the drawing set places the entry nowhere.",
"x-demiton-requiredness": "required"
},
"specifications": {
"type": "array",
"description": "The extracted governing-specification entries. Empty array is meaningful and must be written.",
"x-demiton-requiredness": "required"
},
"extraction_notes": {
"type": "string",
"description": "Free-text caveats from the extractor (raster pages, LLM notes).",
"x-demiton-requiredness": "optional"
},
"specification_code": {
"type": "string",
"description": "The clause/document code **exactly as written on the drawing**, including parenthetical alternative codes and revision suffixes (the parser's own examples: `C242`, `TS 02168.1 (R64)`, `AS3798-2007`); explicit null when the entry has no code of its own.",
"x-demiton-requiredness": "required"
},
"extracted_page_count": {
"type": "number",
"description": "Pages the parser actually read, capped at 40.",
"x-demiton-requiredness": "optional",
"x-demiton-unit": "pages"
},
"source_document_name": {
"type": "string",
"description": "Human-readable file name.",
"x-demiton-requiredness": "optional"
},
"source_document_path": {
"type": "string",
"description": "The resolved path of the drawing-set PDF. Provenance key for the fact.",
"x-demiton-requiredness": "required"
},
"specification_description": {
"type": "string",
"description": "The specification's title as the issuing body wrote it.",
"x-demiton-requiredness": "required"
},
"specifications_table_present": {
"type": "boolean",
"description": "Whether the drawing set carried a literal boxed \"PROJECT SPECIFICATIONS\" table rather than inline/clause-list references.",
"x-demiton-requiredness": "optional"
}
},
"x-demiton-register-type": "opportunity_specifications",
"x-demiton-contract-version": "1.0.2",
"x-demiton-store": "tenant",
"x-demiton-axes": [],
"x-demiton-measures": [],
"x-demiton-provenance": {
"standards": [
{
"code": "AS 1012",
"title": "Methods of testing concrete (series)",
"access": "paywalled_secondary",
"region": "Australia",
"edition": "series; parts separately dated",
"checked_on": "2026-09-14"
},
{
"code": "AS 1289",
"title": "Methods of testing soils for engineering purposes (series)",
"access": "paywalled_secondary",
"region": "Australia",
"edition": "series; AS 1289.0:2014 umbrella",
"checked_on": "2026-09-14"
},
{
"code": "AS 3798-2007",
"title": "Guidelines on earthworks for commercial and residential developments",
"access": "paywalled_secondary",
"region": "Australia",
"edition": "2007 incl. Amdt 1 (2008)",
"checked_on": "2026-09-14"
},
{
"code": "AS ISO 19650.1:2019 / AS ISO 19650.2:2019",
"title": "Information management using BIM - Part 1 (AU identical adoption)",
"access": "paywalled_secondary",
"region": "Australia",
"edition": "2019",
"checked_on": "2026-09-14"
},
{
"code": "ISO 19650-1:2018 / ISO 19650-2:2018",
"title": "Information management using BIM - Part 1 (identical AS ISO 19650.1:2019)",
"access": "paywalled_secondary",
"region": "International",
"edition": "2018",
"checked_on": "2026-09-14"
},
{
"code": "BS EN ISO 19650-2 UK National Annex",
"title": "BS EN ISO 19650-2 UK National Annex (status and revision codes)",
"access": "paywalled_secondary",
"clause": "NA.4.2; NA.4.3 (third-party report)",
"region": "United Kingdom",
"edition": "2021 revision",
"checked_on": "2026-09-14"
}
]
},
"description": "Technical and scope specifications extracted from an opportunity's tender documents.",
"x-demiton-contract-url": "https://docs.demiton.io/registers/opportunity_specifications/",
"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.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/demiton-io-opportunity_specifications-v1"
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.