The MS Teams connector allows Simpplr Enterprise Search to index MS Teams content including Channel Messages that users have access to, making it easily discoverable and searchable directly within Simpplr.
With this connector, you can:
Bring MS Teams content into Simpplr Enterprise Search so users can find Channel Messages, and Attachments alongside intranet content in one place.
Use advanced features like autocomplete, hybrid ranking, and Smart Answers on top of MS Teams content.
Indexed content from Simpplr Enterprise Search is available in:
In main search listing
Smart answers
Content types | Channel Messages |
Metadata | Title, URL/ link, Created time and last modified time, Description, Team name, Message, Sender, Channel, Channel name, Channel Type (Public, Private, or Shared). |
Permissions | User and Group based permissions |
Indexing | Initial full crawl when the connector is created, followed by a weekly full crawl. Incremental updates run every hour. |
Multiple instances support | Multiple Microsoft Teams connections can be configured in the Simpplr environment. But functionality to connect multiple tenants or domains in a single connector is not implemented yet |
Search features | Audience filters - Admins can include/exclude documents from indexing based on the Audiences. Keyword search Hybrid / semantic ranking Autocomplete suggestions Team’s content can be used in Smart Answers |
Channel Message (top-level messages only)
Note: Replies to channel messages are not indexed as separate items. Only the top-level message is indexed.
Title
URL/ link
Created time and last modified time
Message & Subject
Sender
Channel
Attachment Details
Permissions are read from the membership details.
How user and group permissions are synchronized
Microsoft Teams group and channel memberships are fetched and stored in the ACL index.
When a user is added to or removed from the organization or a specific group, the ACL index is updated the next time the ACL sync runs (by default, every hour).
What happens when access is removed for a specific document
When a user loses access to a Team or Channel, the updated permissions are applied during the next sync cycle.
The file will no longer appear in that user's Simpplr search results after the sync completes.
Supported MS Teams editions: All
Not supported: N/A
Before you begin, ensure the following:
Source system permissions
You need access to the Microsoft Entra admin center (formerly Azure AD) or the Azure Portal to create and configure your application registration.
Required Role: Your user account must have at least the Application Developer or Cloud Application Administrator role to register applications and manage their identities.
Application / service account
Ability to register a new Application Registration: You must be able to create a new registration in Microsoft Entra ID. This generates the unique Application (client) ID and Directory (tenant) ID required for your Teams integration.
Ability to generate Client Credentials (Client Id, Client secret).
Ability to Authorize the application (Admin Consent and Custom App Upload)
Uses secure client-credential authentication with Microsoft Graph and enforces Teams-based access controls, while ensuring all indexed data is stored in-region and protected with encryption in transit and at rest.
Authentication mechanism
Describe how Simpplr Enterprise Search connects to MS Teams:
Auth type: Client credentials
The following application-level scopes are required. No delegated permissions are needed
Chat.Read.All
Chat.ReadBasic.All
Files.Read.All
Group.Read.All
TeamMember.Read.All
User.Read.All
Data security
Data storage and residency: Indexed content from Microsoft Teams are stored within your Simpplr Enterprise Search environment, in the same region as your Simpplr tenant.
Encryption in transit: Server-side encryption with Amazon S3 managed keys (SSE-S3), TLS encryption in Kafka.
Encryption at rest: SSL (TLS 1.2 or higher), Auth: OAuth 2.0 Bearer tokens (client-credential).
Permission enforcement: MS Teams access controls (users and channels) are stored in the ACL index and applied at query time. Search results are always filtered by the signed-in user’s identity and channel memberships.
To connect to Microsoft Teams you need to create an Azure Active Directory application and service principal that can access resources. Follow these steps:
Go to the Azure portal and sign in with your Azure account.
Navigate to the Azure Active Directory service.
Search and Navigate to the “App Registration” service.
Click on the New registration button to register a new application.
Provide a name for your app, and optionally select the supported account types (e.g., single tenant, multi-tenant).
Click on the Register button to create the app registration.
After the registration is complete, you will be redirected to the app’s overview page. Take note of the Application (client) ID and Directory (Tenant) ID value, as you’ll need it later.
Navigate to Manage → API permissions section and click on the Add a permission button.
In the "Request API permissions pane, select "Microsoft Graph" as the API.
Select the permissions mentioned under Authentication and security in scopes or permission required.
Click on the Add permissions button to add the selected permissions to your app.
Click on the Grant admin consent button to grant the required permissions to the app. This step requires administrative privileges. If you are not an admin, you need to request the admin to grant consent via their Azure Portal.
Under the "Certificates & Secrets" tab, go to Client Secrets. Generate a new client secret and keep a note of the string under the Value column.
In Simpplr, go to: Enterprise Search → Connectors → Add connector.
Select “Microsoft Teams”.
Enter basic information:
Name: (Connector Name for this instance)
Provide authentication details:
Tenant ID
Client ID
Secret value
Click “Save” and “confirm”.
Configure inclusion rules:
Not configurable in the current version
Configure exclusion rules:
Not configurable in the current version
Configure Audience based filtering.
Include audiences
Exclude audiences
Default schedule: Full crawl at first setup and once in a week, incremental sync every hour.
Configuration options:
No option to configure the sync schedule, however sync can be paused and resumed.
Step 5 - Monitor the sync
Monitor the initial full sync status (starts automatically) in the connector dashboard.
Describe how the connector works over time:
Initial full crawl
All the content present in the storage account is indexed during the first run
How long it may take: Depends on the size of the content.
Incremental updates
Mechanism: Delta tokens provided by source based on previous sync.
What changes trigger reindexing:
New items created
Existing items updated
Items moved or renamed
Items deleted or archived
Deletion and permission changes
Deleted items are removed from index at next sync.
Permission changes are updated at the next sync cycle.
Expected latency
With the default schedule (incremental sync every hour), changes made to Microsoft Teams content (such as new messages or channel updates) are generally reflected in Simpplr search results within a few hours of the update, subject to content volume and system load.
Default field mapping
Source field (MS Teams) → Index field Simpplr
Channel Message
title | channel |
url | url |
owner/createdby | N/A |
file type | N/A |
Last modified | _timestamp |
Created date | creation_time |
size | N/A |
permissions /access control | N/A |
Channel Attachment
title | name |
url | weburl |
owner/createdby | N/A |
file type | N/A |
Last modified | _timestamp |
Created date | creation_time |
size | size |
permissions /access control | allowaccess_control |
Team Channel
title | title |
url | url |
owner/createdby | N/A |
file type | N/A |
Last modified | _timestamp |
Created date | creation_time |
size | N/A |
permissions /access control | N/A |
Search experience - how content from this connector appears in search:
Result layout: (Icon, Connector name, title as link, body(excerpt), Updated Date/ Created Date, object type)
Available filters and facets:
Source = Microsoft Teams
Updated Date
Participation in advanced features:
Smart Answers / Q&A: Yes
Autocomplete: Yes
Recommendations / “Suggested for you”: N/A
Trending / popular results: N/A
Semantic / hybrid ranking: Yes
Limits and known limitations
Maximum file size indexed | e.g., Content fully indexed up to 10 MB; above that only metadata is indexed |
Unsupported file types | e.g., password-protected files, certain media types, encrypted archives, etc |
Rate limits | 30 requests per second for individual APIs and 600 requests per second, organization wide |
Preview limitations | No preview available for excel, or media files |
Permission edge case | ACL not supported. |
Other known limitations | Some of the APIs in the connector require Delegated permissions or work only for delegated flow. Below are the API’s: https://graph.microsoft.com/v1.0/me https://graph.microsoft.com/v1.0/chats https://graph.microsoft.com/v1.0/chats/{chat_id}/messages https://graph.microsoft.com/v1.0/chats/{chat_id}/tabs |
Connector health and monitoring - Describe where admins can see status information:
Enterprise Search -> Connector name
Available metrics:
Last sync status (Success / Warning / Failed)
Last sync time
Next scheduled sync
Sync Type
Total items indexed count
Common issues and resolutions. Example pattern:
Issue: Authentication failed (invalid credentials or missing scopes)
Possible causes:
Incorrect client ID or secret (Credentials)
App not granted the required permissions
App granted with the delegated permissions instead of the application permissions
Consent not approved by an admin
Resolution:
Verify and re-enter credentials
Confirm required scopes are granted
Re-run admin consent flow
When to contact support.
Authentication error persists even after trying the above-mentioned resolutions
Sync is stuck in the Pending state.
Sync is in progress but no documents are getting ingested.
Sync failure with cancelled error (when not cancelled manually)
Incomplete or Partial sync.
When contacting, Support, include:
Connector name and instance ID (if available)
Organization URL
Approximate time and date of the issue
Error messages or screenshots
Steps you already tried
Q1. Can I connect multiple Microsoft Teams tenants or domains?
A. Multiple Microsoft Teams connections can be configured in the Simpplr environment. But functionality to connect multiple tenants or domains in a single connector is not implemented yet.
Q2. How often does Microsoft Teams sync data?
A. The connector runs a full crawl on first setup and then once per week. Incremental sync runs every hour by default.
Q3. Are replies indexed?
A. Replies are not indexed as separate items. The connector indexes the latest file metadata, including the last updated time and updated-by user.
Q4. Does the connector index content from external guests or shared links?
A. Not implemented yet.
Q5. What happens when a user loses access to an item in MS Teams?
A. The updated access permissions will be indexed during the next sync cycle.
Q6. Can I exclude certain sites/teams/folders from being indexed?
A. Documents can be included or excluded based on audiences.
Q7. How are deletions handled?
A. Objects deleted from the source are permanently deleted from the index.