cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
GRAEMEJOHNSON
Advocate I
Advocate I

Including a user photo in an Adaptive Card

Hi

As a proof of concept, I'm trying to build a flow that will post an adaptive card to a Teams channel with my profile mugshot in the message body.

The only components I can find to return my profile image, return the raw content, rather than a URL....is there a way to get this working?

 

2019-03-22_15h28_44.png

 

56 REPLIES 56
AlanPs1
Resident Rockstar
Resident Rockstar

Hi @GRAEMEJOHNSON , thank you for your post.

I have had a fair crack at this, I have it posting images but you won't be able to use "Get user photo (V2)". The output from that is the actual file, not a URL to a file.

 

So, to get this to work, some information on this post will be helful to you - https://sharepoint.handsontek.net/2018/10/05/how-to-get-sharepoint-profile-picture/

 

I have got it working with Graph and Delve Urls although an option could be to get the photo in the way you have, save it to SharePoint or OneDrive then call back it's Url in that way. There is a create sharing link action that will do this when in SharePoint.

 

There's a few ways to go at it but it will need to be a url that you use in your JSON for the adaptive card.

 

If you have found my post helpful, please mark thumbs up.

Any other questions, just ask.

Thanks, Alan

Well....I got this working by adding a Compose action to Base64 encode the binary image data....

 

2019-03-25_15h30_04.png

 

...then within the message body of the adaptive card, reference the Output within a 'Data' tag....

 

2019-03-25_15h31_49.png

2019-03-25_15h33_45.png

This is the end result

 

However - with other user's profile pictures it does not work!  Don't know whether it's down to some limit on the size of an adaptive card payload?

 

 

{
"error": {
"code": "MissingOrInvalidBotAdaptiveCardRequest",
"message": "The specified Teams flowbot adaptive card request is missing or invalid."
}
}

Hi Graeme.
That’s a nice solution you’ve found there. I wasn’t aware of the whole data:image parameters so glad you had shared this and I’ll be looking at the docs on that for future.

Thanks, Alan.
Anonymous
Not applicable

I was able to use this url to get the picture.  You can adjust the size using S, M, or L

Compose_String_Profile_Picture.png

 

Anonymous
Not applicable

Hi Brendan

 

Your solution does not work for me at this time.

I do not get any errors in Flow but the image is not shown in the adaptive card.

If i put the image url in a browser i can download the jpg image.

Any idea?

Gerald

Anonymous
Not applicable

@Anonymous , I noticed that the pictures from the adaptive cards I had created previously are now mysteriously gone.  I'm guessing MS changed something that broke it.  I don't have another solution at this point. 

Anonymous
Not applicable

The 'Get user photo (V2)' and 'base64' encoding is working for me for any user's photo in adaptive cards but the SharePoint profile url is not.

user photo.jpg

Dudditz
Continued Contributor
Continued Contributor

I tried using all mothods posted here, sharepoint URL just displays blanks and the method Grmae posted using the base64conversion and the flow fails with the follwoing error.

 

The specified Teams flowbot adaptive card request is missing or invalid.

 

We really need to get this working for a varieity of Adaptive cards we are building.  Any guidance is appreciated.

 

1.jpg2.jpg3.jpg

Dudditz
Continued Contributor
Continued Contributor

Worked by using the delve URL in the URL field


"/youro365domain/_vti_bin/DelveApi.ashx/people/profileimage?size=L&userId="

Anonymous
Not applicable

Thanks @Dudditz This worked for me as well.  My SharePoint url broke a few months ago and haven't been able to fix it till now.  

Dudditz
Continued Contributor
Continued Contributor

Is this still working for you?  All my images in adaptive cards are no longer working using this.  Seems silly how much screwing around this is to get an image to work.

 

/youro365domain/_vti_bin/DelveApi.ashx/people/profileimage?size=L&userId=

 

Dudditz
Continued Contributor
Continued Contributor

At this point I would love to see some documentation or some clear direction on the proper method to include an employee image from either delve, sharepoint, graph, etc.  I really don't care where it comes from, simply want to see it work.

 

Both sharepoint and delve have worked and now neither are working.  

Anonymous
Not applicable

No, not working anymore for me either.  Smiley Sad

Dudditz
Continued Contributor
Continued Contributor

