Download OpenAPI specification:Download
If you have any questions, comments or feedback regarding our APIs, please contact developer@ovipro.fi.
Create a new meeting.
Request-ID required | string <uuid> Example: 9031d1c5-7d40-41dd-b2b8-7919a2fc4fe9 A unique id which identifies the HTTP request. The value of this header must be created by the client. This identifier is used for troubleshooting purposes. |
Request body contains details of the meeting.
typeCode required | string (MeetingTypeCode) Enum: "SALES_MEETING" "EVALUATION_VISIT" The type of meeting. |
statusCode required | string (StatusCode) Enum: "WAITING" "WON" "LOST" "CANCELLED" The status of the meeting.
|
required | Array of objects non-empty The parties related to the meeting. |
realtyId | string <uuid> The realty id related to the meeting. |
visitTime required | string <date-time> The date and time of the meeting. |
agencyOfficeId required | string <uuid> The agency office id related to the meeting. |
required | Array of objects non-empty The agents related to the meeting. |
sourceTypeCode required | string (SourceTypeCode) Enum: "ETUOVI" "OIKOTIE" "ASUNTOJENMYYNTI_FI" "ASUNTOJENHINNAT_FI" "NELIOHINTA_FI" "ASUNTOARVIO_FI" "HOME_PAGE" "CHATBOT" "BANK_COOPERATION" "SHOWING" "BOUGHT_FROM_US" "OLD_CUSTOMER" "RECOMMENDATION" "DIRECT_CONTACT" "AGENT_CONTACT" The source of the meeting. |
required | object (MeetingRealty) |
object (PriceEstimate) Price estimate of the realty related to meeting. | |
notes | string Notes about meeting. |
{- "typeCode": "SALES_MEETING",
- "statusCode": "WAITING",
- "parties": [
- {
- "partyId": "123e4567-e89b-12d3-a456-426655440000",
- "partyTypeCode": "PERSON_PARTY"
}
], - "realtyId": "123e4567-e89b-12d3-a456-426655440000",
- "visitTime": "2022-12-31T23:59:59Z",
- "agencyOfficeId": "123e4567-e89b-12d3-a456-426655440000",
- "agents": [
- {
- "agentId": "123e4567-e89b-12d3-a456-426655440000"
}
], - "sourceTypeCode": "ETUOVI",
- "meetingRealty": {
- "categoryCode": "SALE",
- "subCategoryCode": "SHARE",
- "propertyTypeCode": "RESIDENTIAL",
- "residentialTypeCode": "APARTMENT_HOUSE",
- "plotPropertyTypeCode": "HOLIDAY_PLOT",
- "estatePropertyTypeCode": "ARABLE",
- "otherShareTypeCode": "GARAGE",
- "commercialPropertyTypeCode": "OFFICE_SPACE",
- "address": {
- "addressLine1": "Yliopistonkatu 55",
- "addressLine2": "string",
- "stairwell": "C",
- "apartmentNumber": "55",
- "district": "Hervanta",
- "districtCode": "FI_PIRKANMAA_TAMPERE_HERVANTA",
- "region": "Pirkanmaa",
- "regionCode": "FI_PIRKANMAA",
- "postcode": "33100",
- "postalArea": "Tampere",
- "locality": "Tampere",
- "localityCode": "FI_PIRKANMAA_TAMPERE",
- "country": "Suomi",
- "countryCode": "FI"
}, - "area": {
- "value": 2.3,
- "areaUnitCode": "M2"
}, - "floorLevel": 3,
- "roomCountCode": "3H",
- "managementCharge": 300,
- "constructionYear": 1990,
- "doorCode": "1234",
- "title": "2h, k, s, wc",
- "features": [
- "BALCONY"
]
}, - "priceEstimate": {
- "value": 100000,
- "currencyCode": "EUR"
}, - "notes": "string"
}
{- "meetingId": "c6d2288d-2ecb-448a-aef3-fd5144920e0b"
}
Search meetings.
sourceTypeCode | Array of strings (SourceTypeCode) Items Enum: "ETUOVI" "OIKOTIE" "ASUNTOJENMYYNTI_FI" "ASUNTOJENHINNAT_FI" "NELIOHINTA_FI" "ASUNTOARVIO_FI" "HOME_PAGE" "CHATBOT" "BANK_COOPERATION" "SHOWING" "BOUGHT_FROM_US" "OLD_CUSTOMER" "RECOMMENDATION" "DIRECT_CONTACT" "AGENT_CONTACT" Example: sourceTypeCode=ETUOVI |
statusCode | Array of strings (StatusCode) Items Enum: "WAITING" "WON" "LOST" "CANCELLED" Example: statusCode=WAITING |
agencyOfficeId | Array of strings <uuid> [ items <uuid > ] Example: agencyOfficeId=123e4567-e89b-12d3-a456-426655440000 Search by the agency office id to get a list of meetings. |
partyId | Array of strings <uuid> [ items <uuid > ] Example: partyId=75596cf8-9372-4d20-a420-500b9eed403a Search by the party id to get a list of meetings. |
agentId | Array of strings <uuid> [ items <uuid > ] Example: agentId=6d648e58-edcc-47c2-93c1-6f5568bac85f Search by the agent id to get a list of meetings. |
typeCode | Array of strings (MeetingTypeCode) Items Enum: "SALES_MEETING" "EVALUATION_VISIT" Example: typeCode=SALES_MEETING |
freeTextSearch | string Search with free text to match meeting information with the given search text. |
visitTimeBefore | string <date-time> Search by the date to get a list of meeting happening before the given date. |
visitTimeAfter | string <date-time> Search by the date to get a list of meeting happening after the given date. |
modifiedAfter | string <date-time> Search by the modification time to get a list of meetings that were modified after given timestamp. |
startIndex | integer <int32> >= 0 Default: 0 Example: startIndex=20 Paginate returned meetings starting from this index. Index starts from 0. |
size | integer <int32> [ 1 .. 100 ] Default: 50 Example: size=40 Meetings returned per page. |
sort | Array of strings Example: sort=visitTime|desc Sort meetings based on the specified fields. Each fields must also include a sort order as follows:
Supported sort fields are:
|
Request-ID required | string <uuid> Example: 9031d1c5-7d40-41dd-b2b8-7919a2fc4fe9 A unique id which identifies the HTTP request. The value of this header must be created by the client. This identifier is used for troubleshooting purposes. |
{- "meetings": [
- {
- "meetingId": "c6d2288d-2ecb-448a-aef3-fd5144920e0b",
- "typeCode": "SALES_MEETING",
- "address": {
- "addressLine1": "Yliopistonkatu 55",
- "addressLine2": "string",
- "stairwell": "C",
- "apartmentNumber": "55",
- "district": "Hervanta",
- "region": "Pirkanmaa",
- "postcode": "33100",
- "locality": "Tampere",
- "country": "Suomi"
}, - "sourceTypeCode": "ETUOVI",
- "parties": [
- {
- "partyId": "c6d2288d-2ecb-448a-aef3-fd5144920e0b",
- "partyName": "Matti Virtanen",
- "emailAddress": "matti.meikäläinen@example.com",
- "phoneNumber": "0401234567"
}
], - "agents": [
- {
- "agentId": "c6d2288d-2ecb-448a-aef3-fd5144920e0b",
- "firstName": "Matti",
- "lastName": "Meikäläinen"
}
], - "visitTime": "2022-12-31T23:59:59Z",
- "createdByName": "Matti Meikäläinen",
- "creationTime": "2022-12-31T23:59:59Z",
- "modificationTime": "2022-12-31T23:59:59Z",
- "statusCode": "WAITING",
- "realtyId": "123e4567-e89b-12d3-a456-426655440000"
}
], - "totalCount": 10
}
Get details of a meeting.
meetingId required | string <uuid> Example: 9031d1c5-7d40-41dd-b2b8-7919a2fc4fe9 Identifier of the meeting |
Request-ID required | string <uuid> Example: 9031d1c5-7d40-41dd-b2b8-7919a2fc4fe9 A unique id which identifies the HTTP request. The value of this header must be created by the client. This identifier is used for troubleshooting purposes. |
{- "meetingId": "c6d2288d-2ecb-448a-aef3-fd5144920e0b",
- "typeCode": "SALES_MEETING",
- "statusCode": "WAITING",
- "parties": [
- {
- "partyId": "123e4567-e89b-12d3-a456-426655440000",
- "partyTypeCode": "PERSON_PARTY"
}
], - "realtyId": "123e4567-e89b-12d3-a456-426655440000",
- "visitTime": "2022-12-31T23:59:59Z",
- "agencyOfficeId": "123e4567-e89b-12d3-a456-426655440000",
- "agents": [
- {
- "agentId": "123e4567-e89b-12d3-a456-426655440000"
}
], - "sourceTypeCode": "ETUOVI",
- "meetingRealty": {
- "categoryCode": "SALE",
- "subCategoryCode": "SHARE",
- "propertyTypeCode": "RESIDENTIAL",
- "residentialTypeCode": "APARTMENT_HOUSE",
- "plotPropertyTypeCode": "HOLIDAY_PLOT",
- "estatePropertyTypeCode": "ARABLE",
- "otherShareTypeCode": "GARAGE",
- "commercialPropertyTypeCode": "OFFICE_SPACE",
- "address": {
- "addressLine1": "Yliopistonkatu 55",
- "addressLine2": "string",
- "stairwell": "C",
- "apartmentNumber": "55",
- "district": "Hervanta",
- "districtCode": "FI_PIRKANMAA_TAMPERE_HERVANTA",
- "region": "Pirkanmaa",
- "regionCode": "FI_PIRKANMAA",
- "postcode": "33100",
- "postalArea": "Tampere",
- "locality": "Tampere",
- "localityCode": "FI_PIRKANMAA_TAMPERE",
- "country": "Suomi",
- "countryCode": "FI"
}, - "area": {
- "value": 2.3,
- "areaUnitCode": "M2"
}, - "floorLevel": 3,
- "roomCountCode": "3H",
- "managementCharge": 300,
- "constructionYear": 1990,
- "doorCode": "1234",
- "title": "2h, k, s, wc",
- "features": [
- "BALCONY"
]
}, - "priceEstimate": {
- "value": 100000,
- "currencyCode": "EUR"
}, - "notes": "string"
}
Delete a meeting. Meeting can be deleted only if it is in WAITING state.
meetingId required | string <uuid> Example: 9031d1c5-7d40-41dd-b2b8-7919a2fc4fe9 Identifier of the meeting |
Request-ID required | string <uuid> Example: 9031d1c5-7d40-41dd-b2b8-7919a2fc4fe9 A unique id which identifies the HTTP request. The value of this header must be created by the client. This identifier is used for troubleshooting purposes. |
{- "errorCode": "BAD_REQUEST_PARAMETERS",
- "message": "Invalid request parameters",
- "description": "Request parameters are missing or have invalid type.",
- "errors": [
- {
- "target": "assignmentId",
- "errorCode": "VALUE_REQUIRED",
- "message": "Mandatory request parameter assignmentId is missing"
}, - {
- "target": "authorId",
- "errorCode": "INVALID_TYPE",
- "message": "Request parameter authorId must be a string"
}
]
}
Update a meeting.
Note that when meetings statusCode is set to WON
or LOST
"parties" and "visitTime" can't be modified anymore.
meetingId required | string <uuid> Example: 9031d1c5-7d40-41dd-b2b8-7919a2fc4fe9 Identifier of the meeting |
Request-ID required | string <uuid> Example: 9031d1c5-7d40-41dd-b2b8-7919a2fc4fe9 A unique id which identifies the HTTP request. The value of this header must be created by the client. This identifier is used for troubleshooting purposes. |
Request body contains details of the meeting.
typeCode required | string (MeetingTypeCode) Enum: "SALES_MEETING" "EVALUATION_VISIT" The type of meeting. |
statusCode required | string (StatusCode) Enum: "WAITING" "WON" "LOST" "CANCELLED" The status of the meeting.
|
required | Array of objects non-empty The parties related to the meeting. |
realtyId | string <uuid> The realty id related to the meeting. |
visitTime required | string <date-time> The date and time of the meeting. |
agencyOfficeId required | string <uuid> The agency office id related to the meeting. |
required | Array of objects non-empty The agents related to the meeting. |
sourceTypeCode required | string (SourceTypeCode) Enum: "ETUOVI" "OIKOTIE" "ASUNTOJENMYYNTI_FI" "ASUNTOJENHINNAT_FI" "NELIOHINTA_FI" "ASUNTOARVIO_FI" "HOME_PAGE" "CHATBOT" "BANK_COOPERATION" "SHOWING" "BOUGHT_FROM_US" "OLD_CUSTOMER" "RECOMMENDATION" "DIRECT_CONTACT" "AGENT_CONTACT" The source of the meeting. |
required | object (MeetingRealty) |
object (PriceEstimate) Price estimate of the realty related to meeting. | |
notes | string Notes about meeting. |
{- "typeCode": "SALES_MEETING",
- "statusCode": "WAITING",
- "parties": [
- {
- "partyId": "123e4567-e89b-12d3-a456-426655440000",
- "partyTypeCode": "PERSON_PARTY"
}
], - "realtyId": "123e4567-e89b-12d3-a456-426655440000",
- "visitTime": "2022-12-31T23:59:59Z",
- "agencyOfficeId": "123e4567-e89b-12d3-a456-426655440000",
- "agents": [
- {
- "agentId": "123e4567-e89b-12d3-a456-426655440000"
}
], - "sourceTypeCode": "ETUOVI",
- "meetingRealty": {
- "categoryCode": "SALE",
- "subCategoryCode": "SHARE",
- "propertyTypeCode": "RESIDENTIAL",
- "residentialTypeCode": "APARTMENT_HOUSE",
- "plotPropertyTypeCode": "HOLIDAY_PLOT",
- "estatePropertyTypeCode": "ARABLE",
- "otherShareTypeCode": "GARAGE",
- "commercialPropertyTypeCode": "OFFICE_SPACE",
- "address": {
- "addressLine1": "Yliopistonkatu 55",
- "addressLine2": "string",
- "stairwell": "C",
- "apartmentNumber": "55",
- "district": "Hervanta",
- "districtCode": "FI_PIRKANMAA_TAMPERE_HERVANTA",
- "region": "Pirkanmaa",
- "regionCode": "FI_PIRKANMAA",
- "postcode": "33100",
- "postalArea": "Tampere",
- "locality": "Tampere",
- "localityCode": "FI_PIRKANMAA_TAMPERE",
- "country": "Suomi",
- "countryCode": "FI"
}, - "area": {
- "value": 2.3,
- "areaUnitCode": "M2"
}, - "floorLevel": 3,
- "roomCountCode": "3H",
- "managementCharge": 300,
- "constructionYear": 1990,
- "doorCode": "1234",
- "title": "2h, k, s, wc",
- "features": [
- "BALCONY"
]
}, - "priceEstimate": {
- "value": 100000,
- "currencyCode": "EUR"
}, - "notes": "string"
}
{- "errorCode": "BAD_REQUEST_PARAMETERS",
- "message": "Invalid request parameters",
- "description": "Request parameters are missing or have invalid type.",
- "errors": [
- {
- "target": "assignmentId",
- "errorCode": "VALUE_REQUIRED",
- "message": "Mandatory request parameter assignmentId is missing"
}, - {
- "target": "authorId",
- "errorCode": "INVALID_TYPE",
- "message": "Request parameter authorId must be a string"
}
]
}