ProxGate can send real-time notifications to your server when licensing events occur.
Each webhook delivery includes an X-ProxGate-Signature header containing an HMAC-SHA256 signature of the payload.
const crypto = require('crypto');
function verifyWebhook(payload, signature, secret) {
const expected = crypto
.createHmac('sha256', secret)
.update(JSON.stringify(payload))
.digest('hex');
return crypto.timingSafeEqual(
Buffer.from(signature),
Buffer.from(expected)
);
}Additional headers: X-ProxGate-Event (event type) and X-ProxGate-Delivery (unique delivery ID).
LICENSE_ACTIVATEDWhen a license is successfully activated on a device
LICENSE_DEACTIVATEDWhen a license activation is removed from a device
LICENSE_EXPIREDWhen a license reaches its expiration date
LICENSE_VALIDATEDWhen a license validation check is performed
LICENSE_CREATEDWhen a new license key is generated
LICENSE_REVOKEDWhen a license is revoked by an administrator
LICENSE_SUSPENDEDWhen a license is temporarily suspended
LICENSE_TRANSFERREDWhen a license is transferred between devices/domains
PRODUCT_CREATEDWhen a new product is created
PRODUCT_UPDATEDWhen product details are modified
CUSTOMER_CREATEDWhen a new customer record is created
ACTIVATION_CREATEDWhen a new device activation is recorded
ACTIVATION_REMOVEDWhen a device activation is removed
Failed deliveries are automatically retried with exponential backoff:
Attempt 2
1 min
Attempt 3
5 min
Attempt 4
15 min
Attempt 5
30 min
Attempt 6
60 min