Benutzer-Werkzeuge

Webseiten-Werkzeuge


dokumentation_der_soap_schnittstelle_version_2.0

Dokumentation der SOAP Schnittstelle Version 2.0

Bitte beachten Sie, dass die SOAP-APIs nicht mehr aktiv weiterentwickelt werden. Neue Kunden sollten ausschließlich die RESTful API nutzen, bestehende Nutzer der SOAP-Schnittstellen sollten mittelfristig auf REST umstellen.

Eine allgemeine Beschreibung der SOAP-Schnittstelle finden Sie unter APIs.

SOAP-Zugangsdaten

Funktionen

login

Syntax: bool login(string username, string password [, bool useSoapFaults = false])

Mit dieser Funktion loggen Sie sich mit Ihrem Nutzernamen/Passwort im System ein. Der Login wird serverseitig in einer Session gehalten, dafür ist es aber notwendig, dass Sie clientseitig das Setzen von Cookies ermöglichen. Sollte dies nicht möglich sein, kann bei jedem anderen Funktionsaufruf der Nutzername und das Passwort als letzter optionaler Parameter übergeben werden.

  • Parameter
    • username: Ihr Nutzername
    • password: Ihr Passwort
  • Rückgabewert
    • Liefert true im Erfolgsfall zurück. Liefert false im Fehlerfall zurück. Sollte die Ausnahmebehandlung aktiviert sein (useSoapFaults=true) wird ein Fehler (Exception) geworfen.

calcCar

Syntax: array calcCar(string hsn, string tsn, int year, int month, int miles [, string fuzzyText = "" [, string model = "" [, string specialModel = "" [, string featureList = "" [, string color = "" [, int power = 0 [, int fuel = 0 [, int buildType = 0 [, int doorCount = 0 [, int dealerSize = 0 [, int priceClass = 0 [, int carVolume = 0 [, int garantieValue = 0 [, int monthWaitForSell = 0 [, string username = "" [, string password = "" [, int milesPerYear = 0 [, int usageYearCount = 0 ]]]]]]]]]]]]]]]]]])

Diese Funktion liefert Ihnen ein Array mit den Daten des erkannten Fahrzeuges, sowie den berechneten Verkaufspreis (price) und den Händlereinkaufspreis (priceEK).

Wenn die übergebenen Parameter nicht eindeutig auf ein bestimmtes Fahrzeug verweisen (häufig der Fall bei fehlender Angabe des Sondermodells (specialModel), bei Fahrzeugen mit 2/3-Türer oder 4/5-Türer innerhalb der Baureihe oder bei Uneindeutigkeit der Baureihe selbst), wird eine Liste aus mehreren Arrays zurückgegeben. Für jedes Ergebnis werden dabei weiterhin die Preise berechnet. Sie können dann programmseitig filtern, oder die Parameter entsprechend einschränken.

In seltenen Fällen ist die HSN/TSN Kombination nicht eindeutig hinsichtlich des Modells (nicht nur der Baureihe). Treffen mehrere verschiedene Modelle auf Ihre Anfrage zu, wird seit SOAP Version 2 ein Hinweis (HINT) mit der Liste zutreffender Modellbezeichnungen zurückgegeben. Sie erhalten in diesen Fällen keine Preisberechnungen zurück. Zum Beispiel trifft die HSN/TSN-Kombination 8566/AAH für die Modelle Ford Focus, Ford C-Max und Ford Kuga zu.

Seit Version 1.2 werden auch Standzeitinformationen (siehe Standzeiten) sowie Verkaufswahrscheinlichkeiten (siehe Verkaufswahrscheinlichkeit) zurückgegeben.

