ElasticEmail 4.0.20 → 4.0.22

Sign up to get free protection for your applications and to get access to all the features.
Files changed (118) hide show
  1. checksums.yaml +4 -4
  2. data/ElasticEmail.gemspec +3 -3
  3. data/README.md +6 -8
  4. data/VERSION +1 -1
  5. data/docs/BodyPart.md +1 -1
  6. data/docs/ContactsApi.md +2 -78
  7. data/docs/EmailPredictedValidationStatus.md +15 -0
  8. data/docs/EmailValidationResult.md +5 -1
  9. data/docs/EmailsApi.md +1 -1
  10. data/docs/MessageAttachment.md +4 -2
  11. data/docs/VerificationsApi.md +4 -4
  12. data/lib/ElasticEmail/api/campaigns_api.rb +2 -2
  13. data/lib/ElasticEmail/api/contacts_api.rb +5 -71
  14. data/lib/ElasticEmail/api/emails_api.rb +2 -2
  15. data/lib/ElasticEmail/api/events_api.rb +2 -2
  16. data/lib/ElasticEmail/api/files_api.rb +2 -2
  17. data/lib/ElasticEmail/api/inbound_route_api.rb +2 -2
  18. data/lib/ElasticEmail/api/lists_api.rb +2 -2
  19. data/lib/ElasticEmail/api/security_api.rb +2 -2
  20. data/lib/ElasticEmail/api/segments_api.rb +2 -2
  21. data/lib/ElasticEmail/api/statistics_api.rb +2 -2
  22. data/lib/ElasticEmail/api/sub_accounts_api.rb +2 -2
  23. data/lib/ElasticEmail/api/suppressions_api.rb +2 -2
  24. data/lib/ElasticEmail/api/templates_api.rb +2 -2
  25. data/lib/ElasticEmail/api/verifications_api.rb +10 -10
  26. data/lib/ElasticEmail/api_client.rb +2 -2
  27. data/lib/ElasticEmail/api_error.rb +3 -2
  28. data/lib/ElasticEmail/configuration.rb +13 -2
  29. data/lib/ElasticEmail/models/access_level.rb +13 -10
  30. data/lib/ElasticEmail/models/account_status_enum.rb +8 -6
  31. data/lib/ElasticEmail/models/api_key.rb +2 -2
  32. data/lib/ElasticEmail/models/api_key_payload.rb +2 -2
  33. data/lib/ElasticEmail/models/body_content_type.rb +8 -5
  34. data/lib/ElasticEmail/models/body_part.rb +25 -3
  35. data/lib/ElasticEmail/models/campaign.rb +24 -2
  36. data/lib/ElasticEmail/models/campaign_options.rb +24 -2
  37. data/lib/ElasticEmail/models/campaign_recipient.rb +2 -2
  38. data/lib/ElasticEmail/models/campaign_status.rb +8 -5
  39. data/lib/ElasticEmail/models/campaign_template.rb +2 -2
  40. data/lib/ElasticEmail/models/channel_log_status_summary.rb +2 -2
  41. data/lib/ElasticEmail/models/compression_format.rb +8 -5
  42. data/lib/ElasticEmail/models/consent_data.rb +24 -2
  43. data/lib/ElasticEmail/models/consent_tracking.rb +8 -5
  44. data/lib/ElasticEmail/models/contact.rb +24 -2
  45. data/lib/ElasticEmail/models/contact_activity.rb +2 -2
  46. data/lib/ElasticEmail/models/contact_payload.rb +24 -2
  47. data/lib/ElasticEmail/models/contact_source.rb +8 -5
  48. data/lib/ElasticEmail/models/contact_status.rb +8 -5
  49. data/lib/ElasticEmail/models/contact_update_payload.rb +2 -2
  50. data/lib/ElasticEmail/models/contacts_list.rb +2 -2
  51. data/lib/ElasticEmail/models/delivery_optimization_type.rb +8 -5
  52. data/lib/ElasticEmail/models/email_content.rb +2 -2
  53. data/lib/ElasticEmail/models/email_data.rb +2 -2
  54. data/lib/ElasticEmail/models/email_message_data.rb +2 -2
  55. data/lib/ElasticEmail/models/email_predicted_validation_status.rb +43 -0
  56. data/lib/ElasticEmail/models/email_recipient.rb +2 -2
  57. data/lib/ElasticEmail/models/email_send.rb +2 -2
  58. data/lib/ElasticEmail/models/email_status.rb +24 -2
  59. data/lib/ElasticEmail/models/email_transactional_message_data.rb +2 -2
  60. data/lib/ElasticEmail/models/email_validation_result.rb +48 -6
  61. data/lib/ElasticEmail/models/email_validation_status.rb +8 -5
  62. data/lib/ElasticEmail/models/email_view.rb +2 -2
  63. data/lib/ElasticEmail/models/emails_payload.rb +2 -2
  64. data/lib/ElasticEmail/models/encoding_type.rb +8 -5
  65. data/lib/ElasticEmail/models/event_type.rb +8 -5
  66. data/lib/ElasticEmail/models/events_order_by.rb +8 -5
  67. data/lib/ElasticEmail/models/export_file_formats.rb +8 -5
  68. data/lib/ElasticEmail/models/export_link.rb +2 -2
  69. data/lib/ElasticEmail/models/export_status.rb +8 -5
  70. data/lib/ElasticEmail/models/file_info.rb +2 -2
  71. data/lib/ElasticEmail/models/file_payload.rb +2 -2
  72. data/lib/ElasticEmail/models/file_upload_result.rb +2 -2
  73. data/lib/ElasticEmail/models/inbound_payload.rb +24 -2
  74. data/lib/ElasticEmail/models/inbound_route.rb +24 -2
  75. data/lib/ElasticEmail/models/inbound_route_action_type.rb +8 -5
  76. data/lib/ElasticEmail/models/inbound_route_filter_type.rb +8 -5
  77. data/lib/ElasticEmail/models/list_payload.rb +2 -2
  78. data/lib/ElasticEmail/models/list_update_payload.rb +2 -2
  79. data/lib/ElasticEmail/models/log_job_status.rb +8 -5
  80. data/lib/ElasticEmail/models/log_status_summary.rb +2 -2
  81. data/lib/ElasticEmail/models/merge_email_payload.rb +2 -2
  82. data/lib/ElasticEmail/models/message_attachment.rb +21 -6
  83. data/lib/ElasticEmail/models/message_category.rb +8 -5
  84. data/lib/ElasticEmail/models/new_api_key.rb +2 -2
  85. data/lib/ElasticEmail/models/new_smtp_credentials.rb +24 -2
  86. data/lib/ElasticEmail/models/options.rb +24 -2
  87. data/lib/ElasticEmail/models/recipient_event.rb +24 -2
  88. data/lib/ElasticEmail/models/segment.rb +2 -2
  89. data/lib/ElasticEmail/models/segment_payload.rb +2 -2
  90. data/lib/ElasticEmail/models/smtp_credentials.rb +24 -2
  91. data/lib/ElasticEmail/models/smtp_credentials_payload.rb +2 -2
  92. data/lib/ElasticEmail/models/sort_order_item.rb +2 -2
  93. data/lib/ElasticEmail/models/split_optimization_type.rb +8 -5
  94. data/lib/ElasticEmail/models/split_options.rb +24 -2
  95. data/lib/ElasticEmail/models/sub_account_info.rb +24 -2
  96. data/lib/ElasticEmail/models/subaccount_email_credits_payload.rb +2 -2
  97. data/lib/ElasticEmail/models/subaccount_email_settings.rb +2 -2
  98. data/lib/ElasticEmail/models/subaccount_email_settings_payload.rb +2 -2
  99. data/lib/ElasticEmail/models/subaccount_payload.rb +2 -2
  100. data/lib/ElasticEmail/models/subaccount_settings_info.rb +2 -2
  101. data/lib/ElasticEmail/models/subaccount_settings_info_payload.rb +2 -2
  102. data/lib/ElasticEmail/models/suppression.rb +2 -2
  103. data/lib/ElasticEmail/models/template.rb +24 -2
  104. data/lib/ElasticEmail/models/template_payload.rb +24 -2
  105. data/lib/ElasticEmail/models/template_scope.rb +8 -5
  106. data/lib/ElasticEmail/models/template_type.rb +9 -5
  107. data/lib/ElasticEmail/models/transactional_recipient.rb +2 -2
  108. data/lib/ElasticEmail/models/utm.rb +2 -2
  109. data/lib/ElasticEmail/models/verification_file_result.rb +24 -2
  110. data/lib/ElasticEmail/models/verification_file_result_details.rb +24 -2
  111. data/lib/ElasticEmail/models/verification_status.rb +8 -5
  112. data/lib/ElasticEmail/version.rb +3 -3
  113. data/lib/ElasticEmail.rb +3 -4
  114. data/spec/api_client_spec.rb +2 -2
  115. data/spec/configuration_spec.rb +2 -2
  116. data/spec/models/email_predicted_validation_status_spec.rb +28 -0
  117. data/spec/spec_helper.rb +2 -2
  118. metadata +7 -3
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Elastic Email REST API
3
3
 
