class SwaggerClient::AddClientRequest
Attributes
The client’s current [account balance](mindbody-online-support.force.com/support/s/article/203262013-Adding-account-payments-video-tutorial?language=en_US).
The action taken.
When `true`, indicates that the client is active at the site.<br /> When `false`, indicates that the client is not active at the site.
The first line of the client’s street address.
The second line of the client’s street address, if needed.
When `true`, indicates that the client prefers services to be provided by a male service provider.<br /> When `false`, indicates that the client prefers services to be provided by a female service provider.<br /> When `null`, indicates that the client has no preference. Default: null
The client’s date of birth.
The client’s city.
Contains information about the client’s credit card.
Contains a list of the indexes and client index values to be assigned to the client.
Contains information about client relationships to be assigned to the client.
The country in which the client is located.
The date when the client was added to the business, either by the client from the online store or by a staff member at the subscriber’s business. This value always returns in the format yyyy-mm-ddThh:mm:ss:ms.
Contains information about the custom fields to be assigned to the client.
The client’s email address.
The email address of the client’s emergency contact.<br /> For more information, see [Children’s program features(emergency contact information)](support.mindbodyonline.com/s/article/203259283-Children-s-program-features-emergency-contact-information?language=en_US).
The name of the client’s emergency contact.
The phone number of the client’s emergency contact.
The client’s relationship with the emergency contact, for example, mother or spouse.
The date of the client’s first booked appointment at the business.
The client’s first name. You must specify a first name when you add a client.
The client’s gender.
Sets the client’s home location to the passed location, based on its ID.
The client’s home phone number.
When `true`, indicates that the client should be marked as a company at the business.<br /> When `false`, indicates the client is an individual and does not represent a company.
This value is set only if the business owner allows individuals to be prospects.<br /> When `true`, indicates that the client should be marked as a prospect for the business.<br /> When `false`, indicates that the client should not be marked as a prospect for the business.
The last [formula note](support.mindbodyonline.com/s/article/203259903-Appointments-Formula-notes?language=en_US) entered for the client.
The UTC date and time when the client’s information was last modified.
The client’s last name. You must specify a last name when you add a client.
Contains the client’s liability agreement information for the business.
Passing `true` sets the client’s liability information as follows: * `IsReleased` is set to `true`. * `AgreementDate` is set to the time zone of the business when the call was processed. * `ReleasedBy` is set to `null` if the call is made by the client, `0` if the call was made by the business owner, or to a specific staff member’s ID if a staff member made the call. Passing `false` sets the client’s liability information as follows: * `IsReleased` is set to `false`. * `AgreementDate` is set to `null`. * `ReleasedBy` is set to `null`.
The ID of the membership icon displayed next to the client’s name, if the client has a membership on their account.
The client’s middle name.
The client’s mobile phone number.
The client's mobile provider.
When passed, sets the client's ID to this value. Otherwise, the client's ID will match their `UniqueId`.
Any notes entered on the client’s account by staff members. This value should never be shown to clients unless the business owner has a specific reason for showing them.
The URL for the client’s photo, if one has been uploaded.
The client’s postal code.
Contains information about the client [prospect stage](support.mindbodyonline.com/s/article/206176457-Prospect-Stages?language=en_US).
Contains any red alert information entered by the business owner for the client.
Specifies how the client was referred to the business. You can get a list of possible strings using the `GET ClientReferralTypes` endpoint.<br /> For more information, see [Referral types and referral subtypes](support.mindbodyonline.com/s/article/203259393-Referral-types-and-referral-subtypes?language=en_US).
Contains information about the sales representatives to be assigned to the new client.
When `true`, indicates that the client opts to receive account emails.
When `true`, indicates that the client opts to receive promotional emails.
When `true`, indicates that the client opts to receive schedule emails.
The ID of the site.
The client’s state.
The client’s status.
When `true`, indicates that test mode is enabled. The method is validated, but no client data is added or updated.<br /> Default: false
The client’s system-generated ID at the business. This value cannot be changed by business owners and is always unique across all clients at the business. This ID is not widely used in the Public API, but can be used by your application to uniquely identify clients.
The client’s work phone extension number.
The client’s work phone number.
Contains any yellow alert information entered by the business owner for the client.
Public Class Methods
Attribute mapping from ruby-style variable name to JSON key.
# File lib/swagger_client/models/add_client_request.rb, line 202 def self.attribute_map { :'account_balance' => :'AccountBalance', :'action' => :'Action', :'active' => :'Active', :'address_line1' => :'AddressLine1', :'address_line2' => :'AddressLine2', :'appt_gender_pref_male' => :'ApptGenderPrefMale', :'birth_date' => :'BirthDate', :'city' => :'City', :'client_credit_card' => :'ClientCreditCard', :'client_indexes' => :'ClientIndexes', :'client_relationships' => :'ClientRelationships', :'country' => :'Country', :'creation_date' => :'CreationDate', :'custom_client_fields' => :'CustomClientFields', :'email' => :'Email', :'emergency_contact_info_email' => :'EmergencyContactInfoEmail', :'emergency_contact_info_name' => :'EmergencyContactInfoName', :'emergency_contact_info_phone' => :'EmergencyContactInfoPhone', :'emergency_contact_info_relationship' => :'EmergencyContactInfoRelationship', :'first_appointment_date' => :'FirstAppointmentDate', :'first_name' => :'FirstName', :'gender' => :'Gender', :'home_location' => :'HomeLocation', :'home_phone' => :'HomePhone', :'is_company' => :'IsCompany', :'is_prospect' => :'IsProspect', :'last_formula_notes' => :'LastFormulaNotes', :'last_modified_date_time' => :'LastModifiedDateTime', :'last_name' => :'LastName', :'liability' => :'Liability', :'liability_release' => :'LiabilityRelease', :'membership_icon' => :'MembershipIcon', :'middle_name' => :'MiddleName', :'mobile_phone' => :'MobilePhone', :'mobile_provider' => :'MobileProvider', :'new_id' => :'NewId', :'notes' => :'Notes', :'photo_url' => :'PhotoUrl', :'postal_code' => :'PostalCode', :'prospect_stage' => :'ProspectStage', :'red_alert' => :'RedAlert', :'referred_by' => :'ReferredBy', :'sales_reps' => :'SalesReps', :'site_id' => :'SiteId', :'state' => :'State', :'status' => :'Status', :'test' => :'Test', :'unique_id' => :'UniqueId', :'work_extension' => :'WorkExtension', :'work_phone' => :'WorkPhone', :'yellow_alert' => :'YellowAlert', :'send_schedule_emails' => :'SendScheduleEmails', :'send_account_emails' => :'SendAccountEmails', :'send_promotional_emails' => :'SendPromotionalEmails' } end
Initializes the object @param [Hash] attributes Model attributes in the form of hash
# File lib/swagger_client/models/add_client_request.rb, line 323 def initialize(attributes = {}) return unless attributes.is_a?(Hash) # convert string to symbol for hash key attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v } if attributes.has_key?(:'AccountBalance') self.account_balance = attributes[:'AccountBalance'] end if attributes.has_key?(:'Action') self.action = attributes[:'Action'] end if attributes.has_key?(:'Active') self.active = attributes[:'Active'] end if attributes.has_key?(:'AddressLine1') self.address_line1 = attributes[:'AddressLine1'] end if attributes.has_key?(:'AddressLine2') self.address_line2 = attributes[:'AddressLine2'] end if attributes.has_key?(:'ApptGenderPrefMale') self.appt_gender_pref_male = attributes[:'ApptGenderPrefMale'] end if attributes.has_key?(:'BirthDate') self.birth_date = attributes[:'BirthDate'] end if attributes.has_key?(:'City') self.city = attributes[:'City'] end if attributes.has_key?(:'ClientCreditCard') self.client_credit_card = attributes[:'ClientCreditCard'] end if attributes.has_key?(:'ClientIndexes') if (value = attributes[:'ClientIndexes']).is_a?(Array) self.client_indexes = value end end if attributes.has_key?(:'ClientRelationships') if (value = attributes[:'ClientRelationships']).is_a?(Array) self.client_relationships = value end end if attributes.has_key?(:'Country') self.country = attributes[:'Country'] end if attributes.has_key?(:'CreationDate') self.creation_date = attributes[:'CreationDate'] end if attributes.has_key?(:'CustomClientFields') if (value = attributes[:'CustomClientFields']).is_a?(Array) self.custom_client_fields = value end end if attributes.has_key?(:'Email') self.email = attributes[:'Email'] end if attributes.has_key?(:'EmergencyContactInfoEmail') self.emergency_contact_info_email = attributes[:'EmergencyContactInfoEmail'] end if attributes.has_key?(:'EmergencyContactInfoName') self.emergency_contact_info_name = attributes[:'EmergencyContactInfoName'] end if attributes.has_key?(:'EmergencyContactInfoPhone') self.emergency_contact_info_phone = attributes[:'EmergencyContactInfoPhone'] end if attributes.has_key?(:'EmergencyContactInfoRelationship') self.emergency_contact_info_relationship = attributes[:'EmergencyContactInfoRelationship'] end if attributes.has_key?(:'FirstAppointmentDate') self.first_appointment_date = attributes[:'FirstAppointmentDate'] end if attributes.has_key?(:'FirstName') self.first_name = attributes[:'FirstName'] end if attributes.has_key?(:'Gender') self.gender = attributes[:'Gender'] end if attributes.has_key?(:'HomeLocation') self.home_location = attributes[:'HomeLocation'] end if attributes.has_key?(:'HomePhone') self.home_phone = attributes[:'HomePhone'] end if attributes.has_key?(:'IsCompany') self.is_company = attributes[:'IsCompany'] end if attributes.has_key?(:'IsProspect') self.is_prospect = attributes[:'IsProspect'] end if attributes.has_key?(:'LastFormulaNotes') self.last_formula_notes = attributes[:'LastFormulaNotes'] end if attributes.has_key?(:'LastModifiedDateTime') self.last_modified_date_time = attributes[:'LastModifiedDateTime'] end if attributes.has_key?(:'LastName') self.last_name = attributes[:'LastName'] end if attributes.has_key?(:'Liability') self.liability = attributes[:'Liability'] end if attributes.has_key?(:'LiabilityRelease') self.liability_release = attributes[:'LiabilityRelease'] end if attributes.has_key?(:'MembershipIcon') self.membership_icon = attributes[:'MembershipIcon'] end if attributes.has_key?(:'MiddleName') self.middle_name = attributes[:'MiddleName'] end if attributes.has_key?(:'MobilePhone') self.mobile_phone = attributes[:'MobilePhone'] end if attributes.has_key?(:'MobileProvider') self.mobile_provider = attributes[:'MobileProvider'] end if attributes.has_key?(:'NewId') self.new_id = attributes[:'NewId'] end if attributes.has_key?(:'Notes') self.notes = attributes[:'Notes'] end if attributes.has_key?(:'PhotoUrl') self.photo_url = attributes[:'PhotoUrl'] end if attributes.has_key?(:'PostalCode') self.postal_code = attributes[:'PostalCode'] end if attributes.has_key?(:'ProspectStage') self.prospect_stage = attributes[:'ProspectStage'] end if attributes.has_key?(:'RedAlert') self.red_alert = attributes[:'RedAlert'] end if attributes.has_key?(:'ReferredBy') self.referred_by = attributes[:'ReferredBy'] end if attributes.has_key?(:'SalesReps') if (value = attributes[:'SalesReps']).is_a?(Array) self.sales_reps = value end end if attributes.has_key?(:'SiteId') self.site_id = attributes[:'SiteId'] end if attributes.has_key?(:'State') self.state = attributes[:'State'] end if attributes.has_key?(:'Status') self.status = attributes[:'Status'] end if attributes.has_key?(:'Test') self.test = attributes[:'Test'] end if attributes.has_key?(:'UniqueId') self.unique_id = attributes[:'UniqueId'] end if attributes.has_key?(:'WorkExtension') self.work_extension = attributes[:'WorkExtension'] end if attributes.has_key?(:'WorkPhone') self.work_phone = attributes[:'WorkPhone'] end if attributes.has_key?(:'YellowAlert') self.yellow_alert = attributes[:'YellowAlert'] end if attributes.has_key?(:'SendScheduleEmails') self.send_schedule_emails = attributes[:'SendScheduleEmails'] end if attributes.has_key?(:'SendAccountEmails') self.send_account_emails = attributes[:'SendAccountEmails'] end if attributes.has_key?(:'SendPromotionalEmails') self.send_promotional_emails = attributes[:'SendPromotionalEmails'] end end
Attribute type mapping.
# File lib/swagger_client/models/add_client_request.rb, line 262 def self.swagger_types { :'account_balance' => :'Float', :'action' => :'String', :'active' => :'BOOLEAN', :'address_line1' => :'String', :'address_line2' => :'String', :'appt_gender_pref_male' => :'BOOLEAN', :'birth_date' => :'DateTime', :'city' => :'String', :'client_credit_card' => :'ClientCreditCard', :'client_indexes' => :'Array<AssignedClientIndex>', :'client_relationships' => :'Array<ClientRelationship>', :'country' => :'String', :'creation_date' => :'DateTime', :'custom_client_fields' => :'Array<CustomClientFieldValue>', :'email' => :'String', :'emergency_contact_info_email' => :'String', :'emergency_contact_info_name' => :'String', :'emergency_contact_info_phone' => :'String', :'emergency_contact_info_relationship' => :'String', :'first_appointment_date' => :'DateTime', :'first_name' => :'String', :'gender' => :'String', :'home_location' => :'Location', :'home_phone' => :'String', :'is_company' => :'BOOLEAN', :'is_prospect' => :'BOOLEAN', :'last_formula_notes' => :'String', :'last_modified_date_time' => :'DateTime', :'last_name' => :'String', :'liability' => :'Liability', :'liability_release' => :'BOOLEAN', :'membership_icon' => :'Integer', :'middle_name' => :'String', :'mobile_phone' => :'String', :'mobile_provider' => :'Integer', :'new_id' => :'String', :'notes' => :'String', :'photo_url' => :'String', :'postal_code' => :'String', :'prospect_stage' => :'ProspectStage', :'red_alert' => :'String', :'referred_by' => :'String', :'sales_reps' => :'Array<SalesRep>', :'site_id' => :'Integer', :'state' => :'String', :'status' => :'String', :'test' => :'BOOLEAN', :'unique_id' => :'Integer', :'work_extension' => :'String', :'work_phone' => :'String', :'yellow_alert' => :'String', :'send_schedule_emails' => :'BOOLEAN', :'send_account_emails' => :'BOOLEAN', :'send_promotional_emails' => :'BOOLEAN' } end
Public Instance Methods
Checks equality by comparing each attribute. @param [Object] Object to be compared
# File lib/swagger_client/models/add_client_request.rb, line 591 def ==(o) return true if self.equal?(o) self.class == o.class && account_balance == o.account_balance && action == o.action && active == o.active && address_line1 == o.address_line1 && address_line2 == o.address_line2 && appt_gender_pref_male == o.appt_gender_pref_male && birth_date == o.birth_date && city == o.city && client_credit_card == o.client_credit_card && client_indexes == o.client_indexes && client_relationships == o.client_relationships && country == o.country && creation_date == o.creation_date && custom_client_fields == o.custom_client_fields && email == o.email && emergency_contact_info_email == o.emergency_contact_info_email && emergency_contact_info_name == o.emergency_contact_info_name && emergency_contact_info_phone == o.emergency_contact_info_phone && emergency_contact_info_relationship == o.emergency_contact_info_relationship && first_appointment_date == o.first_appointment_date && first_name == o.first_name && gender == o.gender && home_location == o.home_location && home_phone == o.home_phone && is_company == o.is_company && is_prospect == o.is_prospect && last_formula_notes == o.last_formula_notes && last_modified_date_time == o.last_modified_date_time && last_name == o.last_name && liability == o.liability && liability_release == o.liability_release && membership_icon == o.membership_icon && middle_name == o.middle_name && mobile_phone == o.mobile_phone && mobile_provider == o.mobile_provider && new_id == o.new_id && notes == o.notes && photo_url == o.photo_url && postal_code == o.postal_code && prospect_stage == o.prospect_stage && red_alert == o.red_alert && referred_by == o.referred_by && sales_reps == o.sales_reps && site_id == o.site_id && state == o.state && status == o.status && test == o.test && unique_id == o.unique_id && work_extension == o.work_extension && work_phone == o.work_phone && yellow_alert == o.yellow_alert && send_schedule_emails == o.send_schedule_emails && send_account_emails == o.send_account_emails && send_promotional_emails == o.send_promotional_emails end
Deserializes the data based on type @param string type Data type @param string value Value to be deserialized @return [Object] Deserialized data
# File lib/swagger_client/models/add_client_request.rb, line 686 def _deserialize(type, value) case type.to_sym when :DateTime DateTime.parse(value) when :Date Date.parse(value) when :String value.to_s when :Integer value.to_i when :Float value.to_f when :BOOLEAN if value.to_s =~ /\A(true|t|yes|y|1)\z/i true else false end when :Object # generic object (usually a Hash), return directly value when /\AArray<(?<inner_type>.+)>\z/ inner_type = Regexp.last_match[:inner_type] value.map { |v| _deserialize(inner_type, v) } when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/ k_type = Regexp.last_match[:k_type] v_type = Regexp.last_match[:v_type] {}.tap do |hash| value.each do |k, v| hash[_deserialize(k_type, k)] = _deserialize(v_type, v) end end else # model temp_model = SwaggerClient.const_get(type).new temp_model.build_from_hash(value) end end
Outputs non-array value in the form of hash For object, use to_hash. Otherwise, just return the value @param [Object] value Any valid value @return [Hash] Returns the value in the form of hash
# File lib/swagger_client/models/add_client_request.rb, line 752 def _to_hash(value) if value.is_a?(Array) value.compact.map { |v| _to_hash(v) } elsif value.is_a?(Hash) {}.tap do |hash| value.each { |k, v| hash[k] = _to_hash(v) } end elsif value.respond_to? :to_hash value.to_hash else value end end
Custom attribute writer method checking allowed values (enum). @param [Object] action Object to be assigned
# File lib/swagger_client/models/add_client_request.rb, line 581 def action=(action) validator = EnumAttributeValidator.new('String', ['None', 'Added', 'Updated', 'Failed', 'Removed']) unless validator.valid?(action) fail ArgumentError, 'invalid value for "action", must be one of #{validator.allowable_values}.' end @action = action end
Builds the object from hash @param [Hash] attributes Model attributes in the form of hash @return [Object] Returns the model itself
# File lib/swagger_client/models/add_client_request.rb, line 665 def build_from_hash(attributes) return nil unless attributes.is_a?(Hash) self.class.swagger_types.each_pair do |key, type| if type =~ /\AArray<(.*)>/i # check to ensure the input is an array given that the the attribute # is documented as an array but the input is not if attributes[self.class.attribute_map[key]].is_a?(Array) self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) }) end elsif !attributes[self.class.attribute_map[key]].nil? self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]])) end # or else data not found in attributes(hash), not an issue as the data can be optional end self end
@see the `==` method @param [Object] Object to be compared
# File lib/swagger_client/models/add_client_request.rb, line 652 def eql?(o) self == o end
Calculates hash code according to all attributes. @return [Fixnum] Hash code
# File lib/swagger_client/models/add_client_request.rb, line 658 def hash [account_balance, action, active, address_line1, address_line2, appt_gender_pref_male, birth_date, city, client_credit_card, client_indexes, client_relationships, country, creation_date, custom_client_fields, email, emergency_contact_info_email, emergency_contact_info_name, emergency_contact_info_phone, emergency_contact_info_relationship, first_appointment_date, first_name, gender, home_location, home_phone, is_company, is_prospect, last_formula_notes, last_modified_date_time, last_name, liability, liability_release, membership_icon, middle_name, mobile_phone, mobile_provider, new_id, notes, photo_url, postal_code, prospect_stage, red_alert, referred_by, sales_reps, site_id, state, status, test, unique_id, work_extension, work_phone, yellow_alert, send_schedule_emails, send_account_emails, send_promotional_emails].hash end
Show invalid properties with the reasons. Usually used together with valid? @return Array for valid properties with the reasons
# File lib/swagger_client/models/add_client_request.rb, line 556 def list_invalid_properties invalid_properties = Array.new if @first_name.nil? invalid_properties.push('invalid value for "first_name", first_name cannot be nil.') end if @last_name.nil? invalid_properties.push('invalid value for "last_name", last_name cannot be nil.') end invalid_properties end
Returns the object in the form of hash @return [Hash] Returns the object in the form of hash
# File lib/swagger_client/models/add_client_request.rb, line 738 def to_hash hash = {} self.class.attribute_map.each_pair do |attr, param| value = self.send(attr) next if value.nil? hash[param] = _to_hash(value) end hash end
Returns the string representation of the object @return [String] String presentation of the object
# File lib/swagger_client/models/add_client_request.rb, line 726 def to_s to_hash.to_s end
Check to see if the all the properties in the model are valid @return true if the model is valid
# File lib/swagger_client/models/add_client_request.rb, line 571 def valid? action_validator = EnumAttributeValidator.new('String', ['None', 'Added', 'Updated', 'Failed', 'Removed']) return false unless action_validator.valid?(@action) return false if @first_name.nil? return false if @last_name.nil? true end