Przejdź do treści

Dokumentacja Techniczna Integracji WP Pixel S2S

Wstęp

Usługa WP Pixel S2S umożliwia bezpośrednie przesyłanie zdarzeń e-commerce z systemów Partnera do ekosystemu Wirtualnej Polski w modelu Server-to-Server. Komunikacja opiera się na REST API z autoryzacją OAuth 2.0.

Rozwiązanie to jest dedykowane dla klientów, którzy chcą przesyłać zdarzenia z wykorzystaniem własnej infrastruktury w celu dodatkowego wzbogacania danych, przesyłania zdarzeń z różnych źródeł lub integracji z istniejącymi rozwiązaniami rynkowymi.

W celu zachowania zdolności w zakresie reklamowym i analitycznym integracja s2s musi zapewnić wszystkie funkcjonalności, które są dostępne w ramach integracji frontendowej lub WP Pixel SDK (aplikacja mobilna) w tym dostęp i zapisywanie cookies oraz przekazywanie wszystkich podstawowych identyfikatorów użytkownika.

Dostęp i konfiguracja danych uwierzytelniających

W celu przeprowadzenia integracji wymagane jest uzyskanie od WP danych dostępowych:

Parametr Opis
Client ID identyfikator klienta
Client Secret klucz autoryzacyjny

Dane te są standardowym mechanizmem uwierzytelniania OAuth 2.0 w trybie client_credentials. Każdy identyfikator klienta pozwala na wysyłanie danych dla konkretnego zestawu identyfikatorów w systemie Pixel WP.

Ważne

Dane autoryzacyjne są Twoim „loginem i hasłem". Przechowuj i wykorzystuj je w bezpieczny sposób i nie udostępniaj ich osobom trzecim. W przypadku podejrzenia wycieku danych skontaktuj się z WP z prośbą o wydanie nowej pary _client_id_ oraz _client_secret_.

Twoje dane nie są przechowywane przez WP w żadnej innej formie niż minimalna wymagana do wykonania autoryzacji. W przypadku utraty secretu nie ma możliwości jego odzyskania po stronie WP.

Uwierzytelnianie (OAuth 2.0)

System wykorzystuje standard OAuth 2.0. Każde zapytanie do API musi być autoryzowane ważnym tokenem dostępu (Bearer Token).

Pobieranie tokenu dostępu

Aby uzyskać token, należy wymienić posiadane poświadczenia (Client ID i Secret) na token sesyjny.

Endpoint: POST https://pixel.wp.pl/s2s/v1/oauth/token

Cel: Uzyskanie accessToken uprawniającego do wysyłania zdarzeń.

Okres ważności tokenu: 1 godzina (3600 sekund)

Wymagane parametry (body):

Parametr Wartość / Opis
grant_type "client_credentials"
scopes ["s2s.events.push"]
client_id Twój identyfikator
client_secret Twój sekret

Przykładowe zapytanie:

POST https://pixel.wp.pl/s2s/v1/oauth/token
Content-Type: application/json

{
    "client_id": "77b81adc-83ca-4e6a-a8ab-ebf25d4181e3",
    "client_secret": "<redacted>",
    "grant_type": "client_credentials",
    "scopes": ["s2s.events.push"]
}

Przykładowa odpowiedź:

Content-Type: application/json

{
  "accessToken": "<redacted>",
  "tokenType": "bearer",
  "expiresIn": "3599s"
}

Autoryzacja zapytań

Uzyskany token należy przesyłać w nagłówku HTTP każdego żądania wysyłającego eventy oraz współdzielić między żądaniami:

Authorization: Bearer <TWOJ_TOKEN>

Przesyłanie zdarzeń — REST API

Dostępne metody

Usługa udostępnia dwa endpointy do przesyłania danych:

Typ Endpoint
Pojedyncze zdarzenie POST /v1/events
Przesyłanie wsadowe (Batch) POST /v1/events/batch

Przykładowe zapytanie (pojedynczy event):

POST https://pixel.wp.pl/s2s/v1/events
Authorization: Bearer <redacted>
Content-Type: application/json

{
    "event": {
        "pixel_id": "WP-ADS-123-456-789",
        "event_type": "Purchase",
        "user_id": "3065210629.1770720426993",
        "session_id": "2045210728.1770720426993",
        "url": "https://example.com/purchase/product1"
    }
}

Przykładowa odpowiedź:

Content-Type: application/json
{
  "status": {
    "success": true
  }
}

