Skip to content
Choose a language (English)
Sign up for the beta
Security and data

Your own dedicated instance and database, on servers in Switzerland

Every customer gets its own instance, database, file storage and address: no data is shared with other companies. Here you’ll find how people sign in, who sees what, and what happens to sensitive data: absences, attachments, WhatsApp messages, voice recordings.

A dedicated instance for every company

Every company that buys bagai has its own dedicated instance: its own database, file storage and address. No data is shared between instances.

  • Each company’s instance and database are hosted on GigaKube, Daiko Lab SA’s managed Kubernetes service in Switzerland.
  • The European Commission recognises Switzerland as a country with adequate data protection, and so does the United Kingdom: for an EU or UK company, keeping data here needs no additional contractual clauses.
  • Each instance lives in its own Kubernetes namespace.
  • Network rules (NetworkPolicy) decide who can talk to whom: applied and tested in the field.
  • Some optional features go through external services: push notifications through Google’s Firebase, calendars through Microsoft 365 and Google, WhatsApp, and the AI assistants each company connects. They start switched off and are turned on only where they’re needed.
  • Each instance has its own address, for example yourcompany.cust.bagai.ch, or your own domain: one you already have, connected through your DNS, or one we register for you.

How you sign in

There’s no self-service sign-up: access is by invitation only.

  • The administrator creates the person and an email invitation goes out; on accepting it, they choose a password.
  • Two-factor authentication (2FA) with an authenticator app (TOTP), with recovery codes for when your phone isn’t to hand.
  • Passkeys, on the web.
  • Password recovery and email verification.
  • In the apps (iPhone in beta in November, Android in beta in December, the others by the end of 2026): one token per device, sign-in with two-factor authentication (2FA), and a list of connected devices.

A deactivated account is locked out everywhere

When someone leaves the company, you deactivate their account and every way in is closed: password, two-factor authentication (2FA), passkeys, open sessions, app and AI assistant tokens.

  • Nobody can deactivate themselves.
  • The last administrator can’t be removed.
  • A deactivated person can be reactivated if needed.

Who sees what

Permissions sit on two independent axes: the level says how much of bagai a person administers, the department roles say what they see and do in everyday work.

  • The starting roles are Administration, Development, Technicians and Systems Engineers, and they can be edited on the Roles page.
  • A maintainer can’t grant roles with permissions they don’t have.
  • Visibility applies everywhere: lists, views, calendar, statistics, CSV, voice, activity log, AI assistants.
  • Roles can’t be managed by voice: a misheard sentence could grant permissions instead of just using them.
The levels
Level What they can do
Administrator everything, except deactivating themselves
Maintainer manages people and roles, within the permissions they have themselves
User works: can do whatever their roles allow
Some role permissions
Permission What it grants
Seeing tasks and projects all of them, or only your own: assigned, followed, or ones you manage or are a member of
Changing a task’s status separate from editing it: whoever does the work can move a task forward without being able to rewrite its details
Seeing time per person “how much has Mario worked”; time on a single task stays visible to anyone who can see the task
Opening colleagues’ timesheets read-only: nobody logs hours on someone else’s behalf
Deciding on absences approving or rejecting requests
Seeing attendance who’s absent, without the reason
Statistics and exports opening statistics, downloading CSV files
Connecting an AI assistant the ai.connect permission, which no role has to begin with

Absences are confidential

Sickness is health data, and bagai treats it that way.

  • The list of absences is personal.
  • People who only have permission to see attendance see “Absent”, without the type.
  • bagai never writes the type or reason for an absence to external calendars.
  • Emails about a request go to the person who has to approve it and the person who made it.

Attachments always through the application

Attachments are downloaded through bagai, which checks permissions every time. Never via a direct link to the file storage: a link like that would stay valid even after the permission had been removed.

  • No SVGs and no executables among the allowed file types.
  • People who can see a task can see its file names, but can only download the files if they have permission.

Push notifications that reveal as little as possible

Push notifications about absences, appointment reminders and WhatsApp suggestions carry as little content as possible.

  • They go through Firebase Cloud Messaging, Google’s notification service.
  • They’re off by default: bagai works just the same without them.

WhatsApp: work chats only, for 30 days

The WhatsApp integration reads only work chats, and deletes messages after 30 days.

  • It reads chats with colleagues (recognised by their number), chats with a WhatsApp Business label you’ve chosen, and chats with clients once you’ve confirmed them. Other chats are read only if you turn them on manually.
  • Nothing is kept from other chats.
  • Messages are encrypted and deleted after 30 days.
  • Nothing is saved in bagai without your “Accept”, and a suggestion expires after 7 days.
  • It’s experimental and off by default.

Voice recordings: a few days, then deleted

While we’re still fine-tuning voice commands, recordings are kept for a few days, only to understand why a command was misunderstood. Then they’re deleted automatically.

  • They aren’t attachments, they don’t appear on any page, and they can’t be played back from bagai.
  • If you use your phone’s own speech recognition and send bagai only the text, bagai keeps no recording.
  • If your staff use voice commands, let them know that the audio is kept for those few days.

AI assistants: a dedicated permission, automatic disconnection

An AI assistant gets into bagai only with a person’s consent, and with that person’s permissions.

  • It needs the ai.connect permission, which no role has to begin with.
  • The connection goes through OAuth consent: the assistant doesn’t see your password.
  • You see it and disconnect it under Settings → AI assistants, and after 90 days without use it disconnects itself.
  • What the assistant reads becomes part of your conversation with it and is processed by its provider: choose with that in mind.
  • Off by default.

Every change leaves a trace

The activity log shows who did what on tasks, comments, time and attachments, and when.

  • Comments can be edited and deleted only by whoever wrote them; administrators moderate.
  • Changes bagai makes on its own appear without a name: the system made them, not a person.
  • The data rules apply to everyone, administrators included: nobody can close a task that still has open work inside it.

Certifications

This page only covers what bagai actually does.

  • We don’t claim any certifications today. When we obtain any, they’ll be on this page.
  • Got a security question this page doesn’t answer? Get in touch.

Questions about your data? The most common answers are in the FAQ. For anything else, get in touch. Security and data questions · Get in touch