WebApi - Funkcje

MENU


Funkcje Webapi

Większość wywoływanych funkcji wymaga parametrów. Muszą być one podane w postaci tabeli podczas wywoływanie funkcji. Każda funkcja zwraca tabelę z danymi według poniższej instrukcji. Wyjątkiem jest sytuacja, gdy wywołanie jest błędne, lub procedura nie znalazła żądanych danych, lub nie mogła wykonać polecenia. W takim przypadku dane zwracane mają postać tabeli, w których najważniejszym elementem jest pole o nazwie 'error', zawierające numer wykrytego błędu. W większości stosowanych interfejsów otrzymamy dodatkowo pole 'error_description', zawierające krótki opis błędu.

Część funkcji dotycząca odczytywania produktów, kategorii, producentów i innych danych, które są jawne dla normalnego użytkownika, jest dostępna dla każdego, kto wyśle odpowiednie zapytanie do systemu API. Pozostałe funkcje, które dotyczą danych dostępnych jedynie dla administratorów sklepu, lub też zapisu do sklepu jakichkolwiek parametrów, dostępne są po zalogowaniu się do serwisu. Do logowania należy podać takie same dane, jakie podaje się podczas logowania się do panelu administracyjnego sklepu.

Wyjaśnienie pojęć

W dokumentacji pojawiają się pojęcia lub typy danych wymagające dodatkowego komentarza. Poniżej znajduje się ich wyjaśnienie:

- znacznik opcji
Jest to wartość typu string, zawierająca wybrane opcję produktu. Może on mieć następującą postać:
PPP
PPP{OPT}VAL
PPP{OPT_1}VAL_1{OPT_2}VAL_2
gdzie
PPP - identyfikator produktu
OPT - identyfikator opcji
VAL - identyfikator wartości opcji

- dana wejściowa (InputField)
Jest to tablica w postaci:
name - nazwa opcji
value - wartość opcji
Pole jest wykorzystywane podczas przekazywania danych przeznaczonych do zapisu poprzez WEBAPI.

- produkt dodawany (InputProduct)
Jest to tablica w postaci:
id - identyfikator produktu
quantity - ilość sztuk produktu
Pole jest wykorzystywane podczas dodawania produktów do zamówienia poprzez WEBAPI.


Lista metod sStore API:

---------------------------------------------------------------------------------
doLogin

Funkcja pozwala zalogować się do systemu API.

Parametry wejściowe:
- user (string - wymagane) - nazwa użytkownika
- password (string - wymagane) - hasło użytkownika

Parametry wyjściowe:
- session_id (string) - identyfikator sesji wymagany podczas wywoływania niektórych innych funkcji

---------------------------------------------------------------------------------
doLogout

Funkcja pozwala wylogować się z systemu API uniemożliwiając dalsze korzystanie z systemu.

Parametry wejściowe:
- session_id (string - wymagane) - identyfikator sesji otrzymany po zalogowaniu

Parametry wyjściowe:
(brak)

---------------------------------------------------------------------------------
doGetProductInfo

Funkcja pozwala pobrać informację o jednym produkcie

Parametry wejściowe:
- product_id (int - wymagane) - identyfikator produktu

Parametry wyjściowe:
Element typu ProductInfo, zawierający następujące dane:
- product_id (int) - identyfikator produktu
- manufacturer_id (int) - identyfikator producenta
- price (float) - cena netto produktu
- tax_id (int) - identyfikator stawki podatku
- unit_id (int) - identyfikator jednostki miary
- unit_value (float) - wartość jednostki miary (ilość produktu w opakowaniu)
- add_date (string) - data dodania produktu do sklepu
- edit_date (string) - data ostatniej modyfikacji produktu
- model (string) - nazwa modelu lub kod produktu
- pkwiu (string) - wartość PKWiU
- weight (float) - waga produktu
- status (int) - informacja czy produkt jest włączony i dostępny, czy wyłączony
- name (string) - nazwa produktu
- description (string) - opis produktu
- quantity_mode (int) - informacja o sposobie ustalania ilości produktu (0 - ustalony dla produktu, 1 - zależny od opcji, 2 - nieokreślony)
- quantity (array) - tabela zawierająca ustalone ilości w postaci: (sign (string) - znacznik opcji, quant (int) - ilość)
- images (array) - tabela zawierająca zdjęcia produktu w postaci: (image (string) - zdjęcie produktu)
- attributes (array) - tabela zawierająca atrybuty produktu w postaci: (name (string) - nazwa atrybutu,
value (string) - wartość atrybutu)

