For more details, visit the 👉 Teamflect Trust Center. You can explore our security practices, compliance certifications, and data handling policies in depth.
Teamflect integrates deeply with Microsoft 365 to provide a connected and seamless experience for its users. This integration is made possible through the Microsoft Graph API, which enables secure access to essential data and services across the Microsoft ecosystem.
When your organization installs Teamflect, Microsoft asks an administrator—or, in some cases, an end user—to grant Microsoft Graph permissions.
These permissions allow Teamflect to integrate securely with Microsoft 365 services such as Microsoft Teams, Outlook, Microsoft Entra ID, and Microsoft To Do.
This article explains:
Why Teamflect requests each permission
Whether it's required or optional
Whether it's a Delegated or Application permission
Which Teamflect features depend on it
What happens if you choose not to grant it
Teamflect follows Microsoft's principle of least privilege, requesting only the permissions required for the features your organization chooses to use.
What is Microsoft Graph API?
The Microsoft Graph API is a unified endpoint provided by Microsoft that allows developers to access programmatically:
Outlook
Teams
SharePoint
Calendars
Users and Groups
And more
It is crucial in enabling secure data exchange between third-party applications and Microsoft 365 services.
Understanding Microsoft's Permission Models
Microsoft Graph supports two permission models.
1. Delegated Permissions
Delegated permissions allow Teamflect to act on behalf of the currently signed-in user.
This means:
the user must be signed in
Teamflect can only access information that the signed-in user is already allowed to access
access ends when the user's session ends
These permissions are typically used for user-specific experiences such as:
signing into Teamflect
reading your own calendar
accessing your Microsoft To Do tasks
2. Application Permissions
Application permissions allow Teamflect to perform background or organization-wide operations without requiring an individual user to be signed in.
These permissions are used for administrative capabilities such as:
synchronizing your organizational directory
maintaining reporting lines and organizational structure
deploying reviews, surveys, and other workflows across the organization
background synchronization jobs
These capabilities cannot be implemented using delegated permissions because Microsoft only exposes these APIs through application permissions. Administrator consent is therefore required.
Why Doesn't Teamflect Use Delegated Permissions for Everything?
This is one of the most common questions we receive from IT and security teams.
Whenever Microsoft allows a feature to operate using delegated permissions, Teamflect uses delegated permissions.
However, some Microsoft Graph APIs are only available through application permissions because they perform organization-wide operations that cannot depend on a particular user being signed in.
For example:
Scenario | Delegated | Application |
User signs into Teamflect | ✅ | ❌ |
Read your own Outlook calendar | ✅ | ❌ |
Read Microsoft To Do tasks | ✅ | ❌ |
Synchronize your organization's directory | ❌ | ✅ |
Build organization charts | ❌ | ✅ |
Background synchronization | ❌ | ✅ |
Bulk review, survey, feedback deployment | ❌ | ✅ |
This follows Microsoft's recommended security model and principle of least privilege.
Why Graph API Permissions Matter
Third-party applications like Teamflect require specific Graph API permissions to:
Securely access and retrieve data
Ensure only authorized access to Microsoft 365 content
Provide key functionalities such as calendar sync, user management, task tracking, and organizational insights
Why does Teamflect require Application Permissions?
Microsoft Graph supports two permission models:
Delegated permissions – Teamflect acts on behalf of the currently signed-in user and can only access data that user is already permitted to access.
Application permissions – Teamflect can perform background or organization-wide operations without requiring an individual user to be signed in.
Teamflect follows Microsoft's principle of least privilege and uses delegated permissions whenever a feature can operate in the context of the signed-in user. However, some Microsoft Graph APIs are only available through application permissions.
Application permissions are required for features such as:
Automatic directory synchronization
Organization-wide user and manager synchronization
Background synchronization jobs
Tenant-wide administrative operations
These capabilities cannot reliably operate using delegated permissions because they must continue running even when no administrator is signed in.
For more information, see Microsoft's documentation on the difference between delegated and application permissions here.
Before We Start
When your organization installs Teamflect, Microsoft asks you to approve a set of permissions. This is completely standard for any app that works inside Microsoft Teams and Outlook.
This guide explains each permission in everyday language, so your IT team and end-users know exactly what they’re agreeing to.
Required permissions are needed for Teamflect to function at all. Optional permissions unlock specific features — if you skip them, everything else still works normally.
Core Permissions (Required)
These are the basics Teamflect needs to know: who you are, who’s in your organization, and how to show people inside the app.
Permission | Type | Required | What It Enables | If Not Granted |
User.Read | Delegated | Yes | Reads your name, email, and profile photo so Teamflect can identify you when you sign in. | Teamflect cannot load at all — it won’t know who you are. |
User.ReadBasic.All | Delegated | Yes | Lets you see other people’s names and profile cards inside Teamflect (e.g. when giving feedback or setting goals for your team). | You’d only see your own profile. You couldn’t search for or interact with colleagues. |
⚠️ None of these permissions let Teamflect read your emails, chats, or files. They only cover profile information and availability status.
Calendar & Tasks (Optional)
These permissions connect Teamflect to your calendar and Microsoft To Do. They’re off by default and only activate when your admin enables the related feature.
Permission | Type | Required | What It Enables | If Not Granted |
Calendars.Read | Delegated | No | Reads your calendar events so Teamflect can display 1-on-1 and team meetings inside the app. Read-only — Teamflect cannot create, edit, or delete events. | The 1-on-1 Meetings module won’t show calendar-based meetings. You can still create meetings manually inside Teamflect. |
Tasks.ReadWrite | Delegated | No | Connects to Microsoft To Do so you can view and manage tasks directly inside Teamflect. | The To Do integration won’t appear. You can still use Teamflect’s built-in task management. |
Here's a quick video outlining the steps for end-users to grant Teamflect access to their calendar later on:
Organization Directory (Optional)
This permission gives Teamflect a read-only view of your org chart data.
Permission | Type | Required | What It Enables | If Not Granted |
Directory.Read.All | Application | No | Reads department names, manager relationships, and team structures from your Microsoft directory. Read-only — Teamflect cannot modify anything. | Teamflect won’t automatically know reporting lines, departments, or teams. Your admin would need to configure this information manually. |
People.Read | Delegated | No | Pulls in your most-relevant contacts (the people you email or meet with often) so Teamflect can suggest them first. | Contact suggestions won’t appear. You’d need to search for people manually every time. |
Presence.Read.All | Delegated | No | Shows real-time availability dots (green = available, yellow = away, red = busy) next to people’s names. | No availability indicators. You won’t know if someone is free before reaching out. |
File Permissions (Optional)
These permissions are only relevant if your organization uses Excel-based goal tracking — for example, linking a goal’s progress to a value in a shared spreadsheet.
Permission | Type | Required | What It Enables | If Not Granted |
Files.Read | Delegated | No | Reads files that you personally have access to (your OneDrive, files shared with you). Used for linking a goal to an Excel file you own or have been shared. | You won’t be able to connect Excel files to goals for automated progress tracking. |
Files.Read.All | Application | No | Reads files across the organization, including SharePoint and other users’ OneDrive. Only needed if goals are linked to shared Excel files that the user doesn’t individually have access to. | Same as above, but specifically for organization-wide shared files. Most teams only need Files.Read. |
Both permissions are read-only. Teamflect cannot edit, delete, or create files. If you don’t use Excel-based goal tracking, you can safely skip both.
Tip: Start with Files.Read (personal files only). Only upgrade to Files.Read.All if you specifically need organization-wide shared Excel connections.
Power BI Permissions (Optional)
These permissions are only needed if your organization wants to pull live KPIs and metrics from Power BI Scorecards into Teamflect goals.
Permission | Type | Required | What It Enables | If Not Granted |
Dataset.Read.All | Application | No | Reads Power BI datasets so Teamflect can pull live metrics (e.g., revenue, NPS) directly into goal progress tracking. | You won’t be able to connect Power BI data to Teamflect goals. Manual progress updates would still work. |
Workspace.Read.All | Application | No | Reads the list of Power BI workspaces so Teamflect knows which datasets are available to connect. | Teamflect won’t be able to browse your Power BI workspaces. Always used together with Dataset.Read.All. |
Both are read-only and always used together. If you don’t use Power BI, skip both.
Quick Summary
Here’s the short version:
What Teamflect CAN See | What Teamflect CANNOT Do |
✓ Your name, email, and profile photo ✓ Names and profiles of colleagues ✓ Your availability status ✓ Calendar events (if enabled) ✓ Org chart / reporting lines (if enabled) ✓ Excel file data for goals (if enabled) ✓ Power BI metrics (if enabled) | ✗ Read your emails or chat messages ✗ Edit or delete your files ✗ Create, edit, or cancel calendar events ✗ Access passwords or security settings ✗ Modify your directory or org chart ✗ Share your data with third parties |
Removing Permissions
If your organization decides it no longer needs a specific optional permission, your IT administrator can remove it at any time through Microsoft Entra ID (formerly Azure AD). Only the related feature will stop working — everything else continues normally.
Please take a look at this article to learn more about how to remove specific Graph API permissions in Entra ID.
Data Privacy & Security Commitment
Teamflect takes data privacy seriously and adheres to the following principles:
No Teamflect employee or third party has standing access to customer data
All requested permissions serve only the purpose of powering the core functionality
Data is securely stored, processed, and handled in compliance with industry standards
Compliance with GDPR and Other Regulations
Teamflect is fully GDPR compliant, aligning with global privacy laws and frameworks. We:
Limit data access to only what’s required
Encrypt data during transmission and at rest
Enable users to access, update, or delete their data at any time
Non-compliance with GDPR carries severe penalties - this ensures that Teamflect remains vigilant and transparent in how it handles data.
Frequently Asked Questions
Does Teamflect need application permissions?
Only for features that Microsoft requires to run using application permissions, such as directory synchronization and other tenant-wide administrative capabilities.
Can we use Teamflect without admin consent?
Yes. Core Teamflect functionality works without tenant-wide admin consent. Features that depend on organization-wide Microsoft Graph permissions—such as automatic directory synchronization, calendar integration, and certain administrative automations—remain unavailable until administrator consent is granted.
Can our administrator revoke permissions later?
Yes. Permissions can be reviewed, modified, or revoked at any time through Microsoft Entra ID. If a permission is removed, only the related Teamflect functionality is affected.
Does Teamflect access our emails or chats?
No. Teamflect does not request permissions to read emails or Microsoft Teams chats and cannot access them.
Does Teamflect follow Microsoft's least-privilege guidance?
Yes. Teamflect requests delegated permissions whenever Microsoft supports them and only requests application permissions when Microsoft's APIs require app-only access for the relevant functionality.
Teamflect Trust Center
For more details, visit the 👉 Teamflect Trust Center. You can explore our security practices, compliance certifications, and data handling policies in depth.
Use Cases
Seamless 1:1 Meeting Management
With Calendars.Read, Teamflect automatically pulls in your Outlook meetings so managers and employees can prepare agendas, take shared notes, and track action items—all in one place.Connected Goals & OKRs
With Files.Read or Files.Read.All, you can link goals directly to Excel sheets in OneDrive or SharePoint for automated progress tracking, ensuring real-time alignment across teams.Smarter Collaboration & Feedback
With People.Read and Directory.Read.All, Teamflect builds org charts and recommends feedback providers, making it easier to recognize, review, and coach the right people across your organization.

