Skip to main content
The customer portal is an embeddable, token-authed surface your end customers use to manage their own webhook destinations and inspect deliveries — so “ship webhooks to our customers” stops generating support tickets. No separate auth backend: you issue a signed access token per customer, and everything the token can see is scoped to that customer.
1

Create a portal

In the console, open Project → Portals → + Portal. Give it a name and choose which datasets (event types) it exposes. Customers can only subscribe destinations to those datasets.
2

Issue a customer token

On the portal row, open Tokens and issue one per customer using your own id for them. You get a one-time link:
The token (hpt_…) is shown once and stored hashed. Set an expiry if you want tokens to rotate; revoke from the same list at any time.
3

Share or embed

Send the link directly, or embed the portal in your own dashboard in an iframe — pass ?token=… when you render the frame from your authenticated app. The SPA stores the token in sessionStorage and strips it from the address bar.

Portal API

Everything the portal UI does is also available as a small token-authed API:

Scoping guarantees

Deliveries made to customer destinations behave exactly like every other Hookie delivery — HMAC-signed, retried with backoff, dead-lettered, and verifiable. Sign in and open a project’s Portals tab to try it.