Authentifizierung

Zur Authentifizierung einer Anfrage wird ein API-Key Verfahren in Verbindung mit OAuth2 verwendet. Der API Key wird Ihnen von estate45 nach der Einrichtung zugewiesen. Er wird bei allen Requests im Request Header Authorization als Bearer angegeben: Authorization: Bearer {API-Key}

Ein API-Key wird vom System generiert und hat folgendes Format:

  • Länge: 36 Zeichen
  • Kodierung: UUID Type 4 Random [RFC 4122]
  • Beispiel: 87dbc6cd-91d2-4574-bcb5-2aaaf924386d

Wichtig

Die Verwendung der API Schnittstelle ist nur möglich, wenn Sie einen regulären, aktiven Account bei estate45 haben. API Keys werden in der Datenbank nur hochverschlüsselt gespeichert.

HTTP Status Codes und Fehlermeldungen

Die folgenden allgemeinen Status Codes können potentiell bei allen Aufrufen auftreten und müssen entsprechend behandelt werden.

HTTP Status Code Beschreibung
200 (OK) Der Request wurde erfolgreich ausgeführt.
204 (No Content) Der Request wurde erfolgreich ausgeführt. In der Response gibt es keinen Body.
401 (Unauthorized) Es wurde versucht, auf eine Ressource zuzugreifen, die geschützt ist. Entweder ist der API-Key falsch oder abgelaufen.
403 (Forbidden) Der Zugriff ist auf diese Ressource mit der verwendeten HTTP-Methode nicht erlaubt.
410 (Gone) Die API steht in dieser Version nicht mehr zur Verfügung.

Endpoint

Die Schnittstelle ist über folgende URL erreichbar: https://api.estate45.com/estate/

JSON Request Bodies

Stellen Sie sicher, dass Sie den HTTP-Header Content-Type application/json in Ihren JSON-Body aufnehmen, wenn Sie JSON für Ihre POST-Daten anstelle von URL-codierten Daten verwenden möchten.


Immobilienübersicht abrufen

Endpoint POST https://api.estate45.com/estate/{AccountID}
Authentifizierung Authorization: Bearer {API-Key}
Content type application/json
Query Parameters
  • AccountID: string (required). Die AccountID erhalten Sie direkt von estate45 und ist ausschließlich mit Ihrem Account verknüpft.
Request Body
{
  "page": 1,
  "records": 10,
  "orderBy": "ObjID",
  "orderDir": "desc",
  "reference": false,
  "vma": 2,
  "art": 3,
  "country": 1,
  "city": "düsseldorf",
  "preis_von": 500,
  "preis_bis": 1900,
  "zimmer_von": 2,
  "zimmer_bis": 4,
  "flaeche_von": 80,
  "flaeche_bis": 120,
  "grund_von": 0,
  "grund_bis": 0,
  "all: true,
  "baujahr: 2024,
  "filter: "resale"
}
Request Parameters
  • page: (required) Aktuelle Seite
  • records: (required) Anzahl der Einträge pro Seite. Ist limitiert auf maximal 20.
  • orderBy: (optional) Nach diesem Feld soll sortiert werden. Standard: ObjID
  • orderDir: (optional) Gibt die Sortierrichtung an. desc (absteigend) oder asc (aufsteigend) sortiert. Standard: DESC
  • reference: (optional) Setzen Sie den Filter auf true, wenn es sich bei der Übersicht um eine Referenzliste handelt.
  • vma: (optional) Gibt die Vermarktungsart an. 1: Objekte zur Miete. 2: Objekte zum Kauf
  • art: (optional) Gibt die Objektart an. Eine Liste der verfügbaren Arten finden Sie hier.
  • country: (optional) Gibt die Kennung für das Land an. Eine Liste der verfügbaren Länder finden Sie hier.
  • preis_von: (optional) Der Startwert für Kaufpreis/Kaltmiete. Hier ist die Angabe des Parameters vma zwingend erfoderlich.
  • preis_bis: (optional) Der Endwert für Kaufpreis/Kaltmiete. Hier ist die Angabe des Parameters vma zwingend erfoderlich.
  • zimmer_von: (optional) Der Startwert für die Anzahl Zimmer.
  • zimmer_bis: (optional) Der Endwert für die Anzahl Zimmer.
  • flaeche_von: (optional) Der Startwert für die Wohnfläche.
  • flaeche_bis: (optional) Der Endwert für die Wohnfläche.
  • grund_von: (optional) Der Startwert für die Grundstücksfläche.
  • grund_bis: (optional) Der Endwert für die Grundstücksfläche.
  • all: (optional) Setzen Sie den Filter auf true, wenn Sie alle Objekte in der Liste anzeigen wollen. Grundsätzlich werden in der Liste nur Objekte angezeigt, die aktiv, nicht im Archiv und für die Webseite freigegeben sind.
  • baujahr: (INT/optional) Das Objekt-Baujahr. Es werden alle Objekte ab diesem Baujahr gefilter.
  • filter: (optional) Damit werden alle Daten unter Status/KurzBemerkung abgefragt.
