Webhook Configuration Guide
Set up webhooks to receive real-time notifications.
What are Webhooks?
Webhooks are HTTP callbacks that notify your application when events occur in Acme.
Setting Up Webhooks
Step 1: Create Endpoint
- Go to Settings > API > Webhooks
- Click "Add Webhook"
- Enter your endpoint URL
- Select events to subscribe
Step 2: Configure Security
Secret Key: whsec_abc123...
Use this to verify webhook signatures
Available Events
| Event | Trigger |
|-------|---------|
| project.created | New project created |
| project.updated | Project modified |
| task.created | New task created |
| task.completed | Task marked complete |
| member.added | Team member joined |
| comment.added | New comment posted |
Payload Example
{
"event": "task.completed",
"timestamp": "2024-01-15T10:30:00Z",
"data": {
"task_id": "task_abc123",
"project_id": "proj_xyz789",
"completed_by": "user_123",
"title": "Review documentation"
}
}
Verifying Signatures
const crypto = require('crypto');
function verifyWebhook(payload, signature, secret) {
const expected = crypto
.createHmac('sha256', secret)
.update(payload)
.digest('hex');
return crypto.timingSafeEqual(
Buffer.from(signature),
Buffer.from(expected)
);
}
Retry Policy
Failed webhooks are retried:
- 1st retry: 1 minute
- 2nd retry: 5 minutes
- 3rd retry: 30 minutes
- 4th retry: 2 hours
- 5th retry: 24 hours