API danych cenowych — dostęp do danych monitoringu z własnych systemów
REST API 4pricing.net pozwala Twojemu zespołowi odczytywać dane z monitoringu cen i łączyć je z własnymi systemami (ERP, WMS, platforma e-commerce). Nie ma gotowych konektorów — połączenie budujesz na API. Uwierzytelnianie odbywa się kluczem API, odpowiedzi są w standardowym formacie JSON, a specyfikacja jest opublikowana jako OpenAPI 3.0, którą można zaimportować wprost do własnego klienta.
Główne endpointy
API udostępnia dane monitoringu na poziomie śledzonego produktu: listę produktów z ceną bieżącą, historię cen jednego produktu oraz zbiorczą mini-historię na potrzeby widoków listowych. Produkty są identyfikowane przez product_id zwracane w momencie ich dodania — adres URL produktu służy do jego dodania, a nie jako klucz w ścieżce. Kwoty przychodzą w jednostkach podrzędnych, w polach current_price_cents i price_cents, wraz z walutą, a każdy rekord zawiera dokładny czas sprawdzenia (odpowiednio last_scraped_at i scraped_at).
- GET /products/ — Twoje śledzone produkty, z ceną bieżącą i walutą
- GET /products/{product_id}/history — historia cen jednego produktu, ze znacznikami czasu
- GET /products/sparklines — zbiorcza mini-historia, jeden ciąg cen na produkt
- POST /alerts/ — utworzenie alertu (próg, spadek procentowy, stan magazynowy, konkurent)
Uwierzytelnianie i limit zapytań
Uwierzytelnianie odbywa się przez nagłówek X-API-Key albo równoważnie przez Authorization: Bearer z tym samym kluczem. Klucze generuje się w panelu, w sekcji API i klucze, a ich pełna wartość jest pokazywana tylko raz, przy tworzeniu. Limit wynosi 60 zapytań na minutę na konto, wspólnie dla wszystkich Twoich kluczy; po jego przekroczeniu API odpowiada kodem 429 i wysyła nagłówek Retry-After.
Zalety i ograniczenia
Zalety
- Możliwość połączenia z ERP/WMS przez API, bez ręcznego eksportu CSV — wdrożenie po stronie Twojego zespołu, brak gotowych konektorów
- Alerty dostarczane przez webhook, więc nie musisz odpytywać API
- Opublikowana specyfikacja OpenAPI 3.0, którą importujesz wprost do swojego klienta
- Dostęp do ceny rekomendowanej dla grupy porównawczej, nie tylko do surowych danych
Ograniczenia
- Limit 60 zapytań/minutę na konto (wspólny dla wszystkich kluczy) wymusza odczyty zbiorcze i lokalne buforowanie przy dużych katalogach
- Webhook wymaga publicznego adresu URL http/https (port 80/443) w Twojej infrastrukturze
Krótkie podsumowanie
API pokrywa standardowe scenariusze budowy własnego połączenia z Twoimi systemami. Katalogi powyżej 50 000 aktywnych SKU zyskują na odczytach zbiorczych i lokalnym buforowaniu.
Tabela specyfikacji
| Endpoint | Metoda | Odpowiedź |
|---|---|---|
| /products/ | GET | Tablica JSON śledzonych produktów, z polem current_price_cents |
| /products/{product_id}/history | GET | Tablica JSON z historią i znacznikami czasu |
| /products/sparklines | GET | JSON z jednym ciągiem cen na produkt |
| /alerts/ | POST | Utworzony alert, z jego typem i progiem |
API a eksport CSV na żądanie
| Kryterium | REST API | Eksport CSV |
|---|---|---|
| Opóźnienie danych | Dane są tak aktualne, jak ostatnie sprawdzenie | Dane z chwili pobrania pliku |
| Połączenie z ERP | Buduje je Twój zespół przez HTTP (brak gotowego konektora) | Import ręczny lub z crona |
| Alerty push | Tak (webhook) | Nie |
Najczęstsze pytania
Jak uzyskać klucz API?
Klucz generujesz w panelu swojego konta 4pricing.net, w sekcji API i klucze. Pełna wartość klucza jest pokazywana tylko raz, przy tworzeniu — jeśli ją zgubisz, unieważnij klucz i wygeneruj nowy.
Czy mogę pobrać dane wszystkich produktów jednocześnie?
Tak, GET /products/?skip=0&limit=200 pozwala stronicować cały śledzony katalog, a łączna liczba rekordów przychodzi w nagłówku X-Total-Count. Przy długich listach GET /products/sparklines zwraca mini-historię wielu produktów w jednym wywołaniu. Przy dużych katalogach zalecamy nocny odczyt zaplanowany przez Ciebie i częstsze odczyty tylko dla najważniejszych produktów.
W jakim formacie API zwraca historię cen?
To tablica JSON obiektów {product_id, price_cents, currency, in_stock, scraped_at}, posortowana malejąco po dacie. Cena przychodzi w jednostkach podrzędnych (price_cents), a nie w pełnych jednostkach waluty, a scraped_at to dokładny znacznik czasu w formacie ISO 8601.
Jakie zdarzenia wysyła webhook?
Na konto przypada jeden adres URL webhooka, który otrzymuje każdy tworzony przez Ciebie typ alertu: cena poniżej progu, cena powyżej progu, spadek procentowy, powrót do sprzedaży, konkurent schodzący poniżej Twojej ceny oraz utrata pozycji najniższej ceny. Nie ma alertu dotyczącego samego progu kosztowego.