Specyfikacja plików w formacie CSV: Różnice pomiędzy wersjami

Z Pomoc Netis
(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...")
 
m (UWAGA! Zastąpienie treści hasła bardzo krótkim tekstem: „'''<big>Uzyskanie tokenu</big>''' Przed wywołaniem akcji importu należy najpierw uzyskać token za pomocą metody api https:/...”)
Znacznik: Zastąpiono
Linia 26: Linia 26:
| POST || /import/products
| POST || /import/products
|}
|}
Tab. 2. Parametry żądania
Tab. 2. Parametry żądania
Typ Parametr Wartość
 
HEAD X-ApiKey string
{| class="wikitable"
Przykład użycia curl:
|-
curl -F 'file=@/ścieżka/do/pliku' -H 'X-ApiKey: klucz' -H "X-Token: token" -H
! Typ !! Parametr !! Wartość
'Content-Type: text/csv' https://nazwa_domeny/import/products
|-
Specyfikacja pliku z produktami
| HEAD || X-ApiKey || string
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 prouktu 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
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
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 / expor t / product s
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 / expor t / product sShop
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 / expor t / 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 / expor t / 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 fromDate Data format YYYY-MMDD
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 kompletacj
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}'

Wersja z 10:23, 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