mailodds 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (182) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/README.md +64 -0
  4. data/Rakefile +10 -0
  5. data/docs/AddPolicyRule201Response.md +18 -0
  6. data/docs/AddSuppressionRequest.md +18 -0
  7. data/docs/AddSuppressionRequestEntriesInner.md +22 -0
  8. data/docs/AddSuppressionResponse.md +22 -0
  9. data/docs/BulkValidationApi.md +659 -0
  10. data/docs/CheckSuppressionRequest.md +18 -0
  11. data/docs/CreateJobFromS3Request.md +20 -0
  12. data/docs/CreateJobRequest.md +26 -0
  13. data/docs/CreatePolicyFromPresetRequest.md +22 -0
  14. data/docs/CreatePolicyRequest.md +24 -0
  15. data/docs/DeleteJob200Response.md +20 -0
  16. data/docs/DeletePolicy200Response.md +20 -0
  17. data/docs/DeletePolicyRule200Response.md +18 -0
  18. data/docs/EmailValidationApi.md +77 -0
  19. data/docs/ErrorResponse.md +22 -0
  20. data/docs/GetPresignedUploadRequest.md +20 -0
  21. data/docs/HealthCheck200Response.md +20 -0
  22. data/docs/Job.md +34 -0
  23. data/docs/JobListResponse.md +22 -0
  24. data/docs/JobResponse.md +20 -0
  25. data/docs/JobSummary.md +26 -0
  26. data/docs/Pagination.md +24 -0
  27. data/docs/Policy.md +34 -0
  28. data/docs/PolicyListResponse.md +22 -0
  29. data/docs/PolicyListResponseLimits.md +22 -0
  30. data/docs/PolicyPresetsResponse.md +20 -0
  31. data/docs/PolicyPresetsResponsePresetsInner.md +24 -0
  32. data/docs/PolicyResponse.md +20 -0
  33. data/docs/PolicyRule.md +28 -0
  34. data/docs/PolicyRuleAction.md +18 -0
  35. data/docs/PolicyTestResponse.md +26 -0
  36. data/docs/PresignedUploadResponse.md +20 -0
  37. data/docs/PresignedUploadResponseUpload.md +24 -0
  38. data/docs/RemoveSuppression200Response.md +20 -0
  39. data/docs/RemoveSuppressionRequest.md +18 -0
  40. data/docs/ResultsResponse.md +22 -0
  41. data/docs/SuppressionCheckResponse.md +26 -0
  42. data/docs/SuppressionEntry.md +26 -0
  43. data/docs/SuppressionListResponse.md +22 -0
  44. data/docs/SuppressionListsApi.md +362 -0
  45. data/docs/SuppressionStatsResponse.md +22 -0
  46. data/docs/SuppressionStatsResponseByType.md +20 -0
  47. data/docs/SystemApi.md +141 -0
  48. data/docs/TelemetrySummary.md +32 -0
  49. data/docs/TelemetrySummaryRates.md +24 -0
  50. data/docs/TelemetrySummaryTopDomainsInner.md +28 -0
  51. data/docs/TelemetrySummaryTopReasonsInner.md +20 -0
  52. data/docs/TelemetrySummaryTotals.md +20 -0
  53. data/docs/TestPolicyRequest.md +20 -0
  54. data/docs/TestPolicyRequestTestResult.md +26 -0
  55. data/docs/UpdatePolicyRequest.md +24 -0
  56. data/docs/ValidateRequest.md +20 -0
  57. data/docs/ValidationPoliciesApi.md +712 -0
  58. data/docs/ValidationResponse.md +40 -0
  59. data/docs/ValidationResponseSuppressionMatch.md +22 -0
  60. data/docs/ValidationResult.md +26 -0
  61. data/git_push.sh +57 -0
  62. data/lib/mailodds/api/bulk_validation_api.rb +651 -0
  63. data/lib/mailodds/api/email_validation_api.rb +90 -0
  64. data/lib/mailodds/api/suppression_lists_api.rb +356 -0
  65. data/lib/mailodds/api/system_api.rb +143 -0
  66. data/lib/mailodds/api/validation_policies_api.rb +686 -0
  67. data/lib/mailodds/api_client.rb +397 -0
  68. data/lib/mailodds/api_error.rb +58 -0
  69. data/lib/mailodds/api_model_base.rb +88 -0
  70. data/lib/mailodds/configuration.rb +308 -0
  71. data/lib/mailodds/models/add_policy_rule201_response.rb +147 -0
  72. data/lib/mailodds/models/add_suppression_request.rb +166 -0
  73. data/lib/mailodds/models/add_suppression_request_entries_inner.rb +223 -0
  74. data/lib/mailodds/models/add_suppression_response.rb +165 -0
  75. data/lib/mailodds/models/check_suppression_request.rb +164 -0
  76. data/lib/mailodds/models/create_job_from_s3_request.rb +176 -0
  77. data/lib/mailodds/models/create_job_request.rb +219 -0
  78. data/lib/mailodds/models/create_policy_from_preset_request.rb +225 -0
  79. data/lib/mailodds/models/create_policy_request.rb +223 -0
  80. data/lib/mailodds/models/delete_job200_response.rb +156 -0
  81. data/lib/mailodds/models/delete_policy200_response.rb +156 -0
  82. data/lib/mailodds/models/delete_policy_rule200_response.rb +147 -0
  83. data/lib/mailodds/models/error_response.rb +201 -0
  84. data/lib/mailodds/models/get_presigned_upload_request.rb +175 -0
  85. data/lib/mailodds/models/health_check200_response.rb +156 -0
  86. data/lib/mailodds/models/job.rb +281 -0
  87. data/lib/mailodds/models/job_list_response.rb +167 -0
  88. data/lib/mailodds/models/job_response.rb +156 -0
  89. data/lib/mailodds/models/job_summary.rb +183 -0
  90. data/lib/mailodds/models/pagination.rb +174 -0
  91. data/lib/mailodds/models/policy.rb +221 -0
  92. data/lib/mailodds/models/policy_list_response.rb +167 -0
  93. data/lib/mailodds/models/policy_list_response_limits.rb +166 -0
  94. data/lib/mailodds/models/policy_presets_response.rb +158 -0
  95. data/lib/mailodds/models/policy_presets_response_presets_inner.rb +176 -0
  96. data/lib/mailodds/models/policy_response.rb +156 -0
  97. data/lib/mailodds/models/policy_rule.rb +269 -0
  98. data/lib/mailodds/models/policy_rule_action.rb +181 -0
  99. data/lib/mailodds/models/policy_test_response.rb +187 -0
  100. data/lib/mailodds/models/presigned_upload_response.rb +156 -0
  101. data/lib/mailodds/models/presigned_upload_response_upload.rb +174 -0
  102. data/lib/mailodds/models/remove_suppression200_response.rb +156 -0
  103. data/lib/mailodds/models/remove_suppression_request.rb +166 -0
  104. data/lib/mailodds/models/results_response.rb +167 -0
  105. data/lib/mailodds/models/suppression_check_response.rb +217 -0
  106. data/lib/mailodds/models/suppression_entry.rb +217 -0
  107. data/lib/mailodds/models/suppression_list_response.rb +167 -0
  108. data/lib/mailodds/models/suppression_stats_response.rb +165 -0
  109. data/lib/mailodds/models/suppression_stats_response_by_type.rb +156 -0
  110. data/lib/mailodds/models/telemetry_summary.rb +251 -0
  111. data/lib/mailodds/models/telemetry_summary_rates.rb +179 -0
  112. data/lib/mailodds/models/telemetry_summary_top_domains_inner.rb +192 -0
  113. data/lib/mailodds/models/telemetry_summary_top_reasons_inner.rb +156 -0
  114. data/lib/mailodds/models/telemetry_summary_totals.rb +158 -0
  115. data/lib/mailodds/models/test_policy_request.rb +190 -0
  116. data/lib/mailodds/models/test_policy_request_test_result.rb +184 -0
  117. data/lib/mailodds/models/update_policy_request.rb +174 -0
  118. data/lib/mailodds/models/validate_request.rb +175 -0
  119. data/lib/mailodds/models/validation_response.rb +326 -0
  120. data/lib/mailodds/models/validation_response_suppression_match.rb +199 -0
  121. data/lib/mailodds/models/validation_result.rb +183 -0
  122. data/lib/mailodds/version.rb +15 -0
  123. data/lib/mailodds.rb +96 -0
  124. data/mailodds.gemspec +31 -0
  125. data/spec/api/bulk_validation_api_spec.rb +151 -0
  126. data/spec/api/email_validation_api_spec.rb +47 -0
  127. data/spec/api/suppression_lists_api_spec.rb +97 -0
  128. data/spec/api/system_api_spec.rb +58 -0
  129. data/spec/api/validation_policies_api_spec.rb +157 -0
  130. data/spec/models/add_policy_rule201_response_spec.rb +36 -0
  131. data/spec/models/add_suppression_request_entries_inner_spec.rb +52 -0
  132. data/spec/models/add_suppression_request_spec.rb +36 -0
  133. data/spec/models/add_suppression_response_spec.rb +48 -0
  134. data/spec/models/check_suppression_request_spec.rb +36 -0
  135. data/spec/models/create_job_from_s3_request_spec.rb +42 -0
  136. data/spec/models/create_job_request_spec.rb +60 -0
  137. data/spec/models/create_policy_from_preset_request_spec.rb +52 -0
  138. data/spec/models/create_policy_request_spec.rb +54 -0
  139. data/spec/models/delete_job200_response_spec.rb +42 -0
  140. data/spec/models/delete_policy200_response_spec.rb +42 -0
  141. data/spec/models/delete_policy_rule200_response_spec.rb +36 -0
  142. data/spec/models/error_response_spec.rb +48 -0
  143. data/spec/models/get_presigned_upload_request_spec.rb +42 -0
  144. data/spec/models/health_check200_response_spec.rb +42 -0
  145. data/spec/models/job_list_response_spec.rb +48 -0
  146. data/spec/models/job_response_spec.rb +42 -0
  147. data/spec/models/job_spec.rb +88 -0
  148. data/spec/models/job_summary_spec.rb +60 -0
  149. data/spec/models/pagination_spec.rb +54 -0
  150. data/spec/models/policy_list_response_limits_spec.rb +48 -0
  151. data/spec/models/policy_list_response_spec.rb +48 -0
  152. data/spec/models/policy_presets_response_presets_inner_spec.rb +54 -0
  153. data/spec/models/policy_presets_response_spec.rb +42 -0
  154. data/spec/models/policy_response_spec.rb +42 -0
  155. data/spec/models/policy_rule_action_spec.rb +40 -0
  156. data/spec/models/policy_rule_spec.rb +70 -0
  157. data/spec/models/policy_spec.rb +84 -0
  158. data/spec/models/policy_test_response_spec.rb +60 -0
  159. data/spec/models/presigned_upload_response_spec.rb +42 -0
  160. data/spec/models/presigned_upload_response_upload_spec.rb +54 -0
  161. data/spec/models/remove_suppression200_response_spec.rb +42 -0
  162. data/spec/models/remove_suppression_request_spec.rb +36 -0
  163. data/spec/models/results_response_spec.rb +48 -0
  164. data/spec/models/suppression_check_response_spec.rb +64 -0
  165. data/spec/models/suppression_entry_spec.rb +64 -0
  166. data/spec/models/suppression_list_response_spec.rb +48 -0
  167. data/spec/models/suppression_stats_response_by_type_spec.rb +42 -0
  168. data/spec/models/suppression_stats_response_spec.rb +48 -0
  169. data/spec/models/telemetry_summary_rates_spec.rb +54 -0
  170. data/spec/models/telemetry_summary_spec.rb +82 -0
  171. data/spec/models/telemetry_summary_top_domains_inner_spec.rb +66 -0
  172. data/spec/models/telemetry_summary_top_reasons_inner_spec.rb +42 -0
  173. data/spec/models/telemetry_summary_totals_spec.rb +42 -0
  174. data/spec/models/test_policy_request_spec.rb +42 -0
  175. data/spec/models/test_policy_request_test_result_spec.rb +60 -0
  176. data/spec/models/update_policy_request_spec.rb +54 -0
  177. data/spec/models/validate_request_spec.rb +42 -0
  178. data/spec/models/validation_response_spec.rb +110 -0
  179. data/spec/models/validation_response_suppression_match_spec.rb +52 -0
  180. data/spec/models/validation_result_spec.rb +60 -0
  181. data/spec/spec_helper.rb +111 -0
  182. metadata +322 -0
