Support / Docs / Integration Setup

Integrations

Integration Setup Guides

Step-by-step instructions for connecting each integration to ASYNC. Covers prerequisites, OAuth scopes, connection flow, and disconnection.

Site Admin

Overview

ASYNC's intelligence is built on cross-tool correlation. The more integrations you connect, the deeper the insights become. Each integration is connected once at the organization level by a site administrator, then individual project administrators select which resources (repositories, channels, spaces) to monitor per project.

Connection Architecture

ASYNC uses two distinct connection patterns depending on the provider:

Pattern Used By Mechanism
Native (Forge) Jira, Confluence Built-in Atlassian permissions, no OAuth flow
OAuth 2.0 GitHub, Slack, Zoom Custom OAuth with org-scoped token storage

Token Storage & Security

  • Encryption: All OAuth tokens are encrypted at rest using Atlassian Forge storage encryption
  • Scope: Tokens are stored at the organization level, enabling scheduled syncs and shared access across all team members
  • Read-only: ASYNC requests read-only scopes wherever possible. The only write scope is Slack's chat:write for posting notification messages.
  • No source code: ASYNC never reads, stores, or processes your source code, meeting recordings, or page content. Only metadata is ingested.

Connection Status Reference

Badge Meaning Action
Connected Token valid, provider access confirmed None required
Not Configured Provider has not been connected yet Click Connect
Connection Invalid Token expired or revoked at provider Click Reconnect
Setup Required Admin action needed (Confluence only) Follow setup steps
No Access User lacks required permissions Contact provider admin
Not Available Provider service unavailable for this site Verify provider subscription

Jira

Jira is the host platform for ASYNC. It is connected automatically when you install the app from the Atlassian Marketplace. No separate setup is required.

What Jira Provides to ASYNC

  • Issues, sprints, boards, story points, and status transitions
  • Sprint timelines and team capacity
  • Issue assignments and comments
  • Project hierarchy and team membership
  • JQL query results for advanced filtering

Permissions

ASYNC uses Atlassian Forge's built-in permission system. The app requests the following scopes during installation:

  • read:jira-work - Read issues, sprints, boards, comments
  • read:jira-user - Read user profiles for team membership

Automatic connection: Jira is the only required integration. It's connected automatically during ASYNC installation. You'll see no Jira card in the Integrations tab because there's nothing to configure.

Confluence

Confluence uses Atlassian's native cross-product permissions instead of OAuth. Connection is verified rather than authorized via redirect.

Prerequisites

  • Active Confluence subscription on the same Atlassian site as your Jira instance
  • Site administrator access to enable cross-product connections
  • ASYNC must be enabled for Confluence in the Atlassian Admin Console

Permissions

  • read:confluence-content.summary - Read page metadata and titles
  • read:confluence-space.summary - Read space information
  • search:confluence - Search across Confluence content

Connection Steps

  1. Click "Verify Access"

    In the Integrations tab, click Verify Access on the Confluence card. Note that this button is different from the Connect button used for OAuth providers.

  2. Enable Confluence in Admin Console (if needed)

    If verification fails with a "Setup Required" state, you'll need to enable the Confluence connection in the Atlassian Admin Console:

    1. Open admin.atlassian.com
    2. Navigate to AppsPlatform ExperiencesSites
    3. Select your site, then click Connected Apps
    4. Find ASYNC in the list and click View app details
    5. Click the Connections tab
    6. Find Confluence and click Connect
    7. Review the requested permissions and click Connect to confirm
  3. Re-verify access

    Return to ASYNC Admin Settings and click Verify Access again. The status should change to Connected.

Disconnecting Confluence

  1. Open admin.atlassian.com
  2. Navigate to AppsPlatform ExperiencesSites → your site → Connected Apps
  3. Find ASYNC and click View app details
  4. Click the Connections tab
  5. Find Confluence and click Disconnect
⚠️

