NAV

Introduction

Welcome to the Facilite API.

To connect with us and start using the API, please send an email to connect@facilitee.com with the following details:

Once you contact us, we will provide the authentication details for you to be able to start using the Facilitee API.

In the meantime, you can browse through the API documentation we prepared for you.

Thank you.

The route to our API is .../api/public.

NOTE:

The protocol used for all endpoints, including the authorization URL, is https.

All of our non-authorization endpoints expect a Content-Type: application/json header in all requests.

Authorization

URL

Request Format

Route:

.../api/connect/token
Body:
{
    client_id=your_client_id&client_secret=your_client_secret&scope=openid api&grant_type=client_credentials
}

Response Format

Body:
{
    "access_token": "access_token_string",
    "token_type": "token_type_string",
    "expires_in": 1800,
    "scope": "openid",
    "id_token": "id_token_string"
}

POST .../api/connect/token

Returns the tokens required to access the endpoints.


Request headers

Field Value
Content-Type application/x-www-form-urlencoded required


Request parameters

Body type: x-www-form-urlencoded

Body:

Field Type Value
client_id string Given to you by our API development team required
client_secret string Given to you by our API development team required
scope string openid api required
grant_type string client_credentials required


Response values

Field Type
access_token string
token_type string
expires_in integer
scope string
id_token string

Using the API

Example


Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6ImF0K2p3dCJ9.
eyJzdWIiOiJwb3N0bWFuIiwiUHVibGljQXBpIjoiUG9zdG1hbiIsInRlbmFudEl
kIjoiMSIsIm9pX3Byc3QiOiJwb3N0bWFuIiwiY2xpZW50X2lkIjoicG9zdG1hbi
IsIm9pX3Rrbl9pZCI6ImFmYjQ3OWM4LTJhMWEtNDlmYy1iOTI4LWQ5NjIyMjA5N
jUxMSIsImF1ZCI6IndlYiIsInNjb3BlIjoib3BlbmlkIiwiZXhwIjoxNjI1NzQwN
DYyLCJpc3MiOiJodHRwczovL2xvY2FsaG9zdDo0NDMzNC8iLCJpYXQiOjE2MjU3Mzg2NjJ9.g3i_K7QLqrib49HjPta0mGIiqB8qfEa0dPguVQHc7Bo 


Request headers

Field Value
Authorization token_type_string access_token_string required


If the token expires, re-visit the Authorization endpoint again and receive a new token.

Country Codes

Get a list of phone number country codes

Request Format

Route:

.../api/public/country-codes

Response Format

Body:
{
    [
        {
            "id": 8,
            "code": "31",
            "country": "Netherlands"
        },
        {
            "id": 220,
            "code": "33",
            "country": "France"
        }
    ]
}

GET .../api/public/country-codes

Returns a list of country codes.


Response values

Field Type
array
[index] object
[index].id integer
[index].code string
[index].country string

Owner

Owner

Create Owner

Request Format

Route:

.../api/public/Owners
Body:
{
    "email": "user@example.com",
    "name": "User Test",
    "companyName": "Test Company",
    "countryCode": "31",
    "phoneNumber": "984356578",
    "externalReferenceId": "string",
    "address": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "additionalNote": "Test note",
    "authorizedAmount": 650.50,
    "invoiceAddress": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "invoiceCompany": "Owner Company",
    "invoiceEmail": "owner.invoice@email.com",
    "attentionTo": "Owner"
}

Response Format