Przykładowe zapytanie (batch):

POST https://pixel.wp.pl/s2s/v1/events/batch
Authorization: Bearer <redacted>
Content-Type: application/json

{
    "events": [
        {
            "pixel_id": "WP-ADS-123-456-789",
            "event_type": "AddToCart",
            "user_id": "3065210629.1770720426993",
            "session_id": "2045210728.1770720426993",
            "url": "https://example.com/purchase/product1"
        },
        {
            "pixel_id": "WP-ADS-123-456-789",
            "event_type": "Purchase"
        }
    ]
}

Przykładowa odpowiedź (batch):

{
  "results": [
    {
      "status": {
        "code": 0,
        "message": "OK",
        "details": []
      },
      "result": {
        "success": true
      }
    },
    {
      "status": {
        "code": 0,
        "message": "OK",
        "details": []
      },
      "result": {
        "success": true
      }
    }
  ]
}

Odpowiedź dla endpointu batchującego zawiera status dla każdego eventu osobno w kolejności wysyłki. W przypadku błędu przetwarzania lub wysyłki dowolnego eventu, pole status będzie zawierać odpowiedni kod błędu. Pole result zawiera odpowiedź na wysyłkę pojedynczego eventu.

Struktura danych i parametry zdarzenia

Parametry wymagane

Każde zdarzenie musi zawierać:

  • pixel_id (string, wymagany) – identyfikator partnera e-commerce. Klient S2S może wysyłać zdarzenia tylko dla tych pixel_id, do których ma uprawnienia (zgłoszone w procesie integracji lub dodane później)
  • event_type (string, wymagany) – typ zdarzenia

Obsługiwane typy zdarzeń

Typ zdarzenia Opis
ViewContent wyświetlenie strony (typ strony określony jest przez parametr content_name)
AddToCart dodanie produktu/produktów do koszyka
RemoveFromCart usunięcie produktu/produktów z koszyka
ViewCart wyświetlenie zawartości koszyka
StartOrder rozpoczęcie procesu zakupu (checkout)
Conversion zawarcie transakcji, np. wypełnienie formularza kontaktowego lub zapisanie się na jazdę próbną (lead)
Purchase dokonanie zakupu produktu/produktów

Uwaga

Zdarzenia bez poprawnie wypełnionych parametrów pixel_id i event_type nie zostaną przyjęte.

Content Name

Zdarzenia typu ViewContent określają wyświetlanie dowolnego typu zawartości. Parametr content_name jest niezbędny, aby określić typ tej zawartości. Jest on używany, aby odróżnić np. event o wyświetleniu listingu produktów (ProductList) od strony produktu ( ViewProduct).

Wartość parametru content_name Opis
ProductList wyświetlenie strony z listą produktów
ViewProduct wyświetlenie strony z konkretnym produktem
Login formularz logowania
Register formularz rejestracji
PriceList strona z cennikiem
View wyświetlenie strony bez dedykowanego typu zdarzenia

Ze względu na potrzebę kompleksowego pomiaru danych, zaleca się aby każde wyświetlenie strony było powiązane z wysłaniem eventu. W przypadku gdy nie ma dedykowanego typu zdarzenia, należy wysłać event ViewContent z parametrem content_name ustawionym na View.

Parametry identyfikacyjne użytkownika

Poniższe parametry są kluczowe z perspektywy jakości przesyłanych danych i skuteczności działań marketingowych ( retargeting, analityka).

Parametr Typ Wymagany Cel Opis
email_hash string zalecany działania reklamowe zahaszowany adres e-mail użytkownika (SHA-256)
user_id string wymagany działanie systemu unikalny, generowany identyfikator użytkownika w prostej formie
session_id string wymagany działanie systemu identyfikator sesji
statid string wymagany działania reklamowe identyfikator urządzenia, medota pobierania statid opisana poniżej
longterm_id string zalecany działania reklamowe identyfikator użytkownika w systemie CRM klienta
gaid string wymagany (dla ruchu z aplikacji) działania reklamowe Google Advertising ID, identyfikator urządzenia Android
idfa string wymagany (dla ruchu z aplikacji) działania reklamowe Apple Identifier for Advertisers, identyfikator urządzenia Apple
idfv string wymagany (dla ruchu z aplikacji) działania reklamowe Apple Identifier for Vendors, identyfikator urządzenia Apple
provider_user_id string zalecany działanie systemu identyfikator użytkownika w systemie pośredniczącym do wysyłki eventu
ceeid string wymagany działania reklamowe pozwala na identyfikację użytkowników pomiędzy różnymi platformami wydawniczymi

