Power Automate Adaptive Cards with HostedContents not expand images in Teams mobile app.

Bonany Homs, Xavier 0 Reputation points
2026-10-21T10:42:04.7966667+00:00

Power Automate to Teams Channel > Send a Microsoft Graph HTTP request > Adaptive Card with hostedContents not expand images in Teams mobile app.

After updating Teams (current version), on mobile devices, images do not expand, but files open correctly.

(This could have happened in newer versions, but I noticed it after this last update.)

Test on Apple Teams APP, Android different devices.

AdaptiveCard V1.2 to 1.6 not work.

"msTeams": {"allowExpand": true}}' It was always there, but now it doesn't seem to be valid.

In Desktop Teams version, the problem doesn't exist.

Microsoft Teams | Development
Microsoft Teams | Development

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


5 answers

Sort by: Oldest
  1. AI answer

    2026-10-21T10:43:17.8266667+00:00

    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:

    1. One Image only.
    2. The relative hosted-content reference:
         ../hostedContents/1/$value
      
    3. allowExpand: true directly on that Image.
    4. 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

    1. Working with Microsoft Teams messaging APIs in Microsoft Graph
    2. IImage interface-Property Details
    3. Format cards in Teams
    4. TeamsImageProperties class-Property Details
    5. Adaptive Cards for agent design
    6. [Rendering] horizontalAlignment ignored when msTeams.allowExpand is ...
    7. Expanding images in adaptive cards doesn't work in teams when ... - GitHub
    AI-generated content may be incorrect. Read our transparency notes for more information.

    Was this answer helpful?

  2. Ana Le 2,865 Reputation points Independent Advisor
    2026-10-21T11:55:23.48+00:00

    Hi,

    Thank you for testing this across both iOS and Android and confirming that image expansion still works on desktop.

    As the forum’s AI answer recommended, comparing a minimal hosted-content image with an otherwise identical HTTPS image is a useful next step. However, I would clarify a few points before treating this as a confirmed regression.

    Microsoft’s Teams documentation states that tapping an Adaptive Card image should open it in Stageview on mobile, even when the allowExpand attribute is absent. The same documentation still includes the "msTeams": {"allowExpand": true} image configuration you are using. Therefore, your symptoms do not establish that this property has been removed or that you need to replace it with a top-level image property.

    Reference: Format cards in Teams — Stageview for images in Adaptive Cards

    Also, the current Teams card reference lists mobile support up to Adaptive Card version 1.6. The AI answer’s statement that mobile support stops at 1.5 needs correcting. Since you have already tested versions 1.2 through 1.6, repeating schema-version changes is unlikely to help isolate this issue.

    Reference: Types of cards — Support for Adaptive Cards

    For the comparison test, keep your existing msTeams configuration and change only the image source. Use a non-sensitive HTTPS test image that renders successfully on mobile. If that image expands but the hosted-content image does not, it would narrow the investigation to the hosted-content path. It would not, by itself, confirm the underlying cause.

    The suggested Action.OpenUrl button is a reasonable temporary workaround to test, using a file link that affected users can already open. Microsoft Graph’s messaging documentation supports this action for card attachments. However, do not use ../hostedContents/1/$value as the button’s URL: use an actual user-accessible HTTPS file link. A Graph hosted-content endpoint requires authenticated API access and should not be assumed to work as a browser link.

    References:

    The behavior you describe suggests a possible Teams mobile issue, but confirmation requires investigation. As the AI answer recommended, ask your Microsoft 365 administrator to open a support case with the exact Teams builds, a sanitized minimal request, and the hosted-content versus HTTPS test results.

    Could you share the exact iOS and Android Teams versions and the minimal card JSON, with sensitive information removed? Those details would help distinguish an issue specific to hosted images from a broader mobile Stageview problem.

    Was this answer helpful?

    0 comments No comments

  3. Bonany Homs, Xavier 0 Reputation points
    2026-10-22T09:38:11.7933333+00:00

    Thanks, Ana.

    I will add some of the information you mentioned.

    Teams for Android version app: 1416/1.0.0.2026183002/1007 Call 2026.27.01.1

    On iOS: 8.18.2 Build: 8.18.77.2026183301/1015

    In a test (I’m including part of the code), the image displays and can be enlarged, but it appears outside the Adaptive Card—forcing me to change the flow design. I would prefer the Adaptive Card to continue working as it has been, so I don’t have to rewrite the code.

    "content": "<img src="../hostedContents/1/$value" ....

    It’s worth noting that I also attach files in the same way (using hostedContents), and those continue to work fine.

    Where exactly would you recommend I report this to Microsoft?

    Was this answer helpful?

    0 comments No comments

  4. Bonany Homs, Xavier 0 Reputation points
    2026-10-22T09:46:33.6133333+00:00

    Thanks, Ana.

    I will add some of the information you mentioned.

    Teams for Android version app: 1416/1.0.0.2026183002/1007 Call 2026.27.01.1

    On iOS: 8.18.2 Build: 8.18.77.2026183301/1015

    In a test (I’m including part of the code), the image displays and can be enlarged, but it appears outside the Adaptive Card—forcing me to change the flow design. I would prefer the Adaptive Card to continue working as it has been, so I don’t have to rewrite the code.

    "content": "<img src="../hostedContents/1/$value" ....

    It’s worth noting that I also attach files in the same way (using hostedContents), and those continue to work fine.

    Where exactly would you recommend I report this to Microsoft?

    Was this answer helpful?

    0 comments No comments

  5. Bonany Homs, Xavier 0 Reputation points
    2026-10-22T10:04:36.44+00:00

    Thanks, Ana

    I will add some of the information you mentioned.

    Teams for Android version app: 1416/1.0.0.2026183002/1007 Call 2026.27.01.1

    On iOS: 8.18.2 Build: 8.18.77.2026183301/1015

    In a test (I’m including part of the code), the image displays and can be enlarged, but it appears outside the Adaptive Card—forcing me to change the flow design. I would prefer the Adaptive Card to continue working as it has been, so I don’t have to rewrite the code.

    "content": "<img src="../hostedContents/1/$value" ....

    It’s worth noting that I also attach files in the same way (using hostedContents), and those continue to work fine.

    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.