Class: Zavudev::Models::Template

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

Overview

Defined Under Namespace

Modules: Status Classes: Button, Whatsapp

Instance Attribute Summary collapse

Class Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, #initialize, 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

This class inherits a constructor from Zavudev::Internal::Type::BaseModel

Instance Attribute Details

#add_security_recommendationBoolean?

Add ‘Do not share this code’ disclaimer. Only for AUTHENTICATION templates.

Returns:

  • (Boolean, nil)


41
42
43
# File 'lib/zavudev/models/template.rb', line 41

optional :add_security_recommendation,
Zavudev::Internal::Type::Boolean,
api_name: :addSecurityRecommendation

#bodyString

Default template body with variables: {1}, {2}, or named variables like Zavudev::Models::Template.{contact{contact.first_name}. Used when no channel-specific body is set.

Returns:

  • (String)


17
# File 'lib/zavudev/models/template.rb', line 17

required :body, String

#buttonsArray<Zavudev::Models::Template::Button>?

Template buttons.

Returns:



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

optional :buttons, -> { Zavudev::Internal::Type::ArrayOf[Zavudev::Template::Button] }

#categorySymbol, Zavudev::Models::WhatsappCategory

WhatsApp template category.



23
# File 'lib/zavudev/models/template.rb', line 23

required :category, enum: -> { Zavudev::WhatsappCategory }

#code_expiration_minutesInteger?

Code expiration time in minutes. Only for AUTHENTICATION templates.

Returns:

  • (Integer, nil)


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

optional :code_expiration_minutes, Integer, api_name: :codeExpirationMinutes

#created_atTime?

Returns:

  • (Time, nil)


60
# File 'lib/zavudev/models/template.rb', line 60

optional :created_at, Time, api_name: :createdAt

Footer text for the template.

Returns:

  • (String, nil)


66
# File 'lib/zavudev/models/template.rb', line 66

optional :footer, String

#header_contentString?

Header content (text or media URL).

Returns:

  • (String, nil)


72
# File 'lib/zavudev/models/template.rb', line 72

optional :header_content, String, api_name: :headerContent

#header_typeString?

Type of header (text, image, video, document).

Returns:

  • (String, nil)


78
# File 'lib/zavudev/models/template.rb', line 78

optional :header_type, String, api_name: :headerType

#idString

Returns:

  • (String)


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

required :id, String

#instagram_bodyString?

Channel-specific body for Instagram messages. Falls back to ‘body` if not set.

Returns:

  • (String, nil)


84
# File 'lib/zavudev/models/template.rb', line 84

optional :instagram_body, String, api_name: :instagramBody

#languageString

Language code.

Returns:

  • (String)


29
# File 'lib/zavudev/models/template.rb', line 29

required :language, String

#nameString

Template name. For WhatsApp, must match the approved template name in Meta.

Returns:

  • (String)


35
# File 'lib/zavudev/models/template.rb', line 35

required :name, String

#sms_bodyString?

Channel-specific body for SMS messages. Falls back to ‘body` if not set.

Returns:

  • (String, nil)


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

optional :sms_body, String, api_name: :smsBody

#statusSymbol, ...

Returns:



95
# File 'lib/zavudev/models/template.rb', line 95

optional :status, enum: -> { Zavudev::Template::Status }

#telegram_bodyString?

Channel-specific body for Telegram messages. Falls back to ‘body` if not set.

Returns:

  • (String, nil)


101
# File 'lib/zavudev/models/template.rb', line 101

optional :telegram_body, String, api_name: :telegramBody

#updated_atTime?

Returns:

  • (Time, nil)


106
# File 'lib/zavudev/models/template.rb', line 106

optional :updated_at, Time, api_name: :updatedAt

#variablesArray<String>?

List of variable names for documentation.

Returns:

  • (Array<String>, nil)


112
# File 'lib/zavudev/models/template.rb', line 112

optional :variables, Zavudev::Internal::Type::ArrayOf[String]

#whatsappZavudev::Models::Template::Whatsapp?

WhatsApp-specific template information.



118
# File 'lib/zavudev/models/template.rb', line 118

optional :whatsapp, -> { Zavudev::Template::Whatsapp }

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/zavudev/models/template.rb', line 238