Data access

What data does Swarmia access and why?

GitHub integration

The GitHub integration is implemented as a Marketplace App. You can configure which repositories it has access to.

In the selected repositories, the app can access:

  • checks (read-only)

  • Github Actions (read-only) Added: Aug 16, 2023

  • Git contents (read-only)

  • GitHub Copilot Business (read-only) Added: May 14, 2025

  • deployments (read-only)

  • issues (read-only)

  • repository metadata (read-only)

  • repository administration (read-only) Added: Dec 9, 2022

    • Used to read the repository's branch protection rules

  • projects (read-only)

  • commit statuses (read-only)

  • pull requests (read-write)

    • Used to be able to comment on pull requests

At the organizational level, the app has read-only access to organization members, teams, and blocked users.

From each authenticated user, the app gets read-only access to their email address.

We subscribe to webhooks related to most of these same events.

We request the permission to access source code, as GitHub requires that for us to access your commits, but we never actually read your source code. For each commit, we only store the size of the change per file name. This allows us to estimate the complexity of the change, and also to ignore changes to automatically generated files (such as package-lock.json or Gemfile.lock).

GitHub permissions

At the user level, the Swarmia app requests permission to Act on your behalf. Swarmia uses this permission to reply to comments and post emoji reactions to GitHub as the user via our Slack bot.

Jira integration

The Jira integration is implemented as an Atlassian Connect application. The scope of the integration is:

  • Read (issues, comments, and projects)

  • Write (but not delete) – used for creating webhooks

  • Read user names and email addresses

Linear integration

For the Linear integration we request the following data access scope:

  • User emails addresses and names

  • Teams

  • Projects

  • Issues

  • Comments

Slack integration

The Slack integration is implemented as a Slack marketplace application. The scope we request is:

  • channels:join – join public channels

  • channels:read – view basic information about public channels

  • chat:write – send messages as @swarmia

  • groups:read – view basic information about private channels that @swarmia has been added to

  • incoming-webhook – post messages to specific channels on Slack

  • users:read – view people in a workspace

  • users:read.email – view email addresses of people in a workspace

On behalf of individual users who connect Slack notifications, we request an identity.basic permission.

Microsoft Teams

The Microsoft Teams Integration is implemented as a Microsoft Teams bot application using the Bot Framework.

  • Bot scopes: personal, team, groupChat

  • Accessed data includes:

    • Team members (read-only) – name, email addresses, and Azure AD object IDs

    • Team information (read-only) – team names and identifiers

    • Channel information (read-only) – channel names and identifiers

    • Conversation metadata (read-only) – conversation IDs for message delivery

    • Messages (write-only) – send notifications and messages to users and channels

The integration uses OAuth 2.0 authentication with Microsoft Azure AD and operates within the permissions granted during bot installation. All data access is limited to teams and channels where the Swarmia bot has been explicitly installed.

Claude Code integration

The Claude Code integration uses the Claude Code Analytics API, which is part of the Admin API and requires a valid Admin API key to access the analytics API resources. We monitor closely if a more properly scoped access becomes supported in the future.

The operations on Analytics and Admin API that Swarmia uses:

  • List organization members

  • List Claude Code analytics: daily aggregated metrics for Claude Code usage, including sessions, lines of code, commits, pull requests, tool usage statistics and cost data broken down by user and model

Last updated

Was this helpful?