I'm playing around with flow and its interactions with SharePoint groups as we may introduce it to help people deal with adding and removing people from groups in their SharePoint sites. I've managed the removing people from a group however adding people is causing a bit more of an issue, so far I've got thus far.
This is based off the answer to a question found here (I've tried others but have they have failed as well)
the response I get is this:
{"status":400,"message":"Invalid JSON. A token was not recognized in the JSON content.\r\nclientRequestId: a17802ed-7bcb-442d-9609-fb377ff7c64a\r\nserviceRequestId: cb65ea9e-2063-8000-cb92-ffd9b8e51734","source":"https://"MYDOMAIN".sharepoint.com/sites/ITServices/_api/web/SiteGroups/GetById(911)/Users","errors":["-1","Microsoft.SharePoint.Client.InvalidClientQueryException"]}
Any help would be appreciated thanks!
Solved! Go to Solution.
Hi @TetumTede
This is what worked for me
Ensure your group id is correct in SharePoint
For LoginName you have to add i:0#.f|membership| before login name
Also check the JSON quotes - try being consistent - all single quotes
Regards,
Reza Dorrani
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly
Hi @TetumTede
This is what worked for me
Ensure your group id is correct in SharePoint
For LoginName you have to add i:0#.f|membership| before login name
Also check the JSON quotes - try being consistent - all single quotes
Regards,
Reza Dorrani
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly
The above step worked for single user. is it possible to add multiple users in a group using flow? if so, could you please share the syntax?
Hi @mhussain18
Sorry for the delay I've been on holiday;
I don't know for certain how to do that, but my guess is putting the email addresses of the people you wan't to add in an array let's say "People", then use a for each item in "People" to iterate through the array doing the above as suggested by RezaDorrani.
Hope that helps you to get started
When someone posts the solution (that is smart and useful, btw), wouldn't be logic to post the text so one can copy/paste it instead of having to type it?
I am getting the same result as the original question in this post. Here is what I am doing:
I have verified that the Site Address and URI are both fully functioning. The error result is this:
"BadRequest."
Invalid JSON. The property name '' is not valid. The name of a property cannot be empty.
clientRequestId: f6aec2b4-822d-4a6e-90e9-f4aa0162d182
serviceRequestId: b499689f-e0a8-0000-6122-5f43f6ec0327
To be easier to read here is what I have for the Headers:
{
"accept": "application/json;odata=verbose",
"content-type": "application/json;odata=verbose"
}
and the Body:
{
'_metadata':{'type':'SP.User'},
‘LoginName’:’i:0#.f|membership|user@contoso.com’}
where "user" and "contoso" are real userid and company name respectively.
The outputs are as follows:
Headers -
Pragma no-cache
x-ms-request-id b499689f-e0a8-0000-6122-5f43f6ec0327
Strict-Transport-Security max-age=31536000; includeSubDomains
X-Content-Type-Options nosniff
X-Frame-Options DENY
Timing-Allow-Origin *
x-ms-apihub-cached-response true
Cache-Control no-store, no-cache
Date Wed, 22 Jul 2020 16:49:52 GMT
Set-Cookie ARRAffinity=794ef11ee2e3a090db5d7dd8384faeb8d6b242b69c163737874eea85e94455e8;Path=/;HttpOnly;Domain=sharepointonline-wus.azconn-wus.p.azurewebsites.net
Content-Length 457
Content-Type application/json
Expires
Body -
{
"status": 400,
"message": "Invalid JSON. The property name '' is not valid. The name of a property cannot be empty.\r\nclientRequestId: f6aec2b4-822d-4a6e-90e9-f4aa0162d182\r\nserviceRequestId: b499689f-e0a8-0000-6122-5f43f6ec0327",
"source": "https://contoso.sharepoint.com/sites/planning-test/_api/web/SiteGroups/GetById(37)/Users",
"errors": [
"-1",
"Microsoft.SharePoint.Client.InvalidClientQueryException"
]
} -1
I hope someone can help me understand why I am getting the blank property name or basically why this is not writing the user's email address into my SharePoint Group.
Thanks,
@LuckDragon: It is two (2) underscores before "metadata" in the body. Looks like you only have one. Also, make sure those are all straight (normal) quotes instead of curly quotes. Looks like the ones on the line for LoginName are curly (a whole different character to the computer).
Hi @RezaDorrani
there are some emails which contains single quotes like (xyz'abc@domain), for those particular emails this action action card is giving error of invalid JSON.
@RezaDorrani Reza, how would you adapt this to initiate the user add from a button in PowerApps. So, basically, user hits a button and is added to an SP list.
User | Count |
---|---|
89 | |
37 | |
26 | |
13 | |
12 |
User | Count |
---|---|
128 | |
53 | |
38 | |
26 | |
21 |