func (o *Institution) HasUrl() bool {
	if o != nil && o.Url.IsSet() {
		return true
	}
	return false
}
HasUrl returns a boolean if a field has been set.
package plaid
import (
	"encoding/json"
)
type Institution struct {
	InstitutionId string `json:"institution_id"`
	Name string `json:"name"`
	Products []Products `json:"products"`
	CountryCodes []CountryCode `json:"country_codes"`
	Url NullableString `json:"url,omitempty"`
	PrimaryColor NullableString `json:"primary_color,omitempty"`
	Logo NullableString `json:"logo,omitempty"`
	RoutingNumbers []string `json:"routing_numbers"`
	Oauth bool `json:"oauth"`
	Status *InstitutionStatus `json:"status,omitempty"`
	PaymentInitiationMetadata NullablePaymentInitiationMetadata `json:"payment_initiation_metadata,omitempty"`
	AuthMetadata NullableAuthMetadata `json:"auth_metadata,omitempty"`
	AdditionalProperties map[string]interface{}
}
type _Institution Institution
func NewInstitution(institutionId string, name string, products []Products, countryCodes []CountryCode, routingNumbers []string, oauth bool) *Institution {
	this := Institution{}
	this.InstitutionId = institutionId
	this.Name = name
	this.Products = products
	this.CountryCodes = countryCodes
	this.RoutingNumbers = routingNumbers
	this.Oauth = oauth
	return &this
}
func NewInstitutionWithDefaults() *Institution {
	this := Institution{}
	return &this
}
func (o *Institution) GetInstitutionId() string {
	if o == nil {
		var ret string
		return ret
	}
	return o.InstitutionId
}
func (o *Institution) GetInstitutionIdOk() (*string, bool) {
	if o == nil  {
		return nil, false
	}
	return &o.InstitutionId, true
}
func (o *Institution) SetInstitutionId(v string) {
	o.InstitutionId = v
}
func (o *Institution) GetName() string {
	if o == nil {
		var ret string
		return ret
	}
	return o.Name
}
func (o *Institution) GetNameOk() (*string, bool) {
	if o == nil  {
		return nil, false
	}
	return &o.Name, true
}
func (o *Institution) SetName(v string) {
	o.Name = v
}
func (o *Institution) GetProducts() []Products {
	if o == nil {
		var ret []Products
		return ret
	}
	return o.Products
}
func (o *Institution) GetProductsOk() (*[]Products, bool) {
	if o == nil  {
		return nil, false
	}
	return &o.Products, true
}
func (o *Institution) SetProducts(v []Products) {
	o.Products = v
}
func (o *Institution) GetCountryCodes() []CountryCode {
	if o == nil {
		var ret []CountryCode
		return ret
	}
	return o.CountryCodes
}
func (o *Institution) GetCountryCodesOk() (*[]CountryCode, bool) {
	if o == nil  {
		return nil, false
	}
	return &o.CountryCodes, true
}
func (o *Institution) SetCountryCodes(v []CountryCode) {
	o.CountryCodes = v
}
func (o *Institution) GetUrl() string {
	if o == nil || o.Url.Get() == nil {
		var ret string
		return ret
	}
	return *o.Url.Get()
}
func (o *Institution) GetUrlOk() (*string, bool) {
	if o == nil  {
		return nil, false
	}
	return o.Url.Get(), o.Url.IsSet()
}