Fail closed before storage
Endpoints require a current organization key. If encryption is unavailable, requests with payload bodies are rejected rather than stored unencrypted.
Security
Security is part of HookDeploy’s request path—not a policy layered on afterward. Payloads are sanitized, encrypted with organization-scoped keys, stored in your selected region, and released only through authenticated, permission-checked paths.
Protection path
A webhook is treated as untrusted input from the moment it arrives. Each transition adds a separate control before data can move forward.
Token and IP rules run before capture. Payload-size and plan limits are enforced at the edge.
request admittedCommon credential headers are replaced. Configured JSON fields are removed from the stored copy.
credentials removedThe organization key encrypts payload content. If that key is unavailable, a body is not stored.
AES-256-GCMEncrypted blobs and protected structured fields persist in the organization’s selected region.
stored encryptedEncryption
HookDeploy uses envelope encryption so customer payloads do not share one universal data key. Rotation changes the active key without breaking access to retained history.
request → original key id → authorized decrypt Endpoints require a current organization key. If encryption is unavailable, requests with payload bodies are rejected rather than stored unencrypted.
Common credential headers are replaced before storage by default. An organization admin can disable header sanitization per endpoint; that change is audited.
Per-organization encryption keys work alongside role-based permissions, service authorization, and Postgres Row Level Security.
Plain-language scope: Authorized platform services decrypt payloads for requested product operations. Human support staff have no standing access; inspection requires an explicit, expiring customer grant. This is not zero-knowledge encryption.
Access isolation
Organization membership starts the decision. Role permissions, service authorization, Row Level Security, and the payload key boundary complete it.
The stored object remains ciphertext. Only this authorized response receives decrypted content.
scope · org_acme / req_7f2aHuman access
HookDeploy is not zero knowledge: platform services decrypt data for authorized product operations. Human support access is different—it is locked by default and controlled by your organization.
Normal state
HookDeploy support tooling cannot inspect your organization’s payloads without an active grant from one of your organization administrators.
You grant accessAn org admin confirms temporary read-only access.
Support diagnosesAuthorized reads are recorded in audit history.
Access closesYou revoke it, or the grant expires automatically.
Support staff have no standing access to inspect organization payloads.
An organization admin must deliberately grant temporary, read-only support access.
Every grant expires automatically and can be revoked by the customer at any time.
Grant, revocation, and support data-read events are recorded in organization audit history.
Close to zero knowledge, without sacrificing support. Encryption minimizes routine human access while this explicit grant path preserves the ability to help when you ask us to investigate.
Shared responsibility
HookDeploy protects stored data by default, while giving your team control over who can send, what is retained, and where it persists.
Encrypt before persistencePayload content reaches storage as ciphertext.
platformRedact common credentialsHeader sanitization is enabled by default. An org admin can disable it per endpoint when required; the change is audited.
default · optionalKeep organization boundariesKeys, roles, policies, and storage references retain organization scope.
platformPurge expired request dataDaily retention jobs remove expired records and associated payload objects.
platformRequire a high-entropy token on incoming requests. Only a SHA-256 hash is stored.
→ Network accessRestrict production endpoints to known IPv4 addresses and CIDR ranges.
→ Payload privacyRemove selected sensitive JSON fields before the encrypted payload is stored.
→ Data lifecycleChoose a persistence region and a plan-based request retention window.
→Signature headers are preserved for downstream verification even while default credential-header sanitization is enabled.
Data governance
Cloudflare accepts traffic near the sender. Persistent payloads, metadata, and audit archives follow the organization region selected at signup.
Edge execution location and persistence region are different concepts. Your selected region controls durable storage.
Request retention follows your plan. A daily purge removes expired records and their associated encrypted objects.
Member, endpoint, API-key, forwarding, and security-setting actions are written to an organization audit log and archived to regional object storage.
Account deletion orchestrates removal of database records and stored payload objects, with cleanup steps tracked for operational follow-up.
Secure delivery
Every saved public destination requires HTTPS. Team and Enterprise organizations can instead route the final handoff through Tailscale to a server with no public IP.
Available on every plan. Destination validation requires an https:// URL.
The customer-facing server needs no inbound public firewall rule or open internet port.
Assurance
We designed the platform around auditability, access boundaries, key management, and repeatable data handling before beginning a formal certification process.
HookDeploy is not currently SOC 2 certified. We plan to begin a formal SOC 2 audit engagement by the end of 2026. Until then, we describe only controls that are implemented and evidenced in the product today.
Built on Cloudflare’s global network. HookDeploy inherits Cloudflare’s edge platform and network-level DDoS mitigation. Customer payload persistence remains governed by HookDeploy’s regional storage and encryption controls.
Security FAQ
The same answers below are used for structured data so search engines, answer engines, and customers receive one version of the truth.
HookDeploy encrypts captured request bodies with AES-256-GCM before object storage. Headers, query parameters, and configured response content are encrypted before database storage. Each organization has its own data encryption key, wrapped by a regional master key and rotated on a weekly schedule.
Captured payload content is encrypted before storage. Operational metadata such as method, timestamp, source IP, and payload size is stored separately so HookDeploy can route, meter, and audit requests. HookDeploy is not a zero-knowledge service: authorized platform services decrypt payloads for requested product operations, but support staff have no standing payload access.
Not by default. Support staff can inspect organization payloads only after an organization admin explicitly grants temporary, read-only access through HookDeploy’s break-glass support system. Grants expire after 24 hours, 48 hours, or 7 days, can be revoked at any time, and produce audit events when granted, revoked, or used to read data.
HookDeploy combines per-organization encryption keys with role-based permissions, service-layer authorization, and Postgres Row Level Security. These independent controls reduce the impact of a failure in any one layer and keep customer access scoped to organization membership and permissions.
HookDeploy preserves common HMAC signature headers so your destination can verify webhook authenticity. HookDeploy also supports verification handshakes for Meta, Slack, and Zoom on eligible plans. It does not claim universal provider-signature verification at ingestion.
Yes. Team and Enterprise plans can route delivery through Tailscale to a private server with no public IP or inbound firewall port. Standard public forwarding requires an HTTPS destination.
Webhook traffic is accepted on Cloudflare's 300+ location network. Persistent payload and metadata storage follows the organization region selected at signup: United States, European Union, Asia Pacific, or Australia.
Not yet. HookDeploy was designed with SOC 2 readiness in mind rather than treating controls as a later add-on. We plan to begin a formal SOC 2 audit engagement by the end of 2026 and will update this page as that work progresses.
Email support@hookdeploy.dev. We can help with architecture, data handling, private delivery, and security-review questions.
Start capturing
Free forever for solo devs. Point your first source at HookDeploy and watch it land in under a minute.
No credit card · 5,000 requests/mo free · Cancel anytime