Teams RSC Bot Issues with Deep-Link Installation and Adaptive Card Actions

Nathan V 45 Reputation points
2026-09-18T01:53:45.3933333+00:00

We are using a Microsoft Teams bot with Resource-Specific Consent (RSC) permissions in a group chat.

We are seeing different behavior between manual app installation and deep-link installation.

Manual installation:

  • Bot responds to group-chat messages without requiring @mention.
  • Adaptive Cards are displayed correctly.
  • Adaptive Card actions/buttons work as expected.

Deep-link installation:

  • Bot is added to the group chat as a member.
  • Bot does not respond to messages unless it is @mentioned.
  • Adaptive Cards are displayed correctly.
  • However, clicking an Adaptive Card action results in the error:

"This action can't be performed since the app does not exist or has been uninstalled."

The same bot, backend, Adaptive Card payload, and RSC configuration are used in both scenarios. The only difference is the installation method.

Expected behavior: The deep-link-installed app should have the same RSC behavior as the manually installed app, including receiving messages without @mention and successfully processing Adaptive Card actions.

RSC permission: ChatMessage.Read.Chat Bot scope: groupchat

Please investigate whether this is a known issue or limitation with RSC + group chat + deep-link installation + Adaptive Card actions, and advise if any additional manifest or installation configuration is required
teams_error_message_only

Microsoft Teams | Development
Microsoft Teams | Development

Building, integrating, or customizing apps and workflows within Microsoft Teams using developer tools and APIs

0 comments No comments

2 answers

Sort by: Most helpful
  1. Prasad-MSFT 10,546 Reputation points Microsoft External Staff Moderator
    2026-09-18T06:25:15.0966667+00:00

    There is no documented limitation where RSC + group chat + deep-link app installation is expected to behave differently from a manual installation. However, the symptoms suggest that the app may not be getting fully installed/consented in the chat when added via the deep link.

    A few things to verify:

    1. Compare the deep-link app ID with the correct Teams app ID for the package - custom apps use the manifest ID, while store/catalog apps use the corresponding catalog ID, as documented in Explore & Configure Deep Links to Apps.
    2. Validate the manifest’s webApplicationInfo.id against the bot’s Microsoft Entra application ID - the RSC documentation requires a 1:1 mapping between a Teams app and its Microsoft Entra app.

    Was this answer helpful?

    0 comments No comments

  2. Teddie Dang 1,270 Reputation points Independent Advisor
    2026-09-18T03:44:55.3833333+00:00

    Hi @Nathan V

    Since the same package works correctly when the app is manually installed, the basic RSC and bot configuration appears to be correct.

    The important point is that a Teams app deep link is documented as a way to open the app installation dialog. The RSC permission is granted when an authorized user completes the installation of the app in the target chat. Therefore, because the only difference in your testing is the installation method, I would focus the investigation on whether the deep-link installation produces the same app installation and RSC grant as the manual installation.

    The two symptoms you are seeing are particularly relevant:

    • Non-@mention messages are not delivered, which suggests that ChatMessage.Read.Chat may not have been granted correctly for that chat.
    • Adaptive Cards render, but their actions fail with "This action can't be performed since the app does not exist or has been uninstalled." This may indicate that Teams does not recognize the application as fully installed in that conversation when routing the card action.

    I would recommend verifying the following:

    1.Compare the app installation and RSC grant after each installation method.

    Verify that the app appears as installed in the target group chat and that ChatMessage.Read.Chat is present in the RSC permissions granted for that chat. Microsoft Graph provides APIs for listing apps installed in a chat and retrieving the resource-specific permissions granted to an app as part of the installation.
    References:

    2.Check the deep-link app identifier.

    Since the deep-link installation is the only variable producing different behavior, verify that the deep link resolves to the same Teams app/package used in the manual installation. Microsoft documents the identifier requirements for deep links here: Deep link to an application - Teams | Microsoft Learn

    3.Perform a clean comparison if possible.

    Remove the app from the group chat, reinstall it through the deep-link flow, and then immediately verify the RSC grant and test both message delivery and the Adaptive Card action.

    If ChatMessage.Read.Chat is confirmed as granted in both cases, but the behavior still differs solely based on the installation method, I would recommend reporting the issue with a minimal reproducible example through GitHub. This will allow the Teams product/development team to determine whether the behavior is a product issue or an unsupported installation scenario.

    Reference: Participating in a discussion - GitHub Docs   

    Was this answer helpful?


Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.