Body:
{
    "id": 2564,
    "email": "user@example.com",
    "name": "User Test",
    "companyName": "Test Company",
    "countryCode": "31",
    "phoneNumber": "984356578",
    "address": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "additionalNote": "Test note",
    "authorizedAmount": 650.50,
    "status": "Uninvited",
    "externalReferenceId": "string",
    "invoiceAddress": 
    {
        "id": 22,
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "invoiceCompany": "Owner Company",
    "invoiceEmail": "owner.invoice@email.com",
    "attentionTo": "Owner"
}

POST .../api/public/Owners

Creates a new User entity and assigns a role Owner to it.


Request parameters

Body:

Field Type
email string required
name string required
companyName string optional
countryCode string optional
phoneNumber string optional
externalReferenceId string optional
address object optional
address.street string optional
address.streetNumber string optional
address.postCode string optional
address.city string optional
address.country string optional
address.googlePlaceId string optional
additionalNote string optional
authorizedAmount number optional
invoiceAddress object optional
invoiceAddress.street string optional
invoiceAddress.streetNumber string optional
invoiceAddress.postCode string optional
invoiceAddress.city string optional
invoiceAddress.country string optional
invoiceAddress.googlePlaceId string optional
invoiceCompany string optional
invoiceEmail string optional
attentionTo string optional


countryCode and phoneNumber fields are used together by the application for the purpose of sending SMS messages. If either or both fields are left empty or they are not formatted correctly as shown in the example request, they will not be saved in the database.

invoiceAddress related fields, invoiceCompany, invoiceEmail and attentionTo fields are optional fields that serve as a way to specify another invoice address for a Property Owner in the cases where a Property Owner preffers to use a different address instead.

invoiceAddress related fields, invoiceCompany, invoiceEmail and attentionTo fields will be shown in the generated Workorder documents instead of the address fields if a value for them was provided, otherwise address fields value will be used in the document.


Response values

Field Type
id integer
email string
name string
companyName string
countryCode string
phoneNumber string
address object
address.street string
address.streetNumber string
address.postCode string
address.city string
address.country string
address.googlePlaceId string
additionalNote string
authorizedAmount number
status string
externalReferenceId string
invoiceAddress object
invoiceAddress.street string
invoiceAddress.streetNumber string
invoiceAddress.postCode string
invoiceAddress.city string
invoiceAddress.country string
invoiceAddress.googlePlaceId string
invoiceCompany string
invoiceEmail string
attentionTo string


status shows the current status of the user. They are :

Please note that inviting users is currently only possible in the Facilitee App.


Get owner details

Request Format

Route:

.../api/public/Owners/{id}

Example :

.../api/public/owners/7

Response Format

Body:
{
    "id": 2564,
    "email": "user@example.com",
    "name": "User Test",
    "companyName": "Test Company",
    "countryCode": "31",
    "phoneNumber": "984356578",
    "address": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "additionalNote": "Test note",
    "authorizedAmount": 650.50,
    "status": "Active",
    "externalReferenceId": "string",
    "invoiceAddress": 
    {
        "id": 22,
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "invoiceCompany": "Owner Company",
    "invoiceEmail": "owner.invoice@email.com",
    "attentionTo": "Owner"
}

GET .../api/public/Owners/{id}

Returns a User entity which has a role Owner and corresponds to the ownerId.


Request parameters

Route:

Field Type
ownerId integer required


Response values

Field Type
id integer
email string
name string
companyName string
countryCode string
phoneNumber string
address object
address.street string
address.streetNumber string
address.postCode string
address.city string
address.country string
address.googlePlaceId string
additionalNote string
authorizedAmount number
status string
externalReferenceId string
invoiceAddress object
invoiceAddress.street string
invoiceAddress.streetNumber string
invoiceAddress.postCode string
invoiceAddress.city string
invoiceAddress.country string
invoiceAddress.googlePlaceId string
invoiceCompany string
invoiceEmail string
attentionTo string


status shows the current status of the user. They are :

Please note that inviting users is currently only possible in the Facilitee App.


Get owner id by email

Request Format

Route:

.../api/public/owners/get-by-email

Example :

.../api/public/owners/get-by-email?email=user@example.com

Response Format

Body:
{
    110
}

GET .../api/public/Owners/get-by-email?email=email@example.com

Returns a User entity’s id which has a role Owner and corresponds to the email.


Request parameters

Route:

Query parameters:

Field Type
email string required


Response values

Field Type
integer

Get a list of Owners

Request Format

Route:

.../api/public/Owners?{queryParams}

Example :

.../api/public/Owners?pageNo=1&pageSize=15&searchParameter=Test

Response Format

Body:
{
  "numberOfPages": 1,
  "totalItems": 1,
  "pageSize": 1,
  "currentPage": 1,
  "items": 
  [
    {
        "id": 2564,
        "name": "User Test",
        "email": "user@example.com",
        "companyName": "string",
        "countryCode": "31",
        "phoneNumber": "string",
        "address": 
        {
            "id": 21048,
            "street": "Javastraat",
            "streetNumber": "1",
            "postCode": "1094 EM",
            "city": "Amsterdam",
            "country": "Netherlands",
            "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
        },
        "additionalNote": "Test note",
        "authorizedAmount": 650.50,
        "numberOfPropertyUnits": 2,
        "userStatus": "Active",
        "externalReferenceId": "string"
    }
  ]
}

GET .../api/public/Owners?{queryParams}

Returns a list of User entities which have a role Owner.


Request parameters

Route:

Query parameters:

Field Type
pageNo integer optional
pageSize integer optional
searchParameter string optional

The searchParameter is used for querying the results. If a value for it is provided, only the results with fields that contain the value of the searchParameter query parameter will be returned. The following fields are checked :

Response values

Field Type
numberOfPages integer
totalItems integer
pageSize integer
currentPage integer
items array
items[index] object
items[index].id integer
items[index].email string
items[index].name string
items[index].companyName string
items[index].countryCode string
items[index].phoneNumber string
items[index].address object
items[index].address.id int
items[index].address.street string
items[index].address.streetNumber string
items[index].address.postCode string
items[index].address.city string
items[index].address.country string
items[index].address.googlePlaceId string
items[index].additionalNote string
items[index].authorizedAmount number
items[index].numberOfPropertyUnits int
items[index].userStatus string
items[index].externalReferenceId string


userStatus shows the current status of the user. They are :

Please note that inviting users is currently only possible in the Facilitee App.


Update owner details

Request Format

Route:

.../api/public/Owners/{id}

Example:

.../api/public/Owners/2
Body:
{
    "email": "user@example.com",
    "name": "User Test",
    "companyName": "Test Company",
    "countryCode": "31",
    "phoneNumber": "984356578",
    "externalReferenceId": "string",
    "address": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "additionalNote": "Test note",
    "authorizedAmount": 650.50,
    "invoiceAddress": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "invoiceCompany": "Owner Company",
    "invoiceEmail": "owner.invoice@email.com",
    "attentionTo": "Owner"
}

Response Format

Body:
{
    "id": 2564,
    "email": "user@example.com",
    "name": "User Test",
    "companyName": "Test Company",
    "countryCode": "31",
    "phoneNumber": "984356578",
    "address": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "additionalNote": "Test note",
    "authorizedAmount": 650.50,
    "status": "Uninvited",
    "externalReferenceId": "string",
    "invoiceAddress": 
    {
        "id": 22,
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "invoiceCompany": "Owner Company",
    "invoiceEmail": "owner.invoice@email.com",
    "attentionTo": "Owner"
}

PUT .../api/public/Owners/{id}

Updates a User entity with the assigned Owner role and a matching ownerId.


Request parameters

Route:

Field Type
ownerId integer required

Body:

Field Type
email string required
name string required
companyName string optional
countryCode string optional
phoneNumber string optional
externalReferenceId string optional
address object optional
address.street string optional
address.streetNumber string optional
address.postCode string optional
address.city string optional
address.country string optional
address.googlePlaceId string optional
additionalNote string optional
authorizedAmount number optional
invoiceAddress object optional
invoiceAddress.street string optional
invoiceAddress.streetNumber string optional
invoiceAddress.postCode string optional
invoiceAddress.city string optional
invoiceAddress.country string optional
invoiceAddress.googlePlaceId string optional
invoiceCompany string optional
invoiceEmail string optional
attentionTo string optional


countryCode and phoneNumber fields are used together by the application for the purpose of sending SMS messages. If either or both fields are left empty or they are not formatted correctly as shown in the example request, they will not be saved in the database.

invoiceAddress related fields, invoiceCompany, invoiceEmail and attentionTo fields are optional fields that serve as a way to specify another invoice address for a Property Owner in the cases where a Property Owner preffers to use a different address instead.

invoiceAddress related fields, invoiceCompany, invoiceEmail and attentionTo fields will be shown in the generated Workorder documents instead of the address fields if a value for them was provided, otherwise address fields value will be used in the document.


Response values

Field Type
id integer
email string
name string
companyName string
countryCode string
phoneNumber string
address object
address.street string
address.streetNumber string
address.postCode string
address.city string
address.country string
address.googlePlaceId string
additionalNote string
authorizedAmount number
status string
externalReferenceId string
invoiceAddress object
invoiceAddress.street string
invoiceAddress.streetNumber string
invoiceAddress.postCode string
invoiceAddress.city string
invoiceAddress.country string
invoiceAddress.googlePlaceId string
invoiceCompany string
invoiceEmail string
attentionTo string


status shows the current status of the user. They are :

Please note that inviting users is currently only possible in the Facilitee App.


Owner Company

Create Owner Company

Request Format

Route:

.../api/public/Owners/{ownerId}/companies


Example :

.../api/public/owners/7/companies
Body:
{
    "name": "Test Company",
    "invoiceEmail": "test-company@email.com",
    "maxMandateAmount": 1000,
    "attentionTo": "Sales team",
    "countryCode": "+31",
    "phoneNumber": "23545467",
    "externalReferenceId": "string",
    "invoiceAddress": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    }
}

Response Format

Body:
{
    "id": 22,
    "name": "Test Company",
    "invoiceEmail": "test-company@email.com",
    "maxMandateAmount": 1000,
    "attentionTo": "Sales team",
    "countryCode": "+31",
    "phoneNumber": "23545467",
    "externalReferenceId": "string",
    "invoiceAddress": 
    {
        "id": 330,
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    }
}

POST .../api/public/Owners/{ownerId}/companies

Creates a new Owner Company entity and assigns it to an Owner User entity with a matching ownerId.

Request parameters

Route:

Field Type
ownerId integer required

Body:

Field Type
name string required
invoiceEmail string optional
maxManadateAmount number optional
attentionTo string optional
countryCode string optional
phoneNumber string optional
externalReferenceId string optional
invoiceAddress object optional
invoiceAddress.street string optional
invoiceAddress.streetNumber string optional
invoiceAddress.postCode string optional
invoiceAddress.city string optional
invoiceAddress.country string optional
invoiceAddress.googlePlaceId string optional


countryCode and phoneNumber fields are used together by the application for the purpose of sending SMS messages. If either or both fields are left empty or they are not formatted correctly as shown in the example request, they will not be saved in the database.


Response values

Field Type
id integer
name string
invoiceEmail string
maxMandateAmount number
attentionTo string
countryCode string
phoneNumber string
externalReferenceId string
invoiceAddress object
invoiceAddress.id integer
invoiceAddress.street string
invoiceAddress.streetNumber string
invoiceAddress.postCode string
invoiceAddress.city string
invoiceAddress.country string
invoiceAddress.googlePlaceId string


Get Owner Company Details

Request Format

Route:

.../api/public/Owners/{ownerId}/companies/{companyId}

Example :

.../api/public/owners/7/companies/22

Response Format

Body:
{
    "id": 22,
    "name": "Test Company",
    "invoiceEmail": "test-company@email.com",
    "maxMandateAmount": 1000,
    "attentionTo": "Sales team",
    "countryCode": "+31",
    "phoneNumber": "23545467",
    "externalReferenceId": "string",
    "invoiceAddress": 
    {
        "id": 330,
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    }
}

GET .../api/public/Owners/{ownerId}/companies/{companyId}

Returns a Owner Company entity connected to the User entity with matching ownerId and corresponding companyId.


Request parameters

Route:

Field Type
ownerId integer required
companyId integer required


Response values

Field Type
id integer
name string
invoiceEmail string
maxMandateAmount number
attentionTo string
countryCode string
phoneNumber string
externalReferenceId string
invoiceAddress object
invoiceAddress.id integer
invoiceAddress.street string
invoiceAddress.streetNumber string
invoiceAddress.postCode string
invoiceAddress.city string
invoiceAddress.country string
invoiceAddress.googlePlaceId string


Get A List Of Owner Companies

Request Format

Route:

.../api/public/Owners/{ownerId}/companies?{queryParams}

Example :

.../api/public/Owners/{ownerId}/companies?pageNo=1&pageSize=15&searchParameter=Test

Response Format

Body:
{
  "numberOfPages": 1,
  "totalItems": 1,
  "pageSize": 1,
  "currentPage": 1,
  "items": 
  [
    {
        "id": 22,
        "name": "Test Company",
        "invoiceEmail": "test-company@email.com",
        "maxMandateAmount": 1000,
        "attentionTo": "Sales team",
        "countryCode": "+31",
        "phoneNumber": "23545467",
        "externalReferenceId": "string",
        "invoiceAddress": 
        {
            "id": 330,
            "street": "Javastraat",
            "streetNumber": "1",
            "postCode": "1094 EM",
            "city": "Amsterdam",
            "country": "Netherlands",
            "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
        }
    }
  ]
}

GET .../api/public/Owners/{ownerId}/companies?{queryParams}

Returns a list of Owner Company entities connected to the Owner with a corresponding ownerId.


Request parameters

Route:

Field Type
ownerId integer required

Query parameters:

Field Type
pageNo integer optional
pageSize integer optional
searchParameter string optional

The searchParameter refers to the company’s name. It is possible to filter out the response by company names where the result must contain the searchParameter value in the company’s name.


Response values

Field Type
numberOfPages integer
totalItems integer
pageSize integer
currentPage integer
items array
items[index] object
items[index].id integer
items[index].name string
items[index].invoiceEmail string
items[index].maxMandateAmount number
items[index].attentionTo string
items[index].countryCode string
items[index].phoneNumber string
items[index].externalReferenceId string
items[index].invoiceAddress object
items[index].invoiceAddress.id integer
items[index].invoiceAddress.street string
items[index].invoiceAddress.streetNumber string
items[index].invoiceAddress.postCode string
items[index].invoiceAddress.city string
items[index].invoiceAddress.country string
items[index].invoiceAddress.googlePlaceId string


Update Owner Company Details

Request Format

Route:

.../api/public/Owners/{ownerId}/companies/{companyId}

Example:

.../api/public/Owners/7/companies/22
Body:
{
    "name": "Test Company",
    "invoiceEmail": "test-company@email.com",
    "maxMandateAmount": 1000,
    "attentionTo": "Sales team",
    "countryCode": "+31",
    "phoneNumber": "23545467",
    "externalReferenceId": "string",
    "invoiceAddress": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    }
}

Response Format

Body:
{
    "id": 22,
    "name": "Test Company",
    "invoiceEmail": "test-company@email.com",
    "maxMandateAmount": 1000,
    "attentionTo": "Sales team",
    "countryCode": "+31",
    "phoneNumber": "23545467",
    "externalReferenceId": "string",
    "invoiceAddress": 
    {
        "id": 330,
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    }
}

PUT .../api/public/Owners/{ownerId}/companies/{companyId}

Updates an Owner Company entity with a corresponding companyId belonging to an Owner entity with a matching ownerId.


Request parameters

Route:

Route:

Field Type
ownerId integer required
companyId integer required

Body:

Field Type
name string required
invoiceEmail string optional
maxManadateAmount number optional
attentionTo string optional
countryCode string optional
phoneNumber string optional
externalReferenceId string optional
invoiceAddress object optional
invoiceAddress.street string optional
invoiceAddress.streetNumber string optional
invoiceAddress.postCode string optional
invoiceAddress.city string optional
invoiceAddress.country string optional
invoiceAddress.googlePlaceId string optional


countryCode and phoneNumber fields are used together by the application for the purpose of sending SMS messages. If either or both fields are left empty or they are not formatted correctly as shown in the example request, they will not be saved in the database.


Response values

Field Type
id integer
name string
invoiceEmail string
maxMandateAmount number
attentionTo string
countryCode string
phoneNumber string
externalReferenceId string
invoiceAddress object
invoiceAddress.id integer
invoiceAddress.street string
invoiceAddress.streetNumber string
invoiceAddress.postCode string
invoiceAddress.city string
invoiceAddress.country string
invoiceAddress.googlePlaceId string


Delete Owner Company

Request Format

Route:

.../api/public/owners/{ownerId}/companies/{companyId}

Example:

.../api/public/owners/7/companies/22

Response Format

Body:
{
    "id": 22,
}

DELETE .../api/public/owners/{ownerId}/companies/{companyId}

Deletes an Owner Company entity with a corresponding companyId belonging to an Owner entity with a matching ownerId.


Request parameters

Route:

Field Type
ownerId integer required
companyId integer required


Response values

Field Type
Id integer


Property Manager

Create Property Manager

Request Format

Route:

.../api/public/managers
Body:
{
    "email": "test-manager@facilitee.com",
    "name": "Test Manager",
    "companyName": "Manager Co.",
    "countryCode": "25",
    "phoneNumber": "354354353",
    "additionalNote": "Note",
    "externalReferenceId": "pm-123",
    "address": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    }
}

Response Format

