Building
Familiarize yourself with particulars of the building endpoint.
Description
A building refers to a physical structure or real estate asset that the company focuses on managing, optimizing and analyzing through its digital platform. Building data can be pushed to the BuildingMinds Platform via this API.
Add buildings
POST Request: {{BASE_URL}}/building
Pre-Requisite: For a building to be added via BuildingMinds API, an address must be on-boarded with an AddressIds and a site with that address must be on-boarded with a siteId.
- For the building to be on-boarded, {{addressID}} from the related address and {{siteID}} from the related site are required.
- If you create a building with a random Address or site ID, it will remain in a NEW state. An address and a site with the specified IDs must be successfully created before the building can proceed to a COMPLETED state.
Field Attributes
Field | Type | Description |
---|---|---|
addressIds | string | Array of address Ids. minLength: 1; maxLength: 50 |
airConditioning | boolean | Does the building have air conditioning (Y/N) ? |
buildingCode | string | User specific Building Code; minLength: 1; maxLength: 70 |
buildingId | string | Unique identifier; must either originate from the previous system or be explicitly defined minLength: 1; maxLength: 50 (mandatory) |
buildingPermitDate | string | Building permit date in yyyy-mm-ddThh:mm:ssZ form (conform to ISO 8061). minLength: 20 |
certificateIds | string, array | Array of certificate Ids. minLength: 1; maxLength: 50 |
constructionYear | string | Year of construction in yyyy-mm-ddThh:mm:ssZ form (conform ISO 8061). In case only year exists use yyyy-01-01 00:00:00.Z. minLength: 20 |
electricVehicleChargingStations | number | Number of electric vehicle charging stations. maximum: 9999 |
energyEfficiencyClass | string | Energy Efficiency Class of Building. minLength: 1; maxLength: 50 |
energyRatingIds | string, array | Array of energyRating Ids. minLength: 1; maxLength: 50 |
eventType | string,enum | Type of the event as specific domain event. Options: BuildingAdded, BuildingUpdated, BuildingDeleted |
expectedLifeEndDate | string | The expected end date of the Building's lifecycle in yyyy-mm-ddThh:mm:ssZ form (conform to ISO 8061). minLength: 20 |
extensionData | json | Extension data for storing any custom data |
fossilFuelExposure | string,enum | Fossil fuel exposure and its kind if known. Options: Extraction, Storage, Transport, Manufacture, Other, Not exposed |
monumentProtection | boolean | Is the building declared as an ancient monument with national importance by the government (Y/N) ? |
name | string | User specific building name e.g: EMEA Headquarter, Office Berlin; minLength: 1; maxLength: 200 (mandatory) |
netZeroEnergyBuilding | boolean | Is the building a net zero energy building (Y/N)? |
numberOfEmployees | number | Number of employees. maximum: 999999 |
parkingSpaces | number | Number of parking spaces. maximum: 9999 |
percentageOfOwnership | number | Percentage of ownership. maximum: 100 |
primaryEnergyType | string,enum | Type of energy used. Options: Natural Gas, Coal, Nuclear, Petroleum, Hydropower, Wind, Biomass, Geothermal, Solar |
primaryHeatingType | string,enum | Primary Type of heating. Options: District heating, Natural gas, Oil-based fuels, Solar thermal, Unspecified, Heat pump, Electricity (radiator), Biomass, Micro combined heat and power, Geothermal |
primaryTypeOfBuilding | string,enum | Type of building use. Options: Retail, Retail, High Street, Retail, Retail Centers, Retail, Shopping Center, Retail, Strip Mall, Retail, Lifestyle Center, Retail, Warehouse, Retail, Restaurants/Bars, Retail, Other, Office, Office, Corporate, Office, Low-Rise Office, Office, Mid-Rise Office, Office, High-Rise Office, Office, Medical Office, Office, Business Park, Office, Other, Industrial, Industrial, Distribution Warehouse, Industrial, Industrial Park, Industrial, Manufacturing, Industrial, Other, Residential, Residential, Multi-Family, Residential, Low-Rise Multi-Family, Residential, Mid-Rise Multi-Family, Residential, High-Rise Multi-Family, Residential, Family Homes, Residential, Student Housing, Residential, Retirement Living, Residential, Other, Hotel, Lodging, Leisure & Recreation, Lodging, Leisure & Recreation, Indoor Arena, Lodging, Leisure & Recreation, Fitness Center, Lodging, Leisure & Recreation, Performing Arts, Lodging, Leisure & Recreation, Swimming Center, Lodging, Leisure & Recreation, Museum/Gallery, Lodging, Leisure & Recreation, Other, Education, Education, School, Education, University, Education, Library, Education, Other, Technology/Science, Technology/Science, Data Center, Technology/Science, Laboratory/Life sciences, Technology/Science, Other, Health Care, Health Care, Health Care Center, Health Care, Senior Homes, Health Care, Other, Mixed Use, Mixed Use, Office/Retail, Mixed Use, Office/Residential, Mixed Use, Office/Industrial, Mixed Use, Other, Other, Other, Parking (Indoors), Other, Self-Storage, Industrial, Refrigerated Warehouse, Industrial, Non-refrigerated Warehouse (mandatory) |
primaryWaterType | string | Type of water used. minLength: 1; maxLength: 50 |
secondaryHeatingType | string,enum | Secondary Type of heating Options: District heating, Natural gas, Oil-based fuels, Solar thermal, Unspecified, Heat pump, Electricity (radiator), Biomass, Micro combined heat and power |
secondaryTypeOfBuilding | string,enum | Second type of building used Options: Retail, Retail, High Street, Retail, Retail Centers, Retail, Shopping Center, Retail, Strip Mall, Retail, Lifestyle Center, Retail, Warehouse, Retail, Restaurants/Bars, Retail, Other, Office, Office, Corporate, Office, Low-Rise Office, Office, Mid-Rise Office, Office, High-Rise Office, Office, Medical Office, Office, Business Park, Office, Other, Industrial, Industrial, Distribution Warehouse, Industrial, Industrial Park, Industrial, Manufacturing, Industrial, Other, Residential, Residential, Multi-Family, Residential, Low-Rise Multi-Family, Residential, Mid-Rise Multi-Family, Residential, High-Rise Multi-Family, Residential, Family Homes, Residential, Student Housing, Residential, Retirement Living, Residential, Other, Hotel, Lodging, Leisure & Recreation, Lodging, Leisure & Recreation, Indoor Arena, Lodging, Leisure & Recreation, Fitness Center, Lodging, Leisure & Recreation, Performing Arts, Lodging, Leisure & Recreation, Swimming Center, Lodging, Leisure & Recreation, Museum/Gallery, Lodging, Leisure & Recreation, Other, Education, Education, School, Education, University, Education, Library, Education, Other, Technology/Science, Technology/Science, Data Center, Technology/Science, Laboratory/Life sciences, Technology/Science, Other, Health Care, Health Care, Health Care Center, Health Care, Senior Homes, Health Care, Other, Mixed Use, Mixed Use, Office/Retail, Mixed Use, Office/Residential, Mixed Use, Office/Industrial, Mixed Use, Other, Other, Other, Parking (Indoors), Other, Self-Storage, Industrial, Refrigerated Warehouse, Industrial, Non-refrigerated Warehouse |
selfUse | boolean | Is the building self-used or not? (Y/N) |
siteId | string | Refers to the site which the building belongs to. minLength: 1 ; maxLength: 50 (mandatory) |
status | string | Status of building minLength: 1; maxLength: 50 |
tenantStructure | string,enum | Are there multiple tenants in the building or only one? Options: Single-tenant, Multi-tenant |
typeOfOwnership | string | Is the building owned or leased? Options: Owner, Tenant (mandatory) |
validFrom | string | The records can be used from this date onwards in yyyy-mm-ddThh:mm:ssZ form (conform to ISO 8061) minLength: 20 (mandatory) |
validUntil | string | The records can be used from this date onwards in yyyy-mm-ddThh:mm:ssZ form (conform to ISO 8061) minLength: 20 (mandatory) |
valuationIds | string, array | Array of valuation Ids minLength: 1; maxLength: 50 |
yearOfLastRefurbishment | string | Year last refurbishment took place in yyyy-mm-ddThh:mm:ssZ form (conform ISO 8061). In case only year exists use yyyy-01-01T00:00:00Z minLength: 20 |
Sample payload
[
{
"addressIds": [
"{{addressUID}}"
],
"airConditioning": true,
"buildingCode": "abc123",
"buildingId": "{{buildingUID}}",
"certificateIds": [
"cert-123"
],
"constructionYear": "{{validFromDate}}",
"electricVehicleChargingStations": 10,
"energyEfficiencyClass": "e class",
"energyRatingIds": [
"123-C"
],
"eventType": "BuildingAdded",
"extensionData": {
"remark": "aca",
"aoFunctionName": "wsw",
"aoFunctionCode": "7yjy",
"gbScope": "n65g",
"architecturalObjectId": "12s3-12",
"statusId": 1
},
"fossilFuelExposure": "Extraction",
"monumentProtection": true,
"name": "Onboarding building {{$randomUserName}}",
"netZeroEnergyBuilding": true,
"numberOfEmployees": 10,
"parkingSpaces": 20,
"percentageOfOwnership": 10,
"primaryEnergyType": "Natural Gas",
"primaryHeatingType": "District heating",
"primaryTypeOfBuilding": "Retail",
"primaryWaterType": "hard",
"secondaryHeatingType": "District heating",
"secondaryTypeOfBuilding": "Retail",
"selfUse": true,
"siteId": "{{siteUID}}",
"status": "123",
"tenantStructure": "Single-tenant",
"typeOfOwnership": "Owner",
"validFrom": "{{validFromDate}}",
"validUntil": "{{validUntilDate}}",
"valuationIds": [
"abc-123"
],
"yearOfLastRefurbishment": "{{validUntilDate}}",
"buildingPermitDate": "{{validFromDate}}"
}
]
Update building
For the building to be updated, {{addressID}} from the related address and {{siteID}} from the related site are required.
- If you try to update a building with a random address or site ID, it will remain in NEW state. An address and a site with the specified IDs must be successfully created before the building can proceed to a COMPLETED state.
- The only change will be in the eventType: BuildingUpdated.
POST Request:{{BASE_URL}}/building
[
{
"addressIds": [
"{{addressUID}}"
],
"eventType": " BuildingUpdated",
"buildingId": "{{ONBOARDED_BUILDING}}",
"name": "Edited {{ONBOARDED_BUILDING_NAME}}",
"primaryTypeOfBuilding": "Hotel",
"siteId": "{{ONBOARDED_SITE}}",
"typeOfOwnership": "Tenant",
"validFrom": "{{validFromDate}}",
"validUntil": "{{validUntilDate}}"
}
]
Delete building
Most of the schema will be the same as the adding building and this will be a POST request too, but the only change will be in the eventType: BuildingDeleted.
- For the building to be deleted, {{addressID}} from the related address and {{siteID}} from the related site are required.
- In case you delete a building, only the building will be deleted and not the on-boarded address or site.
POST Request:{{BASE_URL}}/building
[
{
"addressIds": [
"{{addressUID}}"
],
"airConditioning": true,
"buildingCode": "abc123",
"buildingId": "{{buildingUID}}",
"certificateIds": [
"cert-123"
],
"constructionYear": "{{validFromDate}}",
"electricVehicleChargingStations": 10,
"energyEfficiencyClass": "e class",
"energyRatingIds": [
"123-C"
],
"eventType": " BuildingDeleted",
"extensionData": {
"remark": "aca",
"aoFunctionName": "wsw",
"aoFunctionCode": "7yjy",
"gbScope": "n65g",
"architecturalObjectId": "12s3-12",
"statusId": 1
},
"fossilFuelExposure": "Extraction",
"monumentProtection": true,
"name": "Onboarding building {{$randomUserName}}",
"netZeroEnergyBuilding": true,
"numberOfEmployees": 10,
"parkingSpaces": 20,
"percentageOfOwnership": 10,
"primaryEnergyType": "Natural Gas",
"primaryHeatingType": "District heating",
"primaryTypeOfBuilding": "Retail",
"primaryWaterType": "hard",
"secondaryHeatingType": "District heating",
"secondaryTypeOfBuilding": "Retail",
"selfUse": true,
"siteId": "{{siteUID}}",
"status": "123",
"tenantStructure": "Single-tenant",
"typeOfOwnership": "Owner",
"validFrom": "{{validFromDate}}",
"validUntil": "{{validUntilDate}}",
"valuationIds": [
"abc-123"
],
"yearOfLastRefurbishment": "{{validUntilDate}}",
"buildingPermitDate": "{{validFromDate}}"
}
]
View status of building
Based on the batchID generated you can GET the batch of the on-boarded building with the below mentioned request. This will be the same for both Update and Delete.
GET Request:{{BASE_URL}}/batch/{id}/inbound
Please refer to Batch page for more details.
Updated 4 months ago