cancel
Showing results for 
Search instead for 
Did you mean: 
Reply

Change Group/Site/Team Logo on Creation

Hi,

 

I have a flow that will create a O365 Group and Provision a Team and SharePoint site with it, when a user fills a list in that creates the sites, they can attach an image, this image I'd like to use as the site/team/group logo. But I can't seem to find a way to update this in Flow. 

 

I have tried a few different variations of using HTTP requests, with using POST to _api/groupservice/SetGroupImage I get 400 error, using the _api/Web/SiteLogoUrl and :

 

{"__metadata" : {type: 'SP.Web'}, 'SiteLogoUrl': "/sites/Projects/Lists/Clients/Attachments/161/IMAGE.png"}

 

It succeeds but it doesn't change anything. 

 

Is this possible to achieve using flow and HTTP requests? Any suggestions would be great.

 

Thanks

21 REPLIES 21
rjack
Resolver I
Resolver I

@mousman85 were you able to change the logo using flow? 

ThomasDK
Resolver II
Resolver II

Hi @mousman85,

Like @rjack I also would like to hear if you suceeded in changing the logo? If "yes", then "How?". Please show the solution 😊

@ThomasDK I don't think its possible. did lots of digging into send http request to SharePoint and also to o365 group, it doesnt have an output for logo. i had a brief look into graph, and looks like this feature is not there. will have to look into graph once again. but i believe its not possible as of this moment. 

Thanks for your reply. To my own surprise I managed to solve this. This is what I did:

 

I have a Sharepoint list where I have a Choise attribute called "Ikon" (Danish for Icon) with the choises "i1", "i2" and so on.

In my flow I have used the "Control" called "Switch" to find out which Icon I want to replace the existing with.

In Sharepoint I have a "Shared Documents" library with 4 icons/jpeg-pictures.

"Ikon value" is the value of the Choise attribute in the trigger that triggers the flow when a new row is created in my "Team request" Sharepoint list.

ThomasDK_2-1633424421547.png

 

I have made my flow like this:

ThomasDK_3-1633424455313.png

..and it works like a charm.

Thats awesome! could you please let me know the values of the highlighted expressions?

 

i believe the body is output of your compose i3?

 

rjack_0-1633476593470.png

 

Certainly 🙂

 

ThomasDK_0-1633500817845.png

1: After Team creation I get the ID of the Team/O365 Group, which is the 'targetResourceId' (@{body('Fortolk_JSON_2_(Parse_Team_request)')?['targetResourceId']} ).

Location is: https://graph.microsoft.com/beta/@{body('Fortolk_JSON_(Team_location)')?['location']}

ThomasDK_1-1633501035670.png

 

2: Output is the output of the Composed JSON which is based on the file content (the picture) from the Sharepoint document library. 

ThomasDK_3-1633502168808.png

 

 

3: The 'AuthorizationHeaderValue' is the Oauth2 bearer token refrensed in the header instead of putting it into the body every time. I used this great Blog post to figure out how to do it. Please ask if something dosen't add up.

