Webhooks

Webhooks send real-time HTTP notifications to your endpoint when events occur in ReviewPanel — new reviews, metric changes, sync completions, and more.

Setup

  1. 1 Go to your dashboard settings → Webhooks.
  2. 2 Enter your endpoint URL (must be HTTPS).
  3. 3 Choose your payload detail level.
  4. 4 Set a signing secret for HMAC verification.

Event types

EventDescription
business_account.metrics.updatedRating, review count, or other metrics changed.
business_account.sync.completedA scheduled or manual sync finished.
webhook.test.sentA test event triggered from the dashboard.

Payload detail levels

Control how much data is included in each webhook payload:

metrics_only

Rating, review count, and response rate. Smallest payload.

metrics_locations

Metrics plus per-location breakdown.

metrics_reviews

Metrics, locations, and full review data (new and changed reviews).

Security

Every webhook request includes an HMAC-SHA256 signature in the X-ReviewPanel-Signature header. Verify this against your signing secret to confirm the request came from ReviewPanel.

Verification example (Node.js)

const crypto = require('crypto'); function verifySignature(payload, signature, secret) { const expected = crypto .createHmac('sha256', secret) .update(payload) .digest('hex'); return crypto.timingSafeEqual( Buffer.from(signature), Buffer.from(expected) ); }

You can rotate your signing secret at any time from the webhook settings. After rotation, both the old and new secrets are valid for 24 hours to avoid dropped deliveries.

Retries & delivery

If your endpoint returns a non-2xx status code or times out, ReviewPanel retries with exponential backoff:

  • Up to 5 retry attempts over approximately 24 hours.
  • Delivery status is tracked and visible in your dashboard.

Testing

Send a test event from your webhook settings to verify your endpoint is configured correctly. The test event uses the webhook.test.sent type and includes sample data.