4
- #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://elasticemail.com/account#/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
4
+ #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://app.elasticemail.com/marketing/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
5
5
 
6
6
  The version of the OpenAPI document: 4.0.0
7
7
  Contact: support@elasticemail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.0.0
9
+ OpenAPI Generator version: 6.3.0
10
10
 
11
11
  =end
12
12
 
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Elastic Email REST API
3
3
 
4
- #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://elasticemail.com/account#/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
4
+ #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://app.elasticemail.com/marketing/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
5
5
 
6
6
  The version of the OpenAPI document: 4.0.0
7
7
  Contact: support@elasticemail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.0.0
9
+ OpenAPI Generator version: 6.3.0
10
10
 
11
11
  =end
12
12
 
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Elastic Email REST API
3
3
 
4
- #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://elasticemail.com/account#/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
4
+ #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://app.elasticemail.com/marketing/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
5
5
 
6
6
  The version of the OpenAPI document: 4.0.0
7
7
  Contact: support@elasticemail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.0.0
9
+ OpenAPI Generator version: 6.3.0
10
10
 
11
11
  =end
12
12
 
@@ -26,6 +26,10 @@ module ElasticEmail
26
26
  UNSUBSCRIBED = "Unsubscribed".freeze
27
27
  ABUSE_REPORT = "AbuseReport".freeze
