Microsoft Teams

Connect Microsoft Teams to post Adaptive Card notifications to a team channel when new feedback arrives, a post status changes, or someone comments.

JM
James Morton
Written By James MortonLast updated 1 day ago

Feedback in your Teams workspace. Get notified with rich Adaptive Cards in Microsoft Teams channels when new feedback arrives, statuses change, or users comment. Cards include post details and direct links back to your feedback portal.

Note: On Quackback Cloud, integrations are available on the Business and Enterprise plans. Self-hosted installs include every integration.

Overview

The Microsoft Teams integration sends Adaptive Card notifications to channels when:

  • New feedback is submitted
  • Post status changes
  • New comments are posted

Prerequisites

  • The Owner or Admin role in Quackback (or a custom role that can manage integrations)
  • Self-hosted only: an Azure AD application registered in the Azure Portal
  • Permission to grant OAuth consent in your Microsoft 365 organization

Self-hosted: create your Microsoft Teams app

Note: On Quackback Cloud, skip this section. Quackback provides the Microsoft Teams app for you, so you go straight to connecting.

Self-hosted instances connect through an app you create. Do this once before you connect.

Register an Azure AD application

  1. Go to the Azure Portal App Registrations
  2. Click New registration
  3. Enter a name (for example, "Quackback")
  4. Under Supported account types, select Accounts in any organizational directory
  5. Add a redirect URI (provided in your Quackback integration settings)
  6. Click Register
  7. Copy the Application (client) ID
  8. Go to Certificates & secrets, create a new client secret, and copy the value

Save the app credentials in Quackback

  1. Go to Admin > Settings > Integrations > Teams
  2. Enter the following credentials:

    • Client ID from your Azure AD application
    • Client Secret from your Azure AD application

Setup

1. Connect your organization

  1. Go to Admin > Settings > Integrations > Teams
  2. Click Connect to Teams
  3. You'll be redirected to Microsoft to authorize the application
  4. Review the permissions and click Accept

The app requests these OAuth scopes:

  • ChannelMessage.Send: post messages to channels
  • Team.ReadBasic.All: list your teams
  • Channel.ReadBasic.All: list channels within teams
  • offline_access: refresh tokens automatically

2. Select a team and channel

Back in Quackback:

  1. Choose the team you want to post to
  2. Select a channel within that team for notifications
  3. Both standard and private channels are listed

3. Configure events

Choose which events trigger Teams notifications:

Event

Description

New post

Someone submits new feedback

Status change

Post status is updated

New comment

Comment added to a post

4. Save and test

  1. Click Save
  2. Click Send Test to verify the connection
  3. Check your Teams channel for the test message

Notification format

Teams notifications use Adaptive Cards for rich, structured messages.

New post:

Adaptive Card
Header: New feedback from [email protected]
Title: Add dark mode support
Body: It would be great to have a dark mode...
Footer: Board: feature-requests
Action: [View in Portal] (links to post)

Status change:

Adaptive Card
Header: Status changed by [email protected]
Title: Add dark mode support
Body: Under Review -> Planned
Action: [View in Portal] (links to post)

New comment:

Adaptive Card
Header: New comment from [email protected]
Title: Add dark mode support
Body: Great idea! We're considering this for Q2.
Action: [View in Portal] (links to post)

All cards include a "View in Portal" button that links directly to the post.

Event mapping

Send different events to different channels:

  1. Go to the Teams integration settings
  2. Click Add Event Mapping
  3. Configure:

    • Event type: post.created, post.status_changed, and so on
    • Team: Target team
    • Channel: Target channel within the team
    • Filters (optional): Board, status, or other conditions

Manage the integration

Pause notifications

Temporarily stop notifications:

  1. Go to Admin > Settings > Integrations > Teams
  2. Toggle Enabled off
  3. Notifications pause, but the connection remains

Reconnect

If you see connection errors:

  1. Click Reconnect
  2. Re-authorize in Microsoft
  3. Reconfigure teams and channels if needed

Tokens are automatically refreshed when they expire. If a refresh fails, you will need to reconnect.

Disconnect

To fully remove the integration:

  1. Go to Admin > Settings > Integrations > Teams
  2. Click Disconnect
  3. Confirm the action

Note: Disconnecting removes the connection in Quackback but does not revoke the app's consent in Microsoft. To fully revoke access, remove the application from your Azure AD directory.

Troubleshooting

Notifications not appearing

  1. Check integration status: look for errors in settings
  2. Verify channel: ensure the team and channel still exist
  3. Check event mappings: confirm events are configured
  4. App permissions: verify the app has been granted consent in your Microsoft 365 organization

"Team ID Not Configured" error

The integration requires both a team and channel to be selected:

  1. Go to the Teams integration settings
  2. Select a team from the list
  3. Select a channel within that team

"Authentication Failed" error

  1. Click Reconnect
  2. Re-authorize the app with Microsoft
  3. Test the connection

Rate limiting

Microsoft Graph API enforces rate limits. If you see rate-limit errors, notifications are automatically retried. Reduce notification volume by filtering events if this occurs frequently.

Permissions

The Teams app requires:

Permission

Purpose

ChannelMessage.Send

Post Adaptive Cards to channels

Team.ReadBasic.All

List teams you're a member of

Channel.ReadBasic.All

List channels within a team

offline_access

Refresh access tokens automatically

Note: The app cannot:

  • Read your messages or channel history
  • Access private channels unless listed
  • Post as individual users

Was this helpful?

Your feedback shapes what we write next.