Skip to main content

Office 365 Integration: Technical details

Complete technical reference for the Office 365 integration, including all permissions Jiminny requests and what data it accesses

Written by James Graham
Updated over 2 weeks ago

How the Integration Works

Jiminny integrates with your Office 365 tenant using a delegated permissions model. This means Jiminny can only access data that the signed-in user could access themselves. It never receives elevated system-level or background permissions.

Key architecture points:

  • Jiminny is registered as a multi-tenant application in Microsoft Entra ID

  • Each user grants consent separately (or an admin grants consent on behalf of users)

  • Jiminny uses the Microsoft Graph API to access calendars, emails, and Teams

  • All connections are authenticated and require an active Office 365 user session or stored refresh token

  • For more details on how delegated permissions work, see the integration hub article



Permissions Reference

Below is the complete list of Microsoft Entra ID scopes Jiminny requests. Each permission serves a specific purpose.

Scope

Category

Type

Admin Consent Required?

What It Allows

Why Jiminny Needs It

openid

Authentication

Delegated

No

Verify user identity using OpenID Connect

Confirms the user's Microsoft Entra ID identity for secure authentication

email

Authentication

Delegated

No

Read user's email address

Uses email to uniquely identify and set up your user account in Jiminny

profile

Authentication

Delegated

No

Read user's basic profile data (name, picture, locale)

Displays user-friendly information in Jiminny (name, profile picture)

offline_access

Authentication

Delegated

No

Obtain refresh tokens for background access

Allows Jiminny to refresh access without requiring the user to log in repeatedly

Calendars.ReadWrite

Chat.Create

Delegated

No*

Read and update calendar events

Imports scheduled meetings relevant to deals; updates meeting details if using Explicit Consent Mode

OnlineMeetings.ReadWrite

ChatMessage.Send

Delegated

No

Create and read Teams online meetings

Imports Teams meeting details; creates meeting links if using Explicit Consent Mode (Notetaker joining calls)

Mail.Read

Email

Delegated

No*

Read email messages

Imports emails relevant to deals and contacts; enables Email Sync functionality (if enabled by admin)

Team.ReadBasic.All

Teams

Delegated

Yes

Read basic information about Teams and team members

Identifies Teams channels and team structure for sharing activity and insights

Channel.ReadBasic.All

Teams

Delegated

Yes

Read channel information in Teams

Enables sharing of call summaries and insights to specific Teams channels

ChannelMessage.Send

Teams

Delegated

Yes

Send messages to Teams channels

Allows users to post activity summaries and call insights directly to Teams channels

Chat.Create

Teams

Delegated

Yes

Create chat conversations

Enables Jiminny to create new chat conversations for sharing insights and updates

ChatMessage.Send

Teams

Delegated

Yes

Send messages in Teams chats

Allows users to share activity and insights with team members via Teams chat

*Microsoft is updating consent policies for Calendar and Mail scopes. Your tenant admin may be asked to grant consent; this is normal and reflects Microsoft's security policies.


Which Scopes Are Required?

Always required:

  • Authentication scopes (openid, email, profile, offline_access) -Required for every user to sign in to Jiminny

Feature-dependent (enabled by default):

  • Calendars.ReadWrite - Required to import meetings and build the deal activity timeline

  • OnlineMeetings.ReadWrite - Required if Notetaker is enabled (automatic meeting recording). Automatic recording can be turned off in Settings > Integrations; individual users can also disable calendar sync in their own profile settings

  • Mail.Read - Required to scan and import relevant emails (if Email Sync is enabled by your admin)

Optional (requested based on your organization settings):

  • Teams scopes (Team.ReadBasic.All, Channel.ReadBasic.All, ChannelMessage.Send, Chat.Create, ChatMessage.Send) -Requested only if your organization uses Teams and has enabled Teams sharing

Your Jiminny administrator controls which features are active and can adjust these settings. If you want to reduce the number of permissions requested, contact your Account Manager.


What Jiminny Does NOT Access

