Odpowiedź webhooka

Po wysłaniu zapytania do webhooka zawsze otrzymasz odpowiedź w formacie JSON. Ta odpowiedź zawiera szczegółowe i uporządkowane informacje, które pozwalają dokładnie zrozumieć, jak przebiegło przetwarzanie Twojego zlecenia. Dzięki temu masz pełen obraz statusu operacji, działań podjętych przez system oraz bieżących limitów wykorzystania Twojego konta i planu abonamentowego. Odpowiedź w formacie JSON jest nie tylko łatwa do odczytu dla maszyn, ale również ułatwia integrację i automatyzację procesów związanych z zarządzaniem zleceniami.

Każde wywołanie webhooka zwraca strukturę JSON, która jest kluczem do weryfikacji, czy Twoje żądanie zostało poprawnie przyjęte i przetworzone, czy może wystąpiły jakieś błędy, a także jakie są aktualne zasoby i limity, z których korzystasz. Dzięki temu możesz w czasie rzeczywistym monitorować i kontrolować działanie swojego systemu tradingowego lub innej automatyzacji opartej na webhookach.

Format odpowiedzi webhooka

Każda odpowiedź webhooka jest zwracana w formacie JSON i zawiera zestaw kluczowych elementów, które umożliwiają pełne zrozumienie przebiegu i wyniku operacji wykonanej przez system. Odpowiedź ta jest nie tylko potwierdzeniem otrzymania i przetworzenia żądania, lecz również przekazuje szczegółowe informacje dotyczące statusu oraz istotnych danych technicznych, które pozwalają na łatwą diagnostykę oraz dalsze przetwarzanie wyników.

{
  "created": ...
  "status": ...
  "limit": {
    "account": ...
    "max_per_day": ...
    "usage": ...
  },
  "message": ...
  "request": {
      "action": ...
      "code": ...
      "quantity":  ...
      "symbol": ...
  },
  "response": ...
}

created

Data utworzenia zapytania w formacie YYYY-MM-DD HH::MM:SS np, 2025-08-12 21:00:46.

status

Wskazuje ogólny rezultat wykonania żądania przesłanego do webhooka. Pole to przyjmuje zwykle wartości takie jak „success” – oznaczające, że operacja została wykonana poprawnie i bez błędów, lub „error” – gdy wystąpił problem uniemożliwiający poprawne zrealizowanie żądania. Dzięki temu polu klient wywołujący webhook może w szybki sposób ocenić, czy dalsze działania powinny być kontynuowane, czy może konieczne jest podjęcie kroków naprawczych.

message

To pole zawiera krótki, ale zarazem bardzo czytelny komunikat opisujący aktualny stan operacji. Komunikat ten jest przede wszystkim przeznaczony dla użytkownika lub systemu wywołującego webhook i ma na celu dostarczenie łatwo zrozumiałej informacji zwrotnej. Może to być potwierdzenie sukcesu, np. „Order created successfully”, albo wskazanie na konkretny problem, jak np. „Insufficient funds” lub „Invalid API key”. Dzięki temu komunikatowi można szybko zdiagnozować problem bez konieczności analizy całego wyniku.

limit

Pole to zawiera szczegółowe informacje dotyczące limitów Twojego konta na platformie, które są niezwykle istotne zwłaszcza w przypadku systemów oparte na modelach abonamentowych lub z ograniczoną liczbą zapytań do API. Informacje zawarte w tym polu obejmują:

  • nazwę planu abonamentowego, który posiadasz (np. „PRO”, „BASIC”)
  • maksymalną liczbę zapytań, jakie możesz wykonać w ciągu jednego dnia
  • aktualny poziom wykorzystania limitu

Znajomość tych danych jest kluczowa, aby uniknąć przekroczenia limitów, które mogłyby prowadzić do blokady dostępu lub ograniczenia funkcjonalności.

request

To pole zawiera dokładną kopię danych przesłanych w oryginalnym zapytaniu do webhooka. Zachowanie tych informacji w odpowiedzi jest niezwykle przydatne, gdyż pozwala na łatwe śledzenie i weryfikację przesyłanych danych. Dzięki temu możliwe jest szybkie porównanie danych wejściowych i wyników zwróconych przez system, co ułatwia debugowanie i zwiększa przejrzystość całej komunikacji.

response

W tym polu znajduje się szczegółowa odpowiedź zwrócona przez giełdę, serwis lub inny system docelowy, do którego kierowane było żądanie. To właśnie tutaj umieszczane są techniczne dane i wyniki operacji, które są kluczowe dla dalszej analizy i ewentualnego przetwarzania wyników. Może to być np. potwierdzenie utworzenia zlecenia handlowego, identyfikator tego zlecenia, status realizacji, lub inne dane zwrotne, które dokładnie informują o przebiegu operacji.

Przykłady odpowiedzy

