Zum Hauptinhalt springen

Justimmo WebsiteAPI (1.2.19)

Download OpenAPI specification:Download

OpenAPI Specification

This API is documented in OpenAPI 3.0 format with a few vendor extensions (prefixed with x-) for the generated HTML docs. We pledge ourselves to be compliant to the OpenAPI Standard, but due to different interpretations of the standard and different levels of implementation in various tools out there, we can not guarantee that the specification available for download above will work with any specific tool or client generator.

In our experience, there is currently no client generator that supports the full featureset of OpenAPI 3.0, let alone newer versions, and thus we most likely can not support you if you run into any issues due to the use of incompatible generators. We may also decide to update to a newer version of the OpenAPI Standard in the future, which - even without any changes to the API itself - can also lead to further incompatibilities with certain tools if they haven't been updated at that point themselves. For this reason, our recommendation is to implement the API Calls and handle the responses by yourself instead of relying on generated code.

Cross-Origin Resource Sharing

This API does NOT feature any Cross-Origin Resource Sharing (CORS) / CORS-Headers as it is meant for server-side consumption only.

Getting Started

Enable the API in Justimmo

To enable the API in your Justimmo Account you must be logged in as an administrator.
Go to "more" -> "Exports" and click on the tab "Custom exports". With the button "Create new API Export" you can enable the api in your account.
A username and password will be provided to you automatically.

The API is treated like any export in Justimmo and realties have to be booked in accordingly.

Accessing the API

The base URL for all api call is

https://api.justimmo.at/rest/v1/

All possible calls are described in detail in another section of this documentation.

Authentication

You must use HTTP-Auth for all calls in order to get access to your data. Username and password are provided under the API export settings (see above)

Errors

The API will return errors by setting the http status code to the appropriate value and may return a content with further information on the error.

401 Authentication Failure

Username and/or password are not correct. Status code will have the value 401.

404 Not found

The url you are trying to call could not be found. Status code will have the value 404.

<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <error>Ungültige Anfrage</error>
</justimmo>

400 Bad Request

A parameter could not be evaluated or has a not supported value. Status code will have the value 400.

<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <error>zimmer_von ["test" is not a number.]</error>
</justimmo>

500 Server Error

Internal Justimmo error. Status code will have the value 500.

<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <error>Internal Server Error</error>
</justimmo>

Files and Images

All files and images uploaded to Justimmo follow a specific url format.

You can request multiple picture sizes by adding the picturesize[] parameter to the api calls. A list of available picture sizes can be found on the linked page.

Example:

https://storage.justimmo.at/thumb/072049dc39bccd4ae9c08bb4a06e8d6e/fc_h480_w630/2f28BQ3fAxC7rKkxaG9GT5.jpg

Simple objects, residential sub real-estates and commercial areas

The links are shipped along with the attached pictures and plans in the <anhaenge/> node.

3 groups are available

group explanation
FILMLINK the link points to a video or a video player
RUNDGANG the link points to a 360° tour player
LINKS a general link
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <anhaenge>
        <anhang location="REMOTE" gruppe="FILMLINK">
            <anhangtitel>Youtube Video</anhangtitel>
            <format></format>
            <daten>
                <pfad>http://www.youtube.com/watch?v=123456789</pfad>
            </daten>
        </anhang>
        <anhang location="REMOTE" gruppe="FILMLINK">
            <anhangtitel>Link zum Vimeo</anhangtitel>
            <format></format>
            <daten>
                <pfad>https://vimeo.com/123456789</pfad>
            </daten>
        </anhang>
        <anhang location="REMOTE" gruppe="LINKS">
            <anhangtitel>Digital expose</anhangtitel>
            <format></format>
            <daten>
                <pfad>https://www.yumpu.com/de/embed/view/pil123456789</pfad>
            </daten>
        </anhang>
        <anhang location="REMOTE" gruppe="RUNDGANG">
            <anhangtitel>3D-Rundgang - cupix</anhangtitel>
            <format></format>
            <daten>
                <pfad>https://players.cupix.com/p/123456789</pfad>
            </daten>
        </anhang>
        <anhang location="REMOTE" gruppe="RUNDGANG">
            <anhangtitel>3D-Rundgang - feelestate</anhangtitel>
            <format></format>
            <daten>
                <pfad>https://tour.feelestate.com/view/fullscreen/id/123456789</pfad>
            </daten>
        </anhang>
        <anhang location="REMOTE" gruppe="RUNDGANG">
            <anhangtitel>360 Grad Fotos - kuula</anhangtitel>
            <format></format>
            <daten>
                <pfad>https://kuula.co/share/123456789</pfad>
            </daten>
        </anhang>
        <anhang location="REMOTE" gruppe="RUNDGANG">
            <anhangtitel>Virtueller Rundgang - matterport</anhangtitel>
            <format></format>
            <daten>
                <pfad>http://my.matterport.com/show/?m=123456789</pfad>
            </daten>
        </anhang>
        <anhang location="REMOTE" gruppe="RUNDGANG">
            <anhangtitel>3D-Tour - ogulo</anhangtitel>
            <format></format>
            <daten>
                <pfad>https://ogulo.de/12345/W6789</pfad>
            </daten>
        </anhang>
        <anhang location="REMOTE" gruppe="RUNDGANG">
            <anhangtitel>360°-Rundgang - picmyplace</anhangtitel>
            <format></format>
            <daten>
                <pfad>https://pics.picmyplace.eu/presentations/project-P1-123456789/start.html
                </pfad>
            </daten>
        </anhang>
        <anhang location="REMOTE" gruppe="RUNDGANG">
            <anhangtitel>3D-Wohnungsrundgang - visitour</anhangtitel>
            <format></format>
            <daten>
                <pfad>https://le1.visitour.at</pfad>
            </daten>
        </anhang>
    </anhaenge>
</justimmo>

Projects

For the projects you can find the links in the <links/> node in the detail view.

4 groups are available

group explanation
projekturl link of the project's webpage
filmlink the link points to a video or a video player
rundgang the link points to a 360° tour player
links a general link
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <projekt>
        <links>
            <link>
                <titel>Projekt-Link</titel>
                <pfad>https://www.justimmo.at</pfad>
                <gruppe>projekturl</gruppe>
            </link>
            <link>
                <titel>Youtube video</titel>
                <pfad>http://www.youtube.com/watch?v=123456789</pfad>
                <gruppe>filmlink</gruppe>
            </link>
            <link>
                <titel>3D-Rundgang - cupix</titel>
                <pfad>https://players.cupix.com/p/123456789</pfad>
                <gruppe>rundgang</gruppe>
            </link>
            <link>
                <titel>Digital expose</titel>
                <pfad>https://www.yumpu.com/de/embed/view/p123456789</pfad>
                <gruppe>links</gruppe>
            </link>
        </links>
    </projekt>
</justimmo>

Realty

Get realty information

List/Search

Executes a search and returns basic information of matching realties

query Parameters
limit
integer
Default: 10

How many elements should be returned in the list. Max 100.

offset
integer
Default: 0

Offset of the first element in the list.

culture
string
Default: "de"

Language for i18n fields.

QueryParameterPictureSize (string) or Array of QueryParameterPictureSize (strings)

The picture size to be used for picture urls. In combination with showDetails=1 it is also possible to request multiple sizes (e.g. picturesize[]=big&picturesize[]=small)

showDetails
integer
Default: 0
Enum: 0 1

Return all details of the real-estates instead of short summaries

orderby
string
Enum: "created_at" "objektnummer" "plz" "preis" "published_at" "updated_at"

Order results by specific field.

ordertype
string
Default: "asc"
Enum: "asc" "desc"

Order direction. Matched case-insensitively, so DESC and desc are equivalent.

alleProjektObjekte
integer
Default: 0
Enum: 0 1

Show all real-estates with projects regardless of realty state

preciseAreaSearch
integer
Default: 0
Enum: 0 1

Search commercial real-estates by usable area of the sub real-estates

filter[preis_von]
number

The min price. Depending on type it is the rent or purchase price.
see Example

filter[preis_bis]
number

The max price. Depending on type it is the rent or purchase price.

filter[price_per_m2_von]
number

The min price per square meter. Depending on type it is the rent or purchase price.

filter[price_per_m2_bis]
number

The max price per square meter. Depending on type it is the rent or purchase price.

integer or Array of integers

The main realty type. Multiple values are supported by using an array notation.
see Reference: Realty Types and Example

integer or Array of integers

The sub realty type. Multiple values are supported by using an array notation.
see Reference: Realty Types and Example

string or Array of strings

The name of the category assigned to real-estates. Multiple values are supported by using an array notation and are combined with OR.
see Example

string or Array of strings

The zip code. Multiple values are supported by using an array notation.
see Example

filter[plz_von]
string

The min zip code. Does not work for non-numerical zip codes.

filter[plz_bis]
string

The max zip code. Does not work for non-numerical zip codes.

filter[zimmer_von]
number

The min room count.
see Example

filter[zimmer_bis]
number

The max room count.

filter[objektnummer]
string

The realty number.
see Example

filter[objektnummer_von]
string

The min realty number.

filter[objektnummer_bis]
string

The max realty number.

filter[sort_flaeche_von]
number

The min area in square meters. It refers to the area fields in this order - living area, floor area, surface area and total area.
see Example

filter[sort_flaeche_bis]
number

The max area in square meters. It refers to the area fields in this order - living area, floor area, surface area and total area.

filter[flaeche_von]
number

The min area in square meters.

filter[flaeche_bis]
number

The max area in square meters.

filter[wohnflaeche_von]
number

The min living area in square meters.

filter[wohnflaeche_bis]
number

The max living area in square meters.

filter[nutzflaeche_von]
number

The min floor area in square meters.

filter[nutzflaeche_bis]
number

The max floor area in square meters.

filter[grundflaeche_von]
number

The min surface area in square meters.

filter[grundflaeche_bis]
number

The max surface area in square meters.

filter[anzahl_garten_von]
integer

The min number of the gardens.

filter[anzahl_garten_bis]
integer

The max number of the gardens.

filter[anzahl_balkons_von]
integer

The min number of the balconies.
see Example

filter[anzahl_balkons_bis]
integer

The max number of the balconies.

filter[anzahl_loggias_von]
integer

The min number of the loggias.

filter[anzahl_loggias_bis]
integer

The max number of the loggias.

filter[anzahl_terrassen_von]
integer

The min number of the terraces.

filter[anzahl_terrassen_bis]
integer

The max number of the terraces.

filter[anzahl_keller_von]
integer

The min number of the cellars.
see Example

filter[anzahl_keller_bis]
integer

The max number of the cellars.

filter[anzahl_garagen_von]
integer

The min number of the garages.

filter[anzahl_garagen_bis]
integer

The max number of the garages.

filter[anzahl_stellplaetze_von]
integer

The min number of the parking spots.

filter[anzahl_stellplaetze_bis]
integer

The max number of the parking spots.

filter[anzahl_sep_wc_von]
integer

The min number of the toilet rooms.

filter[anzahl_sep_wc_bis]
integer

The max number of the toilet rooms.

filter[anzahl_badezimmer_von]
integer

The min number of the bathrooms.
see Example

filter[anzahl_badezimmer_bis]
integer

The max number of the bathrooms.

filter[anzahl_abstellraum_von]
integer

The min number of the storage rooms.

filter[anzahl_abstellraum_bis]
integer

The max number of the storage rooms.

filter[zustand_id]
integer

Filter by condition. The id of the conditions.
see Reference: Conditions and Example

filter[objekt_ausstattung_list]
Array of integers

Filter by equipments. The id of the features. The array notation is required, also for a single value.
see Reference: Features and Example

filter[barrierefrei]
integer
Enum: 0 1

filter by disability access
see Example

filter[stichwort]
string

Keyword. Must be present in realty title, ZIP, city, street, object number or internal description.

integer or Array of integers

The id of the country. Multiple values are supported by using an array notation.
see Call: Country

integer or Array of integers

The id of the federal state. Multiple values are supported by using an array notation. see Call: Federal States

filter[politischer_bezirk_id]
integer

The id of the political district. Only a single value is supported. see Call: Political Districts

integer or Array of integers

The realty status. Multiple values are supported by using an array notation.
see Reference: Realty Status and Example

filter[miete]
integer
Enum: 0 1

Set value to 1 to search for realties available for rent.
see Example

filter[kauf]
integer
Enum: 0 1

Set value to 1 to search for realties available for purchase.

filter[bauart_id]
integer
Enum: 1 2

Filter by old or new buildings.
see Reference: Styles of Buildings and Example

filter[owner_id]
integer

Id of the employee responsible for the realty.
see Call: Team List

filter[projekt_id]
integer

Id of the project the realty belongs to.
see Call: Project List

filter[realty_type]
string

Name of the realty system type the realty belongs to.
see Reference: Realty System Types and Example

filter[parent_id]
integer

Id of the parent realty.

filter[aktualisiert_am_von]
string <date-time>

Updated at from date.
see Example

filter[aktualisiert_am_bis]
string <date-time>

Updated at to date.

filter[rent_with_purchase_option]
integer
Enum: 0 1

Filter for rent realties which have the option enabled.

Responses

Response samples

Content type
application/xml
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <query-result>
        <count>15</count>
    </query-result>
    <immobilie>
        <id>361672</id>
        <objektnummer>17</objektnummer>
        <objektkategorie>
            <nutzungsart WOHNEN="1" GEWERBE="0" ANLAGE="0"/>
            <vermarktungsart KAUF="0" MIETE_PACHT="1"/>
            <objektart>
                <wohnung wohnungtyp="ERDGESCHOSS"/>
            </objektart>
            <user_defined_simplefield feldname="objektart_id">2</user_defined_simplefield>
            <user_defined_simplefield feldname="objektart_name">Wohnung</user_defined_simplefield>
            <user_defined_simplefield feldname="sub_objektart_id">103</user_defined_simplefield>
            <user_defined_simplefield feldname="sub_objektart_name">Erdgeschoß</user_defined_simplefield>
        </objektkategorie>
        <titel>DEMOOBJEKT! Grünruhelage in den Kornkammern Wiens</titel>
        <dreizeiler></dreizeiler>
        <naehe>Donauufer</naehe>
        <objektbeschreibung>&lt;p&gt;DEMOOBJEKT! Bitte nicht anfragen!&lt;/p&gt;&#13;
            &lt;p&gt;Breitenlee: Sonnige 3 Zimmer-Wohnung inmitten der Kornkammern Wiens&lt;br /&gt;&lt;br /&gt;Die
            helle freundliche 3 Zimmer-Wohnung mit Bad (Wanne), eigenem WC, Schrankraum, Wohnküche mit Speiss,
            französichen Fenstern in allen Räumen ist süd-westl. ausgerichtet. Im Mietpreis sind die Kosten für 1
            Garagenplatz enthalten.&lt;br /&gt;5 Minuten mit dem Auto nach Breitenlee, 10 Min. zum großen Donaustädter
            Einkaufspark und in 100 Metern mitten in den Feldern! Die Haltestelle des städt. Autobuses ist vor der Türe!&lt;/p&gt;</objektbeschreibung>
        <anzahl_zimmer>3</anzahl_zimmer>
        <etage>4. Etage</etage>
        <ort>Wien</ort>
        <plz>1220</plz>
        <preis>1752</preis>
        <gesamtmiete>1818</gesamtmiete>
        <mietkauf>0</mietkauf>
        <wohnflaeche>82</wohnflaeche>
        <nutzflaeche>95</nutzflaeche>
        <anzahl_terrassen>1</anzahl_terrassen>
        <terrassen_flaeche>15</terrassen_flaeche>
        <erstes_bild>https://files.justimmo.at/public/pic/small/APRorOYjzZ.jpg</erstes_bild>
        <zweites_bild>https://files.justimmo.at/public/pic/small/APRoFdmnle.jpg</zweites_bild>
        <status>aktiv</status>
        <status_id>5</status_id>
        <erstellt_am>2014-12-03 10:21:03</erstellt_am>
        <aktualisiert_am>2016-03-04 10:44:19</aktualisiert_am>
    </immobilie>
    <!-- ..... -->
</justimmo>

Details

Returns detailed information of a single realty as xml loosely based on Openimmo 1.2.7

query Parameters
objekt_id
required
integer
Example: objekt_id=10

The id of the realty

culture
string
Default: "de"

Language for i18n fields

QueryParameterPictureSize (string) or Array of QueryParameterPictureSize (strings)

The picture size to be used for picture urls. Multiple sizes can be requested using array notation (e.g. picturesize[]=big&picturesize[]=small).

Responses

Response samples

Content type
application/xml
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <immobilie>
        <objektkategorie>
            <nutzungsart WOHNEN="1" GEWERBE="0" ANLAGE="0"/>
            <vermarktungsart KAUF="1" MIETE_PACHT="0"/>
            <objektart>
                <haus haustyp="VILLA"/>
                <subobjektart>Villa</subobjektart>
            </objektart>
            <user_defined_simplefield feldname="objektart_id">3</user_defined_simplefield>
            <user_defined_simplefield feldname="objektart_name">Haus</user_defined_simplefield>
            <user_defined_simplefield feldname="sub_objektart_id">20</user_defined_simplefield>
            <user_defined_simplefield feldname="sub_objektart_name">Villa</user_defined_simplefield>
            <user_defined_anyfield>
                <ji_kategorie id="6052">Topobjekte</ji_kategorie>
                <ji_kategorie id="21291">Test_Kategorie</ji_kategorie>
            </user_defined_anyfield>
        </objektkategorie>
        <geo>
            <plz>3424</plz>
            <ort>St. Nimmerleinstal</ort>
            <bundesland>Niederösterreich</bundesland>
            <land iso_land="AUT"/>
            <user_defined_simplefield feldname="geokoordinaten_laengengrad">16.2859093</user_defined_simplefield>
            <user_defined_simplefield feldname="geokoordinaten_breitengrad">48.423342</user_defined_simplefield>
            <user_defined_simplefield feldname="ungenaue_verortung_laengengrad">16.2859093</user_defined_simplefield>
            <user_defined_simplefield feldname="ungenaue_verortung_breitengrad">48.423342</user_defined_simplefield>
            <user_defined_simplefield feldname="ungenaue_verortung_radius">1248</user_defined_simplefield>
            <user_defined_simplefield feldname="politischer_bezirk">Tulln</user_defined_simplefield>
            <user_defined_anyfield>
                <ji_point_of_interest_distance>
                    <distance type="bus" group="traffic">500</distance>
                    <distance type="motorway_junction" group="traffic">6500</distance>
                    <distance type="railway_station" group="traffic">1500</distance>
                    <distance type="aerodrome" group="traffic">6500</distance>
                    <distance type="school" group="children_and_school">1000</distance>
                    <distance type="kindergarten" group="children_and_school">500</distance>
                    <distance type="university" group="children_and_school">4500</distance>
                    <distance type="bank" group="other">500</distance>
                    <distance type="atm" group="other">500</distance>
                    <distance type="post_office" group="other">1000</distance>
                    <distance type="police" group="other">1000</distance>
                    <distance type="supermarket" group="local_supply">500</distance>
                    <distance type="bakery" group="local_supply">1000</distance>
                    <distance type="doctors" group="health">500</distance>
                    <distance type="pharmacy" group="health">500</distance>
                    <distance type="hospital" group="health">7500</distance>
                    <distance type="clinic" group="health">6000</distance>
                </ji_point_of_interest_distance>
            </user_defined_anyfield>
            <user_defined_simplefield feldname="geokoordinaten_laengengrad_exakt">16.2859093</user_defined_simplefield>
            <user_defined_simplefield feldname="geokoordinaten_breitengrad_exakt">48.423342</user_defined_simplefield>
        </geo>
        <kontaktperson>
            <email_direkt>justin.immo@example.com</email_direkt>
            <name>Immo</name>
            <vorname>Justin</vorname>
            <anrede>Herr</anrede>
            <position>Makler</position>
            <firma>Justimmo</firma>
            <strasse>Mariahilfer Straße 10</strasse>
            <plz>1070</plz>
            <ort>Wien</ort>
            <land iso_land="AUT"/>
            <email_feedback>52176-202107-280db147@example.com</email_feedback>
            <url>example.com</url>
            <id>18514915</id>
        </kontaktperson>
        <preise>
            <kaufpreis>539401.2</kaufpreis>
            <kaufpreisnetto kaufpreisust="89900.2">449501</kaufpreisnetto>
            <nebenkosten>150</nebenkosten>
            <kaufpreis_pro_qm>1599.65</kaufpreis_pro_qm>
            <provisionspflichtig>1</provisionspflichtig>
            <aussen_courtage>3% des Kaufpreises zzgl. 20% USt.</aussen_courtage>
            <waehrung iso_waehrung="EUR"/>
            <stp_garage anzahl="1"/>
            <user_defined_simplefield feldname="monatlichekostenbrutto">180</user_defined_simplefield>
            <user_defined_simplefield feldname="grunderwerbssteuer">3.5</user_defined_simplefield>
            <user_defined_simplefield feldname="grundbucheintragung">1.1</user_defined_simplefield>
            <user_defined_anyfield>
                <mwst_gesamt>30</mwst_gesamt>
            </user_defined_anyfield>
            <zusatzkosten>
                <betriebskosten>
                    <name>Betriebskosten</name>
                    <netto>150</netto>
                    <brutto>180</brutto>
                    <ust>20</ust>
                    <ust_wert>20</ust_wert>
                    <ust_berechneter_wert>30</ust_berechneter_wert>
                    <ust_typ>percent</ust_typ>
                </betriebskosten>
            </zusatzkosten>
        </preise>
        <flaechen>
            <wohnflaeche>281</wohnflaeche>
            <grundstuecksflaeche>400</grundstuecksflaeche>
            <anzahl_zimmer>6</anzahl_zimmer>
            <anzahl_badezimmer>1</anzahl_badezimmer>
            <anzahl_sep_wc>2</anzahl_sep_wc>
            <anzahl_terrassen>2</anzahl_terrassen>
            <balkon_terrasse_flaeche>20</balkon_terrasse_flaeche>
            <kellerflaeche>40</kellerflaeche>
            <user_defined_simplefield feldname="anzahl_garagen">1</user_defined_simplefield>
            <anzahl_balkon_terrassen>2</anzahl_balkon_terrassen>
            <anzahl_keller>1</anzahl_keller>
            <terrassen_flaeche>20</terrassen_flaeche>
            <anzahl_garagen>1</anzahl_garagen>
            <anzahl_abstellraum>1</anzahl_abstellraum>
        </flaechen>
        <ausstattung>
            <bad BIDET="1" DUSCHE="1" FENSTER="1" WANNE="1"/>
            <boden DIELEN="1" FLIESEN="1"/>
            <heizungsart OFEN="1" ZENTRAL="1"/>
            <befeuerung SOLAR="1"/>
            <stellplatzart CARPORT="1"/>
            <ausricht_balkon_terrasse NORD="1" SUED="1"/>
            <kabel_sat_tv>1</kabel_sat_tv>
        </ausstattung>
        <zustand_angaben>
            <alter alter_attr="NEUBAU">Neubau</alter>
            <energiepass>
                <epart>BEDARF</epart>
                <gueltig_bis>2012-09-12</gueltig_bis>
                <hwbwert>88</hwbwert>
                <hwbklasse>C</hwbklasse>
                <fgeewert>2.1</fgeewert>
                <fgeeklasse>D</fgeeklasse>
            </energiepass>
            <user_defined_simplefield feldname="epass_hwbwert">88</user_defined_simplefield>
            <user_defined_simplefield feldname="epass_hwbklasse">C</user_defined_simplefield>
            <user_defined_simplefield feldname="epass_fgeewert">2.1</user_defined_simplefield>
            <user_defined_simplefield feldname="epass_fgeeklasse">D</user_defined_simplefield>
            <hwbwert>88</hwbwert>
            <fgeewert>2.1</fgeewert>
        </zustand_angaben>
        <freitexte>
            <objekttitel>DEMOOBJEKT! Hochwertige Familienvilla mit Flair</objekttitel>
            <objektbeschreibung>&lt;p&gt;DEMOOBJEKT! Bitte nicht anfragen!&lt;/p&gt;&#13;
                    &lt;p&gt;Breitenlee: Sonnige 3 Zimmer-Wohnung inmitten der Kornkammern Wiens&lt;br /&gt;&lt;br /&gt;Die
                    helle freundliche 3 Zimmer-Wohnung mit Bad (Wanne), eigenem WC, Schrankraum, Wohnküche mit Speiss,
                    französichen Fenstern in allen Räumen ist süd-westl. ausgerichtet. Im Mietpreis sind die Kosten für 1
                    Garagenplatz enthalten.&lt;br /&gt;5 Minuten mit dem Auto nach Breitenlee, 10 Min. zum großen Donaustädter
                    Einkaufspark und in 100 Metern mitten in den Feldern! Die Haltestelle des städt. Autobuses ist vor der Türe!&lt;/p&gt;</objektbeschreibung>
            <ausstatt_beschr>Dielen, Fliesen, Solarenergie, Heizofen, Zentralheizung, Nordbalkon / -terrasse, Südbalkon / -terrasse, Bad mit Fenster, Badewanne, Dusche, Kabel / Satelliten-TV, Carport, Bidet</ausstatt_beschr>
        </freitexte>
        <anhaenge>
            <anhang location="REMOTE" gruppe="TITELBILD">
                <format>jpg</format>
                <check ctype="DATETIME">2021-04-14T13:15:39</check>
                <daten>
                    <pfad>https://files.justimmo.at/public/pic/big/1jppd2IlbpuKyUkOjSCN4D.jpg</pfad>
                    <big>https://files.justimmo.at/public/pic/big/1jppd2IlbpuKyUkOjSCN4D.jpg</big>
                    <small>https://files.justimmo.at/public/pic/small/1jppd2IlbpuKyUkOjSCN4D.jpg</small>
                    <medium>https://files.justimmo.at/public/pic/medium/1jppd2IlbpuKyUkOjSCN4D.jpg</medium>
                    <big2>https://files.justimmo.at/public/pic/big2/1jppd2IlbpuKyUkOjSCN4D.jpg</big2>
                    <s220x155>https://files.justimmo.at/public/pic/s220x155/1jppd2IlbpuKyUkOjSCN4D.jpg</s220x155>
                    <fullhd>https://files.justimmo.at/public/pic/fullhd/1jppd2IlbpuKyUkOjSCN4D.jpg</fullhd>
                </daten>
                <original_dateiname>iStock_000016771165Medium.jpg</original_dateiname>
            </anhang>
            <anhang location="REMOTE">
                <format>jpg</format>
                <check ctype="DATETIME">2021-04-14T13:15:39</check>
                <daten>
                    <pfad>https://files.justimmo.at/public/pic/big/7hdJ3HN8x0C97fYcrFvXP5.jpg</pfad>
                    <big>https://files.justimmo.at/public/pic/big/7hdJ3HN8x0C97fYcrFvXP5.jpg</big>
                    <small>https://files.justimmo.at/public/pic/small/7hdJ3HN8x0C97fYcrFvXP5.jpg</small>
                    <medium>https://files.justimmo.at/public/pic/medium/7hdJ3HN8x0C97fYcrFvXP5.jpg</medium>
                    <big2>https://files.justimmo.at/public/pic/big2/7hdJ3HN8x0C97fYcrFvXP5.jpg</big2>
                    <s220x155>https://files.justimmo.at/public/pic/s220x155/7hdJ3HN8x0C97fYcrFvXP5.jpg</s220x155>
                    <fullhd>https://files.justimmo.at/public/pic/fullhd/7hdJ3HN8x0C97fYcrFvXP5.jpg</fullhd>
                </daten>
                <original_dateiname>iStock_000009866134Medium.jpg</original_dateiname>
            </anhang>
            <!-- ..... -->
        </anhaenge>
        <verwaltung_objekt>
            <objektadresse_freigeben>1</objektadresse_freigeben>
            <user_defined_simplefield feldname="ji_objektstatus">aktiv</user_defined_simplefield>
            <user_defined_simplefield feldname="ji_objektstatus_id">5</user_defined_simplefield>
            <user_defined_simplefield feldname="bauart_id">2</user_defined_simplefield>
            <status>aktiv</status>
            <status_id>5</status_id>
            <user_defined_simplefield feldname="erstellt_am">2016-10-28 12:12:34</user_defined_simplefield>
            <user_defined_simplefield feldname="aktualisiert_am">2024-12-19 12:35:34</user_defined_simplefield>
        </verwaltung_objekt>
        <verwaltung_techn>
            <objektnr_intern>883394</objektnr_intern>
            <objektnr_extern>1372/15</objektnr_extern>
            <aktion aktionart="CHANGE"/>
            <openimmo_obid>OBGC201610251212340665d9tei9at2</openimmo_obid>
            <stand_vom>2024-12-19</stand_vom>
            <sprache>de-DE</sprache>
            <user_defined_simplefield feldname="ji_anzeige_in_suchergebnis">1</user_defined_simplefield>
            <user_defined_simplefield feldname="ji_kundennummer">1372</user_defined_simplefield>
            <user_defined_simplefield feldname="ji_stand_vom">2024-12-19 12:35:34</user_defined_simplefield>
            <user_defined_simplefield feldname="realty_system_type">simple</user_defined_simplefield>
            <user_defined_simplefield feldname="parent_id"/>
        </verwaltung_techn>
        <dokumente/>
        <videos>
            <video>
                <id>player_video_60556033</id>
                <vorschaubild>https://storage.justimmo.at/thumb/5c941a40e9bd2a2038bb39b706ebe7e2/fc_h320_w640/3NGmQ4Ahze04cJdXIOs5Kc.jpg</vorschaubild>
                <pfad>https://storage.justimmo.at/video/1080p/3NGmQ4Ahze04cJdXIOs5Kc.mp4</pfad>
            </video>
        </videos>
        <bilder360/>
        <links/>
    </immobilie>
