docs: def update_membership_memberships(self, group_id, membership_id, moderator=None, workflow_state=None):
          """
          Update a membership.
  
          Accept a membership request, or add/remove moderator rights.
          """
          path = {}
          data = {}
          params = {}
  
          # REQUIRED - PATH - group_id
          """ID"""
          path["group_id"] = group_id
  
          # REQUIRED - PATH - membership_id
          """ID"""
          path["membership_id"] = membership_id
  
          # OPTIONAL - workflow_state
          """Currently, the only allowed value is "accepted""""
          if workflow_state is not None:
              self._validate_enum(workflow_state, ["accepted"])
              data["workflow_state"] = workflow_state
  
          # OPTIONAL - moderator
          """no description"""
          if moderator is not None:
              data["moderator"] = moderator
  
          self.logger.debug("PUT /api/v1/groups/{group_id}/memberships/{membership_id} with query params: {params} and form data: {data}".format(params=params, data=data, **path))
          return self.generic_request("PUT", "/api/v1/groups/{group_id}/memberships/{membership_id}".format(**path), data=data, params=params, single_item=True)