An internal AI service for a healthcare company: it answers policy questions with sources, turns incoming documents into validated data and triages tickets from Jira to Microsoft Teams. Personal data is removed before any model call, and a human reviews everything sensitive.
Each one runs as an API, in the web interface and through integrations.
Answers questions about internal policies with the exact source, or says honestly that the documents do not cover it.
Classifies emails, invoices, doctor applications and GDPR requests and extracts validated fields. Legal deadlines are computed in code.
Jira webhook in, category, priority, team and a cited reply draft out, posted to Microsoft Teams. Sensitive tickets go to a person.
gpt-4o-mini on small, self-made labelled sets (see the README for the caveats and the first-run results).



| Concern | What the service does |
|---|---|
| Patient data | Pseudonymises emails, phone numbers, IBANs, insurance numbers, birth dates and names before any model call; logs never contain document text; can run on a self-hosted model (Ollama) |
| Human oversight | Review queue for low confidence, failed validation, GDPR requests and security tickets; approve, correct or reject; full audit trail |
| Access and secrets | Role-based API keys stored as hashes, HMAC-signed webhooks with deduplication, secrets only from the environment |
| Integrations | Jira, Microsoft Teams, Confluence, SharePoint (Graph), Nextcloud (WebDAV), plus an n8n low-code workflow |
| Operations | JSON logs with request IDs, Prometheus metrics, health and readiness checks, Docker, CI with lint, security rules, 23 tests and a Docker build |
Connectors are tested against mocked API responses, not against a live company tenant. YourDoctor Health and all data in the project are fictional.