</justimmo>

Expose

Returns the content of the expose pdf as a stream

query Parameters
objekt_id
required
integer
Example: objekt_id=10

The id of the realty

expose
string
Default: "Default"
Example: expose=DefaultNew

The type of the expose.
see Reference: Expose Types

culture
string
Default: "de"

Language

Responses

Inquiry

Create an inquiry. Justimmo will automatically create a contact and assign the inquiry to the employee of the realty.

query Parameters
objekt_id
integer
Example: objekt_id=10

The id of the realty

anrede_id
integer
Enum: 1 2
Example: anrede_id=1

salutation of contact
see Reference: Salutation

titel
string
Example: titel=Dr.

Title of contact

vorname
required
string
Example: vorname=John

First name of contact

nachname
required
string
Example: nachname=Doe

Last name of contact

suffix
string
Example: suffix=MSc

Name suffix of contact

email
string <email>
Example: email=john.doe@example.com

Email address of contact

tel
string
Example: tel=+4312345678

Phone number of contact

message
required
string
Example: message=I'm interested in this property.

Message of the inquiry

strasse
string
Example: strasse=Main Street 123

Street of contact

plz
string
Example: plz=10115

Zip code of contact

ort
string
Example: ort=Wien

City of contact

land
integer
Example: land=17

Id of the country of contact
see Call: Countries

kategorie
string
Example: kategorie=Website-Anfrage

Name of a single marketing category the contact should be assigned to. Matched by name against the tenant's marketing-usable categories; a non-matching value is ignored.

firma
string
Example: firma=Example Company GmbH

Company of the contact

newsletter
Array of integers
Example: newsletter=1&newsletter=3

An array of newsletter category ids to be assigned to the contact created by this request.

doubleoptin_completed
integer
Enum: 0 1
Example: doubleoptin_completed=0

Whether double opt-in has already been completed externally or not. If not Justimmo will handle double opt-in and send an email to the contact automatically

is_realty_owner
integer
Enum: 0 1
Example: is_realty_owner=0

Whether the inquiry comes from a realty owner. If 1, the contact is assigned to the contact category "Owner".

realty_owner_consultation_request
integer
Enum: 0 1
Example: realty_owner_consultation_request=0

Whether the inquiry comes from a realty owner who wants a consultation from an agent. If 1, the agent will receive an email about this request for a personal consultation.

funding_inquiry
integer
Enum: 0 1
Example: funding_inquiry=0

Whether the inquiry comes with a funding request. If 1, the agent or the selected 3rd party will receive an email about this request for a personal consultation. Additional paid service that can be activated in Justimmo.

Responses

Ids

Returns ids of matching realties as JSON without limit and offset limitations.

query Parameters
orderby
string
Enum: "created_at" "objektnummer" "plz" "preis" "published_at" "updated_at"

Order results by specific field.

ordertype
string
Default: "asc"
Enum: "asc" "desc"

Order direction. Matched case-insensitively, so DESC and desc are equivalent.

alleProjektObjekte
integer
Default: 0
Enum: 0 1

Show all real-estates with projects regardless of realty state

preciseAreaSearch
integer
Default: 0
Enum: 0 1

Search commercial real-estates by usable area of the sub real-estates

filter[preis_von]
number

The min price. Depending on type it is the rent or purchase price.
see Example

filter[preis_bis]
number

The max price. Depending on type it is the rent or purchase price.

filter[price_per_m2_von]
number

The min price per square meter. Depending on type it is the rent or purchase price.

filter[price_per_m2_bis]
number

The max price per square meter. Depending on type it is the rent or purchase price.

integer or Array of integers

The main realty type. Multiple values are supported by using an array notation.
see Reference: Realty Types and Example

integer or Array of integers

The sub realty type. Multiple values are supported by using an array notation.
see Reference: Realty Types and Example

string or Array of strings

The name of the category assigned to real-estates. Multiple values are supported by using an array notation and are combined with OR.
see Example

string or Array of strings

The zip code. Multiple values are supported by using an array notation.
see Example

filter[plz_von]
string

The min zip code. Does not work for non-numerical zip codes.

filter[plz_bis]
string

The max zip code. Does not work for non-numerical zip codes.

filter[zimmer_von]
number

The min room count.
see Example

filter[zimmer_bis]
number

The max room count.

filter[objektnummer]
string

The realty number.
see Example

filter[objektnummer_von]
string

The min realty number.

filter[objektnummer_bis]
string

The max realty number.

filter[sort_flaeche_von]
number

The min area in square meters. It refers to the area fields in this order - living area, floor area, surface area and total area.
see Example

filter[sort_flaeche_bis]
number

The max area in square meters. It refers to the area fields in this order - living area, floor area, surface area and total area.

filter[flaeche_von]
number

The min area in square meters.

filter[flaeche_bis]
number

The max area in square meters.

filter[wohnflaeche_von]
number

The min living area in square meters.

filter[wohnflaeche_bis]
number

The max living area in square meters.

filter[nutzflaeche_von]
number

The min floor area in square meters.

filter[nutzflaeche_bis]
number

The max floor area in square meters.

filter[grundflaeche_von]
number

The min surface area in square meters.

filter[grundflaeche_bis]
number

The max surface area in square meters.

filter[anzahl_garten_von]
integer

The min number of the gardens.

filter[anzahl_garten_bis]
integer

The max number of the gardens.

filter[anzahl_balkons_von]
integer

The min number of the balconies.
see Example

filter[anzahl_balkons_bis]
integer

The max number of the balconies.

filter[anzahl_loggias_von]
integer

The min number of the loggias.

filter[anzahl_loggias_bis]
integer

The max number of the loggias.

filter[anzahl_terrassen_von]
integer

The min number of the terraces.

filter[anzahl_terrassen_bis]
integer

The max number of the terraces.

filter[anzahl_keller_von]
integer

The min number of the cellars.
see Example

filter[anzahl_keller_bis]
integer

The max number of the cellars.

filter[anzahl_garagen_von]
integer

The min number of the garages.

filter[anzahl_garagen_bis]
integer

The max number of the garages.

filter[anzahl_stellplaetze_von]
integer

The min number of the parking spots.

filter[anzahl_stellplaetze_bis]
integer

The max number of the parking spots.

filter[anzahl_sep_wc_von]
integer

The min number of the toilet rooms.

filter[anzahl_sep_wc_bis]
integer

The max number of the toilet rooms.

filter[anzahl_badezimmer_von]
integer

The min number of the bathrooms.
see Example

filter[anzahl_badezimmer_bis]
integer

The max number of the bathrooms.

filter[anzahl_abstellraum_von]
integer

The min number of the storage rooms.

filter[anzahl_abstellraum_bis]
integer

The max number of the storage rooms.

filter[zustand_id]
integer

Filter by condition. The id of the conditions.
see Reference: Conditions and Example

filter[objekt_ausstattung_list]
Array of integers

Filter by equipments. The id of the features. The array notation is required, also for a single value.
see Reference: Features and Example

filter[barrierefrei]
integer
Enum: 0 1

filter by disability access
see Example

filter[stichwort]
string

Keyword. Must be present in realty title, ZIP, city, street, object number or internal description.

integer or Array of integers

The id of the country. Multiple values are supported by using an array notation.
see Call: Country

integer or Array of integers

The id of the federal state. Multiple values are supported by using an array notation. see Call: Federal States

filter[politischer_bezirk_id]
integer

The id of the political district. Only a single value is supported. see Call: Political Districts

integer or Array of integers

The realty status. Multiple values are supported by using an array notation.
see Reference: Realty Status and Example

filter[miete]
integer
Enum: 0 1

Set value to 1 to search for realties available for rent.
see Example

filter[kauf]
integer
Enum: 0 1

Set value to 1 to search for realties available for purchase.

filter[bauart_id]
integer
Enum: 1 2

Filter by old or new buildings.
see Reference: Styles of Buildings and Example

filter[owner_id]
integer

Id of the employee responsible for the realty.
see Call: Team List

filter[projekt_id]
integer

Id of the project the realty belongs to.
see Call: Project List

filter[realty_type]
string

Name of the realty system type the realty belongs to.
see Reference: Realty System Types and Example

filter[parent_id]
integer

Id of the parent realty.

filter[aktualisiert_am_von]
string <date-time>

Updated at from date.
see Example

filter[aktualisiert_am_bis]
string <date-time>

Updated at to date.

filter[rent_with_purchase_option]
integer
Enum: 0 1

Filter for rent realties which have the option enabled.

Responses

Response samples

Content type
application/json
[
  • "361672",
  • "361673",
  • "361677"
]

Team

Get information about employees

List

Returns all categories with employees with an active "Show on Homepage" flag in Justimmo

Responses

Response samples

Content type
application/xml
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
  <kategorie name="Geschäftsführung">
    <mitarbeiter>
      <id>264110</id>
      <bild>
        <pfad>https://files.justimmo.at/public/pic/user_small/APRil3QC47.jpg</pfad>
        <pfad_medium>https://files.justimmo.at/public/pic/user_medium/APRil3QC47.jpg</pfad_medium>
      </bild>
      <vorname>Aurel</vorname>
      <nachname>Stehmann</nachname>
      <position>Geschäftsführung</position>
      <email>a.stehmann@justimmo.at</email>
    </mitarbeiter>
  </kategorie>
</justimmo>

Detail

Executes a search and returns basic information of matching real-estates.

query Parameters
id
required
integer
Example: id=264110

The id of the employee

Responses

Response samples

Content type
application/xml
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <id>264110</id>
    <bild>
        <pfad>https://files.justimmo.at/public/pic/user_small/APRil3QC47.jpg</pfad>
        <pfad_medium>https://files.justimmo.at/public/pic/user_medium/APRil3QC47.jpg</pfad_medium>
    </bild>
    <vorname>Aurel</vorname>
    <nachname>Stehmann</nachname>
    <position>Geschäftsführung</position>
    <email>a.stehmann@justimmo.at</email>
</justimmo>

Ids

Returns ids of matching employees as JSON without limit and offset limitations.

Responses

Response samples

Content type
application/json
[
  • "123",
  • "125",
  • "159"
]

Project

Get information about realty projects

List/Search

Executes a search and returns basic information of matching projects. A project must be active, have the "Show on Homepage" flag set, and have at least one active realty booked into the API feed.

Filter scope — filter parameters come in two kinds:

  • Realty filters (the default) match the project's realties; a project is returned when it has at least one realty matching the criteria.
  • Project filters match the project itself.

Watch the look-alike pairs that live on different scopes: projekt_objektnummer (project) vs objektnummer (realty); projekt_status (project) vs objekt_status_id (realty); project_tag_name (project) vs tag_name (realty).

When alle=1, realty filtering is skipped entirely — all Realty filters are ignored and only Project filters apply.

query Parameters
limit
integer
Default: 25

How many elements should be returned in the list. Max 100.

offset
integer
Default: 0

Offset of the first element in the list.

culture
string
Default: "de"

Language for i18n fields.

QueryParameterPictureSize (string) or Array of QueryParameterPictureSize (strings)

The picture size to be used for picture urls. In combination with showDetails=1 it is also possible to request multiple sizes (e.g. picturesize[]=big&picturesize[]=small)

showDetails
integer
Default: 0
Enum: 0 1

Return all details of the real-estates instead of short summaries

objektIds
integer
Default: 0
Enum: 0 1

When set to 1, return only the IDs of each project's real-estates (as <immobilien_ids>) instead of full <immobilien> entries.

orderby
string
Enum: "created_at" "updated_at"

Order results by specific field. Applied to project, not to real-estates of project.

ordertype
string
Default: "asc"
Enum: "asc" "desc"

Order direction. Matched case-insensitively, so DESC and desc are equivalent.

alle
integer
Default: 0
Enum: 0 1

Show all projects regardless if active real-estates are present in project. When set to 1, realty filtering is skipped entirely and all realty filters are ignored.

alleProjektObjekte
integer
Default: 0
Enum: 0 1

Include all real-estates belonging to the project, regardless of their object status.

filter[projekt_objektnummer]
string

Project The realty number of the project.

string or Array of strings

Project The project state. Must be one of planning, building, finished. Multiple values are supported by using an array notation.

filter[referenz]
integer
Enum: 0 1

Project Set value to 1 to search only for reference projects

string or Array of strings

Project The name of the category assigned to the project. Multiple values are supported by using an array notation and are combined with OR

filter[fertigstellung_von]
string <date>

Project Completion date from.

filter[fertigstellung_bis]
string <date>

Project Completion date to.

filter[verkaufsstart_von]
string <date>

Project Sale start from date.

filter[verkaufsstart_bis]
string <date>

Project Sale start to date.

filter[miete]
integer
Enum: 0 1

Realty Set value to 1 to search for real-estates available for rent.

filter[kauf]
integer
Enum: 0 1

Realty Set value to 1 to search for real-estates available for purchase.

filter[objektnummer]
string

Realty The realty number.

filter[objektnummer_von]
string

Realty The min realty number.

filter[objektnummer_bis]
string

Realty The max realty number.

integer or Array of integers

Realty The realty status. Multiple values are supported by using an array notation.
see Reference: Realty Status

filter[owner_id]
integer

Realty Id of the employee responsible for the realty.
see Call: Team List

integer or Array of integers

Realty The main realty type. Multiple values are supported by using an array notation.
see Reference: Realty Types

integer or Array of integers

Realty The sub realty type. Multiple values are supported by using an array notation.
see Reference: Realty Types

integer or Array of integers

Realty The id of the federal state. Multiple values are supported by using an array notation.
see Call: Federal States

string or Array of strings

Realty The zip code. Multiple values are supported by using an array notation

filter[plz_von]
string

Realty The min zip code. Does not work for non-numerical zip codes.

filter[plz_bis]
string

Realty The max zip code. Does not work for non-numerical zip codes.

filter[preis_von]
number

Realty The min price. Depending on type it is the rent or purchase price.

filter[preis_bis]
number

Realty The max price. Depending on type it is the rent or purchase price.

filter[flaeche_von]
number

Realty The min area in square meters.

filter[flaeche_bis]
number

Realty The max area in square meters.

filter[wohnflaeche_von]
number

Realty The min living area in square meters.

filter[wohnflaeche_bis]
number

Realty The max living area in square meters.

filter[nutzflaeche_von]
number

Realty The min floor area in square meters.

filter[nutzflaeche_bis]
number

Realty The max floor area in square meters.

filter[grundflaeche_von]
number

Realty The min surface area in square meters.

filter[grundflaeche_bis]
number

Realty The max surface area in square meters.

filter[zimmer_von]
number

Realty The min room count.

filter[zimmer_bis]
number

Realty The max room count.

filter[stichwort]
string

Realty Keyword. Must be present in realty title, ZIP, city, street, object number or internal description.

string or Array of strings

Realty The name of the category assigned to real-estates. Multiple values are supported by using an array notation and are combined with OR

Responses

Response samples

Content type
application/xml
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <query-result>
        <count>2</count>
    </query-result>
    <projekt>
        <id>46</id>
        <titel>Demoprojekt in Zentrumsnähe</titel>
        <beschreibung>Demoprojekt. Bitte nicht anfragen</beschreibung>
        <dreizeiler></dreizeiler>
        <strasse></strasse>
        <hausnummer>2</hausnummer>
        <plz>1030</plz>
        <ort>Wien</ort>
        <in_bau>1</in_bau>
        <sonstige_angaben></sonstige_angaben>
        <lage></lage>
        <freitext_1></freitext_1>
        <residential_aggregation_data>
            <area_from>200</area_from>
            <area_to>400</area_to>
            <price_from>120000</price_from>
            <price_to>180000</price_to>
            <rooms_from>2</rooms_from>
            <rooms_to>4</rooms_to>
            <available>3</available>
        </residential_aggregation_data>
        <immobilien>
            <immobilie>
                <id>700169</id>
                <objektnummer></objektnummer>
                <objektkategorie>
                    <nutzungsart WOHNEN="1" GEWERBE="0" ANLAGE="0"/>
                    <vermarktungsart KAUF="0" MIETE_PACHT="1"/>
                    <objektart>
                        <wohnung/>
                    </objektart>
                    <user_defined_simplefield feldname="objektart_id">2</user_defined_simplefield>
                    <user_defined_simplefield feldname="objektart_name">Wohnung</user_defined_simplefield>
                    <user_defined_anyfield>
                        <ji_kategorie id="4743">Wienerwald</ji_kategorie>
                    </user_defined_anyfield>
                </objektkategorie>
                <titel>DEMOOBJEKT! Luxus Wienblick-Dachgeschosswohnung mit Wintergarten, offenen Kamin, Sauna und
                    Weinkeller
                </titel>
                <dreizeiler></dreizeiler>
                <naehe></naehe>
                <objektbeschreibung>DEMOOBJEKT! Bitte nicht anfragen!</objektbeschreibung>
                <anzahl_zimmer>5</anzahl_zimmer>
                <etage>EG</etage>
                <ort>Wien</ort>
                <plz>1030</plz>
                <preis>0</preis>
                <gesamtmiete/>
                <wohnflaeche>269</wohnflaeche>
                <nutzflaeche>269</nutzflaeche>
                <anzahl_terrassen>2</anzahl_terrassen>
                <erstes_bild>https://files.justimmo.at/public/pic/medium/AdlOCzRy51.jpg</erstes_bild>
                <zweites_bild>https://files.justimmo.at/public/pic/medium/AdlOGYKVg_.jpg</zweites_bild>
                <projekt_id>46</projekt_id>
                <status>aktiv</status>
                <status_id>5</status_id>
                <erstellt_am>2016-04-12 14:47:46</erstellt_am>
                <aktualisiert_am>2016-04-19 11:18:59</aktualisiert_am>
            </immobilie>
            <immobilie>
                <id>634476</id>
                <objektnummer>894949</objektnummer>
                <objektkategorie>
                    <nutzungsart WOHNEN="1" GEWERBE="0" ANLAGE="0"/>
                    <vermarktungsart KAUF="0" MIETE_PACHT="1"/>
                    <objektart>
                        <wohnung/>
                    </objektart>
                    <user_defined_simplefield feldname="objektart_id">2</user_defined_simplefield>
                    <user_defined_simplefield feldname="objektart_name">Wohnung</user_defined_simplefield>
                    <user_defined_anyfield>
                        <ji_kategorie id="4743">Wienerwald</ji_kategorie>
                    </user_defined_anyfield>
                </objektkategorie>
                <titel>DEMOOBJEKT! Luxus Wienblick-Dachgeschosswohnung mit Wintergarten, offenen Kamin, Sauna und
                    Weinkeller
                </titel>
                <dreizeiler></dreizeiler>
                <naehe></naehe>
                <objektbeschreibung>DEMOOBJEKT! Bitte nicht anfragen!</objektbeschreibung>
                <anzahl_zimmer>5</anzahl_zimmer>
                <etage>EG</etage>
                <ort>Wien</ort>
                <plz>1030</plz>
                <preis>0</preis>
                <gesamtmiete/>
                <wohnflaeche>269</wohnflaeche>
                <nutzflaeche>269</nutzflaeche>
                <anzahl_terrassen>2</anzahl_terrassen>
                <erstes_bild>https://files.justimmo.at/public/pic/medium/AdlOCzRy51.jpg</erstes_bild>
                <zweites_bild>https://files.justimmo.at/public/pic/medium/AdlOGYKVg_.jpg</zweites_bild>
                <projekt_id>46</projekt_id>
                <status>aktiv</status>
                <status_id>5</status_id>
                <erstellt_am>2016-02-08 14:55:02</erstellt_am>
                <aktualisiert_am>2016-04-19 11:18:59</aktualisiert_am>
            </immobilie>
            <immobilie>
                <id>620582</id>
                <objektnummer>1000003</objektnummer>
                <objektkategorie>
                    <nutzungsart WOHNEN="1" GEWERBE="0" ANLAGE="0"/>
                    <vermarktungsart KAUF="0" MIETE_PACHT="1"/>
                    <objektart>
                        <wohnung/>
                    </objektart>
                    <user_defined_simplefield feldname="objektart_id">2</user_defined_simplefield>
                    <user_defined_simplefield feldname="objektart_name">Wohnung</user_defined_simplefield>
                    <user_defined_anyfield>
                        <ji_kategorie id="4743">Wienerwald</ji_kategorie>
                    </user_defined_anyfield>
                </objektkategorie>
                <titel>DEMOOBJEKT! Luxus Wienblick-Dachgeschosswohnung mit Wintergarten, offenen Kamin, Sauna und
                    Weinkeller
                </titel>
                <dreizeiler></dreizeiler>
                <naehe></naehe>
                <objektbeschreibung>DEMOOBJEKT! Bitte nicht anfragen!</objektbeschreibung>
                <anzahl_zimmer>5</anzahl_zimmer>
                <etage>EG</etage>
                <ort>Wien</ort>
                <plz>1030</plz>
                <preis>0</preis>
                <gesamtmiete/>
                <wohnflaeche>269</wohnflaeche>
                <nutzflaeche>269</nutzflaeche>
                <anzahl_terrassen>2</anzahl_terrassen>
                <erstes_bild>https://files.justimmo.at/public/pic/medium/AdlOCzRy51.jpg</erstes_bild>
                <zweites_bild>https://files.justimmo.at/public/pic/medium/AdlOGYKVg_.jpg</zweites_bild>
                <projekt_id>46</projekt_id>
                <status>aktiv</status>
                <status_id>5</status_id>
                <erstellt_am>2016-01-15 11:08:56</erstellt_am>
                <aktualisiert_am>2016-04-19 11:18:59</aktualisiert_am>
            </immobilie>
            <immobilie>
                <id>560649</id>
                <objektnummer>234235</objektnummer>
                <objektkategorie>
                    <nutzungsart WOHNEN="1" GEWERBE="0" ANLAGE="0"/>
                    <vermarktungsart KAUF="1" MIETE_PACHT="0"/>
                    <objektart>
                        <wohnung/>
                    </objektart>
                    <user_defined_simplefield feldname="objektart_id">2</user_defined_simplefield>
                    <user_defined_simplefield feldname="objektart_name">Wohnung</user_defined_simplefield>
                    <user_defined_simplefield feldname="sub_objektart_id">45</user_defined_simplefield>
                    <user_defined_simplefield feldname="sub_objektart_name">Wohnung</user_defined_simplefield>
                    <user_defined_anyfield>
                        <ji_kategorie id="4743">Wienerwald</ji_kategorie>
                    </user_defined_anyfield>
                </objektkategorie>
                <titel>DEMOOBJEKT! Elegantes Büro neben Bristol und Oper</titel>
                <dreizeiler></dreizeiler>
                <naehe></naehe>
                <objektbeschreibung>DEMOOBJEKT! Bitte nicht anfragen</objektbeschreibung>
                <etage>2. KG</etage>
                <hausnummer>2</hausnummer>
                <strasse>Seidlgasse</strasse>
                <ort>Wien</ort>
                <plz>1030</plz>
                <preis>214200</preis>
                <kaufpreis>214200</kaufpreis>
                <nutzflaeche>15</nutzflaeche>
                <grundflaeche>15</grundflaeche>
                <anzahl_balkons>2</anzahl_balkons>
                <balkons_flaeche>12</balkons_flaeche>
                <erstes_bild>https://files.justimmo.at/public/pic/medium/AdlOCzRy51.jpg</erstes_bild>
                <zweites_bild>https://files.justimmo.at/public/pic/medium/AdlOGYKVg_.jpg</zweites_bild>
                <projekt_id>46</projekt_id>
                <status>aktiv</status>
                <status_id>5</status_id>
                <erstellt_am>2015-11-11 16:20:35</erstellt_am>
                <aktualisiert_am>2016-04-19 11:18:59</aktualisiert_am>
            </immobilie>
            <immobilie>
                <id>560556</id>
                <objektnummer>33447</objektnummer>
                <objektkategorie>
                    <nutzungsart WOHNEN="1" GEWERBE="0" ANLAGE="0"/>
                    <vermarktungsart KAUF="1" MIETE_PACHT="0"/>
                    <objektart>
                        <wohnung/>
                    </objektart>
                    <user_defined_simplefield feldname="objektart_id">2</user_defined_simplefield>
                    <user_defined_simplefield feldname="objektart_name">Wohnung</user_defined_simplefield>
                    <user_defined_simplefield feldname="sub_objektart_id">45</user_defined_simplefield>
                    <user_defined_simplefield feldname="sub_objektart_name">Wohnung</user_defined_simplefield>
                    <user_defined_anyfield>
                        <ji_kategorie id="4743">Wienerwald</ji_kategorie>
                    </user_defined_anyfield>
                </objektkategorie>
                <titel>DEMOOBJEKT! Elegantes Büro neben Bristol und Oper</titel>
                <dreizeiler></dreizeiler>
                <naehe></naehe>
                <objektbeschreibung>DEMOOBJEKT! Bitte nicht anfragen!</objektbeschreibung>
                <etage>2. KG</etage>
                <hausnummer>2</hausnummer>
                <strasse>Seidlgasse</strasse>
                <ort>Wien</ort>
                <plz>1030</plz>
                <preis>200000</preis>
                <kaufpreis>200000</kaufpreis>
                <nutzflaeche>15</nutzflaeche>
                <grundflaeche>15</grundflaeche>
                <anzahl_balkons>2</anzahl_balkons>
                <balkons_flaeche>12</balkons_flaeche>
                <erstes_bild>https://files.justimmo.at/public/pic/medium/AdlOCzRy51.jpg</erstes_bild>
                <zweites_bild>https://files.justimmo.at/public/pic/medium/AdlOGYKVg_.jpg</zweites_bild>
                <projekt_id>46</projekt_id>
                <status>aktiv</status>
                <status_id>5</status_id>
                <erstellt_am>2015-11-11 12:32:29</erstellt_am>
                <aktualisiert_am>2016-04-19 11:18:59</aktualisiert_am>
            </immobilie>
            <immobilie>
                <id>66079</id>
                <objektnummer>18</objektnummer>
                <objektkategorie>
                    <nutzungsart WOHNEN="1" GEWERBE="0" ANLAGE="0"/>
                    <vermarktungsart KAUF="1" MIETE_PACHT="0"/>
                    <objektart>
                        <wohnung/>
                    </objektart>
                    <user_defined_simplefield feldname="objektart_id">2</user_defined_simplefield>
                    <user_defined_simplefield feldname="objektart_name">Wohnung</user_defined_simplefield>
                    <user_defined_simplefield feldname="sub_objektart_id">45</user_defined_simplefield>
                    <user_defined_simplefield feldname="sub_objektart_name">Wohnung</user_defined_simplefield>
                    <user_defined_anyfield>
                        <ji_kategorie id="4743">Wienerwald</ji_kategorie>
                    </user_defined_anyfield>
                </objektkategorie>
                <titel>DEMOOBJEKT! Elegantes Büro neben Bristol und Oper</titel>
                <dreizeiler></dreizeiler>
                <naehe></naehe>
                <objektbeschreibung>DEMOOBJEKT! Bitte nicht anfragen!</objektbeschreibung>
                <etage>2. KG</etage>
                <hausnummer>2</hausnummer>
                <strasse>Seidlgasse</strasse>
                <ort>Wien</ort>
                <plz>1030</plz>
                <preis>200000</preis>
                <kaufpreis>200000</kaufpreis>
                <nutzflaeche>15</nutzflaeche>
                <grundflaeche>15</grundflaeche>
                <anzahl_balkons>2</anzahl_balkons>
                <balkons_flaeche>12</balkons_flaeche>
                <erstes_bild>https://files.justimmo.at/public/pic/medium/AdlOCzRy51.jpg</erstes_bild>
                <zweites_bild>https://files.justimmo.at/public/pic/medium/AdlOGYKVg_.jpg</zweites_bild>
                <projekt_id>46</projekt_id>
                <status>aktiv</status>
                <status_id>5</status_id>
                <vermittelt_am>2014-03-02</vermittelt_am>
                <erstellt_am>2012-04-01 18:30:34</erstellt_am>
                <aktualisiert_am>2016-04-19 11:18:59</aktualisiert_am>
            </immobilie>
        </immobilien>
        <erstes_bild>https://files.justimmo.at/public/pic/medium/ACXayjSPLp.jpg</erstes_bild>
    </projekt>
    <!-- ...... -->
