PUBLIC PREVIEWThis feature is currently in public preview, meaning it is nearing the final product but may not yet be fully stable. If you encounter any issues or have feedback, please reach out to us via our Slack channel. Your input is valuable in helping us improve this feature. For more details, see our Public Preview Feature List.
Creating a webhook table in RisingWave
To utilize webhook sources in RisingWave, you need to create a table configured to accept webhook requests. Below is a basic example of how to set up such a table:| Parameter or clause | Description |
|---|---|
CREATE SECRET | Securely stores a secret value in RisingWave for request validation. |
CREATE TABLE | Defines a table with a JSONB column to store webhook payload data. |
connector | Configures the table to accept incoming HTTP webhook requests |
VALIDATE SECRET...AS... | Authenticates requests using the stored secret and signature comparison. |
secure_compare() | Validates requests by matching the header signature against the computed signature, ensuring only authenticated requests are processed. Note secure_compare(...) is the only supported validation function for webhook tables. |
header_of_signature | Specifies which HTTP header contains the incoming signature. |
signature_generation_expressions | Expression to compute the expected signature using the secret and payload. |
'secret_value' to compute signature.
Supported webhook sources and authentication methods
RisingWave has been verified to work with the following webhook sources and authentication methods:| webhook source | Authentication methods |
|---|---|
| GitHub | SHA-1 HMAC, SHA-256 HMAC |
| Segment | SHA-1 HMAC |
| HubSpot | API Key, Signature V2 |
| AWS EventBridge | Bearer Token |
| Rudderstack | Bearer Token |
While only the above sources have been thoroughly tested, RisingWave can support additional webhook sources and authentication methods. You can integrate other services using similar configurations.