Skip to content

Webhooks

Overview

Webhooks let you receive HTTP POST notifications when certain events occur. Configure webhooks in the app dashboard under Settings → Webhooks.

Events

EventDescription
model.trainedA new ML model has been trained for your store
model.level_upYour store’s recommendation engine advanced to a new level
usage.limit_reachedSession usage reached the plan limit
usage.near_limitSession usage reached 80% of the plan limit

Payload Format

All webhook payloads follow this structure:

{
"event": "model.trained",
"shop": "your-store.myshopify.com",
"timestamp": "2025-01-15T10:30:00Z",
"data": {
"modelLevel": 2,
"accuracy": 0.87,
"trainingEvents": 15234
}
}

model.trained

{
"event": "model.trained",
"data": {
"modelLevel": 2,
"accuracy": 0.87,
"trainingEvents": 15234,
"previousAccuracy": 0.82
}
}

model.level_up

{
"event": "model.level_up",
"data": {
"previousLevel": 1,
"newLevel": 2,
"message": "ML-powered recommendations are now active"
}
}

usage.limit_reached

{
"event": "usage.limit_reached",
"data": {
"plan": "growth",
"sessionCount": 10000,
"sessionLimit": 10000
}
}

Verification

Each webhook request includes an X-SimplerSuite-Signature header containing an HMAC-SHA256 signature of the payload. Verify this against your webhook secret (available in the dashboard) to confirm authenticity.

X-SimplerSuite-Signature: sha256=abc123...

Retry Policy

Failed deliveries (non-2xx responses) are retried up to 3 times with exponential backoff (1 minute, 5 minutes, 30 minutes).