iwarePRINT API – Instrukcja dla programistów

iwarePRINT API jest to API dające dostęp i operacje na obiektach w drukarni internetowej takich jak m.in. zamówienia, produkty, pliki klientów i użytkownicy. Do działania API wymagane jest posiadanie wszystkich modułów. Połączenia do API odbywają się poprzez protokół HTTP/HTTPS i dane są przekazywane w formacie JSON.

 

 

1. Przekazywanie danych

Dane wejściowe do danej metody mogą być przekazywane jako parametry REQUEST, lub jako obiekt JSON, przesyłany pod parametrem REQUEST o nazwie “json”.

Przykładowe wywołanie: /api/nazwa/metody/?json={kod json}. Druga opcja jest bardziej zalecana ze względu na złożoność danych np. przy dodawaniu zamówienia.

 

 

2. Klucz dostępu

Każde odwołanie do API musi zawierać jako jeden z parametrów klucz dostępu, wygenerowany wcześniej w danej drukarni internetowej iwarePRINT w zakładce Ustawienia->API. Klucz zapewnia dostęp do określonych metod zaznaczonych przy jego generowaniu. Przykładowe odwołanie z wykorzystaniem klucza: /api/nazwa/metody/?key=<klucz>&json={kod json}

 

 

3. Metody

Opis metod i poszczególnych wartości wysyłanych i zwracanych jest dostępny w każdej drukarni pod ścieżką Ustawienia->Api.

Instrukcja ta przedstawia metody które są aktualnie zaimplementowane w danej wersji drukarni.

 

 

4. Dane zwracane

Dane zwracane są w formacie JSON. Przy tym każda odpowiedź ma następujący format:

{

status: “ok/error”,

result: {}

}

 

status – Zależnie od powodzenia operacji zwracany jest “ok” w trakcie powodzenia, lub “error” w przypadku błędu.

result – W przypadku powodzenia operacji, tutaj zwracany jest obiekt właściwy. W przypadku błędu, zwracany jest komunikat tekstowy o danym błędzie.

 

 


5. Przykładowe wywołania

 

1. Pobranie danych o użytkowniku na podstawie podanego id – w tym przypadku “1”:

  • metoda: /api/user/get/{id}
  • adres wywołania: http://twoja-drukarnia.iwareprint.pl/api/user/get/1
  • parametry: ?key=dcc85e54d4a43a37139bfe3
  • przykładowa odpowiedź: {„status”:”ok”,”result”:{„id”:”1″,”invoiceData”:{„company”:”Agencja testowa”,”name”:null,”surname”:null,”addressLine”:”Kr\u00f3tka 12\/4″,”city”:”Warszawa”,”postalCode”:”00-952″,”phone”:null},”shipmentData”:{„company”:”Agencja testowa”,”name”:null,”surname”:null,”addressLine”:”D\u0142uga 12\/4″,”city”:”Wroc\u0142aw”,”postalCode”:”54-952″,”phone”:null},”email”:”firma.iware@wp.pl”,”verified”:”1″,”registrationDate”:”2014-01-31 14:07:27″,”points”:”330″,”printingHouseId”:null}}

 

 2. Pobranie dwóch ostatnio zarejestrowanych użytkowników:

  • metoda: /api/user/find/
  • adres wywołania: http://twoja-drukarnia.iwareprint.pl/api/user/find/
  • parametry: ?key=dcc85e54d4a43a37139bfe3&json={„orderBy”:”id”, „orderByType”:”desc”,”limit”:1}
  • przykładowa odpowiedź: {„status”:”ok”,”result”:[{„id”:”1″,”invoiceData”:{„company”:”Agencja testowa”,”firstName”:null,”lastName”:null,”street”:”Kr\u00f3tka”,”buildingNumber”:”12″,”apartmentNumber”:”4″,”postal”:”00-952″,”city”:”Warszawa”,”phone”:”22 1237654″},”shipmentData”:{„company”:”Agencja testowa”,”firstName”:null,”lastName”:null,”street”:”D\u0142uga”,”buildingNumber”:”12″,”apartmentNumber”:”4″,”postal”:”54-952″,”city”:”Wroc\u0142aw”,”phone”:”22 1237654″},”email”:”firma.iware@wp.pl”,”verified”:”1″,”registrationDate”:”2014-01-31 14:07:27″,”points”:”330″,”printingHouseId”:null},{„id”:”2″,”invoiceData”:{„company”:”Mira\u017c”,”firstName”:””,”lastName”:””,”street”:”Marsza\u0142kowska”,”buildingNumber”:”2″,”apartmentNumber”:””,”postal”:”00950″,”city”:”Warszawa”,”phone”:”22 65454321″},”shipmentData”:{„company”:”Mira\u017c”,”firstName”:null,”lastName”:null,”street”:”Marsza\u0142kowska”,”buildingNumber”:”2″,”apartmentNumber”:null,”postal”:”00950″,”city”:”Warszawa”,”phone”:”22 65454321″},”email”:”test_8@wp.pl”,”verified”:”1″,”registrationDate”:”2014-01-31 14:08:38″,”points”:”30″,”printingHouseId”:null}]}

 

6. Przykładowe implementacje

Przykładowa implementacja w PHP: https://github.com/iwareprint/iwareprint-api-php/