28
28
 
29
+ def self.all_vars
30
+ @all_vars ||= [ALL, READY_TO_SEND, WAITING_TO_RETRY, SENDING, ERROR, SENT, OPENED, CLICKED, UNSUBSCRIBED, ABUSE_REPORT].freeze
31
+ end
32
+
29
33
  # Builds the enum from string
30
34
  # @param [String] The enum value in the form of the string
31
35
  # @return [String] The enum value
@@ -37,9 +41,8 @@ module ElasticEmail
37
41
  # @param [String] The enum value in the form of the string
38
42
  # @return [String] The enum value
39
43
  def build_from_hash(value)
40
- constantValues = LogJobStatus.constants.select { |c| LogJobStatus::const_get(c) == value }
41
- raise "Invalid ENUM value #{value} for class #LogJobStatus" if constantValues.empty?
42
- value
44
+ return value if LogJobStatus.all_vars.include?(value)
45
+ raise "Invalid ENUM value #{value} for class #LogJobStatus"
43
46
  end
44
47
  end
45
48
  end
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Elastic Email REST API
3
3
 
4
- #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://elasticemail.com/account#/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
4
+ #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://app.elasticemail.com/marketing/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
5
5
 
6
6
  The version of the OpenAPI document: 4.0.0
7
7
  Contact: support@elasticemail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.0.0
