enterprise-ai-platform is a secure, private, enterprise-grade AI platform for internal employees of a Microsoft 365 organisation. It is powered by OpenAI's API, deployed and integrated with Microsoft Azure and Microsoft Entra ID single sign-on (SSO), and delivered as a private, ChatGPT-style application rather than a basic chatbot. The platform provides advanced document analysis, summarization and drafting, separate departmental workspaces governed by role-based access controls, strict data confidentiality including Zero Data Retention (ZDR) subject to provider approval and technical availability, and AI usage cost tracking by department, user and project. It must be scalable, production-ready, and able to evolve with the latest AI models, and it must be designed for future integrations with third-party applications.
The audience is the organisation's internal workforce: everyday employees who need private AI assistance on their own work, department administrators / workspace owners who keep departmental content correctly scoped, and platform administrators who keep the platform secure, auditable, cost-visible and current with newer models.
The platform is a first-party web application with a shared backend that brokers all AI work through OpenAI's API. Access is gated by Microsoft Entra ID SSO: anonymous visitors see a public Landing page and a Login page, and every protected surface (Chat, Documents, Workspaces, Workspace Members, Admin Settings, Security Logs, AI Spending) requires an authenticated Entra ID identity. Departmental separation is enforced through workspace membership and role assignment; platform administration is a distinct role that unlocks administrative controls, security logs and spending dashboards.
Current accepted behaviour:
Removed from scope
The product is a private, internal-employee-facing application. It is not a public chatbot and not a consumer AI product. All AI capability is delivered through the platform's own interface and its backend, which calls OpenAI's API; the platform owns the employee experience, the departmental boundaries, the retention configuration and the cost accounting.
Identity is owned by Microsoft Entra ID. The platform does not maintain its own passwords or account-creation flow: anonymous visitors reach Landing and Login, and Entra ID SSO establishes the employee's identity and returns them to the platform. Returning employees are verified by the corporate identity provider. Departmental access is then governed by workspace membership and role assignment, and platform administration by the platform administrator role.
Zero Data Retention is a current commitment but is explicitly conditional on provider approval and technical availability. The platform must therefore represent ZDR truthfully — as an active retention state where approved and available, and as a clearly labelled non-ZDR state where it is not — rather than claiming ZDR unconditionally.
Future third-party application integrations are a design horizon only. No third-party integration surface, connector, or marketplace is built in the current scope; the platform is merely structured so such integrations can be added later.
FR-1 — Private ChatGPT-style AI application (explicit) As an Employee (internal AI user), I should hold a private, ChatGPT-style conversation with AI powered by OpenAI's API, so that I get useful assistance on my own work inside the company's private platform.
FR-2 — Durable conversation history and model selection (required_inference) As an Employee (internal AI user), I should see my prior conversations and choose among the available AI models, so that I can resume work and use the model appropriate to my task.
FR-3 — Microsoft Entra ID SSO (explicit) As an Employee (internal AI user), I should sign in with my corporate Microsoft Entra ID account, so that access to the platform is controlled by the organisation's identity provider.
FR-4 — Microsoft Azure deployment and integration (explicit) As a Platform administrator, I should have the platform deployed and integrated with Microsoft Azure and Entra ID, so that the platform runs inside the organisation's cloud and identity boundary.
FR-5 — Zero Data Retention, subject to provider approval and technical availability (explicit) As a Platform administrator, I should have Zero Data Retention implemented subject to provider approval and technical availability, so that AI requests are not retained by the provider where that is approved and technically available.
FR-6 — Secure document upload (explicit) As an Employee (internal AI user), I should upload documents securely, so that I can work with my own material inside the platform.
FR-7 — Document analysis (explicit) As an Employee (internal AI user), I should request AI analysis of an uploaded document, so that I understand its content.
FR-8 — Document summarization (explicit) As an Employee (internal AI user), I should request an AI summary of an uploaded document, so that I can grasp it quickly.
FR-9 — Document drafting (explicit) As an Employee (internal AI user), I should request an AI draft grounded in an uploaded document, so that I can produce new content from it.
FR-10 — Separate departmental workspaces (explicit) As an Employee (internal AI user), I should work inside my department's workspace, so that my departmental content stays separate from other departments.
FR-11 — Role-based access controls (explicit) As a Department administrator / workspace owner, I should have role-based access controls govern my departmental workspace, so that only authorized colleagues reach the workspace's material.
FR-12 — Departmental membership and role management (required_inference) As a Department administrator / workspace owner, I should add members to my workspace and assign or change their roles, so that departmental content is correctly scoped to the right colleagues.
FR-13 — AI spending dashboards by department, user and project (explicit) As a Platform administrator, I should see AI spending broken down by department, by user and by project, so that I can track and govern AI cost.
FR-14 — Multiple AI models and seamless upgrades (explicit) As a Platform administrator, I should manage the available AI models and their versions, so that the platform can adopt newer models as they become available.
FR-15 — Administrative controls (explicit) As a Platform administrator, I should configure administrative controls, so that the platform's operation is governed centrally.
FR-16 — Security logging (explicit) As a Platform administrator, I should review security logs of platform activity, so that the platform stays auditable.
FR-17 — Configurable retention policies (explicit) As a Platform administrator, I should configure retention policies, so that data retention matches the organisation's requirements.
FR-18 — Platform administrator role gate (required_inference) As a Platform administrator, I should have administrative controls, security logs and spending dashboards gated to my role, so that only authorized administrators reach them.
FR-19 — Future third-party integrations (design only) (explicit) As a Platform administrator, I should have the platform designed for future integrations with third-party applications, so that integrations can be added later without re-architecting.
FR-20 — Enterprise-grade, scalable, production-ready posture (explicit) As a Platform administrator, I should operate an enterprise-grade, scalable, production-ready platform that evolves with the latest AI models, so that it is not a basic chatbot and can grow with the organisation.
Muse: Erik Spiekermann — typography as public infrastructure: wayfinding clarity, signal colours used like transit lines, warm neutrals inside strict columns. The register is trust, containment and legible order: a system you can see the seams of, not a friendly chatbot or a sci-fi console.
Headline: "Private AI, on the record."
Colour tokens (light mode):
| Role | Hex | Usage |
|---|---|---|
| Background | #F4F1EA | Warm paper ground, ~70% of surface |
| Surface | #FFFFFF | Cards and panels, ~20% |
| Text (ink) | #1C1B18 | All body and headings |
| Primary (signal red) | #C8362B | Active line, sign-in action, one rule per section — never a flood |
| Accent (signal yellow) | #E8B21C | Data and status: cost bars, model tags, retention states |
| Muted | #6F6A60 | Secondary labels and metadata |
| Transit green | #2E6B4F | Department/workspace line code, small size only |
| Transit blue | #2B5C8A | Department/workspace line code, small size only |
Typography: One family throughout — Fira Sans. Headings 600–700, reading copy 400. Flush-left, ragged-right, tight -0.01em tracking. Sentence case for headlines; small-caps (letter-spacing: 0.08em) for section labels and data column headers. Tabular numerals. Hierarchy carried by weight, size and rules rather than a second typeface.
Type scale (1.333 modular): 72 / 54 / 40 / 30 / 22 / 17 / 15 / 13. Display 40px mobile → 72px desktop via clamp(); section heads 30 → 40; body 17px with 1.55 line-height; labels 13px small caps.
Shape language: Functional rectangles — 4px radii on controls, 2px on cards. 1px hairline rules everywhere; 2px rules open major sections. Numbered section markers; pictogram-adjacent icon set in 1.5px stroke. No blobs, no soft shadows — depth comes from ruled panels and a single offset border on the sign-in card.
Layout: 12-column grid with a visible 1px column guide on the landing hero only. Outer margins 64–96px desktop, 20px mobile. Numbered sections (01 Platform, 02 Confidentiality, 03 Departments, 04 Cost). Data arranged as aligned label/value rows and ruled tables, never as a grid of identical cards. Navigation is a horizontal transit line: a thin rule across the top with station dots for each section, current position filled in signal red.
Imagery: Diagrammatic, not photographic — schematic line drawings of the request path (Entra ID → gateway → model → zero-retention boundary), pictogram sets for documents, workspaces and cost, and a ruled "system map" panel. Department colour codes used as line segments. No stock people, no 3D renders, no gradient artwork.
Accessibility: Readable text and controls stay whole at 375px, 768px and 1280px, wrapping or scaling to fit; imagery and decoration may bleed off edges but never cover readable text or controls.
The public entry is a left-weighted editorial hero on the warm paper ground. A small-caps kicker reads INTERNAL PLATFORM · ENTRA ID REQUIRED above a 9-column stacked Fira Sans headline at 72px desktop / 40px mobile — "Private AI, on the record." — flush-left. To the right, a ruled white "system map" panel occupies the right five columns and bleeds off the right edge: a vertical schematic of Entra ID SSO → departmental workspace → model gateway → ZDR boundary, drawn in 1.5px ink strokes with signal-red connectors and one yellow status dot. Beneath the headline, a single row of three aligned label/value facts separated by vertical hairlines — Data retention: zero · Access: role-based · Models: versioned — and one signal-red sign-in button. No centred stack, no gradient, no floating cards.
The signature moves carry through the product: transit-line navigation with station dots that fill signal red as the active section; numbered section openers (01–04) in small-caps with a 2px full-bleed rule above; the ruled system-map schematic as the platform's visual signature; cost dashboards rendered as ruled label/value rows with tabular numerals and thin yellow horizontal bars; and department colour coding as a wayfinding device — each workspace carries a small coloured line segment and code (FIN, LEG, ENG) used consistently in chips, tables and logs.
Interaction Model: Animated Motion Tempo: restrained Hero Dimensionality: flat
Landing Hero Motion Brief

