sharepointpower-automateoffice365apipower-platform

Create Sharepoint Site via REST API with multiple owners


So, I have a Power Automate Flow, which creates a Sharepoint Site using the Sharepoint REST API via "Send HTTP Request to Sharepoint" connector. I`ve following body:

{
  "request": {
    "Title": "@{variables('strSPName')}",
    "Url":"@{variables('strSPAddress')}",
    "Lcid": 1031,
    "ShareByEmailEnabled":true,
    "Description":"-",
    "WebTemplate":"SITEPAGEPUBLISHING#0",
    "SiteDesignId":"-",
    "Owner":  "@{outputs('Get_my_profile_(V2)')?['body/mail']}"
  }
}

So right now I have only me as owner, but I need an additional owner.

I`ve tried to set two owners in an array like this:

"Owner":  ["@{outputs('Get_my_profile_(V2)')?['body/mail']}", "email@test.com"]

Unfortunately, I`m getting the following error:

An unexpected 'StartArray' node was found when reading from the JSON reader. A 'PrimitiveValue' node was expected.

Any suggestions?

Thanks in advance.


Solution

  • As far as I am aware you can only set one owner when creating a site via the SPSiteManager endpoint. However, a workaround could be to add the second user to the Owners group directly after creation with a second POST request.

    Below is an example The principal id of the sitegroup should be 3.

    Uri

    _api/web/SiteGroups(3)/users
    

    Body

    { 
     "__metadata": { "type": "SP.User" }, 
     "LoginName":"i:0#.f|membership|jane@contoso.onmicrosoft.com"
    }
    

    enter image description here