Schema Explorer

AdaptiveCard

Root element in an Adaptive Card.

Property Type Required Description Version
type "AdaptiveCard" Yes Must be "AdaptiveCard". 1.0
actions Action[] No The Actions to show in the card’s action bar. 1.0
body array[] No The card elements to show in the primary card region. 1.0
selectAction object No An Action that will be invoked when the card is tapped or selected. Action.ShowCard is not supported. 1.0
version string Yes Schema version that this card requires. If a client is lower than this version, the fallbackText will be rendered. 1.0
fallbackText string No Text shown when the client doesn’t support the version specified (may contain markdown). 1.0
backgroundImage string No An image to use as the background of the card. 1.0
speak string No Specifies what should be spoken for this entire card. This is simple text or SSML fragment. 1.0
lang string No The 2-letter ISO-639-1 language used in the card. Used to localize any date/time functions. 1.0

Example

{
	"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
	"type": "AdaptiveCard",
	"version": "1.0",
	"body": [
		{
			"type": "Container",
			"items": [
				{
					"type": "TextBlock",
					"text": "Publish Adaptive Card schema",
					"weight": "bolder",
					"size": "medium"
				},
				{
					"type": "ColumnSet",
					"columns": [
						{
							"type": "Column",
							"width": "auto",
							"items": [
								{
									"type": "Image",
									"url": "https://pbs.twimg.com/profile_images/3647943215/d7f12830b3c17a5a9e4afcc370e3a37e_400x400.jpeg",
									"size": "small",
									"style": "person"
								}
							]
						},
						{
							"type": "Column",
							"width": "stretch",
							"items": [
								{
									"type": "TextBlock",
									"text": "Matt Hidinger",
									"weight": "bolder",
									"wrap": true
								},
								{
									"type": "TextBlock",
									"spacing": "none",
									"text": "Created {{DATE(2017-02-14T06:08:39Z, SHORT)}}",
									"isSubtle": true,
									"wrap": true
								}
							]
						}
					]
				}
			]
		},
		{
			"type": "Container",
			"items": [
				{
					"type": "TextBlock",
					"text": "Now that we have defined the main rules and features of the format, we need to produce a schema and publish it to GitHub. The schema will be the starting point of our reference documentation.",
					"wrap": true
				},
				{
					"type": "FactSet",
					"facts": [
						{
							"title": "Board:",
							"value": "Adaptive Card"
						},
						{
							"title": "List:",
							"value": "Backlog"
						},
						{
							"title": "Assigned to:",
							"value": "Matt Hidinger"
						},
						{
							"title": "Due date:",
							"value": "Not set"
						}
					]
				}
			]
		}
	],
	"actions": [
		{
			"type": "Action.ShowCard",
			"title": "Comment",
			"card": {
				"type": "AdaptiveCard",
				"body": [
					{
						"type": "Input.Text",
						"id": "comment",
						"isMultiline": true,
						"placeholder": "Enter your comment"
					}
				],
				"actions": [
					{
						"type": "Action.Submit",
						"title": "OK"
					}
				]
			}
		},
		{
			"type": "Action.OpenUrl",
			"title": "View",
			"url": "http://adaptivecards.io"
		}
	]
}
{ "$schema": "http://adaptivecards.io/schemas/adaptive-card.json", "type": "AdaptiveCard", "version": "1.0", "body": [ { "type": "Container", "items": [ { "type": "TextBlock", "text": "Publish Adaptive Card schema", "weight": "bolder", "size": "medium" }, { "type": "ColumnSet", "columns": [ { "type": "Column", "width": "auto", "items": [ { "type": "Image", "url": "https://pbs.twimg.com/profile_images/3647943215/d7f12830b3c17a5a9e4afcc370e3a37e_400x400.jpeg", "size": "small", "style": "person" } ] }, { "type": "Column", "width": "stretch", "items": [ { "type": "TextBlock", "text": "Matt Hidinger", "weight": "bolder", "wrap": true }, { "type": "TextBlock", "spacing": "none", "text": "Created {{DATE(2017-02-14T06:08:39Z, SHORT)}}", "isSubtle": true, "wrap": true } ] } ] } ] }, { "type": "Container", "items": [ { "type": "TextBlock", "text": "Now that we have defined the main rules and features of the format, we need to produce a schema and publish it to GitHub. The schema will be the starting point of our reference documentation.", "wrap": true }, { "type": "FactSet", "facts": [ { "title": "Board:", "value": "Adaptive Card" }, { "title": "List:", "value": "Backlog" }, { "title": "Assigned to:", "value": "Matt Hidinger" }, { "title": "Due date:", "value": "Not set" } ] } ] } ], "actions": [ { "type": "Action.ShowCard", "title": "Comment", "card": { "type": "AdaptiveCard", "body": [ { "type": "Input.Text", "id": "comment", "isMultiline": true, "placeholder": "Enter your comment" } ], "actions": [ { "type": "Action.Submit", "title": "OK" } ] } }, { "type": "Action.OpenUrl", "title": "View", "url": "http://adaptivecards.io" } ] }
Try it Yourself »

Properties

type

Must be "AdaptiveCard".

  • Type: "AdaptiveCard"
  • Required: Yes
  • Allowed values:
    • AdaptiveCard

actions

The Actions to show in the card's action bar.

  • Type: Action[]
    • Each element in the array must be one of the following values:
  • Required: No

body

The card elements to show in the primary card region.

  • Type: array[]
  • Required: No

selectAction

An Action that will be invoked when the card is tapped or selected. Action.ShowCard is not supported.

  • Type: object
  • Required: No
  • Allowed values:
    • Action.Submit
    • Action.OpenUrl

version

Schema version that this card requires. If a client is lower than this version, the fallbackText will be rendered.

  • Type: string
  • Required: Yes

fallbackText

Text shown when the client doesn't support the version specified (may contain markdown).

  • Type: string
  • Required: No

backgroundImage

An image to use as the background of the card.

  • Type: string
  • Required: No

speak

Specifies what should be spoken for this entire card. This is simple text or SSML fragment.

  • Type: string
  • Required: No

lang

The 2-letter ISO-639-1 language used in the card. Used to localize any date/time functions.

  • Type: string
  • Required: No