HookDeploy

Every HookDeploy account operates within one or more organizations that own endpoints, requests, and billing.

What is an organization?

An organization is a workspace that contains:

  • Webhook endpoints
  • Captured requests
  • Team members and their roles
  • A subscription and usage counters
  • API keys

All product data is scoped to an organization. Row Level Security in the database ensures members only see data for orgs they belong to.

Personal vs team organizations

When you sign up, HookDeploy automatically creates a personal organization:

  • Named after your display name
  • Flagged is_personal = true
  • You’re the owner with super_admin role
  • Starts on the Free plan

Create additional organizations for teams, clients, or environments. Personal orgs and team orgs work identically — the flag is informational.

Organization structure

FieldDescription
nameDisplay name shown in the org switcher
slugURL-safe identifier used in dashboard routes (/app/org/{slug})
owner_idUser who owns the org — can transfer ownership
is_personalWhether this is an auto-created personal org
stripe_customer_idStripe customer for billing (null on free plan)

Members and roles

Organizations have members. Each member has exactly one role:

RoleTypical use
super_adminOrg owner — full access including ownership transfer
adminTeam lead — manage members, billing, endpoints
developerDay-to-day work — create endpoints, replay requests
viewerRead-only — inspect requests, replay, no writes
financeBilling only — view and manage subscription, no endpoint access

Roles map to 16 granular permissions. See Roles & permissions for the complete matrix.

Switching organizations

The dashboard org switcher in the top bar lets you switch between orgs you belong to. All endpoints, requests, and settings are scoped to the active org.

Each org has independent:

  • Endpoint list and request history
  • Usage counters and plan limits
  • Billing subscription
  • API keys

Inviting members

Admins and super admins can invite members by email. Invitations:

  • Specify the target role
  • Expire after 7 days
  • Generate a unique accept link (/accept-invite/{token})
  • Require the invitee to sign up or log in before joining

See Members for the invitation flow.

Ownership

The org owner (owner_id) is the only user who can:

  • Transfer ownership to another member
  • Delete the organization (future)

Ownership transfer requires the org.transfer_ownership permission, which only super admins have — and only the current owner is super admin by default.

Plan limits are per organization

Usage limits (endpoints, requests/month, members) apply per organization, not per user. A user in three orgs gets separate quotas for each.

Check limits via the dashboard Billing page or:

curl -s "https://api.hookdeploy.dev/v1/usage" \
  -H "Authorization: Bearer hd_live_YOUR_KEY"

Next steps