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. Customers can push their building data to BuildingMinds platform by using the BuildingMindsAPI:

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

FieldTypeDescription
addressIdsstringArray of address Ids.
minLength: 1; maxLength: 50
airConditioningbooleanDoes the building have air conditioning (Y/N) ?
buildingCodestringUser specific Building Code; minLength: 1; maxLength: 70
buildingIdstringUnique identifier; must either originate from the previous system or be explicitly defined
minLength: 1; maxLength: 50 (mandatory)
buildingPermitDatestringBuilding permit date in yyyy-mm-ddThh:mm:ssZ form (conform to ISO 8061).
minLength: 20
certificateIdsstring, arrayArray of certificate Ids.
minLength: 1; maxLength: 50
constructionYearstringYear 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
electricVehicleChargingStationsnumberNumber of electric vehicle charging stations.
maximum: 9999
energyEfficiencyClassstringEnergy Efficiency Class of Building.
minLength: 1; maxLength: 50
energyRatingIdsstring, arrayArray of energyRating Ids.
minLength: 1; maxLength: 50
eventTypestring,enumType of the event as specific domain event.

Options: BuildingAdded, BuildingUpdated, BuildingDeleted 
expectedLifeEndDatestringThe expected end date of the Building's lifecycle in yyyy-mm-ddThh:mm:ssZ form (conform to ISO 8061).
minLength: 20
extensionDatajsonExtension data for storing any custom data
fossilFuelExposurestring,enumFossil fuel exposure and its kind if known.

Options: Extraction, Storage, Transport, Manufacture, Other, Not exposed 
monumentProtectionbooleanIs the building declared as an ancient monument with national importance by the government (Y/N) ?
namestringUser specific building name e.g: EMEA Headquarter, Office Berlin; minLength: 1; maxLength: 200 (mandatory)
netZeroEnergyBuildingbooleanIs the building a net zero energy building (Y/N)?
numberOfEmployeesnumberNumber of employees.
maximum: 999999
parkingSpacesnumberNumber of parking spaces.
maximum: 9999
percentageOfOwnershipnumberPercentage of ownership.
maximum: 100
primaryEnergyTypestring,enumType of energy used.

Options: Natural Gas, Coal, Nuclear, Petroleum, Hydropower, Wind, Biomass, Geothermal, Solar 
primaryHeatingTypestring,enumPrimary 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 
primaryTypeOfBuildingstring,enumType 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)
primaryWaterTypestringType of water used.
minLength: 1; maxLength: 50
secondaryHeatingTypestring,enumSecondary Type of heating

Options: District heating, Natural gas, Oil-based fuels, Solar thermal, Unspecified, Heat pump, Electricity (radiator), Biomass, Micro combined heat and power 
secondaryTypeOfBuildingstring,enumSecond 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 
selfUsebooleanIs the building self-used or not? (Y/N)
siteIdstringRefers to the site which the building belongs to.
minLength: 1 ; maxLength: 50 (mandatory)
statusstringStatus of building
minLength: 1; maxLength: 50
tenantStructurestring,enumAre there multiple tenants in the building or only one?

Options: Single-tenant, Multi-tenant 
typeOfOwnershipstringIs the building owned or leased?

Options: Owner, Tenant  (mandatory)
validFromstringThe records can be used from this date onwards in yyyy-mm-ddThh:mm:ssZ form (conform to ISO 8061)
minLength: 20 (mandatory)
validUntilstringThe records can be used from this date onwards in yyyy-mm-ddThh:mm:ssZ form (conform to ISO 8061)
minLength: 20 (mandatory)
valuationIdsstring, arrayArray of valuation Ids
minLength: 1; maxLength: 50
yearOfLastRefurbishmentstringYear 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 theeventType: 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 theeventType: 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