Overview
When an event occurs (e.g., new member signup), Gately sends an HTTP POST request to your configured webhook URL with event data.Setting Up Webhooks
Via Dashboard
- Go to Webhooks in your dashboard
- Click Create Webhook
- Enter your endpoint URL
- Select events to subscribe to
- Save
Webhook Configuration
| Field | Description |
|---|---|
| URL | Your endpoint URL (HTTPS required) |
| Events | Events to trigger the webhook |
| Secret | Signing secret for verification |
| Headers | Custom headers to include |
| Active | Enable/disable the webhook |
Events
Member Events
| Event | Description |
|---|---|
member.created | New member signed up |
member.updated | Member profile updated |
member.deleted | Member account deleted |
member.login | Member logged in |
member.plan_changed | Member changed subscription plan |
Form Events
| Event | Description |
|---|---|
form.submitted | Form submission received |
form.created | New form created |
form.updated | Form settings updated |
Subscription Events
| Event | Description |
|---|---|
subscription.created | New subscription started |
subscription.updated | Subscription modified |
subscription.cancelled | Subscription cancelled |
subscription.renewed | Subscription renewed |
Payment Events
| Event | Description |
|---|---|
payment.succeeded | Payment successful |
payment.failed | Payment failed |
refund.created | Refund issued |
Helpdesk Events
| Event | Description |
|---|---|
ticket.created | New support ticket |
ticket.updated | Ticket status changed |
ticket.replied | New reply on ticket |
Payload Format
All webhook payloads follow this structure:Example: Member Created
Example: Form Submitted
Verifying Webhooks
All webhooks are signed with your webhook secret. Verify the signature to ensure the request is from Gately.Signature Header
Verification (Node.js)
Verification (Python)
Retry Policy
If your endpoint returns a non-2xx status code, Gately will retry:| Attempt | Delay |
|---|---|
| 1 | Immediate |
| 2 | 1 minute |
| 3 | 5 minutes |
| 4 | 30 minutes |
| 5 | 2 hours |
Best Practices
Respond Quickly
Respond Quickly
Return a 200 response immediately, then process the event asynchronously.
Handle Duplicates
Handle Duplicates
Use the event
id to deduplicate events (webhooks may be sent multiple times).Verify Signatures
Verify Signatures
Always verify the webhook signature to prevent spoofing.
Use HTTPS
Use HTTPS
Only use HTTPS endpoints for security.
Log Events
Log Events
Log all received events for debugging and auditing.
Testing Webhooks
Test from Dashboard
- Go to Webhooks > [Your Webhook]
- Click Send Test Event
- Select event type
- View response
Local Development
Use a tunnel service like ngrok for local testing:Webhook Logs
View webhook delivery history:- Go to Webhooks > [Your Webhook] > Logs
- See all delivery attempts
- View request/response details
- Retry failed deliveries