9
+ OpenAPI Generator version: 6.3.0
10
10
 
11
11
  =end
12
12
 
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Elastic Email REST API
3
3
 
4
- #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://elasticemail.com/account#/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
4
+ #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://app.elasticemail.com/marketing/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
5
5
 
6
6
  The version of the OpenAPI document: 4.0.0
7
7
  Contact: support@elasticemail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.0.0
9
+ OpenAPI Generator version: 6.3.0
10
10
 
11
11
  =end
12
12
 
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Elastic Email REST API
3
3
 
4
- #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://elasticemail.com/account#/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
4
+ #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://app.elasticemail.com/marketing/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
5
5
 
6
6
  The version of the OpenAPI document: 4.0.0
7
7
  Contact: support@elasticemail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.0.0
9
+ OpenAPI Generator version: 6.3.0
10
10
 
11
11
  =end
12
12
 
@@ -24,12 +24,16 @@ module ElasticEmail
24
24
  # MIME content type
25
25
  attr_accessor :content_type
26
26
 
27
+ # Size of your attachment (in bytes).
28
+ attr_accessor :size
29
+
27
30
  # Attribute mapping from ruby-style variable name to JSON key.
28
31
  def self.attribute_map
29
32
  {
30
33
  :'binary_content' => :'BinaryContent',
31
34
  :'name' => :'Name',
32
- :'content_type' => :'ContentType'
35
+ :'content_type' => :'ContentType',
36
+ :'size' => :'Size'
33
37
  }
34
38
  end
35
39
 
@@ -43,7 +47,8 @@ module ElasticEmail
43
47
  {
44
48
  :'binary_content' => :'String',
45
49
  :'name' => :'String',
46
- :'content_type' => :'String'
50
+ :'content_type' => :'String',
51
+ :'size' => :'Integer'
47
52
  }
48
53
  end
49
54
 
@@ -79,6 +84,10 @@ module ElasticEmail
79
84
  if attributes.key?(:'content_type')
80
85
  self.content_type = attributes[:'content_type']
81
86
  end
87
+
88
+ if attributes.key?(:'size')
89
+ self.size = attributes[:'size']
90
+ end
82
91
  end
83
92
 
84
93
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -89,6 +98,10 @@ module ElasticEmail
89
98
  invalid_properties.push('invalid value for "binary_content", binary_content cannot be nil.')
90
99
  end
91
100
 
101
+ if @name.nil?
102
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
103
+ end
104
+
92
105
  invalid_properties
93
106
  end
94
107
 
@@ -96,6 +109,7 @@ module ElasticEmail
96
109
  # @return true if the model is valid
97
110
  def valid?
98
111
  return false if @binary_content.nil?
112
+ return false if @name.nil?
99
113
  true
100
114
  end
101
115
 
@@ -106,7 +120,8 @@ module ElasticEmail
106
120
  self.class == o.class &&
107
121
  binary_content == o.binary_content &&
108
122
  name == o.name &&
109
- content_type == o.content_type
123
+ content_type == o.content_type &&
124
+ size == o.size
110
125
  end
111
126
 
112
127
  # @see the `==` method
@@ -118,7 +133,7 @@ module ElasticEmail
118
133
  # Calculates hash code according to all attributes.
119
134
  # @return [Integer] Hash code
120
135
  def hash
121
- [binary_content, name, content_type].hash
136
+ [binary_content, name, content_type, size].hash
122
137
  end
123
138
 
124
139
  # Builds the object from hash
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Elastic Email REST API
3
3
 
4
- #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://elasticemail.com/account#/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
4
+ #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://app.elasticemail.com/marketing/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
5
5
 
6
6
  The version of the OpenAPI document: 4.0.0
7
7
  Contact: support@elasticemail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.0.0
9
+ OpenAPI Generator version: 6.3.0
10
10
 
11
11
  =end
12
12
 
@@ -33,6 +33,10 @@ module ElasticEmail
33
33
  CONNECTION_TERMINATED = "ConnectionTerminated".freeze
