setle-docs

Estate API

Estates

Creating estates

This endpoint can be used to create new estates. An estate object bundles the information about the real estate property, which will be used for calculating the renovation simulations. Fields can be optional, but the quality and completeness of the data dictate whether certain parts of the renovation calculation tool are available or not.

POST /estates

Request body

{
  "commercial_context": {
    "price": "number"
  },
  "energy_context": {
    "heating_type": "string",
    "heating_device": "string",
    "sanitary_heating_device": "string",
    "eco_facilities": "string[]",
    "ground_floor_insulation_type": "string",
    "outer_wall_insulation_type": "string",
    "epc_score": "number"
  },
  "dimensions": {
    "width_cm": "number",
    "depth_cm": "number",
    "height_cm": "number"
  },
  "address": {
    "street": "string",
    "house_number": "string",
    "house_number_extra": "string",
    "zip_code": "string",
    "place": "string",
    "country": "string"
  },
  "external_id": "string",
  "year_built": "number",
  "year_renovated": "number",
  "estate_type": "string",
  "estate_format": "string",
  "estate_status": "string",
  "habitable_space_m2": "number",
  "ground_surface_m2": "number"
}

Response body

{
  "id": "string",
  "commercial_context": {
    "price": "number"
  },
  "energy_context": {
    "heating_type": "string",
    "heating_device": "string",
    "sanitary_heating_device": "string",
    "eco_facilities": "string[]",
    "ground_floor_insulation_type": "string",
    "outer_wall_insulation_type": "string"
  },
  "dimensions": {
    "width_cm": "number",
    "depth_cm": "number",
    "height_cm": "number"
  },
  "address": {
    "street": "string",
    "house_number": "string",
    "house_number_extra": "string",
    "zip_code": "string",
    "place": "string",
    "country": "string"
  },
  "managing_user_id": "string",
  "external_id": "string",
  "year_built": "number",
  "year_renovated": "number",
  "estate_type": "string",
  "estate_format": "string",
  "estate_status": "string",
  "habitable_space_m2": "number",
  "ground_surface_m2": "number"
}

Response code

201 Created

Editing estates

This endpoint can be used to edit basic information about the estate.

PATCH /estates/{estate_id}

Request body

{
  "commercial_context": {
    "price": "number"
  },
  "energy_context": {
    "heating_type": "string",
    "heating_device": "string",
    "sanitary_heating_device": "string",
    "eco_facilities": "string[]",
    "ground_floor_insulation_type": "string",
    "outer_wall_insulation_type": "string"
  },
  "dimensions": {
    "width_cm": "number",
    "depth_cm": "number",
    "height_cm": "number"
  },
  "address": {
    "street": "string",
    "house_number": "string",
    "house_number_extra": "string",
    "zip_code": "string",
    "place": "string",
    "country": "string"
  },
  "managing_user_id": "string",
  "external_id": "string",
  "year_built": "number",
  "year_renovated": "number",
  "estate_type": "string",
  "estate_format": "string",
  "estate_status": "string",
  "habitable_space_m2": "number",
  "ground_surface_m2": "number"
}

Response body

{
  "id": "string",
  "commercial_context": {
    "price": "number"
  },
  "energy_context": {
    "heating_type": "string",
    "heating_device": "string",
    "sanitary_heating_device": "string",
    "eco_facilities": "string[]",
    "ground_floor_insulation_type": "string",
    "outer_wall_insulation_type": "string"
  },
  "dimensions": {
    "width_cm": "number",
    "depth_cm": "number",
    "height_cm": "number"
  },
  "address": {
    "street": "string",
    "house_number": "string",
    "house_number_extra": "string",
    "zip_code": "string",
    "place": "string",
    "country": "string"
  },
  "managing_user_id": "string",
  "external_id": "string",
  "year_built": "number",
  "year_renovated": "number",
  "estate_type": "string",
  "estate_format": "string",
  "estate_status": "string",
  "habitable_space_m2": "number",
  "ground_surface_m2": "number"
}

Response code

200 OK

Fetching estates

This endpoint can be used to fetch all estates that you are related to, based on the provided access token.

GET /estates

Response body

[
  {
    "id": "string",
    "commercial_context": {
      "price": "number",
      "commercial_media_files": [
        {
          "name": "string",
          "url": "string",
          "mimetype": "string"
        }
      ]
    },
    "address": {
      "street": "string", 
      "house_number": "string", 
      "house_number_extra": "string", 
      "zip_code": "string", 
      "place": "string", 
      "country": "string"
    },
    "managing_user_id": "string",
    "external_id": "string",
    "year_built": "number",
    "year_renovated": "number",
    "estate_type": "string",
    "estate_format": "string",
    "estate_status": "string"
  }
]

Response code

200 OK

Fetching single estate

This endpoint can be used to fetch more details about a single estate.

GET /estates/{estate_id}

Response body

