Carousel input displays broken images in Teams. Is there an alternative?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
10-02-2026 02:07 PM
Hi all,
I'm new to the virtual agent and need help solving a customer issue as soon as possible.
I am working on a Now Assist implementation with a specific focus on the virtual agent.
One of the topics that the customer wants is a "Request Status" topic that will display the most 5 recent requests for a user if they have them. Right now we're using the Carousel Input node to display these requests, and it works fine in their virtual agent within ServiceNow. However, there appears to be an issue with displaying the images (a clipboard) for the requests using the carousel in Teams. The images just appear broken.
Based upon my research, the clipboard image that displays on the carousel for our topic is in the svg format and Microsoft Teams doesn't allow svg files on the app due to security concerns or something.
I've been asked to look into other options to present the most recent 5 requests without needing an image. The user needs to be able to click on the request and go to it within the portal.
Like I said before I am new to the virtual agent, and I will continue doing my own research and may end up solving the problem without help, but I need this fix in asap so I'm hoping someone with more experience can help point me in the right direction so that I don't spend forever trying to figure this out.
The structure is like this: click on Request Status topic -> "Here are your requests:" -> Displays 1 - 5 requests with details and a clickable hyperlink for each one.
If anyone can please help me, I would really appreciate it.
Thank you!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
a week ago
Hi Patrick, your research is right - Teams renders VA content as Adaptive Cards and will not render SVG images, so a carousel that depends on an SVG will always show broken images there while looking fine in the web client. Rather than fighting the image format, replace the presentation for Teams - you can keep exactly the same data retrieval and change only how the 5 requests are shown:
Option A (recommended for your structure): use a dynamic Choice list instead of the Carousel.
- Keep your existing script/lookup that returns the caller's 5 most recent requests (sc_request, requested_for = current user, order opened_at descending, limit 5).
- Feed those 5 records into a Choice input node: label for each option = request number + short description + state (e.g. REQ0010123 - Laptop request - Work in Progress), value = the request sys_id.
- When the user picks one, follow it with a Link node (or a text node containing the portal link) built from that sys_id, using your portal's ticket page pattern, e.g. /esc or /sp with id=ticket, table=sc_request and sys_id=<selected value>. In Teams the choice list renders as tappable options with no image involved, and in web it still looks clean.
Option B (if you want all 5 visible at once, not a pick-list): use a single Text/Card output built by a Script node that loops the same 5 records and builds a numbered list with a markdown link per request - [REQ0010123 - Laptop request](<portal ticket URL for that sys_id>) plus its state/opened date on the same line. Teams supports markdown links in text, so every request stays clickable, again with no image.
One design tip: you do not need two topics for this. Keep the carousel for web if the customer likes it there, and put a channel decision at the top of the topic - if the conversation channel is Teams, go down the Choice/text branch above; otherwise use the carousel. That way the fix is contained to the one node where Teams differs, and the underlying '5 most recent requests' logic is written and maintained once.