---------------------------------------------------------------------------------
doGetProductsList

Funkcja pozwalająca pobrać listę produktów według wskazanych kryteriów

Parametry wejściowe:
- category_id (int - wymagane) - identyfikator kategorii, z której należy pobrać produkty (może być 0 dla kategorii głównej)
- available (int) - Wartość 1 pozwala pobrać tylko produkty dostępne (włączone i z ilością większą od zera lub niekreśloną)
- package (int) - ilość produktów do pobrania na raz (domyślnie 50)
- offset (int) - numer kolejnej porcji danych (domyślnie 0 = pierwsza porcja)

Parametry wyjściowe:
Tablica typu ArrayOfProductInfo, zawierająca dane typu ProductInfo. opis tych danych znajduje się w opisie metody doGetProductInfo.

---------------------------------------------------------------------------------
doGetManufacturer

Funkcja pozwala pobrać informację o jednym producencie

Parametry wejściowe:
- manufacturer_id (int - wymagane) - identyfikator producenta

Parametry wyjściowe:
Element typu ManuInfo, zawierający następujące dane:
- manufacturer_id (int) - identyfikator producenta
- manufacturer_name (string) - nazwa producenta

---------------------------------------------------------------------------------
doGetManufacturersList

Funkcja pozwalająca pobrać listę producentów.

Parametry wejściowe:
(brak)

Parametry wyjściowe:
Tablica typu ArrayOfManuInfo, zawierająca dane typu ManuInfo. opis tych danych znajduje się w opisie metody doGetManufacturer.

---------------------------------------------------------------------------------
doGetTaxRate

Funkcja pozwala pobrać informację o stawce podatku według podanego identyfikatora

Parametry wejściowe:
- tax_id (int - wymagane) - identyfikator stawki podatku

Parametry wyjściowe:
Element typu TaxInfo, zawierający następujące dane:
- tax_id (int) - identyfikator stawki podatku
- tax_zone (int) - identyfikator strefy podatkowej
- tax_rate (float) - stawka podatku wyrażona w procentach

---------------------------------------------------------------------------------
doGetTaxesList

Funkcja pozwalająca pobrać listę stawek podatków

Parametry wejściowe:
- zone_id (int - wymagane) - identyfikator strefy podatkowej

Parametry wyjściowe:
Tablica typu ArrayOfTaxInfo, zawierająca dane typu TaxInfo. opis tych danych znajduje się w opisie metody doGetTaxRate.

---------------------------------------------------------------------------------
doGetUnit

Funkcja pozwala pobrać informację o jednostce miary według podanego identyfikatora

Parametry wejściowe:
- unit_id (int - wymagane) - identyfikator jednostki miary

Parametry wyjściowe:
Element typu UnitInfo, zawierający następujące dane:
- unit_id (int) - identyfikator jednostki miary
- unit_name (string) - nazwa lub symbol jednostki miary

---------------------------------------------------------------------------------
doGetUnitsList

Funkcja pozwalająca pobrać listę jednostek miary

Parametry wejściowe:
(brak)

Parametry wyjściowe:
Tablica typu ArrayOfUnitInfo, zawierająca dane typu UnitInfo. opis tych danych znajduje się w opisie metody doGetUnit.

---------------------------------------------------------------------------------
doGetCat

Funkcja pozwala pobrać informację o kategorii produktów

