Specyfikacja plików w formacie CSV
Uzyskanie tokenu
Przed wywołaniem akcji importu należy najpierw uzyskać token za pomocą metody api
https://domena.pl/backendApi/login
Przykład użycia curl:
curl -H "X-ApiKey: klucz" --data '{"username":"login"}' -X POST "https://domena.pl/backendApi/login
Odpowiedź powinna wyglądać następująco: {"token":"c55cf6ff713b22e353c2224e0063a37c02d87f62"}
Uzyskany token jest następnie użyty przy komunikacji z API.
Import danych
1. Zakładanie nowych lub aktualizacja istniejących towarów.
Tab. 1. Żądanie
Metoda | URL |
---|---|
POST | /import/products |
Tab. 2. Parametry żądania
Typ | Parametr | Wartość |
---|---|---|
HEAD | X-ApiKey | string |
Przykład użycia curl:
curl -F 'file=@/ścieżka/do/pliku' -H 'X-ApiKey: klucz' -H "X-Token: token" -H 'Content-Type: text/csv' https://nazwa_domeny/import/products
Specyfikacja pliku z produktami
Plik musi być w formacie csv z następującą kolejnością pól: produkt_id,nazwa,kod_paskowy,producent_id,jednostka,gramatura_netto,opis kolejne produkty muszą być oddzielone znakiem nowej linii
Tab. 3. Opis pól pliku z produktami
Nazwa pola | Opis | Dodatkowe informacje |
---|---|---|
produkt_id | Identyfikator produktu w sklepie | |
nazwa | Nazwa | |
kod_paskowy | Kod_paskowy | |
producent_id | Identyfikator producenta | Podane id musi istnieć w bazie producentów |
jednostka | Identyfikator jednostki miary | Np. szt,kg,op |
gramatura_netto | Waga w gramach bez opakowania | |
opis | Opis produktu wyświetlany na stronie |
2. Tworzenie lub modyfikacja powiązań towarów ze sklepami.
Tab. 4. Żądanie
Metoda | URL |
---|---|
POST | /import/productsShop |
Tab. 5. Parametry żądania
Typ | Parametr | Wartość |
---|---|---|
HEAD | X-ApiKey | string |
Przykład użycia curl:
curl -F 'file=@/ścieżka/do/pliku' -H 'X-ApiKey: klucz' -H "X-Token: token" -H 'Content-Type: text/csv' https://nazwa_domeny/import/productsShop
Specyfikacja pliku z powiązaniami produktów ze sklepami
Plik musi być w formacie csv z następującą kolejnością pól produkt_id,cena,nowosc,promocja,gazetka,reklama,stan kolejne powiązania muszą być oddzielone znakiem nowej linii
Tab. 6. Opis pól pliku z powiązaniami
Nazwa Pola | Opis | Dodatkowe informacje |
---|---|---|
produkt_id | Identyfikator produktu z danego sklepu | |
cena | Cena brutto wyrażona w groszach | |
Czy dany towar jest nowością | Możliwe wartości: 0 lub 1 | |
promocja | Czy dany towar jest w promocji | Możliwe wartości: 0 lub 1 |
gazetka | Czy dany towar jest z aktualnej gazetki | Możliwe wartości: 0 lub 1 |
reklama | Dodatkowe promowanie produktów w wynikach wyszukiwania | Możliwe wartości: 1 - 10 |
stan | Liczba towaru na stanie | 1000 oznacza 1 sztukę lub 1 kilogram |
3. Tworzenie lub modyfikacja powiązań towarów ze sklepami.
Tab. 7. Żądanie
Metoda | URL |
---|---|
POST | /import/categories |
Tab. 8. Parametry żądania
Typ | Parametr | Wartość |
---|---|---|
HEAD | X-ApiKey | string |
Przykład użycia curl:
curl -F 'file=@/ścieżka/do/pliku' -H 'X-ApiKey: klucz' -H "X-Token: token" -H 'Content-Type: text/csv' https://nazwa_domeny/import/categories
Specyfikacja pliku z kategoriami
Plik musi być w formacie csv z następującą kolejnością pól id,nadrzedna_id,nazwa,opis kolejne kategorie muszą być oddzielone znakiem nowej linii
Tab. 9. Opis pól pliku z kategoriami
Nazwa pola | opis | Dodatkowe informacje |
---|---|---|
id | Id kategorii | |
nadrzedna_id | Id kategorii nadrzędnej (puste jeśli kategoria jest kategorią główną) | Podane id musi istnieć w bazie kategorii |
nazwa | Nazwa kategorii | |
opis | Opis kategorii |
4. Tworzenie lub modyfikacja producentów
Tab. 10. Żądanie
Metoda | URL |
---|---|
POST | /import/brands |
Tab. 11. Parametry żądania
Typ | Parametr | Wartość |
---|---|---|
HEAD | X-ApiKey | string |
Przykład użycia curl:
curl -F 'file=@/ścieżka/do/pliku' -H 'X-ApiKey: klucz' -H "X-Token: token" -H 'Content-Type: text/csv' https://nazwa_domeny/import/brands
Specyfikacja pliku z producentami
Plik musi być w formacie csv z następującą kolejnością pól id,nazwa kolejni producenci muszą być oddzieleni znakiem nowej linii
Tab. 12. Opis pól pliku z producentami
Nazwa pola | Opis | Dodatkowe informacje |
---|---|---|
id | ID producenta | |
nazwa | Nazwa producenta |
Eksport danych
1. Eksport produktów
Tab. 13. Żądanie
Metoda | URL |
---|---|
GET | /export/products |
Tab. 14. Parametry żądania
Typ | Parametr | Wartość |
---|---|---|
HEAD | X-ApiKey | string |
Przykład użycia curl:
curl -H 'X-ApiKey: klucz' -H "X-Token: token" -H -o nazwa_pliku https://nazwa_domeny/export/products
Specyfikacja pliku z produktami
Plik w formacie csv z następującą kolejnością pól: produkt_id,nazwa,kod_paskowy,producent_id,jednostka,gramatura_netto,opis Opis pól jest analogiczny do importowanych. Kolejne produkty oddzielone znakiem nowej linii
2. Eksport powiązań produktów
Tab. 15. Żądanie
Metoda | URL |
---|---|
GET | /export/productsShop |
Tab. 16. Parametry żądania
Typ | Parametr | Wartość |
---|---|---|
HEAD | X-ApiKey | string |
Przykład użycia curl:
curl -H 'X-ApiKey: klucz' -H "X-Token: token" -H -o nazwa_pliku https://nazwa_domeny/export/productsShop
Specyfikacja pliku z produktami
Plik w formacie csv z następującą kolejnością pól: produkt_id,cena,nowosc,promocja,gazetka,reklama,stan Opis pól jest analogiczny do importowanych. Kolejne produkty oddzielone znakiem nowej linii
3. Eksport kategorii
Tab. 17. Żądanie
Metoda | URL |
---|---|
GET | /export/categories |
Tab. 18. Parametry żądania
Typ | Parametr | Wartość |
---|---|---|
HEAD | X-ApiKey | string |
Przykład użycia curl:
curl -H 'X-ApiKey: klucz' -H "X-Token: token" -H -o nazwa_pliku https://nazwa_domeny/export/categories
Specyfikacja pliku z produktami
Plik w formacie csv z następującą kolejnością pól: id,nadrzedna_id,nazwa,opis Opis pól jest analogiczny do importowanych. Kolejne produkty oddzielone znakiem nowej linii
4. Eksport producentów
Tab. 19. Żądanie
Metoda | URL |
---|---|
GET | /export/brands |
Tab. 20. Parametry żądania
Typ | Parametr | Wartość |
---|---|---|
HEAD | X-ApiKey | string |
Przykład użycia curl:
curl -H 'X-ApiKey: klucz' -H "X-Token: token" -H -o nazwa_pliku https://nazwa_domeny/export/brands
Specyfikacja pliku z produktami
Plik w formacie csv z następującą kolejnością pól: id,nazwa Opis pól jest analogiczny do importowanych. Kolejne produkty oddzielone znakiem nowej linii
5. Eksport zamówień
Tab. 21. Żądanie
Metoda | URL |
---|---|
GET | /export/orders |
Tab. 22. Parametry żądania
Typ | Parametr | Wartość |
---|---|---|
HEAD | X-ApiKey | string |
HEAD | X-Token | string |
HEAD | Accept | application/json lub application/xml |
GET | formDate | Data format YYYY-MM-DD |
GET | statuses | Int oddzielone przecinkami: np. 0,1,2 |
GET | limit | Int z zakresu 1, 100 |
GET | Page | Int > 0 |
statusy zamówień: id | nazwa
+-----------------------------------
0 | Nowe 1 | Przypisane do operatora 2 | W trakcie kompletacji 3 | Skompletowane. Czeka na transport 4 | W trakcie transportu 5 | Spakowane. Czeka na paragon 10 | Zakonczone 12 | Anulowane
Przykład użycia curl:
curl -H 'X-ApiKey: klucz' -H "X-Token: token" -H -o nazwa_pliku https://nazwa_domeny / expor t /orders?fromDate=2020-01- 01&statuses=0,1,5&limit=10&page=1
Zamówienia są eksportowane w formacie json lub xml w zależności od parametru.
Przykładowa odpowiedz w formacie json: [
{ "id": 1462936, "data": "2020-02-17", "czas": "2020-02-17 12:25:25", "data_odbioru": "2020-02-21 17:00:00", "koszt_dostawy": 999, "adres": { "imie": "Micha\u0142", "nazwisko": "Motyczko", "kod": "01-100", "miasto": "Warszawa", "ulica": "Aleje Jerozolimskie 23\/4", "telefon": "123456789"
}, "prezent": false, "kwota_rabatu": 0, "klient": {
"id": 353322
}, "status": "Nowe", "metoda_platnosci": "Got\u00f3wka", "sklep": "Warszawa", "produkty": [
{ "plu": 290403, "ilosc_zamowiona": 5000, "ilosc_zrealizowana": 5000, "cena": 299, "wartosc": 1495000, "uwagi": "", "produkt": { "nazwa": "\u015aLEDZIKI NA\/RAZ\/S\/\u015aMIET 100", "kod_paskowy": "5900344403664", "plu_sklepowe": 130728 } } ] }
]
6. Zmiana statusu zamówienia:
POST /backendApi/updateOrderStatus
Parametry: order - int - numer zamówienia status - int - nowy status zamówienia
Możliwe statusy (id - nazwa) 0 - "Nowe" 1 - "Przypisane do operatora" 2 - "W trakcie kompletacj" 3 - "Skompletowane. Czeka na transport" 4 - "W trakcie transportu" 5 - "Spakowane. Czeka na paragon" 10 - "Zakonczone" 12 - "Anulowane"
Zwraca: 403 - przy braku autoryzacji 404 - jak nie znajdzie zamówienia 200 - w innym wypadku: aktualizacja ok - ['status' => 'success', 'errors' => null, 'message' => 'Status został zaktualizowany.), błędy walidacji danych - ['status' => 'failed', 'errors' => [/Tablica błędów/], 'message' => null]
cURL: curl --location --request POST 'http://admin.sklep.localhost:8999/backendApi/updateOrderStatus' \ --header 'x-token: [token]' \ --header 'x-apikey: [api-key]' \ --form 'order=1462929' \ --form 'status=1'
lub
curl --location --request POST 'http://admin.sklep.localhost:8999/backendApi/updateOrderStatus' \ --header 'x-token: [token]' \ --header 'x-apikey: [api-key]' \ --header 'Content-Type: application/json' \ --data-raw '{"order": 1462929, "status": 1}'