Trial: role-play or made-up visits only.

Real patients →
SottoMD

Privacy in the trial

This is a trial for role-play and made-up patients. No BAA is in place with anyone for it, so please don’t enter real patient information. For real patients, we set your practice up in a confidential enclave with a BAA: tell us about your practice.

With real patients and a BAA: the AI model runs in sealed hardware, checked on every request, and speech is handled by a named provider bound by our BAA (AssemblyAI).

In this trial: the same providers, but none of them is bound by a BAA yet.

Speech is off right now: our AssemblyAI account isn’t set up yet, so no audio goes anywhere. The AssemblyAI row below describes how it runs once it’s on.

Who handles trial data

  • Decosa (us)

    What it does
    Runs the Sotto app and its engine on our own server
    What it gets
    The transcript, note, codes, forms and drafts
    Sealed hardware
    No
    What's kept
    Guest visits: 24 hours. Signed-up trial: your retention setting (30 days unless you change it)
    BAA
    Not for this trial
  • Phala

    What it does
    The language model (Qwen3.8-27B)
    What it gets
    Transcript text, to write the note and suggestions
    Sealed hardware
    Yes: attested on every request
    What's kept
    Not kept
    BAA
    Not signed for this trial
  • AssemblyAI

    What it does
    Speech to text, and who said what
    What it gets
    The visit audio, as it streams
    Sealed hardware
    No
    What's kept
    Not kept (model training turned off)
    BAA
    Not signed for this trial
  • Cloudflare

    What it does
    Carries the connection to our server
    What it gets
    The traffic between you and us; its edge decrypts it to route it
    Sealed hardware
    No
    What's kept
    Connection logs, not content
    BAA
    Not signed for this trial
  • SendGrid

    What it does
    Sign-in emails
    What it gets
    Your email address
    Sealed hardware
    No
    What's kept
    Delivery logs
    BAA
    Not needed: no patient data

The Send to chart step in the trial goes to a mock DrChrono we run ourselves. It is not DrChrono, and nothing reaches a real chart.

In more detail

Decosa (us)

  • Decosa is the company that makes Sotto. In the trial our server is an ordinary server, not a confidential enclave. Sealing the whole visit inside one is what the enclave with a BAA is for.
  • Visit content is stored encrypted under a key of your practice's own. “Patient opted out” deletes a visit at any time.

Phala

  • Phala's gateway and the model run in sealed hardware (Intel TDX, with NVIDIA confidential computing on the GPU). Before every call our server checks Phala's hardware attestation, connects only to the key that attestation names, and routes only to Phala's own attested model servers, asking for zero data retention.
  • Every answer comes with a receipt signed inside the enclave, which our server checks before using the answer. If any check fails, nothing is sent.
  • Phala's terms say prompts to models in this mode aren't collected or kept. Phala (Hashforest Technology LLC) offers a BAA on request.

AssemblyAI

  • AssemblyAI's servers hear the audio while they transcribe it. We use its US endpoint.
  • The setting it runs with: AssemblyAI's model-training opt-out on. AssemblyAI says that with it on, it keeps no audio or transcripts from streaming. It keeps billing and logging details, such as how long a session lasted.
  • AssemblyAI offers a self-serve BAA on paid accounts.

Cloudflare

  • Your browser's secure connection ends at Cloudflare's edge, which then carries the traffic to our server through an encrypted tunnel. So the visit's audio and text pass through Cloudflare's network in the clear at its edge. We don't store anything with Cloudflare.
  • Cloudflare's edge also tries to add its own web-analytics script to our pages. Our pages block it, so it doesn't run.

SendGrid

  • Only your email address and the six-digit code. Never anything from a visit.

What we keep, and what we don’t

  • Audio: never. It streams from your mic through our server to AssemblyAI and is dropped. Our server holds it in memory only while the visit runs, plus a few minutes for the after-visit speaker pass.
  • An audit log of what happened (sign-ins, consent, visits started and saved, the trial’s tick box), without visit content.
  • Usage counts for the trial’s daily limits (120 minutes of speech a day for everyone together), and your connection’s address for rate limits.