34
34
  NOT_DELIVERED = "NotDelivered".freeze
35
35
 
36
+ def self.all_vars
37
+ @all_vars ||= [UNKNOWN, IGNORE, SPAM, BLACK_LISTED, NO_MAILBOX, GREY_LISTED, THROTTLED, TIMEOUT, CONNECTION_PROBLEM, SPF_PROBLEM, ACCOUNT_PROBLEM, DNS_PROBLEM, NOT_DELIVERED_CANCELLED, CODE_ERROR, MANUAL_CANCEL, CONNECTION_TERMINATED, NOT_DELIVERED].freeze
38
+ end
39
+
36
40
  # Builds the enum from string
37
41
  # @param [String] The enum value in the form of the string
38
42
  # @return [String] The enum value
@@ -44,9 +48,8 @@ module ElasticEmail
44
48
  # @param [String] The enum value in the form of the string
45
49
  # @return [String] The enum value
46
50
  def build_from_hash(value)
47
- constantValues = MessageCategory.constants.select { |c| MessageCategory::const_get(c) == value }
48
- raise "Invalid ENUM value #{value} for class #MessageCategory" if constantValues.empty?
49
- value
51
+ return value if MessageCategory.all_vars.include?(value)
52
+ raise "Invalid ENUM value #{value} for class #MessageCategory"
50
53
  end
51
54
  end
52
55
  end
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Elastic Email REST API
3
3
 
4
- #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://elasticemail.com/account#/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
4
+ #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://app.elasticemail.com/marketing/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
5
5
 
6
6
  The version of the OpenAPI document: 4.0.0
7
7
  Contact: support@elasticemail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.0.0
9
+ OpenAPI Generator version: 6.3.0
10
10
 
11
11
  =end
12
12
 
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Elastic Email REST API
3
3
 
4
- #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://elasticemail.com/account#/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
4
+ #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://app.elasticemail.com/marketing/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
5
5
 
6
6
  The version of the OpenAPI document: 4.0.0
7
7
  Contact: support@elasticemail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.0.0
9
+ OpenAPI Generator version: 6.3.0
10
10
 
11
11
  =end
12
12
 
@@ -36,6 +36,28 @@ module ElasticEmail
36
36
  # Which IPs can use this SmtpCredential
37
37
  attr_accessor :restrict_access_to_ip_range
38
38
 
39
+ class EnumAttributeValidator
40
+ attr_reader :datatype
41
+ attr_reader :allowable_values
42
+
43
+ def initialize(datatype, allowable_values)
44
+ @allowable_values = allowable_values.map do |value|
45
+ case datatype.to_s
46
+ when /Integer/i
47
+ value.to_i
48
+ when /Float/i
49
+ value.to_f
50
+ else
51
+ value
52
+ end
53
+ end
54
+ end
55
+
56
+ def valid?(value)
57
+ !value || allowable_values.include?(value)
58
+ end
59
+ end
60
+
39
61
  # Attribute mapping from ruby-style variable name to JSON key.
40
62
  def self.attribute_map
