This spec covers the REST APIs that powers Cercula's own frontend, which is also available to third-parties for building integrations.
This documentation is generated from the main specification definition, available on GitHub.
For more information about the API, contact Cercula.
The following describes the data model of Cercula's core entities, which power the user-facing frontend web app as well as any API-driven flows.
┌─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│ ___ _ ___ _ _ _ ___ _ _ _ _ _ ___ _ │
│ / __|___ _ _ __ _ _| |__ _ | __|_ _| |_(_) |_ _ _ | _ \___| |__ _| |_(_)___ _ _ __| |_ (_)_ __ | \(_)__ _ __ _ _ _ __ _ _ __ │
│ | (__/ -_) '_/ _| || | / _` | | _|| ' \ _| | _| || | | / -_) / _` | _| / _ \ ' \(_-< ' \| | '_ \ | |) | / _` / _` | '_/ _` | ' \ │
│ \___\___|_| \__|\_,_|_\__,_| |___|_||_\__|_|\__|\_, | |_|_\___|_\__,_|\__|_\___/_||_/__/_||_|_| .__/ |___/|_\__,_\__, |_| \__,_|_|_|_| │
│ |__/ |_| |___/ │
└─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
┌────────┐ ╱┌────────┐ ╱┌────────┐ ╱┌──────────┐
│Project │┼───────────┼──│ Report │┼○─────┼──│ Batch │┼○───○─│GWP Search│
└────────┘ ╲└────────┘ ╲└────────┘ ╲└──────────┘
╲│╱ ┼ ┼
○ │ │
│ │ │
│ │ │
┼ │ ○
┌────────────┐ ┼ ┼
│Organisation│ ┌───────┐ ╱┌────────┐
└────────────┘ │ Stack │┼─────○─│ Row │
┼ └───────┘ ╲└────────┘
│
┼
╱│╲
┌────────┐
│ User │
└────────┘
The Cercula data model is primarily oriented around the notion of construction "projects", each of which may contain one or more "reports". An organisation may have multiple projects, where a project represents the construction project being built (a house or block of houses, an apartment building, a school, or a highway, for example). Some core properties of a project, like gross internal floor area (GIFA), will affect the carbon values.
For one project, the organisation may choose to upload multiple reports (to compare carbon values across different designs).
A GWP calculation is broken into multiple steps, each with an intermediate data type.
Therefore the relations can be described as:
All endpoints expect an Authorization
header containing a Bearer token. For example, Authorization: Bearer <TOKEN>
.
description required | string Description of the material the GWP will be calulated for |
quantity | number > 0 Quantity of the material |
unit required | string Quantity of the material |
length | number > 0 Length of the material (mm) |
width | number > 0 Width of the material (mm) |
height | number > 0 Height/thickness of the material (mm) |
batchUuid | string <uuid> The UUID of the batch associated with this search |
originPostcode | string The postcode of the construction project |
gifa | number > 0 The "gross internal floor area" of the building |
object or null |
{- "description": "blockwork internal walls",
- "quantity": 72,
- "unit": "m2",
- "length": 0,
- "width": 0,
- "height": 0,
- "batchUuid": "fc04296f-170f-455b-bff8-c6d7a5e9f76f",
- "originPostcode": "string",
- "gifa": 0,
- "metaData": {
- "property1": "string",
- "property2": "string"
}
}
{- "matchDescription": "100 mm thickness wall, single skin AAC concrete block, average strength, inc. mortar, Not inc. construction waste",
- "materialId": 0,
- "unit": "m2",
- "estimatedMaterialClass": {
- "name": "string",
- "determinedBy": "string"
}, - "description": "blockwork internal walls",
- "quantity": 72,
- "length": 0,
- "width": 0,
- "height": 0,
- "batchUuid": "fc04296f-170f-455b-bff8-c6d7a5e9f76f",
- "originPostcode": "string",
- "gifa": 0,
- "metaData": {
- "property1": "string",
- "property2": "string"
}, - "gwp": 1219.372785413016,
- "gwpAbsoluteUncertainty": 0,
- "gwpRelativeUncertainty": 0,
- "a1A3": 0,
- "a4": 0,
- "a5": 0,
- "b1": 0,
- "b2": 0,
- "b3": 0,
- "b4": 0,
- "c2": 0,
- "c3": 0,
- "c4": 0,
- "d": 0,
- "a1A3Uncertainty": 0,
- "a4Uncertainty": 0,
- "a5Uncertainty": 0,
- "b1Uncertainty": 0,
- "b2Uncertainty": 0,
- "b3Uncertainty": 0,
- "b4Uncertainty": 0,
- "c2Uncertainty": 0,
- "c3Uncertainty": 0,
- "c4Uncertainty": 0,
- "dUncertainty": 0,
- "assumedDensity": 0,
- "assumedHeight": 0,
- "assumedWidth": 0,
- "assumedLength": 0,
- "assumedServiceLife": 0,
- "roadTransportDistanceKM": 0,
- "roadTransportCarbonFactor": 0,
- "seaTransportCarbonFactor": 0,
- "seaTransportDistanceKM": 0,
- "landfillRatio": 0,
- "landfillAssumedTransportDistance": 0,
- "incinerationRatio": 0,
- "incinerationAssumedTransportDistance": 0,
- "recyclingOffSiteRatio": 0,
- "recyclingOffSiteAssumedTransportDistance": 0,
- "recyclingOnSiteAssumedTransportDistance": 0,
- "recyclingOnSiteRatio": 0,
- "c3DisposalEmissionFactor": 0,
- "c4DisposalEmissionFactor": 0
}
Returns a batch uuid to associate with further batch requests
{ }
{- "batchUuid": "fc04296f-170f-455b-bff8-c6d7a5e9f76f"
}
uuid required | string <uuid> |
{ }
{- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "complete": true
}
[- {
- "createdAt": "2019-08-24T14:15:22Z",
- "deleted": true,
- "gifa": 0,
- "id": 0,
- "latitude": 0,
- "longitude": 0,
- "name": "string",
- "organisationUuid": "string",
- "postcode": "string",
- "reports": [
- {
- "checked": true,
- "createdAt": "2019-08-24T14:15:22Z",
- "deleted": true,
- "fileLocation": "string",
- "fileName": "string",
- "id": 0,
- "name": "string",
- "projectId": 0,
- "totalGwp": 0,
- "updatedAt": "2019-08-24T14:15:22Z",
- "userId": 0,
- "uuid": "string",
- "validated": true
}
], - "ribaStage": 0,
- "sector": "string",
- "updatedAt": "2019-08-24T14:15:22Z",
- "uuid": "string",
- "validated": true,
- "valueOfWorks": 0,
- "floors": 0,
- "country": "string",
- "city": "string",
- "address1": "string",
- "estimatedCompletionDate": "2019-08-24T14:15:22Z"
}
]
name required | string |
ribaStage required | number Enum: 0 1 2 3 4 5 6 7 |
sector required | string |
floors required | number |
gifa required | number |
valueOfWorks required | number |
country required | string |
city required | string |
address1 required | string |
postcode required | string |
estimatedCompletionDate required | string <date-time> |
{- "name": "string",
- "ribaStage": 0,
- "sector": "string",
- "floors": 0,
- "gifa": 0,
- "valueOfWorks": 0,
- "country": "string",
- "city": "string",
- "address1": "string",
- "postcode": "string",
- "estimatedCompletionDate": "2019-08-24T14:15:22Z"
}
"string"
uuid required | string |
name | string |
ribaStage | number Enum: 0 1 2 3 4 5 6 7 |
sector | string |
floors | number |
country | string |
city | string |
address1 | string |
postcode | string |
estimatedCompletionDate | string <date-time> |
{- "name": "string",
- "ribaStage": 0,
- "sector": "string",
- "floors": 0,
- "country": "string",
- "city": "string",
- "address1": "string",
- "postcode": "string",
- "estimatedCompletionDate": "2019-08-24T14:15:22Z"
}
{- "createdAt": "2019-08-24T14:15:22Z",
- "deleted": true,
- "gifa": 0,
- "id": 0,
- "latitude": 0,
- "longitude": 0,
- "name": "string",
- "organisationUuid": "string",
- "postcode": "string",
- "reports": [
- {
- "checked": true,
- "createdAt": "2019-08-24T14:15:22Z",
- "deleted": true,
- "fileLocation": "string",
- "fileName": "string",
- "id": 0,
- "name": "string",
- "projectId": 0,
- "totalGwp": 0,
- "updatedAt": "2019-08-24T14:15:22Z",
- "userId": 0,
- "uuid": "string",
- "validated": true
}
], - "ribaStage": 0,
- "sector": "string",
- "updatedAt": "2019-08-24T14:15:22Z",
- "uuid": "string",
- "validated": true,
- "valueOfWorks": 0,
- "floors": 0,
- "country": "string",
- "city": "string",
- "address1": "string",
- "estimatedCompletionDate": "2019-08-24T14:15:22Z"
}
uuid required | string |
[- {
- "batchUuid": "string",
- "fileLocation": "string",
- "fileName": "string",
- "gifa": 0,
- "latitude": 0,
- "logoUrl": "string",
- "longitude": 0,
- "name": "string",
- "projectName": "string",
- "organisationUuid": "string",
- "postcode": "string",
- "floors": 0,
- "country": "string",
- "city": "string",
- "address1": "string",
- "report": {
- "batch": [
- {
- "deleted": 0,
- "description": "string",
- "editCount": 0,
- "id": 0,
- "matchDescription": "string",
- "matchId": 0,
- "metaData": {
- "rics": {
- "number": "string",
- "ricsword": "string",
- "subTitle": "string",
- "title": "string",
- "isIgnored": true
}, - "rowNumber": 0,
- "suggestedMatches": [
- 0
], - "tabName": "string"
}, - "quantity": 0,
- "response": {
- "matchDescription": "100 mm thickness wall, single skin AAC concrete block, average strength, inc. mortar, Not inc. construction waste",
- "materialId": 0,
- "unit": "m2",
- "estimatedMaterialClass": {
- "name": "string",
- "determinedBy": "string"
}, - "description": "blockwork internal walls",
- "quantity": 72,
- "length": 0,
- "width": 0,
- "height": 0,
- "batchUuid": "fc04296f-170f-455b-bff8-c6d7a5e9f76f",
- "originPostcode": "string",
- "gifa": 0,
- "metaData": {
- "property1": "string",
- "property2": "string"
}, - "gwp": 1219.372785413016,
- "gwpAbsoluteUncertainty": 0,
- "gwpRelativeUncertainty": 0,
- "a1A3": 0,
- "a4": 0,
- "a5": 0,
- "b1": 0,
- "b2": 0,
- "b3": 0,
- "b4": 0,
- "c2": 0,
- "c3": 0,
- "c4": 0,
- "d": 0,
- "a1A3Uncertainty": 0,
- "a4Uncertainty": 0,
- "a5Uncertainty": 0,
- "b1Uncertainty": 0,
- "b2Uncertainty": 0,
- "b3Uncertainty": 0,
- "b4Uncertainty": 0,
- "c2Uncertainty": 0,
- "c3Uncertainty": 0,
- "c4Uncertainty": 0,
- "dUncertainty": 0,
- "assumedDensity": 0,
- "assumedHeight": 0,
- "assumedWidth": 0,
- "assumedLength": 0,
- "assumedServiceLife": 0,
- "roadTransportDistanceKM": 0,
- "roadTransportCarbonFactor": 0,
- "seaTransportCarbonFactor": 0,
- "seaTransportDistanceKM": 0,
- "landfillRatio": 0,
- "landfillAssumedTransportDistance": 0,
- "incinerationRatio": 0,
- "incinerationAssumedTransportDistance": 0,
- "recyclingOffSiteRatio": 0,
- "recyclingOffSiteAssumedTransportDistance": 0,
- "recyclingOnSiteAssumedTransportDistance": 0,
- "recyclingOnSiteRatio": 0,
- "c3DisposalEmissionFactor": 0,
- "c4DisposalEmissionFactor": 0
}, - "uniclassId": "string",
- "unit": "string"
}
], - "materials": [
- {
- "materialGwp": 0,
- "name": "string",
- "a1A3": 0,
- "a4": 0,
- "a5": 0,
- "b1": 0,
- "b2": 0,
- "b3": 0,
- "b4": 0,
- "c2": 0,
- "c3": 0,
- "c4": 0,
- "d": 0,
- "rows": [
- 0
]
}
], - "ricsCategories": [
- {
- "gwp": 0,
- "number": "string",
- "title": "string",
- "subcategories": [
- {
- "gwp": 0,
- "number": "string",
- "subTitle": "string",
- "title": "string",
- "isIgnored": true
}
]
}
], - "successfulRows": 0,
- "totalRows": 0,
- "totalGwp": 0,
- "totalA1A3": 0,
- "totalA4": 0,
- "totalA5": 0,
- "totalA5_2": 0,
- "totalA5_3": 0,
- "totalB1": 0,
- "totalB2": 0,
- "totalB3": 0,
- "totalB4": 0,
- "totalC1": 0,
- "totalC2": 0,
- "totalC3": 0,
- "totalC4": 0,
- "totalD": 0
}, - "uuid": "string",
- "valueOfWorks": 0
}
]
Gets an array of project data within an organisation - including the highest GWP for data visualisation on the frontend
[- {
- "name": "string",
- "gwp": 0,
- "gifa": 0,
- "gwpPerM2": 0,
- "numberOfReports": 0,
- "createdAt": "2019-08-24T14:15:22Z"
}
]
[- {
- "createdAt": "2019-08-24T14:15:22Z",
- "deleted": true,
- "gifa": 0,
- "id": 0,
- "latitude": 0,
- "longitude": 0,
- "name": "string",
- "organisationUuid": "string",
- "postcode": "string",
- "reports": [
- {
- "checked": true,
- "createdAt": "2019-08-24T14:15:22Z",
- "deleted": true,
- "fileLocation": "string",
- "fileName": "string",
- "id": 0,
- "name": "string",
- "projectId": 0,
- "totalGwp": 0,
- "updatedAt": "2019-08-24T14:15:22Z",
- "userId": 0,
- "uuid": "string",
- "validated": true
}
], - "ribaStage": 0,
- "sector": "string",
- "updatedAt": "2019-08-24T14:15:22Z",
- "uuid": "string",
- "validated": true,
- "valueOfWorks": 0,
- "floors": 0,
- "country": "string",
- "city": "string",
- "address1": "string",
- "estimatedCompletionDate": "2019-08-24T14:15:22Z"
}
]
{- "batchUuid": "string",
- "fileLocation": "string",
- "fileName": "string",
- "gifa": 0,
- "latitude": 0,
- "logoUrl": "string",
- "longitude": 0,
- "name": "string",
- "projectName": "string",
- "organisationUuid": "string",
- "postcode": "string",
- "floors": 0,
- "country": "string",
- "city": "string",
- "address1": "string",
- "report": {
- "batch": [
- {
- "deleted": 0,
- "description": "string",
- "editCount": 0,
- "id": 0,
- "matchDescription": "string",
- "matchId": 0,
- "metaData": {
- "rics": {
- "number": "string",
- "ricsword": "string",
- "subTitle": "string",
- "title": "string",
- "isIgnored": true
}, - "rowNumber": 0,
- "suggestedMatches": [
- 0
], - "tabName": "string"
}, - "quantity": 0,
- "response": {
- "matchDescription": "100 mm thickness wall, single skin AAC concrete block, average strength, inc. mortar, Not inc. construction waste",
- "materialId": 0,
- "unit": "m2",
- "estimatedMaterialClass": {
- "name": "string",
- "determinedBy": "string"
}, - "description": "blockwork internal walls",
- "quantity": 72,
- "length": 0,
- "width": 0,
- "height": 0,
- "batchUuid": "fc04296f-170f-455b-bff8-c6d7a5e9f76f",
- "originPostcode": "string",
- "gifa": 0,
- "metaData": {
- "property1": "string",
- "property2": "string"
}, - "gwp": 1219.372785413016,
- "gwpAbsoluteUncertainty": 0,
- "gwpRelativeUncertainty": 0,
- "a1A3": 0,
- "a4": 0,
- "a5": 0,
- "b1": 0,
- "b2": 0,
- "b3": 0,
- "b4": 0,
- "c2": 0,
- "c3": 0,
- "c4": 0,
- "d": 0,
- "a1A3Uncertainty": 0,
- "a4Uncertainty": 0,
- "a5Uncertainty": 0,
- "b1Uncertainty": 0,
- "b2Uncertainty": 0,
- "b3Uncertainty": 0,
- "b4Uncertainty": 0,
- "c2Uncertainty": 0,
- "c3Uncertainty": 0,
- "c4Uncertainty": 0,
- "dUncertainty": 0,
- "assumedDensity": 0,
- "assumedHeight": 0,
- "assumedWidth": 0,
- "assumedLength": 0,
- "assumedServiceLife": 0,
- "roadTransportDistanceKM": 0,
- "roadTransportCarbonFactor": 0,
- "seaTransportCarbonFactor": 0,
- "seaTransportDistanceKM": 0,
- "landfillRatio": 0,
- "landfillAssumedTransportDistance": 0,
- "incinerationRatio": 0,
- "incinerationAssumedTransportDistance": 0,
- "recyclingOffSiteRatio": 0,
- "recyclingOffSiteAssumedTransportDistance": 0,
- "recyclingOnSiteAssumedTransportDistance": 0,
- "recyclingOnSiteRatio": 0,
- "c3DisposalEmissionFactor": 0,
- "c4DisposalEmissionFactor": 0
}, - "uniclassId": "string",
- "unit": "string"
}
], - "materials": [
- {
- "materialGwp": 0,
- "name": "string",
- "a1A3": 0,
- "a4": 0,
- "a5": 0,
- "b1": 0,
- "b2": 0,
- "b3": 0,
- "b4": 0,
- "c2": 0,
- "c3": 0,
- "c4": 0,
- "d": 0,
- "rows": [
- 0
]
}
], - "ricsCategories": [
- {
- "gwp": 0,
- "number": "string",
- "title": "string",
- "subcategories": [
- {
- "gwp": 0,
- "number": "string",
- "subTitle": "string",
- "title": "string",
- "isIgnored": true
}
]
}
], - "successfulRows": 0,
- "totalRows": 0,
- "totalGwp": 0,
- "totalA1A3": 0,
- "totalA4": 0,
- "totalA5": 0,
- "totalA5_2": 0,
- "totalA5_3": 0,
- "totalB1": 0,
- "totalB2": 0,
- "totalB3": 0,
- "totalB4": 0,
- "totalC1": 0,
- "totalC2": 0,
- "totalC3": 0,
- "totalC4": 0,
- "totalD": 0
}, - "uuid": "string",
- "valueOfWorks": 0
}
uuid required | string |
name | string |
longitude | number or null |
latitude | number or null |
postcode | string |
valueOfWorks | number |
{- "name": "string",
- "longitude": 0,
- "latitude": 0,
- "postcode": "string",
- "valueOfWorks": 0
}
{- "batchUuid": "string",
- "fileLocation": "string",
- "fileName": "string",
- "gifa": 0,
- "latitude": 0,
- "logoUrl": "string",
- "longitude": 0,
- "name": "string",
- "projectName": "string",
- "organisationUuid": "string",
- "postcode": "string",
- "floors": 0,
- "country": "string",
- "city": "string",
- "address1": "string",
- "report": {
- "batch": [
- {
- "deleted": 0,
- "description": "string",
- "editCount": 0,
- "id": 0,
- "matchDescription": "string",
- "matchId": 0,
- "metaData": {
- "rics": {
- "number": "string",
- "ricsword": "string",
- "subTitle": "string",
- "title": "string",
- "isIgnored": true
}, - "rowNumber": 0,
- "suggestedMatches": [
- 0
], - "tabName": "string"
}, - "quantity": 0,
- "response": {
- "matchDescription": "100 mm thickness wall, single skin AAC concrete block, average strength, inc. mortar, Not inc. construction waste",
- "materialId": 0,
- "unit": "m2",
- "estimatedMaterialClass": {
- "name": "string",
- "determinedBy": "string"
}, - "description": "blockwork internal walls",
- "quantity": 72,
- "length": 0,
- "width": 0,
- "height": 0,
- "batchUuid": "fc04296f-170f-455b-bff8-c6d7a5e9f76f",
- "originPostcode": "string",
- "gifa": 0,
- "metaData": {
- "property1": "string",
- "property2": "string"
}, - "gwp": 1219.372785413016,
- "gwpAbsoluteUncertainty": 0,
- "gwpRelativeUncertainty": 0,
- "a1A3": 0,
- "a4": 0,
- "a5": 0,
- "b1": 0,
- "b2": 0,
- "b3": 0,
- "b4": 0,
- "c2": 0,
- "c3": 0,
- "c4": 0,
- "d": 0,
- "a1A3Uncertainty": 0,
- "a4Uncertainty": 0,
- "a5Uncertainty": 0,
- "b1Uncertainty": 0,
- "b2Uncertainty": 0,
- "b3Uncertainty": 0,
- "b4Uncertainty": 0,
- "c2Uncertainty": 0,
- "c3Uncertainty": 0,
- "c4Uncertainty": 0,
- "dUncertainty": 0,
- "assumedDensity": 0,
- "assumedHeight": 0,
- "assumedWidth": 0,
- "assumedLength": 0,
- "assumedServiceLife": 0,
- "roadTransportDistanceKM": 0,
- "roadTransportCarbonFactor": 0,
- "seaTransportCarbonFactor": 0,
- "seaTransportDistanceKM": 0,
- "landfillRatio": 0,
- "landfillAssumedTransportDistance": 0,
- "incinerationRatio": 0,
- "incinerationAssumedTransportDistance": 0,
- "recyclingOffSiteRatio": 0,
- "recyclingOffSiteAssumedTransportDistance": 0,
- "recyclingOnSiteAssumedTransportDistance": 0,
- "recyclingOnSiteRatio": 0,
- "c3DisposalEmissionFactor": 0,
- "c4DisposalEmissionFactor": 0
}, - "uniclassId": "string",
- "unit": "string"
}
], - "materials": [
- {
- "materialGwp": 0,
- "name": "string",
- "a1A3": 0,
- "a4": 0,
- "a5": 0,
- "b1": 0,
- "b2": 0,
- "b3": 0,
- "b4": 0,
- "c2": 0,
- "c3": 0,
- "c4": 0,
- "d": 0,
- "rows": [
- 0
]
}
], - "ricsCategories": [
- {
- "gwp": 0,
- "number": "string",
- "title": "string",
- "subcategories": [
- {
- "gwp": 0,
- "number": "string",
- "subTitle": "string",
- "title": "string",
- "isIgnored": true
}
]
}
], - "successfulRows": 0,
- "totalRows": 0,
- "totalGwp": 0,
- "totalA1A3": 0,
- "totalA4": 0,
- "totalA5": 0,
- "totalA5_2": 0,
- "totalA5_3": 0,
- "totalB1": 0,
- "totalB2": 0,
- "totalB3": 0,
- "totalB4": 0,
- "totalC1": 0,
- "totalC2": 0,
- "totalC3": 0,
- "totalC4": 0,
- "totalD": 0
}, - "uuid": "string",
- "valueOfWorks": 0
}
uuid required | string |
required | Array of objects |
{- "uuid": "string",
- "stack": [
- {
- "type": "string",
- "value": {
- "description": "string",
- "quantity": 0,
- "unit": "kilo",
- "rate": "string",
- "price": "string",
- "tabName": "string"
}, - "rowNumber": 0
}
]
}
{- "batchUuid": "string",
- "fileLocation": "string",
- "fileName": "string",
- "gifa": 0,
- "latitude": 0,
- "logoUrl": "string",
- "longitude": 0,
- "name": "string",
- "projectName": "string",
- "organisationUuid": "string",
- "postcode": "string",
- "floors": 0,
- "country": "string",
- "city": "string",
- "address1": "string",
- "report": {
- "batch": [
- {
- "deleted": 0,
- "description": "string",
- "editCount": 0,
- "id": 0,
- "matchDescription": "string",
- "matchId": 0,
- "metaData": {
- "rics": {
- "number": "string",
- "ricsword": "string",
- "subTitle": "string",
- "title": "string",
- "isIgnored": true
}, - "rowNumber": 0,
- "suggestedMatches": [
- 0
], - "tabName": "string"
}, - "quantity": 0,
- "response": {
- "matchDescription": "100 mm thickness wall, single skin AAC concrete block, average strength, inc. mortar, Not inc. construction waste",
- "materialId": 0,
- "unit": "m2",
- "estimatedMaterialClass": {
- "name": "string",
- "determinedBy": "string"
}, - "description": "blockwork internal walls",
- "quantity": 72,
- "length": 0,
- "width": 0,
- "height": 0,
- "batchUuid": "fc04296f-170f-455b-bff8-c6d7a5e9f76f",
- "originPostcode": "string",
- "gifa": 0,
- "metaData": {
- "property1": "string",
- "property2": "string"
}, - "gwp": 1219.372785413016,
- "gwpAbsoluteUncertainty": 0,
- "gwpRelativeUncertainty": 0,
- "a1A3": 0,
- "a4": 0,
- "a5": 0,
- "b1": 0,
- "b2": 0,
- "b3": 0,
- "b4": 0,
- "c2": 0,
- "c3": 0,
- "c4": 0,
- "d": 0,
- "a1A3Uncertainty": 0,
- "a4Uncertainty": 0,
- "a5Uncertainty": 0,
- "b1Uncertainty": 0,
- "b2Uncertainty": 0,
- "b3Uncertainty": 0,
- "b4Uncertainty": 0,
- "c2Uncertainty": 0,
- "c3Uncertainty": 0,
- "c4Uncertainty": 0,
- "dUncertainty": 0,
- "assumedDensity": 0,
- "assumedHeight": 0,
- "assumedWidth": 0,
- "assumedLength": 0,
- "assumedServiceLife": 0,
- "roadTransportDistanceKM": 0,
- "roadTransportCarbonFactor": 0,
- "seaTransportCarbonFactor": 0,
- "seaTransportDistanceKM": 0,
- "landfillRatio": 0,
- "landfillAssumedTransportDistance": 0,
- "incinerationRatio": 0,
- "incinerationAssumedTransportDistance": 0,
- "recyclingOffSiteRatio": 0,
- "recyclingOffSiteAssumedTransportDistance": 0,
- "recyclingOnSiteAssumedTransportDistance": 0,
- "recyclingOnSiteRatio": 0,
- "c3DisposalEmissionFactor": 0,
- "c4DisposalEmissionFactor": 0
}, - "uniclassId": "string",
- "unit": "string"
}
], - "materials": [
- {
- "materialGwp": 0,
- "name": "string",
- "a1A3": 0,
- "a4": 0,
- "a5": 0,
- "b1": 0,
- "b2": 0,
- "b3": 0,
- "b4": 0,
- "c2": 0,
- "c3": 0,
- "c4": 0,
- "d": 0,
- "rows": [
- 0
]
}
], - "ricsCategories": [
- {
- "gwp": 0,
- "number": "string",
- "title": "string",
- "subcategories": [
- {
- "gwp": 0,
- "number": "string",
- "subTitle": "string",
- "title": "string",
- "isIgnored": true
}
]
}
], - "successfulRows": 0,
- "totalRows": 0,
- "totalGwp": 0,
- "totalA1A3": 0,
- "totalA4": 0,
- "totalA5": 0,
- "totalA5_2": 0,
- "totalA5_3": 0,
- "totalB1": 0,
- "totalB2": 0,
- "totalB3": 0,
- "totalB4": 0,
- "totalC1": 0,
- "totalC2": 0,
- "totalC3": 0,
- "totalC4": 0,
- "totalD": 0
}, - "uuid": "string",
- "valueOfWorks": 0
}
uuid required | string <uuid> |
required | Array of objects |
batchUuid required | string <uuid> |
{- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "output": [
- {
- "description": "string",
- "quantity": 0,
- "unit": "kilo",
- "tabName": "string",
- "rowNumber": 0,
- "rics": {
- "ricsword": "string",
- "title": "string",
- "subTitle": "string",
- "number": "string",
- "isIgnored": true
}, - "price": "string",
- "rate": "string",
- "carbon": {
- "matchDescription": "100 mm thickness wall, single skin AAC concrete block, average strength, inc. mortar, Not inc. construction waste",
- "materialId": 0,
- "unit": "m2",
- "estimatedMaterialClass": {
- "name": "string",
- "determinedBy": "string"
}, - "description": "blockwork internal walls",
- "quantity": 72,
- "length": 0,
- "width": 0,
- "height": 0,
- "batchUuid": "fc04296f-170f-455b-bff8-c6d7a5e9f76f",
- "originPostcode": "string",
- "gifa": 0,
- "metaData": {
- "property1": "string",
- "property2": "string"
}, - "gwp": 1219.372785413016,
- "gwpAbsoluteUncertainty": 0,
- "gwpRelativeUncertainty": 0,
- "a1A3": 0,
- "a4": 0,
- "a5": 0,
- "b1": 0,
- "b2": 0,
- "b3": 0,
- "b4": 0,
- "c2": 0,
- "c3": 0,
- "c4": 0,
- "d": 0,
- "a1A3Uncertainty": 0,
- "a4Uncertainty": 0,
- "a5Uncertainty": 0,
- "b1Uncertainty": 0,
- "b2Uncertainty": 0,
- "b3Uncertainty": 0,
- "b4Uncertainty": 0,
- "c2Uncertainty": 0,
- "c3Uncertainty": 0,
- "c4Uncertainty": 0,
- "dUncertainty": 0,
- "assumedDensity": 0,
- "assumedHeight": 0,
- "assumedWidth": 0,
- "assumedLength": 0,
- "assumedServiceLife": 0,
- "roadTransportDistanceKM": 0,
- "roadTransportCarbonFactor": 0,
- "seaTransportCarbonFactor": 0,
- "seaTransportDistanceKM": 0,
- "landfillRatio": 0,
- "landfillAssumedTransportDistance": 0,
- "incinerationRatio": 0,
- "incinerationAssumedTransportDistance": 0,
- "recyclingOffSiteRatio": 0,
- "recyclingOffSiteAssumedTransportDistance": 0,
- "recyclingOnSiteAssumedTransportDistance": 0,
- "recyclingOnSiteRatio": 0,
- "c3DisposalEmissionFactor": 0,
- "c4DisposalEmissionFactor": 0
}
}
], - "batchUuid": "fc04296f-170f-455b-bff8-c6d7a5e9f76f"
}
0
projectId required | number |
fileName required | string |
file required | string |
name | string |
{- "projectId": 0,
- "fileName": "string",
- "file": "string",
- "name": "string"
}
1
link required | string |
fileName required | string |
organisation required | string |
to required | Array of strings <email> |
{- "link": "string",
- "fileName": "string",
- "organisation": "string",
- "to": [
- "user@example.com"
]
}
{ }
[- {
- "createdAt": "2019-08-24T14:15:22Z",
- "name": "string",
- "fileLocation": "string",
- "fileName": "string",
- "totalGwp": 0,
- "type": "report",
- "userName": "string",
- "uuid": "string",
- "validated": true,
- "projectName": "string"
}
]
[- {
- "deleted": 0,
- "description": "string",
- "editCount": 0,
- "id": 0,
- "matchDescription": "string",
- "matchId": 0,
- "metaData": {
- "rics": {
- "number": "string",
- "ricsword": "string",
- "subTitle": "string",
- "title": "string",
- "isIgnored": true
}, - "rowNumber": 0,
- "suggestedMatches": [
- 0
], - "tabName": "string"
}, - "quantity": 0,
- "response": {
- "matchDescription": "100 mm thickness wall, single skin AAC concrete block, average strength, inc. mortar, Not inc. construction waste",
- "materialId": 0,
- "unit": "m2",
- "estimatedMaterialClass": {
- "name": "string",
- "determinedBy": "string"
}, - "description": "blockwork internal walls",
- "quantity": 72,
- "length": 0,
- "width": 0,
- "height": 0,
- "batchUuid": "fc04296f-170f-455b-bff8-c6d7a5e9f76f",
- "originPostcode": "string",
- "gifa": 0,
- "metaData": {
- "property1": "string",
- "property2": "string"
}, - "gwp": 1219.372785413016,
- "gwpAbsoluteUncertainty": 0,
- "gwpRelativeUncertainty": 0,
- "a1A3": 0,
- "a4": 0,
- "a5": 0,
- "b1": 0,
- "b2": 0,
- "b3": 0,
- "b4": 0,
- "c2": 0,
- "c3": 0,
- "c4": 0,
- "d": 0,
- "a1A3Uncertainty": 0,
- "a4Uncertainty": 0,
- "a5Uncertainty": 0,
- "b1Uncertainty": 0,
- "b2Uncertainty": 0,
- "b3Uncertainty": 0,
- "b4Uncertainty": 0,
- "c2Uncertainty": 0,
- "c3Uncertainty": 0,
- "c4Uncertainty": 0,
- "dUncertainty": 0,
- "assumedDensity": 0,
- "assumedHeight": 0,
- "assumedWidth": 0,
- "assumedLength": 0,
- "assumedServiceLife": 0,
- "roadTransportDistanceKM": 0,
- "roadTransportCarbonFactor": 0,
- "seaTransportCarbonFactor": 0,
- "seaTransportDistanceKM": 0,
- "landfillRatio": 0,
- "landfillAssumedTransportDistance": 0,
- "incinerationRatio": 0,
- "incinerationAssumedTransportDistance": 0,
- "recyclingOffSiteRatio": 0,
- "recyclingOffSiteAssumedTransportDistance": 0,
- "recyclingOnSiteAssumedTransportDistance": 0,
- "recyclingOnSiteRatio": 0,
- "c3DisposalEmissionFactor": 0,
- "c4DisposalEmissionFactor": 0
}, - "uniclassId": "string",
- "unit": "string"
}
]
{- "createdAt": "2019-08-24T14:15:22Z",
- "email": "string",
- "isOrgAdmin": true,
- "name": "string",
- "organisationId": 0,
- "organisationLogoUrl": "string",
- "organisationMonthlyReports": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "fileLocation": "string",
- "fileName": "string",
- "userName": "string",
- "uuid": "string",
- "validated": true
}
], - "organisationName": "string",
- "organisationUsers": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "isOrgAdmin": true,
- "name": "string",
- "email": "string"
}
], - "organisationStripeCustomerId": "string",
- "paymentMandate": null,
- "phone": "string",
- "subscriptionType": "trial",
- "subscriptionBrandedReports": true,
- "subscriptionId": 0,
- "subscriptionMaxUsers": 0,
- "subscriptionMonthlyPrice": 0,
- "subscriptionName": "string",
- "subscriptionPaymentType": "free",
- "subscriptionReportsPerMonth": 0,
- "subscriptionTier": "string",
- "subscriptionYearlyPrice": 0
}
name required | string The user's name |
phone required | string The user's phone number |
email required | string <email> The user's email address, also used as the login username |
isOrgAdmin required | boolean Whether or not the user is an admin of their organisation |
organisationId required | number The organisation ID for the organisation with which the user is associated |
{- "name": "string",
- "phone": "string",
- "email": "user@example.com",
- "isOrgAdmin": true,
- "organisationId": 0
}
{- "createdAt": "2019-08-24T14:15:22Z",
- "email": "string",
- "isOrgAdmin": true,
- "name": "string",
- "organisationId": 0,
- "organisationLogoUrl": "string",
- "organisationMonthlyReports": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "fileLocation": "string",
- "fileName": "string",
- "userName": "string",
- "uuid": "string",
- "validated": true
}
], - "organisationName": "string",
- "organisationUsers": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "isOrgAdmin": true,
- "name": "string",
- "email": "string"
}
], - "organisationStripeCustomerId": "string",
- "paymentMandate": null,
- "phone": "string",
- "subscriptionType": "trial",
- "subscriptionBrandedReports": true,
- "subscriptionId": 0,
- "subscriptionMaxUsers": 0,
- "subscriptionMonthlyPrice": 0,
- "subscriptionName": "string",
- "subscriptionPaymentType": "free",
- "subscriptionReportsPerMonth": 0,
- "subscriptionTier": "string",
- "subscriptionYearlyPrice": 0
}
uuid required | string The user's uuid |
name required | string The user's name |
email required | string The user's email address |
{- "uuid": "string",
- "name": "string",
- "email": "string"
}
{- "createdAt": "2019-08-24T14:15:22Z",
- "email": "string",
- "isOrgAdmin": true,
- "name": "string",
- "organisationId": 0,
- "organisationLogoUrl": "string",
- "organisationMonthlyReports": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "fileLocation": "string",
- "fileName": "string",
- "userName": "string",
- "uuid": "string",
- "validated": true
}
], - "organisationName": "string",
- "organisationUsers": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "isOrgAdmin": true,
- "name": "string",
- "email": "string"
}
], - "organisationStripeCustomerId": "string",
- "paymentMandate": null,
- "phone": "string",
- "subscriptionType": "trial",
- "subscriptionBrandedReports": true,
- "subscriptionId": 0,
- "subscriptionMaxUsers": 0,
- "subscriptionMonthlyPrice": 0,
- "subscriptionName": "string",
- "subscriptionPaymentType": "free",
- "subscriptionReportsPerMonth": 0,
- "subscriptionTier": "string",
- "subscriptionYearlyPrice": 0
}
oldPassword required | string |
newPassword required | string |
{- "oldPassword": "string",
- "newPassword": "string"
}
{- "createdAt": "2019-08-24T14:15:22Z",
- "email": "string",
- "isOrgAdmin": true,
- "name": "string",
- "organisationId": 0,
- "organisationLogoUrl": "string",
- "organisationMonthlyReports": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "fileLocation": "string",
- "fileName": "string",
- "userName": "string",
- "uuid": "string",
- "validated": true
}
], - "organisationName": "string",
- "organisationUsers": [
- {
- "createdAt": "2019-08-24T14:15:22Z",
- "isOrgAdmin": true,
- "name": "string",
- "email": "string"
}
], - "organisationStripeCustomerId": "string",
- "paymentMandate": null,
- "phone": "string",
- "subscriptionType": "trial",
- "subscriptionBrandedReports": true,
- "subscriptionId": 0,
- "subscriptionMaxUsers": 0,
- "subscriptionMonthlyPrice": 0,
- "subscriptionName": "string",
- "subscriptionPaymentType": "free",
- "subscriptionReportsPerMonth": 0,
- "subscriptionTier": "string",
- "subscriptionYearlyPrice": 0
}
staging required | boolean If true, staging (non-production) data will be used |
fileId required | string <uuid> |
fileType required | string |
required | Array of objects |
{- "staging": true,
- "fileId": "a1c6a2ab-4b01-4253-b4c9-70e04b3b48fc",
- "fileType": "string",
- "batch": [
- {
- "deleted": 0,
- "description": "string",
- "editCount": 0,
- "id": 0,
- "matchDescription": "string",
- "matchId": 0,
- "metaData": {
- "rics": {
- "number": "string",
- "ricsword": "string",
- "subTitle": "string",
- "title": "string",
- "isIgnored": true
}, - "rowNumber": 0,
- "suggestedMatches": [
- 0
], - "tabName": "string"
}, - "quantity": 0,
- "response": {
- "matchDescription": "100 mm thickness wall, single skin AAC concrete block, average strength, inc. mortar, Not inc. construction waste",
- "materialId": 0,
- "unit": "m2",
- "estimatedMaterialClass": {
- "name": "string",
- "determinedBy": "string"
}, - "description": "blockwork internal walls",
- "quantity": 72,
- "length": 0,
- "width": 0,
- "height": 0,
- "batchUuid": "fc04296f-170f-455b-bff8-c6d7a5e9f76f",
- "originPostcode": "string",
- "gifa": 0,
- "metaData": {
- "property1": "string",
- "property2": "string"
}, - "gwp": 1219.372785413016,
- "gwpAbsoluteUncertainty": 0,
- "gwpRelativeUncertainty": 0,
- "a1A3": 0,
- "a4": 0,
- "a5": 0,
- "b1": 0,
- "b2": 0,
- "b3": 0,
- "b4": 0,
- "c2": 0,
- "c3": 0,
- "c4": 0,
- "d": 0,
- "a1A3Uncertainty": 0,
- "a4Uncertainty": 0,
- "a5Uncertainty": 0,
- "b1Uncertainty": 0,
- "b2Uncertainty": 0,
- "b3Uncertainty": 0,
- "b4Uncertainty": 0,
- "c2Uncertainty": 0,
- "c3Uncertainty": 0,
- "c4Uncertainty": 0,
- "dUncertainty": 0,
- "assumedDensity": 0,
- "assumedHeight": 0,
- "assumedWidth": 0,
- "assumedLength": 0,
- "assumedServiceLife": 0,
- "roadTransportDistanceKM": 0,
- "roadTransportCarbonFactor": 0,
- "seaTransportCarbonFactor": 0,
- "seaTransportDistanceKM": 0,
- "landfillRatio": 0,
- "landfillAssumedTransportDistance": 0,
- "incinerationRatio": 0,
- "incinerationAssumedTransportDistance": 0,
- "recyclingOffSiteRatio": 0,
- "recyclingOffSiteAssumedTransportDistance": 0,
- "recyclingOnSiteAssumedTransportDistance": 0,
- "recyclingOnSiteRatio": 0,
- "c3DisposalEmissionFactor": 0,
- "c4DisposalEmissionFactor": 0
}, - "uniclassId": "string",
- "unit": "string"
}
]
}
{- "statusCode": 401,
- "payload": {
- "statusCode": 401,
- "error": "Unauthorized",
- "message": "string"
}
}
template required | string |
required | object |
{- "template": "string",
- "report": {
- "name": "string",
- "postcode": "string",
- "value": 0,
- "totalGwp": 0,
- "carMiles": 0,
- "gwpPerM2": 0,
- "ribaScore": "A++",
- "ribaIcon": "fa-exclamation-triangle",
- "materials": [
- {
- "materialGwp": 0,
- "name": "string",
- "a1A3": 0,
- "a4": 0,
- "a5": 0,
- "b1": 0,
- "b2": 0,
- "b3": 0,
- "b4": 0,
- "c2": 0,
- "c3": 0,
- "c4": 0,
- "d": 0,
- "rows": [
- 0
]
}
]
}
}
"string"