Webhooks
Incoming webhooks receive data from external services and create rows. Outgoing webhooks push data to external URLs when rows are created or changed.
Create Webhook
POST
/api/tables/:tableId/webhookshypertab_create_webhookCreate an incoming or outgoing webhook for a table.
| Parameter | Type | Description |
|---|---|---|
tablerequired | string | Table name or ID |
directionrequired | string | "incoming" or "outgoing" |
name | string | Human-readable webhook name |
target_url | string | URL to POST to (required for outgoing) |
trigger_on | string | "new_row", "field_change", or "filter_match" (outgoing only) |
trigger_column | string | Column to watch (for field_change trigger) |
trigger_filter | object | Filter condition (for filter_match trigger) |
field_mapping | object | Map incoming payload fields to table columns |
Incoming Webhooks
Creates a unique URL. External services POST JSON data to this URL. Use field_mapping to map nested payload fields to table columns.
i
Incoming webhook URLs are public, no auth header required. Each webhook gets a unique secret in the
X-Webhook-Secret header for verification.{
"tool": "hypertab_create_webhook",
"arguments": {
"table": "events",
"direction": "incoming",
"name": "Stripe events",
"field_mapping": {
"data.object.customer_email": "email",
"type": "event_type",
"data.object.amount": "amount"
}
}
}Outgoing Webhooks
Fires when rows change. Choose a trigger: new_row, field_change, or filter_match.
{
"tool": "hypertab_create_webhook",
"arguments": {
"table": "leads",
"direction": "outgoing",
"name": "Slack notification",
"target_url": "https://hooks.slack.com/services/...",
"trigger_on": "new_row"
}
}List Webhooks
GET
/api/tables/:tableId/webhookshypertab_list_webhooksList all webhooks for a table with direction, status, trigger config, and delivery stats.
| Parameter | Type | Description |
|---|---|---|
tablerequired | string | Table name or ID |
{ "tool": "hypertab_list_webhooks", "arguments": { "table": "leads" } }Webhook Logs
GET
/api/webhooks/:webhookId/logshypertab_get_webhook_logsGet execution history: delivery attempts, HTTP response codes, errors, and timing.
| Parameter | Type | Description |
|---|---|---|
webhook_idrequired | string | Webhook ID |
limit | integerdefault: 25 | Max logs to return (1-100) |
offset | integerdefault: 0 | Pagination offset |
{
"tool": "hypertab_get_webhook_logs",
"arguments": { "webhook_id": "wh_abc123", "limit": 10 }
}Delete Webhook
DELETE
/api/webhooks/:webhookIdhypertab_delete_webhookDelete a webhook permanently. Stops all future deliveries.
| Parameter | Type | Description |
|---|---|---|
webhook_idrequired | string | Webhook ID to delete |
{
"tool": "hypertab_delete_webhook",
"arguments": { "webhook_id": "wh_abc123" }
}