Building, integrating, or customizing apps and workflows within Microsoft Teams using developer tools and APIs
Treat this as a Teams mobile renderer regression and use an Action.OpenUrl link to the full-size image or file as the production workaround; allowExpand remains documented and has not been removed.
Microsoft Graph supports Adaptive Cards whose images reference Teams-hosted content, and its example uses ../hostedContents/{temporaryId}/$value inside the card attachment.^1^ The current card model also still defines Image.allowExpand as the property that permits full-screen expansion.^2^
Because:
- the image renders;
- the associated file opens;
- expansion works on desktop;
- the failure began after a Teams update;
- it reproduces on both iOS and Android; and
- schema versions 1.2 through 1.6 have already been tested,
changing the Adaptive Card version again is unlikely to resolve this case. Teams mobile and desktop use host-specific rendering, and Microsoft notes that rendering can differ between those clients.^3^
Production workaround
Add an explicit Action.OpenUrl that opens the existing file link or a client-accessible full-size image URL:
{
"type": "AdaptiveCard",
"version": "1.5",
"body": [
{
"type": "Image",
"url": "../hostedContents/1/$value",
"altText": "Preview",
"allowExpand": true
}
],
"actions": [
{
"type": "Action.OpenUrl",
"title": "Open full-size image",
"url": "https://contoso.example/image-or-file-link"
}
]
}
Replace the example URL with the same working file URL your flow already supplies. For cards sent through Microsoft Graph, Action.OpenUrl is the supported card action; actions such as Action.ShowCard are not supported for Graph-posted cards.^1^
Isolate the failing combination
Create one minimal test message containing:
- One
Imageonly. - The relative hosted-content reference:
../hostedContents/1/$value -
allowExpand: truedirectly on thatImage. - No columns, containers, buttons, or other actions.
allowExpand is an image-level property. The Teams-specific image property is documented as equivalent to Image.allowExpand, so using the native property provides the cleanest current test.^4^
Also send an otherwise identical test card whose image uses a normal HTTPS URL. Interpret the result as follows:
- HTTPS image expands, hosted-content image does not: the regression is specific to hosted content on the mobile renderer.
- Neither expands on mobile, but both expand on desktop: the mobile client is ignoring expansion.
- The minimal hosted image expands: another element in the original card is interacting with expansion; reintroduce elements individually.
Do not use version 1.6 for the final Teams card. Current Microsoft guidance lists Teams mobile schema support at version 1.5 and warns that unsupported elements can fail silently or render incorrectly.^5^
Report the regression
Open a Microsoft 365 support ticket and include:
- exact Teams iOS and Android versions;
- OS/device versions;
- the minimal Graph request body with identifiers and tokens removed;
- confirmation that desktop works;
- results for hosted content versus an HTTPS image;
- a screen recording showing that tapping the image does nothing;
- the approximate date or Teams build when it last worked.
Existing public reports show that msTeams.allowExpand has had renderer-specific defects, including changes to image rendering and failures in some card combinations.^6^^7^ There is currently no documented manifest setting or Power Automate option that forces mobile expansion.
References
- Working with Microsoft Teams messaging APIs in Microsoft Graph
- IImage interface-Property Details
- Format cards in Teams
- TeamsImageProperties class-Property Details
- Adaptive Cards for agent design
- [Rendering] horizontalAlignment ignored when msTeams.allowExpand is ...
- Expanding images in adaptive cards doesn't work in teams when ... - GitHub