INTERNAL PLATFORM · ENTRA ID REQUIRED
A private, internal enterprise AI platform for our Microsoft 365 organisation — for everyday employees, department administrators and platform administrators. It brings ChatGPT-style assistance, document analysis, departmental workspaces and cost visibility together behind one boundary. Entra ID sign-in is required.
Corporate identity establishes every employee before any request is accepted.
Role-based membership scopes content to the department it belongs to.
FINLEGENGRequests are routed through the platform to OpenAI’s API, with model and version recorded.
Retention policy applied at the provider boundary, where approved and available.
ZDR · subject to provider approval01Platform
Private, ChatGPT-style conversationA private conversation workspace for internal employees, with durable conversation history so earlier exchanges can be reopened and continued.
Secure document upload and analysisDocuments are uploaded into the platform for analysis, summarization and drafting grounded in the uploaded material.
Multiple versioned modelsA model selection is held with each conversation, and the platform is built to adopt newer models as they become available.
A private, internal enterprise AI platform for Microsoft 365 organisations. It serves internal employees, department administrators and platform administrators — and every protected surface requires Entra ID sign-in.
Access begins with your corporate Microsoft Entra ID account. The platform does not keep its own passwords or account-creation flow; the identity provider establishes who you are each time you sign in.
Each departmental workspace is a separate boundary. Membership decides which workspaces you can enter; your assigned role decides what you can do inside one. Workspace owners manage their department’s membership and roles.
Zero Data Retention (ZDR) is part of the platform’s design, subject to OpenAI provider approval and technical availability. Where those conditions are not met, the platform states the actual retention state rather than claiming ZDR.
Retention policies are configurable by administrators, so the stated state reflects the deployment you are actually using.
03 Departments
Each department works in its own workspace, with access governed by role-based controls. Every workspace carries the same colour line segment and code wherever it appears.
A separate Finance workspace holds that department’s conversations and documents, scoped so only assigned Finance members reach them.
Role-based
Legal keeps its own workspace and membership, with access granted through assigned roles rather than shared credentials.
Role-based
Engineering works inside its departmental workspace, in line with the same access rules applied across every department.
Role-based
04Cost
Cost visibility breaks usage down by department, user and project, so the organisation can see where its private AI capacity is being consumed and plan against it. The panel below shows the ruled label/value format the AI spending dashboard uses.
Cost visibility is a platform administrator capability. Spending views are available to platform administrators, not to every employee.