Optional können auch weitere Parameter zur Händlergröße angegeben werden. Durch die Angaben der Händlerinformationen können realistischere Verkaufspreise ermittelt werden. Die Berechnung des Einkaufspreises bleibt davon unberührt. Zu den Händlerinformationen gehören die Parameter dealerSize, priceClass, carVolume sowie garantieValue. Weitere Informationen zur Händlergröße finden Sie unter Händlergrößen.

  • Parameter
    • hsn: Die 4-stellige Herstellerschlüsselnummer gemäß Kraftfahrzeugbundesamt
    • tsn: Die 3-stellige Typschlüsselnummer gemäß Kraftfahrzeugbundesamt
    • year: Das Jahr der Erstzulassung
    • month: Der Monat der Erstzulassung
    • miles: Laufleistung in Kilometern
    • fuzzyText: (optional) Hier kann der Freitext übergeben werden, mit dessen Hilfe die interne künstliche Intelligenz die Ausstattungen, Extras, Farbe, Sondermodell usw. erkannt wird. Als Freitext eignet sich beispielsweise die Inseratsbeschreibung inkl. Titel eines angebotenen Fahrzeuges.
    • model: (optional) Der Name eines bestimmten Modells (z.B.: "A3" oder "Mégane"…)
    • specialModel: (optional) Der Name eines bestimmten Sondermodells (z.B.: "Elegance" oder "Highline"…)
    • featureList: (optional) Eine Kommaseparierte Liste an Kürzel/Shortcuts von expliziten Extras oder Ausstattungsmerkmalen (z.B.: "KLI,AIB,NAV,PDC") Die Funktion getFeatureList(…) liefert Ihnen eine Liste an möglichen Extras und deren Kürzel/Shortcuts. Hier können auch Werte für die Garantie/Gewährleistung übergeben werden, mit welcher das Fahrzeug verkauft werden soll. Die Garantieleistungen beeinflussen ebenfalls den Fahrzeugwert. Hier können folgende weitere Kürzel/Shortcuts für die Garantieleistung übergeben werden:
      • OGEW = Verkauf ohne Gewährleistung
      • NO_OGEW = Verkauf mit Gewährleistung
      • GARANTIE = Verkauf mit Garantie
      • GARANTIE_MARKE = Verkauf mit Markengarantie
      • GARANTIE_HERSTELLER = Verkauf mit Herstellergarantie
    • color: (optional) Das Kürzel/Shortcut der Farbe des Fahrzeuges. (z.B.: "RED") Die Funktion getColors(…) liefert Ihnen eine Liste an möglichen Farben und deren Kürzel/Shortcuts.
    • power: (optional) Die Motorleistung des Fahrzeuges in Kilowatt.
    • fuel: (optional) Die Motorart des Fahrzeuges (1 = Ottomotor, 2 = Dieselmotor, 3 = Wankelmotor, 4 = Benzin-Elektro-Hybrid).
    • buildType: (optional) Die Aufbauvariante des Fahrzeuges (1 = Limousine, 2 = Kombi/Van, 3 = Coupe, 4 = Cabrio).
    • doorCount: (optional) Anzahl der Türen.
    • dealerSize: (optional) Die Unternehmensart, mit welcher der Verkäufer des Fahrzeuges agiert. Es können dabei folgende Werte übergeben werden:
      • 1 = Vertrags- bzw. Markenhändler
      • 2 = Freier Händler der Luxusklasse
      • 3 = Freier Neuwagen- und Jahreswagenhändler
      • 4 = Freier Händler
      • 5 = Freier Händler, überwiegend Export
      • 6 = Gutachter/Makler
      • 7 = Steuerberater/Versicherung
      • 8 = Werkstatt mit kleinem Handel
    • priceClass: (optional) Preisklasse im Durchschnitt, welche der Verkäufer handelt:
      • 0= kein Handel
      • 1= 0 - 5.000 €
      • 2= 5.000 - 10.000 €
      • 3= 10.000 - 15.000 €
      • 4 = 15.000 - 20.000 €
      • 5 = 20.000 - 30.000 €
      • 6 = 30.000 - 40.000 €
      • 7 = über 40.000 €
    • carVolume: (optional) Fahrzeugbestand im Durchschnitt, welche der Verkäufer handelt:
      • 0 = kein Handel
      • 1 = 0 - 5 Fahrzeuge
      • 2 = 5 - 10 Fahrzeuge
      • 3 = 10 - 20 Fahrzeuge
      • 4 = 20-50 Fahrzeuge
      • 5 = 50-100 Fahrzeuge
      • 6 = 100-250 Fahrzeuge
      • 7 = 250-1.000 Fahrzeuge
      • 8 = über 1.000 Fahrzeuge
    • garantieValue: (optional) Garantieleistungen, welche der Verkäufer für gewöhnlich anbietet:
      • 0 = kein Handel
      • 1 = Verkäufe überwiegend ohne Gewährleistung
      • 2 = Verkäufe überwiegend mit Gewährleistung, ohne Garantie.
      • 3 = Verkäufe überwiegend mit Garantieversicherung.
      • 4 = Verkäufe überwiegend mit Herstellergarantie.
    • monthWaitForSell: (optional) Zeitraum der Wartezeit in Monaten, die Fahrzeuge beim Händler maximal stehen sollen. Daraus werden die Verkaufswahrscheinlichkeiten (siehe Verkaufswahrscheinlichkeit sowie Wahrscheinlichkeit) berechnet. Realistisch sind hierbei Werte zwischen 1 und 6. Wird beispielsweise der Wert 2 übergeben, dann wird im Rückgabewert ein Array mit Preisen und dazugehörigen Verkaufswahrscheinlichkeiten geliefert, welche die Wahrscheinlichkeit für den Verkauf innerhalb von 2 Monaten bewerten. Je kürzer die maximale Wartezeit, desto geringer sind die berechneten Verkaufspreise. Empfehlung: Verwenden Sie hier 2 bis 3 Monate.
    • username: (optional) Ihr Nutzername, falls das Sessionhandling durch die Funktion login(…) nicht funktioniert.
    • password: (optional) Ihr Passwort, falls das Sessionhandling durch die Funktion login(…) nicht funktioniert.
    • milesPerYear: (optional) Für die Restwertprognose: Die Laufleistung pro Jahr in Kilometern
    • usageYearCount: (optional) Für die Restwertprognose: Die geplante Nutzungsdauer in Jahren
  • Rückgabewert
    • Liefert im Erfolgsfall ein Array oder eine Liste an Arrays zurück mit den genauen Daten des erkannten Fahrzeuges und die geschätzten Fahrzeugpreise.
      Dabei ist "price" der Verkaufspreis und "priceEK" der Händlereinkaufspreis. Alle weiteren Daten erklären sich quasi von selbst.
      Wenn kein Fahrzeug erkannt wird, wird ein leeres Array zurückgegeben.
    • Für die erkannten Ausstattungsmerkmale gibt es zusätzlich eine Reihe von Rückgabewerten:
      • extras: Dieses Array enthält die spezifische Ausstattung des gelieferten Kfz. Das ist die Summe der Ausstattungen extrasByDate, extrasByMotor, extrasBySpecialModel und der im Fuzzytext erkannten Sonderausstattung.
      • extrasByDate: Sind die Ausstattungsmerkmale welche das Fahrzeug anhand seiner Grundausstattung und Bauzeit hat (Analog der Darstellung auf der Autofokus24-Website "Grundausstattung nach Bauzeit").
      • extrasByMotor: Sind die zusätzlichen Ausstattungsmerkmale welche das Fahrzeug aufgrund seiner Motorisierung hat (Analog der Darstellung auf der Autofokus24-Website "Zusatzausstattung durch Motorisierung").
      • extrasBySpecialModel: Sind die zusätzlichen Ausstattungsmerkmale welche das Fahrzeug aufgrund seines Sondermodells hat (Analog der Darstellung auf der Autofokus24-Website "Zusatzausstattung durch Sondermodell").
      • significantExtras: Sind die möglichen weiteren Ausstattungsmerkmale welche sich gemäß der Autofokus24-Schätzung statistisch relevant auf den Fahrzeugwert auswirken (Analog der Darstellung auf der Autofokus24-Website "Weitere Ausstattung").
      • avgSellingTimeAtPrice: Ist die durchschnittliche Standzeit in Tagen bis zum Verkauf bei Marktpreis (price).
      • avgSellingTimes: Ist ein Array bestehend aus 2-Tupeln(Verkaufspreis, Verkaufswahrhscheinlichkeit). Es werden dabei stufenweise Preise +/- um den Marktpreis und die zugehörigen Verkaufswahrscheinlichkeiten berechnet. Die Verkaufswahrscheinlichkeit bezieht sich dabei auf die übergebene Wartezeit (monthWaitForSell). Wenn also monthWaitForSell=2 übergeben wurde, und das avgSellingTimes-Array den Eintrag [3900;66] enthält, dann bedeutet es, dass bei einem Verkaufspreis von 3900 Euro die Wahrscheinlichkeit für den Verkauf innerhalb von 2 Monaten 66% beträgt.
      • degeneration: Ein Array mit usageYearCount*12 Einträgen, die jeweils den Restwert pro Monat ab dem aktuellen Monat angeben. Wird berechnet, wenn milesPerYear und usageYearCount übergeben wurden.

