Skip to content

Fix broken add-owner/add-member Graph calls in Groups utilities#1247

Merged
gautamdsheth merged 2 commits into
pnp:devfrom
pointwork-a-s:fix/member-owner-graph-calls
Jul 4, 2026
Merged

Fix broken add-owner/add-member Graph calls in Groups utilities#1247
gautamdsheth merged 2 commits into
pnp:devfrom
pointwork-a-s:fix/member-owner-graph-calls

Conversation

@singingknight

Copy link
Copy Markdown
Contributor

UpdateOwners/UpdateMembers in both GroupsUtility and UnifiedGroupsUtility passed accessToken positionally into MakePostRequest parameter 2, which is the request body (object content) - not the access token. This sent the token as the POST body with no auth header and no @odata.id reference payload, so adding owners/members was non-functional. The bug came from the Graph SDK -> HttpHelper migration (2435d06, cf619ed).

Align all four add/remove paths with the working ObjectTeams pattern:

  • POST .../{owners|members}/$ref with an {"@odata.id": ".../users/{id}"} body, application/json content type, and accessToken in the correct slot
  • Correct the DELETE reference URLs from /ref to /$ref

singingknight and others added 2 commits July 3, 2026 10:16
UpdateOwners/UpdateMembers in both GroupsUtility and UnifiedGroupsUtility
passed accessToken positionally into MakePostRequest parameter 2, which is
the request body (object content) - not the access token. This sent the
token as the POST body with no auth header and no @odata.id reference
payload, so adding owners/members was non-functional. The bug came from the
Graph SDK -> HttpHelper migration (2435d06, cf619ed).

Align all four add/remove paths with the working ObjectTeams pattern:
- POST .../{owners|members}/$ref with an {"@odata.id": ".../users/{id}"}
  body, application/json content type, and accessToken in the correct slot
- Correct the DELETE reference URLs from /ref to /$ref

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
RemoveGroupMembers/RemoveGroupOwners and RemoveUnifiedGroupMembers/
RemoveUnifiedGroupOwners build their DELETE reference URL with /ref instead
of /$ref, so member/owner removal via these methods (and the Clear* methods
that delegate to them) hit an invalid Graph endpoint. Correct the four sites
to /$ref, matching the Update* methods and the ObjectTeams pattern.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@gautamdsheth gautamdsheth merged commit 5f36669 into pnp:dev Jul 4, 2026
1 check passed
@gautamdsheth

Copy link
Copy Markdown
Collaborator

Thanks a lot @singingknight for fixing this, much appreciated !!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants