Skip to content
Demiton

Document location (opportunity)

The document folder bound to a tender or opportunity.

Part of Documents in the register catalog.

Register ID
document_location:opportunityUse 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
v1Current version.

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

18 fields: 6 required, 8 optional, 4 defined by each organisation.

Required

Every record carries these fields.

entity_typeText

The entity kind whose documents this binding locates; on this shelf the key fixes it to opportunity

Example: opportunity

coordinate_keyText

The override discriminator carried in the fact identity: empty for the default binding, else an 8-hex hash of the coordinate selector.

sourcesList

The ordered list of places to look for this opportunity's documents; each element is one complete declarative locator.

sources[].systemText

The storage system of one source; only SHAREPOINT and DROPBOX are crawlable.

Example: SHAREPOINT

sources[].connector_refText

The logical alias of the connector that reaches this source — the only identity a source carries besides raw store coordinates.

Example: bridgeworks-sharepoint

source_systemText

The producing system of the fact; AUTHORED when the location is entered in Demiton rather than harvested.

Example: AUTHORED

Optional

Present when the source system records them.

doc_typeText

Null on this shelf — the general opportunity home. A doc-type-scoped location is a separate shelf (document_location:opportunity:{doc_type})

sources[].store_site_idText

The store's site identifier; required to reach a source on site-addressed systems.

Example: sites/BridgeworksProjects

sources[].store_drive_idText

The store's drive identifier.

Example: b!AbCdEf12345

sources[].store_drive_nameText

The drive's display name; used to translate between the store root and the display paths the agents' manifests use.

Example: Documents

sources[].store_site_labelText

Operator-facing display name for the site; copied forward with the store block, consumed by no automated reader.

sources[].root_folderText

Path under the store root to start from; empty/null for site+drive systems.

Example: Opportunities

sources[].file_globText

The file match for this doc type: * (no filter) or a single *.ext glob; unused by the observed general binding.

binding_statusText

Whether the operator has confirmed the binding or it is still a candidate.

Example: confirmed

Defined by each organisation

Their contents come from the organisation's own forms or systems, so they differ between organisations.

sources[].entity_folder_patternText

How each opportunity's own folder is named, binding a folder to the entity by its number token.

Example: {opportunity_number} *

sources[].lifecycle_foldersList

The status-tagged folders to traverse; the opportunity's documents live in the folder matching its current status, and the folder moves as it progresses.

sources[].doc_subpathText

An optional fixed sub-path inside the opportunity folder where this doc type's files sit; unused by the observed general binding.

sources[].folder_patternText

A case-insensitive regex matched against folder names at any depth, used where no single sub-path name holds across opportunities; unused by the observed general binding.

Example record

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

document_location:opportunity.example.json
{
"binding_status": "confirmed",
"coordinate_key": "",
"entity_type": "opportunity",
"source_system": "AUTHORED",
"sources": [
{
"connector_ref": "bridgeworks-sharepoint",
"entity_folder_pattern": "{opportunity_number} *",
"lifecycle_folders": [
"01 Tender",
"02 Award",
"03 Delivery"
],
"root_folder": "Opportunities",
"store_drive_id": "b!AbCdEf12345",
"store_drive_name": "Documents",
"store_site_id": "sites/BridgeworksProjects",
"system": "SHAREPOINT"
}
]
}

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/document_location--opportunity/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 keep current from them, on your data, in a 30-minute call.

Book a 30-minute callStart free