getFeatureList

Syntax: array getFeatureList ([username = "", password = ""])

Diese Funktion liefert Ihnen ein Array der möglichen Ausstattungen/Extras und dessen Kürzel/Shortcuts, welche bei der Funktion calcCar(…) explizit übergeben werden können.

  • Parameter
    • username: (optional) Ihr Nutzername, falls das Sessionhandling durch die Funktion login(…) nicht funktioniert.
    • password: (optional) Ihr Passwort, falls das Sessionhandling durch die Funktion login(…) nicht funktioniert.
  • Rückgabewert
    • Liefert ein Array mit den möglichen Ausstattungen/Extras und dessen Kürzel/Shortcuts zurück. Im Fehlerfall wird ein leeres Array zurückgegeben. Sollte die Ausnahmebehandlung aktiviert sein (useSoapFaults=true) wird ein Fehler (Execption) geworfen.

getColors

Syntax: array getColors ([username = "", password = ""])

Diese Funktion liefert Ihnen ein Array der möglichen Farben und dessen Kürzel/Shortcuts, welche bei der Funktion calcCar(…) explizit übergeben werden können.

  • Parameter
    • username: (optional) Ihr Nutzername, falls das Sessionhandling durch die Funktion login(…) nicht funktioniert.
    • password: (optional) Ihr Passwort, falls das Sessionhandling durch die Funktion login(…) nicht funktioniert.
  • Rückgabewert
    • Liefert ein Array mit den möglichen Farben und dessen Kürzel/Shortcuts zurück. Im Fehlerfall wird ein leeres Array zurückgegeben. Sollte die Ausnahmebehandlung aktiviert sein (useSoapFaults=true) wird ein Fehler (Execption) geworfen.