</justimmo>

Detail

Executes a search and returns basic information of matching real-estates.

query Parameters
id
required
integer
Example: id=10

The id of the project

culture
string
Default: "de"

Language for i18n fields

QueryParameterPictureSize (string) or Array of QueryParameterPictureSize (strings)

The picture size to be used for picture urls. Multiple sizes can be requested using array notation (e.g. picturesize[]=big&picturesize[]=small).

alleProjektObjekte
integer
Default: 0
Enum: 0 1

Include all real-estates belonging to the project, regardless of their object status.

objektIds
integer
Default: 0
Enum: 0 1

When set to 1, return only the IDs of the project real-estates (as <immobilien_ids>) instead of full <immobilien> entries.

Responses

Response samples

Content type
application/xml
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <projekt>
        <id>13382716</id>
        <nummer>281</nummer>
        <titel>Wohnbauprojekt Titel - Demo</titel>
        <lage>Das Projekt befindet direkt auf der Mariahilferstraße im Trendbezirk Neubau, angrenzend an das Museumsquartier MQ.</lage>
        <beschreibung>&lt;p&gt;DEMOOBJEKT! Bitte nicht anfragen!&lt;/p&gt;&#13;
                    &lt;p&gt;Breitenlee: Sonnige 3 Zimmer-Wohnung inmitten der Kornkammern Wiens&lt;br /&gt;&lt;br /&gt;Die
                    helle freundliche 3 Zimmer-Wohnung mit Bad (Wanne), eigenem WC, Schrankraum, Wohnküche mit Speiss,
                    französichen Fenstern in allen Räumen ist süd-westl. ausgerichtet. Im Mietpreis sind die Kosten für 1
                    Garagenplatz enthalten.&lt;br /&gt;5 Minuten mit dem Auto nach Breitenlee, 10 Min. zum großen Donaustädter
                    Einkaufspark und in 100 Metern mitten in den Feldern! Die Haltestelle des städt. Autobuses ist vor der Türe!&lt;/p&gt;</beschreibung>
        <dreizeiler></dreizeiler>
        <sonstige_angaben></sonstige_angaben>
        <freitext_1>&lt;p&gt;f1&lt;/p&gt;</freitext_1>
        <freitext_2>&lt;p&gt;f2&lt;/p&gt;</freitext_2>
        <freitext_3>&lt;p&gt;f3&lt;/p&gt;</freitext_3>
        <freitext_4>&lt;p&gt;f4&lt;/p&gt;</freitext_4>
        <geokoordinaten breitengrad="48.2027517" laengengrad="16.3468287"/>
        <land>AUT</land>
        <bundesland>Wien</bundesland>
        <ort>Wien</ort>
        <plz>1070</plz>
        <naehe>Mariahilferstrasse</naehe>
        <anzahl_etagen>42</anzahl_etagen>
        <anzahl_dachgeschosse>3</anzahl_dachgeschosse>
        <bauart_id>2</bauart_id>
        <baujahr>2018</baujahr>
        <laermpegel>absolute Ruhelage</laermpegel>
        <beziehbar>Mai 2018</beziehbar>
        <ea_gueltig_bis>2022-03-13</ea_gueltig_bis>
        <ea_hwb>9</ea_hwb>
        <ea_hwb_klasse>A++</ea_hwb_klasse>
        <ea_fgee>0.54</ea_fgee>
        <ea_fgee_klasse>A++</ea_fgee_klasse>
        <zustand>Erstbezug</zustand>
        <haus_zustand>Erstbezug</haus_zustand>
        <lagebewertung>gut</lagebewertung>
        <zustandsbewertung>sehr gut</zustandsbewertung>
        <nutzungsart wohnen="1" gewerbe="0" anlage="0"/>
        <in_bau></in_bau>
        <status semantic="Fertiggestellt">finished</status>
        <referenz></referenz>
        <fertigstellung>2018-05-01</fertigstellung>
        <verkaufsstart>2018-03-01</verkaufsstart>
        <objektkategorie>
            <nutzungsart WOHNEN="1" GEWERBE="0" ANLAGE="0"/>
        </objektkategorie>
        <erstellt_am>2024-03-19 09:49:58</erstellt_am>
        <residential_aggregation_data>
            <area_from>100</area_from>
            <area_to>100</area_to>
            <price_from>200000</price_from>
            <price_to>200000</price_to>
            <rooms_from>4</rooms_from>
            <rooms_to>4</rooms_to>
            <available>1</available>
        </residential_aggregation_data>
        <immobilien>
            <immobilie>
                <id>13703658</id>
                <objektnummer>1372/322</objektnummer>
                <objektkategorie>
                    <nutzungsart WOHNEN="1" GEWERBE="0" ANLAGE="0"/>
                    <vermarktungsart KAUF="1" MIETE_PACHT="0"/>
                    <objektart>
                        <wohnung/>
                    </objektart>
                    <user_defined_simplefield feldname="objektart_id">2</user_defined_simplefield>
                    <user_defined_simplefield feldname="objektart_name">Wohnung</user_defined_simplefield>
                    <user_defined_simplefield feldname="sub_objektart_id">117</user_defined_simplefield>
                    <user_defined_simplefield feldname="sub_objektart_name">Gartenwohnung</user_defined_simplefield>
                </objektkategorie>
                <titel>Wohnbauprojekt Titel - Demo</titel>
                <dreizeiler></dreizeiler>
                <naehe>Mariahilferstrasse</naehe>
                <objektbeschreibung>&lt;p&gt;DEMOOBJEKT! Bitte nicht anfragen!&lt;/p&gt;&#13;
                    &lt;p&gt;Breitenlee: Sonnige 3 Zimmer-Wohnung inmitten der Kornkammern Wiens&lt;br /&gt;&lt;br /&gt;Die
                    helle freundliche 3 Zimmer-Wohnung mit Bad (Wanne), eigenem WC, Schrankraum, Wohnküche mit Speiss,
                    französichen Fenstern in allen Räumen ist süd-westl. ausgerichtet. Im Mietpreis sind die Kosten für 1
                    Garagenplatz enthalten.&lt;br /&gt;5 Minuten mit dem Auto nach Breitenlee, 10 Min. zum großen Donaustädter
                    Einkaufspark und in 100 Metern mitten in den Feldern! Die Haltestelle des städt. Autobuses ist vor der Türe!&lt;/p&gt;</objektbeschreibung>
                <anzahl_zimmer>4</anzahl_zimmer>
                <etage>EG</etage>
                <tuernummer>1</tuernummer>
                <ort>Wien</ort>
                <plz>1070</plz>
                <preis>200000</preis>
                <kaufpreis>200000</kaufpreis>
                <wohnflaeche>100</wohnflaeche>
                <gartenflaeche>15</gartenflaeche>
                <erstes_bild>https://files.justimmo.at/public/pic/big/4A8YGNYQvOz7zCiOHGISKK.jpg</erstes_bild>
                <projekt_id>13382716</projekt_id>
                <status>aktiv</status>
                <status_id>5</status_id>
                <erstellt_am>2024-07-15 11:32:47</erstellt_am>
                <aktualisiert_am>2025-05-15 16:25:05</aktualisiert_am>
            </immobilie>
            <!-- ..... -->
        </immobilien>
        <dokumente>
            <dokument>
                <titel>0-sample.pdf</titel>
                <pfad>https://files.justimmo.at/public/doc/1Aa5mCQGRRSxHM78awMdYU.pdf</pfad>
                <format>pdf</format>
            </dokument>
        </dokumente>
        <bilder>
            <bild>
                <titel>Arbeitszimmer</titel>
                <pfad>https://files.justimmo.at/public/pic/big/1q80gucia609J4goaai4qK.jpg</pfad>
            </bild>
            <bild>
                <titel>Geräumiges Schlafzimmer</titel>
                <pfad>https://files.justimmo.at/public/pic/big/42SGAzqcPTkVi8NTHHchRz.jpg</pfad>
            </bild>
            <bild>
                <titel>Badezimmer.jpg</titel>
                <pfad>https://files.justimmo.at/public/pic/big/slg3yhylN9bhfGe81l0A4.jpg</pfad>
            </bild>
            <!-- ..... -->
        </bilder>
        <plaene>
            <bild>
                <titel>fs_2016_022_archi_2_002_ges.jpg</titel>
                <pfad>https://files.justimmo.at/public/pic/big/1RRq6a1u2iw4jx4wkyo04n.jpg</pfad>
            </bild>
            <bild>
                <titel>Bgx9u9S8ko.jpg</titel>
                <pfad>https://files.justimmo.at/public/pic/big/4UUXizhObQKvtoSYY8bnNN.jpg</pfad>
            </bild>
        </plaene>
        <bilder360/>
        <videos/>
        <links>
            <link>
                <titel>Link</titel>
                <pfad>https://www.justimmo.at</pfad>
                <gruppe>links</gruppe>
            </link>
        </links>
        <kontaktperson>
            <id>18514415</id>
            <email_direkt>justin.immo@example.com</email_direkt>
            <tel_zentrale></tel_zentrale>
            <tel_fax></tel_fax>
            <tel_handy></tel_handy>
            <name>Immo</name>
            <vorname>Justin</vorname>
            <anrede>Herr</anrede>
            <firma>Justimmo</firma>
            <position>Makler</position>
            <strasse>Mariahilfer Straße 10</strasse>
            <plz>1070</plz>
            <ort>Wien</ort>
            <land iso_land="AUT"/>
            <url>example.com</url>
            <personennummer/>
        </kontaktperson>
    </projekt>
</justimmo>

Short List

Returns a list of projekt ids and title of all active projects with "Show on Homepage" flag.
The query-result>count element contains information of total hits of the search regardless of given limit parameter.

Responses

Response samples

Content type
application/xml
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <query-result>
        <count>3</count>
    </query-result>
    <projekt>
        <id>46</id>
        <titel>Demoprojekt in Zentrumsnähe</titel>
    </projekt>
    <projekt>
        <id>51</id>
        <titel>Neubau mitten im dritten</titel>
    </projekt>
    <projekt>
        <id>2065</id>
        <titel></titel>
    </projekt>
</justimmo>

Ids

Returns ids of matching projects as JSON without limit and offset limitations. For parameters see project list call.

query Parameters
orderby
string
Enum: "created_at" "updated_at"

Order results by specific field. Applied to project, not to real-estates of project.

ordertype
string
Default: "asc"
Enum: "asc" "desc"

Order direction. Matched case-insensitively, so DESC and desc are equivalent.

alle
integer
Default: 0
Enum: 0 1

Show all projects regardless if active real-estates are present in project. When set to 1, realty filtering is skipped entirely and all realty filters are ignored.

alleProjektObjekte
integer
Default: 0
Enum: 0 1

Include all real-estates belonging to the project, regardless of their object status.

filter[projekt_objektnummer]
string

Project The realty number of the project.

string or Array of strings

Project The project state. Must be one of planning, building, finished. Multiple values are supported by using an array notation.

filter[referenz]
integer
Enum: 0 1

Project Set value to 1 to search only for reference projects

string or Array of strings

Project The name of the category assigned to the project. Multiple values are supported by using an array notation and are combined with OR

filter[fertigstellung_von]
string <date>

Project Completion date from.

filter[fertigstellung_bis]
string <date>

Project Completion date to.

filter[verkaufsstart_von]
string <date>

Project Sale start from date.

filter[verkaufsstart_bis]
string <date>

Project Sale start to date.

filter[miete]
integer
Enum: 0 1

Realty Set value to 1 to search for real-estates available for rent.

filter[kauf]
integer
Enum: 0 1

Realty Set value to 1 to search for real-estates available for purchase.

filter[objektnummer]
string

Realty The realty number.

filter[objektnummer_von]
string

Realty The min realty number.

filter[objektnummer_bis]
string

Realty The max realty number.

integer or Array of integers

Realty The realty status. Multiple values are supported by using an array notation.
see Reference: Realty Status

filter[owner_id]
integer

Realty Id of the employee responsible for the realty.
see Call: Team List

integer or Array of integers

Realty The main realty type. Multiple values are supported by using an array notation.
see Reference: Realty Types

integer or Array of integers

Realty The sub realty type. Multiple values are supported by using an array notation.
see Reference: Realty Types

integer or Array of integers

Realty The id of the federal state. Multiple values are supported by using an array notation.
see Call: Federal States

string or Array of strings

Realty The zip code. Multiple values are supported by using an array notation

filter[plz_von]
string

Realty The min zip code. Does not work for non-numerical zip codes.

filter[plz_bis]
string

Realty The max zip code. Does not work for non-numerical zip codes.

filter[preis_von]
number

Realty The min price. Depending on type it is the rent or purchase price.

filter[preis_bis]
number

Realty The max price. Depending on type it is the rent or purchase price.

filter[flaeche_von]
number

Realty The min area in square meters.

filter[flaeche_bis]
number

Realty The max area in square meters.

filter[wohnflaeche_von]
number

Realty The min living area in square meters.

filter[wohnflaeche_bis]
number

Realty The max living area in square meters.

filter[nutzflaeche_von]
number

Realty The min floor area in square meters.

filter[nutzflaeche_bis]
number

Realty The max floor area in square meters.

filter[grundflaeche_von]
number

Realty The min surface area in square meters.

filter[grundflaeche_bis]
number

Realty The max surface area in square meters.

filter[zimmer_von]
number

Realty The min room count.

filter[zimmer_bis]
number

Realty The max room count.

filter[stichwort]
string

Realty Keyword. Must be present in realty title, ZIP, city, street, object number or internal description.

string or Array of strings

Realty The name of the category assigned to real-estates. Multiple values are supported by using an array notation and are combined with OR

Responses

Response samples

Content type
application/json
[
  • "123",
  • "125",
  • "159"
]

Basic Data

Realty Categories

Returns a list of realty categories

query Parameters
alle
integer
Default: 0
Enum: 0 1

Use 1 if you want to return all categories. Otherwise only categories with active real-estates will be returned.

Responses

Response samples

Content type
application/xml
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
  <objektkategorie>
    <id>3876</id>
    <name>Topobjekte</name>
    <sortablerank>1</sortablerank>
  </objektkategorie>
</justimmo>

Realty Types

Returns the list of the realty types.

query Parameters
alle
integer
Default: 0
Enum: 0 1

Use 1 if you want to return all realty types. Otherwise only realty types with active real-estates will be returned.

Responses

Response samples

Content type
application/xml
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
  <objektart>
    <id>5</id>
    <name>Büro / Praxis</name>
    <key>buero_praxen</key>
    <attributename>buero_typ</attributename>
  </objektart>
  <objektart>
    <id>3</id>
    <name>Haus</name>
    <key>haus</key>
    <attributename>haustyp</attributename>
  </objektart>
  <objektart>
    <id>2</id>
    <name>Wohnung</name>
    <key>wohnung</key>
    <attributename>wohnungtyp</attributename>
  </objektart>
</justimmo>

Countries

Returns the list of the countries.

query Parameters
alle
integer
Default: 0
Enum: 0 1

Use 1 if you want to return all countries. Otherwise only countries with active real-estates will be returned.

Responses

Response samples

Content type
application/xml
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
  <land>
    <id>17</id>
    <name>Österreich</name>
    <iso2>AT</iso2>
    <iso3>AUT</iso3>
  </land>
  <land>
    <id>216</id>
    <name>Thailand</name>
    <iso2>TH</iso2>
    <iso3>THA</iso3>
  </land>
</justimmo>

Federal States

Returns the list of the federal states.

query Parameters
alle
integer
Default: 0
Enum: 0 1

Use 1 if you want to return all federal states. Otherwise only federal states with active real-estates will be returned.

integer or string

Id or ISO 2 code of the country.

Responses

Response samples

Content type
application/xml
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <bundesland>
        <id>126</id>
        <name>Burgenland</name>
        <landid>17</landid>
        <fipscode>01</fipscode>
        <iso31662code>AT-1</iso31662code>
    </bundesland>
    <bundesland>
        <id>127</id>
        <name>Kärnten</name>
        <landid>17</landid>
        <fipscode>02</fipscode>
        <iso31662code>AT-2</iso31662code>
    </bundesland>
    <!-- .... -->
</justimmo>

Regions

Returns the list of the regions.

query Parameters
alle
integer
Default: 0
Enum: 0 1

Use 1 if you want to return all regions. Otherwise only regions with active real-estates will be returned.

integer or string

Id or ISO 2 code of the country.

integer or string

Id or name of the federal state (name matched as a prefix).

Responses

Response samples

Content type
application/xml
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
  <region>
    <id>39</id>
    <name>1., Innere Stadt</name>
  </region>
  <region>
    <id>58</id>
    <name>2., Leopoldstadt</name>
  </region>
</justimmo>

Political Districts

Returns the list of the political districts. Currently only Austria (land=AT) is supported.

query Parameters
alle
integer
Default: 0
Enum: 0 1

Use 1 if you want to return all political districts. Otherwise only districts with active real-estates will be returned.

land
string
Default: "AT"
Value: "AT"

ISO 2 code of the country. Currently only "AT" (Austria) is supported; any other value returns 422.

bundesland
integer

Id of the federal state.

Responses

Response samples

Content type
application/xml
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
  <politischer_bezirk>
    <id>1</id>
    <name>Eisenstadt(Stadt)</name>
  </politischer_bezirk>
  <politischer_bezirk>
    <id>2</id>
    <name>Rust(Stadt)</name>
  </politischer_bezirk>
</justimmo>

Zip codes and cities

Returns the list of the zip codes with their city name

query Parameters
alle
integer
Default: 0
Enum: 0 1

Use 1 if you want to return all zip codes. Otherwise only zip codes with active realties will be returned.

integer or string

Id or ISO 2 code of the country.

integer or string

Id or name of the federal state (name matched as a prefix).

Responses

Response samples

Content type
application/xml
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <postleitzahl>
        <id>567</id>
        <landid>17</landid>
        <regionid>40</regionid>
        <plz>6020</plz>
        <ort>Innsbruck</ort>
        <bundeslandid>132</bundeslandid>
    </postleitzahl>
    <postleitzahl>
        <id>462</id>
        <landid>17</landid>
        <regionid>41</regionid>
        <plz>6060</plz>
        <ort>Hall in Tirol</ort>
        <bundeslandid>132</bundeslandid>
    </postleitzahl>
    <postleitzahl>
        <id>465</id>
        <landid>17</landid>
        <regionid>41</regionid>
        <plz>6063</plz>
        <ort>Rum</ort>
        <bundeslandid>132</bundeslandid>
    </postleitzahl>
</justimmo>

Realty Conditions

List of the available realty conditions (Zustand) of Justimmo

ID NAME OpenImmo Key
1 Erstbezug ERSTBEZUG
2 renovierungsbedürftig TEIL_VOLLRENOVIERUNGSBED
3 neuwertig NEUWERTIG
4 vollsaniert VOLL_SANIERT
5 vollrenoviert TEIL_VOLLRENOVIERT
6 baufällig BAUFAELLIG
7 nach Vereinbarung NACH_VEREINBARUNG
8 modernisiert MODERNISIERT
9 gepflegt GEPFLEGT
10 Rohbau ROHBAU
11 entkernt ENTKERNT
12 Abrissobjekt ABRISSOBJEKT
13 projektiert PROJEKTIERT
14 teilsaniert TEIL_SANIERT
15 teilrenoviert TEIL_VOLLRENOVIERT
16 sanierungsbedürftig SANIERUNGSBEDUERFTIG

Realty Features

Groups

List of all available realty feature groups (Ausstattungskategorien) of Justimmo ooo

ID Name ID Name ID Name
1 Boden 11 Stellplatzart 22 Ausbaustufe
2 Befeuerung 12 Extras 25 Gebäudezertifikate
3 Heizungsart 13 Energietyp
4 Küche 14 Belüftung
5 Fahrstuhl 15 Räume
6 Balkon 16 Elektrik
7 Gastronomie 17 Fenster
8 Bad 19 WCs
9 Serviceleistungen 20 Dachform
10 Fernsehen 21 Bauweise

Features

List of all available realty features (Ausstattung) of Justimmo

ID Group Name XML Element XML Attribute UDAF XML Element UDAF Attribute
1 Boden Dielen boden DIELEN
2 Boden Doppelboden boden DOPPELBODEN
3 Boden Estrich boden ESTRICH
4 Boden Fliesen boden FLIESEN
5 Boden Kunststoffboden boden KUNSTSTOFF
6 Boden Laminat boden LAMINAT
7 Boden Parkett boden PARKETT
8 Boden Steinboden boden STEIN
9 Boden Teppichboden boden TEPPICH
10 Befeuerung Alternativ befeuerung ALTERNATIV
11 Befeuerung Elektro befeuerung ELEKTRO
12 Befeuerung Erdwärme befeuerung ERDWAERME
13 Befeuerung Gas befeuerung GAS
14 Befeuerung Öl befeuerung OEL
15 Befeuerung Solarenergie befeuerung SOLAR
16 Heizungsart Etagenheizung heizungsart ETAGE
17 Heizungsart Fernwärme heizungsart FERN
18 Heizungsart Fußbodenheizung heizungsart FUSSBODEN
19 Heizungsart Heizofen heizungsart OFEN
20 Heizungsart Kamin kamin -
21 Heizungsart Zentralheizung heizungsart ZENTRAL
22 Küche Einbauküche kueche EBK
23 Küche Wohnküche / offene Küche kueche OFFEN
24 Fahrstuhl Lastenaufzug fahrstuhl LASTEN
25 Fahrstuhl Personenaufzug fahrstuhl PERSONEN
26 Balkon Nordbalkon ausricht_balkon_terrasse NORD
27 Balkon Ostbalkon ausricht_balkon_terrasse OST
28 Balkon Südbalkon ausricht_balkon_terrasse SUED
29 Balkon Westbalkon ausricht_balkon_terrasse WEST
30 Gastronomie Angeschl. Bar angeschl_gastronomie BAR
31 Gastronomie Angeschl. Hotelrestaurant angeschl_gastronomie HOTELRESTAURANT
32 Gastronomie Brauereibindung brauereibindung -
33 Bad Bad mit Fenster bad FENSTER
34 Bad Badewanne bad WANNE
35 Bad Dusche bad DUSCHE
36 Serviceleistungen Betreutes Wohnen serviceleistungen BETREUTES_WOHNEN
37 Serviceleistungen Catering serviceleistungen CATERING
38 Serviceleistungen Einkaufsservice serviceleistungen EINKAUF
39 Serviceleistungen Reinigungsservice serviceleistungen REINIGUNG
40 Serviceleistungen Wachdienst serviceleistungen WACHDIENST
41 Elektrik DV-Verkabelung dv_verkabelung -
42 Fernsehen Kabel/Satelliten-TV kabel_sat_tv -
43 Stellplatzart Carport stellplatzart CARPORT
44 Stellplatzart Garage stellplatzart GARAGE
45 Stellplatzart Parkhaus stellplatzart PARKHAUS
46 Stellplatzart Parkplatz stellplatzart FREIPLATZ
47 Stellplatzart Parkplatz (Duplex Garage) stellplatzart DUPLEX
48 Stellplatzart Tiefgarage stellplatzart TIEFGARAGE
49 Extras Alarmanlage sicherheitstechnik ALARMANLAGE
50 Gastronomie Gastterrasse gastterrasse -
51 Extras Hebebühne hebebuehne -
52 Gastronomie Kantine / Cafeteria kantine_cafeteria -
53 Extras Kran kran -
54 Extras Polizeiruf sicherheitstechnik POLIZEIRUF
55 Extras Rampe rampe -
56 Extras Sauna sauna -
57 Extras Sicherheitskamera sicherheitstechnik KAMERA
58 Extras Sporteinrichtungen sporteinrichtungen -
59 Extras Swimmingpool swimmingpool -
60 Küche Teeküche teekueche -
61 Extras Wasch/Trockenraum wasch_trockenraum -
78 Belüftung Klimaanlage klimatisiert -
93 Befeuerung Luftwärmepumpe befeuerung LUFTWP
94 Befeuerung Pellets befeuerung PELLET
96 Boden Fertigparkett boden FERTIGPARKETT
97 Boden Linoleum boden LINOLEUM
98 Boden Marmor boden MARMOR
99 Boden Terrakotta boden TERRAKOTTA
100 Befeuerung Wasser-Elektro befeuerung WASSER-ELEKTRO
101 Befeuerung Blockheizkraftwerk befeuerung BLOCK
102 Befeuerung Fernwärme befeuerung FERN
103 Balkon Nordostbalkon ausricht_balkon_terrasse NORDOST
104 Balkon Nordwestbalkon ausricht_balkon_terrasse NORDWEST
105 Balkon Südostbalkon ausricht_balkon_terrasse SUEDOST
106 Balkon Südwestbalkon ausricht_balkon_terrasse SUEDWEST
107 Bad Bidet bad BIDET
108 WCs Pissoir bad PISSOIR
109 Küche Pantryküche (Miniküche oder Schrankküche) kueche PANTRY
110 Räume WG geeignet wg_geeignet -
111 Extras Wintergarten wintergarten -
112 Extras Fahrradraum fahrradraum -
113 Extras Abstellraum abstellraum -
114 Extras Seniorengerecht seniorengerecht -
115 Räume Räume veränderbar raeume_veraenderbar -
116 Boden Granit boden GRANIT
117 Befeuerung Flüssiggas befeuerung FLUESSIGGAS
118 Befeuerung Holz befeuerung HOLZ
119 Befeuerung Kohle befeuerung KOHLE
120 Extras Gartennutzung gartennutzung -
121 Extras Rollstuhlgerecht rollstuhlgerecht -
122 Fernsehen DVB-T dvbt -
123 Extras Wellnessbereich wellnessbereich -
124 Energietyp KfW-Effizienzhaus 40 energietyp KFW40
125 Energietyp KfW-Effizienzhaus 55 energietyp KFW55
126 Energietyp KfW-Effizienzhaus 60 energietyp KFW60
127 Energietyp KfW-Effizienzhaus 70 energietyp KFW70
128 Energietyp Minergie zertifiziert energietyp MINERGIE_ZERTIFIZIERT
129 Energietyp Minergie Bauweise energietyp MINERGIEBAUWEISE
130 Energietyp Neubaustandard energietyp NEUBAUSTANDARD
131 Energietyp Niedrigenergiehaus energietyp NIEDRIGENERGIE
132 Energietyp Passivhaus energietyp PASSIVHAUS
147 Elektrik Kabelkanäle entlang Parapet kabelkanaele -
148 Elektrik Kabelkanäle Unterputz kabelkanaele -
149 Elektrik Kabelkanäle Oberputz kabelkanaele -
166 Fenster Rollladen rolladen -
167 WCs Gäste-WC gaestewc -
168 Dachform Flachdach dachform FLACHDACH
169 Dachform Krüppelwalmdach dachform KRUEPPELWALMDACH
170 Dachform Mansarddach dachform MANSARDDACH
171 Dachform Pultdach dachform PULTDACH
172 Dachform Pyramidendach dachform PYRAMIDENDACH
173 Dachform Satteldach dachform SATTELDACH
174 Dachform Walmdach dachform WALMDACH
175 Bauweise Fertigteil bauweise FERTIGTEILE
176 Bauweise Holz bauweise HOLZ
177 Bauweise Massiv bauweise MASSIV
178 Ausbaustufe Ausbauhaus ausbaustufe AUSBAUHAUS
179 Ausbaustufe Bausatzhaus ausbaustufe BAUSATZHAUS
180 Ausbaustufe Schlüsselfertig mit Bodenplatte ausbaustufe SCHLUESSELFERTIGMITBODENPLATTE
181 Ausbaustufe Schlüsselfertig mit Keller ausbaustufe SCHLUESSELFERTIGMITKELLER
182 Ausbaustufe Schlüsselfertig ohne Bodenplatte ausbaustufe SCHLUESSELFERTIGOHNEBODENPLATTE
1021 Gebäudezertifikate klimaaktiv - - gebaeudezertifikate KLIMAAKTIV
1024 Gebäudezertifikate ÖGNB - - gebaeudezertifikate OGNB
1027 Gebäudezertifikate ÖGNI - - gebaeudezertifikate OGNI
1030 Gebäudezertifikate IBO ÖKOPASS - - gebaeudezertifikate IBO_OKOPASS
1033 Gebäudezertifikate EU greenbuilding - - gebaeudezertifikate EU_GREENBUILDING
1036 Gebäudezertifikate LEED - - gebaeudezertifikate LEED
1039 Gebäudezertifikate BREEAM - - gebaeudezertifikate BREEAM
1042 Heizungsart Nahwärme - - heizungsart NAHWAERME
1045 Heizungsart Infrarotheizung - - heizungsart INFRAROTHEIZUNG
1048 Elektrik E-Ladestation für KFZ - - elektrik E_LADESTATION_FUER_KFZ
1051 Elektrik Photovoltaik Anlage - - elektrik PHOTOVOLTAIK_ANLAGE
1054 Elektrik Smart Home System - - elektrik SMART_HOME_SYSTEM
1057 Serviceleistungen Hausverwaltung Smartphone App - - serviceleistungen HAUSVERWALTUNG_SMARTPHONE_APP
1060 Extras Paketempfangsbox - - extras PAKETEMPFANGSBOX

