{
"id": "Property",
"title": "Property",
"description": "The main entity of the property data model",
"required": true,
"type": "object",
"properties": {
"ExternalId": {
"description": "The unique identifier for a property",
"required": true,
"type": "string",
"minLength": 1
},
"ParentId": {
"description": "If the property belongs to a promotion, its unique identifier",
"required": false,
"type": "integer"
},
"AgencyId": {
"description": "The unique identifier for the property's owner agency",
"required": false,
"type": "integer"
},
"AgencyReference": {
"description": "Reference given by the agency to the property",
"required": true,
"type": "string",
"minLength": 1
},
"TypeId": {
"description": "Identifies the type of the property within the following enumeration",
"required": true,
"type": "integer",
"enum": [ 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12 ],
"dictionary": "DIC_BuildingType"
},
"SubTypeId": {
"description": "Optional, Indicates the subtype of the property from the value selected in 'TypeId' field",
"required": false,
"type": "integer",
"enum": [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 17, 18, 19, 20, 21, 23, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 72, 73, 75, 78, 85, 86, 88, 89, 90 ],
"dictionary": "DIC_Building_Subtype"
},
"IsNewConstruction": {
"description": "Indicates if this is a new construction individual property",
"required": false,
"type": "boolean"
},
"PropertyStatusId": {
"Description": "Indicates the property status for the agency",
"required": true,
"type": "integer",
"enum": [ 1, 2, 3, 4, 5 ],
"dictionary": "DIC_PropertyStatus"
},
"ExpirationCauseId": {
"description": "If the property has expired, this field indicates the cause",
"required": false,
"type": "integer",
"enum": [ 1, 2, 3, 4, 5, 6, 7, 8, 9 ],
"dictionary": "DIC_ExpirationCause"
},
"ShowSurface": {
"description": "Indicates if the surface has to be shown in the public view of the property",
"required": true,
"type": "boolean"
},
"ContactTypeId": {
"description": "Defines the type of contact provided",
"required": true,
"type": "integer",
"enum": [ 1, 2, 3 ],
"dictionary": "DIC_ContactType"
},
"ContactName": {
"description": "Complete name (and surname) of the property's contact person",
"required": false,
"type": "string"
},
"IsPromotion": {
"description": "Indicates if this is a set of new construction properties",
"required": true,
"type": "boolean"
},
"PromotionTypeId": {
"description": "If the property is a promotion, this field defines its type",
"required": false,
"type": "integer",
"enum": [ 1, 2, 3 ]
},
"BankAwardedId": {
"description": "If the property is bank awarded, it indicates the entity id",
"required": false,
"type": "integer",
"enum": [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69 ],
"dictionary": "DIC_BankAwarded"
},
"PropertyAddress": {
"id": "PropertyAddress",
"title": "PropertyAddress",
"description": "Defines where the property is exactly located",
"required": true,
"type": "array",
"items": {
"id": "PropertyAddress",
"type": "object",
"ZipCode": {
"description": "ZIP Code (not required if x and y are specified)",
"required": false,
"type": "string"
},
"CountryId": {
"description": "Country",
"required": true,
"type": "integer",
"enum": [ 20, 250, 620, 724 ],
"dictionary": "DIC_LocationCountry"
},
"Zone": {
"description": "Free text. Zone where the property is located",
"required": false,
"type": "string"
},
"StreetTypeId": {
"description": "The type of the street where the property is located according to the following enum",
"required": true,
"type": "integer",
"enum": [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30 ],
"dictionary": "DIC_StreetType"
},
"Street": {
"description": "Free text. The name of the street",
"required": false,
"type": "string"
},
"Number": {
"description": "Number of the street",
"required": false,
"type": "string"
},
"FloorId": {
"description": "Enum for the floor",
"required": false,
"type": "integer",
"enum": [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 28, 29, 30, 31 ],
"dictionary": "DIC_Floor"
},
"Door": {
"description": "Free text. Indicates the door number (or letter) in the floor where is located the property",
"required": false,
"type": "string"
},
"Stair": {
"description": "Free text. Indicates the Stair (if any) where is located the property",
"required": false,
"type": "string"
},
"x": {
"description": "Longitude coordinate used to geographycally place the property",
"required": true,
"type": "number"
},
"y": {
"description": "Latitude coordinate used to geographycally position the property",
"required": true,
"type": "number"
},
"VisibilityModeId": {
"description": "Defines how to display the property address",
"required": true,
"type": "integer",
"enum": [1, 2, 3 ],
"dictionary": "DIC_VisibilityMode"
}
}
},
"PropertyDocument": {
"id": "PropertyDocument",
"title": "PropertyDocument",
"description": "Entity used to define the property's document(s) like pictures, videos and others",
"required": false,
"type": "array",
"items": {
"id": "PropertyDocument",
"type": "object",
"AgencyId": {
"description": "Needed to complete document's path",
"required": false,
"type": "integer"
},
"TypeId": {
"description": "Describes the type of file according to the following enumeration",
"required": true,
"type": "integer",
"enum": [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 47 ],
"dictionary": "DIC_DocumentType"
},
"Description": {
"description": "Free text. Provide a description for the document.",
"required": false,
"type": "string"
},
"Url": {
"description": "It must contain the file name (i.e. 'picture.jpg')",
"required": true,
"type": "string"
},
"RoomTypeId": {
"description": "If the document refers to a room, you can indicate it within this field, according to the following enumeration",
"required": false,
"type": "integer",
"enum": [ 1, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23 ],
"dictionary": "DIC_RoomType"
},
"FileTypeId": {
"description": "Indicates the file type according to the following enum",
"required": true,
"type": "integer",
"enum": [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 31, 32, 33, 34, 35 ],
"dictionary": "DIC_FileType"
},
"IsExternal": {
"description": "If set to true, it indicates that the document will not be downloaded by Inmofactory and always will request the specified document URL (false recommended)",
"required": false,
"type": "boolean"
},
"Visible": {
"description": "Indicates whether the document has to be shown in publications or communications",
"required": true,
"type": "boolean"
},
"SortingId": {
"description": "Use it to alter the order of appearence of the document in lists",
"required": true,
"type": "integer"
}
}
},
"PropertyFeature": {
"id": "PropertyFeature",
"title": "PropertyFeature",
"description": "Entity used to define the property's features (extras)",
"required": true,
"type": "array",
"items": {
"id": "PropertyFeature",
"type": "object",
"properties": {
"FeatureId": {
"description": "Describes the type of feature according to the following enumeration",
"required": true,
"type": "integer",
"enum": [ 1, 2, 3, 4, 10, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 323, 324, 325, 326, 327, 328, 329 ],
"dictionary": "DIC_Feature"
},
"LanguageId": {
"description": "The language of the comments, according to the following enumeration",
"required": true,
"type": "integer",
"enum": [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 13, 14, 15, 16, 17 ],
"dictionary": "DIC_Language"
},
"DecimalValue": {
"description": "If the feature type is 'DecimalValue', 'List' or 'Multiple', its value must be placed in this field",
"required": false,
"type": "number"
},
"BoolValue": {
"description": "If the feature type is 'BooleanValue', its value must be placed in this field",
"required": false,
"type": "boolean"
},
"DateValue": {
"description": "If the feature type is 'DateValue', its value must be placed in this field",
"required": false,
"type": "string"
},
"TextValue": {
"description": "If the feature type is 'TextValue', its value must be placed in this field",
"required": false,
"type": "string"
}
}
}
},
"PropertyContactInfo": {
"id": "PropertyContactInfo",
"title": "PropertyContactInfo",
"description": "Contains all the contact sources provided by the property's owner (i.e. phone, e-mail...)",
"required": true,
"type": "array",
"items": {
"id": "PropertyContactInfo",
"type": "object",
"properties": {
"TypeId": {
"description": "Describes the type of contact according to the following enumeration",
"required": true,
"type": "integer",
"enum": [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17 ],
"dictionary": "DIC_ContactType"
},
"Value": {
"description": "Free text with the value of the contact source",
"required": true,
"type": "string"
},
"ValueTypeId": {
"description": "Indicates if the contact refers to the agency, the agend or other specified",
"required": true,
"type": "integer",
"enum": [ 1, 2, 3 ],
"dictionary": "DIC_ContactInfoValueType"
}
}
}
},
"PropertyAnnotation": {
"id": "PropertyAnnotation",
"title": "PropertyAnnotation",
"description": "Use this object for providing additional comments to the property",
"required": false,
"type": "array",
"items": {
"id": "PropertyAnnotation",
"type": "object",
"properties": {
"Annotation": {
"description": "Free text",
"required": true,
"type": "string"
}
}
}
},
"PropertyUser": {
"id": "PropertyUser",
"title": "PropertyUser",
"description": "The user agent(s) managing the property",
"required": true,
"type": "array",
"items": {
"id": "PropertyUser",
"type": "object",
"properties": {
"UserId": {
"description": "Unique identifier of the user agent",
"required": true,
"type": "integer"
},
"IsPrincipal": {
"description": "The property may have more than one user agents managing it, but only one can be the principal",
"required": true,
"type": "boolean"
}
}
}
},
"PropertyFeatureGroupComment": {
"id": "PropertyFeatureGroupComment",
"title": "PropertyFeatureGroupComment",
"description": "If a feature is able to have comments or annotations, these are provided in this object",
"required": false,
"type": "array",
"items": {
"id": "PropertyFeatureGroupComment",
"type": "object",
"properties": {
"FeatureGroupId": {
"required": true,
"type": "integer"
},
"LanguageId": {
"description": "The language of the comments, according to the following enumeration",
"required": true,
"type": "integer",
"enum": [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 13, 14, 15, 16, 17 ],
"dictionary": "DIC_Language"
},
"Comments": {
"description": "Free Text",
"required": true,
"type": "string"
}
}
}
},
"PropertyRegistryInfo": {
"id": "PropertyRegistryInfo",
"title": "PropertyRegistryInfo",
"required": false,
"type": "object",
"properties": {
"Reference": {
"description": "Catastral reference",
"required": false,
"type": "string"
},
"Volume": {
"description": "Physical volume where the property is registrated",
"required": false,
"type": "string"
},
"Book": {
"description": "Physical book where the property is registrated",
"required": false,
"type": "string"
},
"Page": {
"description": "Physical page of the book where the property is registrated",
"required": false,
"type": "string"
},
"RegistryOf": {
"description": "Place where the registration is done",
"required": false,
"type": "string"
},
"RegistryNumber": {
"description": "Registry Number",
"required": false,
"type": "string"
},
"Description": {
"description": "Free text. Additional comments",
"required": false,
"type": "string"
},
"RegistryProperty": {
"description": "Registry Property",
"required": false,
"type": "string"
}
}
},
"PromotionTypology": {
"id": "PromotionTypology",
"title": "PromotionTypology",
"description": "If the property has a parent id, this objects indicates the promotion typology",
"required": false,
"type": "array",
"items": {
"id": "PromotionTypology",
"type": "object",
"properties": {
"Value": {
"description": "Free text. Describes the typology of the property",
"required": true,
"type": "string"
}
}
}
},
"PropertyCustomer": {
"id": "PropertyCustomer",
"title": "PropertyCustomer",
"required": false,
"type": "array",
"items": {
"id": "PropertyCustomer",
"type": "object",
"properties": {
"CustomerId": {
"description": "The Unique identifier of the customer",
"required": true,
"type": "integer"
},
"IsPrincipal": {
"description": "A property may have one or more than one owner customers, but only one can be the principal",
"required": true,
"type": "boolean"
}
}
}
},
"PropertyPublications": {
"id": "PropertyPublications",
"title": "PropertyPublications",
"description": "List of publications which the property will be sent to",
"required": false,
"type": "array",
"items": {
"id": "PropertyPublication",
"type": "object",
"properties": {
"PublicationId": {
"description": "The unique identifier where the property is published, according to the following enumeration",
"required": true,
"type": "integer",
"enum": [ 1, 17, 18, 20, 21, 22, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 48, 49, 1084, 1983, 2047, 2157, 2346, 2725, 3076, 3078, 3079, 3169, 3387, 3439, 3489, 3504, 3799,
4005, 4006, 4010, 4112, 4114, 4115, 4116, 4508, 4533, 4534, 4535, 4536, 4537, 4538, 4539, 4692, 5131, 5189, 6053, 7598, 9127, 9282, 19156, 23648, 23958, 23959 ],
"dictionary": "DIC_Publication"
},
"PublicationTypeId": {
"description": "There are different type of publications ie; Ov, Own Web, etc",
"required": true,
"type": "integer",
"enum": [ 1, 2, 3, 4, 5, 6, 7 ],
"dictionary": "DIC_PublicationType"
},
"StatusId": {
"description": "Logical status for the register. This is an internal status for logically manage the property's data in our database system. Only registers with StatusId = 2 (Active) are displayed in the application",
"required": false,
"type": "integer",
"enum": [ 2, 4 ],
"dictionary": "DIC_Status"
}
}
}
},
"PropertyTransaction": {
"id": "PropertyTransaction",
"title": "PropertyTransaction",
"description": "Describes the transaction features of the property (i.e. Price, currency, payment periodicity...)",
"required": true,
"type": "array",
"items": {
"id": "PropertyTransaction",
"type": "object",
"properties": {
"TransactionTypeId": {
"description": "Indicates the type of the transaction according to the following enumeration",
"required": true,
"type": "integer",
"enum": [ 1, 3, 4, 7, 8, 9 ],
"dictionary": "DIC_TransactionType"
},
"CustomerPrice": {
"description": "The property price asked by the customer for this transacton type",
"required": false,
"type": "number"
},
"Price": {
"description": "The property price for this transacton type",
"required": true,
"type": "number"
},
"PriceM2": {
"description": "The property price for this transacton type for each square meter",
"required": true,
"type": "number"
},
"CurrencyId": {
"description": "Defines the currency applied to the transaction price according to the following enumeration",
"required": true,
"type": "integer",
"enum": [ 1 ],
"dictionary": "DIC_Currency"
},
"PaymentPeriodicityId": {
"description": "defines the periodicity that the transaction payment is made where appropiate according to the following enumeration",
"required": false,
"type": "integer",
"enum": [ 1, 2, 3, 4, 5, 6 ],
"dictionary": "DIC_PaymentPeriodicity"
},
"ShowPrice": {
"description": "Hide/show price in communications and publications",
"required": true,
"type": "boolean"
},
"Conditions": {
"description": "Free text. If the property is option offer, describes the transaction conditions",
"required": false,
"type": "string"
}
}
}
}
}
}