Download OpenAPI specification:
Integration der REST API für Immobilienbewertungen.
Aufruf erfolgt mittels Authentifizierung mit dem zur Verfügung gestellten API-Key über den X-API-Key Header.
Alle erfolgreichen Responses haben die folgende Struktur: status, code, message, data.
Rate-Limits (pro API-Key; alle Zeitfenster einer Regel gelten gleichzeitig):
| Regel | 60 Sekunden | 1 Stunde | 1 Tag | Endpunkte |
|---|---|---|---|---|
| Standard (Lesen) | max. 180 | max. 2000 | max. 10000 | GET /bewertung, GET /bewertungen |
| Schreiben | max. 60 | max. 300 | max. 1000 | POST /bewertung, POST /bewertung/upload |
| max. 3 | max. 30 | max. 100 | GET /bewertung/pdf |
Bei Überschreitung wird HTTP 429 zurückgegeben.
Gleichzeitigkeit: max. 3 gleichzeitige Requests pro API-Key. Nach 60 Sekunden wird ein laufender API-Aufruf als abgelaufen betrachtet und der Counter zurückgesetzt.
Legt eine neue Immobilienbewertung an.
Alle über die API angelegten Bewertungen erscheinen in Ihrem Immowert123-Konto unter „offene Bewertungen“ und werden mit „API“ markiert.
API-Limits: Es können maximal 20 Bewertungen über die API angelegt bzw. importiert werden. Um dieses Limit wieder freizugeben, müssen die Bewertungen anschließend manuell im Immowert123-Konto vervollständigt und abgeschlossen oder alternativ gelöscht werden. Jede abgeschlossene Bewertung reduziert das gebuchte Immowert123-Kontingent um 1 und zählt wie eine normal über die Plattform getätigte Bewertung.
| immobilienart required | string Enum: "haus" "wohnung" "grundstueck" Art der zu bewertenden Immobilie |
| bewertungsverfahren required | string Enum: "sachwertverfahren" "vergleichswertverfahren" "ertragswertverfahren" Verfahren zur Bewertung der Immobilie |
required | object (Adresse) Adress- und Standortdaten der Immobilie |
object (Auftraggeber) Daten des Auftraggebers der Bewertung | |
object (Grundbuch) Grundbuchdaten der Immobilie | |
Array of objects (BodenFlaeche) Bodenflächen des Grundstücks | |
Array of objects (Gebaeude) |
{- "immobilienart": "haus",
- "bewertungsverfahren": "sachwertverfahren",
- "adresse": {
- "strasse": "Siebenhügelstraße",
- "hausnummer": "107",
- "stiege": "2",
- "tuer": "1",
- "plz": 9020,
- "ort": "Klagenfurt",
- "lat": 46.616667,
- "lon": 14.266667
}, - "auftraggeber": {
- "anrede": "Herr",
- "titel": "Dr.",
- "vorname": "Max",
- "nachname": "Mustermann",
- "eigene_anschrift": "Firma Haus und Hof GmbH",
- "strasse": "Siebenhügelstraße",
- "hausnummer": "107",
- "stiege": "2",
- "tuer": "1",
- "plz": 9020,
- "ort": "Klagenfurt"
}, - "grundbuch": {
- "katastralgemeinde": 72195,
- "grundstuecksnummer": "180/2",
- "tagebuchzahl": "254",
- "einlagezahl": "16-2",
- "eigentuemer": [
- {
- "anteil": "1/2",
- "name": "Max Mustermann",
- "adresse": "Bahnhofstraße 5, 9020 Klagenfurt",
- "geburtsdatum": "1980-03-25"
}, - {
- "anteil": "1/2",
- "name": "Kim Musterfrau",
- "adresse": "Villacherstraße 45, 9020 Klagenfurt",
- "geburtsdatum": "1985-01-15"
}
]
}, - "boden": [
- {
- "typ": "baureifes-land",
- "flaeche": 1000,
- "grundstuecksnummer": "145/1",
- "beschreibung": "Beschreibung der Grundstücksfläche"
}
], - "gebaeude": [
- {
- "bezeichnung": "Landhaus mit denkmalgeschützter Fassade",
- "beschreibung": "Beschreibung des Gebäudes",
- "ausstattungsbeschreibung": "Detaillierte Ausstattungsbeschreibung des Gebäudes",
- "baujahr": 2020,
- "baujahr_fiktiv": 0,
- "altersabwertungsmethode": "linear",
- "nutzungsdauer": 80,
- "flaechen": [
- {
- "flaeche": 2020,
- "typ": "wohnflaeche",
- "nettomiete_qm": 18.5,
- "nettomiete": 1000
}
], - "energiewerte": {
- "hwb": 165.2,
- "peb": 411.5,
- "co2": 99.4,
- "fgee": 2.59,
- "gueltig_bis": "2030-06-01"
}
}
]
}{- "status": "success",
- "code": 201,
- "message": "Bewertung erfolgreich angelegt",
- "data": {
- "referenz_nr": "6A0F060D65A9E",
- "kg_nr": 12345,
- "katastralgemeinde": "Klagenfurt"
}
}Liefert eine einzelne Immobilienbewertung als vollständiges JSON-Objekt.
Die Identifikation erfolgt über den Query-Parameter ref (Referenznummer aus Response von POST /bewertung).
| ref required | string Example: ref=6A0F060D65A9E Referenznummer der Bewertung (aus Response von POST /bewertung) |
curl -sS --request GET \ --url 'https://immowert123.at/api/ext/v1/bewertung?ref=6A0F060D65A9E' \ --header 'X-API-Key: YOUR_API_KEY' \ | jq -e '.status == "success" and .code == 200'
{- "status": "success",
- "code": 200,
- "message": "",
- "data": {
- "referenz_nr": "6A0F060D65A9E",
- "immobilienart": "haus",
- "bewertungsverfahren": "sachwertverfahren",
- "abgeschlossen": false,
- "verkehrswert": null,
- "kg_nr": 12345,
- "bewertungsdatum": "2026-07-06",
- "adresse": {
- "strasse": "Siebenhügelstraße",
- "hausnummer": "107",
- "stiege": "2",
- "tuer": "1",
- "plz": "9020",
- "ort": "Klagenfurt",
- "lat": 46.616667,
- "lon": 14.266667
}, - "auftraggeber": {
- "anrede": "Herr",
- "titel": "Dr.",
- "vorname": "Max",
- "nachname": "Mustermann",
- "eigene_anschrift": "Firma Haus und Hof GmbH",
- "strasse": "Siebenhügelstraße",
- "hausnummer": "107",
- "stiege": "2",
- "tuer": "1",
- "plz": 9020,
- "ort": "Klagenfurt"
}, - "boden": [
- {
- "typ": "baureifes-land",
- "flaeche": 1000,
- "grundstuecksnummer": "145/1",
- "beschreibung": "Beschreibung der Grundstücksfläche"
}
], - "gebaeude": [
- {
- "bezeichnung": "Landhaus mit denkmalgeschützter Fassade",
- "beschreibung": "Beschreibung des Gebäudes",
- "ausstattungsbeschreibung": "Detaillierte Ausstattungsbeschreibung des Gebäudes",
- "baujahr": 2020,
- "baujahr_fiktiv": 0,
- "altersabwertungsmethode": "linear",
- "nutzungsdauer": 80,
- "flaechen": [
- {
- "typ": "wohnflaeche",
- "flaeche": 2020,
- "nettomiete_qm": 18.5,
- "nettomiete": 1000
}
], - "energiewerte": {
- "hwb": 165.2,
- "peb": 411.5,
- "co2": 99.4,
- "fgee": 2.59,
- "gueltig_bis": "2030-06-01"
}
}
]
}
}Liefert eine gekürzte Übersichtsliste der Immobilienbewertungen des authentifizierten API-Benutzers.
Die Ergebnisse können optional gefiltert und paginiert werden.
| typ | string Enum: "haus" "wohnung" "grundstueck" "sonstiges_gebaeude" Filter nach Immobilienart |
| bewertungsdatum-von | string <date> Example: bewertungsdatum-von=2026-07-01 Filter Bewertungsdatum ab (YYYY-MM-DD) |
| bewertungsdatum-bis | string <date> Example: bewertungsdatum-bis=2026-07-31 Filter Bewertungsdatum bis (YYYY-MM-DD) |
| erstellungsdatum-von | string <date> Example: erstellungsdatum-von=2026-07-01 Filter Erstellungsdatum ab (YYYY-MM-DD) |
| erstellungsdatum-bis | string <date> Example: erstellungsdatum-bis=2026-07-31 Filter Erstellungsdatum bis (YYYY-MM-DD) |
| abgeschlossen | boolean true = nur abgeschlossene Bewertungen, false = nur offene Bewertungen |
| plz | integer Example: plz=9020 Postleitzahl der Immobilie |
| sort | Array of strings Items Enum: "bewertungsdatum:asc" "bewertungsdatum:desc" "erstellungsdatum:asc" "erstellungsdatum:desc" "verkehrswert:asc" "verkehrswert:desc" Example: sort=bewertungsdatum:asc Sortierung als |
| start | integer >= 0 Default: 0 Pagination-Offset (erster Eintrag = 0) |
| limit | integer [ 1 .. 100 ] Default: 20 Example: limit=20 Anzahl Einträge pro Seite |
curl -sS --request GET \ --url 'https://immowert123.at/api/ext/v1/bewertungen?typ=haus&bewertungsdatum-von=2026-07-01&bewertungsdatum-bis=2026-07-31&abgeschlossen=true&sort=bewertungsdatum:asc&start=0&limit=20' \ --header 'X-API-Key: YOUR_API_KEY' \ | jq -e '.status == "success" and .code == 200'
{- "status": "success",
- "code": 200,
- "message": "",
- "data": {
- "total": 42,
- "start": 0,
- "limit": 20,
- "bewertungen": [
- {
- "referenz_nr": "10F060D65A9E",
- "immobilienart": "haus",
- "bewertungsverfahren": "sachwertverfahren",
- "abgeschlossen": true,
- "bewertungsdatum": "2026-07-06",
- "erstellungsdatum": "2026-07-06",
- "verkehrswert": 485000,
- "adresse": {
- "strasse": "Siebenhügelstraße",
- "hausnummer": "107",
- "plz": "9020",
- "ort": "Klagenfurt"
}
}
]
}
}Lädt ein einzelnes Bild zu einer bestehenden Bewertung hoch.
Die Identifikation der Bewertung erfolgt mittels referenz_nr (aus Response von POST /bewertung).
Request als multipart/form-data. Die Datei wird immer im Formularfeld datei übermittelt; der Upload-Typ wird über typ gesteuert.
Erlaubte Formate: JPEG, PNG, GIF, PDF. Pro Request ist genau eine Datei erlaubt.
Kontingente pro Bewertung: bild max. 35, plan max. 10, anhang max. 10.
| referenz_nr required | string Zuordnung des Uploads zur Referenznummer der Bewertung (aus Response von POST /bewertung) |
| typ | string Default: "bild" Enum: "bild" "plan" "anhang" Kategorisierung des Uploads zum entsprechenden Bild-Typ |
| beschreibung | string Beschreibung des Uploads |
| datei required | string <binary> Bild- oder PDF-Datei (Formularfeld immer Unterstützte Dateitypen: jpg, gif, png, pdf. Erlaubte MIME-Typen: image/jpeg, image/png, image/gif, application/pdf. Kontingente pro Bewertung: bild max. 35, plan max. 10, anhang max. 10. |
curl -sS --request POST \ --url 'https://immowert123.at/api/ext/v1/bewertung/upload' \ --header 'X-API-Key: YOUR_API_KEY' \ --form 'referenz_nr=6A0F060D65A9E' \ --form 'typ=bild' \ --form 'beschreibung=Bildbeschreibung' \ --form 'datei=@/path/to/photo.jpg;type=image/jpeg' \ | jq -e '.status == "success" and .code == 201'
{- "status": "success",
- "code": 201,
- "message": "Bild erfolgreich hochgeladen",
- "data": {
- "id": 12345,
- "typ": "bild",
- "beschreibung": "Bildbeschreibung",
- "sort": 1,
- "referenz_nr": "6A0F060D65A9E"
}
}Liefert die Immobilienbewertung als PDF-Datei (Binärdaten).
Voraussetzung: Die Immobilienbewertung muss bereits abgeschlossen sein, um das PDF-Dokument abrufen zu können.
Die Identifikation erfolgt über den Query-Parameter ref (Referenznummer aus Response von POST /bewertung).
Bei Erfolg: Content-Type: application/pdf (kein JSON-Envelope). Der Dateiname wird im Header Content-Disposition übermittelt.
Bei Fehler: JSON-Response mit status, code, message, data (wie bei den anderen Endpunkten).
| ref required | string Example: ref=6A0F060D65A9E Referenznummer der Bewertung (aus Response von POST /bewertung) |
curl --request GET \ --url 'https://immowert123.at/api/ext/v1/bewertung/pdf?ref=6A0F060D65A9E' \ --header 'X-API-Key: YOUR_API_KEY' \ --output bewertung.pdf
{- "status": "error",
- "code": 0,
- "message": "string",
- "data": [
- null
]
}