DemandFlow Support Centre

CONTRACT: Contract

ReferenceEntity Reference16/04/2026Updated 16/04/2026
The CONTRACT entity stores contracts. An NEC or JCT construction contract linked to a project. Tracks contract type, sum, parties, key dates, retention, and defects correction period.

CONTRACT: Contract

The CONTRACT entity stores contracts. An NEC or JCT construction contract linked to a project. Tracks contract type, sum, parties, key dates, retention, and defects correction period.

Default definition. This article describes the default CONTRACT definition shipped with DemandFlow. Administrators can add, remove, rename, or re-type fields, change which ones are required, and alter the layout from the Definitions screen in Settings. Your tenant's current schema may differ from what is shown here. To read the current definition at any time, GET the DEFINITION object whose id matches CONTRACT.

Entity properties

PropertyValue
Entity codeCONTRACT
Display nameContract
PluralContracts
Level71000

Use cases

Parent entity for NEC/JCT contract management. Six relatedlist panels for child entities: compensation events (CONTRACTCE), early warnings (CONTRACTEW), programme submissions (CONTRACTPROG), defects (CONTRACTDEF), payment applications (CONTRACTPAY), and tasks (ACTION).

Fields

Contract Details

FieldTypeRequiredNotes
nametextYesContract name
contractReftextContract reference
statusenumYesStatus. Valid ids: draft (Draft), tendered (Tendered), awarded (Awarded), active (Active), practical_completion (Practical Completion), defects_period (Defects Period), final_account (Final Account), closed (Closed), terminated (Terminated).
contractTypeenumYesContract type. Valid ids: nec4_ecc (NEC4 ECC), nec4_ecc_a (NEC4 ECC Option A (Priced)), nec4_ecc_b (NEC4 ECC Option B (Bill of Quantities)), nec4_ecc_c (NEC4 ECC Option C (Target)), nec4_ecc_d (NEC4 ECC Option D (Target BoQ)), nec4_ecc_e (NEC4 ECC Option E (Cost Reimbursable)), nec4_ecc_f (NEC4 ECC Option F (Management)), nec4_tsc (NEC4 TSC), nec4_psc (NEC4 PSC), nec4_sc (NEC4 Short Contract), nec3_ecc (NEC3 ECC), jct_db (JCT Design & Build), jct_sbc (JCT Standard Building Contract), jct_ic (JCT Intermediate), jct_mw (JCT Minor Works), jct_mc (JCT Management Contract), other (Other).
descriptiontext (multi-line)Description
projectreference → PJProject
contractSumnumberContract sum
currentContractSumnumberContract sum adjusted for agreed compensation events / variations

Parties

FieldTypeRequiredNotes
contractorNametextContractor name
contractorContacttextContractor contact
contractorEmailtextContractor email
projectManagerreference → userProject Manager / Contract Administrator
supervisorreference → userSupervisor
assigned_toreference → userOwner

Retention

FieldTypeRequiredNotes
retentionPctnumberRetention percentage (%)
retentionRelease1dateTypically at practical completion
retentionRelease2dateTypically at end of defects correction period

Key Dates

FieldTypeRequiredNotes
startDatedateStart date
completionDatedateCompletion date
practicalCompletionDatedatePractical completion date
sectionalCompletion1DatedateSectional completion 1
sectionalCompletion1DesctextSection 1 description
sectionalCompletion2DatedateSectional completion 2
sectionalCompletion2DesctextSection 2 description
sectionalCompletion3DatedateSectional completion 3
sectionalCompletion3DesctextSection 3 description

Defects

FieldTypeRequiredNotes
defectsCorrectionPeriodnumberDefects correction period (weeks)
defectsDatedateEnd of defects correction period

Documents

FieldTypeRequiredNotes
attachmentsfileContract Documents

Additional panels

  • Activity timeline panel attached.

Relationships

  • Lookups: project points at a PJ record.
  • Related lists: CONTRACTCE (SUB|CONTRACT), CONTRACTEW (SUB|CONTRACT), CONTRACTPROG (SUB|CONTRACT), CONTRACTDEF (SUB|CONTRACT), CONTRACTPAY (SUB|CONTRACT), ACTION (SUB|CONTRACT).

Creating a Contract via the API

POST /v1/objects
Authorization: Bearer <your-pat>
Content-Type: application/json

{
  "entity":   "CONTRACT",
  "level":    71000,
  "comboKey": "SUB:<your-sub-id>|ENT:",
  "name":        "Example value",
  "status":      "draft",
  "contractType": "nec4_ecc",
  "description": "Example value"
}

Listing Contracts

GET /v1/entities/CONTRACT/SUB

See also

contractcontracts

Was this article helpful?

← Back to Knowledge Base