Webhooks

Event Payloads

member.created

Fired when a new member is added to the site, either via the dashboard or the API.

{
  "id": "evt-uuid",
  "type": "member.created",
  "timestamp": "2026-03-28T12:00:00.000Z",
  "version": "1",
  "siteId": "site-uuid",
  "data": {
    "member": {
      "id": "member-uuid",
      "email": "[email protected]",
      "displayName": "Jane Smith",
      "status": "active",
      "verified": false,
      "paid": false
    },
    "accessGroupIds": ["group-uuid-1", "group-uuid-2"]
  }
}

member.updated

Fired when a member's details change.

{
  "data": {
    "member": {
      "id": "member-uuid",
      "email": "[email protected]",
      "displayName": "Jane Smith",
      "status": "active",
      "verified": true,
      "paid": true
    },
    "changedFields": ["paid", "status"]
  }
}

changedFields lists which fields were modified in this update.

member.auth

Fired when a member logs in or logs out via your site's portal.

{
  "data": {
    "member": {
      "id": "member-uuid",
      "email": "[email protected]",
      "displayName": "Jane Smith"
    },
    "action": "login",
    "firstLogin": true
  }
}

Field

Values

Description

action

"login" or "logout"

What the member did

firstLogin

boolean

true if this is the member's very first login (useful for onboarding triggers)

member.deleted

Fired when a member is removed from the site.

{
  "data": {
    "member": {
      "id": "member-uuid",
      "email": "[email protected]"
    }
  }
}

access-group.created

Fired when a new access group is created.

{
  "data": {
    "accessGroup": {
      "id": "group-uuid",
      "name": "Premium Members",
      "description": "Access to premium content"
    }
  }
}

access-group.updated

Fired when an access group's details change.

{
  "data": {
    "accessGroup": {
      "id": "group-uuid",
      "name": "Premium Members (Updated)",
      "description": "New description"
    },
    "changedFields": ["name", "description"]
  }
}

access-group.deleted

Fired when an access group is deleted.

{
  "data": {
    "accessGroup": {
      "id": "group-uuid",
      "name": "Premium Members"
    }
  }
}

access-group.member.added

Fired when a member is added to an access group.

{
  "data": {
    "accessGroup": {
      "id": "group-uuid",
      "name": "Premium Members"
    },
    "member": {
      "id": "member-uuid",
      "email": "[email protected]"
    }
  }
}

access-group.member.removed

Fired when a member is removed from an access group.

{
  "data": {
    "accessGroup": {
      "id": "group-uuid",
      "name": "Premium Members"
    },
    "member": {
      "id": "member-uuid",
      "email": "[email protected]"
    }
  }
}

Was this helpful?