{
  "id": "string",
  "commercial_context": {
    "price": "number",
    "commercial_media_files": [
      {
        "name": "string",
        "url": "string",
        "mimetype": "string"
      }
    ]
  },
  "energy_context": {
    "heating_type": "string",
    "heating_device": "string",
    "sanitary_heating_device": "string",
    "eco_facilities": "string[]",
    "ground_floor_insulation_type": "string",
    "outer_wall_insulation_type": "string"
  },
  "dimensions": {
    "width_cm": "number",
    "depth_cm": "number",
    "height_cm": "number"
  },
  "address": {
    "street": "string",
    "house_number": "string",
    "house_number_extra": "string",
    "zip_code": "string",
    "place": "string",
    "country": "string"
  },
  "managing_user_id": "string",
  "external_id": "string",
  "year_built": "number",
  "year_renovated": "number",
  "estate_type": "string",
  "estate_format": "string",
  "estate_status": "string",
  "habitable_space_m2": "number",
  "ground_surface_m2": "number",
  "files": [
    {
      "name": "string",
      "url": "string",
      "mimetype": "string"
    }
  ]
}

Response code

200 OK

Deleting estates

This endpoint can be used to delete existing estates.

DELETE /estates/{estate_id}

Response code

200 OK

General file attachments

Adding general file attachments to estates

General file attachments, like documents containing energy efficiency information or floor plans, can be added using this endpoint.

POST /estates/{estate_id}/files

Request body

{

}

Response body

{
  "id": "string",
  "name": "string",
  "url": "string",
  "mimetype": "string"
}

Response code

201 Created

Deleting general file attachments

This endpoint can be used to delete general file attachments.

DELETE /estates/{estate_id}/files/{file_id}

Response code

200 OK

Commercial media files

Adding commercial media files to estates

Commercial media files, like pictures of the real estate property, can be added using this endpoint.

POST /estates/{estate_id}/media

Request body

{

}

Response body

{
  "id": "string",
  "name": "string",
  "url": "string",
  "mimetype": "string"
}

Response code

201 Created

Deleting commercial media files

This endpoint can be used to delete commercial media files that were added to an estate.

DELETE /estates/{estate_id}/media/{file_id}

Response code

200 OK

Roofs

Adding roofs to estates

Estates can have multiple roofs attached to them. This endpoint can be used to create new roofs and attach them to the estate.

POST /estates/{estate_id}/roofs

Request body

{
  "dimensions": {
    "height_cm": "number"
  },
  "estate_roof_type": "string",
  "surface_m2": "number",
  "is_decking_present": "boolean",
  "insulation_type": "string"
}

Response body

{
  "id": "string",
  "dimensions": {
    "height_cm": "number"
  },
  "estate_roof_type": "string",
  "surface_m2": "number",
  "is_decking_present": "boolean",
  "insulation_type": "string"
}

Response code

201 Created

Editing roofs

This endpoint can be used to edit existing roofs. Renovation items that are connected to the roof will be updated as well.

PATCH /estates/{estate_id}/roofs/{roof_id}

Request body

{
  "dimensions": {
    "height_cm": "number"
  },
  "estate_roof_type": "string",
  "surface_m2": "number",
  "is_decking_present": "boolean",
  "insulation_type": "string"
}

Response body

{
  "id": "string",
  "dimensions": {
    "height_cm": "number"
  },
  "estate_roof_type": "string",
  "surface_m2": "number",
  "is_decking_present": "boolean",
  "insulation_type": "string"
}

Response code

200 OK

Fetching roofs

This endpoint can be used to fetch all roofs attached to the defined estate.

GET /estates/{estate_id}/roofs

Response body

[
  {
    "id": "string",
    "dimensions": {
      "height_cm": "number"
    },
    "estate_roof_type": "string",
    "surface_m2": "number",
    "is_decking_present": "boolean",
    "insulation_type": "string"
  }
]

Response code

200 OK

Fetching single roof

This endpoint returns more details about the specific roof.

GET /estates/{estate_id}/roofs/{roof_id}

Response body

{
  "id": "string",
  "dimensions": {
    "height_cm": "number"
  },
  "estate_roof_type": "string",
  "surface_m2": "number",
  "is_decking_present": "boolean",
  "insulation_type": "string"
}

Response code

200 OK

Deleting roofs

Existing roofs can be deleted by using this endpoint. Important: linked renovation items will be deleted as well.

DELETE /estates/{estate_id}/roofs/{roof_id}

Response code

200 OK

Floors

Adding floors to estates

After creating the estate entity, floors can be added to it using this endpoint.

POST /estates/{estate_id}/floors

Request body

{
  "dimensions": {
    "height_cm": "number"
  },
  "floor_number": "number",
  "estate_floor_type": "string"
}

Response body

{
  "id": "string",
  "dimensions": {
    "height_cm": "number"
  },
  "floor_number": "number",
  "estate_floor_type": "string"
}

Response code

201 Created

Editing floors

Floors can be edited using this endpoint. Connected renovation items will be updated as well.

PATCH /estates/{estate_id}/floors/{floor_id}

Request body

{
  "dimensions": {
    "height_cm": "number"
  },
  "floor_number": "number",
  "estate_floor_type": "string"
}

Response body

{
  "id": "string",
  "dimensions": {
    "height_cm": "number"
  },
  "floor_number": "number",
  "estate_floor_type": "string"
}

Response code

200 OK

