Curiosity

Microsoft Teams

Ingests Teams, channels, channel messages, replies, and attachments through Microsoft Graph. Per-channel access is mapped onto workspace access groups.

variant=info text="Chat" variant=success text="OAuth" variant=success text="Maps ACLs"

What gets ingested

Element Mapped to
Team _Team
Channel (standard / private / shared) _Channel
Channel members _User, linked by _HasMember
Channel message _Message
Reply _Message with _RepliesTo
Attached file _FileEntry + _Blob (resolves the SharePoint/OneDrive backing store)

Authentication

  • Type: OAuth against Microsoft Graph (per-user, tenant scoped).

Access control mapping

Source Carried into the graph?
Per-team membership Yes — each team is an access group; members are added.
Per-channel membership (private channels) Yes — separate access group per private channel.
Cross-tenant shared channels Members from both tenants are added to the channel's access group.

Sync cadence

  • Default cron: every 15 minutes.
  • Incremental sync: Microsoft Graph delta links per team + per channel. The connector versions its schema (v0 → v1 → v2 → v3); the workspace runs a migration task when a new version ships.

Notable

  • Attachment URLs are resolved through SharePoint/OneDrive on demand so files are stored as proper _FileEntry nodes (not just URLs).
  • Includes a one-shot RemoveMicrosoftTeamsDataTask administrators can run to wipe a previously ingested team cleanly.