Boden

ID Group Name XML Element XML Attribute
1 Boden Dielen boden DIELEN
2 Boden Doppelboden boden DOPPELBODEN
3 Boden Estrich boden ESTRICH
4 Boden Fliesen boden FLIESEN
5 Boden Kunststoffboden boden KUNSTSTOFF
6 Boden Laminat boden LAMINAT
7 Boden Parkett boden PARKETT
8 Boden Steinboden boden STEIN
9 Boden Teppichboden boden TEPPICH
96 Boden Fertigparkett boden FERTIGPARKETT
97 Boden Linoleum boden LINOLEUM
98 Boden Marmor boden MARMOR
99 Boden Terrakotta boden TERRAKOTTA
116 Boden Granit boden GRANIT

Befeuerung

ID Group Name XML Element XML Attribute
10 Befeuerung Alternativ befeuerung ALTERNATIV
11 Befeuerung Elektro befeuerung ELEKTRO
12 Befeuerung Erdwärme befeuerung ERDWAERME
13 Befeuerung Gas befeuerung GAS
14 Befeuerung Öl befeuerung OEL
15 Befeuerung Solarenergie befeuerung SOLAR
93 Befeuerung Luftwärmepumpe befeuerung LUFTWP
94 Befeuerung Pellets befeuerung PELLET
100 Befeuerung Wasser-Elektro befeuerung WASSER-ELEKTRO
101 Befeuerung Blockheizkraftwerk befeuerung BLOCK
102 Befeuerung Fernwärme befeuerung FERN
117 Befeuerung Flüssiggas befeuerung FLUESSIGGAS
118 Befeuerung Holz befeuerung HOLZ
119 Befeuerung Kohle befeuerung KOHLE

Heizungsart

ID Group Name XML Element XML Attribute UDAF XML Element UDAF Attribute
16 Heizungsart Etagenheizung heizungsart ETAGE
17 Heizungsart Fernwärme heizungsart FERN
18 Heizungsart Fußbodenheizung heizungsart FUSSBODEN
19 Heizungsart Heizofen heizungsart OFEN
20 Heizungsart Kamin kamin -
21 Heizungsart Zentralheizung heizungsart ZENTRAL
1042 Heizungsart Nahwärme - - heizungsart NAHWAERME
1045 Heizungsart Infrarotheizung - - heizungsart INFRAROTHEIZUNG

Küche

ID Group Name XML Element XML Attribute
22 Küche Einbauküche kueche EBK
23 Küche Wohnküche / offene Küche kueche OFFEN
60 Küche Teeküche teekueche -
109 Küche Pantryküche (Miniküche oder Schrankküche) kueche PANTRY

Fahrstuhl

ID Group Name XML Element XML Attribute
24 Fahrstuhl Lastenaufzug fahrstuhl LASTEN
25 Fahrstuhl Personenaufzug fahrstuhl PERSONEN

Balkon

ID Group Name XML Element XML Attribute
26 Balkon Nordbalkon ausricht_balkon_terrasse NORD
27 Balkon Ostbalkon ausricht_balkon_terrasse OST
28 Balkon Südbalkon ausricht_balkon_terrasse SUED
29 Balkon Westbalkon ausricht_balkon_terrasse WEST
103 Balkon Nordostbalkon ausricht_balkon_terrasse NORDOST
104 Balkon Nordwestbalkon ausricht_balkon_terrasse NORDWEST
105 Balkon Südostbalkon ausricht_balkon_terrasse SUEDOST
106 Balkon Südwestbalkon ausricht_balkon_terrasse SUEDWEST

Gastronomie

ID Group Name XML Element XML Attribute
30 Gastronomie Angeschl. Bar angeschl_gastronomie BAR
31 Gastronomie Angeschl. Hotelrestaurant angeschl_gastronomie HOTELRESTAURANT
32 Gastronomie Brauereibindung brauereibindung -
50 Gastronomie Gastterrasse gastterrasse -
52 Gastronomie Kantine / Cafeteria kantine_cafeteria -

Bad

ID Group Name XML Element XML Attribute
33 Bad Bad mit Fenster bad FENSTER
34 Bad Badewanne bad WANNE
35 Bad Dusche bad DUSCHE
107 Bad Bidet bad BIDET

Serviceleistungen

ID Group Name XML Element XML Attribute UDAF XML Element UDAF Attribute
36 Serviceleistungen Betreutes Wohnen serviceleistungen BETREUTES_WOHNEN
37 Serviceleistungen Catering serviceleistungen CATERING
38 Serviceleistungen Einkaufsservice serviceleistungen EINKAUF
39 Serviceleistungen Reinigungsservice serviceleistungen REINIGUNG
40 Serviceleistungen Wachdienst serviceleistungen WACHDIENST
1057 Serviceleistungen Hausverwaltung Smartphone App - - serviceleistungen HAUSVERWALTUNG_SMARTPHONE_APP

Fernsehen

ID Group Name XML Element XML Attribute
41 Fernsehen DV-Verkabelung dv_verkabelung -
42 Fernsehen Kabel/Satelliten-TV kabel_sat_tv -
122 Fernsehen DVB-T dvbt -

Stellplatzart

ID Group Name XML Element XML Attribute
43 Stellplatzart Carport stellplatzart CARPORT
44 Stellplatzart Garage stellplatzart GARAGE
45 Stellplatzart Parkhaus stellplatzart PARKHAUS
46 Stellplatzart Parkplatz stellplatzart FREIPLATZ
47 Stellplatzart Parkplatz (Duplex Garage) stellplatzart DUPLEX
48 Stellplatzart Tiefgarage stellplatzart TIEFGARAGE

Extras

ID Group Name XML Element XML Attribute UDAF XML Element UDAF Attribute
49 Extras Alarmanlage sicherheitstechnik ALARMANLAGE
51 Extras Hebebühne hebebuehne -
53 Extras Kran kran -
54 Extras Polizeiruf sicherheitstechnik POLIZEIRUF
55 Extras Rampe rampe -
56 Extras Sauna sauna -
57 Extras Sicherheitskamera sicherheitstechnik KAMERA
58 Extras Sporteinrichtungen sporteinrichtungen -
59 Extras Swimmingpool swimmingpool -
61 Extras Wasch/Trockenraum wasch_trockenraum -
111 Extras Wintergarten wintergarten -
112 Extras Fahrradraum fahrradraum -
113 Extras Abstellraum abstellraum -
114 Extras Seniorengerecht seniorengerecht -
120 Extras Gartennutzung gartennutzung -
121 Extras Rollstuhlgerecht rollstuhlgerecht -
123 Extras Wellnessbereich wellnessbereich -
164 Extras UMTS-Empfang umts_empfang -
165 Extras Bibliothek bibliothek -
1060 Extras Paketempfangsbox - - extras PAKETEMPFANGSBOX

Energietyp

ID Group Name XML Element XML Attribute
124 Energietyp KfW-Effizienzhaus 40 energietyp KFW40
125 Energietyp KfW-Effizienzhaus 55 energietyp KFW55
126 Energietyp KfW-Effizienzhaus 60 energietyp KFW60
127 Energietyp KfW-Effizienzhaus 70 energietyp KFW70
128 Energietyp Minergie zertifiziert energietyp MINERGIE_ZERTIFIZIERT
129 Energietyp Minergie Bauweise energietyp MINERGIEBAUWEISE
130 Energietyp Neubaustandard energietyp NEUBAUSTANDARD
131 Energietyp Niedrigenergiehaus energietyp NIEDRIGENERGIE
132 Energietyp Passivhaus energietyp PASSIVHAUS

Belüftung

ID Group Name XML Element XML Attribute
78 Belüftung Klimaanlage klimatisiert -

Räume

ID Group Name XML Element XML Attribute
110 Räume WG geeignet wg_geeignet -
115 Räume Räume veränderbar raeume_veraenderbar -

Elektrik

ID Group Name XML Element XML Attribute UDAF XML Element UDAF Attribute
41 Elektrik DV-Verkabelung dv_verkabelung -
147 Elektrik Kabelkanäle entlang Parapet kabelkanaele -
148 Elektrik Kabelkanäle Unterputz kabelkanaele -
149 Elektrik Kabelkanäle Oberputz kabelkanaele -
1048 Elektrik E-Ladestation für KFZ - - elektrik E_LADESTATION_FUER_KFZ
1051 Elektrik Photovoltaik Anlage - - elektrik PHOTOVOLTAIK_ANLAGE
1054 Elektrik Smart Home System - - elektrik SMART_HOME_SYSTEM

Fenster

ID Group Name XML Element XML Attribute
166 Fenster Rollladen rolladen -

WCs

ID Group Name XML Element XML Attribute
108 WCs Pissoir bad PISSOIR
167 WCs Gäste-WC gaestewc -

Dachform

ID Group Name XML Element XML Attribute
168 Dachform Flachdach dachform FLACHDACH
169 Dachform Krüppelwalmdach dachform KRUEPPELWALMDACH
170 Dachform Mansarddach dachform MANSARDDACH
171 Dachform Pultdach dachform PULTDACH
172 Dachform Pyramidendach dachform PYRAMIDENDACH
173 Dachform Satteldach dachform SATTELDACH
174 Dachform Walmdach dachform WALMDACH

Bauweise

ID Group Name XML Element XML Attribute
175 Bauweise Fertigteil bauweise FERTIGTEILE
176 Bauweise Holz bauweise HOLZ
177 Bauweise Massiv bauweise MASSIV

Ausbaustufe

ID Group Name XML Element XML Attribute
178 Ausbaustufe Ausbauhaus ausbaustufe AUSBAUHAUS
179 Ausbaustufe Bausatzhaus ausbaustufe BAUSATZHAUS
180 Ausbaustufe Schlüsselfertig mit Bodenplatte ausbaustufe SCHLUESSELFERTIGMITBODENPLATTE
181 Ausbaustufe Schlüsselfertig mit Keller ausbaustufe SCHLUESSELFERTIGMITKELLER
182 Ausbaustufe Schlüsselfertig ohne Bodenplatte ausbaustufe SCHLUESSELFERTIGOHNEBODENPLATTE

Gebäudezertifikate

ID Group Name XML Element XML Attribute UDAF XML Element UDAF Attribute
1021 Gebäudezertifikate klimaaktiv - - gebaeudezertifikate KLIMAAKTIV
1024 Gebäudezertifikate ÖGNB - - gebaeudezertifikate OGNB
1027 Gebäudezertifikate ÖGNI - - gebaeudezertifikate OGNI
1030 Gebäudezertifikate IBO ÖKOPASS - - gebaeudezertifikate IBO_OKOPASS
1033 Gebäudezertifikate EU greenbuilding - - gebaeudezertifikate EU_GREENBUILDING
1036 Gebäudezertifikate LEED - - gebaeudezertifikate LEED
1039 Gebäudezertifikate BREEAM - - gebaeudezertifikate BREEAM

Realty Ownership Types

ID Name
1 Alleineigentum
2 Miteigentum
3 Miteigentum m. Benutzungsregelung
4 Wohnungseigentum
5 Wohnungseigentum geplant
6 Wohnungseigentum in Entstehung
7 Baurecht
8 Superädifikat
9 Schlichtes Miteigentum
10 Schlichtes Miteigentum m. Benutzungsregelung

Realty Status

List of all available main realty status (Objektstatus) of Justimmo

ID Name
4 Entwurf
5 aktiv
6 inaktiv
7 reserviert
8 vermittelt
9 storniert
10 fremdvermittelt
11 Vertragserrichtung

When requesting realties that are "vermittelt", only those marked as "Referenzobjekt" will be returned. This also requires the setting "Referenzobjekte exportieren" to be enabled for the API Export Feed.

Realty Style of Buildings

List of all available style of buildings (Bauarten) of Justimmo

ID Name
1 Altbau
2 Neubau

Realty System Types

A realty system type is an internal type for Justimmo realties which defines further functionality and usage of the realty.

List of all available realty system types of Justimmo.

Name Usage
simple Simple realty
commercial Commercial realty which can have multiple subrealties (eg a big office building which can be rented to multiple companies)
area Subrealty of a commercial realty
residential Residential realty which can have multiple subrealties
residential_subunit Subrealty of a residential realty

Realty Types

Main Types

List of all available main realty types (Objektarten) of Justimmo. If "OpenImmo Key" is empty, the Main Type is not part of the OpenImmo standard.

ID Name OpenImmo Key
1 Zimmer zimmer
2 Wohnung wohnung
3 Haus haus
4 Grundstück grundstueck
5 Büro / Praxis buero_praxen
6 Einzelhandel einzelhandel
7 Gastgewerbe gastgewerbe
8 Industrie / Gewerbe hallen_lager_prod
9 Land und Forstwirtschaft land_und_forstwirtschaft
10 Sonstige / Sonderobjekte sonstige
11 Freizeitimmobilie gewerblich freizeitimmobilie_gewerblich
12 Zinshaus / Renditeobjekt zinshaus_renditeobjekt
13 Parken parken

Sub Types

List of all available sub realty types (Unterobjektarten) of Justimmo. If "OpenImmo Key" is empty, the Sub Type is not part of the OpenImmo standard.

ID Name OpenImmo Key
1 Baugrund Eigenheim WOHNEN
2 Großvolumiger Wohnbau
3 Wohn- und Geschäftsbaugrund
4 Betriebsbaugrund GEWERBE
5 Seegrund SEELIEGENSCHAFT
6 Sonstiger Grund
7 Industriebaugrund INDUSTRIE
8 Einfamilienhaus EINFAMILIENHAUS
9 Mehrfamilienhaus MEHRFAMILIENHAUS
10 Reihenhaus REIHENHAUS
11 Bauernhaus BAUERNHAUS
12 Laube-Datsche-Gartenhaus LAUBE-DATSCHE-GARTENHAUS
13 Sonstiges Haus
14 Rohbau
15 Reihenendhaus REIHENEND
16 Reihenmittelhaus REIHENMITTEL
17 Reiheneckhaus REIHENECK
18 Doppelhaushälfte DOPPELHAUSHAELFTE
19 Bungalow BUNGALOW
20 Villa VILLA
21 Strandhaus STRANDHAUS
22 Landhaus LANDHAUS
23 Terrassenhaus
24 Sacherl
25 Büro
26 Bürohaus BUEROHAUS
27 Sonstiges Büro
28 Praxis PRAXIS
29 Ausstellungsfläche AUSSTELLUNGSFLAECHE
30 Gastronomie/Restaurant GASTRONOMIE
31 Imbiss
32 Café CAFE
33 Veranstaltungsobjekt
34 Landwirtschaftliche Betriebe LANDWIRTSCHAFTLICHE_BETRIEBE
35 Bauernhof BAUERNHOF
36 Gartenbau GARTENBAU
37 Ackerbau ACKERBAU
38 Weinbau WEINBAU
39 Viehwirtschaft VIEHWIRTSCHAFT
40 Jagd und Forstwirtschaft JAGD_UND_FORSTWIRTSCHAFT
41 Jagdrevier JAGDREVIER
42 Teich / Fischzucht TEICH_UND_FISCHWIRTSCHAFT
43 Scheune SCHEUNEN
44 Reiterhof REITERHOEFE
45 Wohnung
46 Genossenschaftswohnung
47 Rohdachboden ROHDACHBODEN
49 Penthouse PENTHOUSE
50 Sonstige Wohnung
51 Maisonette MAISONETTE
52 Loft-Studio-Atelier LOFT-STUDIO-ATELIER
53 Dachgeschoß DACHGESCHOSS
54 Terrassenwohnung TERRASSEN
55 Souterrain SOUTERRAIN
56 Vorsorgewohnung
57 Schloss SCHLOSS
59 Garçonnière
60 Apartment APARTMENT
61 Bürofläche BUEROFLAECHE
62 Ladenlokal LADENLOKAL
63 Einzelhandelsladen EINZELHANDELSLADEN
64 Verbrauchermarkt VERBRAUCHERMARKT
65 Einkaufszentrum EINKAUFSZENTRUM
66 Sportanlagen SPORTANLAGEN
67 Vergnügungsparks / -center VERGNUEGUNGSPARKS_UND_CENTER
68 Gastronomie und Wohnung GASTRONOMIE_UND_WOHNUNG
69 Pensionen PENSIONEN
70 Hotels HOTELS
71 weitere Beherbergungsbetriebe WEITERE_BEHERBERGUNGSBETRIEBE
72 Land- und Forstwirtschaft LAND_FORSTWIRSCHAFT
73 Freizeit FREIZEIT
74 Gemischt GEMISCHT
75 Sondernutzung SONDERNUTZUNG
76 Halle HALLE
77 Lager LAGER
78 Produktion / Betriebsobjekt PRODUKTION
79 Werkstatt WERKSTATT
80 Hochregallager HOCHREGALLAGER
81 Service SERVICE
82 Freiflächen FREIFLAECHEN
83 Stadthaus STADTHAUS
84 Resthof RESTHOF
85 Zweifamilienhaus ZWEIFAMILIENHAUS
86 Ferienhaus FERIENHAUS
87 Berghütte BERGHUETTE
88 Chalet CHALET
89 Krankenhaus KRANKENHAUS
90 Pflegeheim PFLEGEHEIM
91 Sanatorium SANATORIUM
92 Seniorenheim SENIORENHEIM
93 Betreutes Wohnen BETREUTES-WOHNEN
95 Aussiedlerhof AUSSIEDLERHOF
96 Sonstige Landwirtschaftsimmobilien SONSTIGE_LANDWIRTSCHAFTSIMMOBILIEN
97 Parkhaus PARKHAUS
98 Tankstelle TANKSTELLE
99 Einzelgarage EINZELGARAGE
100 Stellplatz STELLPLATZ
101 Sonstige SONSTIGE
102 Etagenwohnung ETAGE
103 Erdgeschoß ERDGESCHOSS
104 Mehrfamilienhaus MEHRFAMILIENHAUS
105 Wohn- und Geschäftshaus WOHN_UND_GESCHAEFTSHAUS
106 Geschäftshaus GESCHAEFTSHAUS
107 Bürogebäude BUEROGEBAEUDE
108 Selbstbedienungsmärkte SB_MAERKTE
109 Einkaufszentren EINKAUFSCENTREN
110 Wohnanlagen WOHNANLAGEN
111 Verbrauchermärkte VERBRAUCHERMAERKTE
112 Industrieanlagen INDUSTRIEANLAGEN
113 Geschäftslokal
114 Renditeobjekt
115 Verwertungsobjekt
116 Entwicklungsobjekt
117 Gartenwohnung
118 Apartmenthaus APARTMENTHAUS
119 Ferienwohnung FERIENWOHNUNG
120 Galeriewohnung GALERIE
121 Seeliegenschaft SEELIEGENSCHAFT
122 Seeliegenschaft
123 Anwesen ANWESEN
124 Speditionslager SPEDITIONSLAGER
125 Bootsliegeplatz BOOTSLIEGEPLATZ
126 Burg BURG
127 Herrenhaus HERRENHAUS
128 Finca FINCA
129 Fertighaus FERTIGHAUS
130 Gewerbepark GEWERBEPARK
131 Bürozentrum BUEROZENTRUM
132 Loft / Atelier LOFT_ATELIER
133 Praxisfläche PRAXISFLAECHE
134 Praxishaus PRAXISHAUS
135 Coworking Space COWORKING
136 Shared Office SHARED_OFFICE
137 Kaufhaus KAUFHAUS
138 Factory outlet FACTORY_OUTLET
141 Kiosk KIOSK
142 Verkaufsfläche VERKAUFSFLAECHE
143 Ausstellungsfläche AUSSTELLUNGSFLAECHE
144 Bar BAR
145 Discothek DISCOTHEK
146 Industriehalle INDUSTRIEHALLE
147 Lagerflächen LAGERFLAECHEN
148 Lager mit Freifläche LAGER_MIT_FREIFLAECHE
149 Kühlhaus KUEHLHAUS
150 Freizeitanlage FREIZEITANLAGE
152 Carport CARPORT
153 Doppelgarage DOPPELGARAGE
154 Duplex DUPLEX
155 Tiefgarage TIEFGARAGE
156 Parkhaus PARKHAUS
157 Tiefgaragenstellplatz TIEFGARAGENSTELLPLATZ
158 Parkplatz mit Ladestation PARKPLATZ_STROM

Sub Types by Main Types

Lists of all Sub Types grouped by their corresponding Main Type.

Zimmer

None

Wohnung

ID Name OpenImmo Key
45 Wohnung
46 Genossenschaftswohnung
47 Rohdachboden ROHDACHBODEN
49 Penthouse PENTHOUSE
50 Sonstige Wohnung
51 Maisonette MAISONETTE
52 Loft-Studio-Atelier LOFT-STUDIO-ATELIER
53 Dachgeschoß DACHGESCHOSS
54 Terrassenwohnung TERRASSEN
55 Souterrain SOUTERRAIN
56 Vorsorgewohnung
59 Garçonnière
60 Apartment APARTMENT
102 Etagenwohnung ETAGE
103 Erdgeschoß ERDGESCHOSS
117 Gartenwohnung
119 Ferienwohnung FERIENWOHNUNG
120 Galeriewohnung GALERIE

Haus

ID Name OpenImmo Key
8 Einfamilienhaus EINFAMILIENHAUS
9 Mehrfamilienhaus MEHRFAMILIENHAUS
10 Reihenhaus REIHENHAUS
11 Bauernhaus BAUERNHAUS
12 Laube-Datsche-Gartenhaus LAUBE-DATSCHE-GARTENHAUS
13 Sonstiges Haus
14 Rohbau
15 Reihenendhaus REIHENEND
16 Reihenmittelhaus REIHENMITTEL
17 Reiheneckhaus REIHENECK
18 Doppelhaushälfte DOPPELHAUSHAELFTE
19 Bungalow BUNGALOW
20 Villa VILLA
21 Strandhaus STRANDHAUS
22 Landhaus LANDHAUS
23 Terrassenhaus
24 Sacherl
57 Schloss SCHLOSS
83 Stadthaus STADTHAUS
84 Resthof RESTHOF
85 Zweifamilienhaus ZWEIFAMILIENHAUS
86 Ferienhaus FERIENHAUS
87 Berghütte BERGHUETTE
88 Chalet CHALET
118 Apartmenthaus APARTMENTHAUS
122 Seeliegenschaft
126 Burg BURG
127 Herrenhaus HERRENHAUS
128 Finca FINCA
129 Fertighaus FERTIGHAUS

Grundstück

ID Name OpenImmo Key
1 Baugrund Eigenheim WOHNEN
2 Großvolumiger Wohnbau
3 Wohn- und Geschäftsbaugrund
4 Betriebsbaugrund GEWERBE
5 Seegrund SEELIEGENSCHAFT
6 Sonstiger Grund
7 Industriebaugrund INDUSTRIE
72 Land- und Forstwirtschaft LAND_FORSTWIRSCHAFT
73 Freizeit FREIZEIT
74 Gemischt GEMISCHT
75 Sondernutzung SONDERNUTZUNG
121 Seeliegenschaft SEELIEGENSCHAFT
130 Gewerbepark GEWERBEPARK

Büro / Praxis

ID Name OpenImmo Key
25 Büro
26 Bürohaus BUEROHAUS
27 Sonstiges Büro
28 Praxis PRAXIS
29 Ausstellungsfläche AUSSTELLUNGSFLAECHE
61 Bürofläche BUEROFLAECHE
131 Bürozentrum BUEROZENTRUM
132 Loft / Atelier LOFT_ATELIER
133 Praxisfläche PRAXISFLAECHE
134 Praxishaus PRAXISHAUS
135 Coworking Space COWORKING
136 Shared Office SHARED_OFFICE

Einzelhandel

