WebApi - FunkcjeWię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: -------------------------------------------------------------- Funkcja dodająca klienta do sklepu -------------------------------------------------------------- Funkcja dodająca zamówienie do sklepu -------------------------------------------------------------- Funkcja ustawiająca status zamówienia -------------------------------------------------------------- Funkcja zwracająca całkowitą ilość produktu |