Schema
View JSON Schema → Example:Using the Webhooks SDK
You can use the@team-plain/webhooks package to parse and verify this event with full type safety:
Documentation Index
Fetch the complete documentation index at: /docs/llms.txt
Use this file to discover all available pages before exploring further.
Fired when a customer group is created, updated or deleted.
{
"timestamp": "2023-11-02T14:25:42.570Z",
"workspaceId": "w_01GST0W989ZNAW53X6XYHAY87P",
"payload": {
"changeType": "ADDED",
"eventType": "customer.customer_group_changed",
"customerGroup": {
"id": "cg_01GWVPYG1B8JBPGZC2VQDQEQAM",
"workspaceId": "w_01GST0W989ZNAW53X6XYHAY87P",
"name": "Acme Corp",
"key": "acme-corp",
"color": "#FF0000",
"createdAt": "2023-11-02T14:25:42.570Z",
"createdBy": {
"actorType": "user",
"userId": "u_01H1V4NA10RMHWFBXB6A1ZBYRA"
},
"updatedAt": "2023-11-02T14:25:42.570Z",
"updatedBy": {
"actorType": "user",
"userId": "u_01H1V4NA10RMHWFBXB6A1ZBYRA"
}
}
},
"id": "pEv_01HE86SY5A9KKTACZW3FGQJ0CS",
"webhookMetadata": {
"webhookTargetId": "whTarget_01HD4400VTDJQ646V6RY37SR7K",
"webhookTargetVersion": "2026-09-18",
"webhookDeliveryAttemptId": "whAttempt_01HE86V6GP2JZCQ3D6AXK81TWD",
"webhookDeliveryAttemptNumber": 3,
"webhookDeliveryAttemptTimestamp": "2023-11-02T14:26:23.894Z"
},
"type": "customer.customer_group_changed"
}
@team-plain/webhooks package to parse and verify this event with full type safety:
import { verifyPlainWebhook } from "@team-plain/webhooks";
const result = verifyPlainWebhook(rawBody, signature, secret);
if (result.error) {
console.error(result.error.message);
} else {
// result.data is fully typed with the event payload
const event = result.data;
console.log(event.eventType, event.payload);
}
Was this page helpful?
