Externe Abfrage von Stationsdaten

 

Über eine externe Anwendungsprogrammier-Schnittstelle (API) haben Sie die Möglichkeit, Stationsdaten abzufragen. Sie können die vollständigen Stationsdaten abfragen oder die Abfrage weiter spezifizieren und z.B. die Daten nur für eine bestimmte Station abfragen.

 

Die Abfrage von Preisdaten lässt sich z.B. über ein HTML-Scripting zur Darstellung von aktuellen Stationspreisen auf Ihrer Händler-Webseite nutzen:

 

 

 

 => Erzeugen des API-Autorisierungsschlüssels

 

 

 Abruf der Stationsdaten im JSON-Format (StationDataService)

 

Mit dem oben erzeugten API-Autorisierungsschlüssel haben Sie nun die Möglichkeit, die vollständigen Stationsdaten über einen programmierten Abruf abzufragen.

 

Beispiel-Programmierung (in C#) für alle Stationen / alle Daten:

 

                const string address = "https://webapps.huth.org/[mandantenname]/api/stationDataService/stations";

            var request = (HttpWebRequest)WebRequest.Create(address);           

            request.Accept = "application/json";

            request.Headers.Add("WebApiKey", "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx");

            var response = request.GetResponse();

            var responseStream = response.GetResponseStream();

            if (responseStream != null)

            {

                using (var reader = new StreamReader(responseStream))

                {

                    Console.WriteLine(reader.ReadToEnd());

                }

            }

 

Die Abfrage kann in verschiedenen Detail-Stufen durchgeführt werden. Hierzu müssen die entsprechenden URLs in der Abfrage verwendet werden:

 

Get all stations (= Abruf der Daten von allen Stationen)

https://webapps.huth.org/[mandantenname]/api/stationDataService/stations/

 

Get one station by Id (= Abruf der Daten von einer Station)

https://webapps.huth.org/[mandantenname]/api/stationDataService/stations/[StationID]

 

Get all prices for one station (= Abruf aller Preise für eine Station)

https://webapps.huth.org/[mandantenname]/api/stationDataService/stations/[StationID]/stationProductPrices

 

Get all stationProducts for one station (= Abruf aller Stationsprodukte mit Preisen für eine Station)

https://webapps.huth.org/[mandantenname]/api/stationDataService/stations/[StationID]/stationProducts

 

Get one stationProduct for one station with id (= Abruf eines Stationsproduktes mit Preis für eine Station)

https://webapps.huth.org/[mandantenname]/api/stationDataService/stations/[StationID]/stationProducts/61

 

Get all prices for one stationProduct (= Abruf aller Preise für ein Stationsprodukt für eine Station)

https://webapps.huth.org/[mandantenname]/api/stationDataService/stations/[StationID]/stationProducts/61/stationProductPrices

 

 

 

Result (Beispiel für den Abruf ".../api/stationDataService/stations/[StationID]", Darstellung mit FIDDLER) (Auszug):

 

 

 

 Mögliche Responses 

 

200 = [OK]

201 = Created (angelegt)

400 = Bad Request (fehlerhafte Anfrage)

401 = Unauthorized  (keine Authentifizierung)

403 = Forbidden (fehlende Berechtigung, z.B. Zugriff von einem Rechner, dessen IP-Adresse nicht auf der Whitelist steht)

404 = Not Found

405 = Method Not Allowed

415 = Unsupported Media Type

500 = Internal Server Error (Server-Fehler)

 

 

HUTH Elektronik Systeme GmbH  -  Stand: 04.07.2014  -  Autor: Frank-Olaf Nagel