MotoScout-API – nahtlose Integration für Inserate auf Webseiten
Für diesen Blog haben wir uns etwas Spezielles überlegt. Wir haben einen Entwickler unseres Teams zur API befragt. Somit haben Sie, liebe Leserinnen und Leser, einen Blick hinter die Kulissen.
Was war der Kundenwunsch?
Die KMS Racing AG verkauft ihre Fahrzeuge unter anderem via MotoScout24. Ihr Wunsch war es, die MotoScout24-Inserate auf der Webseite anzuzeigen und benutzerfreundlich darzustellen.
Was ist eine Schnittstelle (API)?
Schnittstellen ermöglichen die automatisierte Datenabfrage und Prozessausführung durch Benutzer und werden von Schnittstellenanbietern zur Verfügung gestellt. Ein praktisches Beispiel ist die Automatisierung der Preisaktualisierung in Online-Shops. Statt Preise manuell vom Hersteller 'A' zu übernehmen, was zeitaufwendig ist, ermöglicht eine Schnittstelle zwischen Hersteller und Shop eine automatische Preisaktualisierung. Die technische Implementierung dieser Schnittstellen ist flexibel, folgt aber oft bestimmten Standards.
Ist es schwierig, solch eine Programmierschnittstelle zu programmieren? Wenn ja, wieso? Wie bist du vorgegangen?
Meiner Erfahrung nach liegt die grösste Herausforderung bei der Integration einer API darin, dass man keine Kontrolle über die Schnittstelle besitzt.
Im Fall der KMS Racing AG haben wir als Entwickler volle Kontrolle über die Datenbank, der Darstellung der Webseite, des Codes, usw. Wenn Daten aus unserer Datenbank abgerufen werden und etwas falsch läuft, ist es meistens leicht nachzuvollziehen, wie der Fehler entstanden ist.
Von Aussen ist eine Schnittstelle wie eine Blackbox, die je nach dem Fehler ausspucken kann, auch wenn sauber gearbeitet wird. Wir sehen nicht, wie der Datenstamm im Hintergrund genau aussieht. Falls der Schnittstellenhersteller Fehler an seiner Schnittstelle hat, weiss man das auch nicht genau. Welche Fehler einem überhaupt angezeigt werden, untersteht der vollen Kontrolle des Herstellers.
Eine Herausforderung, die die AutoScout24 API mir gestellt hatte, war die Limite der Fahrzeuge, die gleichzeitig abgerufen werden konnten. Idealerweise würde ich hier die gesamte Inseratsliste abrufen und auf einmal anzeigen und dynamisch (ohne Seitenreload) filtern - leider können in einer Abfrage nur maximal 25 Fahrzeuge gleichzeitig abgerufen werden. Dies führt dazu, dass die Suchergebnisse in Seiten dargestellt werden müssen. Somit mussten auch die ganzen Sucheinstellungen zwischen den einzelnen Seitenaufrufen zwischengespeichert werden.
Was ist das Besondere dieser API?
In den meisten Fällen verwenden Fahrzeughändler ein iFrame (eine Box, die die Webseite der AutoScout24 mit ihren Fahrzeugen aufruft) zur Einbindung der AutoScout24 Inserate. Die Darstellung der Box und der Daten selbst ist nur begrenzt den eigenen Wünschen anpassbar. Mit einer Schnittstellenanbindung kann frei über die erhaltenen Daten verfügt werden und die massgeschneiderte Darstellung ist möglich.
Wieso sollten Unternehmen in diese API Geld investieren?
Mit einer Schnittstellenanbindung ist, wie vorhin erwähnt, die volle Kontrolle der Datendarstellung gewährleistet. Somit können Inserate aus MotoScout24 gemäss dem Design der Webseite dargestellt werden. Hier könnten auch Features und Darstellungsoptionen erstellt werden, die Motoscout24 nicht bietet. Es ist möglich, individuelle Fahrzeuge auf bestimmten Seiten zu integrieren, anstatt das komplette (und optisch weniger ansprechende) iFrame mit der gesamten Anzeigenliste darzustellen. Ebenfalls könnten auch Filteroptionen angeboten werden, die im standardmässigen iFrame-Format nicht verfügbar sind.
Noch dazu kommt es, dass die Webseitenbesucher auch auf der Seite verbleiben - sie werden bei Klicks auf die Inserate nicht zu MotoScout24 weitergeleitet. Benutzer müssen eigentlich interne Informationen nicht extern abrufen. Somit können die SEO-Stats der eigenen Webseite verbessert werden und es besteht eine grössere Chance, dass Besucher mit anderen Teilen der eigenen Webseite in Kontakt kommen.
Ich sehe, dass es momentan 195 Fahrzeuge gibt und 6 Filter eingestellt werden können. Ist da noch mehr möglich von der Anzahl her? Wenn ja, wie viel?
The only limit is your imagination. Solange man sich einen Filter mit den verfügbaren Daten vorstellen kann, kann man den selbst erstellen.
Benötigen auch Sie eine Schnittstelle auf Ihre Bedürfnisse abgestimmt? Gerne beraten wir Sie unverbindlich.