Pređi na glavni sadržaj

Webhook-ovi — obaveštenja o događajima

Registrujte HTTPS endpoint da primate događaje u realnom vremenu.

Napredno· 7 min čitanja· Poslednja izmena: 2026-05-05· 31 osoba je ovo smatralo korisnim
Webhook je obaveštenje koje Glanevo šalje na vašu adresu kada se nešto desi. **Registracija.** Podešavanja → Developeri → Webhook-ovi → + Novi: - URL (HTTPS obavezan) - Tipovi događaja (izaberite nekoliko) - Tajna (za verifikaciju potpisa) **Tipovi događaja.** - `appointment.created`, `appointment.updated`, `appointment.cancelled`, `appointment.no_show` - `customer.created`, `customer.updated` - `payment.succeeded`, `payment.failed`, `payment.refunded` - `invoice.created`, `invoice.paid` - `staff.created` **Primer payload-a (`appointment.created`):** ```json { "id": "evt_01HX...", "type": "appointment.created", "createdAt": "2026-05-21T10:30:00Z", "data": { "appointment": { "id": "apt_01HY...", "customerId": "cus_...", "serviceId": "svc_...", "startAt": "2026-05-22T14:00:00Z", "endAt": "2026-05-22T15:30:00Z", "price": 450 } } } ``` **Verifikujte potpis.** Svaki zahtev nosi `X-Glanevo-Signature` zaglavlje, potpisano HMAC-SHA256. ```js const crypto = require('crypto'); const expected = crypto .createHmac('sha256', WEBHOOK_SECRET) .update(rawBody) .digest('hex'); if (req.headers['x-glanevo-signature'] !== expected) { return res.status(401).end(); } ``` **Ponovni pokušaji.** Ako ne vratite 2xx, ponavljamo pet puta sa eksponencijalnim odlaganjem (2 min, 5 min, 20 min, 1 sat, 6 sati). 📊 Istorija webhook-ova: Podešavanja → Developeri → Logovi.

Da li vam je ovaj članak bio koristan?