Dokumentacja API
Lista metod
Testowanie wywołań
Changelog


Wprowadzenie
API umożliwia wymianę informacji pomiędzy zewnętrznym systemem a BaseLinkerem.
Do komunikacji wykorzystywane są dane w formacie JSON. Aby wykonać zapytanie do API, należy wysłać odpowiednie żądanie POST na adres:
https://api.baselinker.com/connector.php

Do wywołania każdej metody niezbędny jest token. Token jest przypisany bezpośrenio do konta użytkownika BaseLinkera. Użytkownik może wygenerować token API w panelu BaseLinker w dziale "Konto/inne -> Moje konto -> API".

Do pliku connector.php należy przesłać 3 wartości przez POST:
  1. token - unikalny klucz API użytkownika
  2. method - nazwę wywoływanej metody API
  3. parameters - argumenty wywoływanej funkcji w formacie JSON

Przykład: https://api.baselinker.com/connector.php , POST: token=1-23-ASOIM234MFDSK534LDS &method=getOrders &parameters={"date_from": 1407341754}


Ostatnie zmiany
Ostatnia aktualizacja API miała miejsce 2020-05-18.


Magazyn produktów
getStoragesListMetoda umożliwia pobranie listy dostępnych magazynów, do których można odwoływać się przez API.
addCategoryMetoda umożliwia dodanie kategorii do magazynu BaseLinkera. Ponowne dodanie kategorii z takim samym identyfikatorem, powoduje aktualizacje zapisanej wcześniej kategorii.
addProductMetoda umożliwia dodanie nowego produktu do magazynu BaseLinkera. Podanie produktu wraz z ID, powoduje aktualizacje zapisanego wcześniej produktu.
addProductVariantMetoda umożliwia dodanie nowego wariantu do produktu w magazynie BaseLinkera. Podanie wariantu wraz z ID, powoduje aktualizacje zapisanego wcześniej wariantu.
deleteCategoryMetoda umożliwia usunięcie kategorii z magazynu BaseLinkera. Razem z kategorią usuwane są zawarte w niej produkty (nie dotyczy to jednak produktów w podkategoriach). Kategorie podrzędne zostaną zmienione na kategorie najwyższego rzędu.
deleteProductMetoda umożliwia usunięcie produktu z magazynu BaseLinkera.
deleteProductVariantMetoda umożliwia usunięcie wariantu produktu z magazynu BaseLinkera.
getCategoriesMetoda umożliwia pobranie listy kategorii magazynu BaseLinkera lub magazynu sklepu podłączonego do BaseLinkera.
getProductsDataMetoda umożliwia pobranie dokładnych danych wybranych produktów z magazynu BaseLinkera lub magazynu sklepu/hurtowni podłączonych do BaseLinkera.
getProductsListMetoda umożliwia pobranie dokładnych danych wybranych produktów z magazynu BaseLinkera lub magazynu sklepu/hurtowni podłączonych do BaseLinkera.
getProductsQuantityMetoda umożliwia pobranie stanów magazynowych z magazynu BaseLinkera lub magazynu sklepu/hurtowni podłączonych do BaseLinkera.
getProductsPricesMetoda umożliwia pobranie cen produktów z magazynu BaseLinkera lub magazynu sklepu/hurtowni podłączonych do BaseLinkera.
updateProductsQuantityMetoda umożliwia masowe aktualizowanie stanów magazynowych produktów (i/lub ich wariantów) w magazynie BaseLinkera lub magazynie sklepu/hurtowni podłączonych do BaseLinkera. Maksymalnie po 1000 produktów jednocześnie.
updateProductsPricesMetoda umożliwia masowe aktualizowanie cen produktów (i/lub ich wariantów) w magazynie BaseLinkera. Maksymalnie po 1000 produktów jednocześnie.


Zamówienia
getJournalListMetoda umożliwia pobieranie listy zdarzeń w zamówieniach.
addOrderMetoda umożliwia dodanie nowego zamówienia do managera zamówień BaseLinker.
getOrdersMetoda umożliwia pobranie zamówień od określonej daty z managera zamówień BaseLinker. Listę zamówień można ograniczyć przy użyciu filtrów opisanych w parametrach metody. Maksymalnie zwracane jest 100 zamówień jednocześnie.

Zalecane jest pobieranie tylko potwierdzonych zamówień (get_unconfirmed_orders = false). Niepotwierdzone zamówienia mogą być niepełne. Użytkownik może być np. w trakcie tworzenia zamówienia - istnieje ono już w bazie, jednak nie ma uzupełnionych wszystkich informacji. Niepotwierdzone zamówienia mogą zawierać tylko częściową listę produktów i mogą zostać wkrótce zmienione. Zamówienia potwierdzone najczęściej nie ulegają już zmianie i mogą być bezpiecznie pobrane do zewnętrznego systemu.

Optymalny sposób pobierania bieżących zamówień to:
Pobranie identyfikatorów nowych zamówień metodą getJournalList.

