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