Building, integrating, or customizing apps and workflows within Microsoft Teams using developer tools and APIs
Hi Edgar,
Based on the current Teams manifest and Universal Actions documentation, your design is generally valid and doesn't require setting isNotificationOnly to false solely because the proactive cards contain Action.Execute buttons.
isNotificationOnly: true prevents users from sending free-form messages to or @mentioning the bot. An Action.Execute button generates an adaptiveCard/action invoke activity rather than a normal chat message, and the Universal Actions documentation doesn't identify notification-only bots as excluded from receiving those invokes.
For the private account-linking prompt, an Adaptive Card returned directly in the successful Action.Execute invoke response participates in a user-specific sequential workflow. The clicking user can receive the replacement card without changing the base channel card for other members. A refresh block isn't required for that explicit action response.
refresh.userIds is needed when you want automatic user-specific refresh, up-to-date personalized views or the user-specific state to be fetched again on another Teams client. Without refresh, don't assume that the private response shown on desktop will automatically be restored on mobile.
Your later explicit update of the original activity is separate: updating the cached channel activityId changes the shared base card for everyone, which is appropriate after the authorized operation completes.
From a Teams Store perspective, notification-only bots are supported, but the notification must provide useful information within Teams. A card that only says “click to view” and sends users outside Teams for all value can fail validation. For account linking, clearly state why linking is required, label the button to indicate that it opens your external site, provide clear sign-in/sign-up/sign-out guidance, declare the account dependency in the listing, and provide reviewers with a working test account and end-to-end instructions.
We recommend validating the combination in a sideloaded test app across Teams desktop, web and mobile because the notification-only documentation doesn't explicitly discuss Universal Actions. If adaptiveCard/action is suppressed only when isNotificationOnly is true, that would warrant an engineering investigation; otherwise the proposed design is consistent with the documented model.