Zalecamy wysyłanie jak największej dostępnej liczby identyfikatorów użytkownika w celu zapewnienia jak najwyższej jakości działania naszych modeli retargetingowych i utrzymywania wysokich wyników kampanii reklamowych.

Identyfikatory generowane przez WP

User ID oraz Session ID

Parametry te są prostymi identyfikatorami użytkownika, generowanymi automatycznie po stronie integracji przy wysyłce zdarzenia. Format obu parametrów to ciąg 10 cyfr oraz znacznik czasu UNIX w milisekundach, rozdzielone kropką.

Przykład poprawnej wartości: 5065210629.1770720426993

Wytyczne implementacyjne:

  • user_id – powinno być przypisane do konkretnego użytkownika/urządzenia w najlepszy dostępny sposób i cache'owane po stronie integracji. W przypadku braku dostępności parametru powinno zostać wygenerowane zgodnie z opisaną strukturą. Zalecany okres cache'owania: 30 dni od ostatniego użycia.
  • session_id – identyfikator sesji użytkownika w interakcji z serwisem. Powinno zostać wygenerowane zgodnie z opisaną strukturą danych oraz dołączane do wszystkich zdarzeń wynikających z trwania danej sesji. Zalecany okres cache'owania: 15 minut od ostatniego użycia.

Parametry te są wymagane do poprawnego przetworzenia zdarzenia.

Stat ID

Identyfikator urządzenia użytkownika. Generowany za pomocą zapytania GET pod endpoint /s2s/v1/device. Powinien zostać wygenerowany raz dla konkretnego urządzenia będącego źródłem eventu i cache'owany po stronie integracji. Zalecany okres cache'owania: 3 lata od ostatniego użycia.

Generowanie statid

Endpoint: GET https://pixel.wp.pl/s2s/v1/device

Cel: Uzyskanie statid – identyfikatora urządzenia użytkownika.

Przykładowe zapytanie:

GET https://pixel.wp.pl/s2s/v1/device

Przykładowa odpowiedź:

< HTTP/1.1 200 OK
< Content-Type: application/json
< Set-Cookie: statid=570edca00ac5f4f34741a17c5c9ba3e6:3f6f46:1772559563:v3; Path=/; Domain=wp.pl; Expires=Fri, 02 Mar 2029 17:39:23 GMT; Secure; SameSite=None
< Vary: Origin
< Date: Tue, 03 Mar 2026 17:39:23 GMT
< Content-Length: 66
<

{"statid":"570edca00ac5f4f34741a17c5c9ba3e6:3f6f46:1772559563:v3"}

Nowo wygenerowany statid znajduje się w odpowiedzi pod polem statid. Dla powyższego przykładu wartość to: 570edca00ac5f4f34741a17c5c9ba3e6:3f6f46:1772559563:v3.

Uwaga

Endpoint ten wykorzystuje mechanizmy CORS przeglądarki. W przypadku wykonywania requestu bezpośrednio z przeglądarki użytkownika zostanie on zablokowany, jeśli adres źródłowy nie znajduje się na liście zaufanych partnerów. Jeśli Twoja integracja wykonuje zapytania bezpośrednio z przeglądarki użytkownika - skontaktuj się z nami w celu uzyskania dostępu.

Migracja identyfikatorów WP

W przypadku, w którym implementowana integracja S2S następuje w ramach zastąpienia oryginalnego Pixela JS WP, który był wcześniej uruchomiony na docelowym portalu, należy przeprowadzić migrację identyfikatorów WP, w celu zapewnienia ciągłości otrzymywanych danych oraz utrzymania wysokiej jakości rekomendacji produktowych w kampanii.

Pixel JS WP samodzielnie generował identyfikatory UserID, SessionID oraz statid i zapisywał je w formie ciasteczek lub wpisów w local storage przeglądarki na potrzeby ponownego użycia.

Prosty identyfikator użytkownika zapisany jest w local storage przeglądarki, pod kluczami __wph_a.key (pierwsza część) oraz __wph_a.ts (druga część).

Przykładowo, dla wartości:

klucz wartość
__wph_a.key 9932649645
__wph_a.ts 1762944814357

Identyfikator użytkownika to: 9932649645.1762944814357.