ID Name OpenImmo Key
62 Ladenlokal LADENLOKAL
63 Einzelhandelsladen EINZELHANDELSLADEN
64 Verbrauchermarkt VERBRAUCHERMARKT
65 Einkaufszentrum EINKAUFSZENTRUM
113 Geschäftslokal
137 Kaufhaus KAUFHAUS
138 Factory outlet FACTORY_OUTLET
141 Kiosk KIOSK
142 Verkaufsfläche VERKAUFSFLAECHE
143 Ausstellungsfläche AUSSTELLUNGSFLAECHE

Gastgewerbe

ID Name OpenImmo Key
30 Gastronomie/Restaurant GASTRONOMIE
31 Imbiss
32 Café CAFE
33 Veranstaltungsobjekt
68 Gastronomie und Wohnung GASTRONOMIE_UND_WOHNUNG
69 Pensionen PENSIONEN
70 Hotels HOTELS
71 weitere Beherbergungsbetriebe WEITERE_BEHERBERGUNGSBETRIEBE
144 Bar BAR
145 Discothek DISCOTHEK

Industrie / Gewerbe

ID Name OpenImmo Key
76 Halle HALLE
77 Lager LAGER
78 Produktion / Betriebsobjekt PRODUKTION
79 Werkstatt WERKSTATT
80 Hochregallager HOCHREGALLAGER
81 Service SERVICE
82 Freiflächen FREIFLAECHEN
124 Speditionslager SPEDITIONSLAGER
146 Industriehalle INDUSTRIEHALLE
147 Lagerflächen LAGERFLAECHEN
148 Lager mit Freifläche LAGER_MIT_FREIFLAECHE
149 Kühlhaus KUEHLHAUS

Land und Forstwirtschaft

ID Name OpenImmo Key
34 Landwirtschaftliche Betriebe LANDWIRTSCHAFTLICHE_BETRIEBE
35 Bauernhof BAUERNHOF
36 Gartenbau GARTENBAU
37 Ackerbau ACKERBAU
38 Weinbau WEINBAU
39 Viehwirtschaft VIEHWIRTSCHAFT
40 Jagd und Forstwirtschaft JAGD_UND_FORSTWIRTSCHAFT
41 Jagdrevier JAGDREVIER
42 Teich / Fischzucht TEICH_UND_FISCHWIRTSCHAFT
43 Scheune SCHEUNEN
44 Reiterhof REITERHOEFE
95 Aussiedlerhof AUSSIEDLERHOF
96 Sonstige Landwirtschaftsimmobilien SONSTIGE_LANDWIRTSCHAFTSIMMOBILIEN
123 Anwesen ANWESEN

Sonstige / Sonderobjekte

ID Name OpenImmo Key
89 Krankenhaus KRANKENHAUS
97 Parkhaus PARKHAUS
98 Tankstelle TANKSTELLE
101 Sonstige SONSTIGE

Freizeitimmobilie gewerblich

ID Name OpenImmo Key
66 Sportanlagen SPORTANLAGEN
67 Vergnügungsparks / -center VERGNUEGUNGSPARKS_UND_CENTER
150 Freizeitanlage FREIZEITANLAGE

Zinshaus / Renditeobjekt

ID Name OpenImmo Key
90 Pflegeheim PFLEGEHEIM
91 Sanatorium SANATORIUM
92 Seniorenheim SENIORENHEIM
93 Betreutes Wohnen BETREUTES-WOHNEN
104 Mehrfamilienhaus MEHRFAMILIENHAUS
105 Wohn- und Geschäftshaus WOHN_UND_GESCHAEFTSHAUS
106 Geschäftshaus GESCHAEFTSHAUS
107 Bürogebäude BUEROGEBAEUDE
108 Selbstbedienungsmärkte SB_MAERKTE
109 Einkaufszentren EINKAUFSCENTREN
110 Wohnanlagen WOHNANLAGEN
111 Verbrauchermärkte VERBRAUCHERMAERKTE
112 Industrieanlagen INDUSTRIEANLAGEN
114 Renditeobjekt
115 Verwertungsobjekt
116 Entwicklungsobjekt

Parken

ID Name OpenImmo Key
99 Einzelgarage EINZELGARAGE
100 Stellplatz STELLPLATZ
125 Bootsliegeplatz BOOTSLIEGEPLATZ
152 Carport CARPORT
153 Doppelgarage DOPPELGARAGE
154 Duplex DUPLEX
155 Tiefgarage TIEFGARAGE
156 Parkhaus PARKHAUS
157 Tiefgaragenstellplatz TIEFGARAGENSTELLPLATZ
158 Parkplatz mit Ladestation PARKPLATZ_STROM

Prices Explanation

Erklärung der XML Felder

<preise>
    <nettokaltmiete>482.95</nettokaltmiete>
    <!-- Summe aller Felder der Gruppe "Miete" exkl. USt. (blau) -->
    <kaltmiete>802.95</kaltmiete>
    <!-- Monatliche Gesamtbelastung exkl. Heizkosten und USt. -->
    <warmmiete>1100.25</warmmiete>
    <!-- Monatliche Gesamtbelastung inkl. Heizkosten und USt. -->
    <nebenkosten>120</nebenkosten>
    <!-- Betriebskosten exkl. USt. (rot) -->
    <heizkosten>170</heizkosten>
    <!-- Summe aller Felder der Gruppe "Heizkosten" exkl. USt. (gelb) -->
    <zzg_mehrwertsteuer>1</zzg_mehrwertsteuer>
    <!-- Kann ignoriert werden -->
    <abstand>15000</abstand>
    <!-- Ablöse -->
    <kaufpreis_pro_qm>6.04</kaufpreis_pro_qm>
    <!-- Mietpreise pro m², nur bei Kaufobjekten vorhanden -->
    <mietpreis_pro_qm>6.04</mietpreis_pro_qm>
    <!-- Mietpreise pro m², nur bei Mietobjekten vorhanden -->
    <aussen_courtage>3 Bruttomonatsmieten zzgl. 20% USt.</aussen_courtage>
    <!-- Provisionstext -->
    <waehrung iso_waehrung="EUR"/>
    <!-- Währung im ISO 4217 Format -->
    <kaution>1234.5</kaution>
    <!-- Kaution, nur vorhanden wenn die Kaution ein Zahlenwert ist -->
    <kaution_text>5 Bruttomonatsmieten</kaution_text>
    <!-- Kaution als Text -->
    <gesamtmiete_ust>110.3</gesamtmiete_ust>
    <!-- USt. der monatlichen Gesamtbelastung exkl. Heizkosten -->
    <miete>
        <netto>452.95</netto>
        <!-- Miete exkl. USt. -->
        <brutto>498.25</brutto>
        <!-- Miete inkl. USt. -->
        <ust>10</ust>
        <!-- USt. in Prozent -->
        <ust_wert>10</ust_wert>
        <!-- USt. Eingabe -->
        <ust_berechneter_wert>45.3</ust_berechneter_wert>
        <!-- USt. in Währung -->
        <ust_typ>percent</ust_typ>
        <!-- Typ der USt. Eingabe | numeric oder percent -->
    </miete>
    <zusatzkosten>
        <betriebskosten>
            <name>Betriebskosten</name>
            <!-- Bezeichnung -->
            <netto>120</netto>
            <!-- Wert exkl. USt. -->
            <brutto>144</brutto>
            <!-- Wert inkl. USt. -->
            <ust>20</ust>
            <!-- USt. in Prozent -->
            <ust_wert>20</ust_wert>
            <!-- USt. Eingabe -->
            <ust_berechneter_wert>24</ust_berechneter_wert>
            <!-- USt. Berechneter Wert in Euro/Währung -->
            <ust_typ>percent</ust_typ>
            <!-- Typ der USt. Eingabe | numeric oder percent -->
        </betriebskosten>
        <heizkosten>
            <name>Heizkosten</name>
            <!-- Bezeichnung -->
            <netto>100</netto>
            <!-- Wert exkl. USt. -->
            <brutto>110</brutto>
            <!-- Wert inkl. USt. -->
            <ust>10</ust>
            <!-- USt. in Prozent -->
            <ust_wert>10</ust_wert>
            <!-- USt. Eingabe -->
            <ust_berechneter_wert>10</ust_berechneter_wert>
            <!-- USt. Berechneter Wert in Euro/Währung -->
            <ust_typ>percent</ust_typ>
            <!-- Typ der USt. Eingabe | numeric oder percent -->
        </heizkosten>
        <zusatzkosten_1>
            <name>Reparaturrücklage</name>
            <!-- Bezeichnung -->
            <netto>50</netto>
            <!-- Wert exkl. USt. -->
            <brutto>55</brutto>
            <!-- Wert inkl. USt. -->
            <ust>10</ust>
            <!-- USt. in Prozent -->
            <ust_wert>10</ust_wert>
            <!-- USt. Eingabe -->
            <ust_berechneter_wert>5</ust_berechneter_wert>
            <!-- USt. Berechneter Wert in Euro/Währung -->
            <ust_typ>percent</ust_typ>
            <!-- Typ der USt. Eingabe | numeric oder percent -->
            <optional>false</optional>
            <!-- Posten ist optional | true oder false -->
            <gruppe>other</gruppe>
            <!-- Kostengruppe | rent, operating, heating oder other -->
        </zusatzkosten_1>
        <zusatzkosten_2>
            <name>Warmwasser</name>
            <netto>40</netto>
            <brutto>44</brutto>
            <ust>10</ust>
            <ust_wert>10</ust_wert>
            <ust_typ>percent</ust_typ>
            <optional>false</optional>
            <gruppe>heating</gruppe>
        </zusatzkosten_2>
        <zusatzkosten_3>
            <name>Möbelmiete</name>
            <netto>30</netto>
            <brutto>36</brutto>
            <ust>20</ust>
            <ust_wert>20</ust_wert>
            <ust_berechneter_wert>16</ust_berechneter_wert>
            <ust_typ>percent</ust_typ>
            <optional>false</optional>
            <gruppe>rent</gruppe>
        </zusatzkosten_3>
        <zusatzkosten_4>
            <name>Kühlung</name>
            <netto>30</netto>
            <brutto>33</brutto>
            <ust>10</ust>
            <ust_wert>10</ust_wert>
            <ust_berechneter_wert>3</ust_berechneter_wert>
            <ust_typ>percent</ust_typ>
            <optional>false</optional>
            <gruppe>heating</gruppe>
        </zusatzkosten_4>
        <zusatzkosten_5>
            <name>Parkplatz</name>
            <netto>20</netto>
            <brutto>24</brutto>
            <ust>20</ust>
            <ust_wert>20</ust_wert>
            <ust_berechneter_wert>4</ust_berechneter_wert>
            <ust_typ>percent</ust_typ>
            <optional>true</optional>
            <gruppe>rent</gruppe>
        </zusatzkosten_5>
        <zusatzkosten_6>
            <name>Garage</name>
            <netto>60</netto>
            <brutto>72</brutto>
            <ust>20</ust>
            <ust_wert>20</ust_wert>
            <ust_berechneter_wert>12</ust_berechneter_wert>
            <ust_typ>percent</ust_typ>
            <optional>true</optional>
            <gruppe>rent</gruppe>
        </zusatzkosten_6>
        <zusatzkosten_7>
            <name>Sonstiges</name>
            <netto>150</netto>
            <brutto>180</brutto>
            <ust>20</ust>
            <ust_wert>20</ust_wert>
            <ust_berechneter_wert>30</ust_berechneter_wert>
            <ust_typ>percent</ust_typ>
            <optional>false</optional>
            <gruppe>other</gruppe>
        </zusatzkosten_7>
    </zusatzkosten>
    <user_defined_simplefield feldname="miete_ust">110.3</user_defined_simplefield>
    <!-- USt. der monatlichen Gesamtbelastung exkl. Heizkosten -->
    <user_defined_anyfield>
        <mwst_gesamt>127.3</mwst_gesamt>
        <!-- USt. der monatlichen Gesamtbelastung inkl. Heizkosten -->
    </user_defined_anyfield>
    <user_defined_anyfield>
        <sonstige_kosten>200</sonstige_kosten>
        <!-- Summe aller Felder der Gruppe "Sonstige Kosten" exkl. USt. (grün) -->
    </user_defined_anyfield>
    <!-- Erstauftraggeberprinzip aktiviert/deaktiviert (nur bei Mietobjekten in Österreich mit Nutzungsart Wohnen) -->
    <user_defined_simplefield feldname="erstauftraggeberprinzip">1</user_defined_simplefield>
</preise>

Gruppen

Die Preise werden in folgende Gruppen gegliedert:

Miete rent

Betriebskosten operating

Heizkosten heating

Sonstige Kosten other

Eingabe in Justimmo

Eingabemaske in Justimmo für Preise.

Prices Display

Darstellung

Grundsätzlich können Sie die Preise in beliebiger Form darstellen. Es ist dabei jedoch folgende gesetzliche Vorgabe einzuhalten:

„(3) In Inseraten über Mietwohnungen haben Immobilienmakler Angaben über die monatliche Belastung in Form der Gesamtbelastung sowie – sofern es sich nicht um einen Pauschalmietzins handelt – Angaben über den Hauptmietzins, die Betriebs- und Heizkostenakonti und die Umsatzsteuer zu machen.“

Quelle: https://www.ris.bka.gv.at/GeltendeFassung.wxe?Abfrage=Bundesnormen&Gesetzesnummer=10007765

Zur besseren Vergleichbarkeit von Inseraten, empfiehlt die OpenImmo Austria Usergroup die Anzeige der Gesamtmiete. Diese entspricht der Summe aller monatlichen Kosten (inkl. USt.) exklusive den Heizkosten.

Gesamtmiete = Miete + Betriebskosten + Sonstige Kosten

Variante 1

Die erste Variante stellt die Preise als Rechung dar, z.B.

Gesamtmiete*: € 913,25   preise->kaltmiete + preise->gesamtmiete_ust
 
Miete: € 452,95   preise->miete->netto
Möbelmiete: € 30,00   preise->zusatzkosten->zusatzkosten_3->netto
Betriebskosten: € 120,00   preise->zusatzkosten->betriebskosten->netto
Heizkosten: € 100,00   preise->zusatzkosten->heizkosten->netto
Warmwasser: € 40,00   preise->zusatzkosten->zusatzkosten_2->netto
Kühlung: € 30,00   preise->zusatzkosten->zusatzkosten_4->netto
Reparaturrücklage: € 50,00   preise->zusatzkosten->zusatzkosten_1->netto
Sonstiges: € 150,00   preise->zusatzkosten->zusatzkosten_7->netto
Umsatzsteuer: € 127,30   preise->user_defined_anyfield->mwst_gesamt
monatliche Gesamtbelastung: € 1.100,25   preise->warmmiete

Optionale Kosten

Parkplatz (inkl. 20% USt.)**: € 24,00   preise->zusatzkosten->zusatzkosten_5->brutto
Garage (inkl. 20% USt.)**: € 72,00   preise->zusatzkosten->zusatzkosten_6->brutto

* Miete + Nebenkosten (inkl. USt.), ohne Heizkosten
** optional, nicht in der Miete enthalten

Variante 2

Die zweite Variante stellt die Preise in den definierten Gruppen dar, z.B.

Gesamtmiete*: € 913,25   preise->kaltmiete + preise->gesamtmiete_ust
 
Miete: € 482,95   preise->nettokaltmiete
Betriebskosten: € 120,00   preise->nebenkosten
Heizkosten: € 170,00   preise->heizkosten
Sonstige Kosten: € 200,00   preise->user_defined_anyfield->sonstige_kosten
Umsatzsteuer: € 127,30   preise->user_defined_anyfield->mwst_gesamt
monatliche Gesamtbelastung: € 1.100,25   preise->warmmiete

Optionale Kosten

Parkplatz (inkl. 20% USt.)**: € 24,00   preise->zusatzkosten->zusatzkosten_5->brutto
Garage (inkl. 20% USt.)**: € 72,00   preise->zusatzkosten->zusatzkosten_6->brutto

* Miete + Nebenkosten (inkl. USt.), ohne Heizkosten
** optional, nicht in der Miete enthalten

Expose Types

List of all available expose types which are accessible for every customer. Some Justimmo customer may have additional expose types.

Type Description
DefaultNewWebsite Exposé as displayed on frontend pages
DefaultNew Exposé as sent in offers
DefaultNewWithoutBackground Exposé as sent in offers without background
DefaultFactsheet Exposé for displays
DefaultProject Exposé for projects
Meldezettel Certificate of registration
PDFFile Individual exposé

Picture Sizes

setting size branded
small 100x300 no
s220x155 220x155 no
s312x208 s312x208 no
medium 630x480 yes
medium_unbranded 630x480 no
big 800x600 yes
big_unbranded 800x600 no
big2 950x713 yes
big2_unbranded 950x713 no
fullhd 1920x1080 yes
fullhd_unbranded 1920x1080 no
fullhd_downscale 1920x1080 yes
fullhd_unbranded_downscale 1920x1080 no
uhd 3840x2160 yes
uhd_unbranded 3840x2160 no
uhd_downscale 3840x2160 yes
uhd_unbranded_downscale 3840x2160 no
orig original no

Salutations

List of all available salutations which are accessible for every customer. Some Justimmo customer may have additional salutations.

Id English German
1 Mr. Herr
2 Ms. Frau

Geo Data and POIs

XML structure for realty geo data.

POI fields vary from realty to realty. Geo coordinate fields may not always be set.

Info on geo coordinates userdefined simple fields:

  • geokoordinaten_laengengrad_exakt, geokoordinaten_breitengrad_exakt may only be set for API requests.
  • geokoordinaten_laengengrad, geokoordinaten_breitengrad may be absent if the realty's position is set to be hidden.
  • ungenaue_verortung_laengengrad, ungenaue_verortung_breitengrad, ungenaue_verortung_radius may be available in addition to geokoordinaten_laengengrad, geokoordinaten_breitengrad, to provide a more precise area containing the realty.

<immobilie>
    ...
    <geo>
        ...
        <geokoordinaten breitengrad="48.2197079" laengengrad="16.4035782" />
        ...
        <user_defined_simplefield feldname="geokoordinaten_laengengrad_exakt">15.01234</user_defined_simplefield>
        <user_defined_simplefield feldname="geokoordinaten_breitengrad_exakt">48.56789</user_defined_simplefield>
        <user_defined_simplefield feldname="geokoordinaten_laengengrad">15.01234</user_defined_simplefield>
        <user_defined_simplefield feldname="geokoordinaten_breitengrad">48.56789</user_defined_simplefield>
        <user_defined_simplefield feldname="ungenaue_verortung_laengengrad">15.01234</user_defined_simplefield>
        <user_defined_simplefield feldname="ungenaue_verortung_breitengrad">48.56789</user_defined_simplefield>
        <user_defined_simplefield feldname="ungenaue_verortung_radius">500</user_defined_simplefield>
        ...
        <user_defined_anyfield>
            <ji_point_of_interest_distance>
                <distance type="doctors" group="health">500</distance>
                <distance type="pharmacy" group="health">1500</distance>
                <distance type="hospital" group="health">2000</distance>
                <distance type="clinic" group="health">1500</distance>
                <distance type="supermarket" group="local_supply">500</distance>
                <distance type="bakery" group="local_supply">1000</distance>
                <distance type="mall" group="local_supply">3500</distance>
                <distance type="school" group="children_and_school">1000</distance>
                <distance type="kindergarten" group="children_and_school">1500</distance>
                <distance type="university" group="children_and_school">2500</distance>
                <distance type="college" group="children_and_school">2500</distance>
                <distance type="bank" group="other">500</distance>
                <distance type="atm" group="other">500</distance>
                <distance type="post_office" group="other">1000</distance>
                <distance type="police" group="other">1000</distance>
                <distance type="tram" group="traffic">2000</distance>
                <distance type="railway_station" group="traffic">2000</distance>
                <distance type="motorway_junction" group="traffic">1500</distance>
                <distance type="subway" group="traffic">3500</distance>
                <distance type="aerodrome" group="traffic">1000</distance>
            </ji_point_of_interest_distance>
        </user_defined_anyfield>
    </geo>
    ...
</immobilie>

Federal States

List of Austrian federal states.

ID Name
126 Burgenland
127 Kärnten
128 Niederösterreich
129 Oberösterreich
130 Salzburg
131 Steiermark
132 Tirol
133 Vorarlberg
134 Wien

User Defined Simplefields

Feldname
aktualisiert_am
anschluesse
anzahl_abstellraum
anzahl_balkon
anzahl_dachgeschoss
anzahl_etage
anzahl_garagen
anzahl_garten
anzahl_keller
anzahl_loggia
anzahl_terrasse
ausrichtung
balkon_flaeche
bauart_id
bautraeger
befristete_flaeche
beiname
belagsfertig
betriebskosten_brutto
betriebskosten_netto
bild
bundesland
code
created_at
created_at_unknown
datenschutzinformation_url
ea_fgee
ea_fgee_klasse
ea_hwb
ea_hwb_klasse
epass_fgeeklasse
epass_fgeewert
epass_hwbklasse
epass_hwbwert
erf_datum
erstauftraggeberprinzip
erstellt_am
etage
etage_dg
etage_kg
etage_nr
ez
finanzierungsbeitrag
funktion
fussboeden
garage_flaeche
garagen_flaeche
geokoordinaten_breitengrad
geokoordinaten_breitengrad_exakt
geokoordinaten_laengengrad
geokoordinaten_laengengrad_exakt
gewichtete_flaeche
Grnr
grundbuch_einlagezahl
grundbuch_grundstuecknummer
grundbuch_katastralgemeinde
grundbucheintragung
grunderwerbssteuer
hallenhoehe
hausnummer_verortung
hauszustand
heizkosten_netto
heizung
immocard_firma_id
immocard_id
ist_baugrundstueck
ji_acquisition_state
ji_anzeige_in_suchergebnis
ji_completion_date
ji_eigentumsform_id
ji_is_reference
ji_kundennummer
ji_objektstatus
ji_objektstatus_id
ji_projekt_status
ji_sale_start
ji_stand_vom
ji_summe_nettomiete_bis
ji_summe_nettomiete_von
ji_type
kg
laermpegel
lagebewertung
land
letzte_generalsanierung
loggia_flaeche
miete_ust
mietkauf
mobiliar
moeblierung
monatl_kosten
monatlichekostenbrutto
objektart_id
objektart_name
objektgruppe
objekttyp
ort
parent_id
plz
political_district_id
politischer_bezirk
projekt_url
provisionsteilung
provisionsteilung_text
raumhoehe
realty_system_type
rohdachboden_flaeche
schluesselfertig
sprache
status
stellplatz_flaeche
stiege
strasse
strasse_verortung
sub_objektart_id
sub_objektart_name
terrasse_flaeche
terrassen_flaeche
ubahn_naehe
ungenaue_verortung_breitengrad
ungenaue_verortung_laengengrad
ungenaue_verortung_radius
url
username
ust_summe
verbaubare_flaeche
vermittelt_am
vermittelt_datum
vermittelt_kaufpreis
veroeffentlicht_am
vertragserrichtungsgebuehr
weiterekosten_brutto
weiterekosten_netto
wohnbaufoerderung
zentral_begehbar
zustand

Basics

The PHP SDK can be found on Github

Autoloading

The easiest way to install the Justimmo PHP-SDK and autoload the classes in you php application is using Composer. The PHP-SDK follows the PSR-0 standards for autoloading.

The API class

The API class handles the communication between the Justimmo API and the PHP-SDK. It has to be injected in every query. Mandatory Requirements for the API class when instancing it is a username and a password for the Justimmo API, a LoggerInterface and a CacheInterface. Optional Attributes are the version (default v1) and the culture (default de). The culture defines the default language in which the API returns values. You can override this per call if needed.

<?php

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;

$api = new JustimmoApi('username', 'password');
//.....
$api->setCulture('en');
//.....

Exceptions

The PHP-SDK throws a variety of exceptions you can catch and handle into appropiate messages.

Abstraction

The concept of this PHP-SDK is to abstract the Justimmo API to a point that you just have to change the mapper and wrapper of a query to use a different version of the API. To achieve this the API uses dependency injection. If you don't want to build your dependencies by hand when using the API, you can use a dependency injection container.

Queries

Queries are a object oriented way you can use to fetch data from the API. You can find a full list of possibilities in the query documentation.

<?php
//...

$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query->filterByPrice(array('min' => 500, 'max' => 1500))
    ->filterByZipCode(1020)
    ->orderByPrice('desc')
    ->find();

Model

Model classes are abstracted representations of a singular data set (example Realty, Employee,...) Instances of model classes are created by wrappers which handle the translation of the output format of a API call (xml, json) into an abstracted model object. By default queries return model instances while API calls return the plain output format as string. Depending on the dataset they come with a variety of different getters. You can find a full list of all properties in the model classes.

<?php
//...

$realty = $query->findPk(12345);
echo $realty->getPurchasePrice();
echo $realty->getTitle();
//...

//information about the contact person of that realty
echo $realty->getContact()->getFirstName();
echo $realty->getContact()->getEmail());

//...

//attachments getPictures() getVideos() getDocuments()
foreach($realty->getPictures() as $picture) {
    echo $picture->getUrl('orig');
}
//abstracted attachments
foreach($realty->getAttachmentsByType('bilder360') as $picture) {
    echo $picture->getUrl('orig');
}

Pagination

Queries return by default a ListPager instance, which is an extension of a PHP array object and only holds a subset of all data and additional methods to build a pager.

<?php
//iterating trough the subset of data
foreach($pager as $realty) {
    //...
}

$pager->haveToPaginate(); //if the pager contains all data of if we have to paginate
$pager->getPage(); //the current page of the pager
$pager->getFirstPage(); //the first page of the pager
$pager->getMaxPerPage(); //how many entries are shown on a page
$pager->getLastPage(); //the last page of the pager
$pager->getNbResults(); //number of all found results not only the number contained on the current page
$pager->getLinks(5);  //gets the numbers of the adjacent pages of the current page if available
$pager->toKeyValue('getId', 'getTitle'); //returns a php array as key/value pair with the passed keyMethodGetter and valueMethodGetter

Errors

The SDK will throw different exceptions on API failures. All SDK related exceptions implement the Justimmo\Exception\JustimmoException to let you catch all SDK exceptions thrown by the SDK.

<?php

try {
    //...
    $query->find();
    //...
} catch (\Justimmo\Exception\InvalidRequestException $e) {
    //bad request format oder filter parameter, example output "zimmer_von ["test" is not a number.]"
    echo $e->getMessage();
} catch (\Justimmo\Exception\JustimmoException $e) {
    //other sdk exception
} catch (\Exception $e) {
    //exception not thrown by SDK if JustimmoException is previously catched
}

Available Exceptions

Class Description
Justimmo\Exception\InvalidRequestException Thrown if api returns a statuscode between 400 and 499 due to invalid request data
Justimmo\Exception\AuthenticationException Thrown if SDK could not login
Justimmo\Exception\NotFoundException API returned a 404 Error, eg. Realty detail request could not find a realty matching the given id
Justimmo\Exception\StatusCodeException API returned a non successfull status code which is not handled by any of the other exceptions
Justimmo\Exception\MethodNotFoundException Thrown by most magic methods like toKeyValue() if method was not found on the model object
Justimmo\Exception\AttachmentSizeNotFoundException Thrown by $attachment->getUrl() if $size has not been found
Justimmo\Exception\JustimmoException Interface to catch all SDK related exceptions

Query

Queries are a objectoriented way to fetch data from the api and abstract the results. They use a mapper and a wrapper to transform the result into a abstracted object. If you want to update the api to another version you just have to inject another mapper and wrapper into the query.

<?php
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$mapper = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);
$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query->filterByPrice(array('min' => 500, 'max' => 1500))
    ->filterByZipCode(1020)
    ->orderByPrice('desc')
    ->find();

Default Methods

The query instance has an internal parameter array with key/value pairs which will be translated into a query string when sent to the api by a termination method. You can combine as many methods as you like before calling a termination method.

->set($key, $value)

Adds a parameter to the query what will be translated into the url on the call