Responses Codes siehe "HTTP Status Codes und Fehlermeldungen"
Response JSON
{
  "totalCount": 83,
  "totalPages": 9,
  "currentPage": 1,
  "maxRows": 10,
  "data": [
    {
      "ObjID": 4711,
      "titel": "Garage zu vermieten",
      "url": "4711_2021218091711_0717.jpg",
      "url_full": "https://images.estate45.com/objektfoto/4711/1/jpg/4711_2021218091711_0717",
      "plz": "123456",
      "ort": "Emmerich",
      "vma": 1,
      "art": 3,
      "km": 50
    },
    {
      "ObjID": 4712,
      "titel": "Wir suchen für unsere Kunden",
      "url": "4712_2021217133807_0131.jpg",
      "url_full": "https://images.estate45.com/objektfoto/4712/1/jpg/4712_2021217133807_0131",
      "plz": "123456",
      "ort": "Bocholt",
      "vma": 2,
      "art": 3,
      "zimmer": 3,
      "grund": 300,
      "wf": 100
    }
  ]
}
Response Parameters
  • totalCount: Gesamtzahl aller Objekte, die nach den Filtereinstellungen in Frage kommen
  • totalPages: Maximale Seitenzahl aufgrund der Filtereinstellungen
  • currentPage: Aktuelle Seite
  • maxRows: Anzahl der Einträge pro Seite. Ist limitiert auf maximal 20.
  • ObjID: Die interne (estate45) ID des Objektes
  • headline: Überschrift
  • url: Der Name des Titelbildes
  • url_full: Die komplette URL zum Abruf des Objektfotos.
  • plz/ort: PLZ und Ort des Objektes
  • vma: Gibt die Vermarktungsart an. 1: Objekte zur Miete. 2: Objekte zum Kauf
  • zimmer: Anzahl der Zimmer
  • grund: Größe des Grundstücks
  • wf: Größe der Wohnfläche
  • kp: Kaufpreis des Objektes
  • km: Kaltmiete des Objektes
  • lon: Längengrad der Position des Objektes
  • lat: Breitengrad der Position des Objektes

Immobilien Exposé abrufen

Endpoint POST https://api.estate45.com/estate/{AccountID}/get/{ObjID}
Authentifizierung Authorization: Bearer {API-Key}
Content type application/json
Query Parameters
  • AccountID: string (required). Die AccountID erhalten Sie direkt von estate45 und ist ausschließlich mit Ihrem Account verknüpft.
  • ObjID: string (required). Interne System-Objektnummer.
Request Body
{
    "ExposeMainID":41655,
    "umfang":1,
    "lang":1,
    "exposeTyp":1
}
Request Parameters
  • ExposeMainID: Die ID des Exposé Designer Setups.
  • umfang: Der Umfang der Exposé Daten, die abgerufen werden sollen. 0=Kurzexposé, 1=Langexposé
  • lang: Die gewünschte Sprache. Derzeit werden folgende Sprachen unterstützt: 1=deutsch, 2=englisch, 10=holländisch, 12=polnisch
  • exposeTyp: Gibt an, ob es sich um ein Exposé auf der eigenen Webseite oder um ein PDF Exposé handelt. 1=PDF, 2=Web
Responses Codes siehe "HTTP Status Codes und Fehlermeldungen"
Response JSON