Webhook to mechanizm umożliwiający Twojej aplikacji komunikację z naszym systemem poprzez automatyczne przesyłanie informacji o zdarzeniach lub wynikach operacji. Poniżej znajdziesz szczegółowy opis typowych odpowiedzi zwracanych przez webhook wraz z wyjaśnieniami i przykładami JSON.

Przykład prawidłowej odpowiedzi

W odpowiedzi na prawidłowo złożone żądanie system zwraca potwierdzenie utworzenia zlecenia oraz informację o stanie wykorzystania dziennego limitu zapytań. Dzięki temu wiesz, że Twoje zlecenie zostało zarejestrowane i możesz kontrolować, ile zapytań pozostało do wykorzystania. Dodatkwo system zwraca potwierdzenie przyjęcia zlecenia oraz zestaw informacji dodatkowych. Kluczowym elementem jest sekcja "response", która zawiera faktyczną odpowiedź z giełdy - czyli wynik próby realizacji zlecenia po stronie platformy handlowej. To właśnie na podstawie tych danych możesz potwierdzić, czy transakcja została zaakceptowana, odrzucona lub przetworzona częściowo, a także uzyskać numer identyfikacyjny zlecenia nadany przez giełdę.

Dzięki temu nie tylko wiesz, że webhook został poprawnie wywołany, ale masz również pełną informację o statusie operacji po stronie giełdy, co jest kluczowe dla dalszej obsługi i weryfikacji transakcji w Twoim systemie.

{
  "created": "2025-08-12 21:00:46",
  "limit": {
    "account": "FREE",
    "max_per_day": 10,
    "usage": 1
  },
  "status": "success",
  "message": "Order created successfully",
  "request": {
    "action": "SET",
    "code": "{WEBHOOK-CODE}",
    "quantity": "0.0122",
    "symbol": "BTCUSDT"
  },
  "response": {
    "status": "success",
    "message": "Order created successfully",
    "orderID": 11233421423,
    // ... więcej informacji z giełdy
  }
}

Przekroczenie dziennego limitu zapytań

Każde konto posiada limit zapytań do API na dobę, zależny od rodzaju subskrypcji. Przekroczenie limitu skutkuje odrzuceniem kolejnych żądań do czasu resetu limitu (co 24h).

{
  "created": "2025-08-12 19:15:37",
  "limit": {
    "account": "PRO",
    "max_per_day": 100,
    "usage": 101
  },
  "message": "Daily limit exceeded",
  "request": {
    "action": "SET",
    "code": "{WEBHOOK-CODE}",
    "quantity": "1",
    "symbol": "BTCUSDC"
  },
  "status": "error"
}

Brak potrzeby wykonania akcji

Webhook zwraca komunikat, gdy saldo instrumentu jest już zgodne z żądaną ilością. System nie wykonuje wówczas żadnych operacji, co zapobiega niepotrzebnym kosztom lub błędom.

Przykład odpowiedzi:

{
  "created": "2025-08-12 20:48:42",
  "limit": {
    "account": "PRO",
    "max_per_day": 100,
    "usage": 1
  },
  "message": "No action required. Quantity is equal to current balance.",
  "request": {
    "action": "SET",
    "code": "{WEBHOOK-CODE}",
    "quantity": "0",
    "symbol": "BTCUSDC"
  },
  "response": {
    "message": "No action required.",
    "status": "success"
  },
  "status": "success"
}

Błąd - nieprawidłowy symbol instrumentu na giełdzie

Błąd ten pojawia się, gdy w żądaniu zostanie użyty symbol instrumentu, który nie jest rozpoznawany przez system. Należy zweryfikować poprawność symbolu i ponowić próbę.

Przykład odpowiedzi:

{
  "created": "2025-08-12 19:15:37",
  "limit": {
    "account": "PRO",
    "max_per_day": 100,
    "usage": 4
  },
  "message": "Invalid symbol",
  "request": {
    "action": "SET",
    "code": "{WEBHOOK-CODE}",
    "quantity": "1",
    "symbol": "BTCUSDC"
  },
  "response": {
    "message": "No pair found",
    "status": "error"
  },
  "status": "error"
}

Błąd - brak wystarczających środków

Jeśli podczas przetwarzania zlecenia pojawi się problem, pole response również zawiera szczegółowe informacje o błędzie oraz kod błędu zwrócony przez giełdę lub system docelowy. To umożliwia szybkie diagnozowanie i usuwanie problemów.

{
    "created": "2025-08-12 20:49:00",
    "limit": {
        "account": "PRO",
        "max_per_day": 100,
        "usage": 2
    },
    "message": "Account has insufficient balance for requested action.",
    "request": {
        "action": "BUY",
        "code": "{WEBHOOK-CODE}",
        "quantity": "1",
        "symbol": "BTCUSDT"
    },
    "response": {
        "code": -2010,
        "msg": "Account has insufficient balance for requested action."
    },
    "status": "error"
}

