Instalacja - REST API

2 min czytania Aktualizacja: 11.09.2026

Na tej stronie Dwa endpointy
  1. Dwa endpointy
  2. Uwierzytelnianie
  3. Ciało żądania
  4. Minimalne zgłoszenie błędu
  5. Minimalne zgłoszenie transakcji
  6. Pierwszy test

Zanim zaczniesz, utwórz projekt w panelu DockRay. W jego ustawieniach znajdziesz token projektu - publiczny identyfikator, który wchodzi do adresu endpointu - a w zakładce Klucze API wygenerujesz klucz prywatny. Klucz jest pokazywany tylko raz, w momencie generowania: w bazie DockRay leży wyłącznie jego skrót. Jeżeli nie masz jeszcze projektu, zacznij od zakładania konta i pierwszego projektu.

Dwa endpointy

EndpointMetodaDo czego
/api/v1/{token}/projectPOSTzgłoszenie błędu lub wyjątku
/api/v1/{token}/transactionPOSTzgłoszenie transakcji HTTP

{token} w adresie to publiczny token projektu - ten sam, który widać w panelu przy każdej integracji. Wchodzi wprost do adresu, bo nie jest sekretem.

Uwierzytelnianie

Klucz prywatny można przekazać na trzy sposoby, sprawdzane w tej kolejności:

  1. parametr api_token w adresie,
  2. pole formularza api_token w ciele żądania,
  3. nagłówek Authorization: Bearer.

Nagłówek jest wyborem najbezpieczniejszym: parametry adresu trafiają do logów serwerów pośredniczących, a pole formularza wymaga ciała typu application/x-www-form-urlencoded, którego zwykle nie używa się do wysyłki JSON-a.

bash
curl -X POST https://dockray.io/api/v1/PROJECT_TOKEN/project \
  -H 'Authorization: Bearer PROJECT_PRIVATE_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "exception": {
      "values": [
        {
          "type": "RuntimeException",
          "value": "Payment gateway returned an unexpected response"
        }
      ]
    }
  }'

Ciało żądania

JSON, opcjonalnie spakowany gzipem z nagłówkiem Content-Encoding: gzip. Gdy ciało jest spakowane, klucz nie może iść polem formularza - parser czyta skompresowany strumień jako JSON wprost, więc pole wewnątrz niego nigdy nie zostanie odczytane. Przy gzipie klucz zawsze musi trafić do adresu albo do nagłówka.

Minimalne zgłoszenie błędu

Jedyne wymagane pola to typ i treść wyjątku:

js
{
    "exception": {
        "values": [
            {
                "type": "RuntimeException",
                "value": "Payment gateway returned an unexpected response"
            }
        ]
    }
}

Reszta pól jest opcjonalna, ale każde dokłada coś do diagnozy w panelu: stos wywołań (exception.values[0].stacktrace), nazwa i wersja klienta (sdk.name, sdk.version), środowisko, system operacyjny i runtime (contexts.os.*, contexts.runtime), kontekst żądania (request.url, request.method, request.headers) oraz dane użytkownika (user.id, user.username, user.email, user.ip_address, user.agent).

Minimalne zgłoszenie transakcji

Jedyne wymagane pole to niepuste contexts.trace.data:

js
{
    "transaction": "POST /api/orders",
    "contexts": {
        "trace": {
            "data": {
                "url": "https://api.example.com/api/orders",
                "method": "POST"
            }
        }
    },
    "tags": {
        "http.status_code": "200"
    }
}

Pierwszy test

bash
curl -X POST https://dockray.io/api/v1/PROJECT_TOKEN/project \
  -H 'Authorization: Bearer PROJECT_PRIVATE_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"exception":{"values":[{"type":"RuntimeException","value":"Kontrolny komunikat DockRay"}]}}'

Odpowiedź 200 {"success": true} znaczy, że zdarzenie zostało przyjęte. Sprawdź panel w sekcji Błędy projektu wskazanego przez token.

Czytaj dalej

Newsletter DockRay

Bezpieczeństwo aplikacji w Twojej skrzynce

Najważniejsze podatności, konkretne zalecenia i praktyczne wskazówki dla Twoich aplikacji. Wybierz technologie i śledź to, co ma znaczenie dla Twojego projektu.

  • Codzienne zestawienie nowych podatności, także krytycznych.
  • Powiadomienia o ważnych aktualizacjach.
  • Praktyczne porady o bezpieczeństwie i monitoringu aplikacji.

Pozostaw puste, aby otrzymywać informacje o wszystkich technologiach.

Zapis jest bezpłatny. Wypiszesz się jednym kliknięciem w wiadomości.