Class: Zavudev::Models::Contact

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/zavudev/models/contact.rb

Overview

Defined Under Namespace

Modules: DefaultChannel

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, #inspect, inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(id:, available_channels:, created_at:, metadata:, verified:, channels: nil, country_code: nil, default_channel: nil, display_name: nil, phone_number: nil, primary_email: nil, primary_phone: nil, profile_name: nil, suggested_merge_with: nil, updated_at: nil) ⇒ Object

Parameters:

  • id (String)
  • available_channels (Array<String>)

    List of available messaging channels for this contact.

  • created_at (Time)
  • metadata (Hash{Symbol=>String})
  • verified (Boolean)

    Whether this contact has been verified.

  • channels (Array<Zavudev::Models::ContactChannel>) (defaults to: nil)

    All communication channels for this contact.

  • country_code (String) (defaults to: nil)
  • default_channel (Symbol, Zavudev::Models::Contact::DefaultChannel) (defaults to: nil)

    Preferred channel for this contact.

  • display_name (String) (defaults to: nil)

    Display name for the contact.

  • phone_number (String) (defaults to: nil)

    DEPRECATED: Use primaryPhone instead. Primary phone number in E.164 format.

  • primary_email (String) (defaults to: nil)

    Primary email address.

  • primary_phone (String) (defaults to: nil)

    Primary phone number in E.164 format.

  • profile_name (String, nil) (defaults to: nil)

    Contact’s WhatsApp profile name. Only available for WhatsApp contacts.

  • suggested_merge_with (String) (defaults to: nil)

    ID of a contact suggested for merging.

  • updated_at (Time) (defaults to: nil)


# File 'lib/zavudev/models/contact.rb', line 92

Instance Attribute Details

#available_channelsArray<String>

List of available messaging channels for this contact.

Returns:

  • (Array<String>)


16
# File 'lib/zavudev/models/contact.rb', line 16

required :available_channels, Zavudev::Internal::Type::ArrayOf[String], api_name: :availableChannels

#channelsArray<Zavudev::Models::ContactChannel>?

All communication channels for this contact.

Returns:



38
# File 'lib/zavudev/models/contact.rb', line 38

optional :channels, -> { Zavudev::Internal::Type::ArrayOf[Zavudev::ContactChannel] }

#country_codeString?

Returns:

  • (String, nil)


43
# File 'lib/zavudev/models/contact.rb', line 43

optional :country_code, String, api_name: :countryCode

#created_atTime

Returns:

  • (Time)


21
# File 'lib/zavudev/models/contact.rb', line 21

required :created_at, Time, api_name: :createdAt

#default_channelSymbol, ...

Preferred channel for this contact.



49
# File 'lib/zavudev/models/contact.rb', line 49

optional :default_channel, enum: -> { Zavudev::Contact::DefaultChannel }, api_name: :defaultChannel

#display_nameString?

Display name for the contact.

Returns:

  • (String, nil)


55
# File 'lib/zavudev/models/contact.rb', line 55

optional :display_name, String, api_name: :displayName

#idString

Returns:

  • (String)


10
# File 'lib/zavudev/models/contact.rb', line 10

required :id, String

#metadataHash{Symbol=>String}

Returns:

  • (Hash{Symbol=>String})


26
# File 'lib/zavudev/models/contact.rb', line 26

required :metadata, Zavudev::Internal::Type::HashOf[String]

#phone_numberString?

DEPRECATED: Use primaryPhone instead. Primary phone number in E.164 format.

Returns:

  • (String, nil)


61
# File 'lib/zavudev/models/contact.rb', line 61

optional :phone_number, String, api_name: :phoneNumber

#primary_emailString?

Primary email address.

Returns:

  • (String, nil)


67
# File 'lib/zavudev/models/contact.rb', line 67

optional :primary_email, String, api_name: :primaryEmail

#primary_phoneString?

Primary phone number in E.164 format.

Returns:

  • (String, nil)


73
# File 'lib/zavudev/models/contact.rb', line 73

optional :primary_phone, String, api_name: :primaryPhone

#profile_nameString?

Contact’s WhatsApp profile name. Only available for WhatsApp contacts.

Returns:

  • (String, nil)


79
# File 'lib/zavudev/models/contact.rb', line 79

optional :profile_name, String, api_name: :profileName, nil?: true

#suggested_merge_withString?

ID of a contact suggested for merging.

Returns:

  • (String, nil)


85
# File 'lib/zavudev/models/contact.rb', line 85

optional :suggested_merge_with, String, api_name: :suggestedMergeWith

#updated_atTime?

Returns:

  • (Time, nil)


90
# File 'lib/zavudev/models/contact.rb', line 90

optional :updated_at, Time, api_name: :updatedAt

#verifiedBoolean

Whether this contact has been verified.

Returns:

  • (Boolean)


32
# File 'lib/zavudev/models/contact.rb', line 32

required :verified, Zavudev::Internal::Type::Boolean