Das ist ein Beispiel Exposé. Der Umfang variiert je nach Objektart, Ausstattung, Bildmaterial, Texte,...

{
  "global": {
    "created": "01.01.1900 00:00:00",
    "ObjID": 4711,
    "headline": "Ein schönes Haus",
    "vma": 2,
    "price": 118,
    "foto": "4711_202193140209_0324.jpg",
    "foto_url": "https://images.estate45.com/objektfoto/4711/0/jpg/4712_202193140209_0324"
  },
  "data": {
    "headline": "Exklusive Wohnung",
    "preise": {
      "kaufpreis": 123456,
      "aussen_courtage": "{Zusätzliche Provisionsinfo}",
      "hausgeld": 123,
      "waehrung": "Euro",
      "provision_teilen": 1,
      "courtage_hinweis": "Fällig nach erfolgten Notarvertragsabschluss"
    },
    "geo": {
      "wohnungsnr": 20,
      "strasse": "Musterstraße 1",
      "plz": "12345",
      "ort": "Musterhausen",
      "land": "Deutschland",
      "bundesland": "NRW",
      "etage": 1,
      "anzahlwohneinheiten": 3
    },
    "zustand_angaben": {
      "baujahr": "2012",
      "zustand": "neuwertig",
      "jahrletztemodernisierung": "2014",
      "letztemodernisierung": "neue Bäder",
      "bebaubar_nach": "§34 Nachbarschaft"
    },
    "flaechen": {
      "wohnflaeche": 123,
      "anzahl_zimmer": 4,
      "anzahl_badezimmer": 2,
      "anzahl_schlafzimmer": 3,
      "anzahl_balkone": 1
    },
    "ausstattung": {
      "kueche": "Offene Küche",
      "heizungsart": "Fernwärme, Fußbodenheizung",
      "fahrstuhl": "Personenaufzug",
      "stellplatzart": "Tiefgarage",
      "ausricht_balkon_terrasse": "nach Süden",
      "unterkellert": "voll unterkellert",
      "barrierefrei": true,
      "befeuerung": "Fernwärme",
      "bad": "Dusche, Wanne",
      "kabel_sat_tv": true,
      "boden": "Fliesen, Parkett",
      "abstellraum": true,
      "rolladen": true,
      "fahrradraum": true,
      "hausmeisterserviceyn": true,
      "winterdienstyn": true
    },
    "verwaltung_techn": {
      "objektnr_extern": "4711",
      "objektnr_intern": "4711"
    },
    "verwaltung_objekt": {
      "verfuegbar_ab": "Sommer 2021"
    },
    "infrastruktur": {
      "distanz_zu": {
        "Autobahn": "ca. 10,5 km",
        "Bus": "ca. 0,3 km",
        "Einkaufsmöglichkeit": "ca. 2,9 km",
        "Fernbahn": "ca. 3,5 km",
        "Flughafen": "ca. 55 km",
        "Gaststätten": "ca. 1,7 km",
        "Gemeinschaftsschule": "ca. 10 km",
        "Gesamtschule": "ca. 10 km",
        "Grundschule": "ca. 3,6 km",
        "Gymnasium": "ca. 10 km",
        "Hauptschule": "ca. 10 km",
        "Kindergarten": "ca. 4,6 km",
        "Realschule": "ca. 10 km",
        "Zentrum": "ca. 10 km"
      },
      "distanzen_sport": {
        "Naherholung": "ca. 1,7 km",
        "See": "ca. 1,7 km"
      },
      "zulieferung": true
    },
    "energiepass": {
      "epart": "Bedarfsorientiert",
      "gueltig_bis": "12.04.2022",
      "energiebedarf": "59 kWh pro m² pro Jahr",
      "jahrgang": "bis 2014 (EnEV 2009)",
      "primaerenergietraeger": "Fernwärme",
      "baujahr": "2012"
    }
  },
  "freitexte": {
    "Objektbeschreibung": "Lorem ipsum dolor sit amet, consectetur adipisici elit,...",
    "Lage": "Lorem ipsum dolor sit amet, consectetur adipisici elit,...",
    "Ausstattung": "Lorem ipsum dolor sit amet, consectetur adipisici elit,...",
    "Sonstige Angaben": "Lorem ipsum dolor sit amet, consectetur adipisici elit,..."
  },
  "fotos": [
    {
      "pfad": "4711_202193135525_0302.jpg",
      "file": "4711_202193135525_0302",
      "titel": "Wohnzimmer",
      "format": "jpg",
      "type": 1
    }
  ],
  "kontakt": {
    "email_zentrale": "info@musterstadt.de",
    "email_direkt": "abc@musterstadt.de",
    "tel_zentrale": "+49 123 4567890",
    "tel_handy": "+49 171 11223344",
    "name": "Mustermann",
    "vorname": "Karl",
    "anrede": "Herr",
    "firma": "Mustermann GmbH",
    "personennummer": 4711
  }
}
Response Parameters  

