Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: updated parameters

Skenarios service has an API which can be used to maintain portfolio and properties. The base URL for all requests is https://api.skenarios.com/

Swagger

Swagger documentation can be found here:

https://app.skenarios.com/ui/vendor/swagger-ui/index.html#/

Authorization and security

...

ResponseExplanation
200 OKYour request was processed successfully
201 CreatedYour request was processed successfully, an object was created
400 Bad RequestSomething is wrong in the received data or query. This is most likely a format issue.
401 UnauthorizedYour request was not authorized, please check the JWT token.
403 ForbiddenThe user-specified in the JWT token has no access privileges on the given object.
404 Not FoundThe requested service doesn't exist
422 Unprocessable EntitySent parameters were understood, but their content was problematic. Please check your input.
500 Internal Server ErrorWhoops! This is embarrassing, something unexpected happened. We'll take a look at the issue as soon as possible. 

...

NameTypeIs mandatory?Description
buildingIdString
Unique Building id, given by the organization
buildYearInteger
Build year of the property building
descriptionString
Free text description of the property
countryStringYesCountry code of the property building, allowed values are FI and UK.
buildingTypeString
Type of the main property: row house, office, commercial building, detached house, leisure house, apartment, school, retail building, industrial building, garage, warehouse, generic building
facadeMaterialString
The primary building material of the walls of the building. Allowed values are empty, brick, wood, concrete
heatingEnergyTypeString
primary heating source, allowed values are: ground, electric, district, wood, oil, gas, other.
balconiesInteger
Number of balconies in the property
unitsInteger
Total number of property units in the property
liftsInteger
Total number of lifts in the property
floorsInteger/Double
The total number of floors in the property, the ground floor being 1. If a double value is sent, it will be rounded up to the nearest integer e.g. 1.5 will be rounded to 2
balconiesInteger
Total number of balconies in the property
floorAreaInteger/Double
Total gross floor area of the property, including cold and heated spaces in m2. If a double value is sent, it will be rounded up to the nearest integer e.g. 99.80 will be rounded to 100
volumeInteger
Total gross volume of the property, including cold and heated spaces in m3.
addressStringYesStreet address of a building. This is mandatory unless building id matches with known national property ids.
postalCodeStringYesPostcode of a building.
cityStringYesCity where a building is located.
useExistingIfAvailableboolean
If true, tries to find an existing property with building and address details. If found uses that and updates with given other details. Otherwise, creates a new one and returns it.
propertiesarray
An array of specific properties related to this building. The exact keys depend on the organization, however, common keys for everybody are presented in table below. For example: [{"propertyId":"LOT_OWNED", "value" :"yes"},{"propertyId":"LOT_SIZE", "value" :1400}]

measures

array
An array of specific values related to this property. Keys are presented in the table below. For example: [{"type":"MONTHLY_LOT_LEASE_AMOUNT", "value" :350}]

...

Name

TypeDescription
buildingIdStringBuilding id from the create building. Group id or building id is mandatory. 
groupIdStringThe group id of this property group. Group id or building id is mandatory.
floorAreaInteger/DoubleFloor area of the unit in m2 This is mandatory for getting value estimation. If a double value is sent, it will be rounded up to the nearest integer e.g. 99.80 will be rounded to 100
floorInteger/DoubleFloor number of the unit, ground floor being 1If a double value is sent, it will be rounded up to the nearest integer e.g. 1.5 will be rounded to 2
nameStringName of the unit
unitIdStringIdentifying id for the unit, for example, apartment number. Must be unique within the building id. If not given, it'll be generated.
descriptionStringDescription of the unit.
usageTypeStringType of the property unit, the allowed values are RESIDENTIAL, OFFICE, RETAIL, STORAGE, OTHER. None is defined, this defaults to RESIDENTIAL. Property value is estimated only for the RESIDENTIAL type.
addressStringStreet address, with the house and apartment number, if available.
postalCodeStringPostal code of the address. This is mandatory for getting value estimation.
cityStringCity name of the address. This is mandatory for getting value estimation.
countryCodeStringEither FI or UK
useExistingIfAvailableBooleanTrue or False, if true, tries to find an existing unit from the group which matches with the unit id or address. If found updates it and returns, otherwise creates a new one with given data.
propertiesArrayAn array of specific properties related to this unit. The exact keys depend on the organization, however, common keys for everybody are presented in the table below. For example: [{"propertyId":"SAUNA", "value" :"true"},{"propertyId":"NUMBER_OF_ROOMS", "value" :3}]. These values are elementary for getting the correct price estimation.
measuresArrayAn array of specific values related to this property. Keys are presented in the table below. For example: [{"type":"MONTHLY_MAINTENANCE_FEE", "value" :240}]

...

PropertyIdDescription
NUMBER_OF_ROOMSTotal count of bedrooms and living room(s). Leave out kitchen and bathrooms. This is mandatory for getting value estimation.
KITCHEN_TYPEType of the kitchen in the property. Allowed values are: Kitchen, Open Plan Kitchen, Kitchenette, Small Kitchen, Kitchenette w/ window, Scullery
SAUNADoes the property have a sauna, Allowed values are: Yes, No, Sauna building, Lakeside sauna.
BALCONY_TYPEType of the balcony in the property. Allowed values are: Balcony, Glazed Balcony, French Balcony
CONDITIONThe general condition of the property, allowed values are: New, Excellent, Good, Mediocre, Poor. This is very good for getting the correct value estimation.
TERRACE_TYPEType of the terrace in the property. Allowed values are: Yes Yes, No, Glazed Terrace

These properties are given as JSON array, as property id/value pairs in the above call's 'properties' property. For example: [{"propertyId":"SAUNA", "value" :"true"},{"propertyId":"NUMBER_OF_ROOMS", "value" :3}]

...

Property measurements are values related to the property which also may have a time element and they may vary over the course of time. Values used with the properties array. Note, that all of these values can be left out, however, they make value estimations much more accurate.

...

ExternalKeyValue
NUMBER_OF_ROOMSNumber
KITCHEN_TYPEKitchen , Open Plan Kitchen , Kitchenette , Small Kitchen , Kitchenette w/ window , Scullery
SAUNATrue / False
BALCONY_TYPEBalcony,Glazed Balcony,French Balcony
LOT_SIZENumber
LOT_OWNEDTrue / False
CONDITIONNew, Excellent, Good, Mediocre, Poor

Parameters

...