Security
Security architecture, described honestly
This page explains the controls that actually exist in AvroChat today. We do not claim certifications or audits we have not completed, and we will update this page as our programme matures.
Encryption
All traffic between browsers, widgets and AvroChat is served over HTTPS using TLS. Data stored in our managed PostgreSQL database and object storage is encrypted at rest by the infrastructure provider.
Widget sessions rely on short-lived, signed grants rather than long-lived secrets, and webhook payloads from our billing and email providers are verified with HMAC signatures before they are processed.
Authentication
Accounts sign in with email and password or Google. Sessions use rotating tokens managed by our authentication provider; we never store plaintext passwords, and application code never receives your provider credentials.
- Team invitations are single-use tokens with an expiry.
- Platform administration is a separate identity model from customer accounts.
- Multi-factor authentication is mandatory for platform administrators.
- Privileged administrative sessions are time-limited and re-verified.
Workspace isolation
Every tenant-owned record carries a workspace identifier, and access is enforced with row-level security policies inside the database. A query that is not scoped to a workspace you belong to returns nothing — the restriction does not depend on the user interface behaving correctly.
Server-side functions resolve your workspace from your verified session, not from a value supplied by the browser, so a tampered request cannot reach another tenant's data.
Role permissions
Roles are hierarchical: owner, admin, manager, agent and viewer. Permissions are checked on the server for every sensitive action, including billing changes, AI configuration, website verification, invitations and email diagnostics.
- Owners and admins manage billing, websites, AI and notification settings.
- Managers oversee conversations and assignment without billing access.
- Agents work conversations and internal notes only.
- Viewers have read-only access.
- Role changes and sensitive events are written to an immutable audit log.
Conversation privacy
Conversations belong to a workspace and are visible only to its members, according to their role. Internal notes are never delivered to a visitor or exposed through the widget API.
Website visitors receive only their own conversation, authorised through a signed grant issued for that specific session and website. They cannot enumerate or read other conversations.
AI privacy
The AI agent answers from knowledge sources you add: pages we crawl at your request and documents you upload. Retrieval is scoped to your workspace, so one customer's knowledge base can never be used to answer another customer's visitor.
- AI requests are sent to our model provider to generate a reply and are not used by us to train models.
- Answers are grounded in retrieved passages; when nothing matches, the agent declines instead of guessing.
- AI usage is metered per workspace against your plan.
- You can disable the AI agent or remove knowledge sources at any time.
Infrastructure
AvroChat runs on managed cloud infrastructure: a serverless application runtime at the edge, managed PostgreSQL for application data, and managed object storage. We do not operate physical servers.
Secrets are stored in the platform's encrypted secret store and injected at runtime; they are never committed to source control or shipped in client-side code. Access to production systems is limited to the operators who need it, and administrative actions are logged.
Responsible disclosure
If you believe you have found a vulnerability, please tell us before disclosing it publicly. We will acknowledge your report, investigate, and keep you updated on the fix.
- Include the affected URL or endpoint, a description and reproduction steps.
- Test only against accounts and data you own.
- Do not run denial-of-service tests, spam users or access other customers' data.
- Give us reasonable time to remediate before publishing details.
We do not currently operate a paid bug bounty, and we will not pursue good-faith researchers who follow the guidance above.
Security contact
Send security reports and questions to support@avrochat.com with “Security” in the subject line. Use the same address for data protection requests covered by our privacy policy.