Adressenübersicht abrufen

Endpoint POST https://api.estate45.com/address/{AccountID}
Authentifizierung Authorization: Bearer {API-Key}
Content type application/json
Query Parameters
  • AccountID: string (required). Die AccountID erhalten Sie direkt von estate45 und ist ausschließlich mit Ihrem Account verknüpft.
Request Body
{
  "page": 1,
  "records": 10,
  "orderBy": "ID [Name, Company, Date]",
  "orderDir": "desc",
  "country": 1
}
Request Parameters
  • page: (required) Aktuelle Seite
  • records: (required) Anzahl der Einträge pro Seite. Ist limitiert auf maximal 20.
  • orderBy: (optional) Nach diesem Feld soll sortiert werden. Standard: ID
  • orderDir: (optional) Gibt die Sortierrichtung an. desc (absteigend) oder asc (aufsteigend) sortiert. Standard: DESC
  • country: (optional) Gibt die Kennung für das Land an. Eine Liste der verfügbaren Länder finden Sie hier.
Responses Codes siehe "HTTP Status Codes und Fehlermeldungen"
Response JSON

demnächst

Response Parameters

demnächst


Einzelne Adresse abrufen

Endpoint POST https://api.estate45.com/address/{ID}
Authentifizierung Authorization: Bearer {API-Key}
Content type application/json
Query Parameters
  • ID: string (required). Interne System-AdressenID
Request Body

demnächst

Request Parameters

demnächst

Responses Codes siehe "HTTP Status Codes und Fehlermeldungen"
Response JSON

demnächst

Response Parameters demnächst

Impressum abrufen

Endpoint POST https://api.estate45.com/imprint/{AccountID}
Authentifizierung Authorization: Bearer {API-Key}
Content type application/json
Query Parameters
  • AccountID: string (required). Die AccountID erhalten Sie direkt von estate45 und ist ausschließlich mit Ihrem Account verknüpft.
Request Body nicht erforderlich
Request Parameters demnächst
Responses Codes siehe "HTTP Status Codes und Fehlermeldungen"
Response JSON demnächst
Response Parameters demnächst

Objektarten

Info Geben Sie in allen Fällen, in denen Sie nach dem Parameter art filtern wollen, einen der folgenden Werte ein.
Verfügbare Objektarten
  • 2Wohnung
  • 3Haus
  • 4Grundstück
  • 5Büro / Praxis
  • 6Einzelhandel
  • 7Gastgewerbe
  • 8Halle / Lager / Produktion
  • 9Land- und Forstwirtschaft
  • 10Sonstige
  • 11Freizeitimmobilie (gewerbliche Nutzung)
  • 12Zins-, Rendite-, Anlageobjekt
  • 13Parken, Garage

  • Länderliste

    Info Geben Sie in allen Fällen, in denen Sie nach Country filter wollen/können, nur die ID an.
    Verfügbare Länder
  • 115Albanien
  • 135Algerien
  • 87Andorra
  • 159Angola
  • 156Äquatorial-Guinea
  • 160Argentinien
  • 114Armenien
  • 186Aserbaidschan
  • 157Äthiopien
  • 136Australien
  • 161Bahamas
  • 162Bahrain
  • 163Bangladesch
  • 164Barbados
  • 137Belgien
  • 165Benin
  • 193Bogota
  • 167Bolivien
  • 113Bosnien-Herzegowina
  • 168Botswana
  • 138Brasilien
  • 187Brunei
  • 169Bulgarien
  • 170Burkina Faso
  • 171Burundi
  • 172Chile
  • 173China
  • 175Costa Rica
  • 139Dänemark
  • 129Deutschland
  • 176Dominikanische Republik
  • 177Dschibuti
  • 178Ecuador
  • 179El Salvador
  • 112Elfenbeinküste
  • 111Eritrea
  • 90Estland
  • 110Fidschi
  • 140Finnland
  • 134Frankreich
  • 180Gabun
  • 188Gambia
  • 109Georgien
  • 189Ghana
  • 190Griechenland
  • 141Großbritannien
  • 1Guatemala
  • 2Guinea
  • 3Guinea-Bissau
  • 4Guyana
  • 5Haiti
  • 6Honduras
  • 196Hong Kong SAR
  • 143Indien
  • 7Indonesien
  • 8Irak
  • 9Iran, Islamische Republik
  • 144Irland
  • 10Island
  • 11Israel
  • 145Italien
  • 12Jamaika
  • 146Japan
  • 13Jemen
  • 14Jordanien
  • 15Jugoslawien (Serbien/Montenegro)
  • 17Kambodscha
  • 16Kamerun
  • 147Kanada
  • 108Kap Verde
  • 107Kasachstan
  • 18Katar
  • 19Kenia
  • 121Kirgisistan
  • 20Kolumbien
  • 105Komoren
  • 21Kongo
  • 104Korea, Demokratische Republik
  • 103Kroatien
  • 23Kuba
  • 24Kuwait
  • 25Laotische Demokratische Volksrepublik
  • 26Lesotho
  • 89Lettland
  • 27Libanon
  • 28Liberia
  • 88Liechtenstein
  • 91Litauen
  • 29Luxemburg
  • 122Lybisch-Arabische Dschamahirija
  • 30Madagaskar
  • 31Malawi
  • 32Malaysia
  • 102Malediven
  • 33Mali
  • 34Malta
  • 181Marokko
  • 35Mauretanien
  • 36Mauritius
  • 197Mazedonien
  • 148Mexiko
  • 101Moldau, Republik
  • 37Monaco
  • 182Mongolei
  • 38Mosambik
  • 166Myanmar (früher Burma)
  • 183Namibia
  • 39Nepal
  • 40Neuseeland
  • 41Nicaragua
  • 149Niederlande
  • 42Niger
  • 43Nigeria
  • 150Norwegen
  • 44Oman
  • 152Österreich
  • 45Pakistan
  • 46Panama
  • 48Papua-Neuguinea
  • 49Paraguay
  • 50Peru
  • 51Philippinen
  • 52Polen
  • 53Portugal
  • 192Puerto Rico
  • 198Republik Korea (Süd)
  • 54Ruanda
  • 55Rumänien
  • 100Russische Föderation
  • 56Sambia
  • 57Samoa
  • 58San Marino
  • 194San Salvador
  • 59Sao Tomé und Principe
  • 60Saudi-Arabien
  • 184Schottland
  • 153Schweden
  • 151Schweiz
  • 61Senegal
  • 199Serbien
  • 62Sierra Leone
  • 63Simbabwe
  • 155Singapur
  • 99Slowakei
  • 98Slowenien
  • 64Somalia
  • 154Spanien
  • 65Sri Lanka
  • 66Südafrika
  • 86Sudan
  • 195Surinam
  • 67Swasiland
  • 68Syrien, Arabische Republik
  • 97Tadschikistan
  • 133Taiwan, R.O.C.
  • 69Tansania, Vereinigte Republik
  • 70Thailand
  • 71Togo
  • 96Tonga
  • 72Trinidad und Tobago
  • 73Tschad
  • 95Tschechische Republik
  • 75Tunesien
  • 74Türkei
  • 94Turkmenistan
  • 76Uganda
  • 93Ukraine
  • 77Ungarn
  • 78Uruguay
  • 118USA
  • 185Usbekistan
  • 79Vatikanstadt
  • 80Venezuela
  • 81Vereinigte Arabische Emirate
  • 82Vietnam
  • 92Weißrußland
  • 83Zaire
  • 84Zentralafrikanische Republik
  • 85Zypern