INTERNAL PLATFORM · ENTRA ID REQUIRED
A private, internal enterprise AI platform for our Microsoft 365 organisation — for everyday employees, department administrators and platform administrators. It brings ChatGPT-style assistance, document analysis, departmental workspaces and cost visibility together behind one boundary. Entra ID sign-in is required.
Corporate identity establishes every employee before any request is accepted.
Role-based membership scopes content to the department it belongs to.
FINLEGENGRequests are routed through the platform to OpenAI’s API, with model and version recorded.
Retention policy applied at the provider boundary, where approved and available.
ZDR · subject to provider approval01Platform
Private, ChatGPT-style conversationA private conversation workspace for internal employees, with durable conversation history so earlier exchanges can be reopened and continued.
Secure document upload and analysisDocuments are uploaded into the platform for analysis, summarization and drafting grounded in the uploaded material.
Multiple versioned modelsA model selection is held with each conversation, and the platform is built to adopt newer models as they become available.
A private, internal enterprise AI platform for Microsoft 365 organisations. It serves internal employees, department administrators and platform administrators — and every protected surface requires Entra ID sign-in.
Access begins with your corporate Microsoft Entra ID account. The platform does not keep its own passwords or account-creation flow; the identity provider establishes who you are each time you sign in.
Each departmental workspace is a separate boundary. Membership decides which workspaces you can enter; your assigned role decides what you can do inside one. Workspace owners manage their department’s membership and roles.
Zero Data Retention (ZDR) is part of the platform’s design, subject to OpenAI provider approval and technical availability. Where those conditions are not met, the platform states the actual retention state rather than claiming ZDR.
Retention policies are configurable by administrators, so the stated state reflects the deployment you are actually using.
03 Departments
Each department works in its own workspace, with access governed by role-based controls. Every workspace carries the same colour line segment and code wherever it appears.
A separate Finance workspace holds that department’s conversations and documents, scoped so only assigned Finance members reach them.
Role-based
Legal keeps its own workspace and membership, with access granted through assigned roles rather than shared credentials.
Role-based
Engineering works inside its departmental workspace, in line with the same access rules applied across every department.
Role-based
04Cost
Cost visibility breaks usage down by department, user and project, so the organisation can see where its private AI capacity is being consumed and plan against it. The panel below shows the ruled label/value format the AI spending dashboard uses.
Cost visibility is a platform administrator capability. Spending views are available to platform administrators, not to every employee.
No comments yet. Be the first!