Parametry wejściowe:
- cat_id (int - wymagane) - identyfikator kategorii

Parametry wyjściowe:
Element typu CatInfo, zawierający następujące dane:
- cat_id (int) - identyfikator kategorii
- cat_parent (int) - identyfikator kategorii nadrzędnej (lub 0 jeśli kategoria jest na najwyższym poziomie)
- cat_name (string) - nazwa kategorii

---------------------------------------------------------------------------------
doGetCatsList

Funkcja pozwalająca pobrać listę kategorii produktów

Parametry wejściowe:
- parent_id (int - wymagane) - identyfikator kategorii nadrzędnej (lub 0 jeśli kategoria ma być na najwyższym poziomie)

Parametry wyjściowe:
Tablica typu ArrayOfCatInfo, zawierająca dane typu CatInfo. opis tych danych znajduje się w opisie metody doGetCat.

---------------------------------------------------------------------------------
doGetOptions

Funkcja pozwalająca pobrać listę opcji produktów oraz przyporządkowanych im wartości

Parametry wejściowe:
- option_id (int) - identyfikator opcji
- product_id (int) - identyfikator produktu
- cat_id (int) - identyfikator kategorii

Parametry wyjściowe:
Tablica zawierająca następujące dane:
- option_id (int) - identyfikator opcji
- option_name (string) - nazwa opcji
- values (array) - tablica zawierająca listę możliwych wartości w postaci: (value_id (int) - identyfikator wartości, value_name (string) - nazwa wartości)

---------------------------------------------------------------------------------
doGetOptionsFromString

Funkcja pozwalająca pobrać dane o wybranych wartościach opcji produktu, na podstawie znacznika opcji

Parametry wejściowe:
- option_string (string - wymagane) - znacznik opcji

Parametry wyjściowe:
Tablica zawierająca następujące dane:
- product_id (int) - identyfikator produktu
- options (array) - tablica zawierająca listę wybranych wartości w postaci: (option_id (int) - identyfikator opcji, option_name (string) - nazwa opcji, value_id (int) - identyfikator wartości, value_name (string) - nazwa wartości)

---------------------------------------------------------------------------------
doGetOrderInfo

Funkcja pozwala pobrać informację o zamówieniu


Parametry wejściowe:
- session_id (string - wymagane) - identyfikator sesji
- order_id (int - wymagane) - identyfikator zamówienia

Parametry wyjściowe:
Element typu OrderInfo, zawierający następujące dane:
- order_id (int) - identyfikator zamówienia
- customer_id (int) - identyfikator klienta
- customer_name (string) - nazwa lub imię i nazwisko klienta
- customer_company (string) - nazwa firmy klienta
- customer_address (string) - adres klienta
- delivery_name (string) - nazwa lub imię i nazwisko klienta na potrzeby wysyłki
- delivery_company (string) - nazwa firmy klienta na potrzeby wysyłki
- delivery_address (string) - adres klienta na potrzeby wysyłki
- billing_name (string) - nazwa lub imię i nazwisko klienta na potrzeby faktury
- billing_company (string) - nazwa firmy klienta na potrzeby faktury
- billing_address (string) - adres klienta na potrzeby faktury
- customer_email (string) - adres e-mail klienta
- customer_phone (string) - numer telefonu klienta
- payment (string) - sposób zapłaty
- order_date (string) - data złożenia zamówienia
- status (int) - identyfikator statusu zamówienia
- shipping_method (string) - sposób wysyłki
- shipping_cost (float) - koszt wysyłki brutto
- total_cost (float) - całkowity koszt zamówienia
- weight (float) - całkowita masa przesyłki uwzględniająca masę produktów i opakowania zbiorczego
- info (string) - informacja dodatkowa wpisana przez klienta
- products (array) - tablica zawierająca listę produktów w postaci: (product_id (int) - identyfikator produktu, quantity (int) - ilość produktów, options (string) - znacznik opcji, price (float) - cena netto produktu, tax (float) - stawka podatku wyrażona w procentach, weight (float) - masa produktu);

