func (a *Client) CreateGroup(params *CreateGroupParams, authInfo runtime.ClientAuthInfoWriter) (*CreateGroupCreated, error) {
	if params == nil {
		params = NewCreateGroupParams()
	}
	result, err := a.transport.Submit(&runtime.ClientOperation{
		ID:                 "createGroup",
		Method:             "POST",
		PathPattern:        "/groups",
		ProducesMediaTypes: []string{"application/json"},
		ConsumesMediaTypes: []string{"application/json"},
		Schemes:            []string{"https"},
		Params:             params,
		Reader:             &CreateGroupReader{formats: a.formats},
		AuthInfo:           authInfo,
		Context:            params.Context,
		Client:             params.HTTPClient,
	})
	if err != nil {
		return nil, err
	}
	success, ok := result.(*CreateGroupCreated)
	if ok {
		return success, nil
	}
	msg := fmt.Sprintf("unexpected success response for createGroup: API contract not enforced by server. Client expected to get an error, but got: %T", result)
	panic(msg)
}
/*
CreateGroup creates a new group

Creates a new group.
package groups
import (
	"fmt"
	"github.com/go-openapi/runtime"
	"github.com/go-openapi/strfmt"
)
func New(transport runtime.ClientTransport, formats strfmt.Registry) ClientService {
	return &Client{transport: transport, formats: formats}
}
type Client struct {
	transport runtime.ClientTransport
	formats   strfmt.Registry
}
type ClientService interface {
	CreateGroup(params *CreateGroupParams, authInfo runtime.ClientAuthInfoWriter) (*CreateGroupCreated, error)
	EditUsersGroupAssignments(params *EditUsersGroupAssignmentsParams, authInfo runtime.ClientAuthInfoWriter) (*EditUsersGroupAssignmentsOK, error)
	ListGroups(params *ListGroupsParams, authInfo runtime.ClientAuthInfoWriter) (*ListGroupsOK, error)
	SetTransport(transport runtime.ClientTransport)
}