I figured that, it would be great if someone could chime in here and provide some direction on the proper way to display an employee photo on an adaptive card.  I have tried every method in the post below and none of them work, some of them worked just a few weeks ago and now they all display the default no image icon.

 

 https://sharepoint.handsontek.net/2018/10/05/how-to-get-sharepoint-profile-picture/

mcorlou
Advocate I
Advocate I

Hello,

 

Facing this problem today, solved using this url : https://teams.microsoft.com/api/mt/emea/beta/users/<user mail>/profilepicturev2?displayname=<user diplay name>&voidCache=false

 

Replace bold sentences by your parameter and boom its' done !

 

Here code

 

SharedScreenshot2.jpg

 

Here results

 

SharedScreenshot.jpg

Dudditz
Continued Contributor
Continued Contributor

mcorlou that's an interesting way to do it.  Not sure what the correct URL would be for NA?  Seems strange that method requires more than simply the email and also the display name.  Could you please confirm this method actually displays the image in both the teams client and web version? 

 

I just realized the previous method I have been using has been working all along however only in the web version of teams.  Where most if not all versions stopped working is within the Teams client.

 

This is the method I am currently using works only in the web version and not the Teams client.

https://yourdomain/_vti_bin/DelveApi.ashx/people/profileimage?size=L&userId=emailaddress

I'm having the same issue with profile pic, but I'm also curious if anyone is able to see any images posted to SharePoint in the Teams desktop client.

 

I created a quick Power App that takes a photo and passes it to Flow which (does some other stuff) and eventually posts an adaptive card to Teams. I'd like to store the image in the Teams SharePoint site, but no matter what I try, I can't get it to render in the Teams client. 

 

When I post the card as the Flow Bot, the Image renders perfectly in the web version of Teams, but is completely ignored by the Teams Desktop Client. The only time I can get the Teams Desktop Client to admit that there could be an image to display is if I change the size from Auto to Small, Medium, Large, etc. It won't display the image, but at least it displays a placeholder.

 

Other relevant facts... 

  • Teams Client has no problem rendering a static map from a Google Maps URL in the card
  • Teams Client has no problem rendering the image in the card when I store it in/retrieve it from Imgur
  • I've also added a button ("View full image") that opens the image from SharePoint in a browser using the exact same URL as the destination for a button in the card

Am I crazy, or does this seem like some kind of a permission issue with the Teams client and images that require authentication?

I am trying something compareable, but not with a profile picture, but with a picture attached to a list-item.

I can include any public picture, but not the one stored in my sharepoint list which i access in the Flow.

So it seems the adaptive card, that is not send by the user itself, but as a flow-bot does not have the permisson.

 

It would be great if this could be confirmed and of course it would be great if there is any solution.

I can delete that attachment or send it to someone else by mail... wo why not send it as the flow-bot.

Helpful resources

Announcements

Celebrating the May Super User of the Month: Laurens Martens

  @LaurensM  is an exceptional contributor to the Power Platform Community. Super Users like Laurens inspire others through their example, encouragement, and active participation. We are excited to celebrated Laurens as our Super User of the Month for May 2024.   Consistent Engagement:  He consistently engages with the community by answering forum questions, sharing insights, and providing solutions. Laurens dedication helps other users find answers and overcome challenges.   Community Expertise: As a Super User, Laurens plays a crucial role in maintaining a knowledge sharing environment. Always ensuring a positive experience for everyone.   Leadership: He shares valuable insights on community growth, engagement, and future trends. Their contributions help shape the Power Platform Community.   Congratulations, Laurens Martens, for your outstanding work! Keep inspiring others and making a difference in the community!   Keep up the fantastic work!        

Check out the Copilot Studio Cookbook today!

We are excited to announce our new Copilot Cookbook Gallery in the Copilot Studio Community. We can't wait for you to share your expertise and your experience!    Join us for an amazing opportunity where you'll be one of the first to contribute to the Copilot Cookbook—your ultimate guide to mastering Microsoft Copilot. Whether you're seeking inspiration or grappling with a challenge while crafting apps, you probably already know that Copilot Cookbook is your reliable assistant, offering a wealth of tips and tricks at your fingertips--and we want you to add your expertise. What can you "cook" up?   Click this link to get started: https://aka.ms/CS_Copilot_Cookbook_Gallery   Don't miss out on this exclusive opportunity to be one of the first in the Community to share your app creation journey with Copilot. We'll be announcing a Cookbook Challenge very soon and want to make sure you one of the first "cooks" in the kitchen.   Don't miss your moment--start submitting in the Copilot Cookbook Gallery today!     Thank you,  Engagement Team

