PageSourceSearch

https://natter-v2.q-1.workers.dev/privacy

html natter-v2.q-1.workers.dev collected 2026-10-03 08:09:00 UTC 10,483 bytes, 1 lines download raw bytes

1<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/assets/styles-DjiwKEup.css" data-precedence="default"/><title>Privacy — Natter</title><meta name="theme-color" content="#0a0a0f"/><meta property="og:type" content="website"/><meta property="og:title" content="Natter — AI voice agents, ready in minutes"/><meta property="og:description" content="Build voice agents in minutes. Outbound jobs with idempotency, inbound IVR routing, and real Liquid templating."/><meta property="og:site_name" content="Natter"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="Natter — AI voice agents, ready in minutes"/><meta name="twitter:description" content="Build voice agents in minutes."/><meta name="description" content="How Natter handles your data. Cloudflare Workers + Firebase + LiveKit, no data sold, no model training."/><link rel="modulepreload" href="/assets/index-cpeTfycz.js"/><link rel="modulepreload" href="/assets/createLucideIcon-Dhh7sT2q.js"/><link rel="modulepreload" href="/assets/env-CTAFHPr9.js"/><link rel="modulepreload" href="/assets/utils-DSP8JqB2.js"/><link rel="modulepreload" href="/assets/src-UDphP4vk.js"/><link rel="modulepreload" href="/assets/privacy-nAiR_YUx.js"/><link rel="modulepreload" href="/assets/arrow-left-C7oBqFX2.js"/><link rel="modulepreload" href="/assets/phone-call-C-8O2gc3.js"/><link rel="icon" type="image/svg+xml" href="/favicon.svg"/></head><body><!--$--><main class="min-h-dvh bg-[#0a0a0f] text-white"><header class="sticky top-0 z-30 border-b border-white/5 backdrop-blur-xl bg-[#0a0a0f]/80"><div class="max-w-6xl mx-auto px-4 sm:px-6 h-14 flex items-center justify-between"><a href="/" class="flex items-center gap-2"><div class="w-7 h-7 rounded-lg bg-gradient-to-br from-violet-500 to-blue-500 flex items-center justify-center"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-phone-call w-3.5 h-3.5 text-white"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path><path d="M14.05 2a9 9 0 0 1 8 7.94"></path><path d="M14.05 6A5 5 0 0 1 18 10"></path></svg></div><span class="font-semibold tracking-tight">Natter</span></a><a href="/login" class="text-sm font-medium bg-violet-600 hover:bg-violet-500 transition-colors px-4 py-1.5 rounded-lg">Sign in</a></div></header><article class="max-w-3xl mx-auto px-4 sm:px-6 py-10 sm:py-16"><a href="/" class="inline-flex items-center gap-1.5 text-sm text-white/40 hover:text-white/80 mb-6"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left w-4 h-4"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg> Back home</a><h1 class="text-3xl sm:text-4xl font-bold tracking-tight mb-2">Privacy Policy</h1><p class="text-white/40 text-sm mb-8">Last updated: <!-- -->April 26, 2026</p><div class="space-y-6 text-white/75 leading-relaxed"><p>This policy describes how Natter (&quot;we&quot;, &quot;us&quot;) handles personal data when you sign in, create voice agents, and place or receive phone calls through our service. Read it carefully. Email <a class="text-violet-400" href="mailto:[email protected]">[email protected]</a> with any questions.</p><h2 class="text-xl font-semibold text-white mt-8">What we collect</h2><ul class="list-disc pl-5 space-y-2"><li><strong class="text-white">Account info.</strong> Your email address (via Firebase Authentication) and a session cookie that identifies you across requests. We never store passwords — sign-in uses email-link verification.</li><li><strong class="text-white">Voice agent configuration.</strong> The scripts, agents, and inbound routing rules you create. Stored in Google Firestore (project <code>gnbly0</code>) under your user ID.</li><li><strong class="text-white">
1Call records.</strong> When you place or receive a call through Natter, we store call metadata (duration, cost, status, the phone numbers involved), transcripts, and (if you enable recording) audio files. Audio is carried over LiveKit&#x27;s infrastructure and recordings (when enabled) are stored under our account.</li><li><strong class="text-white">Usage stats.</strong> Aggregated counts of calls, minutes, and SMS per day, scoped to your user ID. Used to render your dashboard and bill you.</li><li><strong class="text-white">Operational logs.</strong> Cloudflare Workers and Firebase log requests for debugging and abuse prevention. These are retained for 30 days.</li></ul><h2 class="text-xl font-semibold text-white mt-8">What we don&#x27;t collect</h2><ul class="list-disc pl-5 space-y-2"><li>We do not sell your data. Ever.</li><li>We don&#x27;t use your call transcripts to train general-purpose AI models.</li><li>We don&#x27;t track you across other websites or buy data about you from third parties.</li></ul><h2 class="text-xl font-semibold text-white mt-8">Where it lives</h2><ul class="list-disc pl-5 space-y-2"><li><strong class="text-white">Google Firestore</strong> (project <code>gnbly0</code>) — agent configs, scripts, jobs, contacts, daily stats. Hosted in Google&#x27;s US multi-region.</li><li><strong class="text-white">Cloudflare Workers</strong> — runs the application code. No persistent data is stored on Workers itself.</li><li><strong class="text-white">LiveKit</strong> — runs the real-time audio infrastructure that connects you, our voice agent, and the phone network. See <a class="text-violet-400" href="https://livekit.io/legal/privacy-policy" target="_blank" rel="noreferrer">LiveKit&#x27;s privacy policy</a> for their handling.</li><li><strong class="text-white">Vonage</strong> — telephony carrier. Phone calls traverse their SIP trunk to reach the public phone network.</li><li><strong class="text-white">Firebase Authentication</strong> — your email and sign-in events.</li></ul><h2 class="text-xl font-semibold text-white mt-8">Subprocessors</h2><p>We share your data only with the providers required to run the service:</p><ul class="list-disc pl-5 space-y-2"><li>Google (Firebase Auth, Firestore, Cloud Storage)</li><li>Cloudflare (Workers, asset hosting)</li><li>LiveKit (real-time audio infrastructure)</li><li>Vonage (telephony carrier)</li><li>The LLM provider you select per agent (Anthropic, OpenAI, or Groq) — your scripts and call context are sent to whichever you pick</li><li>The TTS provider you select per voice (ElevenLabs, Azure, or OpenAI)</li></ul><h2 class="text-xl font-semibold text-white mt-8">Your rights</h2><ul class="list-disc pl-5 space-y-2"><li>Export everything we have on you. Email us and we&#x27;ll send a JSON dump.</li><li>Delete your account and all associated data. Email us. Permanent deletion happens within 30 days, except for billing records which we keep for 7 years per US tax law.</li><li>Correct any inaccurate personal info via the Account page or by emailing us.</li><li>Opt out of any non-essential email — we don&#x27;t send marketing email today, but if we ever do, every message will have an unsubscribe link.</li></ul><h2 class="text-xl font-semibold text-white mt-8">Call recording and consent</h2><p>Call recording is opt-in per agent. If you enable recording, you are responsible for obtaining consent from anyone you call as required by the laws of your jurisdiction and theirs. Many US states (California, Florida, etc.) require two-party consent. We strongly recommend the agent&#x27;s first message disclose that the call may be recorded.</p><h2 class="text-xl font-semibold text-white mt-8">Security</h2><p>Authentication uses Firebase ID tokens verified server-side, plus an HMAC-signed session cookie. Webhooks (LiveKit, Stripe, our own cron) use signature verification. All transport is HTTPS; we don&#x27;t accept HTTP traffic in production. We&#x27;re not SOC 2 certified yet — that&#x27;s on the roadmap as we onboard larger customers.</p><h2 class="text-xl font-semibold text-white mt-8">Changes</h2><p>We may update this policy. Material changes will be announced via email to your account. The &quot;Last updated&quot; date at the top reflects the most recent revision.</p><h2 class="text-xl font-semibold text-white mt-8">Contact</h2><p><a class="text-violet-400" href="mailto:[email protected]">[email protected]</a></p></div></article><footer class="px-4 sm:px-6 py-10 border-t border-white/5"><div class="max-w-5xl mx-auto flex items-center justify-between gap-4 text-sm text-white/40"><span>Natter</span><div class="flex items-center gap-5"><a href="/" class="hover:text-white transition-colors">Home</a><a href="/pricing" class="hover:text-white transition-colors">Pricing</a><a href="/terms" class="hover:text-white transition-colors">Terms</a></div></div></footer></main><!--/$--><div class="fixed top-4 right-4 sm:top-6 sm:right-6 z-[100] flex flex-col gap-2 pointer-events-none"></div>
1<script class="$tsr" id="$tsr-stream-barrier">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-cpeTfycz.js","/assets/createLucideIcon-Dhh7sT2q.js","/assets/env-CTAFHPr9.js","/assets/utils-DSP8JqB2.js","/assets/src-UDphP4vk.js"],assets:$R[5]=[$R[6]={tag:"script",attrs:$R[7]={type:"module",async:!0},children:"import(\"/assets/index-cpeTfycz.js\")"}]},"/privacy":$R[8]={preloads:$R[9]=["/assets/privacy-nAiR_YUx.js","/assets/arrow-left-C7oBqFX2.js","/assets/phone-call-C-8O2gc3.js"]}}},matches:$R[10]=[$R[11]={i:"__root__�",u:1791014940347,s:"success",b:$R[12]={user:null},ssr:!0},$R[13]={i:"�privacy�privacy",u:1791014940347,s:"success",ssr:!0}],lastMatchId:"�privacy�privacy"})($R["tsr"]);$_TSR.e();document.currentScript.remove()</script>
1<script type="module" async="">import("/assets/index-cpeTfycz.js")</script>
1</body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.