---------------------------------------------------------------------------------
doGetOrdersList

Funkcja pozwalająca pobrać listę zamówień według wskazanych kryteriów

Parametry wejściowe:
- session_id (string - wymagane) - identyfikator sesji
- customer_id (int) - identyfikator klienta
- status (int) - identyfikator statusu zamówienia
- package (int) - ilość zamówień do pobrania na raz (domyślnie 50)
- offset (int) - numer kolejnej porcji danych (domyślnie 0 = pierwsza porcja)

Parametry wyjściowe:
Tablica typu ArrayOfOrderInfo, zawierająca dane typu OrderInfo. opis tych danych znajduje się w opisie metody doGetOrderInfo.

---------------------------------------------------------------------------------
doGetOrderStatus

Funkcja pozwala pobrać informację o statusie zamówienia według podanego identyfikatora

Parametry wejściowe:
- session_id (string - wymagane) - identyfikator sesji
- status_id (int - wymagane) - identyfikator statusu zamówienia

Parametry wyjściowe:
Element typu OrderStatusInfo, zawierający następujące dane:
- status_id (int) - identyfikator statusu zamówienia
- status_name (string) - nazwa statusu zamówienia

---------------------------------------------------------------------------------
doGetOrderStatusesList

Funkcja pozwalająca pobrać listę statusów zamówienia

Parametry wejściowe:
- session_id (string - wymagane) - identyfikator sesji

Parametry wyjściowe:
Tablica typu ArrayOfOrderStatuses, zawierająca dane typu OrderStatusInfo. opis tych danych znajduje się w opisie metody doGetOrderStatus.

---------------------------------------------------------------------------------
doGetCustomer

Funkcja pozwala pobrać informację o kliencie

Parametry wejściowe:
- session_id (string - wymagane) - identyfikator sesji
- customer_id (int - wymagane) - identyfikator klienta

Parametry wyjściowe:
- customer_id (int) - identyfikator klienta
- firstname (string) - imię klienta
- lastname (string) - nazwisko klienta
- email (string) - adres e-mail klienta
- phone (string) - numer telefonu klienta
- company (string) - nazwa firmy klienta
- street (string) - ulica i numer domu klienta
- postcode (string) - kod pocztowy
- city (string) - miejscowość
- nip (string) - numer NIP klienta

--------------------------------------------------------------
doSetProductParams

Funkcja pozwala zmodyfikować wybrane parametry produktu

Parametry wejściowe:
- session_id (string - wymagane) - identyfikator sesji
- product_id (int - wymagane) - identyfikator produktu
- quantity_mode (int) - informacja o sposobie ustalania ilości produktu (0 - ustalony dla produktu, 1 - zależny od opcji, 2 - nieokreślony)
- quantity (array) - tabela zawierająca ustalone ilości w postaci: (sign (string) - znacznik opcji, quant (int) - ilość). Wyjątkowo dla quantity mode = 0, to pole może mieć wartość typu int.
- model (string) - nazwa modelu lub kod produktu
- pkwiu (string) - wartość PKWiU
- price (float) - cena netto produktu
- profit (float) - marża (narzut) na cenę produktu wyrażona w procentach
- weight (float) - waga produktu wyrażona w kilogramach
- status (int) - informacja czy produkt jest włączony i dostępny, czy wyłączony

Parametry wyjściowe:
- product_id (int) - identyfikator edytowanego produktu, lub 0 w przypadku, gdyby edycja się nie powiodła

--------------------------------------------------------------
doInsertProduct

Funkcja dodająca produkt do sklepu