Announcing Power Apps Copilot Cookbook Gallery

We are excited to share that the all-new Copilot Cookbook Gallery for Power Apps is now available in the Power Apps Community, full of tips and tricks on how to best use Microsoft Copilot as you develop and create in Power Apps. The new Copilot Cookbook is your go-to resource when you need inspiration--or when you're stuck--and aren't sure how to best partner with Copilot while creating apps.   Whether you're looking for the best prompts or just want to know about responsible AI use, visit Copilot Cookbook for regular updates you can rely on--while also serving up some of your greatest tips and tricks for the Community. Check Out the new Copilot Cookbook for Power Apps today: Copilot Cookbook - Power Platform Community.  We can't wait to see what you "cook" up!    

Welcome to the Power Automate Community

You are now a part of a fast-growing vibrant group of peers and industry experts who are here to network, share knowledge, and even have a little fun.   Now that you are a member, you can enjoy the following resources:   Welcome to the Community   News & Announcements: The is your place to get all the latest news around community events and announcements. This is where we share with the community what is going on and how to participate.  Be sure to subscribe to this board and not miss an announcement.   Get Help with Power Automate Forums: If you're looking for support with any part of Power Automate, our forums are the place to go. From General Power Automate forums to Using Connectors, Building Flows and Using Flows.  You will find thousands of technical professionals, and Super Users with years of experience who are ready and eager to answer your questions. You now have the ability to post, reply and give "kudos" on the Power Automate community forums. Make sure you conduct a quick search before creating a new post because your question may have already been asked and answered. Galleries: The galleries are full of content and can assist you with information on creating a flow in our Webinars and Video Gallery, and the ability to share the flows you have created in the Power Automate Cookbook.  Stay connected with the Community Connections & How-To Videos from the Microsoft Community Team. Check out the awesome content being shared there today.   Power Automate Community Blog: Over the years, more than 700 Power Automate Community Blog articles have been written and published by our thriving community. Our community members have learned some excellent tips and have keen insights on the future of process automation. In the Power Automate Community Blog, you can read the latest Power Automate-related posts from our community blog authors around the world. Let us know if you'd like to become an author and contribute your own writing — everything Power Automate-related is welcome.   Community Support: Check out and learn more about Using the Community for tips & tricks. Let us know in the Community Feedback  board if you have any questions or comments about your community experience. Again, we are so excited to welcome you to the Microsoft Power Automate community family. Whether you are brand new to the world of process automation or you are a seasoned Power Automate veteran - our goal is to shape the community to be your 'go to' for support, networking, education, inspiration and encouragement as we enjoy this adventure together.     Power Automate Community Team

Hear what's next for the Power Up Program

Hear from Principal Program Manager, Dimpi Gandhi, to discover the latest enhancements to the Microsoft #PowerUpProgram, including a new accelerated video-based curriculum crafted with the expertise of Microsoft MVPs, Rory Neary and Charlie Phipps-Bennett. If you’d like to hear what’s coming next, click the link below to sign up today! https://aka.ms/PowerUp  

Tuesday Tip | How to Report Spam in Our Community

It's time for another TUESDAY TIPS, your weekly connection with the most insightful tips and tricks that empower both newcomers and veterans in the Power Platform Community! Every Tuesday, we bring you a curated selection of the finest advice, distilled from the resources and tools in the Community. Whether you’re a seasoned member or just getting started, Tuesday Tips are the perfect compass guiding you across the dynamic landscape of the Power Platform Community.   As our community family expands each week, we revisit our essential tools, tips, and tricks to ensure you’re well-versed in the community’s pulse. Keep an eye on the News & Announcements for your weekly Tuesday Tips—you never know what you may learn!   Today's Tip: How to Report Spam in Our Community We strive to maintain a professional and helpful community, and part of that effort involves keeping our platform free of spam. If you encounter a post that you believe is spam, please follow these steps to report it: Locate the Post: Find the post in question within the community.Kebab Menu: Click on the "Kebab" menu | 3 Dots, on the top right of the post.Report Inappropriate Content: Select "Report Inappropriate Content" from the menu.Submit Report: Fill out any necessary details on the form and submit your report.   Our community team will review the report and take appropriate action to ensure our community remains a valuable resource for everyone.   Thank you for helping us keep the community clean and useful!

Users online (4,025)