Skip to content

Security and hosting

Hosted in Sydney. Locked down by default.

SentientOne is built by Infonex in Melbourne and runs in Sydney. This page lists where your data lives, which services touch it and how keys, secrets and outbound calls are protected. No marketing badges, just what the system does.

200 free credits when you sign up. No card needed.

Where it runs

Your agents, knowledge, conversations and account live in Australia.

Hosting regions
Web app (app.sentientone.ai)Vercel, Sydney (syd1)
API (api.sentientone.ai)Google Cloud Run, australia-southeast1 (Sydney)
Database and file storageSupabase Postgres with pgvector, ap-southeast-2 (Sydney)
Cache and rate limitsUpstash Redis, Sydney

Other services

Some work is done by specialist services outside Australia. Each one gets only what its job needs.

Third-party services
Your model providerOpenAI, Anthropic, Google or Groq, on your own key, receives the prompt, the retrieved passages and the conversation for each reply
OpenAI embeddingsReceives knowledge text when it's added, and questions, to make embeddings
CohereReceives the question and candidate passages to rerank them
FirecrawlCrawls the websites you add to knowledge
ClickHouse Cloud (US)Stores traces for 90 days, with personal details redacted
PostHog (US)Product analytics and error reports: ids, counts and timings, never message text
StripeCard payments for credit packs; card details never reach SentientOne
ResendAccount and billing emails

Keys

Two kinds of SentientOne key, for two places.

SentientOne keys
Secret key (sk-so-…)For your servers. Calls any of your agents through the API. Never put it in a web page or an app
Publishable key (pk-so-…)For the widget. One per agent; reaches only that agent, only while it's active, only from your allowed websites, at most 120 requests a minute per key and 12 per visitor. Rotate it any time

Secret keys are refused on the widget path, so a key copied from a page can't be used to chat as you. Details on the widget page.

Encryption

Third-party secrets you give SentientOne are encrypted before they're stored and decrypted only at the moment they're used.

  • AES-256-GCM for model provider keys, MCP server tokens and passwords, workflow signing secrets and Slack webhook URLs.
  • Saved keys are never sent back to the browser: the dashboard shows them masked, and a masked value on save keeps the stored one.
  • Two-step verification secrets are encrypted the same way.
  • All traffic is HTTPS, with HSTS on the marketing site.

Accounts and sign-in

  • Email and password, Google or Microsoft. Passwords are hashed with bcrypt, and passwords known from public breaches are refused (checked with Have I Been Pwned's k-anonymity API, which never sees the password).
  • Two-step verification with an authenticator app, plus ten one-time recovery codes. Five wrong codes lock it for five minutes.
  • Turning two-step on ends sessions made before it. Password resets use an eight-digit code that works once, within an hour.
  • Microsoft accounts link to an existing account only when Microsoft vouches for the email address.

Outbound calls

MCP servers, workflow HTTP requests, webhooks and Slack messages go to URLs that users type, so each connection is checked first.

  • The host is resolved once and refused unless every address is public: no private, loopback, link-local, carrier-grade NAT or cloud metadata addresses.
  • The connection goes to the checked address, so DNS rebinding can't redirect it. Redirects aren't followed.
  • Workflow webhooks are signed with HMAC-SHA256 so your endpoint can verify them.

Application security

  • Row-level security is on in the database and public (anonymous) access to your data is revoked; all data access goes through SentientOne's servers, scoped to your account.
  • Security headers on the app: nosniff, a strict referrer policy, frame protection, a permissions policy and a content security policy for framing and plugins.
  • Regular expressions in workflows and guardrails run with a time limit, so a bad pattern can't stall the service.
  • Errors never return database text or stack traces; they return a code, a message and a request id.

Data and retention

Retention
Agents, knowledge, conversationsKept until you delete them
Traces90 days
Your accountDelete it from Settings: your data and your Stripe customer record are removed

Enterprise hosting

Need SentientOne on your own infrastructure, with your security, compliance and support needs built in? Talk to us about custom hosting.

Report a vulnerability

Email security@sentientone.ai with the details. Please give us a reasonable time to fix it before you publish.

Build your first agent in the next ten minutes

Sign up and you get 200 free credits, no card needed. Create an agent, add your knowledge, try it in the Playground, then call it from your code or put it on your website.