getLastError

Syntax: array getLastError ()

Liefert den letzten aufgetretenen Fehler falls vorhanden.

  • Rückgabewert
    • Liefert den Fehlercode (errorcode) und die Fehlerbeschreibung (faultstring) des letzten Fehlers zurück, falls ein Fehler aufgetreten ist. Liegt kein Fehler vor, sind die beiden zurückgegebenen Felder leer.

Tutorials

Im folgenden Abschnitt werden einige einfache Beispiele zur Verwendung der SOAP-Schnittstelle von Autofokus24.de dargestellt.

PHP-Tutorial

Für die Verwendung in PHP benötigen Sie die PHP-SoapClient-Klasse.

Code:

<?php
try {
/* Initialisierung: WSDL-Datei angeben, Caching deaktivieren, Encoding festlegen*/
$client = new SOAPClient('http://www.autofokus24.de/SoapServer2.php?wsdl',
                          array('cache_wsdl' => WSDL_CACHE_BOTH,
                                'encoding'=>'utf-8')
                         );
/* Login: Mit eMail, Passwort. SoapFaults auf 1 setzen*/
$client->login("mymail@myhost.de","meinpasswort",1);
/* Fahrzeug ermitteln, Preis berechnen und Ergebnis formatiert ausgeben...*/
print_r($client->calcCar("0999",                /* HSN */
                         "269",                 /* TSN */
                         2004,                 /* Jahr */
                         4,                    /* Monat */
                         123000,               /* Laufleistung */
                         "                     /* Freitext (aus Inserat) */
                         C 220 T CDI Automatik DPF,Sportpaket.Modell 2005
                         Brillantsilber met.,Leder Twin schwarz, Sportpaket,
                         AHK abnehmbar, Regensensor, Scheibenwaschanlage
                         beheizt, Radio Audio 20 CD, Klimaautomatik,
                         Sitzheizung, Automatikgetriebe 5 Gang,
                         Dieselpartikelfilter, LM-Felgen 17 Zoll,
                         Eingabefehler u.Irrtümer behalten wir uns vor.
                         ",
                         "Classic",            /* Sondermodell */
                         "XEN,PDC",      /* Explizite Ausstattungen */
                         "",                   /* Farbe, keine Angabe */
                         110,                  /* Motorleistung in Kilowatt */
                         2,                    /* Motorart = Diesel */
                         2,                    /* Aufbau = Kombi */
                         0,                    /* Türen = keine Angabe */
                         3,                     /* Unternehmensart = Freier Händler  */
                         2,                     /* Preisklasse = 5.000 - 10.000 €  */
                         4,                     /* Fahrzeugbestand = 20-50 */
                         2,                     /* Garantieleistungen = Verkäufe überwiegend mit Gewährleistung, ohne Garantie.  */
                         2                     /* Verkaufsperiode = 2 Monate */
                         ));
}catch (SOAPFault $f)
{
  print $f->faultstring;
}
?>

Ergibt folgende Ausgabe:

