Skip to content

Listing Schema⚓︎

Listing Model⚓︎

NameTypeDescription
typestringType of the listing.
One of [Apartment, House, Building, Farm, Land, BusinessOffice, Store, Warehouse, Garage, HouseFloor, SaleOfBusiness]
required
subTypestringType of the listing.
One of [UrbanLand, BuildableLand, RusticLand, IndustrialLand]
referencestringInternal reference of the property in your crm. It must be unique.
required
minLength: 1
string ^.{0,100}$
referenceURLstringPublic link for the listing.
nullable: true
string ^.{0,150}$
addressobjectAddress Model
The listing address; it is required to send the coordinates of the listing or the postal code, even if you decide to hide the exact location on the site.
required
contactobjectContact Model
The information of the contact for the listing. By default the contact information will get pulled from the office to which the listing belongs to. Optionally it is possible to use this object to override this information and assign a listing automatically to user by providing the user email registered in CasaYes Portal.
nullable: true
attributesobjectAttributes Model
The main information of the listing.
required
operationobjectOperation Model
Information related to the listing price and commissions.
required
descriptionsobject []Descriptions Model
A list of descriptions to show in the listing detail.
required
roomsobject []Rooms Model
A list of rooms to show in the listing detail.
nullable: true
imagesobject []Images Model
A list of pictures to be shown on the listing detail page. The order of the images will automatically be set to the order of said images in this list. Optionally, the field "order" can be filled to specify a custom order. The default picture for the listing will always be the first image in either case.
nullable: true
videosobject []Link Model
A list of videos to show in the listing detail.
nullable: true
virtualTourUrlstringThe virtual tour to show in the detail of the listing.
nullable: true
string ^.{0,500}$
buildingNamestringThe building development name in which the listing may belong to.
nullable: true
string ^.{0,100}$
privateNotesstringThe private notes for the listing. This private notes can be accessed by visiting the listing details in CasaYes Portal.
nullable: true
string ^.{0,1000}$
overrideTitlestringThe override title to be displayed in the public site before the description.
nullable: true
string ^.{0,100}$

Address Model⚓︎

NameTypeDescription
visibilitybooleanIf the address of the listing is public. Defaults to true.
streetstringThe street name of the listing.
nullable: true
floorstring

The floor of the listing.
nullable: true
pattern: -[1-2]|[1-9]|[1-5][0-9]|60|rc|cv|scv|ult

Where: rc = Ground floor, cv = Basement, scv = Semi-Basement, ult = Last floor.

townstringThe city name of the listing.
nullable: true
doorNumberinteger ($int32)The door of the listing.
nullable: true
zipCodestringThe postal code of the listing. Required if you don’t provide the coordinates of the listing.
nullable: true
string ^.{0,10}$
countrystringThe country of the listing.
One of [Portuguese, Spanish, French, English, German, Italian]
coordinatesobjectCoordinates Address Model
The coordinates of the listing. Required if you don´t send the postal code.
nullable: true

Coordinates Address Model

NameTypeDescription
latitudenumber ($double)The latitude of the listing. Accuracy will be better with more decimals.
required
number [-90 ... 90]
longitudenumber ($double)The longitude of the listing. Accuracy will be better with more decimals.
required
number [-180 ... 180]

Contact Model⚓︎

NameTypeDescription
namestringName to override office information in site.
nullable: true
emailstring ($email)Email of a user on CasaYes Portal. This email allow us to assign the listing to the given user. If the user doesn't exist, this email will override the office email in our site.
required
minLength: 1
phonePrefixinteger ($int32)Country phone prefix to override office information in site.
nullable: true
pattern: ^[1-9][0-9]{1,3}$
phoneinteger ($int64)Phone to override office information in site.
nullable: true
pattern: ^[1-9][0-9]{4,15}$

Attributes Model⚓︎