Lub, przy wykorzystaniu tej metody:
1. Ustalenie początkowej daty i podanie jej w polu date_confirmed_from
2. Przetworzenie wszystkich odebranych zamówień. Jeśli odebrano 100 zamówień, oznacza to, że do pobrania może być ich jeszcze więcej.
3. Pobranie kolejnej paczki zamówień, podając w polu date_confirmed_from wartość z date_confirmed ostatnio pobranego zamówienia. Operacja powtarzana aż do otrzymania paczki z ilością zamówień mniejszą niż 100 (oznacza to że nie ma więcej zamówień do pobrania).
4. Zapisanie date_confirmed ostatnio przetworzonego zamówienia. Kolejne pobranie zamówień można wykonać od tej daty, aby nie pobierać dwukrotnie tych samych zamówień. Nie ma możliwości aby jakieś zamówienie 'wskoczyło' do bazy z wcześniejszą datą potwierdzenia. Tym sposobem ma się pewność, że pobrane zostały wszystkie potwierdzone zamówienia.
getOrdersByEmailMetoda umożliwia wyszukanie zamówień związanych z podanym adresem e-mail. Funkcja przeznaczona do wykorzystania we wtyczkach do klientów poczty (programach typu thunderbird, outlook).
getOrdersByPhoneMetoda umożliwia wyszukanie zamówień związanych z podanym numerem telefonu. Funkcja przeznaczona do wykorzystania w programach do rozpoznawania dzwoniącego.
addInvoice(NOWA) Metoda umożliwia wystawienie faktury do zamówienia.
getInvoicesMetoda umożliwia pobranie wystawionych faktur z managera zamówień BaseLinker. Listę faktur można ograniczyć przy użyciu filtrów opisanych w parametrach metody. Maksymalnie zwracane jest 100 faktur jednocześnie.
getSeries(NOWA) Metoda umożliwia pobranie serii numeracji faktury/paragonu.
getOrderStatusListMetoda umożliwia pobranie statusów zamówień stworzonych przez klienta w managerze zamówień BaseLinker.
getOrderPaymentsHistoryMetoda umożliwia pobranie historii płatności dla wybranego zamówienia, w tym zewnętrznego identyfikatora płatności z bramki płatniczej. Jedno zamówienie może mieć wiele wpisów w historii płatności, spowodowanych przez dopłaty, zmiany wartości zamówienia, ręczną edycję płatności.
getNewReceiptsMetoda umożliwia pobranie paragonów oczekujących na wystawienie.
setOrderFieldsMetoda umożliwia edycję wybranych pól (np. danych adresowych, notatek itp.) konkretnego zamówienia. Należy podać wyłącznie te pola, które chce się edytować, pozostałe pola mogą zostać pominięte w zapytaniu.
addOrderProductMetoda umożliwia dodanie nowego produktu do zamówienia.
setOrderProductFieldsMetoda umożliwia edycję danych wybranych pozycji (np. ceny, ilości sztuk itp.) konkretnego zamówienia. Należy podać wyłącznie te pola, które chce się edytować, pozostałe pola mogą zostać pominięte w zapytaniu.
deleteOrderProductMetoda umożliwia usunięcie konkretnego produktu z zamówienia.
setOrderPaymentMetoda umożliwia dodanie wpłaty do zamówienia.
setOrderStatusMetoda umożliwia zmianę statusu zamówienia.
setOrderReceiptMetoda umożliwia oznaczanie zamówień z wystawionym paragonem.
addOrderInvoiceFile(NOWA) Metoda umożliwia dodanie zewnętrznego pliku PDF do faktury wystawionej wcześniej z poziomu BaseLinkera. Pozwala to na podmianę standardowej faktury z BaseLinkera na fakturę wystawioną np. w programie ERP.


Przesyłki kurierskie
createPackageMetoda umożliwia tworzenie przesyłki w systemie wybranego kuriera.
createPackageManualMetoda umożliwia wprowadzenie numeru przesyłki i nazwy kuriera do zamówienia (funkcja wykorzystana tylko do wprowadzania przesyłek utworzonych poza BaseLinkerem).
getCouriersListMetoda umożliwia pobranie listy dostępnych kurierów.
getCourierFieldsMetoda umożliwia pobranie pól formularza do nadawania przesyłek dla wybranego kuriera.
getCourierServicesMetoda umożliwia pobranie dodatkowych usług kurierskich, które zależne są od innych ustawień przesyłki. Stosowane wyłącznie przy kurierach X-press oraz BrokerSystem. Nie dotyczy pozostałych kurierów, u których formularze mają stałe opcje. Do metody należy przesłać szczegóły przesyłki (format jak w createPackage) aby otrzymać spis dodatkowych usług.
getCourierAccountsMetoda umożliwia pobranie listy kont podłączonych u danego kuriera.
getLabelMetoda umożliwia pobranie etykiety (listu przewozowego) dla wybranej przesyłki.
getOrderPackagesMetoda umożliwia pobranie wcześniej stworzonych przesyłek dla wybranego zamówienia.
getCourierPackagesStatusHistoryMetoda umożliwia pobranie historii listy statusów danych przesyłek. Maksymalnie po 100 przesyłek jednocześnie.
deleteCourierPackage(NOWA) Metoda umożliwia usunięcie wcześniej utworzonej przesyłki. Metoda usuwa przesyłki z systemu BaseLinkera oraz z systemu kuriera, jeżeli API kuriera daje taką możliwość