Body:
{
    "id": 110,
    "email": "test-manager@facilitee.com",
    "name": "Test Manager",
    "companyName": "Manager Co.",
    "countryCode": "25",
    "phoneNumber": "354354353",
    "additionalNote": "Note",
    "userStatus": "Uninvited",
    "externalReferenceId": "pm-123",
    "address": 
    {
        "id": 222,
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "averageRating": 0,
    "numberOfRatings": 0
}

POST .../api/public/managers

Creates a new User entity and assigns a role Property Manager to it.


Request parameters

Body:

Field Type
email string required
name string required
companyName string optional
countryCode string optional
phoneNumber string optional
additionalNote string optional
externalReferenceId string optional
address object optional
address.street string optional
address.streetNumber string optional
address.postCode string optional
address.city string optional
address.country string optional
address.googlePlaceId string optional


countryCode and phoneNumber fields are used together by the application for the purpose of sending SMS messages. If either or both fields are left empty or they are not formatted correctly as shown in the example request, they will not be saved in the database.


Response values

Field Type
id integer
email string
name string
companyName string
countryCode string
phoneNumber string
additionalNote string
userStatus string
externalReferenceId string
address object
address.street string
address.streetNumber string
address.postCode string
address.city string
address.country string
address.googlePlaceId string
averageRating number
numberOfRatings integer


userStatus shows the current status of the user. They are :

Please note that inviting users is currently only possible in the Facilitee App.


Get Property Manager details

Request Format

Route:

.../api/public/managers/{managerId}

Example:

.../api/public/manager/110

Response Format

Body:
{
    "id": 110,
    "email": "test-manager@facilitee.com",
    "name": "Test Manager",
    "companyName": "Manager Co.",
    "countryCode": "25",
    "phoneNumber": "354354353",
    "additionalNote": "Note",
    "userStatus": "Uninvited",
    "externalReferenceId": "pm-123",
    "address": 
    {
        "id": 222,
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "averageRating": 4.0,
    "numberOfRatings": 20
}

GET .../api/public/managers/{managerId}

Returns a User entity which has a role Property Manager and corresponds to the managerId.


Request parameters

Route:

Field Type
managerId integer required


Response values

Field Type
id integer
email string
name string
companyName string
countryCode string
phoneNumber string
additionalNote string
userStatus string
externalReferenceId string
address object
address.street string
address.streetNumber string
address.postCode string
address.city string
address.country string
address.googlePlaceId string
averageRating number
numberOfRatings integer


userStatus shows the current status of the user. They are :

Please note that inviting users is currently only possible in the Facilitee App.


Get Property Manager id by email

Request Format

Route:

.../api/public/managers/get-by-email

Example :

.../api/public/managers/get-by-email?email=email@example.com

Response Format

Body:
{
    230
}

GET .../api/public/managers/get-by-email?email=email@example.com

Returns a User entity’s id which has a role Property Manager and corresponds to the email.


Request parameters

Route:

Query parameters:

Field Type
email string required


Response values

Field Type
integer

Get a list of Property Managers

Request Format

Route:

.../api/public/managers?{queryParams}

Example :

.../api/public/managers?pageNo=1&pageSize=15&searchParameter=test

Response Format

Body:
{
    "numberOfPages": 10,
    "totalItems": 10,
    "pageSize": 1,
    "currentPage": 1,
    "items": 
    [
        {
            "id": 110,
            "email": "test-manager@facilitee.com",
            "name": "Test Manager",
            "companyName": "Manager Co.",
            "countryCode": "25",
            "phoneNumber": "354354353",
            "additionalNote": "Note",
            "userStatus": "Active",
            "externalReferenceId": "pm-123",
            "role": "PropertyManager",
            "numberOfPropertyUnits": 4,
            "averageRating": 3.5,
            "numberOfRatings": 2
        }
    ]
}

GET .../api/public/managers

Returns a list of User entities which have a role Property Manager.


Request parameters

Route:

Query parameters:

Field Type
pageNo integer optional
pageSize integer optional
searchParameter string optional

The searchParameter is used for querying the results. If a value for it is provided, only the results with fields that contain the value of the searchParameter query parameter will be returned. The following fields are checked :


Response values

Field Type
numberOfPages integer
totalItems integer
pageSize integer
currentPage integer
items array
items[index_A].id integer
items[index_A].email string
items[index_A].name string
items[index_A].companyName string
items[index_A].countryCode string
items[index_A].phoneNumber string
items[index_A].additionalNote string
items[index_A].userStatus string
items[index_A].externalReferenceId string
items[index_A].role string
items[index_A].numberOfPropertyUnits integer
items[index_A].averageRating number
items[index_A].numberOfRatings integer


userStatus shows the current userStatus of the user. They are :

Please note that inviting users is currently only possible in the Facilitee App.


Update Property Manager details

Request Format

Route:

.../api/public/managers/{managerId}

Example:

.../api/public/managers/110
Body:
{
    "email": "test-manager@facilitee.com",
    "name": "Test Manager",
    "companyName": "Manager Co.",
    "countryCode": "25",
    "phoneNumber": "354354353",
    "additionalNote": "Note",
    "externalReferenceId": "pm-123",
    "address": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    }
}

Response Format

Body:
{
    "id": 110,
    "email": "test-manager@facilitee.com",
    "name": "Test Manager",
    "companyName": "Manager Co.",
    "countryCode": "25",
    "phoneNumber": "354354353",
    "additionalNote": "Note",
    "userStatus": "Uninvited",
    "externalReferenceId": "pm-123",
    "address": 
    {
        "id": 222,
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "averageRating": 0,
    "numberOfRatings": 0
}

PUT .../api/public/managers/{managerId}

Updates a User entity with the assigned Property Manager role and a matching managerId.


Request parameters

Route:

Field Type
managerId integer required

Body:

Field Type
email string required
name string required
companyName string optional
countryCode string optional
phoneNumber string optional
additionalNote string optional
externalReferenceId string optional
address object optional
address.street string optional
address.streetNumber string optional
address.postCode string optional
address.city string optional
address.country string optional
address.googlePlaceId string optional


countryCode and phoneNumber fields are used together by the application for the purpose of sending SMS messages. If either or both fields are left empty or they are not formatted correctly as shown in the example request, they will not be saved in the database.


Response values

Field Type
id integer
email string
name string
companyName string
countryCode string
phoneNumber string
additionalNote string
userStatus string
externalReferenceId string
address object
address.street string
address.streetNumber string
address.postCode string
address.city string
address.country string
address.googlePlaceId string
averageRating number
numberOfRatings integer


userStatus shows the current userStatus of the user. They are :

Please note that inviting users is currently only possible in the Facilitee App.


Property Categorization

Property Type


Create Property Type


Request Format

Route:
.../api/public/property-categorization/property
Body:
{
    "name": "Test Property Type"
}

Response Format

Body:
{
    "id": 111,
    "name": "Test Property Type",
    "isActive": true,
    "canDelete": true,
    "isUsed": false
}

POST .../api/public/property-categorization/property

Creates a new Property Type entity.


Request parameters

Body:

Field Type
name string required


Response values

Field Type
id integer
name string
isActive boolean
canDelete boolean
isUsed boolean


Get Property Type details


Request Format

Route:

.../api/public/property-categorization/property/{propertyTypeId}

Example:

.../api/public/property-categorization/property/111

Response Format

Body:
{
    "id": 111,
    "name": "Test Property Type",
    "isActive": true,
    "canDelete": true,
    "isUsed": false
}

GET .../api/public/property-categorization/property/{propertyTypeId}

Returns a Property Type entity which corresponds to propertyTypeId.


Request parameters

Route:

Field Type
propertyTypeId integer required


Response values

Field Type
id integer
name string
isActive boolean
canDelete boolean
isUsed boolean


Get a list of Property Types


Request Format

Route:

.../api/public/property-categorization/property

Example:

.../api/public/property-categorization/property

Response Format

[
    {
        "id": 111,
        "name": "Test Property Type",
        "isActive": true,
        "canDelete": true,
        "isUsed": false
    }
]

GET .../api/public/property-categorization/property

Returns a list of Property Type entities.


Request parameters


Response values

Field Type
array
[index] object
[index].id integer
[index].name string
[index].isActive boolean
[index].canDelete boolean
[index].isUsed boolean


Update Property Type


Request Format

Route:

.../api/public/property-categorization/property/{propertyTypeId}

Example:

.../api/public/property-categorization/property/111
Body:
{
    "name": "TEST",
}

Response Format

Body:
{
"id": 111,
"name": "TEST",
"isActive": true,
"canDelete": false,
"isUsed": true
}

PUT .../api/public/property-categorization/property/{propertyTypeId}

Updates a Property Type entity with matching propertyTypeId.


Request parameters

Route:

Field Type
propertyTypeId integer required

Body:

Field Type
name string required


Response values

Field Type
id integer
name string
isActive boolean
canDelete boolean
isUsed boolean


Delete Property Type


Request Format

Route:

.../api/public/property-categorization/property/{propertyTypeId}

Example:

.../api/public/property-categorization/property/111

DELETE .../api/public/property-categorization/property/{propertyTypeId}

Deletes a Property Type entity with matching propertyTypeId.


Request parameters

Route:

Field Type
propertyTypeId integer required


Property Unit Type


Create Property Unit Type


Request Format

Route:

.../api/public/property-categorization/unit

Example:

.../api/public/property-categorization/unit
Body:
{
    "name": "Test Unit Type"
}

Response Format

Body:
{
    "id": 230,
    "name": "Test Unit Type",
    "canDelete": true,
    "isUsed": false
}

POST .../api/public/property-categorization/unit

Creates a new Property Unit Type entity.


Request parameters

Body:

Field Type
name string required


Response values

Field Type
id integer
name string
canDelete boolean
isUsed boolean


Get Property Unit Type details


Request Format

Route:

.../api/public/property-categorization/unit/{propertyUnitTypeId}

Example:

.../api/public/property-categorization/unit/230

Response Format

Body:
{
    "id": 230,
    "name": "Test Unit Type",
    "canDelete": true,
    "isUsed": false
}

GET .../api/public/property-categorization/unit/{propertyUnitTypeId}

Returns a Property Unit Type entity with a matching propertyUnitTypeId.


Request parameters

Route:

Field Type
propertyUnitTypeId integer required


Response values

Field Type
id integer
name string
canDelete boolean
isUsed boolean


Get a list of Property Unit Types


Request Format

Route:

.../api/public/property-categorization/unit

Example:

.../api/public/property-categorization/unit

Response Format

Body:
[
    {
        "id": 230,
        "name": "Test Unit Type",
        "canDelete": true,
        "isUsed": true
    }
]

GET .../api/public/property-categorization/unit

Returns a list of Property Unit Types.


Request parameters

Route:

Field Type
propertyTypeId integer required


Response values

Field Type
array
[index] object
[index].id integer
[index].name string
[index].canDelete boolean
[index].isUsed boolean


Update Property Unit


Request Format

Route:

.../api/public/property-categorization/unit/{propertyUnitTypeId}

Example:

.../api/public/property-categorization/unit/230
Body:
{
    "name": "Test Unit Type 23"
}

Response Format

Body:
{
    "id": 230,
    "name": "Test Unit Type 23",
    "canDelete": false,
    "isUsed": false
}

PUT .../api/public/property-categorization/unit/{propertyUnitTypeId}

Updates a Property Unit Type that corresponds to propertyUnitTypeId.


Request parameters

Route:

Field Type
propertyUnitTypeId integer required

Body:

Field Type
name string required


Response values

Field Type
id integer
name string
canDelete boolean
isUsed boolean


Delete Property Unit Type


Request Format

Route:

.../api/public/property-categorization/unit/{propertyUnitTypeId}

Example:

.../api/public/property-categorization/unit/230

DELETE .../api/public/property-categorization/unit/{propertyUnitTypeId}

Deletes a Property Unit Type that corresponds to propertyUnitTypeId.


Request parameters

Route:

Field Type
propertyUnitTypeId integer required


Property

Create Property

Request Format

Route:

.../api/public/Properties
Body:
{
    "address": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "name": "The Building",
    "customPropertyId": "222",
    "propertyTypeId": 10
}

Response Format

Body:
{
    "id": 10,
    "name": "The Building",
    "customPropertyId": "222",
    "address": 
    {
        "id": 33,
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "isActive": true,
    "propertyType": 
    {
        "id": 3,
        "name": "Apartment Building",
        "isActive": true,
        "canDelete": false,
        "isUsed": true
    }
}

POST .../api/public/Properties

Creates a new Property entity.


Request parameters

Body:

Field Type
address object required
address.street string required
address.streetNumber string required
address.postCode string required
address.city string required
address.country string required
address.googlePlaceId string optional
name string optional
customPropertyId string optional
propertyTypeId int optional


Response values

Field Type
id integer
name string
customPropertyId string
address object
address.id int
address.street string
address.streetNumber string
address.postCode string
address.city string
address.country string
address.googlePlaceId string
isActive boolean
propertyType object
propertyType.id int
propertyType.name string
propertyType.isActive boolean
propertyType.canDelete boolean
propertyType.isUsed boolean

Get Property details

Request Format

Route:

.../api/public/Properties/{propertyId}

Example:

.../api/public/Properties/10

Response Format

Body:
{
    "id": 10,
    "name": "The Building",
    "customPropertyId": "222",
    "address": 
    {
        "id": 33,
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "isActive": true,
    "propertyType": 
    {
        "id": 33,
        "name": "Apartment Building",
        "isActive": true,
        "canDelete": false,
        "isUsed": true
    }
}

GET .../api/public/Properties/{propertyId}

Returns a Property entity with a matching propertyId.


Request parameters

Route:

Field Type
propertyId integer required


Response values

Field Type
id integer
name string
customPropertyId string
address object
address.id int
address.street string
address.streetNumber string
address.postCode string
address.city string
address.country string
address.googlePlaceId string
isActive boolean
propertyType object
propertyType.id int
propertyType.name string
propertyType.isActive boolean
propertyType.canDelete boolean
propertyType.isUsed boolean

Get a list of Properties

Request Format

Route:

.../api/public/Properties?{queryParams}

Example :

.../api/public/Properties?pageNo=1&pageSize=15

Response Format

Body:
{
    "numberOfPages": 2,
    "totalItems": 30,
    "pageSize": 15,
    "currentPage": 1,
    "items": 
    [
        {
            "id": 10,
            "name": "The Building",
            "customPropertyId": "222",
            "address": 
            {
                "id": 33,
                "street": "Javastraat",
                "streetNumber": "1",
                "postCode": "1094 EM",
                "city": "Amsterdam",
                "country": "Netherlands",
                "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
            },
            "isActive": true,
            "propertyType": 
            {
                "id": 3,
                "name": "Apartment Building",
                "isActive": true,
                "canDelete": false,
                "isUsed": true
            }
        }
    ]
}

GET .../api/public/Properties?{queryParams}

Returns a list of Property entities.


Request parameters

Route:

Query parameters:

Field Type
pageNo integer optional
pageSize integer optional
searchParameter string optional

The searchParameter is used for querying the results. If a value for it is provided, only the results with fields that contain the value of the searchParameter query parameter will be returned. The following fields are checked :


Response values

Field Type
numberOfPages integer
totalItems integer
pageSize integer
currentPage integer
items array
items[index] object
items[index].id integer
items[index].name string
items[index].customPropertyId string
items[index].address object
items[index].address.id int
items[index].address.street string
items[index].address.streetNumber string
items[index].address.postCode string
items[index].address.city string
items[index].address.country string
items[index].address.googlePlaceId string
items[index].isActive boolean
items[index].propertyType object
items[index].propertyType.id int
items[index].propertyType.name string
items[index].propertyType.isActive boolean
items[index].propertyType.canDelete boolean
items[index].propertyType.isUsed boolean


Update Property details

Request Format

Route:

.../api/public/Properties/{propertyId}

Example:

.../api/public/Properties/10
Body:
{
    "address": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "name": "Dutch building",
    "customPropertyId": "222",
    "propertyTypeId": 3
}

Response Format

Body:
{
    "id": 10,
    "name": "Dutch building",
    "customPropertyId": "222",
    "address": 
    {
        "id": 33,
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "isActive": true,
    "propertyType":
     {
        "id": 3,
        "name": "Apartment Building",
        "isActive": true,
        "canDelete": true,
        "isUsed": true
    }
}

PUT .../api/public/Properties/{propertyId}

Updates a Property entity with a matching propertyId.


Request parameters

Route:

Field Type
propertyId integer required

Body:

Field Type
address object required
address.street string required
address.streetNumber string required
address.postCode string required
address.city string required
address.country string required
address.googlePlaceId string optional
name string optional
customPropertyId string optional
propertyTypeId int optional


Response values

Field Type
id integer
name string
customPropertyId string
address object
address.id int
address.street string
address.streetNumber string
address.postCode string
address.city string
address.country string
address.googlePlaceId string
isActive boolean
propertyType object
propertyType.id int
propertyType.name string
propertyType.isActive boolean
propertyType.canDelete boolean
propertyType.isUsed boolean


Property Unit

Create Property Unit

Request Format

Route:

.../api/public/PropertyUnit/{propertyId}
Body:
{
    "address": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "floor": 1,
    "contractStart": "01.01.2021",
    "contractEnd": "01.01.2022",
    "additionalNote": "At the end of the hallway, to the right.",
    "isCommonSpace": true,
    "customUnitId": "JavaStraat-1-200",
    "managerId": 15,
    "ownerId": 20,
    "ownerCompanyId": 22,
    "propertyUserIds": 
    [
        30,35
    ],
    "contactId": 35,
    "propertyUnitTypeId": 10,
    "hasPropertyAddress": false
}

Response Format

Body:
{
    "id": 1489,
    "address": 
    {
        "id": 21048,
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "contractStart": "2021-01-01T00:00:00.000Z",
    "contractEnd": "2022-01-01T00:00:00.000Z",
    "expired": false,
    "isCommonSpace": true,
    "isActive": true,
    "manager": 
    {
        "id": 398,
        "email": "manager@facilitee.com",
        "name": "Manager",
        "companyName": "Management company",
        "countryCode": "93",
        "phoneNumber": "1231232",
        "additionalNote": "PM",
        "isActive": true,
        "userStatus": "Active"
    },
    "defaultIssueManager": 
    {
        "id": 33,
        "email": "manager2@facilitee.com",
        "name": "Issue Manager",
        "companyName": "Management company",
        "countryCode": "93",
        "phoneNumber": "2323322",
        "additionalNote": "IM",
        "isActive": true,
        "userStatus": "Active"
    },
    "owner": 
    {
        "id": 468,
        "email": "owner.facilitee.com",
        "name": "Property Owner",
        "companyName": "The Company",
        "countryCode": "38",
        "phoneNumber": "991929314",
        "authorizedAmount": 350.50,
        "isActive": true,
        "userStatus": "Active"
    },
    "ownerCompany": 
    {
        "id": 22,
        "name": "Test Company",
        "invoiceEmail": "test-company@email.com",
        "maxMandateAmount": 1000,
        "attentionTo": "Sales team",
        "countryCode": "+31",
        "phoneNumber": "23545467"
    },
    "propertyUsers": 
    [
        {
            "id": 2566,
            "email": "user1@facilitee.com",
            "name": "The User 1",
            "companyName": "Occupants",
            "countryCode": "32",
            "phoneNumber": "991929314",
            "additionalNote": null,
            "isContact": false,
            "isActive": true
        },
        {
            "id": 2567,
            "email": "main-contact@facilitee.com",
            "name": "Main Contact User",
            "companyName": "Occupants",
            "countryCode": "32",
            "phoneNumber": "991929314",
            "additionalNote": null,
            "isContact": true,
            "isActive": true
        }
    ],
    "attachments": null,
    "customUnitId": "JavaStraat-1-200",
    "additionalNote": "At the end of the hallway, to the right.",
    "floor": 1,
    "propertyUnitType": {
        "id": 19,
        "name": "Apartment",
        "canDelete": true,
        "isUsed": true
    },
    "property": {
        "propertyType": {
            "id": 3,
            "name": "Apartment building",
            "isActive": true,
            "canDelete": true,
            "isUsed": false
        },
        "name": "Dutch building",
        "id": 1257
    },
    "hasPropertyAddress": false
}

POST .../api/public/PropertyUnit/{propertyId}

Creates a new Property Unit entity.


Request parameters

Route:

Field Type
propertyId integer required

Body:

Field Type
address object required when hasPropertyAddress is set to false, ignored otherwise
address.street string required or optional
address.streetNumber string required or optional
address.postCode string required or optional
address.city string required or optional
address.country string required or optional
address.googlePlaceId string optional
floor integer optional
contractStart string(date-time) optional
contractEnd string(date-time) optional
additionalNote string optional
isCommonSpace boolean optional
customUnitId string optional
managerId integer optional
ownerId integer required
ownerCompanyId integer optional
propertyUserIds array optional
propertyUserIds[index] integer optional
contactId integer optional
propertyUnitTypeId integer optional
hasPropertyAddress boolean optional


propertyId represents an identifier of the property entity, each property unit needs to be assigned to a property.

customUnitId represents a custom identifier of your choosing, if left unspecifed a unique customUnitId will be auto-generated.

propertyUnitTypeId is an identifier of the property unit type entity used to categorize the property unit.

contactId refers to the userId of a property user who will be designated as the main contact for that property.

propertyUserIds is an array containing userIds of property users who will use the property.

hasPropertyAddress is a flag determining whether the property unit will inherit the address of its property entity parent. If left unspecified it will fall back to true.Any changes of address for that Property entity will be reflected to the contained Property Units that have this flag set to true.


Response values

Field Type
id integer
address object
address.id int
address.street string
address.streetNumber string
address.postCode string
address.city string
address.country string
address.googlePlaceId string
contractStart string(date-time)
contractEnd string(date-time)
expired boolean
isCommonSpace boolean
isActive boolean
manager object
manager.id integer
manager.email string
manager.name string
manager.companyName string
manager.countryCode string
manager.phoneNumber string
manager.additionalNote string
manager.isActive boolean
manager.userStatus string
defaultIssueManager object
defaultIssueManager.id integer
defaultIssueManager.email string
defaultIssueManager.name string
defaultIssueManager.companyName string
defaultIssueManager.countryCode string
defaultIssueManager.phoneNumber string
defaultIssueManager.additionalNote string
defaultIssueManager.isActive boolean
defaultIssueManager.userStatus string
owner object
owner.id integer
owner.email string
owner.name string
owner.companyName string
owner.countryCode string
owner.phoneNumber string
owner.authorizedAmount number
owner.isActive boolean
owner.userStatus string
ownerCompany object
ownerCompany.id integer
ownerCompany.name string
ownerCompany.invoiceEmail string
ownerCompany.maxMandateAmount number
ownerCompany.attentionTo string
ownerCompany.countryCode string
ownerCompany.phoneNumber string
propertyUsers array
propertyUsers[index] object
propertyUsers[index].id integer
propertyUsers[index].email string
propertyUsers[index].name string
propertyUsers[index].companyName string
propertyUsers[index].countryCode string
propertyUsers[index].phoneNumber string
propertyUsers[index].additionalNote string
propertyUsers[index].isContact boolean
propertyUsers[index].isActive boolean
attachments array
attachments[index] object
attachments[index].id integer
attachments[index].name string
attachments[index].url string
attachments[index].size integer
customUnitId string
additionalNote string
floor integer
propertyUnitType object
propertyUnitType.id integer
propertyUnitType.name string
propertyUnitType.canDelete boolean
propertyUnitType.isUsed boolean
property object
property.propertyType object
property.propertyType.id integer
property.propertyType.name string
property.propertyType.isActive boolean
property.propertyType.canDelete boolean
property.propertyType.isUsed boolean
property.name string
property.id integer
hasPropertyAddress boolean


Get Property Unit details

Request Format

Route:

.../api/public/PropertyUnit/{propertyUnitId}

Example:

.../api/public/PropertyUnit/1489

Response Format

Body:
{
    "id": 1489,
    "address": 
    {
        "id": 21048,
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "contractStart": "2021-01-01T00:00:00.000Z",
    "contractEnd": "2022-01-01T00:00:00.000Z",
    "expired": false,
    "isCommonSpace": true,
    "isActive": true,
    "manager": 
    {
        "id": 398,
        "email": "manager@facilitee.com",
        "name": "Manager",
        "companyName": "Management company",
        "countryCode": "93",
        "phoneNumber": "1231232",
        "additionalNote": "PM",
        "isActive": true,
        "userStatus": "Active"
    },
    "defaultIssueManager": 
    {
        "id": 33,
        "email": "manager2@facilitee.com",
        "name": "Issue Manager",
        "companyName": "Management company",
        "countryCode": "93",
        "phoneNumber": "2323322",
        "additionalNote": "IM",
        "isActive": true,
        "userStatus": "Active"
    },
    "owner": 
    {
        "id": 468,
        "email": "owner.facilitee.com",
        "name": "Property Owner",
        "companyName": "The Company",
        "countryCode": "38",
        "phoneNumber": "991929314",
        "authorizedAmount": 350.50,
        "isActive": true,
        "userStatus": "Active"
    },
    "ownerCompany": 
    {
        "id": 22,
        "name": "Test Company",
        "invoiceEmail": "test-company@email.com",
        "maxMandateAmount": 1000,
        "attentionTo": "Sales team",
        "countryCode": "+31",
        "phoneNumber": "23545467"
    },
    "propertyUsers": 
    [
        {
            "id": 2566,
            "email": "user1@facilitee.com",
            "name": "The User 1",
            "companyName": "Occupants",
            "countryCode": "32",
            "phoneNumber": "991929314",
            "additionalNote": null,
            "isContact": false,
            "isActive": true
        },
        {
            "id": 2567,
            "email": "main-contact@facilitee.com",
            "name": "Main Contact User",
            "companyName": "Occupants",
            "countryCode": "32",
            "phoneNumber": "991929314",
            "additionalNote": null,
            "isContact": true,
            "isActive": true
        }
    ],
    "attachments": null,
    "customUnitId": "JavaStraat-1-200",
    "additionalNote": "At the end of the hallway, to the right.",
    "floor": 1,
    "propertyUnitType": {
        "id": 19,
        "name": "Apartment",
        "canDelete": true,
        "isUsed": true
    },
    "property": {
        "propertyType": {
            "id": 3,
            "name": "Apartment building",
            "isActive": true,
            "canDelete": true,
            "isUsed": false
        },
        "name": "Dutch building",
        "id": 1257
    },
    "hasPropertyAddress": false
}

GET .../api/public/PropertyUnit/{propertyUnitId}

Returns a Property Unit entity with a matching propertyUnitId.


Request parameters

Route:

Field Type
propertyUnitId integer required


Response values

Field Type
id integer
address object
address.id int
address.street string
address.streetNumber string
address.postCode string
address.city string
address.country string
address.googlePlaceId string
contractStart string(date-time)
contractEnd string(date-time)
expired boolean
isCommonSpace boolean
isActive boolean
manager object
manager.id integer
manager.email string
manager.name string
manager.companyName string
manager.countryCode string
manager.phoneNumber string
manager.additionalNote string
manager.isActive boolean
manager.userStatus string
defaultIssueManager object
defaultIssueManager.id integer
defaultIssueManager.email string
defaultIssueManager.name string
defaultIssueManager.companyName string
defaultIssueManager.countryCode string
defaultIssueManager.phoneNumber string
defaultIssueManager.additionalNote string
defaultIssueManager.isActive boolean
defaultIssueManager.userStatus string
owner object
owner.id integer
owner.email string
owner.name string
owner.companyName string
owner.countryCode string
owner.phoneNumber string
owner.authorizedAmount number
owner.isActive boolean
owner.userStatus string
ownerCompany object
ownerCompany.id integer
ownerCompany.name string
ownerCompany.invoiceEmail string
ownerCompany.maxMandateAmount number
ownerCompany.attentionTo string
ownerCompany.countryCode string
ownerCompany.phoneNumber string
propertyUsers array
propertyUsers[index] object
propertyUsers[index].id integer
propertyUsers[index].email string
propertyUsers[index].name string
propertyUsers[index].companyName string
propertyUsers[index].countryCode string
propertyUsers[index].phoneNumber string
propertyUsers[index].additionalNote string
propertyUsers[index].isContact boolean
propertyUsers[index].isActive boolean
attachments array
attachments[index] object
attachments[index].id integer
attachments[index].name string
attachments[index].url string
attachments[index].size integer
customUnitId string
additionalNote string
floor integer
propertyUnitType object
propertyUnitType.id integer
propertyUnitType.name string
propertyUnitType.canDelete boolean
propertyUnitType.isUsed boolean
property object
property.propertyType object
property.propertyType.id integer
property.propertyType.name string
property.propertyType.isActive boolean
property.propertyType.canDelete boolean
property.propertyType.isUsed boolean
property.name string
property.id integer
hasPropertyAddress boolean

Get a list of Property Units

Request Format

Route:

.../api/public/PropertyUnit?{queryParams}

Example :

.../api/public/PropertyUnit?pageNo=1&pageSize=15&propertyId=10

Response Format

Body:
{
    "numberOfPages": 10,
    "totalItems": 10,
    "pageSize": 1,
    "currentPage": 1,
    "items": 
    [
        {
            "id": 10,
            "address": 
            {
                "id": 21048,
                "street": "Javastraat",
                "streetNumber": "1",
                "postCode": "1094 EM",
                "city": "Amsterdam",
                "country": "Netherlands",
                "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
            },
            "propertyUnitType": 
            {
                "id": 19,
                "name": "Apartment",
                "canDelete": true,
                "isUsed": true
            },
            "isCommonSpace": false,
            "isActive": true,
            "customUnitId": "Custom ID",
            "additionalNote": "string",
            "floor": 0,
            "mainContact": 
            {
                "email": "user1@facilitee.com",
                "name": "The User 1",
                "companyName": "Occupants",
                "countryCode": "32",
                "phoneNumber": "991929314",
                "additionalNote": null
            },
            "mainContactContractEnd": "2021-12-16T10:41:51.018Z",
            "defaultIssueManagerName": "Issue Manager",
            "defaultPropertyManagerName": "Property Manager",
            "propertyManagerId": 15,
            "ownerName": "Property Owner",
            "ownerCompanyName": "Test Company"
        }
    ]
}

GET .../api/public/PropertyUnit?{queryParams}

Returns a list of Property Unit entities.


Request parameters

Route:

Query parameters:

Field Type
pageNo integer optional
pageSize integer optional
searchParameter string optional
propertyId integer required

The searchParameter is used for querying the results. If a value for it is provided, only the results with fields that contain the value of the searchParameter query parameter will be returned. The following fields are checked :

propertyId refers to the ID of the Property entity that you want to see a list of Property Units for.


Response values

Field Type
numberOfPages integer
totalItems integer
pageSize integer
currentPage integer
items array
items[index] object
items[index].id integer
items[index].address object
items[index].address.id integer
items[index].address.street string
items[index].address.streetNumber string
items[index].address.postCode string
items[index].address.city string
items[index].address.country string
items[index].address.googlePlaceId string
items[index].propertyUnitType object
items[index].propertyUnitType.id integer
items[index].propertyUnitType.name string
items[index].propertyUnitType.canDelete string
items[index].propertyUnitType.isUsed string
items[index].isCommonSpace boolean
items[index].isActive boolean
items[index].customUnitId string
items[index].additionalNote string
items[index].floor integer
items[index].mainContact object
items[index].mainContact.email string
items[index].mainContact.name string
items[index].mainContact.companyName string
items[index].mainContact.countryCode string
items[index].mainContact.phoneNumber string
items[index].mainContact.additionalNote string
items[index].mainContactContractEnd string(date-time)
items[index].defaultIssueManagerName string
items[index].defaultPropertyManagerName string
items[index].propertyManagerId integer
items[index].ownerName string
items[index].ownerCompanyName string


Update Property Unit details

Request Format

Route:

.../api/public/PropertyUnit/{propertyUnitId}

Example:

.../api/public/PropertyUnit/1489
Body:
{
    "address": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "floor": 1,
    "contractStart": "01.01.2021",
    "contractEnd": "01.01.2022",
    "additionalNote": "At the end of the hallway, to the right.",
    "isCommonSpace": true,
    "customUnitId": "JavaStraat-1-200",
    "managerId": 15,
    "ownerId": 20,
    "ownerCompanyId": 22,
    "propertyUserIds": 
    [
        30,35
    ],
    "contactId": 35,
    "propertyUnitTypeId": 10,
    "hasPropertyAddress": false
}

Response Format

Body:
{
    "id": 1489,
    "address": 
    {
        "id": 21048,
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "contractStart": "2021-01-01T00:00:00.000Z",
    "contractEnd": "2022-01-01T00:00:00.000Z",
    "expired": false,
    "isCommonSpace": true,
    "isActive": true,
    "manager": 
    {
        "id": 398,
        "email": "manager@facilitee.com",
        "name": "Manager",
        "companyName": "Management company",
        "countryCode": "93",
        "phoneNumber": "1231232",
        "additionalNote": "PM",
        "isActive": true,
        "userStatus": "Active"
    },
    "defaultIssueManager": 
    {
        "id": 33,
        "email": "manager2@facilitee.com",
        "name": "Issue Manager",
        "companyName": "Management company",
        "countryCode": "93",
        "phoneNumber": "2323322",
        "additionalNote": "IM",
        "isActive": true,
        "userStatus": "Active"
    },
    "owner": 
    {
        "id": 468,
        "email": "owner.facilitee.com",
        "name": "Property Owner",
        "companyName": "The Company",
        "countryCode": "38",
        "phoneNumber": "991929314",
        "authorizedAmount": 350.50,
        "isActive": true,
        "userStatus": "Active"
    },
    "ownerCompany": 
    {
        "id": 22, 
        "name": "Test Company",
        "invoiceEmail": "test-company@email.com",
        "maxMandateAmount": 1000,
        "attentionTo": "Sales team",
        "countryCode": "+31",
        "phoneNumber": "23545467"
    },
    "propertyUsers": 
    [
        {
            "id": 2566,
            "email": "user1@facilitee.com",
            "name": "The User 1",
            "companyName": "Occupants",
            "countryCode": "32",
            "phoneNumber": "991929314",
            "additionalNote": null,
            "isContact": false,
            "isActive": true
        },
        {
            "id": 2567,
            "email": "main-contact@facilitee.com",
            "name": "Main Contact User",
            "companyName": "Occupants",
            "countryCode": "32",
            "phoneNumber": "991929314",
            "additionalNote": null,
            "isContact": true,
            "isActive": true
        }
    ],
    "attachments": null,
    "customUnitId": "JavaStraat-1-200",
    "additionalNote": "At the end of the hallway, to the right.",
    "floor": 1,
    "propertyUnitType": {
        "id": 19,
        "name": "Apartment",
        "canDelete": true,
        "isUsed": true
    },
    "property": {
        "propertyType": {
            "id": 3,
            "name": "Apartment building",
            "isActive": true,
            "canDelete": true,
            "isUsed": false
        },
        "name": "Dutch building",
        "id": 1257
    },
    "hasPropertyAddress": false
}

PUT .../api/public/PropertyUnit/{propertyUnitId}

Updates a Property Unit entity with a matching propertyUnitId.


Request parameters

Route:

Field Type
propertyUnitId integer required

Body:

Field Type
address object required when hasPropertyAddress is set to false, ignored otherwise
address.street string required or optional
address.streetNumber string required or optional
address.postCode string required or optional
address.city string required or optional
address.country string required or optional
address.googlePlaceId string optional
floor integer optional
contractStart string(date-time) optional
contractEnd string(date-time) optional
additionalNote string optional
isCommonSpace boolean optional
customUnitId string optional
managerId integer optional
ownerId integer required
ownerCompanyId integer optional
propertyUserIds array optional
propertyUserIds[index] integer optional
contactId integer optional
propertyUnitTypeId integer optional
hasPropertyAddress boolean optional


contactId refers to the userId of a property user who will be designated as the main contact for that property.

propertyUserIds is an array containing userIds of property users who will use the property.

If managerId is not provided, the Property Unit will keep its current Property Manager.

Response values

Field Type
id integer
address object
address.id int
address.street string
address.streetNumber string
address.postCode string
address.city string
address.country string
address.googlePlaceId string
contractStart string(date-time)
contractEnd string(date-time)
expired boolean
isCommonSpace boolean
isActive boolean
manager object
manager.id integer
manager.email string
manager.name string
manager.companyName string
manager.countryCode string
manager.phoneNumber string
manager.additionalNote string
manager.isActive boolean
manager.userStatus string
defaultIssueManager object
defaultIssueManager.id integer
defaultIssueManager.email string
defaultIssueManager.name string
defaultIssueManager.companyName string
defaultIssueManager.countryCode string
defaultIssueManager.phoneNumber string
defaultIssueManager.additionalNote string
defaultIssueManager.isActive boolean
defaultIssueManager.userStatus string
owner object
owner.id integer
owner.email string
owner.name string
owner.companyName string
owner.countryCode string
owner.phoneNumber string
owner.authorizedAmount number
owner.isActive boolean
owner.userStatus string
ownerCompany object
ownerCompany.id integer
ownerCompany.name string
ownerCompany.invoiceEmail string
ownerCompany.maxMandateAmount number
ownerCompany.attentionTo string
ownerCompany.countryCode string
ownerCompany.phoneNumber string
propertyUsers array
propertyUsers[index] object
propertyUsers[index].id integer
propertyUsers[index].email string
propertyUsers[index].name string
propertyUsers[index].companyName string
propertyUsers[index].countryCode string
propertyUsers[index].phoneNumber string
propertyUsers[index].additionalNote string
propertyUsers[index].isContact boolean
propertyUsers[index].isActive boolean
attachments array
attachments[index] object
attachments[index].id integer
attachments[index].name string
attachments[index].url string
attachments[index].size integer
customUnitId string
additionalNote string
floor integer
propertyUnitType object
propertyUnitType.id integer
propertyUnitType.name string
propertyUnitType.canDelete boolean
propertyUnitType.isUsed boolean
property object
property.propertyType object
property.propertyType.id integer
property.propertyType.name string
property.propertyType.isActive boolean
property.propertyType.canDelete boolean
property.propertyType.isUsed boolean
property.name string
property.id integer
hasPropertyAddress boolean


Change Property Unit Owner

Request Format

Route:

.../api/public/PropertyUnit/change-property-owner/{propertyUnitId}?{queryParams}

Example:

.../api/public/PropertyUnit/change-property-owner/1489?newOwnerId=30

Response Format

Body:
{
    "propertyUnitId": 1489,
    "oldOwner": 
    {
        "id": 468,
        "email": "owner.facilitee.com",
        "name": "Property Owner",
        "companyName": "The Company",
        "countryCode": "38",
        "phoneNumber": "991929314",
        "authorizedAmount": 350.50,
        "isActive": true,
        "userStatus": "string"

    },
    "newOwner": 
    {
        "id": 30,
        "email": "owner2.facilitee.com",
        "name": "Property Owner 2",
        "companyName": "The Company 2",
        "countryCode": "31",
        "phoneNumber": "991929314",
        "authorizedAmount": 750.50,
        "isActive": true,
        "userStatus": "string"
    }
}

PUT .../api/public/PropertyUnit/change-property-owner/{propertyUnitId}{queryParams}

Replaces an existing owner of a property unit with a new owner. The property unit matches the propertyUnitId and the new owner matches the newOwnerId.


Request parameters

Route:

Field Type
propertyUnitId integer required

Query parameters:

Field Type
newOwnerId integer required


Response values

Field Type
propertyUnitId integer
oldOwner object
oldOwner.id integer
oldOwner.email string
oldOwner.name string
oldOwner.companyName string
oldOwner.countryCode string
oldOwner.phoneNumber string
oldOwner.authorizedAmount number
oldOwner.isActive boolean
oldOwner.userStatus string
newOwner object
newOwner object
newOwner.id integer
newOwner.email string
newOwner.name string
newOwner.companyName string
newOwner.countryCode string
newOwner.phoneNumber string
newOwner.authorizedAmount number
newOwner.isActive boolean
newOwner.userStatus string


Assign Property User to a Property Unit

Request Format

Route:

.../api/public/PropertyUnit/assign-property-user/{propertyUnitId}

Example:

.../api/public/PropertyUnit/assign-property-user/1489
Body:
{
    "propertyUserId": 35,
    "isMainContact": true
}

Response Format

Body:
{
    "propertyUnitId": 1489,
    "propertyUsers": 
    [
        {
            "id": 35,
            "email": "test-user@facilitee.com",
            "name": "Test User",
            "companyName": "Occupants Co.",
            "countryCode": "31",
            "phoneNumber": "234342342",
            "additionalNote": "Note",
            "isMainContact": true,
            "contractStartDate": "2021-12-16T11:49:14.365Z",
            "contractEndDate": "2022-12-16T11:49:14.365Z"
        }
    ]
}

PUT .../api/public/PropertyUnit/assign-property-user/1489

Assigns a User with a role Property User to a property unit. It is possible to define if this Property User is a main contact. The property unit matches the propertyUnitId and the new Property User matches the propertyUserId.


Request parameters

Route:

Field Type
propertyUnitId integer required

Body:

Field Type
propertyUserId integer required
isMainContact boolean optional


Response values

Field Type
propertyUnitId integer
propertyUsers array
propertyUsers[index] object
propertyUsers[index].id integer
propertyUsers[index].email string
propertyUsers[index].name string
propertyUsers[index].companyName string
propertyUsers[index].countryCode string
propertyUsers[index].phoneNumber string
propertyUsers[index].additionalNote string
propertyUsers[index].isMainContact boolean
propertyUsers[index].contractStartDate string(date-time)
propertyUsers[index].contractEndDate string(date-time)

Remove Property User from a Property Unit

Request Format

Route:

.../api/public/PropertyUnit/remove-property-user/{propertyUnitId}?{queryParams}

Example :

.../api/public/PropertyUnit/remove-property-user/1489?propertyUserId=35

Response Format

Body:
{
    "propertyUnitId": 1489,
    "propertyUser": 
    {
        "id": 35,
        "email": "test-user@facilitee.com",
        "name": "Test User",
        "companyName": "Occupants Co.",
        "countryCode": "31",
        "phoneNumber": "234342342",
        "additionalNote": "Note",
        "isMainContact": true,
        "contractStartDate": "2021-12-16T11:49:14.365Z",
        "contractEndDate": "2022-12-16T11:49:14.365Z"
    }
}

PUT .../api/public/PropertyUnit/remove-property-user/{propertyUnitId}?{queryParams}

Removes a User with a role Property User from a property unit. The property unit matches the propertyUnitId and the Property User matches the propertyUserId.


Request parameters

Route:

Field Type
propertyUnitId integer required

Query parameters:

Field Type
propertyUserId integer required


Response values

Field Type
propertyUnitId integer
propertyUser object
propertyUser.id integer
propertyUser.email string
propertyUser.name string
propertyUser.companyName string
propertyUser.countryCode string
propertyUser.phoneNumber string
propertyUser.additionalNote string
propertyUser.isMainContact boolean
propertyUser.contractStartDate string(date-time)
propertyUser.contractEndDate string(date-time)

Service Provider

Create Service Provider

Request Format

Route:

.../api/public/service-providers
Body:
{
    "email": "servicer@facilitee.com",
    "name": "Service Provider",
    "companyName": "The Fixer Uppers",
    "countryCode": "32",
    "phoneNumber": "2343454",
    "additionalNote": "We can fix it.",
    "externalReferenceId": "servicer-123",
    "address": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    }
}

Response Format

Body:
{
    "id": 330,
    "email": "servicer@facilitee.com",
    "name": "Service Provider",
    "companyName": "The Fixer Uppers",
    "countryCode": "32",
    "phoneNumber": "2343454",
    "additionalNote": "We can fix it.",
    "status": "Uninvited",
    "externalReferenceId": "servicer-123",
    "tags": 
    [
        {
            "id": 2,
            "name": "Plumbing"
        }
    ],
    "attachments": 
    [
        {
            "id": 10,
            "name": "Document",
            "url": "url",
            "size": 5
        }
    ],
    "address": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "averageRating": 0,
    "numberOfRatings": 0
}

POST .../api/public/service-providers

Creates a new User entity and assigns a role Service Provider to it.


Request parameters

Body:

Field Type
email string required
name string required
companyName string optional
countryCode string optional
phoneNumber string optional
additionalNote string optional
externalReferenceId string optional
address object optional
address.street string optional
address.streetNumber string optional
address.postCode string optional
address.city string optional
address.country string optional
address.googlePlaceId string optional


countryCode and phoneNumber fields are used together by the application for the purpose of sending SMS messages. If either or both fields are left empty or they are not formatted correctly as shown in the example request, they will not be saved in the database.


Response values

Field Type
id integer
email string
name string
companyName string
countryCode string
phoneNumber string
additionalNote string
status string
externalReferenceId string
tags array
tags[index] object
tags[index].id integer
tags[index].name string
address object
address.street string
address.streetNumber string
address.postCode string
address.city string
address.country string
address.googlePlaceId string
averageRating number
numberOfRatings integer


status shows the current status of the user. They are :

Please note that inviting users is currently only possible in the Facilitee App.


Get Service Provider details

Request Format

Route:

.../api/public/service-providers/{serviceProviderId}

Example:

.../api/public/service-providers/330

Response Format

Body:
{
    "id": 330,
    "email": "servicer@facilitee.com",
    "name": "Service Provider",
    "companyName": "The Fixer Uppers",
    "countryCode": "32",
    "phoneNumber": "2343454",
    "additionalNote": "We can fix it.",
    "status": "Active",
    "externalReferenceId": "servicer-123",
    "tags": 
    [
        {
            "id": 2,
            "name": "Plumbing"
        }
    ],
    "attachments": 
    [
        {
            "id": 10,
            "name": "Document",
            "url": "url",
            "size": 5
        }
    ],
    "address": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "averageRating": 0,
    "numberOfRatings": 0
}

GET .../api/public/service-providers/{serviceProviderId}

Returns a User entity which has a role Service Provider and corresponds to the serviceProviderId.


Request parameters

Route:

Field Type
serviceProviderId integer required


Response values

Field Type
id integer
email string
name string
companyName string
countryCode string
phoneNumber string
additionalNote string
status string
externalReferenceId string
tags array
tags[index] object
tags[index].id integer
tags[index].name string
address object
address.street string
address.streetNumber string
address.postCode string
address.city string
address.country string
address.googlePlaceId string
averageRating number
numberOfRatings integer


status shows the current status of the user. They are :

Please note that inviting users is currently only possible in the Facilitee App.


Get a list of Service Providers

Request Format

Route:

.../api/public/service-providers?{queryParams}

Example :

.../api/public/service-providers?pageNo=1&pageSize=15&searchParameter=Fixer

Response Format

Body:
{
    "numberOfPages": 0,
    "totalItems": 0,
    "pageSize": 0,
    "currentPage": 0,
    "items":
    [
        {
            "id": 330,
            "email": "servicer@facilitee.com",
            "name": "Service Provider",
            "companyName": "The Fixer Uppers",
            "countryCode": "32",
            "phoneNumber": "2343454",
            "additionalNote": "We can fix it.",
            "userStatus": "Active",
            "activeIssues": 2,
            "externalReferenceId": "servicer-123",
            "tags": 
            [
                "Plumbing"
            ],
            "address": 
            {
                "street": "Javastraat",
                "streetNumber": "1",
                "postCode": "1094 EM",
                "city": "Amsterdam",
                "country": "Netherlands",
                "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
            },
            "averageRating": 0,
            "numberOfRatings": 0
        }
    ]
}

GET .../api/public/service-providers

Returns a list of User entities which have a role Service Provider.


Request parameters

Route:

Query parameters:

Field Type
pageNo integer optional
pageSize integer optional
searchParameter string optional

The searchParameter is used for querying the results. If a value for it is provided, only the results with fields that contain the value of the searchParameter query parameter will be returned. The following fields are checked :


Response values

Field Type
numberOfPages integer
totalItems integer
pageSize integer
currentPage integer
items array
items[index_A] object
items[index_A].id integer
items[index_A].email string
items[index_A].name string
items[index_A].companyName string
items[index_A].countryCode string
items[index_A].phoneNumber string
items[index_A].additionalNote string
items[index_A].userStatus string
items[index_A].activeIssues integer
items[index_A].externalReferenceId string
items[index_A].tags array
items[index_A].tags[index_B] string
items[index_A].address object
items[index_A].address.id integer
items[index_A].address.street string
items[index_A].address.streetNumber string
items[index_A].address.postCode string
items[index_A].address.city string
items[index_A].address.country string
items[index_A].address.googlePlaceId string
items[index_A].averageRating number
items[index_A].numberOfRatings integer


userStatus shows the current status of the user. They are :

Please note that inviting users is currently only possible in the Facilitee App.


Update Service Provider details

Request Format

Route:

...​/api​/public​/service-providers​/{serviceProviderId}

Example:

​.../api​/public​/service-providers​/32
Body:
{
    "email": "servicer@facilitee.com",
    "name": "Service Provider",
    "companyName": "The Fixer Uppers",
    "countryCode": "32",
    "phoneNumber": "2343454",
    "additionalNote": "We can fix it.",
    "externalReferenceId": "servicer-123",
    "tags": 
    [
        2
    ],
    "address": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    }
}

Response Format

Body:
{
    "id": 330,
    "email": "servicer@facilitee.com",
    "name": "Service Provider",
    "companyName": "The Fixer Uppers",
    "countryCode": "32",
    "phoneNumber": "2343454",
    "additionalNote": "We can fix it.",
    "status": "Active",
    "externalReferenceId": "servicer-123",
    "tags": 
    [
        {
            "id": 2,
            "name": "Plumbing"
        }
    ],
    "attachments": 
    [
        {
            "id": 10,
            "name": "Document",
            "url": "url",
            "size": 5
        }
    ],
    "address": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "averageRating": 0,
    "numberOfRatings": 0
}

PUT .../api/public/service-providers/{serviceProviderId}

Updates a User entity with the assigned Service Provider role and a matching serviceProviderId.


Request parameters

Route:

Field Type
serviceProviderId integer required

Body:

Field Type
email string required
name string required
companyName string optional
countryCode string optional
phoneNumber string optional
additionalNote string optional
externalReferenceId string optional
address object optional
address.street string optional
address.streetNumber string optional
address.postCode string optional
address.city string optional
address.country string optional
address.googlePlaceId string optional


countryCode and phoneNumber fields are used together by the application for the purpose of sending SMS messages. If either or both fields are left empty or they are not formatted correctly as shown in the example request, they will not be saved in the database.


Response values

Field Type
id integer
email string
name string
companyName string
countryCode string
phoneNumber string
additionalNote string
status string
externalReferenceId string
tags array
tags[index] object
tags[index].id integer
tags[index].name string
address object
address.street string
address.streetNumber string
address.postCode string
address.city string
address.country string
address.googlePlaceId string
averageRating number
numberOfRatings integer


status shows the current status of the user. They are :

Please note that inviting users is currently only possible in the Facilitee App.


Property User

Create Property User

Request Format

Route:

.../api/public/property-users
Body:
{
    "email": "test-user@facilitee.com",
    "name": "Test User",
    "companyName": "Occupants Co.",
    "countryCode": "25",
    "phoneNumber": "354354353",
    "additionalNote": "Note",
    "externalReferenceId": "user-123",
    "address": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    }
}

Response Format

Body:
{
    "id": 110,
    "email": "test-user@facilitee.com",
    "name": "Test User",
    "companyName": "Occupants Co.",
    "countryCode": "25",
    "phoneNumber": "354354353",
    "additionalNote": "Note",
    "status": "Uninvited",
    "externalReferenceId": "user-123",
    "address": 
    {
        "id": 222,
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    },
    "propertyUnits": 
    [
        {
            "propertyUnitId": 35,
            "customUnitId": "Custom Unit ID",
            "additionalNote": "Note",
            "floor": 0,
            "isMainContact": true,
            "contractStart": "2021-12-16T11:49:14.365Z",
            "contractEnd": "2022-12-16T11:49:14.365Z",
            "address": 
            {
                "street": "Javastraat",
                "streetNumber": "12",
                "postCode": "1094 EM",
                "city": "Amsterdam",
                "country": "Netherlands",
                "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
            }
        }
    ]
}

POST .../api/public/property-users

Creates a new User entity and assigns a role Property User to it.


Request parameters

Body:

Field Type
email string required
name string required
companyName string optional
countryCode string optional
phoneNumber string optional
additionalNote string optional
externalReferenceId string optional
address object optional
address.street string optional
address.streetNumber string optional
address.postCode string optional
address.city string optional
address.country string optional
address.googlePlaceId string optional


countryCode and phoneNumber fields are used together by the application for the purpose of sending SMS messages. If either or both fields are left empty or they are not formatted correctly as shown in the example request, they will not be saved in the database.


Response values

Field Type
id integer
email string
name string
companyName string
countryCode string
phoneNumber string
additionalNote string
status string
externalReferenceId string
address object
address.street string
address.streetNumber string
address.postCode string
address.city string
address.country string
address.googlePlaceId string
propertyUnits array
propertyUnits[index].propertyUnitId int
propertyUnits[index].customUnitId string
propertyUnits[index].additionalNote string
propertyUnits[index].floor int
propertyUnits[index].isMainContact boolean
propertyUnits[index].contractStart string(date-time)
propertyUnits[index].contractEnd string(date-time)
propertyUnits[index].address object
propertyUnits[index].address.street string
propertyUnits[index].address.streetNumber string
propertyUnits[index].address.postCode string
propertyUnits[index].address.city string
propertyUnits[index].address.country string
propertyUnits[index].address.googlePlaceId string


status shows the current status of the user. They are :

Please note that inviting users is currently only possible in the Facilitee App.
A Property User needs to be assigned as a main contact on a Property Unit in order to be eligible to get invited.


Get Property User details

Request Format

Route:

.../api/public/property-users/{propertyUserId}

Example:

.../api/public/property-users/22

Response Format

Body:
{
    "id": 110,
    "email": "test-user@facilitee.com",
    "name": "Test User",
    "companyName": "Occupants Co.",
    "countryCode": "25",
    "phoneNumber": "354354353",
    "additionalNote": "Note",
    "status": "Active",
    "externalReferenceId": "user-123",
    "address": 
    {
        "id": 0,
        "street": "string",
        "streetNumber": "string",
        "postCode": "string",
        "city": "string",
        "country": "string",
        "googlePlaceId": "string"
    },
    "propertyUnits": 
    [
        {
            "propertyUnitId": 35,
            "customUnitId": "Custom Unit ID",
            "additionalNote": "Note",
            "floor": 0,
            "isMainContact": true,
            "contractStart": "2021-12-16T11:49:14.365Z",
            "contractEnd": "2022-12-16T11:49:14.365Z",
            "address": 
            {
                "street": "Javastraat",
                "streetNumber": "12",
                "postCode": "1094 EM",
                "city": "Amsterdam",
                "country": "Netherlands",
                "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
            }
        }
    ]
}

GET .../api/public/property-users/{propertyUserId}

Returns a User entity which has a role Property User and corresponds to the propertyUserId.


Request parameters

Route:

Field Type
propertyUserId integer required


Response values

Field Type
id integer
email string
name string
companyName string
countryCode string
phoneNumber string
additionalNote string
status string
externalReferenceId string
address object
address.street string
address.streetNumber string
address.postCode string
address.city string
address.country string
address.googlePlaceId string
propertyUnits array
propertyUnits[index].propertyUnitId int
propertyUnits[index].customUnitId string
propertyUnits[index].additionalNote string
propertyUnits[index].floor int
propertyUnits[index].isMainContact boolean
propertyUnits[index].contractStart string(date-time)
propertyUnits[index].contractEnd string(date-time)
propertyUnits[index].address object
propertyUnits[index].address.street string
propertyUnits[index].address.streetNumber string
propertyUnits[index].address.postCode string
propertyUnits[index].address.city string
propertyUnits[index].address.country string
propertyUnits[index].address.googlePlaceId string


status shows the current status of the user. They are :

Please note that inviting users is currently only possible in the Facilitee App.
A Property User needs to be assigned as a main contact on a Property Unit in order to be eligible to get invited.


Get Property User id by email

Request Format

Route:

.../api/public/property-users/get-by-email

Example :

.../api/public/property-users/get-by-email?email=email@example.com

Response Format

Body:
{
    230
}

GET .../api/public/property-users/get-by-email?email=email@example.com

Returns a User entity’s id which has a role Property user and corresponds to the email.


Request parameters

Route:

Query parameters:

Field Type
email string required


Response values

Field Type
integer

Get a list of Property Users

Request Format

Route:

.../api/public/property-users?{queryParams}

Example :

.../api/public/property-users?pageNo=1&pageSize=15&searchParameter=test

Response Format

Body:
{
    "numberOfPages": 10,
    "totalItems": 10,
    "pageSize": 1,
    "currentPage": 1,
    "items": 
    [
        {
            "id": 110,
            "email": "test-user@facilitee.com",
            "name": "Test User",
            "companyName": "Occupants Co.",
            "countryCode": "25",
            "phoneNumber": "354354353",
            "additionalNote": "Note",
            "status": "Active",
            "externalReferenceId": "user-123",
            "address": 
            {
                "id": 0,
                "street": "string",
                "streetNumber": "string",
                "postCode": "string",
                "city": "string",
                "country": "string",
                "googlePlaceId": "string"
            },
            "propertyUnits": 
            [
                {
                    "propertyUnitId": 35,
                    "customUnitId": "Custom Unit ID",
                    "additionalNote": "Note",
                    "floor": 0,
                    "isMainContact": true,
                    "contractStart": "2021-12-16T11:49:14.365Z",
                    "contractEnd": "2022-12-16T11:49:14.365Z",
                    "address": 
                    {
                        "street": "Javastraat",
                        "streetNumber": "12",
                        "postCode": "1094 EM",
                        "city": "Amsterdam",
                        "country": "Netherlands",
                        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
                    }
                }
            ]
        }
    ]
}

GET .../api/public/property-users

Returns a list of User entities which have a role Property User.


Request parameters

Route:

Query parameters:

Field Type
pageNo integer optional
pageSize integer optional
searchParameter string optional

The searchParameter is used for querying the results. If a value for it is provided, only the results with fields that contain the value of the searchParameter query parameter will be returned. The following fields are checked :


Response values

Field Type
numberOfPages integer
totalItems integer
pageSize integer
currentPage integer
items array
items[index_A].id integer
items[index_A].email string
items[index_A].name string
items[index_A].companyName string
items[index_A].countryCode string
items[index_A].phoneNumber string
items[index_A].additionalNote string
items[index_A].status string
items[index_A].externalReferenceId string
items[index_A].address object
items[index_A].address.street string
items[index_A].address.streetNumber string
items[index_A].address.postCode string
items[index_A].address.city string
items[index_A].address.country string
items[index_A].address.googlePlaceId string
items[index_A].propertyUnits array
items[index_A].propertyUnits[index_B].propertyUnitId int
items[index_A].propertyUnits[index_B].customUnitId string
items[index_A].propertyUnits[index_B].additionalNote string
items[index_A].propertyUnits[index_B].floor int
items[index_A].propertyUnits[index_B].isMainContact boolean
items[index_A].propertyUnits[index_B].contractStart string(date-time)
items[index_A].propertyUnits[index_B].contractEnd string(date-time)
items[index_A].propertyUnits[index_B].address object
items[index_A].propertyUnits[index_B].address.street string
items[index_A].propertyUnits[index_B].address.streetNumber string
items[index_A].propertyUnits[index_B].address.postCode string
items[index_A].propertyUnits[index_B].address.city string
items[index_A].propertyUnits[index_B].address.country string
items[index_A].propertyUnits[index_B].address.googlePlaceId string


status shows the current status of the user. They are :

Please note that inviting users is currently only possible in the Facilitee App.
A Property User needs to be assigned as a main contact on a Property Unit in order to be eligible to get invited.


Update Property User details

Request Format

Route:

.../api/public/property-users/{propertyUserId}

Example:

.../api/public/property-users/110
Body:
{
    "email": "test-user@facilitee.com",
    "name": "Test User",
    "companyName": "Occupants Co.",
    "countryCode": "25",
    "phoneNumber": "354354353",
    "additionalNote": "Note",
    "externalReferenceId": "user-123",
    "address": 
    {
        "street": "Javastraat",
        "streetNumber": "1",
        "postCode": "1094 EM",
        "city": "Amsterdam",
        "country": "Netherlands",
        "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
    }
}

Response Format

Body:
{
    "id": 110,
    "email": "test-user@facilitee.com",
    "name": "Test User",
    "companyName": "Occupants Co.",
    "countryCode": "25",
    "phoneNumber": "354354353",
    "additionalNote": "Note",
    "status": "Active",
    "externalReferenceId": "user-123",
    "address": 
    {
        "id": 0,
        "street": "string",
        "streetNumber": "string",
        "postCode": "string",
        "city": "string",
        "country": "string",
        "googlePlaceId": "string"
    },
    "propertyUnits": 
    [
        {
            "propertyUnitId": 35,
            "customUnitId": "Custom Unit ID",
            "additionalNote": "Note",
            "floor": 0,
            "isMainContact": true,
            "contractStart": "2021-12-16T11:49:14.365Z",
            "contractEnd": "2022-12-16T11:49:14.365Z",
            "address": 
            {
                "street": "Javastraat",
                "streetNumber": "12",
                "postCode": "1094 EM",
                "city": "Amsterdam",
                "country": "Netherlands",
                "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
            }
        }
    ]
}

PUT .../api/public/property-users/{propertyUserId}

Updates a User entity with the assigned Property User role and a matching propertyUserId.


Request parameters

Route:

Field Type
propertyUserId integer required

Body:

Field Type
email string required
name string required
companyName string optional
countryCode string optional
phoneNumber string optional
additionalNote string optional
externalReferenceId string optional
address object optional
address.street string optional
address.streetNumber string optional
address.postCode string optional
address.city string optional
address.country string optional
address.googlePlaceId string optional



countryCode and phoneNumber fields are used together by the application for the purpose of sending SMS messages. If either or both fields are left empty or they are not formatted correctly as shown in the example request, they will not be saved in the database.

Response values

Field Type
id integer
email string
name string
companyName string
countryCode string
phoneNumber string
additionalNote string
status string
externalReferenceId string
address object
address.street string
address.streetNumber string
address.postCode string
address.city string
address.country string
address.googlePlaceId string
propertyUnits array
propertyUnits[index].propertyUnitId int
propertyUnits[index].customUnitId string
propertyUnits[index].additionalNote string
propertyUnits[index].floor int
propertyUnits[index].isMainContact boolean
propertyUnits[index].contractStart string(date-time)
propertyUnits[index].contractEnd string(date-time)
propertyUnits[index].address object
propertyUnits[index].address.street string
propertyUnits[index].address.streetNumber string
propertyUnits[index].address.postCode string
propertyUnits[index].address.city string
propertyUnits[index].address.country string
propertyUnits[index].address.googlePlaceId string


status shows the current status of the user. They are :

Please note that inviting users is currently only possible in the Facilitee App.
A Property User needs to be assigned as a main contact on a Property Unit in order to be eligible to get invited.


Issue

Get a list of Issues within a specified period

Request Format

Route:

.../api/public/Issues?{queryParams}

Example :

.../api/public/Issues?pageNo=1&pageSize=15&fromDateTime=01.01.2020&toDateTime=01.01.2023

Response Format

Body:
{
    "numberOfPages": 0,
    "totalItems": 0,
    "pageSize": 0,
    "currentPage": 0,
    "items": 
    [
        {
            "id": 77,
            "name": "Broken pipe",
            "description": "The pipe in the bathroom burst open.",
            "category": "Plumbing",
            "reporterId": 33,
            "reporterName": "Property user",
            "issueManagerName": "Jon Jonason",
            "urgent": true,
            "propertyUsersInvolved": true,
            "status": "Closed",
            "created": "2021-07-17T16:24:40.180Z",
            "modified": "2021-07-18T17:20:20.181Z",
            "responseTimeLeft": 0,
            "userReferenceId": "AP-232",
            "rejectionComment": "",
            "propertyUnit": 
            {
                "id": 66,
                "address": 
                {
                    "street": "Javastraat",
                    "streetNumber": "1",
                    "postCode": "1094 EM",
                    "city": "Amsterdam",
                    "country": "Netherlands",
                    "googlePlaceId": "ChIJyfEW6XIJxkcRyRX1yUIDLxg"
                },
                "floor": 0,
                "propertyUnitType": 
                {
                    "id": 20,
                    "name": "Apartment",
                    "canDelete": true,
                    "isUsed": true
                },
                "property": 
                {
                    "propertyType": 
                    {
                        "id": 0,
                        "name": "Apartment Building",
                        "isActive": true,
                        "canDelete": false,
                        "isUsed": true
                    },
                    "name": "The Building",
                    "id": 55
                }
            },
            "overallRating": 
            {
                "rating": 5,
                "comment": "Perfect Work",
                "type": 2,
                "user": "Property User",
                "lastRatedDate": "2021-07-18T17:20:20.181Z"
            }
        }
    ]
}

GET .../api/public/Issues

Returns a list of Issue entities.


Request parameters

Route:

Query parameters:

Field Type
pageNo integer optional
pageSize integer optional
fromDateTime dateTime required
toDateTime dateTime required


Response values

Field Type
numberOfPages integer
totalItems integer
pageSize integer
currentPage integer
items array
items[index].id int
items[index].name string
items[index].description string
items[index].category string
items[index].reporterId int
items[index].reporterName string
items[index].issueManagerName string
items[index].urgent boolean
items[index].propertyUsersInvolved boolean
items[index].status string
items[index].created string(date-time)
items[index].modified string(date-time)
items[index].responseTimeLeft integer
items[index].userReferenceId string
items[index].rejectionComment string
items[index].propertyUnit object
items[index].propertyUnit.id int
items[index].propertyUnit.address object
items[index].propertyUnit.address.id int
items[index].propertyUnit.address.street street
items[index].propertyUnit.address.streetNumber string
items[index].propertyUnit.address.postCode string
items[index].propertyUnit.address.city string
items[index].propertyUnit.address.country string
items[index].propertyUnit.address.googlePlaceId object
items[index].propertyUnit.floor int
items[index].propertyUnit.propertyUnitType object
items[index].propertyUnit.propertyUnitType.id int
items[index].propertyUnit.propertyUnitType.name string
items[index].propertyUnit.propertyUnitType.canDelete boolean
items[index].propertyUnit.propertyUnitType.isUsed boolean
items[index].propertyUnit.property object
items[index].propertyUnit.property.propertyType object
items[index].propertyUnit.property.propertyType.id int
items[index].propertyUnit.property.propertyType.name string
items[index].propertyUnit.property.propertyType.isActive boolean
items[index].propertyUnit.property.propertyType.canDelete boolean
items[index].propertyUnit.property.propertyType.isUsed boolean
items[index].propertyUnit.property.name string
items[index].propertyUnit.property.id int
items[index].overallRating object
items[index].overallRating.rating int
items[index].overallRating.comment string
items[index].overallRating.type int
items[index].overallRating.user string
items[index].overallRating.lastRatedDate string


Notes

Possible statuses

Dates

The fromDateTime and the toDateTime must have a year > 1000.

All the DateTime values have the same format as follows yyyy-MM-ddTHH:mm:ss.fffZ.

Errors

Problem Details

Response Format Example:

Body:
{
    "Type": "/problems/entity-not-found",
    "Title": "The requested entity was not found",
    "Status": 404,
    "Detail": "Property with id 22143 not found in database. Update failed.",
    "Instance": "/api/public/properties/22143",
    "Extensions": {}
}

Response values

Field Type Explanation
Type string Unique URI identifier of the error that occured
Title string String containing human-readable text concerning the subject of the error that occured
Status integer HTTP status code that corresponds to the error that occured
Detail string Detailed error message explaining why the error occured and how you may fix it.
Instance string URI specifying on what endpoint the error occured.
Extensions object Additional error information that may or may not be included if the Detail field isn’t enough to convey the error information
Type Meaning
/problems/entity-not-found The entity you requested could not be found
/problems/user-already-exists The user you tried to create conflicts with the information regarding an existing user
/problems/file-upload An error occured during fetching/uploading the file
/problems/one-click-login Error occured during one click login
/problems/issue-status Error occured when trying to change issue status
/problems/forbidden-action A forbidden action was requested
/problems/auto-mapper An error occured when trying to map information from/to request/response
/problems/mailing An error occured when trying to send an e-mail
/problems/authorization-error An authorization related error occured
/problems/invalid-format Invalid format was received
/problems/invalid-credentials Invalid credentials were received
/problems/bad-request Invalid request was received
/problems/error A fallback error type when an error isn’t covered by the types above
HTTP Status Code Meaning
400 Bad Request
401 Unauthorized – The provided API key is wrong
403 Forbidden
404 Not Found
405 Method Not Allowed
500 Internal Server Error – There is problem with our server.
503 Service Unavailable