"Not Available" state: If the Confluence card shows "Not Available" instead of "Setup Required", your Atlassian site does not have an active Confluence subscription. Confluence integration requires a paid Confluence Cloud subscription.

GitHub

GitHub uses OAuth 2.0 to securely authorize ASYNC to read repository metadata. Tokens are stored at the organization level, enabling scheduled syncs without requiring individual user authorization.

Prerequisites

  • A GitHub account with access to your organization's repositories
  • Organization owner or admin permissions (recommended for full org-level access)
  • Permission to authorize OAuth applications in your GitHub organization

OAuth Scopes

Scope Purpose
repoRead access to repositories, commits, and pull requests
read:userRead user profile information
user:emailRead user email address for team correlation

Connection Steps

  1. Click "Connect" on the GitHub card

    In the Integrations tab, click Connect on the GitHub card. ASYNC opens GitHub's authorization page in a new browser tab.

  2. Sign in to GitHub

    If you're not already signed in, GitHub will prompt for your credentials. You may also be asked to confirm two-factor authentication if enabled.

  3. Authorize ASYNC

    GitHub displays the requested permissions. If you're an organization owner, you can grant access at the organization level. Click Authorize to continue.

  4. Wait for confirmation

    You'll see the message: "Complete GitHub authorization in the new tab, then return here. We'll detect when you're connected." ASYNC polls for completion every 2 seconds for up to 4 minutes.

  5. Verify connection

    Once detected, the GitHub card updates to show Connected with a green badge. Your GitHub organization name (e.g., @your-org) appears on the card.

Disconnecting GitHub

Click Disconnect on the GitHub card. To fully revoke ASYNC's access at GitHub:

  1. Open github.com/settings/applications
  2. Find ASYNC in the Authorized OAuth Apps list
  3. Click Revoke to remove access

Org-scoped tokens: Once connected, any team member can trigger syncs without re-authorizing. The token is stored at the organization level and used for both manual and scheduled syncs.

Slack

Slack uses OAuth 2.0 to authorize ASYNC's bot to read channel messages and post notifications. The integration requires workspace admin permissions for installation.

Prerequisites

  • A Slack workspace where you have admin permissions
  • Permission to install third-party apps in your workspace
  • Optional: Permission to invite the ASYNC bot to private channels

OAuth Scopes

Scope Purpose
channels:readView basic public channel info
channels:historyView messages in public channels
channels:joinAuto-join public channels selected for sync
groups:readView private channel info
groups:historyView messages in private channels (after invite)
users:readView user profiles for team correlation
users:read.emailView user emails
chat:writePost notification messages
team:readView workspace info

Connection Steps

  1. Click "Connect" on the Slack card

    In the Integrations tab, click Connect on the Slack card. ASYNC opens Slack's authorization page in a new tab.

  2. Select your workspace

    If you belong to multiple Slack workspaces, choose the one you want to connect. Make sure it's the workspace your engineering team uses.

  3. Review and allow

    Slack displays the requested scopes and the ASYNC bot's capabilities. Click Allow to grant access.

  4. Verify connection

    Return to ASYNC. Once detected, the Slack card shows Connected with your workspace name (e.g., acme-corp).

  5. Invite ASYNC to private channels (optional)

    For each private channel you want to monitor, type /invite @ASYNC in the channel. Public channels are joined automatically when selected in Project Settings.

Disconnecting Slack

Click Disconnect on the Slack card. To fully remove ASYNC from your workspace:

  1. Open slack.com/apps/manage
  2. Navigate to Settings & administrationManage apps
  3. Find ASYNC in the installed apps list
  4. Click Remove to uninstall
💡

Best practice: Only invite ASYNC to channels directly relevant to your engineering work. Channels like #proj-backend, #proj-standup, and #proj-incidents provide the richest signal. Avoid adding ASYNC to social or off-topic channels.

Zoom

Zoom uses OAuth 2.0 to authorize ASYNC to read meeting metadata, recordings, and transcripts. Cloud recordings and transcripts require a Zoom Pro plan or higher.

