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...")
 
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 prouktu w sklepie
{| class="wikitable"
nazwa Nazwa
|-
kod_paskowy 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 ||
opakowania
|-
opis Opis produktu wyświetlany na
| kod_paskowy || Kod_paskowy ||
stronie
|-
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 pola opis Dodatkowe informacje
''Tab. 6. Opis pól pliku z powiązaniami''
produkt_id Identyfikator produktu z danego
{| class="wikitable"
sklepu
|-
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 opis Dodatkowe informacje
''Tab. 12. Opis pól pliku z producentami''
id Id producenta
{| 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 / expor t / product s
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 / expor t / product sShop
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 / expor t / categories
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 / expor t / brands
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 fromDate Data format YYYY-MMDD
| 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 kompletacj
        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": "Micha\u0142",
        "imie": "Michał",
"nazwisko": "Motyczko",
        "nazwisko": "Motyczko",
"kod": "01-100",
        "kod": "01-100",
"miasto": "Warszawa",
        "miasto": "Warszawa",
"ulica": "Aleje Jerozolimskie 23\/4",
        "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": "Got\u00f3wka",
      "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": "\u015aLEDZIKI NA\/RAZ\/S\/\u015aMIET 100",
              "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}'