func (o *DepositSwitchAltCreateRequest) GetCountryCodeOk() (*string, bool) {
	if o == nil  {
		return nil, false
	}
	return o.CountryCode.Get(), o.CountryCode.IsSet()
}
GetCountryCodeOk returns a tuple with the CountryCode field value if set, nil otherwise
and a boolean to check if the value has been set.
NOTE: If the value is an explicit nil, `nil, true` will be returned
package plaid
import (
	"encoding/json"
)
type DepositSwitchAltCreateRequest struct {
	ClientId *string `json:"client_id,omitempty"`
	Secret *string `json:"secret,omitempty"`
	TargetAccount DepositSwitchTargetAccount `json:"target_account"`
	TargetUser DepositSwitchTargetUser `json:"target_user"`
	Options *DepositSwitchCreateRequestOptions `json:"options,omitempty"`
	CountryCode NullableString `json:"country_code,omitempty"`
}
func NewDepositSwitchAltCreateRequest(targetAccount DepositSwitchTargetAccount, targetUser DepositSwitchTargetUser) *DepositSwitchAltCreateRequest {
	this := DepositSwitchAltCreateRequest{}
	this.TargetAccount = targetAccount
	this.TargetUser = targetUser
	return &this
}
func NewDepositSwitchAltCreateRequestWithDefaults() *DepositSwitchAltCreateRequest {
	this := DepositSwitchAltCreateRequest{}
	return &this
}
func (o *DepositSwitchAltCreateRequest) GetClientId() string {
	if o == nil || o.ClientId == nil {
		var ret string
		return ret
	}
	return *o.ClientId
}
func (o *DepositSwitchAltCreateRequest) GetClientIdOk() (*string, bool) {
	if o == nil || o.ClientId == nil {
		return nil, false
	}
	return o.ClientId, true
}
func (o *DepositSwitchAltCreateRequest) HasClientId() bool {
	if o != nil && o.ClientId != nil {
		return true
	}
	return false
}
func (o *DepositSwitchAltCreateRequest) SetClientId(v string) {
	o.ClientId = &v
}
func (o *DepositSwitchAltCreateRequest) GetSecret() string {
	if o == nil || o.Secret == nil {
		var ret string
		return ret
	}
	return *o.Secret
}
func (o *DepositSwitchAltCreateRequest) GetSecretOk() (*string, bool) {
	if o == nil || o.Secret == nil {
		return nil, false
	}
	return o.Secret, true
}
func (o *DepositSwitchAltCreateRequest) HasSecret() bool {
	if o != nil && o.Secret != nil {
		return true
	}
	return false
}
func (o *DepositSwitchAltCreateRequest) SetSecret(v string) {
	o.Secret = &v
}
func (o *DepositSwitchAltCreateRequest) GetTargetAccount() DepositSwitchTargetAccount {
	if o == nil {
		var ret DepositSwitchTargetAccount
		return ret
	}
	return o.TargetAccount
}
func (o *DepositSwitchAltCreateRequest) GetTargetAccountOk() (*DepositSwitchTargetAccount, bool) {
	if o == nil  {
		return nil, false
	}
	return &o.TargetAccount, true
}
func (o *DepositSwitchAltCreateRequest) SetTargetAccount(v DepositSwitchTargetAccount) {
	o.TargetAccount = v
}
func (o *DepositSwitchAltCreateRequest) GetTargetUser() DepositSwitchTargetUser {
	if o == nil {
		var ret DepositSwitchTargetUser
		return ret
	}
	return o.TargetUser
}
func (o *DepositSwitchAltCreateRequest) GetTargetUserOk() (*DepositSwitchTargetUser, bool) {
	if o == nil  {
		return nil, false
	}
	return &o.TargetUser, true
}
func (o *DepositSwitchAltCreateRequest) SetTargetUser(v DepositSwitchTargetUser) {
	o.TargetUser = v
}
func (o *DepositSwitchAltCreateRequest) GetOptions() DepositSwitchCreateRequestOptions {
	if o == nil || o.Options == nil {
		var ret DepositSwitchCreateRequestOptions
		return ret
	}
	return *o.Options
}
func (o *DepositSwitchAltCreateRequest) GetOptionsOk() (*DepositSwitchCreateRequestOptions, bool) {
	if o == nil || o.Options == nil {
		return nil, false
	}
	return o.Options, true
}
func (o *DepositSwitchAltCreateRequest) HasOptions() bool {
	if o != nil && o.Options != nil {
		return true
	}
	return false
}
func (o *DepositSwitchAltCreateRequest) SetOptions(v DepositSwitchCreateRequestOptions) {
	o.Options = &v
}
func (o *DepositSwitchAltCreateRequest) GetCountryCode() string {
	if o == nil || o.CountryCode.Get() == nil {
		var ret string
		return ret
	}
	return *o.CountryCode.Get()
}