Overview
To protect your webhook endpoints from malicious requests, weβve implemented RSA-SHA256 signature verification. Every webhook request from our system includes cryptographic signatures in the headers that you can verify using our public key to ensure the request genuinely came from us. Why This Matters: Without signature verification, anyone could send fake webhook requests to your endpoints. This system ensures only legitimate requests from our platform reach your application.How It Works
We use RSA-SHA256 digital signatures with 2048-bit keys:- We sign each webhook request with our private key
- You verify the signature using our public key
- If verification passes, you know the request is authentic
Request Headers
Every webhook request includes these security headers:Header | Description | Example |
---|---|---|
X-Webhook-Signature | Base64-encoded RSA signature | iJ0S7p8K2n... |
X-Webhook-Timestamp | Unix timestamp (seconds) | 1704067200 |
Signature Construction
We create the signature by concatenating three components:timestamp
: Request timestamp (matchesX-Webhook-Timestamp
)url
: Complete webhook URL (including query parameters)body_sha256_hex
: SHA256 hash of the request body in hex format
Get Our Public Key
API Endpoint
Response Format
Implementation Examples
- Python
- Node.js
- Go