@@ -0,0 +1,18 @@
1
+ # Mailodds::RemoveSuppressionRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **entries** | **Array<String>** | | |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'mailodds'
13
+
14
+ instance = Mailodds::RemoveSuppressionRequest.new(
15
+ entries: null
16
+ )
17
+ ```
18
+
@@ -0,0 +1,22 @@
1
+ # Mailodds::ResultsResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **schema_version** | **String** | | [optional] |
8
+ | **results** | [**Array<ValidationResult>**](ValidationResult.md) | | [optional] |
9
+ | **pagination** | [**Pagination**](Pagination.md) | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'mailodds'
15
+
16
+ instance = Mailodds::ResultsResponse.new(
17
+ schema_version: null,
18
+ results: null,
19
+ pagination: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,26 @@
1
+ # Mailodds::SuppressionCheckResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **schema_version** | **String** | | [optional] |
8
+ | **email** | **String** | | [optional] |
9
+ | **suppressed** | **Boolean** | | [optional] |
10
+ | **match_type** | **String** | | [optional] |
11
+ | **match_value** | **String** | | [optional] |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'mailodds'
17
+
18
+ instance = Mailodds::SuppressionCheckResponse.new(
19
+ schema_version: null,
20
+ email: null,
21
+ suppressed: null,
22
+ match_type: null,
23
+ match_value: null
24
+ )
25
+ ```
26
+
@@ -0,0 +1,26 @@
1
+ # Mailodds::SuppressionEntry
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **Integer** | | [optional] |
8
+ | **type** | **String** | | [optional] |
9
+ | **value** | **String** | | [optional] |
10
+ | **reason** | **String** | | [optional] |
11
+ | **created_at** | **Time** | | [optional] |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'mailodds'
17
+
18
+ instance = Mailodds::SuppressionEntry.new(
19
+ id: null,
20
+ type: null,
21
+ value: null,
22
+ reason: null,
23
+ created_at: null
24
+ )
25
+ ```
26
+
@@ -0,0 +1,22 @@
1
+ # Mailodds::SuppressionListResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **schema_version** | **String** | | [optional] |
8
+ | **entries** | [**Array<SuppressionEntry>**](SuppressionEntry.md) | | [optional] |
9
+ | **pagination** | [**Pagination**](Pagination.md) | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'mailodds'
15
+
16
+ instance = Mailodds::SuppressionListResponse.new(
17
+ schema_version: null,
18
+ entries: null,
19
+ pagination: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,362 @@
1
+ # Mailodds::SuppressionListsApi
2
+
3
+ All URIs are relative to *https://api.mailodds.com/v1*
4
+
5
+ | Method | HTTP request | Description |
6
+ | ------ | ------------ | ----------- |
7
+ | [**add_suppression**](SuppressionListsApi.md#add_suppression) | **POST** /v1/suppression | Add suppression entries |
8
+ | [**check_suppression**](SuppressionListsApi.md#check_suppression) | **POST** /v1/suppression/check | Check suppression status |
9
+ | [**get_suppression_stats**](SuppressionListsApi.md#get_suppression_stats) | **GET** /v1/suppression/stats | Get suppression statistics |
10
+ | [**list_suppression**](SuppressionListsApi.md#list_suppression) | **GET** /v1/suppression | List suppression entries |
11
+ | [**remove_suppression**](SuppressionListsApi.md#remove_suppression) | **DELETE** /v1/suppression | Remove suppression entries |
12
+
13
+
14
+ ## add_suppression
15
+
16
+ > <AddSuppressionResponse> add_suppression(add_suppression_request)
17
+
18
+ Add suppression entries
19
+
20
+ Add emails or domains to the suppression list.
21
+
22
+ ### Examples
23
+
24
+ ```ruby
25
+ require 'time'
26
+ require 'mailodds'
27
+ # setup authorization
28
+ Mailodds.configure do |config|
29
+ # Configure Bearer authorization: BearerAuth
30
+ config.access_token = 'YOUR_BEARER_TOKEN'
31
+ end
32
+
33
+ api_instance = Mailodds::SuppressionListsApi.new
34
+ add_suppression_request = Mailodds::AddSuppressionRequest.new({entries: [Mailodds::AddSuppressionRequestEntriesInner.new({type: 'email', value: 'value_example'})]}) # AddSuppressionRequest |
35
+
36
+ begin
37
+ # Add suppression entries
38
+ result = api_instance.add_suppression(add_suppression_request)
39
+ p result
40
+ rescue Mailodds::ApiError => e
41
+ puts "Error when calling SuppressionListsApi->add_suppression: #{e}"
42
+ end
43
+ ```
44
+
45
+ #### Using the add_suppression_with_http_info variant
46
+
47
+ This returns an Array which contains the response data, status code and headers.
48
+
49
+ > <Array(<AddSuppressionResponse>, Integer, Hash)> add_suppression_with_http_info(add_suppression_request)
50
+
51
+ ```ruby
52
+ begin
53
+ # Add suppression entries
54
+ data, status_code, headers = api_instance.add_suppression_with_http_info(add_suppression_request)
55
+ p status_code # => 2xx
56
+ p headers # => { ... }
57
+ p data # => <AddSuppressionResponse>
58
+ rescue Mailodds::ApiError => e
59
+ puts "Error when calling SuppressionListsApi->add_suppression_with_http_info: #{e}"
60
+ end
61
+ ```
62
+
63
+ ### Parameters
64
+
65
+ | Name | Type | Description | Notes |
66
+ | ---- | ---- | ----------- | ----- |
67
+ | **add_suppression_request** | [**AddSuppressionRequest**](AddSuppressionRequest.md) | | |
68
+
69
+ ### Return type
70
+
71
+ [**AddSuppressionResponse**](AddSuppressionResponse.md)
72
+
73
+ ### Authorization
74
+
75
+ [BearerAuth](../README.md#BearerAuth)
76
+
77
+ ### HTTP request headers
78
+
79
+ - **Content-Type**: application/json
80
+ - **Accept**: application/json
81
+
82
+
83
+ ## check_suppression
84
+
85
+ > <SuppressionCheckResponse> check_suppression(check_suppression_request)
86
+
87
+ Check suppression status
88
+
89
+ Check if an email is suppressed.
90
+
91
+ ### Examples
92
+
93
+ ```ruby
94
+ require 'time'
95
+ require 'mailodds'
96
+ # setup authorization
97
+ Mailodds.configure do |config|
98
+ # Configure Bearer authorization: BearerAuth
99
+ config.access_token = 'YOUR_BEARER_TOKEN'
100
+ end
101
+
102
+ api_instance = Mailodds::SuppressionListsApi.new
103
+ check_suppression_request = Mailodds::CheckSuppressionRequest.new({email: 'email_example'}) # CheckSuppressionRequest |
104
+
105
+ begin
106
+ # Check suppression status
107
+ result = api_instance.check_suppression(check_suppression_request)
108
+ p result
109
+ rescue Mailodds::ApiError => e
110
+ puts "Error when calling SuppressionListsApi->check_suppression: #{e}"
111
+ end
112
+ ```
113
+
114
+ #### Using the check_suppression_with_http_info variant
115
+
116
+ This returns an Array which contains the response data, status code and headers.
117
+
118
+ > <Array(<SuppressionCheckResponse>, Integer, Hash)> check_suppression_with_http_info(check_suppression_request)
119
+
120
+ ```ruby
121
+ begin
122
+ # Check suppression status
123
+ data, status_code, headers = api_instance.check_suppression_with_http_info(check_suppression_request)
124
+ p status_code # => 2xx
125
+ p headers # => { ... }
126
+ p data # => <SuppressionCheckResponse>
127
+ rescue Mailodds::ApiError => e
128
+ puts "Error when calling SuppressionListsApi->check_suppression_with_http_info: #{e}"
129
+ end
130
+ ```
131
+
132
+ ### Parameters
133
+
134
+ | Name | Type | Description | Notes |
135
+ | ---- | ---- | ----------- | ----- |
136
+ | **check_suppression_request** | [**CheckSuppressionRequest**](CheckSuppressionRequest.md) | | |
137
+
138
+ ### Return type
139
+
140
+ [**SuppressionCheckResponse**](SuppressionCheckResponse.md)
141
+
142
+ ### Authorization
143
+
144
+ [BearerAuth](../README.md#BearerAuth)
145
+
146
+ ### HTTP request headers
147
+
148
+ - **Content-Type**: application/json
149
+ - **Accept**: application/json
150
+
151
+
152
+ ## get_suppression_stats
153
+
154
+ > <SuppressionStatsResponse> get_suppression_stats
155
+
156
+ Get suppression statistics
157
+
158
+ Get statistics about the suppression list.
159
+
160
+ ### Examples
161
+
162
+ ```ruby
163
+ require 'time'
164
+ require 'mailodds'
165
+ # setup authorization
166
+ Mailodds.configure do |config|
167
+ # Configure Bearer authorization: BearerAuth
168
+ config.access_token = 'YOUR_BEARER_TOKEN'
169
+ end
170
+
171
+ api_instance = Mailodds::SuppressionListsApi.new
172
+
173
+ begin
174
+ # Get suppression statistics
175
+ result = api_instance.get_suppression_stats
176
+ p result
177
+ rescue Mailodds::ApiError => e
178
+ puts "Error when calling SuppressionListsApi->get_suppression_stats: #{e}"
179
+ end
180
+ ```
181
+
182
+ #### Using the get_suppression_stats_with_http_info variant
183
+
184
+ This returns an Array which contains the response data, status code and headers.
185
+
186
+ > <Array(<SuppressionStatsResponse>, Integer, Hash)> get_suppression_stats_with_http_info
187
+
188
+ ```ruby
189
+ begin
190
+ # Get suppression statistics
191
+ data, status_code, headers = api_instance.get_suppression_stats_with_http_info
192
+ p status_code # => 2xx
193
+ p headers # => { ... }
194
+ p data # => <SuppressionStatsResponse>
195
+ rescue Mailodds::ApiError => e
196
+ puts "Error when calling SuppressionListsApi->get_suppression_stats_with_http_info: #{e}"
197
+ end
198
+ ```
199
+
200
+ ### Parameters
201
+
202
+ This endpoint does not need any parameter.
203
+
204
+ ### Return type
205
+
206
+ [**SuppressionStatsResponse**](SuppressionStatsResponse.md)
207
+
208
+ ### Authorization
209
+
210
+ [BearerAuth](../README.md#BearerAuth)
211
+
212
+ ### HTTP request headers
213
+
214
+ - **Content-Type**: Not defined
215
+ - **Accept**: application/json
216
+
217
+
218
+ ## list_suppression
219
+
220
+ > <SuppressionListResponse> list_suppression(opts)
221
+
222
+ List suppression entries
223
+
224
+ List all suppression entries for the account.
225
+
226
+ ### Examples
227
+
228
+ ```ruby
229
+ require 'time'
230
+ require 'mailodds'
231
+ # setup authorization
232
+ Mailodds.configure do |config|
233
+ # Configure Bearer authorization: BearerAuth
234
+ config.access_token = 'YOUR_BEARER_TOKEN'
235
+ end
236
+
237
+ api_instance = Mailodds::SuppressionListsApi.new
238
+ opts = {
239
+ page: 56, # Integer |
240
+ per_page: 56, # Integer |
241
+ type: 'email', # String |
242
+ search: 'search_example' # String |
243
+ }
244
+
245
+ begin
246
+ # List suppression entries
247
+ result = api_instance.list_suppression(opts)
248
+ p result
249
+ rescue Mailodds::ApiError => e
250
+ puts "Error when calling SuppressionListsApi->list_suppression: #{e}"
251
+ end
252
+ ```
253
+
254
+ #### Using the list_suppression_with_http_info variant
255
+
256
+ This returns an Array which contains the response data, status code and headers.
257
+
258
+ > <Array(<SuppressionListResponse>, Integer, Hash)> list_suppression_with_http_info(opts)
259
+
260
+ ```ruby
261
+ begin
262
+ # List suppression entries
263
+ data, status_code, headers = api_instance.list_suppression_with_http_info(opts)
264
+ p status_code # => 2xx
265
+ p headers # => { ... }
266
+ p data # => <SuppressionListResponse>
267
+ rescue Mailodds::ApiError => e
268
+ puts "Error when calling SuppressionListsApi->list_suppression_with_http_info: #{e}"
269
+ end
270
+ ```
271
+
272
+ ### Parameters
273
+
274
+ | Name | Type | Description | Notes |
275
+ | ---- | ---- | ----------- | ----- |
276
+ | **page** | **Integer** | | [optional][default to 1] |
277
+ | **per_page** | **Integer** | | [optional][default to 50] |
278
+ | **type** | **String** | | [optional] |
279
+ | **search** | **String** | | [optional] |
280
+
281
+ ### Return type
282
+
283
+ [**SuppressionListResponse**](SuppressionListResponse.md)
284
+
285
+ ### Authorization
286
+
287
+ [BearerAuth](../README.md#BearerAuth)
288
+
289
+ ### HTTP request headers
290
+
291
+ - **Content-Type**: Not defined
292
+ - **Accept**: application/json
293
+
294
+
295
+ ## remove_suppression
296
+
297
+ > <RemoveSuppression200Response> remove_suppression(remove_suppression_request)
298
+
299
+ Remove suppression entries
300
+
301
+ Remove emails or domains from the suppression list.
302
+
303
+ ### Examples
304
+
305
+ ```ruby
306
+ require 'time'
307
+ require 'mailodds'
308
+ # setup authorization
309
+ Mailodds.configure do |config|
310
+ # Configure Bearer authorization: BearerAuth
311
+ config.access_token = 'YOUR_BEARER_TOKEN'
312
+ end
313
+
314
+ api_instance = Mailodds::SuppressionListsApi.new
315
+ remove_suppression_request = Mailodds::RemoveSuppressionRequest.new({entries: ['entries_example']}) # RemoveSuppressionRequest |
316
+
317
+ begin
318
+ # Remove suppression entries
319
+ result = api_instance.remove_suppression(remove_suppression_request)
320
+ p result
321
+ rescue Mailodds::ApiError => e
322
+ puts "Error when calling SuppressionListsApi->remove_suppression: #{e}"
323
+ end
324
+ ```
325
+
326
+ #### Using the remove_suppression_with_http_info variant
327
+
328
+ This returns an Array which contains the response data, status code and headers.
329
+
330
+ > <Array(<RemoveSuppression200Response>, Integer, Hash)> remove_suppression_with_http_info(remove_suppression_request)
331
+
332
+ ```ruby
333
+ begin
334
+ # Remove suppression entries
335
+ data, status_code, headers = api_instance.remove_suppression_with_http_info(remove_suppression_request)
336
+ p status_code # => 2xx
337
+ p headers # => { ... }
338
+ p data # => <RemoveSuppression200Response>
339
+ rescue Mailodds::ApiError => e
340
+ puts "Error when calling SuppressionListsApi->remove_suppression_with_http_info: #{e}"
341
+ end
342
+ ```
343
+
344
+ ### Parameters
345
+
346
+ | Name | Type | Description | Notes |
347
+ | ---- | ---- | ----------- | ----- |
348
+ | **remove_suppression_request** | [**RemoveSuppressionRequest**](RemoveSuppressionRequest.md) | | |
349
+
350
+ ### Return type
351
+
352
+ [**RemoveSuppression200Response**](RemoveSuppression200Response.md)
353
+
354
+ ### Authorization
355
+
356
+ [BearerAuth](../README.md#BearerAuth)
357
+
358
+ ### HTTP request headers
359
+
360
+ - **Content-Type**: application/json
361
+ - **Accept**: application/json
362
+
@@ -0,0 +1,22 @@
1
+ # Mailodds::SuppressionStatsResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **schema_version** | **String** | | [optional] |
8
+ | **total** | **Integer** | | [optional] |
9
+ | **by_type** | [**SuppressionStatsResponseByType**](SuppressionStatsResponseByType.md) | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'mailodds'
15
+
16
+ instance = Mailodds::SuppressionStatsResponse.new(
17
+ schema_version: null,
18
+ total: null,
19
+ by_type: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,20 @@
1
+ # Mailodds::SuppressionStatsResponseByType
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **email** | **Integer** | | [optional] |
8
+ | **domain** | **Integer** | | [optional] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'mailodds'
14
+
15
+ instance = Mailodds::SuppressionStatsResponseByType.new(
16
+ email: null,
17
+ domain: null
18
+ )
19
+ ```
20
+
data/docs/SystemApi.md ADDED
@@ -0,0 +1,141 @@
1
+ # Mailodds::SystemApi
2
+
3
+ All URIs are relative to *https://api.mailodds.com/v1*
4
+
5
+ | Method | HTTP request | Description |
6
+ | ------ | ------------ | ----------- |
7
+ | [**get_telemetry_summary**](SystemApi.md#get_telemetry_summary) | **GET** /v1/telemetry/summary | Get validation telemetry |
8
+ | [**health_check**](SystemApi.md#health_check) | **GET** /health | Health check |
9
+
10
+
11
+ ## get_telemetry_summary
12
+
13
+ > <TelemetrySummary> get_telemetry_summary(opts)
14
+
15
+ Get validation telemetry
16
+
17
+ Get validation metrics for your account. Useful for building dashboards and monitoring. Supports ETag caching.
18
+
19
+ ### Examples
20
+
21
+ ```ruby
22
+ require 'time'
23
+ require 'mailodds'
24
+ # setup authorization
25
+ Mailodds.configure do |config|
26
+ # Configure Bearer authorization: BearerAuth
27
+ config.access_token = 'YOUR_BEARER_TOKEN'
28
+ end
29
+
30
+ api_instance = Mailodds::SystemApi.new
31
+ opts = {
32
+ window: '1h' # String | Time window for metrics
33
+ }
34
+
35
+ begin
36
+ # Get validation telemetry
37
+ result = api_instance.get_telemetry_summary(opts)
38
+ p result
39
+ rescue Mailodds::ApiError => e
40
+ puts "Error when calling SystemApi->get_telemetry_summary: #{e}"
41
+ end
42
+ ```
43
+
44
+ #### Using the get_telemetry_summary_with_http_info variant
45
+
46
+ This returns an Array which contains the response data, status code and headers.
47
+
48
+ > <Array(<TelemetrySummary>, Integer, Hash)> get_telemetry_summary_with_http_info(opts)
49
+
50
+ ```ruby
51
+ begin
52
+ # Get validation telemetry
53
+ data, status_code, headers = api_instance.get_telemetry_summary_with_http_info(opts)
54
+ p status_code # => 2xx
55
+ p headers # => { ... }
56
+ p data # => <TelemetrySummary>
57
+ rescue Mailodds::ApiError => e
58
+ puts "Error when calling SystemApi->get_telemetry_summary_with_http_info: #{e}"
59
+ end
60
+ ```
61
+
62
+ ### Parameters
63
+
64
+ | Name | Type | Description | Notes |
65
+ | ---- | ---- | ----------- | ----- |
66
+ | **window** | **String** | Time window for metrics | [optional][default to &#39;24h&#39;] |
67
+
68
+ ### Return type
69
+
70
+ [**TelemetrySummary**](TelemetrySummary.md)
71
+
72
+ ### Authorization
73
+
74
+ [BearerAuth](../README.md#BearerAuth)
75
+
76
+ ### HTTP request headers
77
+
78
+ - **Content-Type**: Not defined
79
+ - **Accept**: application/json
80
+
81
+
82
+ ## health_check
83
+
84
+ > <HealthCheck200Response> health_check
85
+
86
+ Health check
87
+
88
+ Check API health status. No authentication required.
89
+
90
+ ### Examples
91
+
92
+ ```ruby
93
+ require 'time'
94
+ require 'mailodds'
95
+
96
+ api_instance = Mailodds::SystemApi.new
97
+
98
+ begin
99
+ # Health check
100
+ result = api_instance.health_check
101
+ p result
102
+ rescue Mailodds::ApiError => e
103
+ puts "Error when calling SystemApi->health_check: #{e}"
104
+ end
105
+ ```
106
+
107
+ #### Using the health_check_with_http_info variant
108
+
109
+ This returns an Array which contains the response data, status code and headers.
110
+
111
+ > <Array(<HealthCheck200Response>, Integer, Hash)> health_check_with_http_info
112
+
113
+ ```ruby
114
+ begin
115
+ # Health check
116
+ data, status_code, headers = api_instance.health_check_with_http_info
117
+ p status_code # => 2xx
118
+ p headers # => { ... }
119
+ p data # => <HealthCheck200Response>
120
+ rescue Mailodds::ApiError => e
121
+ puts "Error when calling SystemApi->health_check_with_http_info: #{e}"
122
+ end
123
+ ```
124
+
125
+ ### Parameters
126
+
127
+ This endpoint does not need any parameter.
128
+
129
+ ### Return type
130
+
131
+ [**HealthCheck200Response**](HealthCheck200Response.md)
132
+
133
+ ### Authorization
134
+
135
+ No authorization required
136
+
137
+ ### HTTP request headers
138
+
139
+ - **Content-Type**: Not defined
140
+ - **Accept**: application/json
141
+
@@ -0,0 +1,32 @@
1
+ # Mailodds::TelemetrySummary
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **schema_version** | **String** | | [optional] |
8
+ | **window** | **String** | | [optional] |
9
+ | **generated_at** | **Time** | | [optional] |
10
+ | **timezone** | **String** | | [optional] |
11
+ | **totals** | [**TelemetrySummaryTotals**](TelemetrySummaryTotals.md) | | [optional] |
12
+ | **rates** | [**TelemetrySummaryRates**](TelemetrySummaryRates.md) | | [optional] |
13
+ | **top_reasons** | [**Array&lt;TelemetrySummaryTopReasonsInner&gt;**](TelemetrySummaryTopReasonsInner.md) | Top rejection/status reasons | [optional] |
14
+ | **top_domains** | [**Array&lt;TelemetrySummaryTopDomainsInner&gt;**](TelemetrySummaryTopDomainsInner.md) | Top domains by volume | [optional] |
15
+
16
+ ## Example
17
+
18
+ ```ruby
19
+ require 'mailodds'
20
+
21
+ instance = Mailodds::TelemetrySummary.new(
22
+ schema_version: 1.0,
23
+ window: null,
24
+ generated_at: null,
25
+ timezone: UTC,
26
+ totals: null,
27
+ rates: null,
28
+ top_reasons: null,
29
+ top_domains: null
30
+ )
31
+ ```
32
+