Migracja powyższych parametrów jest wymagana dla użytkowników wysyłających eventy w ramach integracji przeglądarkowych. W przypadku zdarzeń dla nieznanych użytkowników w środowiskach nie-przeglądarkowych (np. aplikacje mobilne), jeżeli nie znamy identyfikatorów użytkownika, należy je wygenerować zgodnie z instrukcją w punktach User ID oraz Session ID oraz Stat ID.

Email Hash

Zahaszowany adres e-mail użytkownika z wykorzystaniem algorytmu SHA-256. Przykład poprawnej normalizacji adresu i hashowania znajduje się w dokumentacji Pixel JS WP.

Parametr ten jest zalecany do wysyłania w polu email_hash, jeśli jest dostępny.

Longterm ID

Identyfikator użytkownika w systemie CRM klienta. Parametr ten jest zalecany do wysyłania w polu longterm_id, jeśli jest dostępny.

Identyfikatory urządzeń mobilnych

W przypadku eventów z urządzeń mobilnych należy dołączyć identyfikatory tych urządzeń. Te identyfikatory pomagają w identyfikacji użytkownika na urządzeniach mobilnych i są często używane w celu śledzenia zachowań użytkowników w aplikacjach mobilnych.

GAID

Google Advertising ID - identyfikator reklamowy używany w aplikacjach mobilnych na urządzeniach Android. Parametr ten jest zalecany do wysyłania w polu gaid, jeśli jest dostępny.

IDFA

Apple Identifier for Advertisers - identyfikator reklamowy używany w aplikacjach mobilnych na urządzeniach iOS. Parametr ten jest zalecany do wysyłania w polu idfa, jeśli jest dostępny.

IDFV

Apple Identifier for Vendors - identyfikator reklamowy na urządzeniach iOS dla aplikacji w ramach tego samego dystrybutora. Parametr ten jest zalecany do wysyłania w polu idfv, jeśli jest dostępny.

Provider User ID

Identyfikator użytkownika w partnerskim systemie pośredniczącym w wysyłce zdarzenia. Należy podać ten identyfikator w celu zapewnienia poprawnego działania naszego systemu, jeśli system wysyłający zdarzenia jest pomiędzy jego źródłem (np. sklep e-commerce) a systemem Pixel WP. Parametr ten powinien być wysyłany w polu provider_user_id.

CEEid

CEEId to uniwersalny standard identyfikacji użytkownika opracowany w ramach systemów Wirtualnej Polski.

Więcej informacji o tym identyfikatorze oraz sposobie jego generowania dostępne jest w oficjalnej dokumentacji: https://ceeid.eu/.

Zgoda na przetwarzanie danych (RODO)

Na podstawie obowiązujących w Polsce przepisów prawa (RODO) dane użytkowników powinny być przetwarzane zgodnie z wyrażoną przez nich jawną zgodą. Zgody tej użytkownicy udzielają na tzw. planszy RODO w formacie TCF (Transparency and Consent Framework).

Fakt wyrażenia zgody należy zaznaczyć w wysyłanym zdarzeniu za pomocą parametru tracking_consent z wartością 1.

Podstawowe parametry eventu

Poniższa tabela zawiera zestaw podstawowych, najbardziej powszechnych parametrów eventu, które najczęściej występują w integracjach e-commerce.

Parametr Typ Opis
value float wartość netto przedstawiająca pełną kwotę, której dotyczy event. Np. zakup 2 produktów po 100PLN netto to: 200
value_gross float wartość brutto powyższego
shipping_cost float koszt wysyłki produktu
discount_value float pełna wartość obniżki promocyjnej dla danego eventu
currency string trzyliterowy kod waluty ISO 4217 (np. PLN, EUR, USD)
transaction_id string identyfikator transakcji w systemie klienta (np. ID zakupu)
url string kompletny adres URL strony, z której wynika event
referer string adres URL referrera, z którego użytkownik trafił na stronę
timestamp string timestamp zdarzenia w formacie RFC 3339

Uwaga

Z uwagi na silną zależność naszego środowiska od wartości URL, prosimy o upewnienie się, że parametr url jest zawsze wypełniony. W przypadku eventów z aplikacji mobilnych:

  • jeśli event pochodzi z sesji deep-linkowanej do aplikacji (otwarcie aplikacji z linku), prosimy o wpisanie tego linku do parametru url,
  • jeśli event pochodzi z sesji organicznej, prosimy o formatowanie adresu URL według wzoru: <pixel_id>.s2s.wp.pl.

Przedmioty eventu (contents)

Większość eventów powinna zawierać parametr contents, w którym znajdują się wszystkie przedmioty będące podmiotem danego eventu. Poniższa tabela zawiera opis podstawowych, najbardziej popularnych parametrów pojedynczego produktu.

Parametr Typ Opis
id string unikalny identyfikator produktu w systemie klienta (ID lub group ID)
name string nazwa produktu
ean string kod EAN (European Article Number) produktu
quantity int64 liczba jednostek produktu
price float64 cena jednostkowa pojedynczego produktu
category string kategoria lub ścieżka kategorii produktu, np. „Odzież/Męska/Koszule"
brand string marka lub producent produktu
model string nazwa lub numer modelu produktu
seller_id string identyfikator sprzedawcy produktu (kluczowy dla platform marketplace)
discount float64 kwota rabatu od ceny oryginalnej
condition string stan produktu, np. „new", „used", „refurbished"

Metadane użytkownika

Dodatkowe parametry identyfikujące urządzenie użytkownika.

Parametr Typ Opis
source_ip string adres IP urządzenia użytkownika
user_agent string User-Agent przeglądarki użytkownika

Szczegóły aplikacji mobilnej

Dodatkowe informacje o aplikacji mobilnej, z której wysłano zdarzenie.

Parametr Typ Opis
build string Numer kompilacji aplikacji mobilnej
version string Wersja aplikacji mobilnej, np. 1.2.3
name string Nazwa aplikacji mobilnej, np. MyApp
package string Identyfikator pakietu aplikacji, np. com.example.myapp
platform enum platforma mobilna - 1 dla iOS, 2 dla Android

Parametry te należy umieszczać w strukturze app źródłowego eventu.

Parametry geolokalizacyjne

Geolokalizacja jest ważnym parametrem dla wielu eventów. Dzięki temu możemy dostosować reklamy i oferty do lokalizacji użytkownika.

W strukturze eventu parametry geolokalizacyjne należy zawrzeć w strukturze geo. Poniższa tabela zawiera opis parametrów geolokalizacyjnych wspieranych przez nasz system.

Parametr Typ Opis
latitude float szerokość geograficzna
longitude float długość geograficzna
accuracy float dokładność pozycji w metrach
speed float prędkość urządzenia w metrach na sekundę
altitude float wysokość nad poziomem morza w metrach
altitude_accuracy float dokładność pomiaru wysokości w metrach

Parametry dodatkowe eventu

Poniższa tabela zawiera opis opcjonalnych, mniej popularnych parametrów eventu dostępnych w API. Zachęcamy do ich wysyłki, jeżeli są one łatwo dostępne w Państwa systemie.

Parametr Typ Opis
host string host strony zdarzenia (adresu URL)
timezone string strefa czasowa IANA zdarzenia, np. Europe/Warsaw
os string system operacyjny urządzenia użytkownika
search_string string fraza wpisana przez użytkownika w wyszukiwarkę
category string wiodąca kategoria sekcji strony wyświetlanej przez użytkownika

Przykład realnego użycia

W poniższej sekcji opisano przykład kompletnej wysyłki eventu z optymalnym payloadem.

Autoryzacja

Dla danych autoryzacyjnych:

Parametr Wartość
client_id abc
client_secret 123

Uwaga

Powyższe dane to jedynie przykładowe wartości, które nie działają w naszym systemie. Klient powinien używać swoich danych autoryzacyjnych.

Wysyłamy zapytanie o wydanie tokenu:

curl --location 'https://pixel.wp.pl/s2s/v1/oauth/token' \
--header 'Content-Type: application/json' \
--data '{
    "client_id": "abc",
    "client_secret": "123",
    "grant_type": "client_credentials",
    "scopes": [
        "s2s.events.push"
    ]
}'

Przykład odpowiedzi:

{
  "accessToken": "12345678",
  "tokenType": "bearer",
  "expiresIn": "3599s"
}

Otrzymany accessToken należy pobrać i wykorzystać do wysyłki eventu dołączając go w nagłówku Authorization.

Wysyłka eventu

Wysyłamy standardowy event Purchase o zakupie produktu z danymi najczęściej wykorzystywanymi w realnym przypadku użycia.

Wysyłamy zapytanie POST na adres https://pixel.wp.pl/s2s/v1/events.

curl --location 'https://pixel.wp.pl/s2s/v1/events' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer 12345678' \
--data '{
    "event": {
        "timestamp": "2026-02-11T10:45:09Z",
        "pixel_id": "WP-ADS-123-456-789",
        "event_type": "Purchase",
        "url": "https://example.com/oferta/zarowki-samochodowe-1217",
        "user_id": "5065210629.1770720426993",
        "session_id": "1265710324.1770720426993",
        "longterm_id": "245563",
        "host": "example.com",
        "referer": "https://wp.pl",
        "value_gross": 439.99,
        "value": 357.72,
        "currency": "pln",
        "transaction_id": "1010230213",
        "email_hash": "A591A6D40BF420404A011733C8A1E36E1B8B3A1DEWD909EDEDFR9FR0WFRF90WEF",
        "tracking_consent": 1,
        "statid": "aaea2b986bcc556e566535c84d0662c1:7b5714:1770898423:v3",
        "provider_user_id": "44808975-e761-4787-8df1-b02a9a6df5a7",
        "origin_meta": {
          "source_ip": "192.168.1.1",
          "user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/145.0.0.0 Safari/537.36"
        },
        "app": {
          "build": "1130202",
          "version": "1.13.2",
          "name": "MyApp",
          "package": "com.example.myapp",
          "platform": 1
        },
        "geo": {
            "latitude": 53.197744,
            "longitude": 18.373484,
            "altitude": 10,
            "accuracy": 10,
            "altitude_accuracy": 11,
            "speed": 12
        },
        "contents": [
            {
                "id": "6123576",
                "name": "blouse",
                "ean": "6123563",
                "brand": "4F",
                "model": "cordura",
                "seller_id": "eaer2",
                "quantity": 2,
                "product_type": "blouse",
                "price": 120.00
            },
            {
                "id": "4234576",
                "name": "kozaki",
                "ean": "1233563",
                "brand": "Nike",
                "model": "234235",
                "seller_id": "eaer2",
                "quantity": 1,
                "product_type": "shoes",
                "price": 199.99
            }
        ]
    }
}'

W powyższym zapytaniu wysłano event o zakupie dwóch produktów dla partnera WP-ADS-123-456-789, o strukturze:

{
  "event": {
    "timestamp": "2026-02-11T10:45:09Z",
    "pixel_id": "WP-ADS-123-456-789",
    "event_type": "Purchase",
    "url": "https://example.com/oferta/zarowki-samochodowe-1061217",
    "user_id": "5065210629.1770720426993",
    "session_id": "1265710324.1770720426993",
    "longterm_id": "245563",
    "host": "example.com",
    "referer": "https://wp.pl",
    "value_gross": 439.99,
    "value": 357.72,
    "currency": "pln",
    "transaction_id": "1010230213",
    "email_hash": "A591A6D40BF420404A011733C8A1E36E1B8B3A1D3EDWED986WEDF67FW76FW",
    "tracking_consent": 1,
    "statid": "aaea2b986bcc556e566535c84d0662c1:7b5714:1770898423:v3",
    "provider_user_id": "44808975-e761-4787-8df1-b02a9a6df5a7",
    "origin_meta": {
      "source_ip": "192.168.1.1",
      "user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/145.0.0.0 Safari/537.36"
    },
    "app": {
      "build": "1130202",
      "version": "1.13.2",
      "name": "MyApp",
      "package": "com.example.myapp",
      "platform": 1
    },
    "geo": {
      "latitude": 53.197744,
      "longitude": 18.373484,
      "altitude": 10,
      "accuracy": 10,
      "altitude_accuracy": 11,
      "speed": 12
    },
    "contents": [
      {
        "id": "6123576",
        "name": "blouse",
        "ean": "6123563",
        "brand": "4F",
        "model": "cordura",
        "seller_id": "eaer2",
        "quantity": 2,
        "product_type": "blouse",
        "price": 120.0
      },
      {
        "id": "4234576",
        "name": "kozaki",
        "ean": "1233563",
        "brand": "Nike",
        "model": "234235",
        "seller_id": "eaer2",
        "quantity": 1,
        "product_type": "shoes",
        "price": 199.99
      }
    ]
  }
}

Przykład odpowiedzi:

HTTP/2 200
Server: nginx
Date: Wed, 11 Feb 2026 12:05:00 GMT
Content-Type: application/json
Content-Length: 27

{"status":{"success":true}}

Odpowiedź

Zmienna success z wartością true oraz odpowiedź HTTP 200 OK informują o poprawnej wysyłce eventu.