->setLimit(), ->setOffset()

Sets the limit and the offset for the next call. They work like they would do in SQL. Justimmo only supports a max limit of 100 realties in a list call.

->clear()

Clears the query instance to it's state right after __construct()

->orderBy($column, $direction = 'asc')

Adds the order in what the results should be returned on the next call

->orderByXXX($direction = 'asc')

Shortcut for ->orderBy('XXX', $direction = 'asc');

->filter($key, $value)

They can be used to search the Justimmo data for specific values.

<?php
//filter by a spefic value
$query->filterByPrice(1500);

//filter by a range
$query->filterByPrice(array('min' => 500, 'max' => 1500));

//filter by multiple values
$query->filterByZipCode(array('1020', '1050'));

->filterByXXX($value)

Shortcut for ->filter('XXX', $value);

->find()

find is a termination method which passes all previously set parameters on the query to the api and returns a by the wrappers transformed result. Find returns a ListPager instance and clears the current query instance.

->findOne()

findOne is a termination method which passes all previously set parameters on the query to the api and returns a by the wrappers transformed result. Find returns a model instance depending on what query it is.

->findPk($pk)

findPk is a termination method which only passes the primary key of a object to the api and returns a model instance

->paginate($page = 1, $maxPerPage = 10)

find is a termination method which passes all previously set parameters on the query to the api and returns a by the wrappers transformed result. Find returns a ListPager instance and clears the current query instance. The ListPager instance only has the data of the page passed to pagina They can be used to search the Justimmo data for specific values. Justimmo only supports a max limit of 100 realties in a list call ($maxPerPage).

<?php
//example of a query which would return 100 results overall
$query->paginate(1, 10); //returns datarows 1 to 10
$query->paginate(3, 10); //returns datarows 21 to 30
$query->paginate(3, 15); //returns datarows 31 to 45

RealtyQuery

The RealtyQuery additionally supports following methods. Keep in mind that you can add not integrated default parameters by using ->set() and ->filter()

  • Filter
    • filterByRent($value)
    • filterByBuy($value)
    • filterByPrice($value)
    • filterByRealtyTypeId($value)
    • filterBySubRealtyTypeId($value)
    • filterByRealtyCategory($value)
    • filterByTag($value)
    • filterByZipCode($value)
    • filterByRooms($value)
    • filterByPropertyNumber($value)
    • filterByArea($value)
    • filterByLivingArea($value)
    • filterByFloorArea($value)
    • filterBySurfaceArea($value)
    • filterByKeyword($value)
    • filterByFederalStateId($value)
    • filterByStyleOfBuildingId($value)
  • Sorting
    • orderByPrice($direction = 'asc')
    • orderByPropertyNumber($direction = 'asc')
    • orderByArea($direction = 'asc')
    • orderByLivingArea($direction = 'asc')
    • orderByFloorArea($direction = 'asc')
    • orderBySurfaceArea($direction = 'asc')
    • orderByCreatedAt($direction = 'asc')
    • orderByUpdatedAt($direction = 'asc')

->findIds()

Special call only on RealtyQuery to bypass performance heavy operations on server- and clientside to get only the id property of the realties in a php array format

ProjectQuery

The ProjectQuery additionally supports following methods. Keep in mind that you can add not integrated default parameters by using ->set() and ->filter()

  • filterByRealtyCategory($value)
  • filterByTag($value)
  • filterByKeyword($value)
  • filterByFederalStateId($value)
  • all(1|0)

EmployeeQuery

The RealtyQuery additionally supports following methods. Keep in mind that you can add not integrated default parameters by using ->set() and ->filter() . Additionally Justimmo only outputs employees which are assigned to a category.

BasicDataQuery

The BasicDataQuery differs from the other queries because its used to fetch Justimmo Basic Data like Countries, Federal States, ... It does not return abstracted objects but php arrays with the primary key as array key

<?php
use Justimmo\Model\Query\BasicDataQuery;
use Justimmo\Model\Wrapper\V1\BasicDataWrapper;
use Justimmo\Model\Mapper\V1\BasicDataMapper();


$query = new BasicDataQuery($api, new BasicDataWrapper(), new BasicDataMapper());
$query->all(true)
    ->filterByCountry('AT')
    ->findFederalStates();

->set()

See default methods

->setLimit(), ->setOffset()

See default methods

->all(true|false)

Defines if the next call should return all results or only results associated with currently active realties. Example: Without ->all(true) a findCountries() calls would only return contries in which the Justimmo Client associated with the used api account would have active realties.

->filterByCountry($value)

Filters the results by country. Accepts the Justimmo PK of the country or a ISO2 country code.

->filterByFederalState($value)

Filters the results by federal state. Accepts the Justimmo PK of the federal state or the name of the federal state (currently german only).

->findCountries()

Returns an array of countries

<?php
//return array format
array(
    pk => array(
        'name' => '...',
        'iso2' => '...',
        'iso3' => '...',
    ),
    //...
);

->findFederalStates()

Returns an array of federal states

<?php
//return array format
array(
    pk => array(
        'name'      => '...',
        'countryId' => '...',
        'fipsCode'  => '...',
    ),
    //...
);

->findZipCodes()

Returns an array of zip codes and their place name

<?php
//return array format
array(
    pk => array(
        'countryId'      => '...',
        'regionId'       => '...',
        'zipCode'        => '...',
        'place'          => '...',
        'federalStateId' => '...',
    ),
    //...
);

->findRegions()

Returns an array of regions

<?php
//return array format
array(
    pk => 'name',
    //...
);

->findRealtyTypes()

Returns an array of realty types

<?php
//return array format
array(
    pk => array(
        'name'      => '...',
        'key'       => '...',
        'attribute' => '...',
    ),
    //...
);

->findRealtyCategories()

Returns an array of realty categories

<?php
//return array format
array(
    pk => array(
        'name'         => '...',
        'sortableRank' => '...',
    ),
    //...
);

Caching

To speed up your application we strongly suggest you cache all api calls. The Justimmo PHP-SDK comes with a build in Memcache Class. If you don't have a MemcachedService at your disposal you can easily create an inject own Caching Services

Memcache

Building your own cache

Memcache

PHP Memcache Documentation

<?php
use Justimmo\Cache\MemcacheCache;
use Justimmo\Api\JustimmoApi;

$memcache = new Memcache();
$memcache->addServer('localhost');

//pass an instance of Memcache and a lifetime
$cache = new MemcacheCache($memcache, 1200);
$api = new JustimmoApi('username', 'password', null, $cache);

Building your own cache

Create a class which implements the \Justimmo\Cache\CacheInterface

Logging

The SDK follows the PSR-3 Logger Interface. A simple way to implement it, is to use Monolog

<?php
use Justimmo\Cache\NullCache;
use Justimmo\Api\JustimmoApi;
use Monolog\Logger;
use Monolog\Handler\StreamHandler;
use Monolog\Handler\NativeMailerHandler;

$log = new Logger('JustimmoApi');
$log->pushHandler(new StreamHandler('path/to/api_debug.log', Logger::DEBUG));
$log->pushHandler(new NativeMailerHandler('me@me.com', 'Error occured while using justimmo api', 'no-reply@my-project.com', Logger::ERROR));

$api = new JustimmoApi('username', 'password', $log, new NullCache());

Inquiry

Realty inquiry

You are able to push data (e.g. contact form) directly to the Justimmo account via the RealtyInquiry object.

<?php
use Justimmo\Request\RealtyInquiryRequest;
use Justimmo\Model\Mapper\V1\RealtyInquiryMapper;

$rq = new RealtyInquiryRequest($api, new RealtyInquiryMapper());
$rq->setRealtyId(12345)
    ->setSalutationId(1) //Mr.
    ->setTitle('Dr.')
    ->setFirstName('John')
    ->setLastName('Doe')
    ->setEmail('john.doe@example.com')
    ->setMessage('This message should be displayed to the responsible user of realty 12345')
    ->setPhone('123456')
    ->setStreet('Mariahilfer Strasse 8/11')
    ->setZipCode('1070')
    ->setCity('Wien')
    ->setCountry('AT')
    ->setCategory('Demo Marketing Category') // must be a category of type "marketing"
    ->setCompany('Acme')
    ->setIsRealtyOwner(true)
    ->setRealtyOwnerConsultationRequest(false)
    ->registerForNewsletter([4, 10], false)
    ->setFundingInquiry(true) // only use this method, if the service has been activated in Justimmo
    ->send();

The passed data as seen above, adds to the Justimmo account a new contact and a relation to the 12345 realty with a logged contact activity. Based on the collected data, the responsible Justimmo user is now able to send an offer.

Funding Inquiry

It is an additional paid service that can be activated in Justimmo.

If this option is set to "true", all recipients configured in this service will receive the financing consultation request via email.

Expose

The expose call on the API returns the pdf file. The first passed parameter is the primary key of the realty. The second parameter is the expose type. 404 will be returned if the expose/realty cannot be found. A list of expose types is available here.

<?php

header('Content-type: application/pdf');
echo $api->callExpose(12345, 'DefaultNewWebsite');

Attachments

Attachments have multiple properties

  • Title
    the title of the attachment
  • Type
    the type of the attachment, can be picture, document or video
  • Group
    the group defines the function of the attachment within the object, for example TITELBILD, default null

On every model object (Realty, Employee, Project) you can fetch it's attachment with following methods

<?php
$realty->getPictures();
$realty->getVideos();
$realty->getDocuments();

//you can add a parameter to the methods to filter by different groups

//gets all pictures regardless of the group
$realty->getPictures();

//gets all pictures without a group
$realty->getPictures(null);

//gets all pictures of the group TITELBILD
$realty->getPictures('TITELBILD');

//gets all pictures of the group bilder360
$realty->getPictures('bilder360');

// ...

File Urls

A list of available attachment sizes can be found here.

You can request specific sizes with the setPicturesize function.

