Webhooks
Receive real-time notifications when events happen in Aura
Webhooks
Webhooks let you receive real-time HTTP notifications when events occur in Aura. Use them to integrate with your own systems, trigger workflows, or sync data.
What Are Webhooks?
┌─────────────────────────────────────────────────────────────────────────────┐
│ WEBHOOK FLOW │
└─────────────────────────────────────────────────────────────────────────────┘
EVENT OCCURS AURA SENDS YOU RECEIVE
IN AURA HTTP POST & PROCESS
│ │ │
▼ ▼ ▼
┌─────────┐ ┌─────────┐ ┌─────────┐
│ Booking │ │ POST to │ │ Your │
│ Closed │ ─────────────────▶│ your │───────────────────▶│ Server │
│ Outcome │ │ endpoint│ │ Code │
└─────────┘ └─────────┘ └─────────┘When something happens (booking, call outcome, etc.), Aura sends an HTTP POST to your specified URL with details about the event.
Setting Up Webhooks
Step 1: Create Endpoint
First, create an endpoint to receive webhooks:
// Example: Express.js endpoint
app.post('/webhooks/aura', (req, res) => {
const event = req.body;
// Process the event
console.log('Received:', event.type);
// Always return 200 quickly
res.status(200).send('OK');
});Step 2: Register in Aura
- Go to Settings → Webhooks
- Click Add Endpoint
- Enter your URL
- Select events to receive
- Save
Step 3: Test
- Use the Test button
- Verify your endpoint receives the test event
- Check your logs
Webhook Events
Aura sends 14 different event types:
Booking Events (3)
call.booked- Meeting scheduledcall.rescheduled- Meeting time changedcall.cancelled- Meeting cancelled
Call Events (4)
call.started- Recording beginscall.ended- Recording stopscall.notetaker_joined- Notetaker enters meetingcall.notetaker_media_ready- Recording available
Outcome Events (4)
call.closed- Deal woncall.lost- Deal lostcall.cash_collected- Payment recordedcall.ai_review_complete- Analysis ready
Lead Events (3)
lead.interested- Contact info providedlead.captured- New lead createdlead.status_changed- Stage updated
See Event Types for full details.
Basic Payload Structure
All webhooks follow this structure:
{
"event": "call.booked",
"timestamp": "2024-01-15T10:30:00Z",
"org_id": "org_123",
"data": {
"call_id": "call_456",
"lead_id": "lead_789",
// ... event-specific data
}
}See Payload Reference for complete field documentation.
In This Section
Event Types
Complete reference of all 14 webhook events with descriptions and use cases.
Payload Reference
Detailed documentation of all fields included in webhook payloads.
Security
Signature Verification
Verify webhooks are from Aura:
const crypto = require('crypto');
function verifySignature(payload, signature, secret) {
const expected = crypto
.createHmac('sha256', secret)
.update(payload)
.digest('hex');
return crypto.timingSafeEqual(
Buffer.from(signature),
Buffer.from(expected)
);
}
// In your handler:
const signature = req.headers['x-aura-signature'];
const isValid = verifySignature(
JSON.stringify(req.body),
signature,
WEBHOOK_SECRET
);Best Practices
- Always verify signatures before processing
- Respond quickly (return 200 within 5 seconds)
- Process async for heavy operations
- Handle duplicates (events may be retried)
Retry Policy
If your endpoint fails:
| Attempt | Delay |
|---|---|
| 1 | Immediate |
| 2 | 1 minute |
| 3 | 5 minutes |
| 4 | 30 minutes |
| 5 | 2 hours |
After 5 failures:
- Event marked as failed
- Visible in webhook logs
- Manual retry available
Managing Webhooks
View Registered Endpoints
Go to Settings → Webhooks to see:
- All registered endpoints
- Events each receives
- Recent delivery status
View Event History
For each endpoint:
- Recent deliveries
- Success/failure status
- Payload inspection
- Retry options
Edit Endpoint
- Find the endpoint
- Click Edit
- Update URL or events
- Save changes
Delete Endpoint
- Find the endpoint
- Click Delete
- Confirm deletion
Testing Webhooks
Test Button
In webhook settings:
- Click Test on an endpoint
- Select event type
- Send test event
- View response
Development Tools
ngrok: Expose local server
ngrok http 3000
# Use the https URL in AuraWebhook.site: Free testing
- Go to webhook.site
- Copy your unique URL
- Use in Aura for testing
Debugging
Check in webhook logs:
- Request payload sent
- Response received
- Response time
- Error messages
Common Use Cases
CRM Sync
Event: lead.captured
Action: Create lead in SalesforceSlack Notifications
Event: call.booked
Action: Post to #sales channelCustom Analytics
Event: call.closed
Action: Update internal dashboardWorkflow Automation
Event: call.ai_review_complete
Action: Trigger follow-up sequenceQuick Links
- Zapier - No-code alternative
- API Reference - Programmatic access
- API Keys - Authentication