NameTypeDescription
plotAreainteger ($int32)The plot area.
nullable: true
builtAreainteger ($int32)The built area.
nullable: true
totalAreainteger ($int32)Total area of the listing.
required
usableAreainteger ($int32)Usable area of the listing.
nullable: true
maxConstructionAreainteger ($int32)Maximum area for construction.
nullable: true
floorsinteger ($int32)Number of floors.
nullable: true
characteristicsstring []List with characteristics of the listing.
List of [ AirConditioning, EquippedKitchen, Balcony, Terrace, StorageRoom, Garden, SwimmingPool, Heating, ElectricCarsCharging, BoxGarage, OutdoorParking, SharedGarage ]
nullable: true
depositMonthsinteger ($int32)Only for rent operations. The required months to deposit.
nullable: true
parkingbooleanIf exists available parking. Parking refers to "Garage" to specify other parking types use characteristics.
parkingCapacityinteger ($int32)The capacity of the parking (garage). Only if parking is true.
nullable: true
builtYearinteger ($int32)The year when the listing was built.
nullable: true
number [999 ... 2100]
conservationstringThe conservation status of the listing.
One of [ New, Renovated, GoodGeneralConditions, RefreshmentsToPredict, WorkNeeded, WorkInProgress ]
nullable: true
energyCertificateRatingstringThe energy certificate rating of the listing.
One of [ APlus, A, B, BMinus, C, D, E, F, NA ]
required
energyCertificatePerformancenumber ($double)The energy certificate performance of the listing.
nullable: true
bathroomsinteger ($int32)Number of bathrooms.
nullable: true
bedroomsinteger ($int32)Number of bedrooms.
nullable: true
roomsinteger ($int32)Number of rooms.
nullable: true
parkingIncludedInPricebooleanIf parking (garage) is included in listing price. Only available if parking is true.
parkingPricenumber ($decimal)The value of the parking (garage). Only available if parking is true and parking is not included in price.
nullable: true
minimalStayinteger ($int32)Only for rent operations. Minimal required months for stay after rent.
nullable: true
availableFromstring ($date-time)Only for rent operations. Date when the listing will stay available for rent.
nullable: true
minAgeinteger ($int32)Only for rent operations. Minimum age to rent.
nullable: true
maxAgeinteger ($int32)Only for rent operations. Maximum age to rent.
nullable: true
bankPropertybooleanIf the listing belongs to a bank. Defaults to false.
elevatorbooleanIf the listing has an elevator. Defaults to false.
landRegisterstringThe land register code.
nullable: true
string ^.{0,100}$
treasuryLandRegisterstringThe treasury land register code.
nullable: true
string ^.{0,50}$
houseLicensingstringOnly for rent operations.
nullable: true
string ^.{0,150}$
condominiumValuenumber ($decimal)The price of the condominium.
nullable: true

Operation Model⚓︎

NameTypeDescription
pricenumber ($decimal)Value of the listing.
required
privatePricebooleanTrue if the value of the listing should not appear in the site.
priceGranularitystringOnly for rent operations.
One of [ Daily, Weekly, Annually, Monthly ]
nullable: true
typestringType of the business.
One of [ Buy, Lease ]
required
sharingCommissionnumber ($double)The value for the seller. If SharingCommissionType is Percentage, we will only allow values between 0 and 100.
nullable: true
sharingCommissionTypestringThe type of sharing commission.
One of [ Percentage, Fixed ]
nullable: true

Descriptions Model⚓︎

NameTypeDescription
languagestringThe language of the description.
One of [ Portuguese, Spanish, French, English, German, Italian ]
required
mainTextstringThe text of the description. If the text have more than 5000 characters, it will be truncated to 4997 + "..."
required
minLength: 1
string ^.{0,5000}$

Rooms Model⚓︎

NameTypeDescription
typestringType of the room.
One of [ LivingRoom, DiningRoom, Kitchen, Bedroom, Library, Laundry, Bathroom, GamesRoom, PartyRoom, WorkRoom, Loft, Basement ]
required
usableAreanumber ($double)Usable area of the room.
required
heigthnumber ($double)Heigth of the room
nullable: true
widthnumber ($double)Width of the room.
nullable: true

Images Model⚓︎

NameTypeDescription
urlstringThe link of the image.
required
minLength: 1
orderinteger ($int32)The order of the image in site.
nullable: true
NameTypeDescription
urlstringThe link of the video.
required
minLength: 1
orderinteger ($int32)The order of the video in site.
nullable: true
languagestringIf you want, you can show a video only for people that are searching in the site with the language that you specify here.
One of [ Portuguese, Spanish, French, English, German, Italian]
nullable: true