Overview
Webhooks allow you to receive real-time notifications when events occur in Rowbase. Instead of polling the API, Rowbase pushes updates to your endpoint.Setting Up Webhooks
Create a Webhook
- Go to Settings → Webhooks
- Click Create Webhook
- Enter your endpoint URL
- Select which events to subscribe to
- Click Create
Webhook URL Requirements
Your endpoint must:- Use HTTPS (HTTP not allowed for security)
- Respond with 2xx status within 30 seconds
- Accept POST requests with JSON body
Events
Available Events
| Event | Description |
|---|---|
dataset.created | A new dataset was created |
dataset.updated | Dataset metadata was updated |
dataset.deleted | A dataset was deleted |
dataset.data.added | Rows were added to a dataset |
dataset.data.updated | Rows were modified |
dataset.data.deleted | Rows were deleted |
operation.created | An operation was added |
operation.updated | An operation was modified |
operation.deleted | An operation was removed |
project.created | A new project was created |
project.updated | Project settings were changed |
project.deleted | A project was deleted |
Event Payload
All webhook events follow this structure:Verifying Webhooks
Signature Verification
Each webhook request includes a signature header for verification:- Node.js
- Python
Retry Policy
If your endpoint doesn’t respond with a 2xx status, Rowbase retries with exponential backoff:| Attempt | Delay |
|---|---|
| 1 | Immediate |
| 2 | 1 minute |
| 3 | 5 minutes |
| 4 | 30 minutes |
| 5 | 2 hours |
| 6 | 8 hours |
Testing Webhooks
Test Events
Send test events from the webhook settings page:- Go to Settings → Webhooks
- Click on your webhook
- Click Send Test Event
- Choose an event type
- View the response
Local Development
Use a tunnel service to test webhooks locally:Webhook Logs
View recent webhook deliveries:- Go to Settings → Webhooks
- Click on a webhook
- View the Delivery Log
- Event type and timestamp
- Request payload
- Response status and body
- Delivery attempts and timing
Best Practices
Respond quickly
Respond quickly
Return a 200 response immediately, then process the event asynchronously. This prevents timeouts.
Handle duplicates
Handle duplicates
Webhooks may be delivered more than once. Use the event
id to deduplicate.Verify signatures
Verify signatures
Always verify the webhook signature to ensure requests are authentic.
Use a queue
Use a queue
For high-volume webhooks, push events to a message queue for reliable processing.