Skip to content

Fix SCIMService.UpdateProvisionedOrgMembership and SCIMService.UpdateAttributeForSCIMUser #4301

@alexandear

Description

@alexandear

Two SCIMService methods in github/scim.go have implementations that don't match the GitHub API schema:

Both are breaking changes to fix.

Problems:

  • Parameters are passed as query parameters, but must be in the body
  • Missing return type
  • UpdateAttributeForSCIMUserOptions.Operations should be an array of objects
  • maybe some other; see documentation for these endpoints

UpdateProvisionedOrgMembership

Current signature:

func (s *SCIMService) UpdateProvisionedOrgMembership(ctx context.Context, org, scimUserID string, opts *SCIMUserAttributes) (*Response, error)

Expected signature:

func (s *SCIMService) UpdateProvisionedOrgMembership(ctx context.Context, org, scimUserID string, body UpdateProvisionedOrgMembershipRequest) (*SCIMUserAttributes, *Response, error)

UpdateAttributeForSCIMUser

Current signature:

func (s *SCIMService) UpdateAttributeForSCIMUser(ctx context.Context, org, scimUserID string, opts *UpdateAttributeForSCIMUserOptions) (*Response, error)

Expected signature:

func (s *SCIMService) UpdateAttributeForSCIMUser(ctx context.Context, org, scimUserID string, body UpdateAttributeForSCIMUserRequest) (*SCIMUserAttributes, *Response, error)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Breaking API ChangePR will require a bump to the major version num in next release. Look here to see the change(s).

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions