Was ist Propstack?
Propstack ist ein cloudbasiertes CRM für die Immobilienwirtschaft, entwickelt von der Propstack GmbH. Makler, Maklerunternehmen, Franchise-Systeme und Projektvertriebe verwalten darin Kontakte, Objekte, Aufgaben, E-Mails und Termine im Browser. Für die Website zählt vor allem eines: Propstack dokumentiert seine REST-API öffentlich unter docs.propstack.de und bietet daneben den Export nach dem OpenImmo-Standard. Beide Wege führen Objektdaten aus dem CRM auf die Website, nur mit unterschiedlicher Mechanik.
Wie kommen Objekte aus Propstack auf die Website?
Über zwei Wege. Der erste ist die REST-API: Die Website fragt die Objekte als JSON ab, übernimmt sie in ihr eigenes Datenmodell und schreibt Änderungen nach, sobald im CRM etwas passiert. Der zweite ist der OpenImmo-Export: Propstack legt ein ZIP-Archiv mit XML-Datei und Bildern per FTP ab, die Website liest es ein. In Propstack wird dieser Weg unter Verwaltung, Portale, Portal hinzufügen als FTP nach OpenImmo-Standard eingerichtet. Welcher Weg trägt, entscheidet siteway_ im Konzept, nicht danach, welcher moderner klingt.
Wie funktioniert die Propstack-API?
Die dokumentierte Version 1 liegt unter api.propstack.de/v1. Authentifiziert wird mit einem API-Key, entweder im Header X-API-KEY oder als Parameter api_key; die Schlüssel und ihre Berechtigungen verwaltet der Makler in Propstack unter Administration und API-Keys. Objekte liegen unter /v1/units, mit Filtern für Status, Vermarktungsart, Projekt, Land und Volltextsuche sowie Bereichsfiltern für Preis, Miete, Fläche, Zimmer, Etage und Baujahr. Listen kommen paginiert, und mit with_meta=1 liefert die Antwort die Gesamtzahl mit. Eine Version 2 mit Scroll-Endpunkten für große Datenmengen ist laut Dokumentation in Arbeit.
Wann ist die API der bessere Weg und wann der OpenImmo-Export?
Die API passt, wenn die Website mehr können soll als eine Liste zeigen: eigene Filter, gezielt ausgewählte Felder, mehrsprachige Texte, schnelle Aktualisierung nach einer Änderung im CRM. Der OpenImmo-Export passt, wenn ein Bestandssystem oder ein Plugin ohnehin OpenImmo spricht, wenn der Objektbestand überschaubar ist und wenn eine Aktualisierung im Takt des Abgleichs reicht. OpenImmo kennt dafür den Vollabgleich, bei dem alle Objekte erneut übertragen werden, und den Teilabgleich, bei dem nur Änderungen laufen. Und beides lässt sich kombinieren: der Export als Grundlast, die API für das, was der Export nicht sauber abbildet.
Wie bleibt die Website aktuell, ohne die API bei jedem Seitenaufruf zu fragen?
Indem die Website nicht bei jedem Seitenaufruf fragt. Die Objektdaten werden importiert und liegen danach im Datenmodell der Website; ausgeliefert wird aus dem eigenen Bestand, nicht aus einem fremden System. Aktualisiert wird über zwei Auslöser: einen regelmäßigen Abgleich als Grundsicherung und Webhooks für den schnellen Weg. Propstack meldet Ereignisse wie property_created und property_updated an eine Ziel-URL, angelegt über /v1/hooks mit target_url und event. Die Anfragen sind per HMAC-SHA256 signiert, die Signatur steht im Header X-Propstack-Signature und wird geprüft, bevor irgendetwas verarbeitet wird.
Was passiert mit verkauften und vermieteten Objekten?
Das ist eine SEO-Frage, keine Datenfrage. Ein Objekt, das aus dem CRM verschwindet, darf keine tote URL hinterlassen. Propstack liefert den Status mit und stellt die möglichen Werte unter /v1/property_statuses bereit; das Ereignis property_updated wird laut Dokumentation auch beim Löschen ausgelöst. Daraus wird auf der Website eine feste Regel: Referenzobjekt behalten und als verkauft kennzeichnen, auf eine passende Übersicht weiterleiten oder die URL sauber als entfallen ausweisen. Was nicht passiert: dass eine Suchmaschine auf eine Seite läuft, die es nicht mehr gibt.
Landen Anfragen von der Website wieder im CRM?
Ja, das ist der Rückkanal. Das Anfrageformular am Objekt schickt seine Daten serverseitig an /v1/contacts. Propstack legt daraus einen Kontakt an oder aktualisiert einen vorhandenen, wenn er über die E-Mail-Adresse oder eine mitgegebene alte CRM-ID gefunden wird, sodass keine Dubletten entstehen. Genau hier ist Datenschutz kein Nebensatz: Es gehen nur die Felder raus, die der Makler wirklich braucht, der API-Key liegt auf dem Server statt im Browser, und für die Verarbeitung im CRM braucht es einen Auftragsverarbeitungsvertrag. Die buchbare Leistung dahinter beschreibt siteway_ unter Schnittstellenentwicklung in der Expertise.
Lässt sich Propstack in WordPress oder TYPO3 integrieren?
Ja — und in Statamic ebenso. Die Anbindung bauen wir in jedem der drei Systeme selbst, mit dessen eigenen Bordmitteln; Propstacks dokumentierte REST-API und die Webhooks machen das sauber umsetzbar. In WordPress entsteht ein eigenes Plugin: Custom Post Type mit eigenen Meta-Feldern und Taxonomien für die Filter, eine eigene REST-Route als Webhook-Endpunkt, serverseitige API-Aufrufe mit dem Schlüssel in der Server-Konfiguration und ein geplanter Lauf als Grundsicherung. In TYPO3 bauen wir eine eigene Extension mit TCA als Datenmodell, dem Abruf als Scheduler-Task, einer eigenen Route für den Webhook, den Objekten als Records in einem Systemordner und Fluid-Templates im Frontend. In Statamic liegt Laravel darunter: Blueprint als Datenmodell, Artisan-Command im Scheduler, Route mit Controller und Signaturprüfung für den Webhook, die Objekte als Entries in einer Collection. Die Integration ist damit Teil unserer Leistung — vom Datenmodell bis zum Frontend.