func (a *Client) UpdateAWSAccounts(params *UpdateAWSAccountsParams, opts ...ClientOption) (*UpdateAWSAccountsOK, error) {
	if params == nil {
		params = NewUpdateAWSAccountsParams()
	}
	op := &runtime.ClientOperation{
		ID:                 "UpdateAWSAccounts",
		Method:             "PATCH",
		PathPattern:        "/cloud-connect-aws/entities/accounts/v1",
		ProducesMediaTypes: []string{"application/json"},
		ConsumesMediaTypes: []string{"application/json"},
		Schemes:            []string{"https"},
		Params:             params,
		Reader:             &UpdateAWSAccountsReader{formats: a.formats},
		Context:            params.Context,
		Client:             params.HTTPClient,
	}
	for _, opt := range opts {
		opt(op)
	}
	result, err := a.transport.Submit(op)
	if err != nil {
		return nil, err
	}
	success, ok := result.(*UpdateAWSAccountsOK)
	if ok {
		return success, nil
	}
	unexpectedSuccess := result.(*UpdateAWSAccountsDefault)
	return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code())
}
/*
UpdateAWSAccounts updates a w s accounts by specifying the ID of the account and details to update
package cloud_connect_aws
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 ClientOption func(*runtime.ClientOperation)
type ClientService interface {
	CreateOrUpdateAWSSettings(params *CreateOrUpdateAWSSettingsParams, opts ...ClientOption) (*CreateOrUpdateAWSSettingsCreated, error)
	DeleteAWSAccounts(params *DeleteAWSAccountsParams, opts ...ClientOption) (*DeleteAWSAccountsOK, error)
	GetAWSAccounts(params *GetAWSAccountsParams, opts ...ClientOption) (*GetAWSAccountsOK, error)
	GetAWSSettings(params *GetAWSSettingsParams, opts ...ClientOption) (*GetAWSSettingsOK, error)
	ProvisionAWSAccounts(params *ProvisionAWSAccountsParams, opts ...ClientOption) (*ProvisionAWSAccountsCreated, error)
	QueryAWSAccounts(params *QueryAWSAccountsParams, opts ...ClientOption) (*QueryAWSAccountsOK, error)
	QueryAWSAccountsForIDs(params *QueryAWSAccountsForIDsParams, opts ...ClientOption) (*QueryAWSAccountsForIDsOK, error)
	UpdateAWSAccounts(params *UpdateAWSAccountsParams, opts ...ClientOption) (*UpdateAWSAccountsOK, error)
	VerifyAWSAccountAccess(params *VerifyAWSAccountAccessParams, opts ...ClientOption) (*VerifyAWSAccountAccessOK, error)
	SetTransport(transport runtime.ClientTransport)
}
func (a *Client) CreateOrUpdateAWSSettings(params *CreateOrUpdateAWSSettingsParams, opts ...ClientOption) (*CreateOrUpdateAWSSettingsCreated, error) {
	if params == nil {
		params = NewCreateOrUpdateAWSSettingsParams()
	}
	op := &runtime.ClientOperation{
		ID:                 "CreateOrUpdateAWSSettings",
		Method:             "POST",
		PathPattern:        "/cloud-connect-aws/entities/settings/v1",
		ProducesMediaTypes: []string{"application/json"},
		ConsumesMediaTypes: []string{"application/json"},
		Schemes:            []string{"https"},
		Params:             params,
		Reader:             &CreateOrUpdateAWSSettingsReader{formats: a.formats},
		Context:            params.Context,
		Client:             params.HTTPClient,
	}
	for _, opt := range opts {
		opt(op)
	}
	result, err := a.transport.Submit(op)
	if err != nil {
		return nil, err
	}
	success, ok := result.(*CreateOrUpdateAWSSettingsCreated)
	if ok {
		return success, nil
	}
	msg := fmt.Sprintf("unexpected success response for CreateOrUpdateAWSSettings: API contract not enforced by server. Client expected to get an error, but got: %T", result)
	panic(msg)
}
func (a *Client) DeleteAWSAccounts(params *DeleteAWSAccountsParams, opts ...ClientOption) (*DeleteAWSAccountsOK, error) {
	if params == nil {
		params = NewDeleteAWSAccountsParams()
	}
	op := &runtime.ClientOperation{
		ID:                 "DeleteAWSAccounts",
		Method:             "DELETE",
		PathPattern:        "/cloud-connect-aws/entities/accounts/v1",
		ProducesMediaTypes: []string{"application/json"},
		ConsumesMediaTypes: []string{"application/json"},
		Schemes:            []string{"https"},
		Params:             params,
		Reader:             &DeleteAWSAccountsReader{formats: a.formats},
		Context:            params.Context,
		Client:             params.HTTPClient,
	}
	for _, opt := range opts {
		opt(op)
	}
	result, err := a.transport.Submit(op)
	if err != nil {
		return nil, err
	}
	success, ok := result.(*DeleteAWSAccountsOK)
	if ok {
		return success, nil
	}
	unexpectedSuccess := result.(*DeleteAWSAccountsDefault)
	return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code())
}
func (a *Client) GetAWSAccounts(params *GetAWSAccountsParams, opts ...ClientOption) (*GetAWSAccountsOK, error) {
	if params == nil {
		params = NewGetAWSAccountsParams()
	}
	op := &runtime.ClientOperation{
		ID:                 "GetAWSAccounts",
		Method:             "GET",
		PathPattern:        "/cloud-connect-aws/entities/accounts/v1",
		ProducesMediaTypes: []string{"application/json"},
		ConsumesMediaTypes: []string{"application/json"},
		Schemes:            []string{"https"},
		Params:             params,
		Reader:             &GetAWSAccountsReader{formats: a.formats},
		Context:            params.Context,
		Client:             params.HTTPClient,
	}
	for _, opt := range opts {
		opt(op)
	}
	result, err := a.transport.Submit(op)
	if err != nil {
		return nil, err
	}
	success, ok := result.(*GetAWSAccountsOK)
	if ok {
		return success, nil
	}
	unexpectedSuccess := result.(*GetAWSAccountsDefault)
	return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code())
}
func (a *Client) GetAWSSettings(params *GetAWSSettingsParams, opts ...ClientOption) (*GetAWSSettingsOK, error) {
	if params == nil {
		params = NewGetAWSSettingsParams()
	}
	op := &runtime.ClientOperation{
		ID:                 "GetAWSSettings",
		Method:             "GET",
		PathPattern:        "/cloud-connect-aws/combined/settings/v1",
		ProducesMediaTypes: []string{"application/json"},
		ConsumesMediaTypes: []string{"application/json"},
		Schemes:            []string{"https"},
		Params:             params,
		Reader:             &GetAWSSettingsReader{formats: a.formats},
		Context:            params.Context,
		Client:             params.HTTPClient,
	}
	for _, opt := range opts {
		opt(op)
	}
	result, err := a.transport.Submit(op)
	if err != nil {
		return nil, err
	}
	success, ok := result.(*GetAWSSettingsOK)
	if ok {
		return success, nil
	}
	unexpectedSuccess := result.(*GetAWSSettingsDefault)
	return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code())
}
func (a *Client) ProvisionAWSAccounts(params *ProvisionAWSAccountsParams, opts ...ClientOption) (*ProvisionAWSAccountsCreated, error) {
	if params == nil {
		params = NewProvisionAWSAccountsParams()
	}
	op := &runtime.ClientOperation{
		ID:                 "ProvisionAWSAccounts",
		Method:             "POST",
		PathPattern:        "/cloud-connect-aws/entities/accounts/v1",
		ProducesMediaTypes: []string{"application/json"},
		ConsumesMediaTypes: []string{"application/json"},
		Schemes:            []string{"https"},
		Params:             params,
		Reader:             &ProvisionAWSAccountsReader{formats: a.formats},
		Context:            params.Context,
		Client:             params.HTTPClient,
	}
	for _, opt := range opts {
		opt(op)
	}
	result, err := a.transport.Submit(op)
	if err != nil {
		return nil, err
	}
	success, ok := result.(*ProvisionAWSAccountsCreated)
	if ok {
		return success, nil
	}
	msg := fmt.Sprintf("unexpected success response for ProvisionAWSAccounts: API contract not enforced by server. Client expected to get an error, but got: %T", result)
	panic(msg)
}
func (a *Client) QueryAWSAccounts(params *QueryAWSAccountsParams, opts ...ClientOption) (*QueryAWSAccountsOK, error) {
	if params == nil {
		params = NewQueryAWSAccountsParams()
	}
	op := &runtime.ClientOperation{
		ID:                 "QueryAWSAccounts",
		Method:             "GET",
		PathPattern:        "/cloud-connect-aws/combined/accounts/v1",
		ProducesMediaTypes: []string{"application/json"},
		ConsumesMediaTypes: []string{"application/json"},
		Schemes:            []string{"https"},
		Params:             params,
		Reader:             &QueryAWSAccountsReader{formats: a.formats},
		Context:            params.Context,
		Client:             params.HTTPClient,
	}
	for _, opt := range opts {
		opt(op)
	}
	result, err := a.transport.Submit(op)
	if err != nil {
		return nil, err
	}
	success, ok := result.(*QueryAWSAccountsOK)
	if ok {
		return success, nil
	}
	unexpectedSuccess := result.(*QueryAWSAccountsDefault)
	return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code())
}
func (a *Client) QueryAWSAccountsForIDs(params *QueryAWSAccountsForIDsParams, opts ...ClientOption) (*QueryAWSAccountsForIDsOK, error) {
	if params == nil {
		params = NewQueryAWSAccountsForIDsParams()
	}
	op := &runtime.ClientOperation{
		ID:                 "QueryAWSAccountsForIDs",
		Method:             "GET",
		PathPattern:        "/cloud-connect-aws/queries/accounts/v1",
		ProducesMediaTypes: []string{"application/json"},
		ConsumesMediaTypes: []string{"application/json"},
		Schemes:            []string{"https"},
		Params:             params,
		Reader:             &QueryAWSAccountsForIDsReader{formats: a.formats},
		Context:            params.Context,
		Client:             params.HTTPClient,
	}
	for _, opt := range opts {
		opt(op)
	}
	result, err := a.transport.Submit(op)
	if err != nil {
		return nil, err
	}
	success, ok := result.(*QueryAWSAccountsForIDsOK)
	if ok {
		return success, nil
	}
	unexpectedSuccess := result.(*QueryAWSAccountsForIDsDefault)
	return nil, runtime.NewAPIError("unexpected success response: content available as default response in error", unexpectedSuccess, unexpectedSuccess.Code())
}