Share via


Using Adaptive Cards in Copilot Studio

Adaptive Cards are platform-agnostic UI snippets written in JSON, which apps and services can openly exchange. When delivered to a specific app (often called the "host"), the JSON representation is transformed into native UI that automatically adapts to its context. With Adaptive Cards, you can design and integrate lightweight UI for all major platforms and frameworks.

Screenshot of an Adaptive Card collecting information from the user as part of a conversation.

Adaptive Cards are especially appreciated in products like Microsoft Teams and Outlook, because the designer of the UI can't predict whether the user is in dark or light mode, for example. In either case, no worries! The Adaptive Card just adapts!

Note

Copilot Studio supports the Adaptive Cards schema versions 1.6 and earlier. However, the appropriate schema version depends on the targeted host app:

  • The Bot Framework Web Chat component (that is, the default website integration pattern) supports version 1.6 but doesn't support Action.Execute
  • The live chat widget (used for Dynamics 365 Omnichannel for Customer Service) is limited to version 1.5
  • Teams is also limited to version 1.5

In addition, Copilot Studio only renders version-1.6 cards in the test chat, not on the canvas.

For more information about the Adaptive Cards schema, see Schema Explorer.

Adaptive Cards are often used in Copilot Studio agents to validate information from the customer, to ask questions, or simply to enhance the conversation experience. For more information on integrating Adaptive Cards in your agents, see the following articles:

The following articles describe example use cases:

Tip

The following resources are often used to create new Adaptive Cards:

  • The Adaptive Cards website, for schema documentation and samples.
  • Previous agent topics (clone and revise previous cards to maintain consistency).
  • ChatGPT or Copilot in Bing to generate the JSON payload for a card.
  • Power Apps or Power Automate (to design the card).