Parametry wejściowe:
- session_id (string - wymagane) - identyfikator sesji
- fields (array of InputField - wymagane) - tablica z polami zawierającymi dane wejściowe. Lista dostępnych danych jest następująca:
* category_id (int - wymagane) - identyfikator kategorii
* name (string - wymagane) - nazwa produktu
* price (float - wymagane) - cena netto
* quantity_mode (int) - informacja o sposobie ustalania ilości produktu (0 - ustalony dla produktu, 1 - zależny od opcji, 2 - nieokreślony)
* quantity (array) - tabela zawierająca ustalone ilości w postaci: (sign (string) - znacznik opcji, quant (int) - ilość). Wyjątkowo dla quantity mode = 0, to pole może mieć wartość typu int.
* model (string) - nazwa modelu lub kod produktu
* pkwiu (string) - wartość PKWiU
* profit (float) - marża (narzut) na cenę produktu wyrażona w procentach
* weight (float) - waga produktu wyrażona w kilogramach
* status (int) - informacja czy produkt jest włączony i dostępny, czy wyłączony
* tax_id (int) - identyfikator stawki podatku
* manufacturer_id (int) - identyfikator producenta
* unit_id (int) - identyfikator jednostki miary
* unit_value (float) - wartość jednostki miary (ilość produktu w opakowaniu)
* description (string) - opis produktu
* images (array) - tabela zawierająca zdjęcia produktu w postaci: (image (string) - link do zdjęcia produktu)

Parametry wyjściowe:
- product_id (int) - identyfikator dodanego produktu lub 0 w przypadku błędu

--------------------------------------------------------------
doInsertCustomer

Funkcja dodająca klienta do sklepu

Parametry wejściowe:
- session_id (string - wymagane) - identyfikator sesji
- fields (array of InputField - wymagane) - tablica z polami zawierającymi dane wejściowe. Lista dostępnych danych jest następująca:
* firstname (string - wymagane) - imię klienta
* lastname (string - wymagane) - nazwisko klienta
* email (string - wymagane) - email klienta
* phone (string - wymagane) - numer telefonu klienta
* street (string - wymagane) - ulica z numerem domu
* postcode (string - wymagane) - kod pocztowy
* city (string - wymagane) - miejscowość
* country (int - wymagane) - identyfikator kraju
* nip (string) - numer NIP lub PESEL
* newsletter (int) - informacja o dopisaniu do newslettera (1 - wpisany, 0 - nie wpisany)
* password (string) - hasło dla klienta. Nie podanie tego parametru jest równoznaczne z zakupem bez rejestracji.

Parametry wyjściowe:
- customer_id (int) - identyfikator dodanego klienta, lub 0 w przypadku błędu

--------------------------------------------------------------
doInsertOrder

Funkcja dodająca zamówienie do sklepu

Parametry wejściowe:
- session_id (string - wymagane) - identyfikator sesji
- fields (array of InputField - wymagane) - tablica z polami zawierającymi dane wejściowe. Lista dostępnych danych jest następująca:
* customer_id (int - wymagane) - identyfikator klienta
* payment (string - wymagane) - nazwa sposobu płatności
* shipping_id (int - wymagane) - identyfikator sposobu przesyłki
* shipping_cost (float - wymagane) - koszt przesyłki
* shipping_tax (float - wymagane) - wartość procentowa podatku za przesyłkę
- products (array of InputProduct - wymagane) - tablica z danymi produktów w zamówieniu

Parametry wyjściowe:
- order_id (int) - identyfikator dodanego zamówienia, lub 0 w przypadku błędu

--------------------------------------------------------------
doSetOrderStatus

Funkcja ustawiająca status zamówienia

Parametry wejściowe:
- session_id (string - wymagane) - identyfikator sesji
- order_id (int - wymagane) - numer zamówienia
- status_id (int - wymagane) - numer statusu
- comment (string) - komentarz do zmiany statusu

Parametry wyjściowe:
- order_status (string) - nazwa użytego statusu zamówienia

--------------------------------------------------------------
doGetTotalQuantity

Funkcja zwracająca całkowitą ilość produktu

Parametry wejściowe:
- product_id (int - wymagane) - identyfikator produktu

Parametry wyjściowe:
- quant (int) - ilość produktu