41
63
  {
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Elastic Email REST API
3
3
 
4
- #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://elasticemail.com/account#/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
4
+ #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://app.elasticemail.com/marketing/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
5
5
 
6
6
  The version of the OpenAPI document: 4.0.0
7
7
  Contact: support@elasticemail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.0.0
9
+ OpenAPI Generator version: 6.3.0
10
10
 
11
11
  =end
12
12
 
@@ -33,6 +33,28 @@ module ElasticEmail
33
33
  # Should the clicks be tracked? If no value has been provided, Account's default setting will be used.
34
34
  attr_accessor :track_clicks
35
35
 
36
+ class EnumAttributeValidator
37
+ attr_reader :datatype
38
+ attr_reader :allowable_values
39
+
40
+ def initialize(datatype, allowable_values)
41
+ @allowable_values = allowable_values.map do |value|
42
+ case datatype.to_s
43
+ when /Integer/i
44
+ value.to_i
45
+ when /Float/i
46
+ value.to_f
47
+ else
48
+ value
49
+ end
50
+ end
51
+ end
52
+
53
+ def valid?(value)
54
+ !value || allowable_values.include?(value)
55
+ end
56
+ end
57
+
36
58
  # Attribute mapping from ruby-style variable name to JSON key.
37
59
  def self.attribute_map
38
60
  {
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Elastic Email REST API
3
3
 
4
- #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://elasticemail.com/account#/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
4
+ #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://app.elasticemail.com/marketing/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
5
5
 
6
6
  The version of the OpenAPI document: 4.0.0
7
7
  Contact: support@elasticemail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.0.0
9
+ OpenAPI Generator version: 6.3.0
10
10
 
11
11
  =end
12
12
 
@@ -53,6 +53,28 @@ module ElasticEmail
53
53
  # Name of an IP pool this email was sent through
54
54
  attr_accessor :pool_name
55
55
 
56
+ class EnumAttributeValidator
57
+ attr_reader :datatype
58
+ attr_reader :allowable_values
59
+
60
+ def initialize(datatype, allowable_values)
61
+ @allowable_values = allowable_values.map do |value|
62
+ case datatype.to_s
63
+ when /Integer/i
64
+ value.to_i
65
+ when /Float/i
66
+ value.to_f
67
+ else
68
+ value
69
+ end
70
+ end
71
+ end
72
+
73
+ def valid?(value)
74
+ !value || allowable_values.include?(value)
75
+ end
76
+ end
77
+
56
78
  # Attribute mapping from ruby-style variable name to JSON key.
57
79
  def self.attribute_map
58
80
  {
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Elastic Email REST API
3
3
 
4
- #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://elasticemail.com/account#/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
4
+ #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://app.elasticemail.com/marketing/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
5
5
 
6
6
  The version of the OpenAPI document: 4.0.0
7
7
  Contact: support@elasticemail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.0.0
9
+ OpenAPI Generator version: 6.3.0
10
10
 
11
11
  =end
12
12
 
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Elastic Email REST API
3
3
 
4
- #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://elasticemail.com/account#/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
4
+ #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://app.elasticemail.com/marketing/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
5
5
 
6
6
  The version of the OpenAPI document: 4.0.0
7
7
  Contact: support@elasticemail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.0.0
9
+ OpenAPI Generator version: 6.3.0
10
10
 
11
11
  =end
12
12
 
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Elastic Email REST API
3
3
 
4
- #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://elasticemail.com/account#/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
4
+ #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://app.elasticemail.com/marketing/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
5
5
 
6
6
  The version of the OpenAPI document: 4.0.0
7
7
  Contact: support@elasticemail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.0.0
9
+ OpenAPI Generator version: 6.3.0
10
10
 
11
11
  =end
12
12
 
@@ -33,6 +33,28 @@ module ElasticEmail
33
33
  # Which IPs can use this SmtpCredential
34
34
  attr_accessor :restrict_access_to_ip_range
35
35
 
36
+ class EnumAttributeValidator
37
+ attr_reader :datatype
38
+ attr_reader :allowable_values
39
+
40
+ def initialize(datatype, allowable_values)
41
+ @allowable_values = allowable_values.map do |value|
42
+ case datatype.to_s
43
+ when /Integer/i
44
+ value.to_i
45
+ when /Float/i
46
+ value.to_f
47
+ else
48
+ value
49
+ end
50
+ end
51
+ end
52
+
53
+ def valid?(value)
54
+ !value || allowable_values.include?(value)
55
+ end
56
+ end
57
+
36
58
  # Attribute mapping from ruby-style variable name to JSON key.
37
59
  def self.attribute_map
38
60
  {
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Elastic Email REST API
3
3
 
4
- #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://elasticemail.com/account#/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
4
+ #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://app.elasticemail.com/marketing/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
5
5
 
6
6
  The version of the OpenAPI document: 4.0.0
7
7
  Contact: support@elasticemail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.0.0
9
+ OpenAPI Generator version: 6.3.0
10
10
 
11
11
  =end
12
12
 
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Elastic Email REST API
3
3
 
4
- #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://elasticemail.com/account#/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
4
+ #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://app.elasticemail.com/marketing/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
5
5
 
6
6
  The version of the OpenAPI document: 4.0.0
7
7
  Contact: support@elasticemail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.0.0
9
+ OpenAPI Generator version: 6.3.0
10
10
 
11
11
  =end
12
12
 
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Elastic Email REST API
3
3
 
4
- #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://elasticemail.com/account#/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
4
+ #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://app.elasticemail.com/marketing/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
5
5
 
6
6
  The version of the OpenAPI document: 4.0.0
7
7
  Contact: support@elasticemail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.0.0
9
+ OpenAPI Generator version: 6.3.0
10
10
 
11
11
  =end
12
12
 
@@ -18,6 +18,10 @@ module ElasticEmail
18
18
  OPENS = "Opens".freeze
19
19
  CLICKS = "Clicks".freeze
20
20
 
21
+ def self.all_vars
22
+ @all_vars ||= [OPENS, CLICKS].freeze
23
+ end
24
+
21
25
  # Builds the enum from string
22
26
  # @param [String] The enum value in the form of the string
23
27
  # @return [String] The enum value
@@ -29,9 +33,8 @@ module ElasticEmail
29
33
  # @param [String] The enum value in the form of the string
30
34
  # @return [String] The enum value
31
35
  def build_from_hash(value)
32
- constantValues = SplitOptimizationType.constants.select { |c| SplitOptimizationType::const_get(c) == value }
33
- raise "Invalid ENUM value #{value} for class #SplitOptimizationType" if constantValues.empty?
34
- value
36
+ return value if SplitOptimizationType.all_vars.include?(value)
37
+ raise "Invalid ENUM value #{value} for class #SplitOptimizationType"
35
38
  end
36
39
  end
37
40
  end
@@ -1,12 +1,12 @@
1
1
  =begin
2
2
  #Elastic Email REST API
3
3
 
4
- #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://elasticemail.com/account#/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
4
+ #This API is based on the REST API architecture, allowing the user to easily manage their data with this resource-based approach. Every API call is established on which specific request type (GET, POST, PUT, DELETE) will be used. The API has a limit of 20 concurrent connections and a hard timeout of 600 seconds per request. To start using this API, you will need your Access Token (available <a target=\"_blank\" href=\"https://app.elasticemail.com/marketing/settings/new/manage-api\">here</a>). Remember to keep it safe. Required access levels are listed in the given request’s description. Downloadable library clients can be found in our Github repository <a target=\"_blank\" href=\"https://github.com/ElasticEmail?tab=repositories&q=%22rest+api%22+in%3Areadme\">here</a>
5
5
 
6
6
  The version of the OpenAPI document: 4.0.0
7
7
  Contact: support@elasticemail.com
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 6.0.0
9
+ OpenAPI Generator version: 6.3.0
10
10
 
11
11
  =end
12
12
 
@@ -21,6 +21,28 @@ module ElasticEmail
21
21
  # For how long should the results be measured until determining the winner template (content)
22
22
  attr_accessor :optimize_period_minutes
23
23
 
24
+ class EnumAttributeValidator
25
+ attr_reader :datatype
26
+ attr_reader :allowable_values
27
+
28
+ def initialize(datatype, allowable_values)
29
+ @allowable_values = allowable_values.map do |value|
30
+ case datatype.to_s
31
+ when /Integer/i
32
+ value.to_i
33
+ when /Float/i
34
+ value.to_f
35
+ else
36
+ value
37
+ end
38
+ end
39
+ end
40
+
41
+ def valid?(value)
42
+ !value || allowable_values.include?(value)
43
+ end
44
+ end
45
+
24
46
  # Attribute mapping from ruby-style variable name to JSON key.
25
47
  def self.attribute_map
26
48
  {