Napojenie na API

Prostredníctvom aplikačného rozhrania je možné ku Kokiskashop.sk pristupovať vzdialene a umožňuje to tak integráciu do ďalšieho systému. Súčasné API je založené na RESTfull architektúre, a preto je jeho implementácia technologicky nenáročná.

Vzájomná výmena dát sa skladá z dvoch častí:

Rozhranie Kokiskashop.sk - slúži na získavanie aktuálnych informácií o tovare - cena, dostupnosť, možnosti dopravy, vytvorenie objednávky,..

 

Rozhranie partnera - slúži na získavanie informácií o stave objednávky (predovšetkým o zmene platby), oznamovanie zmien objednávky v napojenom obchode, prijímanie vygenerovaných faktúr,..

Aby bylo možné sprostredkovať komunikáciu so všetkými partnermi, je systém navrhnutý tak, aby mohol poskytovať viac aplikačných rozhraní. Aktuálne je dostupné API po vzore Heureky.sk (viď dokumentácia), ktoré má rozšírenie o autentifikáciu užívateľov. Pre odpoveď je využitý formát JSON.

Aktivácia služby

Aby ste mohli API využívať, je nutná aktivácia z našej strany. Aktivácia sa uskutočňuje vždy pre konkrétne API (aktuálne iba typ Heuréka) a užívateľský účet. Ak máte záujem, kontaktujte nás na emaili partner@kokiskashop.sk.

Ako volať služby

Pre uľahčenie implementácie sme sa rozhodli poskytnúť drobnú podporu v jazyku PHP. Invokácia vzdialeného serveru v PHP je najčastejšie realizovaná pomocou knižnice curl.

V nasledujúcom príklade bude využívaná trieda RequestFactory..

Zistenie dostupnosti troch produktov:

Všetky dáta použité v príkladoch sú iba ilustračné.

< ?php
//include wrapper for curl library
include ('./RequestFactory.php');
 
//initiate array
$data['products'] = array();
//add first product
$data['products'][] = array('id' => 599, 'count' => 2);
//add next products
$data['products'][] = array('id' => 1091, 'count' => 1);
//add next products
$data['products'][] = array('id' => 109, 'count' => 6);
 
//add authentification info
$data['login'] = "yourLogin";
 
//password as plain text
$data['password'] = "yourPassword";
//password as hashcode
$data['password'] = hash("sha256", "yourPassword");
 
//set url for request
$url = "https://www.kokiskashop.sk/api/heureka/1/products/availability";
 
//choose method of request - products/availability should be GET
$method = RequestFactory::$METHOD_GET;
 
//make request and get response in JSON
$jsonResponse = RequestFactory::doRequest($url, $data, $method);
 
//decode response - bacause it is possible to handle big integers, it necessary
//to set up json_decode function
$response = json_decode($jsonResponse, TRUE, 512, JSON_BIGINT_AS_STRING);
 
//now one has associative array. Print it
print_r($response); 
?>
 
OUTPUT: 
 
Array ( 
    [products] => Array ( 
        [0] => Array ( 
            [id] => 599 
            [available] => 1 
            [count] => 2 
            [delivery] => 0 
            [name] => Stan pro 6 osob 
            [price] => 3327 
            [priceTotal] => 6654 )  
        [1] => Array ( 
            [id] => 1091    
            [available] => 1 
            [count] => 1 
            [delivery] => 0 
            [name] => Didgeridoo 130 cm 
            [price] => 461 
            [priceTotal] => 461 ) 
        [2] => Array ( 
            [id] => 109 
            [available] => 0) 
        ) 
    [priceSum] => 7115 
)

 

BIGtheme.net Joomla 3.3 Templates