Atlassian has invested heavily in Microsoft Teams integration. Jira has a native Teams app that routes issue assignments, sprint completions, and status changes to Teams channels. Confluence has a Teams integration for page updates and comment notifications. Both are available in the Microsoft Teams app store, maintained by Atlassian.
Bitbucket — Atlassian's code repository and CI/CD platform — does not have a native Microsoft Teams integration for repository or pipeline events.
Bitbucket has a Slack integration (available via Repository Settings → Integrations → Slack in Bitbucket Cloud). It routes push events, pull request creation, PR updates, PR merges, and build status changes to a Slack channel. For engineering organizations where all developers are on Slack, this integration works well.
For organizations on Microsoft 365 where developers use Slack but engineering managers, PMs, or stakeholders use Teams, Bitbucket repository events only reach the Slack channel. Teams users see nothing until someone manually shares an update.
The Atlassian Consistency Gap
The inconsistency creates a specific operational problem for organizations using the full Atlassian stack: Jira issues surface in both Slack and Teams via native integrations. Confluence page updates surface in both. But Bitbucket pull requests — the code review activity that Jira issues and Confluence specs feed into — surface only in Slack.
For a product manager on Teams tracking a sprint in Jira, they see Jira issue transitions in Teams. They do not see the Bitbucket PRs implementing those issues unless they check Bitbucket directly or join the Slack channel.
Event Coverage via SyncRivo
Configure a Bitbucket repository webhook (Repository Settings → Webhooks) pointing to your SyncRivo inbound endpoint. SyncRivo routes the event payload to Slack, Teams, Webex, Google Chat, and Zoom based on your routing rules.
Events covered: push (any branch), pull_request:created, pull_request:updated, pull_request:fulfilled (merged), pull_request:rejected (declined), build:status_changed (Pipelines and external CI).
Routing by Branch and Event Type
Per-event routing rules handle the common branching patterns:
- push to main: Teams #releases (stakeholder visibility) + Slack #engineering (dev team)
- pull_request:created targeting main: Slack #reviewers (action required) + Teams #engineering (awareness)
- pull_request:fulfilled (merged to main): Teams #releases + Slack #engineering simultaneously
- build:status_changed FAILED: Slack #dev-team (immediate action needed)
- build:status_changed SUCCESSFUL (deploy stage): Teams #releases + Slack #engineering
Bitbucket Pipelines Notifications
For Bitbucket Pipelines specifically, the native Slack notification pipe (atlassian/slack-notify) can be replaced or supplemented with a curl step pointing to SyncRivo. This gives pipeline-level control over what gets routed and what context is included in the notification payload.
For the complete Bitbucket webhook setup, per-branch routing configuration, and Bitbucket Pipelines curl step examples, see the Bitbucket Notifications in Slack & Teams integration guide.
Ready to connect your messaging platforms?