Prerequisites

  • A Zoom account (any plan)
  • Pro plan or higher recommended for cloud recordings and transcripts
  • Cloud recording enabled in your Zoom account settings

OAuth Scopes

Scope Purpose
cloud_recording:read:list_user_recordingsList user's cloud recordings
cloud_recording:read:recordingRead recording details and transcripts
meeting:read:list_meetingsList user's meetings
user:read:emailGet user profile and email

Connection Steps

  1. Click "Connect" on the Zoom card

    In the Integrations tab, click Connect on the Zoom card. ASYNC opens Zoom's authorization page in a new tab.

  2. Sign in to Zoom

    Sign in to your Zoom account if not already authenticated. SSO logins are supported.

  3. Authorize ASYNC

    Review the requested permissions and click Allow to grant access.

  4. Verify connection & check plan

    Return to ASYNC. The Zoom card updates to Connected with your account email displayed. ASYNC automatically tests Zoom capabilities to detect your plan type.

Plan Limitations

Zoom Plan Available Data
Free Meeting dates, times, duration, participant info. No transcripts or cloud recordings.
Pro and higher All meeting metadata plus cloud recordings, transcripts, and recording analytics
⚠️

Free plan warning: If you connect a Zoom free account, ASYNC displays a warning: "Free Zoom plans do not support cloud recordings. Meeting metadata will still be tracked, but transcripts require a Pro or higher plan." The connection still succeeds and basic meeting data continues to sync.

Disconnecting Zoom

Click Disconnect on the Zoom card. To fully remove ASYNC from your Zoom account:

  1. Open marketplace.zoom.us/user/installed
  2. Find ASYNC in your installed apps
  3. Click Uninstall to remove access

Troubleshooting

"Connection timeout" message after authorizing

ASYNC polls for OAuth completion every 2 seconds for up to 4 minutes. If polling times out:

  1. Click Dismiss on the timeout message
  2. Refresh the page
  3. The connection may have actually succeeded - check the integration card status
  4. If still showing "Not Configured", click Connect and try again
OAuth tab fails to open or is blocked

The OAuth flow opens in a new browser tab. If popup blockers are enabled:

  • Allow popups for your Jira domain
  • Try the connection again
  • Some browsers may require explicit permission for popups from sandboxed iframes
"Reconnect" button appears on previously connected integration

This means the OAuth token has expired or been revoked at the provider. Common causes:

  • Token was manually revoked from GitHub Settings, Slack admin panel, etc.
  • OAuth app was uninstalled at the provider
  • Token TTL was exceeded (rare for Slack and Zoom; possible for GitHub)

Click Reconnect to clear the old token and start a fresh OAuth flow.

Connection appears stuck after revoking at provider

If you removed ASYNC from the provider (e.g., GitHub Settings) but the integration still shows as Connected in ASYNC, use the Force Disconnect option:

  1. Click Disconnect on the integration card
  2. In the modal, look for the Force Disconnect button
  3. This clears both the local token and admin storage state

The disconnect modal explicitly states: "Connection stuck? If the app was already removed from [Provider] but ASYNC still shows it as connected, use Force Disconnect to clear the stale connection."

Confluence shows "Setup Required" instead of "Not Configured"

This means Confluence is installed on your Atlassian site, but ASYNC has not been authorized to access it. Follow the Confluence connection steps via the Atlassian Admin Console.

Confluence shows "Not Available"

This means your Atlassian site does not have an active Confluence subscription. Confluence is a separate product that requires its own subscription. To resolve, either subscribe to Confluence Cloud or skip the Confluence integration entirely.

Disconnect modal shows projects affected

Before disconnecting, ASYNC analyzes the impact and shows:

  • Number of projects currently using this integration
  • Resources selected (repositories, channels, spaces) per affected project
  • Whether each project has existing sync history

Disconnecting will not delete project configurations or historical data, but new syncs will exclude this provider until reconnected.

Last updated: April 2026