Skip to content
An abstract network of glowing nodes joined by lines — a graph as a permission model.

“A permission is a path through a graph, not a chain of joins.”

A meetings platform with permissions as a graph

What remains of a meeting is a record, not just a call: who attended, what was said, which documents were in play and who was allowed to see them. A white-label platform for healthcare and finance — the product was sold.

Get in touch
Graph, media, files · 2023, 8 months · team of 5
4
permission types per document, as graph edges
Realtime
transcription with speaker separation
Sold
product acquired by a buyer
Summary

A white-label meetings platform for healthcare and finance, under HIPAA. What remains of a meeting is not just a call but a record: who attended, what was said, which documents were in play and who was allowed to see them.

Permissions are modeled as a graph in Neo4j, not as a chain of joins. The question "may this person see this document" is answered immediately, however many relationships stand between them — and the document is not subordinate to the meeting: it can belong to several meetings and carry its own version history.

A file can be attached while the meeting is running and immediately gets the right permissions for everyone present. A patient joins as a guest, without opening an account, which is what HIPAA asks for. Transcription runs in real time, so the record is finished when the meeting is. The product was sold.

The problem

In healthcare and finance a meeting is not just a call — recordings, transcripts, documents and signatures travel with it, and each artifact has its own audience. "May this person download this file" depends on the chain of participation, the document's link to the meeting, its version and signatures.

The constraint

A document can belong to several meetings and carries its own version history — so it can't be subordinate to a meeting; it stands alone. In a relational schema such rules mean recursive joins that don't scale. Plus HIPAA: a patient shouldn't need an account to attend a consultation.

What we did

  1. Permissions as a graph — our architectural decision

    People, meetings, files and signatures are nodes; read, write, download and delete are edges. An access question is a path through the graph, answered in one traversal.

    4 permission types per document
  2. A document stands alone, not under a meeting

    Versioning and membership in multiple meetings; attachable while a meeting runs, with correct permissions for everyone present. DocuSign signing; HIPAA guest access with no account.

    Guests join without an account
  3. The record is done when the meeting is

    Real-time transcription through AWS Transcribe with speaker separation — the transcript feeds the next meeting’s agenda. Recording and post-processing were our part.

    Real-time transcription
WHO MAY SEE WHAT — IN A REGULATED DOMAIN
People and meetings nodes in the graph

A meeting carries participants, recordings, transcripts and documents — and each artifact has its own audience. Guest access for patients: attend a consultation without creating an account (HIPAA).

Answeredinstantly — no matter how many links stand between person and document

The result

The record is done when the meeting is. New sharing rules became new edges in the graph, not new join tables — the permission model grew with the product. The product was sold.
For context

When an access right cannot be checked at the moment it matters, a meeting stops being evidence and becomes a liability. In healthcare and finance, a record that cannot be attributed to a named person is worth nothing — however many recordings were kept.

What we’d do differently

We would write down the boundary at the media layer. Video ran on an existing server, while recording and post-processing were our part — that line was clear in practice but documented nowhere.

We would test permissions at graph depth from the start. A graph answers the question elegantly at five relationships; only at fifteen do you learn whether the model is good or merely fast.

Related
Identity verification for German financeThe same demand on the record, another regulation: German finance.Document issuance without a networkSensitive data with a clear access boundary.
All 18 case studies
  • Neo4j
  • WebRTC
  • AWS Transcribe
  • AWS
  • DocuSign
  • Realtime

Are your permissions getting out of hand?

Get in touch

Systems that can’t stop — from architecture to production.

© 2026 Micro Tech, Sarajevo