Calling Microsoft Graph from Power Automate (and other daemon apps) with delegated permissions (laur...

 

Thanks for the input: I took the other approach so a connector is always available to use no matter which flow needs it. Here's the solution to upload image and rename a team or group.

1. Follow Create a Microsoft Graph JSON Batch Custom Connector for Power Automate - Microsoft Graph | Microsof... to create a connector.

2. Add the connector to the flow and use the body on the screenshot to rename a group or a team.

rjack_0-1633562943730.png

3. body in the below to upload a image to a team or a group.

rjack_3-1633563057570.png

4. use Graph Explorer - Microsoft Graph to find if the upload was successful or wait for it to reflect on AAD or O365.

 

 

 

I also considered creating a custom connector. It looks very seamless once created. How do you add it to the flow?

 

I also want to ask you if you have any experience in adding a SharePoint site to a Hub Site? Please see this thread as this problem makes my brain hurt:

Join site hub - Bad Gateway 502 - Power Platform Community (microsoft.com)

here you go! Note: I used the names which are provided in the MS document that i shared. I'm that lazy! lol

 

Regarding hubsite: i'm an amateur when it comes to flow. I'll look into the post and do some test. i joined a site to hubsite without approval process. but if you need approval process, i need to test. 

rjack_0-1633621342484.png

 

jg4dmin
Advocate I
Advocate I

Hello, I followed @ThomasDK's way to change a teams logo, but I'm using OAuth authentication and with the bearer token straight in the header just for testing. The flow works fine until the HTTP PUT or PATCH action. I am not sure why it will allways fail with "Internal Server Error", response code 500 and error detail: "Object reference not set to an instance of an object." Am I missing something? Any help appreciated, thank you in advance.

 

jg4dmin_0-1659559374964.png

 

rjack
Resolver I
Resolver I

Hi @jg4dmin 

 

could you please share the screenshot of your HTTP flow in edit mode?

jg4dmin
Advocate I
Advocate I

Hey there! Sure! 🤗

 

jg4dmin_0-1659560467300.png

 

to be honest, I have no idea what's wrong. but test by hardcoding the values.

rjack_0-1659561270488.png

 

Also, your header uberschriften "Authorization" shouldn't it have a value? 

 

Thank you. Personally I think it should not be a problem with my OAuth credentials, since I can successfully GET the photo content (by simply changing the HTTP method in the dropdown). In order to take a screenshot i removed the Bearer token value and put <goes here> instead (otherwise it fills the whole screen lol - I simply copied the access token from Graph API explorer).

 

Actually the header Authorization looks like so:

jg4dmin_0-1659562290347.png

 

 

 

Maybe I will try if it works with the custom connector method, which seems quite handy anyways. Still wondering what goes wrong with the current flow... Maybe this is a known issue/limitation? docs 

 

Edit: Now I have created a custom connector and tried exactly the way @rjack described. It still does not work (PUT or PATCH keep hanging until I manually cancel the flow) - and it is just the same "Internal Server Error" that I've experienced before. By the way, the image I'm trying to PUT is a 100x100px teams logo image (I copied directly from teams... I have also tried another jpg image) so this should not be the issue? This is so weird...

 

jg4dmin_0-1659647403170.png

 

Hi @jg4dmin 

 

Like "Bad GAteway" this generic error can be caused by many things. I've had it too, but can't remember in which case. I would suggest one of two ways forward:

1. Google your specific scenario and the error (you've probably already done this)

2. Use this way of authenticating (I think your error is related to this): https://laurakokkarinen.com/calling-microsoft-graph-from-microsoft-flow-and-other-daemon-apps-with-d...

 

Best of Glück,

Thomas

 

jg4dmin
Advocate I
Advocate I

Good day @ThomasDK, thank you for your suggestions! In deed, I have googled a lot to make my team provisioning flow working. In the end it turned out I had a typo on the first page of the custom connector configuration. I think after two days of debugging, I finally noticed this in Graph explorer. Power Automate never gave useful error messages regarding this stupid configuration error... But now everything works fine, I use a combination of MS Graph Batch custom connector and regular Graph API HTTP calls to accomplish the tasks, but I guess it would work with one of both alone, too - I just couldn't figure out how.

 

Still I don't get how the group photo/team photo synchronisation works and spent a lot of time "debugging" this (thinking it did not work, but actually it did work all the time!). Sometimes, the group logo is directly synced with the team logo, sometimes it takes more than 12 hours for the team logo to show up.

 

Now I have a working flow that will:

  • provision two different teams with different channel structures
  • remove the wiki tabs from all channels
  • add planner tab to a specific channel in each team (configuration not supported)
  • copy two folder structures from a central SharePoint folder to a specific channel in each team
  • create a private channel in one of the teams, if private channel owner is given in list entry
  • in the end: change the group logos (team logos) 😎

team-provisioning.png

 

Thank you guys @rjack @ThomasDK for your ideas and inspiration! If you're interested, check out this great series about teams provisioning with Power Automate by author Norm Young.

 

ThomasDK
Resolver II
Resolver II

Very nice @jg4dmin 🙂

 

I too have made a Team provisioning flow, but I only create one team like yours (no privete channels). I also made a cleanup flow to standardize all the old teams. The latter turned out to be very complex, because of the file manupulations. 

Do you also experience a very slow interface? I use the web "https://make.powerautomate.com/environments/..." interface. I think it should be possible to run it through a Desktop app, but I ended up with the "Desktop flow app" all the time. So.. what du you use? and do you experience much latency?

 

BR,

Thomas

Hi @ThomasDK - Thanks! I am not sure if I understand correctly, you mean the Power Automate interface? Yes, I am using this too - and despite some irregular hang-ups, the Power Automate "Flow editor" interface is working fast and quite reliably, at least that is my experience so far. There are differences between cloud and desktop flows, my teams provisioning flow is a cloud flow. At the moment I am trying to work with Word documents, this seems to be possible only as a "desktop flow". I do not experience much latency in both flow types - eg. my quite complex teams provisioning flow takes about 1.5-2 minutes until it is finished, including all file operations. Though sometimes there is delay/latency until you see the set group picture in teams (I am normally using the web interface for teams) 😏

Hi @jg4dmin 

Thanks for your feedback. My flow takes 10-15 minutes to finish, and I think it is the large flow that makes the interface slow. When I use some of my smaller flows it is fast and responsive enough. 

Helpful resources

Announcements

Community will be READ ONLY July 16th, 5p PDT -July 22nd

Dear Community Members,   We'd like to let you know of an upcoming change to the community platform: starting July 16th, the platform will transition to a READ ONLY mode until July 22nd.   During this period, members will not be able to Kudo, Comment, or Reply to any posts.   On July 22nd, please be on the lookout for a message sent to the email address registered on your community profile. This email is crucial as it will contain your unique code and link to register for the new platform encompassing all of the communities.   What to Expect in the New Community: A more unified experience where all products, including Power Apps, Power Automate, Copilot Studio, and Power Pages, will be accessible from one community.Community Blogs that you can syndicate and link to for automatic updates. We appreciate your understanding and cooperation during this transition. Stay tuned for the exciting new features and a seamless community experience ahead!

Check Out | 2024 Release Wave 2 Plans for Microsoft Dynamics 365 and Microsoft Power Platform

On July 16, 2024, we published the 2024 release wave 2 plans for Microsoft Dynamics 365 and Microsoft Power Platform. These plans are a compilation of the new capabilities planned to be released between October 2024 to March 2025. This release introduces a wealth of new features designed to enhance customer understanding and improve overall user experience, showcasing our dedication to driving digital transformation for our customers and partners.    The upcoming wave is centered around utilizing advanced AI and Microsoft Copilot technologies to enhance user productivity and streamline operations across diverse business applications. These enhancements include intelligent automation, AI-powered insights, and immersive user experiences that are designed to break down barriers between data, insights, and individuals. Watch a summary of the release highlights.    Discover the latest features that empower organizations to operate more efficiently and adaptively. From AI-driven sales insights and customer service enhancements to predictive analytics in supply chain management and autonomous financial processes, the new capabilities enable businesses to proactively address challenges and capitalize on opportunities.    

Summer of Solutions | Week 3 Results | Win free tickets to the Power Platform Conference

We are excited to announce the Summer of Solutions Challenge!    This challenge is kicking off on Monday, June 17th and will run for (4) weeks.  The challenge is open to all Power Platform (Power Apps, Power Automate, Copilot Studio & Power Pages) community members. We invite you to participate in a quest to provide solutions to as many questions as you can. Answers can be provided in all the communities.    Entry Period: This Challenge will consist of four weekly Entry Periods as follows (each an “Entry Period”)   - 12:00 a.m. PT on June 17, 2024 – 11:59 p.m. PT on June 23, 2024 - 12:00 a.m. PT on June 24, 2024 – 11:59 p.m. PT on June 30, 2024 - 12:00 a.m. PT on July 1, 2024 – 11:59 p.m. PT on July 7, 2024 - 12:00 a.m. PT on July 8, 2024 – 11:59 p.m. PT on July 14, 2024   Entries will be eligible for the Entry Period in which they are received and will not carryover to subsequent weekly entry periods.  You must enter into each weekly Entry Period separately.   How to Enter: We invite you to participate in a quest to provide "Accepted Solutions" to as many questions as you can. Answers can be provided in all the communities. Users must provide a solution which can be an “Accepted Solution” in the Forums in all of the communities and there are no limits to the number of “Accepted Solutions” that a member can provide for entries in this challenge, but each entry must be substantially unique and different.    Winner Selection and Prizes: At the end of each week, we will list the top ten (10) Community users which will consist of: 5 Community Members & 5 Super Users and they will advance to the final drawing. We will post each week in the News & Announcements the top 10 Solution providers.  At the end of the challenge, we will add all of the top 10 weekly names and enter them into a random drawing.  Then we will randomly select ten (10) winners (5 Community Members & 5 Super Users) from among all eligible entrants received across all weekly Entry Periods to receive the prize listed below. If a winner declines, we will draw again at random for the next winner.  A user will only be able to win once overall. If they are drawn multiple times, another user will be drawn at random.  Individuals will be contacted before the announcement with the opportunity to claim or deny the prize.  Once all of the winners have been notified, we will post in the News & Announcements of each community with the list of winners.   Each winner will receive one (1) Pass to the Power Platform Conference in Las Vegas, Sep. 18-20, 2024 ($1800 value). NOTE: Prize is for conference attendance only and any other costs such as airfare, lodging, transportation, and food are the sole responsibility of the winner. Tickets are not transferable to any other party or to next year’s event.   ** PLEASE SEE THE ATTACHED RULES for this CHALLENGE**   Week 1 Results: Congratulations to the Week 1 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge.   Community MembersNumber SolutionsSuper UsersNumber Solutions Deenuji 9 @NathanAlvares24  17 @Anil_g  7 @ManishSolanki  13 @eetuRobo  5 @David_MA  10 @VishnuReddy1997  5 @SpongYe  9JhonatanOB19932 (tie) @Nived_Nambiar  8 @maltie  2 (tie)   @PA-Noob  2 (tie)   @LukeMcG  2 (tie)   @tgut03  2 (tie)       Week 2 Results: Congratulations to the Week 2 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge. Week 2: Community MembersSolutionsSuper UsersSolutionsPower Automate  @Deenuji  12@ManishSolanki 19 @Anil_g  10 @NathanAlvares24  17 @VishnuReddy1997  6 @Expiscornovus  10 @Tjan  5 @Nived_Nambiar  10 @eetuRobo  3 @SudeepGhatakNZ 8     Week 3 Results: Congratulations to the Week 3 qualifiers, you are being entered in the random drawing that will take place at the end of the challenge. Week 3:Community MembersSolutionsSuper UsersSolutionsPower Automate Deenuji32ManishSolanki55VishnuReddy199724NathanAlvares2444Anil_g22SudeepGhatakNZ40eetuRobo18Nived_Nambiar28Tjan8David_MA22  

Updates to Transitions in the Power Platform Communities

We're embarking on a journey to enhance your experience by transitioning to a new community platform. Our team has been diligently working to create a fresh community site, leveraging the very Dynamics 365 and Power Platform tools our community advocates for.  We started this journey with transitioning Copilot Studio forums and blogs in June. The move marks the beginning of a new chapter, and we're eager for you to be a part of it. The rest of the Power Platform product sites will be moving over this summer.   Stay tuned for more updates as we get closer to the launch. We can't wait to welcome you to our new community space, designed with you in mind. Let's connect, learn, and grow together.   Here's to new beginnings and endless possibilities!   If you have any questions, observations or concerns throughout this process please go to https://aka.ms/PPCommSupport.   To stay up to date on the latest details of this migration and other important Community updates subscribe to our News and Announcements forums: Copilot Studio, Power Apps, Power Automate, Power Pages

Users online (3,055)