1. How the integration works
- Traversal provides a Microsoft-approved Teams bot app (Azure AD app + Bot Framework). Your Teams admin installs it into your tenant — your organization decides where Traversal participates: it acts only on mentions, configured triggers, or Workers your team has enabled.
- Processing: the mention kicks off an incident investigation on Traversal’s backend. The analysis runs against your connected observability tools (for example, Datadog — a separate integration), not your Teams content. Teams is the chat surface, not the primary data source. Users can also set up triggers to run investigations automatically.
- Outbound: Traversal authenticates to Microsoft as its registered app (MSAL client-credentials) and posts the result back.
2. What data we capture from Teams
Traversal captures data only from the channels and conversations where the bot can be used. Limited to the chat surface, and only for messages the bot is party to:- Message content of messages that mention the bot (or match a trigger) — the text the user typed (the incident description), plus any attached files/images if provided.
- Conversation identifiers — channel, thread, team, tenant, and message IDs — used to reply in the right place and identify the install.
- Channel/thread context — channel name and, when investigating a thread, prior messages in that thread.
- Sender identity — see §3.
- Install metadata — tenant ID, bot service endpoint, app IDs.
3. PII / user information & handling
- What user info is involved: the sender’s Azure AD user ID, and their display name / email (resolved to attribute the request).
- Handling:
- Data is scoped per customer (per install / organization); cross-tenant access is prevented by design.
- Bot credentials are stored encrypted (AWS Secrets Manager); data is stored in Traversal’s cloud (AWS, United States).
- Microsoft is a sub-processor specifically to power the Microsoft Teams integration.
- Least-privilege Microsoft permissions; inbound validated (Microsoft-signed JWT), outbound app-authenticated.
- Running an investigation sends relevant context (including the incident description) to Traversal’s third-party LLM providers. We have zero-data-retention agreements with our LLM providers — no data is retained by the provider. Traversal may retain LLM inputs/outputs to improve the product (default 2 years, configurable). See Security & compliance → LLMs for tenancy/residency.
4. Permissions requested
Traversal requests the full permission set up front (to avoid a second multi-week approval cycle). Bot identity + messaging (not a Graph permission): a registered Azure AD app + Azure Bot with the Microsoft Teams channel enabled, installed by an admin. Microsoft Graph — application permissions (app-only, tenant-wide, admin consent required):5. Security & compliance
SOC 2 attestation: https://drive.google.com/file/d/1yuDwxVu8ZaasrUfgv0yOPXGQQP7Bvl7O/view?usp=sharing Sub-processors: Yes. Guidelines for sub-processors: https://docs.google.com/document/d/15qB3eO0ECuZeqnaOWKbCRKA7NogcaKQTVWPc72GZ53I/edit?tab=t.0 Large language models (LLMs):- Retention settings: We have zero data retention agreements with our LLM provider — no data is retained by the provider. We may retain LLM input/outputs for the purposes of improving data, with a default of 2 years but configurable.
- Data tenancy: In SaaS, every prompt/embedding carries an org_id; data, keys, and caches are namespace-isolated, and RLS+IAM block cross-tenant reads. In on-prem, the entire stack runs inside your VPC, eliminating multi-tenant sharing.
- Data residency: Managed SaaS stays in AWS us-east-1 / us-west-2. All sub-processors are locked to the same geography. LLM providers are also based in the USA.