Szybki start
Klucz, pierwsze wywołanie, pierwszy webhook: tyle wystarczy na start.
1. Utworzenie klucza
W Apexie proszę otworzyć menu konta i wybrać pozycję API i webhooki. Klucz może utworzyć Superużytkownik konta lub Administrator; to także oni widzą dziennik wywołań i webhooki. Jeśli programista sam tworzy klucz i przegląda dziennik, potrzebuje roli Administratora na koncie firmy.
Każda firma ma jeden klucz testowy i jeden klucz produkcyjny z pełnym dostępem, a obok nich dowolną liczbę nazwanych kluczy raportowych, które tylko czytają konto i raporty kampanii i można je odwoływać pojedynczo. Po utworzeniu nowego klucza produkcyjnego stary działa jeszcze przez 7 dni, potem wywołania z nim dostają 401 api_key_expired: tyle jest czasu na wymianę. Klucz należy do swojego twórcy i działa z jego uprawnieniami. Jeśli twórca opuści zespół lub straci rolę Administratora, klucz zostaje, ale każde wywołanie dostaje 403 api_key_creator_inactive, dopóki Superużytkownik lub Administrator nie przejmie go w pozycji API i webhooki; wartość klucza pozostaje taka sama.
2. Pierwsze wywołanie
Proszę sprawdzić klucz: GET /v1/account pokazuje, do której firmy należy, kto go utworzył i czy działa produkcyjnie, czy w trybie testowym (livemode). W przykładach klucz pochodzi ze zmiennej środowiskowej TRENDIZZ_KEY.
curl "https://api.trendizz.com/v1/account" \ -H "Authorization: Bearer $TRENDIZZ_KEY"
3. Pierwszy webhook
Proszę dodać endpoint wywołaniem POST /v1/webhook-endpoints: podać własny adres https i żądane typy zdarzeń. Sekret podpisu (whsec_…) odpowiedź zawiera tylko raz, dlatego należy go zapisać. POST /v1/webhook-endpoints/{id}/test wysyła zdarzenie testowe, więc weryfikację podpisu można wypróbować także kluczem testowym.
curl -X POST "https://api.trendizz.com/v1/webhook-endpoints" \
-H "Authorization: Bearer $TRENDIZZ_KEY" \
-H "Idempotency-Key: my-request-1" \
-H "Content-Type: application/json" \
-d '{
"url": "https://crm.acme.example/hooks/trendizz",
"events": [
"positive_response.created",
"suppression.created"
],
"description": "CRM sync"
}'