Beispiele für den Zugriff

Möglichkeiten, wie die EnVKV API abgefragt und verarbeitet werden kann. Hinweis bei allen Anfragen: Das Wort APIKEY ist mit dem individuell zugeteilten Schlüssel zu ersetzen, da sonst das System mit einer „401 Authorization required“ Fehlermeldung antwortet.

Curl CLI

Berechnung der Effizienzklasse per Command Line Interface.
Übermittelt werden Masse und CO2 Wert.

curl -H "x-apikey: APIKEY" -d  "masse=1448&co2=138" https://envkv.54grad.de/api/effizienzklasse

Curl via PHP

POST Data Array aufbauen mit allen benötigten Werten für die PDF Generierung.

$postdata = array(
'marke'=> 'Skoda',
'modell'=> 'Octavia III 1,6 TDI CR 77kW DSG Elegance Plus',
'kw'   => '84',
'kraftstoff' => 'Diesel',
'verbrauch'  => 7.9,
'verbrauch_in'  => 9.3,
'verbrauch_au'  => 5.1,
'masse'=> '1484',
'co2'  => 142,
'hubraum' => 1598
);

CURL Modul in PHP initialisieren und Array per POST übermitteln.

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://envkv.54grad.de/api/pkwlabel/');
curl_setopt($ch, CURLOPT_HTTPHEADER, array("x-apikey: APIKEY"));
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$data = curl_exec($ch);
status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

$status zeigt den Header Response Code der EnVKV API, $data beinhaltet die Antwort des Servers. Eine erfolgreiche Verarbeitung und Erstellung von Daten wird immer mit 201 im Header beantwortet. Im Falle des PKW Labels wird dann ein PDF File ausgegeben, welcher direkt als Datei im eigenen System abgespeichert werden kann.

if($status == 201) {
    $file = fopen('./pdf/pkwlabel.pdf','wb');
    fwrite($file, $data);
    fclose($file);
} else {
    //Fehlerverarbeitung, es kommt ein JSON Object zurück.    
}

Zend_Http_Client mit dem Zend Framework für PHP

Mit dem Zend Framework ist die Abfrage noch einfacher zu realisieren. Im Beispiel soll die EnVKV API die Energieträgerkosten auf 20.000km berechnen.

$postdata = array(
     'kraftstoff' => 'Super E10', 
     'verbrauch' => 7.2
);
         
$client = new Zend_Http_Client('https://envkv.54grad.de/api/energiekosten');
$client->setHeaders('x-apikey','APIKEY');
$client->setParameterPost($postdata);
$response = $client->request('POST');

EnVKV API Grundlagen

Weitere Informationen entnehmen Sie bitte der Hauptübersicht: API Grundlagen