Fetching floors

To fetch all floors attached to the estate, this endpoint can be used.

GET /estates/{estate_id}/floors

Response body

[
  {
    "id": "string",
    "dimensions": {
      "height_cm": "number"
    },
    "floor_number": "number",
    "estate_floor_type": "string"
  }
]

Response code

200 OK

Fetching single floor

This endoint returns more details about the selected floor.

GET /estates/{estate_id}/floors/{floor_id}

Response body

{
  "id": "string",
  "dimensions": {
    "height_cm": "number"
  },
  "floor_number": "number",
  "estate_floor_type": "string"
}

Response code

200 OK

Deleting floors

Floors can be deleted using this endpoint. Important: rooms and renovation items attached to the floor will also be deleted.

DELETE /estates/{estate_id}/floors/{floor_id}

Response code

200 OK

Rooms

Adding rooms to floors

Rooms can be added to floors using this endpoint.

POST /estates/{estate_id}/floors/{floor_id}/rooms

Request body

{
  "surface_m2": "number",
  "estate_room_type": "string"
}

Response body

{
  "id": "string",
  "surface_m2": "number",
  "estate_room_type": "string"
}

Response code

201 Created

Editing rooms

This endpoint can be used to edit rooms. Connected renovation items will be updated as well.

PATCH /estates/{estate_id}/floors/{floor_id}/rooms/{room_id}

Request body

{
  "surface_m2": "number",
  "estate_room_type": "string"
}

Response body

{
  "id": "string",
  "surface_m2": "number",
  "estate_room_type": "string"
}

Response code

200 OK

Fetching rooms

To fetch a list of all rooms belonging to a certain floor, this endpoint can be used.

GET /estates/{estate_id}/floors/{floor_id}/rooms

Response body

[
  {
    "id": "string",
    "surface_m2": "number",
    "estate_room_type": "string"
  }
]

Response code

200 OK

Fetching single room

This endpoint returns more details about the selected room.

GET /estates/{estate_id}/floors/{floor_id}/rooms/{room_id}

Response body

{
  "id": "string",
  "surface_m2": "number",
  "estate_room_type": "string"
}

Response code

200 OK

Deleting rooms

This endpoint can be used to delete rooms. Important: when rooms are deleted, all linked renovation items will be deleted as well.

DELETE /estates/{estate_id}/floors/{floor_id}/rooms/{room_id}

Response code

200 OK

Staircases

Adding staircases to floors

This endpoint can be used to add staircases to floors.

POST /estates/{estate_id}/floors/{floor_id}/staircases

Request body

{
  "dimensions": {
    "height_cm": "number"
  },
  "estate_staircase_type": "string"
}

Response body

{
  "id": "string",
  "dimensions": {
    "height_cm": "number"
  },
  "estate_staircase_type": "string"
}

Response code

201 Created

Editing staircases

This endpoint can be used to edit information about staircases. The connected renovation items will be updated as well.

PATCH /estates/{estate_id}/floors/{floor_id}/staircases/{staircase_id}

Request body

{
  "dimensions": {
    "height_cm": "number"
  },
  "estate_staircase_type": "string"
}

Response body

{
  "id": "string",
  "dimensions": {
    "height_cm": "number"
  },
  "estate_staircase_type": "string"
}

Response code

200 OK

Fetching staircases

This endpoint can be used to fetch all staircases that are attached to a certain floor.

GET /estates/{estate_id}/floors/{floor_id}/staircases

Response body

[
  {
    "id": "string",
    "dimensions": {
      "height_cm": "number"
    },
    "estate_staircase_type": "string"
  }
]

Response code

200 OK

Fetching single staircase

This endpoint returns more information about the selected staircase.

GET /estates/{estate_id}/floors/{floor_id}/staircases/{staircase_id}

Response body

{
  "id": "string",
  "dimensions": {
    "height_cm": "number"
  },
  "estate_staircase_type": "string"
}

Response code

200 OK

Deleting staircases

Staircases can be deleted using this endpoint. Important: all connected renovation items will be deleted as well.

DELETE /estates/{estate_id}/floors/{floor_id}/staircases/{staircase_id}

Response code

200 OK

Members

Adding members to estates

In a real estate agency context, this endpoint can be used to invite potential buyers and attach them to an estate that’s for sale. The created member will also be attached to the organization itself.

POST /estates/{estate_id}/members

Request body

{
  "email_address": "string",
  "first_name": "string",
  "last_name": "string"
}

Response body

{
  "id": "string",
  "email_address": "string",
  "first_name": "string",
  "last_name": "string",
  "member_type": "string"
}

Response code

201 Created

Fetching members

This endpoint can be used to fetch all members attached to a certain estate.

GET /estates/{estate_id}/members

Response body

[
  {
    "id": "string",
    "email_address": "string",
    "first_name": "string",
    "last_name": "string",
    "member_type": "string"
  }
]

Response code

200 OK

Deleting members

This endpoint can be used to remove members from a certain estate. Immportant: the member will still be attached to the organization. Use the endpoint in the Organization API to completely remove the member from the organization.

DELETE /estates/{estate_id}/members/{member_id}

Response code

200 OK