Array
(
    [0] => Array
        (
            [make] => Mercedes-Benz
            [model] => C-Klasse
            [submodelName] => Modell ab 2004 (W203 Facelift)
            [buildKind] => 2
            [specialModel] => Classic
            [power] => 110
            [doorCount] => 5
            [color] =>
            [fuel] => 2
            [packets] => Array
                (
                    [0] => AMG/Sport Paket
                )
            [extras] => Array
                (
                    [PAK3] => 1
                    [KLI] => 1
                    [KLIAU] => 1
                    [AIB] => 1
                    [BAB] => 1
                    [SAB] => 1
                    [WFS] => 1
                    [KAB] => 1
                    [FAB] => 1
                    [ABSS] => 1
                    [AFLS] => 1
                    [BC] => 1
                    [BRA] => 1
                    [REL] => 1
                    [ESPI] => 1
                    [FH] => 1
                    [ESI] => 1
                    [ESP] => 1
                    [ASR] => 1
                    [NSW] => 1
                    [SV] => 1
                    [TMP] => 1
                    [Z] => 1
                    [ZF] => 1
                    [SVT] => 1
                    [XEN] => 1
                    [PDC] => 1
                    [LED] => 1
                    [LLR] => 1
                    [AHK] => 1
                    [CD] => 1
                    [ALU] => 1
                    [MET] => 1
                    [PF] => 1
                    [REG] => 1
                    [SOUND] => 1
                    [SIH] => 1
                    [NO_OGEW] => 1
                )
            [extrasByDate] => Array
                (
                    [KLI] => 1
                    [KLIAU] => 1
                    [AIB] => 1
                    [BAB] => 1
                    [SAB] => 1
                    [WFS] => 1
                    [KAB] => 1
                    [FAB] => 1
                    [ABSS] => 1
                    [AFLS] => 1
                    [BC] => 1
                    [BRA] => 1
                    [REL] => 1
                    [ESPI] => 1
                    [FH] => 1
                    [ESI] => 1
                    [ESP] => 1
                    [ASR] => 1
                    [NSW] => 1
                    [SV] => 1
                    [TMP] => 1
                    [Z] => 1
                    [ZF] => 1
                    [SVT] => 1
                )
            [significantExtras] => Array
                (
                    [0] => OGEW
                    [1] => LED
                    [2] => ALL
                    [3] => GAS
                    [4] => SHZG
                    [5] => NAV
                    [6] => NAV
                    [7] => AUTOMATIK
                    [8] => PF
                    [9] => SD
                    [10] => ALU
                    [11] => XEN
                    [12] => AHK
                    [13] => PDC
                    [14] => SIH
                    [15] => REG
                    [16] => GAR
                    [17] => WR
                    [18] => TLED
                    [19] => IAA
                    [20] => BXEN
                    [21] => SPSI
                    [22] => SOUND
                    [23] => OTUEV
                    [24] => LLR
                )
            [price] => 9096
            [priceEK] => 5967
            [avgSellingTimeAtPrice] => 41
            [avgSellingTimes] => Array
                (
                    [0] => Array
                        (
                            [0] => 8600
                            [1] => 85
                        )
                    [1] => Array
                        (
                            [0] => 8700
                            [1] => 83
                        )
                    [2] => Array
                        (
                            [0] => 8800
                            [1] => 80
                        )
                    [3] => Array
                        (
                            [0] => 8900
                            [1] => 78
                        )
                    [4] => Array
                        (
                            [0] => 9000
                            [1] => 75
                        )
                    [5] => Array
                        (
                            [0] => 9100
                            [1] => 73
                        )
                    [6] => Array
                        (
                            [0] => 9200
                            [1] => 70
                        )
                    [7] => Array
                        (
                            [0] => 9300
                            [1] => 68
                        )
                    [8] => Array
                        (
                            [0] => 9400
                            [1] => 65
                        )
                    [9] => Array
                        (
                            [0] => 9500
                            [1] => 63
                        )
                    [10] => Array
                        (
                            [0] => 9600
                            [1] => 60
                        )
                )
        )
)

An der Ausgabe ist zu erkennen, dass zunächst Marke, Modell und Submodell anhang der HSN/TSN erkannt und zugeordnet wurden. Die Farbe wurde automatisch anhand des Freitextes erkannt. Das Paket "Sport" wurde auch am Freitext erkannt. Weiterhin wurden die serienmäßigen Extras sowie die am Freitext erkannten Extras zugeordnet. Im Funktionsaufruf wurde das Kürzel "XEN" und "PDC" übergeben, wodurch diese Extras explizit übergeben wurden. Die Extras LED, LLR, AHK, CD, ALU, MET, PF, REG, SOUND, SIH wurden ebenfalls anhand des Freitextes erkannt. Schließlich wird der Verkaufspreis (price) und Händlereinkaufspreis (priceEK) zurückgegeben.

dokumentation_der_soap_schnittstelle_version_2.0.txt · Zuletzt geändert: 2018-11-07 23:20 von admin