code: func (api *Client) CreateUserGroupContext(ctx context.Context, userGroup UserGroup) (UserGroup, error) {
  	values := url.Values{
  		"token": {api.token},
  		"name":  {userGroup.Name},
  	}
  
  	if userGroup.Handle != "" {
  		values["handle"] = []string{userGroup.Handle}
  	}
  
  	if userGroup.Description != "" {
  		values["description"] = []string{userGroup.Description}
  	}
  
  	if len(userGroup.Prefs.Channels) > 0 {
  		values["channels"] = []string{strings.Join(userGroup.Prefs.Channels, ",")}
  	}
  
  	response, err := api.userGroupRequest(ctx, "usergroups.create", values)
  	if err != nil {
  		return UserGroup{}, err
  	}
  	return response.UserGroup, nil
  }
docs: // CreateUserGroupContext creates a new user group with a custom context