W tym przykładzie giełda zwróciła kod błędu -2010 oraz komunikat informujący o niewystarczającym saldzie na koncie, co uniemożliwiło realizację zlecenia.

Co to jest pole response i dlaczego jest takie ważne?

Pole response w formacie JSON zawiera szczegółową odpowiedź zwróconą bezpośrednio przez giełdę lub inny system, do którego kierowane jest zapytanie webhooka. To właśnie w tym polu znajdziesz najbardziej techniczne i precyzyjne informacje dotyczące wyniku wykonanej operacji, jej statusu oraz ewentualnych problemów, które mogły wystąpić.

Dzięki danym z pola response masz pełen wgląd w działanie Twoich webhooków na poziomie giełdy i możesz precyzyjnie śledzić przebieg zleceń, kontrolować ich realizację i szybko reagować na nieprawidłowości.

Przykład odpowiedzi giełdy w polu response:

...
"response": {
    "orderId": 123456789,
    "status": "FILLED",
    "price": "27000.00",
    "executedQty": "0.01",
    "transactTime": 1691861322000
}
...

W polu response znajdziesz komplet danych przesłanych przez giełdę , jak:

  • orderId - unikalny identyfikator zlecenia,
  • status - status realizacji (np. FILLED oznacza, że zlecenie zostało zrealizowane),
  • price - cena, po której zlecenie zostało wykonane,
  • executedQty - faktycznie zrealizowana ilość,
  • transactTime - czas wykonania (w formacie timestamp).

Te informacje pochodzą bezpośrednio z API giełdy i pozwalają Ci szczegółowo monitorować realizację zleceń. Dane różnią się w zależności od obsługiwanej giełdy.

Przykład błędu:

Jak działa limitowanie zapytań?

Każdy webhook posiada przypisany limit dzienny liczby zapytań, który jest określany na podstawie wybranego przez Ciebie planu abonamentowego. Limit ten jest odświeżany codziennie o północy czasu UTC, co oznacza, że każdego dnia masz do dyspozycji określoną liczbę możliwych wywołań webhooka.

W odpowiedzi JSON znajdziesz dokładne informacje na temat:

  • Twojego aktualnego planu konta (np. „Free”, „PRO”).
  • Maksymalnej liczby zapytań, które możesz wykonać w ciągu jednego dnia.
  • Aktualnego stanu zużycia limitu, czyli ile zapytań już zostało zrealizowanych w danym dniu.

Jeśli przypadkowo lub celowo przekroczysz swój dzienny limit, webhook automatycznie przestanie przetwarzać dalsze zapytania do momentu odnowienia limitu. W takim przypadku odpowiedź JSON zawiera stosowny komunikat o przekroczeniu limitu, dzięki czemu natychmiast poznasz przyczynę braku realizacji dalszych operacji.

Więc o limitach możesz dowiedzieć się w dokumentacji "Limity"

Monitorowanie odpowiedzi w panelu webhooka

Każdy użytkownik ma możliwość wygodnego i szczegółowego monitorowania wszystkich odpowiedzi webhooków w dedykowanym panelu zarządzania. Aby uzyskać dostęp do tego narzędzia, przejdź do sekcji Kontm handlowe > Moje webhooki > Wybierz bota

W tym miejscu znajdziesz przejrzysty interfejs, który umożliwia podgląd wszystkich odpowiedzi zwracanych przez webhook dla wybranego bota. Panel prezentuje szczegóły dotyczące statusów, komunikatów oraz danych zwróconych przez giełdę, co pozwala na bieżąco śledzić poprawność działania automatycznych zleceń oraz szybko reagować na ewentualne błędy.

Dzięki temu narzędziu zyskujesz pełną kontrolę nad działaniem swoich botów oraz wygodny dostęp do historii komunikacji z serwerem, bez konieczności samodzielnej analizy logów czy integracji.

Więcej informacji oraz instrukcje korzystania z panelu znajdziesz w dokumentacji "Panel zarządzania webhookiem"

Podsumowanie

Odpowiedź webhooka w formacie JSON jest Twoim najważniejszym źródłem informacji o tym, co dzieje się z przesyłanymi zleceniami i zapytaniami. Znajdziesz w niej zarówno:

  • ogólny status operacji,
  • zrozumiałe komunikaty informacyjne,
  • dane o limitach wykorzystania zasobów,
  • a przede wszystkim szczegółową techniczną odpowiedź giełdy w polu response.

Dzięki temu możesz:

  • monitorować efekty i status zleceń w czasie rzeczywistym,
  • kontrolować zużycie limitów i dostępność zasobów,
  • diagnozować problemy i szybko reagować na błędy.

Analiza pola response pozwala w pełni wykorzystać potencjał webhooków Psyll, zapewniając automatyzację handlu z maksymalnym bezpieczeństwem, przejrzystością i pełną kontrolą.