Security
This is how we protect what you put into Hershel: your leads, your call records and the accounts you connect to it. We only list what is in place today. If you don't see something here, don't assume we do it.
Your own dialer server
Every client dials from its own dedicated dialer server. Your leads, call records and recordings are kept on that server, and no other client dials from it.
Clients are walled off from each other
Every account in Hershel belongs to one or more organizations. Before the platform reads or changes anything, it checks that the person asking is a member of that organization, and our database reads are limited to that organization's data. A manager at one company can't open another company's campaigns, reps or reports.
Keys and logins are encrypted
When you connect a carrier account like Twilio or Telnyx, a calendar, or another app, we encrypt the keys (AES-GCM) before saving them. Once a key is saved, the dashboard shows it as a row of dots and never sends the saved value back to a browser. To change it, you type in a new one.
We don't store passwords. We store a salted hash (PBKDF2 with SHA-512, 300,000 rounds). It can confirm a password is right, but it can't be turned back into the password.
HTTPS
The dashboard and this website load only over HTTPS. Plain http:// addresses redirect to the secure version, and the dashboard tells your browser to use nothing but HTTPS with it for the next two years. The dashboard talks to our API over HTTPS too.
Signing in
Accounts are invite-only, so there's no public sign-up page. We rate limit sign-in attempts, which makes guessing passwords slow.
Our own admin accounts are the only ones that can see more than one client. Each of them has to use two-step login with an authenticator app, and the platform won't let an admin account in until that's set up.
A record of changes
Changes to your organization, your team and your services go into an audit log. Each entry says who made the change, when, what it was and which IP address it came from. Managers can read their own organization's log in the dashboard and download it as a CSV file.
Each time someone saves new settings for a service, we keep a copy of that version, so we can see exactly what changed and when.
Backups
The platform database is backed up every night. Each backup is encrypted (AES-256) before it leaves the machine that makes it, then stored with Cloudflare.
Who on our side can see your data
We run Hershel for you as a managed service, so our own team can see your account. We use that access to set up, run, fix and support your dialer. Everyone on our side who has it signs in with an admin account, and admin accounts require two-step login.
Watching for problems
Errors in the platform are reported automatically to Sentry, our error tracker, and we work through them. Each service in your account reports in to the platform while it runs. If one stops reporting, the platform marks it as down.
Where it runs
We use these providers to run Hershel:
- Vercel hosts the dashboard.
- Cloudflare runs our API and stores the encrypted backups.
- Neon hosts the platform database (Postgres).
- DigitalOcean runs the server that starts, stops and watches the services in each account.
- Sentry receives error reports.
- Resend sends our email.
- OpenAI transcribes call recordings, and Anthropic's Claude writes call briefs and runs the AI manager. This only happens if you use those features.
Found a security problem?
Email info@hershelsigma.ai and put "Security" in the subject line. Tell us what you found and how to reproduce it. A person reads that inbox. If your team has a security questionnaire for us to fill out, send it to the same address.