$api = new JustimmoApi('xxxxxxxxx', 'xxxxxxxxxxxx');
$api->setBaseUrl('http://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query  = new RealtyQuery($api, $wrapper, $mapper);

// adds the requested picture sizes, listed at the link above 
$query->setPicturesize(array('big', 'big2'));

//gets an url to an attachment size, but only if the api returned that size
$attachment->getUrl('big');

//gets an url to an attachment size, even if the api does not return that size. BEWARE: this method cannot ensure that the url is a valid ressource
$attachment->calculateUrl('big');

Realty

List

All real-estates for rent with a max monthly rent price of 2.000€

API

https://api.justimmo.at/rest/v1/objekt/list?filter[miete]=1&filter[preis_bis]=2000

The query-result count element contains information of total hits of the search regardless of given limit parameter.

<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <query-result>
        <count>15</count>
    </query-result>
    <immobilie>
        <id>361672</id>
        <objektnummer>17</objektnummer>
        <objektkategorie>
            <nutzungsart WOHNEN="1" GEWERBE="0" ANLAGE="0" />
            <vermarktungsart KAUF="0" MIETE_PACHT="1" />
            <objektart>
                <wohnung wohnungtyp="ERDGESCHOSS" />
            </objektart>
            <user_defined_simplefield feldname="objektart_id">2</user_defined_simplefield>
            <user_defined_simplefield feldname="objektart_name">Wohnung</user_defined_simplefield>
            <user_defined_simplefield feldname="sub_objektart_id">103</user_defined_simplefield>
            <user_defined_simplefield feldname="sub_objektart_name">Erdgeschoß</user_defined_simplefield>
        </objektkategorie>
        <titel>DEMOOBJEKT! Grünruhelage in den Kornkammern Wiens</titel>
        <dreizeiler></dreizeiler>
        <naehe>Donauufer</naehe>
        <objektbeschreibung>&lt;p&gt;DEMOOBJEKT! Bitte nicht anfragen!&lt;/p&gt;&#13;
            &lt;p&gt;Breitenlee: Sonnige 3 Zimmer-Wohnung inmitten der Kornkammern Wiens&lt;br /&gt;&lt;br /&gt;Die
            helle freundliche 3 Zimmer-Wohnung mit Bad (Wanne), eigenem WC, Schrankraum, Wohnküche mit Speiss,
            französichen Fenstern in allen Räumen ist süd-westl. ausgerichtet. Im Mietpreis sind die Kosten für 1
            Garagenplatz enthalten.&lt;br /&gt;5 Minuten mit dem Auto nach Breitenlee, 10 Min. zum großen Donaustädter
            Einkaufspark und in 100 Metern mitten in den Feldern! Die Haltestelle des städt. Autobuses ist vor der Türe!&lt;/p&gt;
        </objektbeschreibung>
        <anzahl_zimmer>3</anzahl_zimmer>
        <etage>4. Etage</etage>
        <ort>Wien</ort>
        <plz>1220</plz>
        <preis>1752</preis>
        <gesamtmiete>1818</gesamtmiete>
        <mietkauf>0</mietkauf>
        <wohnflaeche>82</wohnflaeche>
        <nutzflaeche>95</nutzflaeche>
        <anzahl_terrassen>1</anzahl_terrassen>
        <terrassen_flaeche>15</terrassen_flaeche>
        <erstes_bild>https://files.justimmo.at/public/pic/small/APRorOYjzZ.jpg</erstes_bild>
        <zweites_bild>https://files.justimmo.at/public/pic/small/APRoFdmnle.jpg</zweites_bild>
        <status>aktiv</status>
        <status_id>5</status_id>
        <erstellt_am>2014-12-03 10:21:03</erstellt_am>
        <aktualisiert_am>2016-03-04 10:44:19</aktualisiert_am>
    </immobilie>
    <!-- ..... -->
</justimmo>

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query
    ->filterByRent(1)
    ->filterByBuy(0)
    ->filterByPrice(['max' => 2000])
    ->find();

/** @var \Justimmo\Model\Realty $realty */
foreach ($realties as $realty) {
    var_dump($realty);
    //....
}

Detail

Returns detailed information of a single realty as xml loosely based on Openimmo 1.2.7.

API

https://api.justimmo.at/rest/v1/objekt/detail?objekt_id=123456789&culture=de

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;


$api = new JustimmoApi('username', 'password');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realty = $query
    ->findPk(123456789);

echo sprintf('Vertragserrichtung: %s', $realty->getContractEstablishmentCosts()) . "<br/>\n";
echo sprintf('Grundbucheintragung: %s', $realty->getLandRegistration()) . "<br/>\n";
echo sprintf('Grunderwerbsteuer: %s', $realty->getTransferTax()) . "<br/>\n";

echo sprintf('16. Verkaufsfläche: %s', $realty->getSalesArea()) . "<br/>\n";
echo sprintf('18. Hallenhöhe: %s', $realty->getHallHeight()) . "<br/>\n";
echo sprintf('19. Freie Fläche: %s', $realty->getSurfaceArea()) . "<br/>\n";
echo sprintf('20. Befristete Fläche: %s', $realty->getShortTermArea()) . "<br/>\n";
echo sprintf('22. Gewichtete Fläche: %s', $realty->getWeightedArea()) . "<br/>\n";
echo sprintf('23. Rohdachbodenfläche: %s', $realty->getUndevelopedAtticArea()) . "<br/>\n";
echo sprintf('25. Raumhöhe: %s', $realty->getCeilingHeight()) . "<br/>\n";
echo sprintf('26. Anzahl Gärten: %s', $realty->getGardenCount()) . "<br/>\n";
echo sprintf('28. Anzahl Keller: %s', $realty->getCellarCount()) . "<br/>\n";

echo sprintf('free text 1: %s', $realty->getFreetext1()) . "<br/>\n";
echo sprintf('free text 2: %s', $realty->getFreetext2()) . "<br/>\n";
echo sprintf('free text 3: %s', $realty->getFreetext3()) . "<br/>\n";
echo sprintf('free text 4: %s', $realty->getFreetext4()) . "<br/>\n";

<?php

// same code like above

$realty = $query
    ->findPk(123456789);

/** @var \Justimmo\Model\Attachment $link */
foreach ($realty->getLinks() as $link) {
    var_dump($link);
}

/** @var \Justimmo\Model\Attachment $attachment */
foreach ($realty->getAttachments() as $attachment) {
    if ($attachment->getType() === 'link') {
        var_dump($attachment);
    }
}
<?php

// same code like above

$realty = $query
    ->findPk(123456789);

echo sprintf('oid/number: %d/%d<br/>', $realty->getId(), $realty->getPropertyNumber());
echo sprintf('title: %s<br/>', $realty->getTitle());

$pics   = $realty->getPictures();
/** @var \Justimmo\Model\Attachment $pic */
foreach ($pics as $pic) {
    echo sprintf('pic title: %s<br/>', $pic->getTitle());
    echo sprintf('pic description: %s<br/>', $pic->getDescription());
    echo sprintf('url: %s<br/>', $pic->calculateUrl('small'));
    echo sprintf('url: %s<br/>', $pic->calculateUrl('s220x155'));
    echo sprintf('url: %s<br/>', $pic->calculateUrl('s312x208'));
    echo sprintf('url: %s<br/>', $pic->calculateUrl('medium'));
    echo sprintf('url: %s<br/>', $pic->calculateUrl('medium_unbranded'));
    echo sprintf('url: %s<br/>', $pic->calculateUrl('big'));
    echo sprintf('url: %s<br/>', $pic->calculateUrl('big_unbranded'));
    echo sprintf('url: %s<br/>', $pic->calculateUrl('big2'));
    echo sprintf('url: %s<br/>', $pic->calculateUrl('big2_unbranded'));
    echo sprintf('url: %s<br/>', $pic->calculateUrl('fullhd'));
    echo sprintf('url: %s<br/>', $pic->calculateUrl('fullhd_unbranded'));
    echo sprintf('url: %s<br/>', $pic->calculateUrl('fullhd_downscale'));
    echo sprintf('url: %s<br/>', $pic->calculateUrl('fullhd_unbranded_downscale'));
    echo sprintf('url: %s<br/>', $pic->calculateUrl('uhd'));
    echo sprintf('url: %s<br/>', $pic->calculateUrl('uhd_unbranded'));
    echo sprintf('url: %s<br/>', $pic->calculateUrl('uhd_downscale'));
    echo sprintf('url: %s<br/>', $pic->calculateUrl('uhd_unbranded_downscale'));
    echo sprintf('url: %s<br/>', $pic->calculateUrl());

    var_dump($pic->getData());
}
<?php

// same code like above

$realty = $query
    ->findPk(123456789);

if ($realty !== null) {
    echo sprintf('oid/number: %d/%d<br/>', $realty->getId(), $realty->getPropertyNumber());
    echo sprintf('title: %s<br/><br/>', $realty->getTitle());

    echo sprintf('getRentNet: %s<br/>', $realty->getRentNet());
    echo sprintf('getRentVat: %s<br/>', $realty->getRentVat());
    echo sprintf('getRentVatValue: %s<br/>', $realty->getRentVatValue());
    echo sprintf('rentGross: %s<br/>', $realty->getRentGross());
    echo sprintf('getTotalRent: %s<br/>', $realty->getTotalRent());
    echo sprintf('getTotalRentVat: %s<br/>', $realty->getTotalRentVat());
    echo sprintf('getTotalRentWithoutHeating: %s<br/><br/>', $realty->getTotalRentWithoutHeating());

    echo sprintf('getCostsExplanation: %s<br/>', $realty->getCostsExplanation());
    echo sprintf('getMonthlyCosts: %s<br/>', $realty->getMonthlyCosts());
    echo sprintf('getMonthlyCostsVat: %s<br/><br/>', $realty->getMonthlyCostsVat());

    echo sprintf('getOperatingCostsNet: %s<br/>', $realty->getOperatingCostsNet());
    echo sprintf('getOperatingCostsVat: %s<br/>', $realty->getOperatingCostsVat());
    echo sprintf('getOperatingCostsGross: %s<br/><br/>', $realty->getOperatingCostsGross());

    echo sprintf('getHeatingCostsNet: %s<br/>', $realty->getHeatingCostsNet());
    echo sprintf('getHeatingCostsVat: %s<br/>', $realty->getHeatingCostsVat());
    echo sprintf('getHeatingCostsGross: %s<br/>', $realty->getHeatingCostsGross());
    echo sprintf('getHeatingCosts: %s<br/><br/>', $realty->getHeatingCosts());

    echo "Additional costs\n";
    print_r($realty->getAdditionalCosts());
}

Expose

Get the default expose for realty 123456 in English language

API

https://api.justimmo.at/rest/v1/objekt/expose?objekt_id=123456&expose=DefaultNew&culture=en

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;


header('Content-type: application/pdf');

$api = new JustimmoApi('username', 'password');
$api->setCulture('en');

echo $api->callExpose(123456, 'DefaultNew');

Inquiry

Create an inquiry for contact "John AutoOffer autoOffer@40example.com"

API

https://api.justimmo.at/rest/v1/objekt/anfrage?objekt_id=3834984&vorname=John&nachname=AutoOffer&email=autoOffer%40example.com&tel=123456&message=SuperB&strasse=Mariahilfer+Strasse+8%2F11&plz=1070&ort=Wien&land=AT&titel=Dr.&anrede_id=1&funding_inquiry=1&culture=de

The inquiry and contact have been created successfully, if the response code is 200.

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\Mapper\V1\RealtyInquiryMapper;
use Justimmo\Request\RealtyInquiryRequest;

$api = new JustimmoApi('username', 'password');
$api->setCulture('de');

$mapper = new RealtyInquiryMapper();


$rq = new RealtyInquiryRequest($api, $mapper);
$rq->setRealtyId(12816952)
    ->setSalutationId(1) //Mr.
    ->setTitle('Dr.')
    ->setFirstName('John')
    ->setLastName('Funding Inquiry')
    ->setEmail('autoOffer@example.com')
    ->setMessage('SuperB')
    ->setPhone('123456')
    ->setStreet('Mariahilfer Strasse 8/11')
    ->setZipCode('1070')
    ->setCity('Wien')
    ->setCountry('AT')
    ->setFundingInquiry(true)
    ->send();

echo "Inquiry sent!";

IDs

All realty ids for rent with a max monthly rent price of 2.000€

API

https://api.justimmo.at/rest/v1/objekt/ids?filter[miete]=1&filter[preis_bis]=2000
["361672","361671","361670","361668","361667","361666","361665","131924","131923","131922","131921","131920","131919","131917","131915"]

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realtyIds = $query
    ->filterByRent(1)
    ->filterByBuy(0)
    ->filterByPrice(['max' => 2000])
    ->orderByPrice('desc')
    ->findIds();

var_dump($realtyIds);
    

Team

List

Returns all categories with employees with an active "Show on Homepage" flag in Justimmo

API

https://api.justimmo.at/rest/v1/team/list
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <kategorie name="Geschäftsführung">
        <mitarbeiter>
            <id>264110</id>
            <bild>
                <pfad>https://files.justimmo.at/public/pic/user_small/APRil3QC47.jpg</pfad>
                <pfad_medium>https://files.justimmo.at/public/pic/user_medium/APRil3QC47.jpg</pfad_medium>
            </bild>
            <vorname>Aurel</vorname>
            <nachname>Stehmann</nachname>
            <position>Geschäftsführung</position>
            <email>a.stehmann@justimmo.at</email>
        </mitarbeiter>
    </kategorie>
</justimmo>

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\EmployeeQuery;
use Justimmo\Model\Mapper\V1\EmployeeMapper;
use Justimmo\Model\Wrapper\V1\EmployeeWrapper;

$api = new JustimmoApi('username', 'password');
$api->setCulture('de');

$mapper  = new EmployeeMapper();
$wrapper = new EmployeeWrapper($mapper);

$query = new EmployeeQuery($api, $wrapper, $mapper);
$employees = $query->find();

/** @var \Justimmo\Model\Employee $employee */
foreach ($employees as $employee) {
    echo sprintf('Id (Justimmo Id): %d<br/>', $employee->getId());
    echo sprintf('Number (Mitarbeiter-ID): %s<br/>', $employee->getNumber());
    echo sprintf('Title (Titel / Präfix): %s<br/>', $employee->getTitle());
    echo sprintf('Suffix (Suffix): %s<br/>', $employee->getSuffix());
    echo sprintf('First name (Vorname): %s<br/>', $employee->getFirstName());
    echo sprintf('Last name (Nachname): %s<br/>', $employee->getLastName());
    echo sprintf('Position (Position): %s<br/>', $employee->getPosition());

    echo sprintf('City (Ort): %s<br/>', $employee->getCity());
    echo sprintf('Street (Straße): %s<br/>', $employee->getStreet());
    echo sprintf('Postal code (Postleitzahl): %s<br/>', $employee->getPostal());

    echo sprintf('Email (E-Mail Adresse): %s<br/>', $employee->getEmail());
    echo sprintf('Phone (Telefon): %s<br/>', $employee->getPhone());
    echo sprintf('Mobile (Mobil): %s<br/>', $employee->getMobile());
    echo sprintf('Fax (Fax): %s<br/>', $employee->getFax());

    echo sprintf('Biography (Biographie): %s<br/>', $employee->getBiography());
    echo sprintf('Category (Kategorien): %s<br/>', $employee->getCategory());

    echo sprintf('Url (Webseite): %s<br/><br/>', $employee->getUrl());

    $attachments    = $employee->getAttachments();
    $pictures       = $employee->getPictures();
    $profilePicture = $employee->getProfilePicture();
    $documents      = $employee->getDocuments();
    $links          = $employee->getLinks();
    $videos         = $employee->getVideos();

}

Detail

Returns detailed information of a single employee

API

https://api.justimmo.at/rest/v1/team/detail?id=264110
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <id>264110</id>
    <bild>
        <pfad>https://files.justimmo.at/public/pic/user_small/APRil3QC47.jpg</pfad>
        <pfad_medium>https://files.justimmo.at/public/pic/user_medium/APRil3QC47.jpg</pfad_medium>
    </bild>
    <vorname>Aurel</vorname>
    <nachname>Stehmann</nachname>
    <position>Geschäftsführung</position>
    <email>a.stehmann@justimmo.at</email>
</justimmo>

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\EmployeeQuery;
use Justimmo\Model\Mapper\V1\EmployeeMapper;
use Justimmo\Model\Wrapper\V1\EmployeeWrapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.just.immo/rest');
$api->setCulture('de');

$mapper  = new EmployeeMapper();
$wrapper = new EmployeeWrapper($mapper);

$query = new EmployeeQuery($api, $wrapper, $mapper);
/** @var \Justimmo\Model\Employee $employee */
$employee = $query->findOne(264110);

echo sprintf('Id (Justimmo Id): %d<br/>', $employee->getId());
echo sprintf('Number (Mitarbeiter-ID): %s<br/>', $employee->getNumber());
echo sprintf('Title (Titel / Präfix): %s<br/>', $employee->getTitle());
echo sprintf('Suffix (Suffix): %s<br/>', $employee->getSuffix());
echo sprintf('First name (Vorname): %s<br/>', $employee->getFirstName());
echo sprintf('Last name (Nachname): %s<br/>', $employee->getLastName());
echo sprintf('Position (Position): %s<br/>', $employee->getPosition());

echo sprintf('City (Ort): %s<br/>', $employee->getCity());
echo sprintf('Street (Straße): %s<br/>', $employee->getStreet());
echo sprintf('Postal code (Postleitzahl): %s<br/>', $employee->getPostal());

echo sprintf('Email (E-Mail Adresse): %s<br/>', $employee->getEmail());
echo sprintf('Phone (Telefon): %s<br/>', $employee->getPhone());
echo sprintf('Mobile (Mobil): %s<br/>', $employee->getMobile());
echo sprintf('Fax (Fax): %s<br/>', $employee->getFax());

echo sprintf('Biography (Biographie): %s<br/>', $employee->getBiography());
echo sprintf('Category (Kategorien): %s<br/>', $employee->getCategory());

echo sprintf('Url (Webseite): %s<br/><br/>', $employee->getUrl());

$attachments    = $employee->getAttachments();
$pictures       = $employee->getPictures();
$profilePicture = $employee->getProfilePicture();
$documents      = $employee->getDocuments();
$links          = $employee->getLinks();
$videos         = $employee->getVideos();

IDs

All employee ids

API

https://api.justimmo.at/rest/v1/team/ids
["123","125","159"]

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\EmployeeQuery;
use Justimmo\Model\Mapper\V1\EmployeeMapper;
use Justimmo\Model\Wrapper\V1\EmployeeWrapper;

$api = new JustimmoApi('username', 'password');
$api->setCulture('de');

$mapper  = new EmployeeMapper();
$wrapper = new EmployeeWrapper($mapper);

$query = new EmployeeQuery($api, $wrapper, $mapper);
$employeeIds = $query->findIds();

var_dump($employeeIds);

Project

List

All active projects with real-estates booked into API feed.

API

https://api.justimmo.at/rest/v1/projekt/list

The query-result count element contains information of total hits of the search regardless of given limit parameter.

<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <query-result>
        <count>2</count>
    </query-result>
    <projekt>
        <id>46</id>
        <titel>Demoprojekt in Zentrumsnähe</titel>
        <beschreibung>Demoprojekt. Bitte nicht anfragen</beschreibung>
        <dreizeiler></dreizeiler>
        <strasse></strasse>
        <hausnummer>2</hausnummer>
        <plz>1030</plz>
        <ort>Wien</ort>
        <in_bau>1</in_bau>
        <sonstige_angaben></sonstige_angaben>
        <lage></lage>
        <freitext_1></freitext_1>
        <residential_aggregation_data>
            <area_from>200</area_from>
            <area_to>400</area_to>
            <price_from>120000</price_from>
            <price_to>180000</price_to>
            <rooms_from>2</rooms_from>
            <rooms_to>4</rooms_to>
            <available>3</available>
        </residential_aggregation_data>
        <immobilien>
            <immobilie>
                <id>700169</id>
                <objektnummer></objektnummer>
                <objektkategorie>
                    <nutzungsart WOHNEN="1" GEWERBE="0" ANLAGE="0" />
                    <vermarktungsart KAUF="0" MIETE_PACHT="1" />
                    <objektart>
                        <wohnung />
                    </objektart>
                    <user_defined_simplefield feldname="objektart_id">2</user_defined_simplefield>
                    <user_defined_simplefield feldname="objektart_name">Wohnung</user_defined_simplefield>
                    <user_defined_anyfield>
                        <ji_kategorie id="4743">Wienerwald</ji_kategorie>
                    </user_defined_anyfield>
                </objektkategorie>
                <titel>DEMOOBJEKT! Luxus Wienblick-Dachgeschosswohnung mit Wintergarten, offenen Kamin, Sauna und
                    Weinkeller
                </titel>
                <dreizeiler></dreizeiler>
                <naehe></naehe>
                <objektbeschreibung>DEMOOBJEKT! Bitte nicht anfragen!</objektbeschreibung>
                <anzahl_zimmer>5</anzahl_zimmer>
                <etage>EG</etage>
                <ort>Wien</ort>
                <plz>1030</plz>
                <preis>0</preis>
                <gesamtmiete />
                <wohnflaeche>269</wohnflaeche>
                <nutzflaeche>269</nutzflaeche>
                <anzahl_terrassen>2</anzahl_terrassen>
                <erstes_bild>https://files.justimmo.at/public/pic/medium/AdlOCzRy51.jpg</erstes_bild>
                <zweites_bild>https://files.justimmo.at/public/pic/medium/AdlOGYKVg_.jpg</zweites_bild>
                <projekt_id>46</projekt_id>
                <status>aktiv</status>
                <status_id>5</status_id>
                <erstellt_am>2016-04-12 14:47:46</erstellt_am>
                <aktualisiert_am>2016-04-19 11:18:59</aktualisiert_am>
            </immobilie>
            <immobilie>
                <id>634476</id>
                <objektnummer>894949</objektnummer>
                <objektkategorie>
                    <nutzungsart WOHNEN="1" GEWERBE="0" ANLAGE="0" />
                    <vermarktungsart KAUF="0" MIETE_PACHT="1" />
                    <objektart>
                        <wohnung />
                    </objektart>
                    <user_defined_simplefield feldname="objektart_id">2</user_defined_simplefield>
                    <user_defined_simplefield feldname="objektart_name">Wohnung</user_defined_simplefield>
                    <user_defined_anyfield>
                        <ji_kategorie id="4743">Wienerwald</ji_kategorie>
                    </user_defined_anyfield>
                </objektkategorie>
                <titel>DEMOOBJEKT! Luxus Wienblick-Dachgeschosswohnung mit Wintergarten, offenen Kamin, Sauna und
                    Weinkeller
                </titel>
                <dreizeiler></dreizeiler>
                <naehe></naehe>
                <objektbeschreibung>DEMOOBJEKT! Bitte nicht anfragen!</objektbeschreibung>
                <anzahl_zimmer>5</anzahl_zimmer>
                <etage>EG</etage>
                <ort>Wien</ort>
                <plz>1030</plz>
                <preis>0</preis>
                <gesamtmiete />
                <wohnflaeche>269</wohnflaeche>
                <nutzflaeche>269</nutzflaeche>
                <anzahl_terrassen>2</anzahl_terrassen>
                <erstes_bild>https://files.justimmo.at/public/pic/medium/AdlOCzRy51.jpg</erstes_bild>
                <zweites_bild>https://files.justimmo.at/public/pic/medium/AdlOGYKVg_.jpg</zweites_bild>
                <projekt_id>46</projekt_id>
                <status>aktiv</status>
                <status_id>5</status_id>
                <erstellt_am>2016-02-08 14:55:02</erstellt_am>
                <aktualisiert_am>2016-04-19 11:18:59</aktualisiert_am>
            </immobilie>
            <immobilie>
                <id>620582</id>
                <objektnummer>1000003</objektnummer>
                <objektkategorie>
                    <nutzungsart WOHNEN="1" GEWERBE="0" ANLAGE="0" />
                    <vermarktungsart KAUF="0" MIETE_PACHT="1" />
                    <objektart>
                        <wohnung />
                    </objektart>
                    <user_defined_simplefield feldname="objektart_id">2</user_defined_simplefield>
                    <user_defined_simplefield feldname="objektart_name">Wohnung</user_defined_simplefield>
                    <user_defined_anyfield>
                        <ji_kategorie id="4743">Wienerwald</ji_kategorie>
                    </user_defined_anyfield>
                </objektkategorie>
                <titel>DEMOOBJEKT! Luxus Wienblick-Dachgeschosswohnung mit Wintergarten, offenen Kamin, Sauna und
                    Weinkeller
                </titel>
                <dreizeiler></dreizeiler>
                <naehe></naehe>
                <objektbeschreibung>DEMOOBJEKT! Bitte nicht anfragen!</objektbeschreibung>
                <anzahl_zimmer>5</anzahl_zimmer>
                <etage>EG</etage>
                <ort>Wien</ort>
                <plz>1030</plz>
                <preis>0</preis>
                <gesamtmiete />
                <wohnflaeche>269</wohnflaeche>
                <nutzflaeche>269</nutzflaeche>
                <anzahl_terrassen>2</anzahl_terrassen>
                <erstes_bild>https://files.justimmo.at/public/pic/medium/AdlOCzRy51.jpg</erstes_bild>
                <zweites_bild>https://files.justimmo.at/public/pic/medium/AdlOGYKVg_.jpg</zweites_bild>
                <projekt_id>46</projekt_id>
                <status>aktiv</status>
                <status_id>5</status_id>
                <erstellt_am>2016-01-15 11:08:56</erstellt_am>
                <aktualisiert_am>2016-04-19 11:18:59</aktualisiert_am>
            </immobilie>
            <immobilie>
                <id>560649</id>
                <objektnummer>234235</objektnummer>
                <objektkategorie>
                    <nutzungsart WOHNEN="1" GEWERBE="0" ANLAGE="0" />
                    <vermarktungsart KAUF="1" MIETE_PACHT="0" />
                    <objektart>
                        <wohnung />
                    </objektart>
                    <user_defined_simplefield feldname="objektart_id">2</user_defined_simplefield>
                    <user_defined_simplefield feldname="objektart_name">Wohnung</user_defined_simplefield>
                    <user_defined_simplefield feldname="sub_objektart_id">45</user_defined_simplefield>
                    <user_defined_simplefield feldname="sub_objektart_name">Wohnung</user_defined_simplefield>
                    <user_defined_anyfield>
                        <ji_kategorie id="4743">Wienerwald</ji_kategorie>
                    </user_defined_anyfield>
                </objektkategorie>
                <titel>DEMOOBJEKT! Elegantes Büro neben Bristol und Oper</titel>
                <dreizeiler></dreizeiler>
                <naehe></naehe>
                <objektbeschreibung>DEMOOBJEKT! Bitte nicht anfragen</objektbeschreibung>
                <etage>2. KG</etage>
                <hausnummer>2</hausnummer>
                <strasse>Seidlgasse</strasse>
                <ort>Wien</ort>
                <plz>1030</plz>
                <preis>214200</preis>
                <kaufpreis>214200</kaufpreis>
                <nutzflaeche>15</nutzflaeche>
                <grundflaeche>15</grundflaeche>
                <anzahl_balkons>2</anzahl_balkons>
                <balkons_flaeche>12</balkons_flaeche>
                <erstes_bild>https://files.justimmo.at/public/pic/medium/AdlOCzRy51.jpg</erstes_bild>
                <zweites_bild>https://files.justimmo.at/public/pic/medium/AdlOGYKVg_.jpg</zweites_bild>
                <projekt_id>46</projekt_id>
                <status>aktiv</status>
                <status_id>5</status_id>
                <erstellt_am>2015-11-11 16:20:35</erstellt_am>
                <aktualisiert_am>2016-04-19 11:18:59</aktualisiert_am>
            </immobilie>
            <immobilie>
                <id>560556</id>
                <objektnummer>33447</objektnummer>
                <objektkategorie>
                    <nutzungsart WOHNEN="1" GEWERBE="0" ANLAGE="0" />
                    <vermarktungsart KAUF="1" MIETE_PACHT="0" />
                    <objektart>
                        <wohnung />
                    </objektart>
                    <user_defined_simplefield feldname="objektart_id">2</user_defined_simplefield>
                    <user_defined_simplefield feldname="objektart_name">Wohnung</user_defined_simplefield>
                    <user_defined_simplefield feldname="sub_objektart_id">45</user_defined_simplefield>
                    <user_defined_simplefield feldname="sub_objektart_name">Wohnung</user_defined_simplefield>
                    <user_defined_anyfield>
                        <ji_kategorie id="4743">Wienerwald</ji_kategorie>
                    </user_defined_anyfield>
                </objektkategorie>
                <titel>DEMOOBJEKT! Elegantes Büro neben Bristol und Oper</titel>
                <dreizeiler></dreizeiler>
                <naehe></naehe>
                <objektbeschreibung>DEMOOBJEKT! Bitte nicht anfragen!</objektbeschreibung>
                <etage>2. KG</etage>
                <hausnummer>2</hausnummer>
                <strasse>Seidlgasse</strasse>
                <ort>Wien</ort>
                <plz>1030</plz>
                <preis>200000</preis>
                <kaufpreis>200000</kaufpreis>
                <nutzflaeche>15</nutzflaeche>
                <grundflaeche>15</grundflaeche>
                <anzahl_balkons>2</anzahl_balkons>
                <balkons_flaeche>12</balkons_flaeche>
                <erstes_bild>https://files.justimmo.at/public/pic/medium/AdlOCzRy51.jpg</erstes_bild>
                <zweites_bild>https://files.justimmo.at/public/pic/medium/AdlOGYKVg_.jpg</zweites_bild>
                <projekt_id>46</projekt_id>
                <status>aktiv</status>
                <status_id>5</status_id>
                <erstellt_am>2015-11-11 12:32:29</erstellt_am>
                <aktualisiert_am>2016-04-19 11:18:59</aktualisiert_am>
            </immobilie>
            <immobilie>
                <id>66079</id>
                <objektnummer>18</objektnummer>
                <objektkategorie>
                    <nutzungsart WOHNEN="1" GEWERBE="0" ANLAGE="0" />
                    <vermarktungsart KAUF="1" MIETE_PACHT="0" />
                    <objektart>
                        <wohnung />
                    </objektart>
                    <user_defined_simplefield feldname="objektart_id">2</user_defined_simplefield>
                    <user_defined_simplefield feldname="objektart_name">Wohnung</user_defined_simplefield>
                    <user_defined_simplefield feldname="sub_objektart_id">45</user_defined_simplefield>
                    <user_defined_simplefield feldname="sub_objektart_name">Wohnung</user_defined_simplefield>
                    <user_defined_anyfield>
                        <ji_kategorie id="4743">Wienerwald</ji_kategorie>
                    </user_defined_anyfield>
                </objektkategorie>
                <titel>DEMOOBJEKT! Elegantes Büro neben Bristol und Oper</titel>
                <dreizeiler></dreizeiler>
                <naehe></naehe>
                <objektbeschreibung>DEMOOBJEKT! Bitte nicht anfragen!</objektbeschreibung>
                <etage>2. KG</etage>
                <hausnummer>2</hausnummer>
                <strasse>Seidlgasse</strasse>
                <ort>Wien</ort>
                <plz>1030</plz>
                <preis>200000</preis>
                <kaufpreis>200000</kaufpreis>
                <nutzflaeche>15</nutzflaeche>
                <grundflaeche>15</grundflaeche>
                <anzahl_balkons>2</anzahl_balkons>
                <balkons_flaeche>12</balkons_flaeche>
                <erstes_bild>https://files.justimmo.at/public/pic/medium/AdlOCzRy51.jpg</erstes_bild>
                <zweites_bild>https://files.justimmo.at/public/pic/medium/AdlOGYKVg_.jpg</zweites_bild>
                <projekt_id>46</projekt_id>
                <status>aktiv</status>
                <status_id>5</status_id>
                <vermittelt_am>2014-03-02</vermittelt_am>
                <erstellt_am>2012-04-01 18:30:34</erstellt_am>
                <aktualisiert_am>2016-04-19 11:18:59</aktualisiert_am>
            </immobilie>
        </immobilien>
        <erstes_bild>https://files.justimmo.at/public/pic/medium/ACXayjSPLp.jpg</erstes_bild>
    </projekt>
    <!-- ...... -->
</justimmo>

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\Mapper\V1\ProjectMapper;
use Justimmo\Model\ProjectQuery;
use Justimmo\Model\Wrapper\V1\ProjectWrapper;


$api = new JustimmoApi('username', 'password');
$api->setCulture('de');

$mapper  = new ProjectMapper();
$wrapper = new ProjectWrapper($mapper);

$query = new ProjectQuery($api, $wrapper, $mapper);

try {
    $realties = $query
        ->setLimit(15)
        ->find();

    echo sprintf("%d objects<br/><br/>", $realties->count());

    /** @var \Justimmo\Model\Project $realty */
    foreach ($realties as $realty) {
        echo sprintf('oid: %d: %s<br/><br/>', $realty->getId(), $realty->getTitle());
    }

} catch (Throwable $e) {
    echo $e->getMessage();
}

Detail

Returns detailed information of a single project as xml in the same format as project list call.

API

https://api.justimmo.at/rest/v1/projekt/detail?id=123456789&culture=de

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\Mapper\V1\ProjectMapper;
use Justimmo\Model\ProjectQuery;
use Justimmo\Model\Wrapper\V1\ProjectWrapper;


$api = new JustimmoApi('username', 'password');
$api->setCulture('de');

$mapper  = new ProjectMapper();
$wrapper = new ProjectWrapper($mapper);

$query = new ProjectQuery($api, $wrapper, $mapper);
try {
    /** @var \Justimmo\Model\Project $project */
    $project = $query
        ->findPk(123456789);

    var_dump($project);

} catch (Throwable $e) {
    echo $e->getMessage() . "<br/>\n";
}
<?php

// same code like above

try {
    /** @var \Justimmo\Model\Project $project */
    $project = $query
        ->findPk(123456789);

    echo sprintf("%d sub real-estates<br/><br/>", count($project->getRealties()));
    
    /** @var \Justimmo\Model\Realty $realty */
    foreach ($project->getRealties() as $realty) {
        echo sprintf('pid/id: %d/%d (%d): %s<br/><br/>', $realty->getProjectId(), $realty->getId(), $realty->getPropertyNumber(), $realty->getTitle());
    }

} catch (Throwable $e) {
    echo $e->getMessage() . "<br/>\n";
}
<?php

// same code like above

try {
    /** @var \Justimmo\Model\Project $project */
    $project = $query
        ->findPk(123456789);

    // links
    
    /** @var \Justimmo\Model\Attachment $link */
    foreach ($project->getLinks() as $link) {
        var_export($link);
    }

    /** @var \Justimmo\Model\Attachment $attachment */
    foreach ($project->getAttachments() as $attachment) {
        if ($attachment->getType() === 'link') {
            var_export($attachment);
        }
    }

    // pictures
 
    /** @var \Justimmo\Model\Attachment $picture */
    foreach ($project->getPictures() as $picture) {
        print_r($picture);
    }
    
    /** @var \Justimmo\Model\Attachment $attachment */
    foreach ($project->getAttachments() as $attachment) {
        if ($attachment->getType() === 'picture') {
            var_export($attachment);
        }
    }

    // videos

    /** @var \Justimmo\Model\Attachment $video */
    foreach ($project->getVideos() as $video) {
        print_r($video);
    }
    
    /** @var \Justimmo\Model\Attachment $attachment */
    foreach ($project->getAttachments() as $attachment) {
        if ($attachment->getType() === 'video') {
            var_export($attachment);
        }
    }

    // documents

    /** @var \Justimmo\Model\Attachment $document */
    foreach ($project->getDocuments() as $document) {
        print_r($document);
    }
    
    /** @var \Justimmo\Model\Attachment $attachment */
    foreach ($project->getAttachments() as $attachment) {
        if ($attachment->getType() === 'document') {
            var_export($attachment);
        }
    }

} catch (Throwable $e) {
    echo $e->getMessage() . "<br/>\n";
}

Short List

API

https://api.justimmo.at/rest/v1/projekt/projektList

The query-result count element contains information of total hits of the search regardless of given limit parameter.

<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <query-result>
        <count>3</count>
    </query-result>
    <projekt>
        <id>46</id>
        <titel>Demoprojekt in Zentrumsnähe</titel>
    </projekt>
    <projekt>
        <id>51</id>
        <titel>Neubau mitten im dritten</titel>
    </projekt>
    <projekt>
        <id>2065</id>
        <titel></titel>
    </projekt>
</justimmo>

IDs

Returns ids of matching projects as JSON without limit and offset limitations.

API

https://api.justimmo.at/rest/v1/projekt/ids?filter[projekt_status]=building
["123","125","159"]

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\Mapper\V1\ProjectMapper;
use Justimmo\Model\ProjectQuery;
use Justimmo\Model\Wrapper\V1\ProjectWrapper;


$api = new JustimmoApi('username', 'password');
$api->setCulture('de');

$mapper  = new ProjectMapper();
$wrapper = new ProjectWrapper($mapper);

$query = new ProjectQuery($api, $wrapper, $mapper);

try {
    $realtyIds = $query
        ->setLimit(15)
        ->findIds();

    var_dump($realtyIds);

} catch (Throwable $e) {
    echo $e->getMessage();
}

Basic Data

Realty Categories

API

https://api.justimmo.at/rest/v1/objekt/kategorien?alle=1
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <objektkategorie>
        <id>3876</id>
        <name>Topobjekte</name>
        <sortablerank>1</sortablerank>
    </objektkategorie>
</justimmo>

PHP-SDK

<?php
require_once '../vendor/autoload.php';

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\Query\BasicDataQuery;
use Justimmo\Model\Wrapper\V1\BasicDataWrapper;
use Justimmo\Model\Mapper\V1\BasicDataMapper;

try {
    $api = new JustimmoApi('username', 'password');
    $api->setBaseUrl('https://api.justimmo.at/rest');
    $api->setCulture('de');

    $mapper  = new BasicDataMapper();
    $wrapper = new BasicDataWrapper();

    $query = new BasicDataQuery($api, $wrapper, $mapper);

    $categories = $query
        ->all(true)
        ->findRealtyCategories();

    print_r($categories);

    $categories = $query
        ->all(false)
        ->findRealtyCategories();

    print_r($categories);

} catch(Exception $exception) {
    echo $exception->getMessage();
}

Realty Features

API

https://api.justimmo.at/rest/v1/referenz/ausstattungen?culture=en&gruppe=2
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <ausstattung>
        <id>93</id>
        <gruppeid>2</gruppeid>
        <gruppename>Energy source</gruppename>
        <name>air source heat pump</name>
        <gruppencode>befeuerung</gruppencode>
        <code>LUFTWP</code>
    </ausstattung>
    <ausstattung>
        <id>10</id>
        <gruppeid>2</gruppeid>
        <gruppename>Energy source</gruppename>
        <name>alternative energy</name>
        <gruppencode>befeuerung</gruppencode>
        <code>ALTERNATIV</code>
    </ausstattung>
    <ausstattung>
        <id>101</id>
        <gruppeid>2</gruppeid>
        <gruppename>Energy source</gruppename>
        <name>CHP</name>
        <gruppencode>befeuerung</gruppencode>
        <code>BLOCK</code>
    </ausstattung>
    <ausstattung>
        <id>119</id>
        <gruppeid>2</gruppeid>
        <gruppename>Energy source</gruppename>
        <name>coal</name>
        <gruppencode>befeuerung</gruppencode>
        <code>KOHLE</code>
    </ausstattung>
    <ausstattung>
        <id>102</id>
        <gruppeid>2</gruppeid>
        <gruppename>Energy source</gruppename>
        <name>district heating</name>
        <gruppencode>befeuerung</gruppencode>
        <code>FERN</code>
    </ausstattung>
    <ausstattung>
        <id>11</id>
        <gruppeid>2</gruppeid>
        <gruppename>Energy source</gruppename>
        <name>electricity</name>
        <gruppencode>befeuerung</gruppencode>
        <code>ELEKTRO</code>
    </ausstattung>
    <ausstattung>
        <id>13</id>
        <gruppeid>2</gruppeid>
        <gruppename>Energy source</gruppename>
        <name>gas</name>
        <gruppencode>befeuerung</gruppencode>
        <code>GAS</code>
    </ausstattung>
    <ausstattung>
        <id>12</id>
        <gruppeid>2</gruppeid>
        <gruppename>Energy source</gruppename>
        <name>geothermal energy</name>
        <gruppencode>befeuerung</gruppencode>
        <code>ERDWAERME</code>
    </ausstattung>
    <ausstattung>
        <id>117</id>
        <gruppeid>2</gruppeid>
        <gruppename>Energy source</gruppename>
        <name>liquefied gas</name>
        <gruppencode>befeuerung</gruppencode>
        <code>FLUESSIGGAS</code>
    </ausstattung>
    <ausstattung>
        <id>14</id>
        <gruppeid>2</gruppeid>
        <gruppename>Energy source</gruppename>
        <name>oil</name>
        <gruppencode>befeuerung</gruppencode>
        <code>OEL</code>
    </ausstattung>
    <ausstattung>
        <id>94</id>
        <gruppeid>2</gruppeid>
        <gruppename>Energy source</gruppename>
        <name>pellets</name>
        <gruppencode>befeuerung</gruppencode>
        <code>PELLET</code>
    </ausstattung>
    <ausstattung>
        <id>15</id>
        <gruppeid>2</gruppeid>
        <gruppename>Energy source</gruppename>
        <name>solar panels</name>
        <gruppencode>befeuerung</gruppencode>
        <code>SOLAR</code>
    </ausstattung>
    <ausstattung>
        <id>100</id>
        <gruppeid>2</gruppeid>
        <gruppename>Energy source</gruppename>
        <name>water/electric</name>
        <gruppencode>befeuerung</gruppencode>
        <code>WASSER-ELEKTRO</code>
    </ausstattung>
    <ausstattung>
        <id>118</id>
        <gruppeid>2</gruppeid>
        <gruppename>Energy source</gruppename>
        <name>wood</name>
        <gruppencode>befeuerung</gruppencode>
        <code>HOLZ</code>
    </ausstattung>
</justimmo>

PHP-SDK

It is not supported by our PHP-SDK.

Realty Types

API

https://api.justimmo.at/rest/v1/objekt/objektarten
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <objektart>
        <id>5</id>
        <name>Büro / Praxis</name>
        <key>buero_praxen</key>
        <attributename>buero_typ</attributename>
    </objektart>
    <objektart>
        <id>3</id>
        <name>Haus</name>
        <key>haus</key>
        <attributename>haustyp</attributename>
    </objektart>
    <objektart>
        <id>2</id>
        <name>Wohnung</name>
        <key>wohnung</key>
        <attributename>wohnungtyp</attributename>
    </objektart>
</justimmo>

PHP-SDK

<?php
require_once '../vendor/autoload.php';

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\Query\BasicDataQuery;
use Justimmo\Model\Wrapper\V1\BasicDataWrapper;
use Justimmo\Model\Mapper\V1\BasicDataMapper;

try {
    $api = new JustimmoApi('username', 'password');
    $api->setBaseUrl('https://api.justimmo.at/rest');
    $api->setCulture('de');

    $mapper  = new BasicDataMapper();
    $wrapper = new BasicDataWrapper();

    $query = new BasicDataQuery($api, $wrapper, $mapper);

    $realtyTypes = $query
        ->all(true)
        ->findRealtyTypes();

    print_r($realtyTypes);

    $realtyTypes = $query
        ->all(false)
        ->findRealtyTypes();

    print_r($realtyTypes);

} catch(Exception $exception) {
    echo $exception->getMessage();
}

Countries

API

https://api.justimmo.at/rest/v1/objekt/laender
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <land>
        <id>17</id>
        <name>Österreich</name>
        <iso2>AT</iso2>
        <iso3>AUT</iso3>
    </land>
    <land>
        <id>216</id>
        <name>Thailand</name>
        <iso2>TH</iso2>
        <iso3>THA</iso3>
    </land>
</justimmo>

PHP-SDK

<?php
require_once '../vendor/autoload.php';

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\Query\BasicDataQuery;
use Justimmo\Model\Wrapper\V1\BasicDataWrapper;
use Justimmo\Model\Mapper\V1\BasicDataMapper;

try {
    $api = new JustimmoApi('username', 'password');
    $api->setBaseUrl('https://api.justimmo.at/rest');
    $api->setCulture('de');

    $mapper  = new BasicDataMapper();
    $wrapper = new BasicDataWrapper();

    $query = new BasicDataQuery($api, $wrapper, $mapper);

    $countries = $query
        ->all(false)
        ->findCountries();

    var_dump($countries);

    $countries = $query
        ->all(true)
        ->findCountries();

    var_dump($countries);

} catch(Exception $exception) {
    echo $exception->getMessage();
}

Federal States

All federal states of austria

API

https://api.justimmo.at/rest/v1/objekt/bundeslaender?land=AT&alle=1
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <bundesland>
        <id>126</id>
        <name>Burgenland</name>
        <landid>17</landid>
        <fipscode>01</fipscode>
        <iso31662code>AT-1</iso31662code>
    </bundesland>
    <bundesland>
        <id>127</id>
        <name>Kärnten</name>
        <landid>17</landid>
        <fipscode>02</fipscode>
        <iso31662code>AT-2</iso31662code>
    </bundesland>
    <!-- .... -->
</justimmo>

PHP-SDK

<?php
require_once '../vendor/autoload.php';

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\Query\BasicDataQuery;
use Justimmo\Model\Wrapper\V1\BasicDataWrapper;
use Justimmo\Model\Mapper\V1\BasicDataMapper;

try {
    $api = new JustimmoApi('username', 'password');
    $api->setBaseUrl('https://api.justimmo.at/rest');
    $api->setCulture('de');

    $mapper  = new BasicDataMapper();
    $wrapper = new BasicDataWrapper();

    $query = new BasicDataQuery($api, $wrapper, $mapper);

    $states = $query
        ->all(false)
        ->filterByCountry('AT')
        ->findFederalStates();

    var_dump($states);

    $states = $query
        ->all(true)
        ->filterByCountry('AT')
        ->findFederalStates();

    var_dump($states);

} catch(Exception $exception) {
    echo $exception->getMessage();
}

Regions

All regions of Vienna

API

https://api.justimmo.at/rest/v1/objekt/regionen?land=AT&bundesland=134&alle=1
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <region>
        <id>39</id>
        <name>1., Innere Stadt</name>
    </region>
    <region>
        <id>58</id>
        <name>2., Leopoldstadt</name>
    </region>
    <!-- .... -->
</justimmo>

PHP-SDK

<?php
require_once '../vendor/autoload.php';

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\Query\BasicDataQuery;
use Justimmo\Model\Wrapper\V1\BasicDataWrapper;
use Justimmo\Model\Mapper\V1\BasicDataMapper;

try {
    $api = new JustimmoApi('username', 'password');
    $api->setBaseUrl('https://api.justimmo.at/rest');
    $api->setCulture('de');

    $mapper  = new BasicDataMapper();
    $wrapper = new BasicDataWrapper();

    $query = new BasicDataQuery($api, $wrapper, $mapper);

    $regions = $query
        ->all(false)
        ->filterByCountry('AT')
        ->filterByFederalState(134)
        ->findRegions();

    var_dump($regions);

    $regions = $query
        ->all(true)
        ->filterByCountry('AT')
        ->filterByFederalState(134)
        ->findRegions();

    var_dump($regions);

} catch(Exception $exception) {
    echo $exception->getMessage();
}

Zip Codes

All zip codes with their city names of Tirol

API

https://api.justimmo.at/rest/v1/objekt/plzsUndOrte?land=AT&bundesland=132&alle=1
<?xml version="1.0" encoding="UTF-8"?>
<justimmo>
    <postleitzahl>
        <id>567</id>
        <landid>17</landid>
        <regionid>40</regionid>
        <plz>6020</plz>
        <ort>Innsbruck</ort>
        <bundeslandid>132</bundeslandid>
    </postleitzahl>
    <postleitzahl>
        <id>462</id>
        <landid>17</landid>
        <regionid>41</regionid>
        <plz>6060</plz>
        <ort>Hall in Tirol</ort>
        <bundeslandid>132</bundeslandid>
    </postleitzahl>
    <postleitzahl>
        <id>465</id>
        <landid>17</landid>
        <regionid>41</regionid>
        <plz>6063</plz>
        <ort>Rum</ort>
        <bundeslandid>132</bundeslandid>
    </postleitzahl>
    <!-- .... -->
</justimmo>

PHP-SDK

<?php
require_once '../vendor/autoload.php';

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\Query\BasicDataQuery;
use Justimmo\Model\Wrapper\V1\BasicDataWrapper;
use Justimmo\Model\Mapper\V1\BasicDataMapper;

try {
    $api = new JustimmoApi('api-6389', 'Ins3j1bBla1');
    $api->setBaseUrl('https://api.just.immo/rest');
    $api->setCulture('de');
    //$api->setCurlOption(CURLOPT_CONNECTTIMEOUT_MS, 20000);

    $mapper  = new BasicDataMapper();
    $wrapper = new BasicDataWrapper();

    $query = new BasicDataQuery($api, $wrapper, $mapper);

    $zips = $query
        ->all(false)
        ->filterByCountry('AT')
        ->filterByFederalState(132)
        ->findZipCodes();

    print_r($zips);

    $zips = $query
        ->all(true)
        ->filterByCountry('AT')
        ->filterByFederalState(132)
        ->findZipCodes();

    print_r($zips);

} catch(Exception $exception) {
    echo $exception->getMessage();
}

Filter

By area

Filtering by minimum / maximum value of the area. Multiple values are supported by using an array notation.

API

sort_flaeche / sort_flaeche_von / sort_flaeche_bis

https://api.justimmo.at/rest/v1/objekt/list?filter[sort_flaeche_von]=87&filter[sort_flaeche_bis]=120&limit=3&showDetails=1&culture=de

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query
    ->filterByArea(['min' => 87, 'max' => 120])
    ->setLimit(3)
    ->find();

/** @var \Justimmo\Model\Realty $realty */
foreach ($realties as $realty) {
    var_dump($realty);
    //....
}

By balcony number

Filtering the real-estates by minimum / maximum number of the balconies.

API

anzahl_balkons_von / anzahl_balkons_bis

https://api.justimmo.at/rest/v1/objekt/list?filter[anzahl_balkons_von]=2&filter[anzahl_balkons_bis]=3&limit=3&showDetails=1&culture=de

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query
    ->filterByBalconyCount(['min' => 2, 'max' => 3])
    ->setLimit(3)
    ->find();

/** @var \Justimmo\Model\Realty $realty */
foreach ($realties as $realty) {
    var_dump($realty);
    //....
}

By bathroom number

Filtering the real-estates by minimum / maximum number of the bathrooms.

API

anzahl_badezimmer_von / anzahl_badezimmer_bis

https://api.justimmo.at/rest/v1/objekt/list?filter[anzahl_badezimmer_von]=2&filter[anzahl_badezimmer_bis]=4&limit=3&showDetails=1&culture=de

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query
    ->filterByBathRoomCount(['min' => 2, 'max' => 4])
    ->setLimit(3)
    ->find();

/** @var \Justimmo\Model\Realty $realty */
foreach ($realties as $realty) {
    var_dump($realty);
    //....
}

By cellar number

Filtering the real-estates by minimum / maximum number of the cellars.

API

anzahl_keller_von / anzahl_keller_bis

https://api.justimmo.at/rest/v1/objekt/list?filter[anzahl_keller_von]=1&filter[anzahl_keller_von]=3&limit=3&showDetails=1&culture=de

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query
    ->filterByCellarCount(['min' => 1, 'max' => 3])
    ->setLimit(3)
    ->find();

/** @var \Justimmo\Model\Realty $realty */
foreach ($realties as $realty) {
    var_dump($realty);
    //....
}

By condition

Filtering the real-estates by condition. The id of the conditions.

API

zustand_id

https://api.justimmo.at/rest/v1/objekt/list?filter[zustand_id]=3&limit=3&showDetails=1&culture=de

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query
    ->filterByCondition(3)
    ->setLimit(3)
    ->find();

/** @var \Justimmo\Model\Realty $realty */
foreach ($realties as $realty) {
    var_dump($realty);
    //....
}

By disability access

Filtering the real-estates by disability access.

API

barrierefrei

https://api.justimmo.at/rest/v1/objekt/list?filter[barrierefrei]=1&limit=3&showDetails=1&culture=de

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query
    ->filterByDisabilityAccess(true)
    ->setLimit(3)
    ->find();

/** @var \Justimmo\Model\Realty $realty */
foreach ($realties as $realty) {
    var_dump($realty);
    //....
}

By equipment

Filtering the real-estates by equipments. The IDs of the features are listed on the linked page. Multiple values are supported by using an array notation.

API

objekt_ausstattung_list

https://api.justimmo.at/rest/v1/objekt/list?filter[objekt_ausstattung_list][]=175&filter[objekt_ausstattung_list][]=176&filter[objekt_ausstattung_list][]=177&filter[objekt_ausstattung_list][]=942&filter[objekt_ausstattung_list][]=945&limit=3&showDetails=1&culture=de

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query
    ->filterByEquipment([175,176,177,942,945])
    ->setLimit(3)
    ->find();

/** @var \Justimmo\Model\Realty $realty */
foreach ($realties as $realty) {
    var_dump($realty);
    //....
}

By marketing type

Set miete to 1 to search for real-estates available for rent. Set kauf to 1 to search for real-estates available for purchase.

API

miete / kauf

https://api.justimmo.at/rest/v1/objekt/list?filter[kauf]=1&filter[miete]=0&limit=3&showDetails=1&culture=de

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query
    ->filterByBuy(1)
    ->filterByRent(0)
    ->setLimit(3)
    ->find();

/** @var \Justimmo\Model\Realty $realty */
foreach ($realties as $realty) {
    var_dump($realty);
    //....
}

By price

Filtering by min / max price. Depending on the type, it is the rental fee or the purchase price.

API

preis / preis_von / preis_bis

https://api.justimmo.at/rest/v1/objekt/list?filter[preis_von]=100000&filter[preis_bis]=500000&orderby=preis&ordertype=desc&limit=3&showDetails=1&culture=de

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query
    ->filterByPrice(['min' => 100000, 'max' => 500000])
    ->orderByPrice('desc')
    ->setLimit(3)
    ->find();

/** @var \Justimmo\Model\Realty $realty */
foreach ($realties as $realty) {
    var_dump($realty);
    //....
}

By property number

Filtering by the property number.

API

objektnummer / objektnummer_von / objektnummer_bis

https://api.justimmo.at/rest/v1/objekt/list?filter[objektnummer]=43156&limit=3&showDetails=1&culture=de
https://api.justimmo.at/rest/v1/objekt/list?filter[objektnummer_von]=43000&filter[objektnummer_bis]=44000&limit=3&showDetails=1&culture=de

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query
    ->filterByPropertyNumber(['min' => 43000, 'max' => 44000])
    ->setLimit(3)
    ->find();

$realties = $query
    ->filterByPropertyNumber(43156)
    ->setLimit(3)
    ->find();

/** @var \Justimmo\Model\Realty $realty */
foreach ($realties as $realty) {
    var_dump($realty);
    //....
}

By realty category

Filtering by the name of the category assigned to the real-estates.

API

tag_name

https://api.justimmo.at/rest/v1/objekt/list?filter[tag_name][]=Topobjekte&filter[tag_name][]=Penthouse&limit=3&showDetails=1&culture=de

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query
    ->filterByRealtyCategory(['Topobjekte', 'Penthouse'])
    ->setLimit(3)
    ->find();

/** @var \Justimmo\Model\Realty $realty */
foreach ($realties as $realty) {
    var_export($realty->getCategories());
    //....
}

By realty system type

Filtering by the realty system types.

API

realty_type

https://api.justimmo.at/rest/v1/objekt/list?filter[realty_type]=simple&limit=3&showDetails=1&culture=de

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query
    ->filterByRealtySystemType('simple')
    ->setLimit(3)
    ->find();

/** @var \Justimmo\Model\Realty $realty */
foreach ($realties as $realty) {
    echo sprintf("id: %d (%s)<br/>", $realty->getId(), $realty->getRealtySystemType());
    //....
}

By realty type ID

Filtering by main realty type. Multiple values are supported by using an array notation.

API

objektart_id

https://api.justimmo.at/rest/v1/objekt/list?filter[objektart_id][]=1&filter[objektart_id][]=2&limit=3&showDetails=1&culture=de

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query
    ->filterByRealtyTypeId([1,2])
    ->setLimit(3)
    ->find();

/** @var \Justimmo\Model\Realty $realty */
foreach ($realties as $realty) {
    var_dump($realty);
    //....
}

By room number

Filtering by the number of the rooms. Multiple values are supported by using an array notation.

API

zimmer / zimmer_von / zimmer_bis

https://api.justimmo.at/rest/v1/objekt/list?filter[zimmer]=2&limit=3&showDetails=1&culture=de
https://api.justimmo.at/rest/v1/objekt/list?filter[zimmer_von]=1&filter[zimmer_bis]=3&limit=3&showDetails=1&culture=de

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query
    ->filterByRooms(['min' => 1, 'max' => 3])
    ->setLimit(3)
    ->find();

$realties = $query
    ->filterByRooms(2)
    ->setLimit(3)
    ->find();

/** @var \Justimmo\Model\Realty $realty */
foreach ($realties as $realty) {
    var_dump($realty);
    //....
}

By status ID

Filtering by realty status. Multiple values are supported by using an array notation.

API

objekt_status_id

https://api.justimmo.at/rest/v1/objekt/list?filter[objekt_status_id]=5&showDetails=1&culture=de

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query
    ->filterByStatusId(5)
    ->setLimit(3)
    ->find();

/** @var \Justimmo\Model\Realty $realty */
foreach ($realties as $realty) {
    var_dump($realty);
    //....
}

By style of building

Filtering by old or new buildings. The possible building styles are available on the linked page.

API

bauart_id

https://api.justimmo.at/rest/v1/objekt/list?filter[bauart_id]=2&showDetails=1&culture=de

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query
    ->filterByStyleOfBuildingId(2)
    ->setLimit(3)
    ->find();

/** @var \Justimmo\Model\Realty $realty */
foreach ($realties as $realty) {
    var_dump($realty);
    //....
}

By sub-realty type ID

Filtering by sub realty type. Multiple values are supported by using an array notation.

API

subobjektart_id

https://api.justimmo.at/rest/v1/objekt/list?filter[subobjektart_id][]=45&filter[subobjektart_id][]=49&limit=3&showDetails=1&culture=de

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query
    ->filterBySubRealtyTypeId([45,49])
    ->setLimit(3)
    ->find();

/** @var \Justimmo\Model\Realty $realty */
foreach ($realties as $realty) {
    var_dump($realty);
    //....
}

By last updated time

Filtering by the time of the last modification.

API

aktualisiert_am_von / aktualisiert_am_bis

https://api.justimmo.at/rest/v1/objekt/list?filter[aktualisiert_am_von]=2021-04-01+00%3A00%3A00&filter[aktualisiert_am_bis]=2021-04-30+12%3A00%3A00&orderby=updated_at&ordertype=asc&limit=3&showDetails=1&culture=de

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query
    ->filterByUpdatedAt(['min' => '2021-04-01 00:00:00', 'max' => '2021/04/30 12:00:00'])
    ->orderByUpdatedAt('asc')
    ->setLimit(3)
    ->find();

/** @var \Justimmo\Model\Realty $realty */
foreach ($realties as $realty) {
    echo sprintf("id: %d (%s)<br/>", $realty->getId(), $realty->getUpdatedAt());
    //....
}

By ZIP code

Filtering by zip code. Multiple values are supported by using an array notation.

API

plz

https://api.justimmo.at/rest/v1/objekt/list?filter[plz]=1160&limit=3&showDetails=1&culture=de
https://api.justimmo.at/rest/v1/objekt/list?filter[plz][]=1070&filter[plz][]=1160&limit=3&showDetails=1&culture=de

PHP-SDK

<?php

require __DIR__ . "/../vendor/autoload.php";

use Justimmo\Api\JustimmoApi;
use Justimmo\Model\RealtyQuery;
use Justimmo\Model\Wrapper\V1\RealtyWrapper;
use Justimmo\Model\Mapper\V1\RealtyMapper;

$api = new JustimmoApi('username', 'password');
$api->setBaseUrl('https://api.justimmo.at/rest');
$api->setCulture('de');

$mapper  = new RealtyMapper();
$wrapper = new RealtyWrapper($mapper);

$query = new RealtyQuery($api, $wrapper, $mapper);
$realties = $query
    ->filterByZipCode('1160')
    ->setLimit(3)
    ->find();

$realties = $query
    ->filterByZipCode(['1070', '1160'])
    ->setLimit(3)
    ->find();

/** @var \Justimmo\Model\Realty $realty */
foreach ($realties as $realty) {
    echo $realty->getZipCode() . '<br/>';
    //....
}

Wordpress

Sending inquiry in E-mail

Sending inquiry attached to an E-mail from WordPress

It is a very simple 1 file example. You have to adjust it regarding your form, webhooks and your application.

  1. Install these packages with composer:
$ composer require league/uri
$ composer require league/uri-components
$ composer require symfony/mailer
$ composer require symfony/google-mailer
  1. Create a new file in your WP root directory called justimmo_inquiry.php with the following content:
<?php

require_once __DIR__ . '/../vendor/autoload.php';

use League\Uri\Components\Query;
use League\Uri\UriTemplate;
use Symfony\Component\Mailer\Mailer;
use Symfony\Component\Mailer\Transport;
use Symfony\Component\Mime\Email;


// this email address is defined by Justimmo
$feedbackEmail = 'ask-it-from-the-support@muster-justimmo.at';

// this is the folder where the logic saves the generated XML files
// if there were any issues with the sending then you can send them later again
$feedbackXMLFilesFolderPath = __DIR__ . '/../openimmo_feedbacks/';

// you need to use a WP webhook to pass the data from the Contact Form to this logic
// for example: https://musterimmo.at/justimmo_inquiry.php?realtyId=999999999&salutationId=1&title=Dr.&firstName=John&lastName=Doe&...
// get the arguments from the url that you passed through your local WP webhook - in this example we use League\Uri packages 

$template = 'https://musterimmo.at/justimmo_inquiry.php{?realtyOoId,salutation,title,firstName,lastName,email,message,phone,fax,mobile,street,zipCode,city,country,categories}';

$uriTemplate = new UriTemplate($template, []);
$uri = $uriTemplate->expand(getUrlQueryParameters());

$query = Query::createFromRFC3986($uri->getQuery(), '&');

$realtyOoId = $query->params('realtyOoId'); // it has to be the same like in Justimmo: OBGC2................
$salutation = $query->params('salutation');
$title      = $query->params('title');
$firstName  = $query->params('firstName');
$lastName   = $query->params('lastName');
$email      = $query->params('email');
$message    = $query->params('message');
$phone      = $query->params('phone');
$fax        = $query->params('fax');
$mobile     = $query->params('mobile');
$street     = $query->params('street');
$zipCode    = $query->params('zipCode');
$city       = $query->params('city');
$country    = $query->params('country');
//$categories = $query->params('categories');

// don't send the inquiry without these mandatory data!
if ($realtyId === null || $email === null || $message === null) {
    die('invalid request');
}

// don't forget to clean up and validate the values before you add them to the XML!

// acquire the other necessary variables from your database

$senderName   = 'Max Musterman Immobilien';
$openImmoAnid = 'ABGC2................'; // you can get it from Justimmo support
$date         = date('Y-m-d');
$tenantId     = 99999; // optional

$portalId     = 99999; // optional
$providerId   = '9999_OBGC2................';
$exposeUrl    = 'https://musterimmo.at/immobilien/999/expose';
$description  = 'Schöne Wohnung mit Potenzial';


// build the XML. It has to be a valid Openimmo feedback XML

$xml = new SimpleXMLElement('<?xml version="1.0" encoding="UTF-8"?><openimmo_feedback/>');

$xml->addChild('version', '1.2.5');

$sender = $xml->addChild('sender');
$sender->addChild('name', $senderName);
$sender->addChild('openimmo_anid', $openImmoAnid);
$sender->addChild('datum', $date);
$sender->addChild('makler_id', $tenantId);

$object = $xml->addChild('objekt');
$object->addChild('portal_unique_id', $portalId);
$object->addChild('oobj_id', $realtyOoId);
$object->addChild('anbieter_id', $providerId);
$object->addChild('expose_url', $exposeUrl);
$object->addChild('bezeichnung', $description);

$contact = $object->addChild('interessent');
$contact->addChild('anrede', $salutation);
$contact->addChild('vorname', $firstName);
$contact->addChild('nachname', $lastName);
$contact->addChild('strasse', $street);
$contact->addChild('plz', $zipCode);
$contact->addChild('ort', $city);
$contact->addChild('email', $email);
$contact->addChild('tel', $phone);
$contact->addChild('fax', $fax);
$contact->addChild('mobil', $mobile);
$contact->addChild('anfrage', $message);


// save the XML on your server with unique naming
$feedbackFileName = date('Y-m-d-His') . '-' . $objectOpenimmoId . '.xml';
$feedbackFilePath = $feedbackXMLFilesFolderPath . $feedbackFileName;
$xml->saveXML($feedbackFilePath);


// send the feedback attached to an email

// in this example we used Symfony Mailer: https://symfony.com/doc/current/mailer.html
$email = (new Email())
    ->from('noreply@musterimmo.at')
    ->to($feedbackEmail)
    //->cc('oi-feedbacks@musterimmo.at') // if you want to get a copy
    ->subject('Musterimmo-Anfrage an OpenImmo Objekt #' . $objectOpenimmoId)
    ->text(strip_tags($message))
    ->html($message);

// attach the XML
$email
    ->attachFromPath($feedbackFilePath);

// don't forget to add the 'Envelope-to' tag to the headers!
$email
    ->getHeaders()
        ->addTextHeader('Envelope-to', $feedbackEmail);

// setup the transport and the mailer

$transport = Transport::fromDsn('smtp://localhost:1025');
//$transport = Transport::fromDsn('gmail+smtp://USERNAME:PASSWORD@default');

$mailer = new Mailer($transport);

$mailer->send($email);

exit();


/**
 * it is just a very simple example, and it is not secure to use it on live server!!!
 *
 * @return array
 */
function getUrlQueryParameters(): array
{
    $uri = $_SERVER['REQUEST_URI'];

    parse_str(parse_url($uri, PHP_URL_QUERY), $queryArray);

    $queryArray = array_map('trim', $queryArray);

    return array_filter($queryArray, fn($value) => !is_null($value) && $value !== '');
}

The XML logic above will result an output like this

<?xml version="1.0" encoding="UTF-8"?>
<openimmo_feedback>
    <version>1.2.5</version>
    <sender>
        <name>Max Musterman Immobilien</name>
        <openimmo_anid>ABGC2................</openimmo_anid>
        <datum>2022-01-04</datum>
        <makler_id>9999</makler_id>
    </sender>
    <objekt>
        <portal_unique_id>9999</portal_unique_id>
        <oobj_id>OBGC2................</oobj_id>
        <anbieter_id>999_OBGC2................</anbieter_id>
        <expose_url>https://musterimmo.at/immobilien/999/expose</expose_url>
        <bezeichnung>Schöne Wohnung mit Potenzial</bezeichnung>
        <interessent>
            <anrede />
            <vorname>Max</vorname>
            <nachname>Mustermann</nachname>
            <strasse>Hauptstrasse</strasse>
            <plz>1111</plz>
            <ort>Wien</ort>
            <email>max@musterimmo.at</email>
            <tel />
            <fax />
            <mobil>4365555555555</mobil>
            <anfrage>Ich will folgendes über das Objekt wissen..</anfrage>
        </interessent>
    </objekt>
</openimmo_feedback>

and the generated email looks like this

From: noreply@musterimmo.at
To: ask-it-from-the-support@muster-justimmo.at
Subject: Musterimmo-Anfrage an OpenImmo Objekt #OBGC2................
Envelope-to: ask-it-from-the-support@muster-justimmo.at
Message-ID: <11635acb69e2ef0b00908fffc53defef@musterimmo.at>
MIME-Version: 1.0
Date: Wed, 05 Jan 2022 18:13:51 +0100
Content-Type: multipart/mixed; boundary=KRdavuDN

--KRdavuDN
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Ich will folgendes =C3=BCber das Objekt wissen..
--KRdavuDN
Content-Type: application/xml;
 name=2022-01-05-181351-OBGC2.................xml
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
 name=2022-01-05-181351-OBGC2.................xml;
 filename=2022-01-05-181351-OBGC2.................xml

PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPG9wZW5pbW1vX2ZlZWRiYWNr
Pjx2ZXJzaW9uPjEuMi41PC92ZXJzaW9uPjxzZW5kZXI+PG5hbWU+TWF4IE11c3Rlcm1hbiBJbW1v
YmlsaWVuPC9uYW1lPjxvcGVuaW1tb19hbmlkPkFCR0MyLi4uLi4uLi4uLi4uLi4uLjwvb3Blbmlt
bW9fYW5pZD48ZGF0dW0+MjAyMi0wMS0wNTwvZGF0dW0+PG1ha2xlcl9pZD45OTk5PC9tYWtsZXJf
aWQ+PC9zZW5kZXI+PG9iamVrdD48cG9ydGFsX3VuaXF1ZV9pZD45OTk5PC9wb3J0YWxfdW5pcXVl
X2lkPjxvb2JqX2lkPk9CR0MyLi4uLi4uLi4uLi4uLi4uLjwvb29ial9pZD48YW5iaWV0ZXJfaWQ+
OTk5X09CR0MyLi4uLi4uLi4uLi4uLi4uLjwvYW5iaWV0ZXJfaWQ+PGV4cG9zZV91cmw+aHR0cHM6
Ly9tdXN0ZXJpbW1vLmF0L2ltbW9iaWxpZW4vOTk5L2V4cG9zZTwvZXhwb3NlX3VybD48YmV6ZWlj
aG51bmc+U2Now7ZuZSBXb2hudW5nIG1pdCBQb3RlbnppYWw8L2JlemVpY2hudW5nPjxpbnRlcmVz
c2VudD48YW5yZWRlLz48dm9ybmFtZT5NYXg8L3Zvcm5hbWU+PG5hY2huYW1lPk11c3Rlcm1hbm48
L25hY2huYW1lPjxzdHJhc3NlPkhhdXB0c3RyYXNzZTwvc3RyYXNzZT48cGx6PjExMTE8L3Bsej48
b3J0PldpZW48L29ydD48ZW1haWw+bWF4QG11c3RlcmltbW8uYXQ8L2VtYWlsPjx0ZWwvPjxmYXgv
Pjxtb2JpbD40MzY1NTU1NTU1NTU1PC9tb2JpbD48YW5mcmFnZT5JY2ggd2lsbCBmb2xnZW5kZXMg
w7xiZXIgZGFzIE9iamVrdCB3aXNzZW4uLjwvYW5mcmFnZT48L2ludGVyZXNzZW50Pjwvb2JqZWt0
Pjwvb3BlbmltbW9fZmVlZGJhY2s+Cg==
--KRdavuDN--

Sending inquiry with Justimmo PHP-SDK

Sending inquiry using Justimmo PHP-SDK through local WordPress webhook

  1. Install Justimmo PHP-SDK with composer:
$ composer require justimmo/php-sdk "1.0.*"
  1. Create a new file in your WP root directory called justimmo_inquiry.php with the following content
<?php

require_once __DIR__ . '/../vendor/autoload.php';

use Justimmo\Request\RealtyInquiryRequest;
use Justimmo\Model\Mapper\V1\RealtyInquiryMapper;

// get the arguments from the url that you passed through your local WP webhook
// https://musterimmo.at/justimmo_inquiry.php?realtyId=999999999&salutationId=1&title=Dr.&firstName=John&lastName=Doe&...

$realtyId     = get_query_var('realtyId', null);
$salutationId = get_query_var('salutationId', '');
$title        = get_query_var('title', '');
$firstName    = get_query_var('firstName', '');
$lastName     = get_query_var('lastName', '');
$email        = get_query_var('email', null);
$message      = get_query_var('message', null);
$phone        = get_query_var('phone', '');
$street       = get_query_var('street', '');
$zipCode      = get_query_var('zipCode', '');
$city         = get_query_var('city', '');
$country      = get_query_var('country', '');
$categories   = get_query_var('categories', '');

if ($realtyId === null || $email === null || $message === null) {
    die('invalid request');
}


$api = new \Justimmo\Api\JustimmoApi('justimmo_export_feed_username', 'password');

$rq = new RealtyInquiryRequest($api, new RealtyInquiryMapper());
$rq->setRealtyId($realtyId)
    ->setSalutationId($salutationId)
    ->setTitle($title)
    ->setFirstName($firstName)
    ->setLastName($lastName)
    ->setEmail($email)
    ->setMessage($message)
    ->setPhone($phone)
    ->setStreet($street)
    ->setZipCode($zipCode)
    ->setCity($city)
    ->setCountry($country)
    ->setCategory($categories)
    ->send();