To reassure you about data security, here's what Jiminny never accesses:

  • OneDrive / SharePoint files - Jiminny cannot access document storage, file contents, or file metadata

  • Contacts or distribution lists - Jiminny only reads email sender/recipient addresses, not contact groups

  • Email modification - Jiminny cannot send, delete, modify, or forward emails; it only reads them

  • Attachment contents - Jiminny does not download or store file attachments from emails

  • Application-level permissions - Jiminny uses only delegated (user-level) permissions, not application-level credentials

  • Background access without sign-in - Jiminny requires a user to be signed in; it cannot run in the background indefinitely

  • Other users' data - Jiminny only accesses data belonging to the signed-in user (or collectively imported by administrators for designated users)


Data Processing

This section explains what happens when Jiminny connects to your Office 365 environment and how data is handled.

Initial Import

When you grant consent and connect your account, Jiminny begins an automated scan:

Emails:

  • Scans your mailbox for eligible emails back to the oldest open opportunity date in your CRM (minimum 1 week)

  • Applies intelligent filtering: only imports emails where the sender/recipient matches a CRM account or lead in your system

  • Uses email addresses as the matching key; if an email address cannot be matched to your CRM, the email is not imported and is discarded

  • Rejected emails are never stored in Jiminny systems

  • This scan respects your tenant's data residency policies

Calendars:

  • Scans your primary calendar for meetings scheduled in the next 12 months

  • By default, only imports meetings where at least one participant matches a CRM account or lead

  • If a user has enabled internal meeting import in their Jiminny settings, internal meetings are also imported regardless of CRM match

  • Does not import calendar invite responses or notes you've added to calendar items

Teams:

  • If Teams sharing is enabled, identifies Teams and channels available to the signed-in user

  • Does not automatically import Teams message history

Ongoing Sync

After the initial import:

  • Emails: Checked every 15 minutes for new messages matching your CRM

  • Calendars: Checked every hour for new or updated meetings

  • Teams: Channel availability updated as needed when sharing activity

CRM Matching Logic

Jiminny determines relevance by cross-referencing your CRM system:

  1. Extracts email addresses and participant names from Office 365 data

  2. Matches these against your CRM database (Salesforce, Pipedrive, HubSpot, etc.)

  3. Only data with a confirmed CRM match is imported

  4. Unmatched data is discarded and never stored in Jiminny

This approach ensures you see only business-relevant communications while protecting employee privacy by excluding personal emails and meetings.

Data Retention

Jiminny retains imported data according to your subscription and configuration:

  • Imported emails and calendar events are stored in Jiminny alongside call recordings and notes

  • You can export or delete specific conversations at any time from the Jiminny interface

  • When your subscription ends or a user is removed from Jiminny, their data is deleted according to your data deletion policy


After Connecting

Initial Sync Timeline

When you first grant consent:

  1. Immediate: Jiminny begins background scanning of your mailbox and calendar

  2. First 2-4 hours: Depending on mailbox size, initial import completes; you'll see emails and meetings in Jiminny

  3. Ongoing: New emails are synced every 15 minutes; calendar events every 1 hour

During the initial import, Jiminny may make multiple API calls to Microsoft Graph. Your Office 365 administrator will see legitimate API activity from the Jiminny application (see Application Details below).

Monitoring the Sync


Application Details

Jiminny Application ID (Client ID): 3bcad3f8-39bc-495b-b118-04d692e0bb31

This is Jiminny's official application identifier in Microsoft Entra ID. If your Office 365 administrator needs to verify or manage Jiminny's permissions, they can look up this ID in your tenant's app consent portal.


Enabling and Disabling Features

By default, Jiminny enables calendar import and Notetaker. If your team doesn't use these features:

  • To disable Notetaker (automatic meeting recording): Turn off automatic recording in Settings > Integrations. Individual users can also disable calendar sync in their own profile settings.

  • To enable or disable Teams sharing: Managed in Jiminny > Settings > Integrations


Getting Started

For step-by-step instructions on granting consent and connecting your Office 365 account to Jiminny, see Grant Consent for Office 365 Integration with Jiminny.

If you encounter issues during setup or need to troubleshoot an existing connection, see Not Able to Login with Microsoft Office 365.


​

Did this answer your question?