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,659 @@
1
+ # Mailodds::BulkValidationApi
2
+
3
+ All URIs are relative to *https://api.mailodds.com/v1*
4
+
5
+ | Method | HTTP request | Description |
6
+ | ------ | ------------ | ----------- |
7
+ | [**cancel_job**](BulkValidationApi.md#cancel_job) | **POST** /v1/jobs/{job_id}/cancel | Cancel a job |
8
+ | [**create_job**](BulkValidationApi.md#create_job) | **POST** /v1/jobs | Create bulk validation job (JSON) |
9
+ | [**create_job_from_s3**](BulkValidationApi.md#create_job_from_s3) | **POST** /v1/jobs/upload/s3 | Create job from S3 upload |
10
+ | [**create_job_upload**](BulkValidationApi.md#create_job_upload) | **POST** /v1/jobs/upload | Create bulk validation job (file upload) |
11
+ | [**delete_job**](BulkValidationApi.md#delete_job) | **DELETE** /v1/jobs/{job_id} | Delete a job |
12
+ | [**get_job**](BulkValidationApi.md#get_job) | **GET** /v1/jobs/{job_id} | Get job status |
13
+ | [**get_job_results**](BulkValidationApi.md#get_job_results) | **GET** /v1/jobs/{job_id}/results | Get job results |
14
+ | [**get_presigned_upload**](BulkValidationApi.md#get_presigned_upload) | **POST** /v1/jobs/upload/presigned | Get S3 presigned upload URL |
15
+ | [**list_jobs**](BulkValidationApi.md#list_jobs) | **GET** /v1/jobs | List validation jobs |
16
+
17
+
18
+ ## cancel_job
19
+
20
+ > <JobResponse> cancel_job(job_id)
21
+
22
+ Cancel a job
23
+
24
+ Cancel a pending or processing job. Partial results are preserved.
25
+
26
+ ### Examples
27
+
28
+ ```ruby
29
+ require 'time'
30
+ require 'mailodds'
31
+ # setup authorization
32
+ Mailodds.configure do |config|
33
+ # Configure Bearer authorization: BearerAuth
34
+ config.access_token = 'YOUR_BEARER_TOKEN'
35
+ end
36
+
37
+ api_instance = Mailodds::BulkValidationApi.new
38
+ job_id = 'job_id_example' # String |
39
+
40
+ begin
41
+ # Cancel a job
42
+ result = api_instance.cancel_job(job_id)
43
+ p result
44
+ rescue Mailodds::ApiError => e
45
+ puts "Error when calling BulkValidationApi->cancel_job: #{e}"
46
+ end
47
+ ```
48
+
49
+ #### Using the cancel_job_with_http_info variant
50
+
51
+ This returns an Array which contains the response data, status code and headers.
52
+
53
+ > <Array(<JobResponse>, Integer, Hash)> cancel_job_with_http_info(job_id)
54
+
55
+ ```ruby
56
+ begin
57
+ # Cancel a job
58
+ data, status_code, headers = api_instance.cancel_job_with_http_info(job_id)
59
+ p status_code # => 2xx
60
+ p headers # => { ... }
61
+ p data # => <JobResponse>
62
+ rescue Mailodds::ApiError => e
63
+ puts "Error when calling BulkValidationApi->cancel_job_with_http_info: #{e}"
64
+ end
65
+ ```
66
+
67
+ ### Parameters
68
+
69
+ | Name | Type | Description | Notes |
70
+ | ---- | ---- | ----------- | ----- |
71
+ | **job_id** | **String** | | |
72
+
73
+ ### Return type
74
+
75
+ [**JobResponse**](JobResponse.md)
76
+
77
+ ### Authorization
78
+
79
+ [BearerAuth](../README.md#BearerAuth)
80
+
81
+ ### HTTP request headers
82
+
83
+ - **Content-Type**: Not defined
84
+ - **Accept**: application/json
85
+
86
+
87
+ ## create_job
88
+
89
+ > <JobResponse> create_job(create_job_request)
90
+
91
+ Create bulk validation job (JSON)
92
+
93
+ Create a new bulk validation job by submitting a JSON array of emails.
94
+
95
+ ### Examples
96
+
97
+ ```ruby
98
+ require 'time'
99
+ require 'mailodds'
100
+ # setup authorization
101
+ Mailodds.configure do |config|
102
+ # Configure Bearer authorization: BearerAuth
103
+ config.access_token = 'YOUR_BEARER_TOKEN'
104
+ end
105
+
106
+ api_instance = Mailodds::BulkValidationApi.new
107
+ create_job_request = Mailodds::CreateJobRequest.new({emails: ['emails_example']}) # CreateJobRequest |
108
+
109
+ begin
110
+ # Create bulk validation job (JSON)
111
+ result = api_instance.create_job(create_job_request)
112
+ p result
113
+ rescue Mailodds::ApiError => e
114
+ puts "Error when calling BulkValidationApi->create_job: #{e}"
115
+ end
116
+ ```
117
+
118
+ #### Using the create_job_with_http_info variant
119
+
120
+ This returns an Array which contains the response data, status code and headers.
121
+
122
+ > <Array(<JobResponse>, Integer, Hash)> create_job_with_http_info(create_job_request)
123
+
124
+ ```ruby
125
+ begin
126
+ # Create bulk validation job (JSON)
127
+ data, status_code, headers = api_instance.create_job_with_http_info(create_job_request)
128
+ p status_code # => 2xx
129
+ p headers # => { ... }
130
+ p data # => <JobResponse>
131
+ rescue Mailodds::ApiError => e
132
+ puts "Error when calling BulkValidationApi->create_job_with_http_info: #{e}"
133
+ end
134
+ ```
135
+
136
+ ### Parameters
137
+
138
+ | Name | Type | Description | Notes |
139
+ | ---- | ---- | ----------- | ----- |
140
+ | **create_job_request** | [**CreateJobRequest**](CreateJobRequest.md) | | |
141
+
142
+ ### Return type
143
+
144
+ [**JobResponse**](JobResponse.md)
145
+
146
+ ### Authorization
147
+
148
+ [BearerAuth](../README.md#BearerAuth)
149
+
150
+ ### HTTP request headers
151
+
152
+ - **Content-Type**: application/json
153
+ - **Accept**: application/json
154
+
155
+
156
+ ## create_job_from_s3
157
+
158
+ > <JobResponse> create_job_from_s3(create_job_from_s3_request)
159
+
160
+ Create job from S3 upload
161
+
162
+ Create a validation job from a file previously uploaded to S3.
163
+
164
+ ### Examples
165
+
166
+ ```ruby
167
+ require 'time'
168
+ require 'mailodds'
169
+ # setup authorization
170
+ Mailodds.configure do |config|
171
+ # Configure Bearer authorization: BearerAuth
172
+ config.access_token = 'YOUR_BEARER_TOKEN'
173
+ end
174
+
175
+ api_instance = Mailodds::BulkValidationApi.new
176
+ create_job_from_s3_request = Mailodds::CreateJobFromS3Request.new({s3_key: 's3_key_example'}) # CreateJobFromS3Request |
177
+
178
+ begin
179
+ # Create job from S3 upload
180
+ result = api_instance.create_job_from_s3(create_job_from_s3_request)
181
+ p result
182
+ rescue Mailodds::ApiError => e
183
+ puts "Error when calling BulkValidationApi->create_job_from_s3: #{e}"
184
+ end
185
+ ```
186
+
187
+ #### Using the create_job_from_s3_with_http_info variant
188
+
189
+ This returns an Array which contains the response data, status code and headers.
190
+
191
+ > <Array(<JobResponse>, Integer, Hash)> create_job_from_s3_with_http_info(create_job_from_s3_request)
192
+
193
+ ```ruby
194
+ begin
195
+ # Create job from S3 upload
196
+ data, status_code, headers = api_instance.create_job_from_s3_with_http_info(create_job_from_s3_request)
197
+ p status_code # => 2xx
198
+ p headers # => { ... }
199
+ p data # => <JobResponse>
200
+ rescue Mailodds::ApiError => e
201
+ puts "Error when calling BulkValidationApi->create_job_from_s3_with_http_info: #{e}"
202
+ end
203
+ ```
204
+
205
+ ### Parameters
206
+
207
+ | Name | Type | Description | Notes |
208
+ | ---- | ---- | ----------- | ----- |
209
+ | **create_job_from_s3_request** | [**CreateJobFromS3Request**](CreateJobFromS3Request.md) | | |
210
+
211
+ ### Return type
212
+
213
+ [**JobResponse**](JobResponse.md)
214
+
215
+ ### Authorization
216
+
217
+ [BearerAuth](../README.md#BearerAuth)
218
+
219
+ ### HTTP request headers
220
+
221
+ - **Content-Type**: application/json
222
+ - **Accept**: application/json
223
+
224
+
225
+ ## create_job_upload
226
+
227
+ > <JobResponse> create_job_upload(file, opts)
228
+
229
+ Create bulk validation job (file upload)
230
+
231
+ Create a new bulk validation job by uploading a CSV, Excel, or TXT file.
232
+
233
+ ### Examples
234
+
235
+ ```ruby
236
+ require 'time'
237
+ require 'mailodds'
238
+ # setup authorization
239
+ Mailodds.configure do |config|
240
+ # Configure Bearer authorization: BearerAuth
241
+ config.access_token = 'YOUR_BEARER_TOKEN'
242
+ end
243
+
244
+ api_instance = Mailodds::BulkValidationApi.new
245
+ file = File.new('/path/to/some/file') # File | CSV, Excel (.xlsx, .xls), ODS, or TXT file
246
+ opts = {
247
+ dedup: true, # Boolean | Remove duplicate emails
248
+ metadata: 'metadata_example' # String | JSON metadata for the job
249
+ }
250
+
251
+ begin
252
+ # Create bulk validation job (file upload)
253
+ result = api_instance.create_job_upload(file, opts)
254
+ p result
255
+ rescue Mailodds::ApiError => e
256
+ puts "Error when calling BulkValidationApi->create_job_upload: #{e}"
257
+ end
258
+ ```
259
+
260
+ #### Using the create_job_upload_with_http_info variant
261
+
262
+ This returns an Array which contains the response data, status code and headers.
263
+
264
+ > <Array(<JobResponse>, Integer, Hash)> create_job_upload_with_http_info(file, opts)
265
+
266
+ ```ruby
267
+ begin
268
+ # Create bulk validation job (file upload)
269
+ data, status_code, headers = api_instance.create_job_upload_with_http_info(file, opts)
270
+ p status_code # => 2xx
271
+ p headers # => { ... }
272
+ p data # => <JobResponse>
273
+ rescue Mailodds::ApiError => e
274
+ puts "Error when calling BulkValidationApi->create_job_upload_with_http_info: #{e}"
275
+ end
276
+ ```
277
+
278
+ ### Parameters
279
+
280
+ | Name | Type | Description | Notes |
281
+ | ---- | ---- | ----------- | ----- |
282
+ | **file** | **File** | CSV, Excel (.xlsx, .xls), ODS, or TXT file | |
283
+ | **dedup** | **Boolean** | Remove duplicate emails | [optional][default to false] |
284
+ | **metadata** | **String** | JSON metadata for the job | [optional] |
285
+
286
+ ### Return type
287
+
288
+ [**JobResponse**](JobResponse.md)
289
+
290
+ ### Authorization
291
+
292
+ [BearerAuth](../README.md#BearerAuth)
293
+
294
+ ### HTTP request headers
295
+
296
+ - **Content-Type**: multipart/form-data
297
+ - **Accept**: application/json
298
+
299
+
300
+ ## delete_job
301
+
302
+ > <DeleteJob200Response> delete_job(job_id)
303
+
304
+ Delete a job
305
+
306
+ Permanently delete a completed or cancelled job and its results.
307
+
308
+ ### Examples
309
+
310
+ ```ruby
311
+ require 'time'
312
+ require 'mailodds'
313
+ # setup authorization
314
+ Mailodds.configure do |config|
315
+ # Configure Bearer authorization: BearerAuth
316
+ config.access_token = 'YOUR_BEARER_TOKEN'
317
+ end
318
+
319
+ api_instance = Mailodds::BulkValidationApi.new
320
+ job_id = 'job_id_example' # String |
321
+
322
+ begin
323
+ # Delete a job
324
+ result = api_instance.delete_job(job_id)
325
+ p result
326
+ rescue Mailodds::ApiError => e
327
+ puts "Error when calling BulkValidationApi->delete_job: #{e}"
328
+ end
329
+ ```
330
+
331
+ #### Using the delete_job_with_http_info variant
332
+
333
+ This returns an Array which contains the response data, status code and headers.
334
+
335
+ > <Array(<DeleteJob200Response>, Integer, Hash)> delete_job_with_http_info(job_id)
336
+
337
+ ```ruby
338
+ begin
339
+ # Delete a job
340
+ data, status_code, headers = api_instance.delete_job_with_http_info(job_id)
341
+ p status_code # => 2xx
342
+ p headers # => { ... }
343
+ p data # => <DeleteJob200Response>
344
+ rescue Mailodds::ApiError => e
345
+ puts "Error when calling BulkValidationApi->delete_job_with_http_info: #{e}"
346
+ end
347
+ ```
348
+
349
+ ### Parameters
350
+
351
+ | Name | Type | Description | Notes |
352
+ | ---- | ---- | ----------- | ----- |
353
+ | **job_id** | **String** | | |
354
+
355
+ ### Return type
356
+
357
+ [**DeleteJob200Response**](DeleteJob200Response.md)
358
+
359
+ ### Authorization
360
+
361
+ [BearerAuth](../README.md#BearerAuth)
362
+
363
+ ### HTTP request headers
364
+
365
+ - **Content-Type**: Not defined
366
+ - **Accept**: application/json
367
+
368
+
369
+ ## get_job
370
+
371
+ > <JobResponse> get_job(job_id)
372
+
373
+ Get job status
374
+
375
+ Get the status and details of a specific validation job.
376
+
377
+ ### Examples
378
+
379
+ ```ruby
380
+ require 'time'
381
+ require 'mailodds'
382
+ # setup authorization
383
+ Mailodds.configure do |config|
384
+ # Configure Bearer authorization: BearerAuth
385
+ config.access_token = 'YOUR_BEARER_TOKEN'
386
+ end
387
+
388
+ api_instance = Mailodds::BulkValidationApi.new
389
+ job_id = 'job_id_example' # String |
390
+
391
+ begin
392
+ # Get job status
393
+ result = api_instance.get_job(job_id)
394
+ p result
395
+ rescue Mailodds::ApiError => e
396
+ puts "Error when calling BulkValidationApi->get_job: #{e}"
397
+ end
398
+ ```
399
+
400
+ #### Using the get_job_with_http_info variant
401
+
402
+ This returns an Array which contains the response data, status code and headers.
403
+
404
+ > <Array(<JobResponse>, Integer, Hash)> get_job_with_http_info(job_id)
405
+
406
+ ```ruby
407
+ begin
408
+ # Get job status
409
+ data, status_code, headers = api_instance.get_job_with_http_info(job_id)
410
+ p status_code # => 2xx
411
+ p headers # => { ... }
412
+ p data # => <JobResponse>
413
+ rescue Mailodds::ApiError => e
414
+ puts "Error when calling BulkValidationApi->get_job_with_http_info: #{e}"
415
+ end
416
+ ```
417
+
418
+ ### Parameters
419
+
420
+ | Name | Type | Description | Notes |
421
+ | ---- | ---- | ----------- | ----- |
422
+ | **job_id** | **String** | | |
423
+
424
+ ### Return type
425
+
426
+ [**JobResponse**](JobResponse.md)
427
+
428
+ ### Authorization
429
+
430
+ [BearerAuth](../README.md#BearerAuth)
431
+
432
+ ### HTTP request headers
433
+
434
+ - **Content-Type**: Not defined
435
+ - **Accept**: application/json
436
+
437
+
438
+ ## get_job_results
439
+
440
+ > <ResultsResponse> get_job_results(job_id, opts)
441
+
442
+ Get job results
443
+
444
+ Download validation results in JSON, CSV, or NDJSON format.
445
+
446
+ ### Examples
447
+
448
+ ```ruby
449
+ require 'time'
450
+ require 'mailodds'
451
+ # setup authorization
452
+ Mailodds.configure do |config|
453
+ # Configure Bearer authorization: BearerAuth
454
+ config.access_token = 'YOUR_BEARER_TOKEN'
455
+ end
456
+
457
+ api_instance = Mailodds::BulkValidationApi.new
458
+ job_id = 'job_id_example' # String |
459
+ opts = {
460
+ format: 'json', # String |
461
+ filter: 'all', # String |
462
+ page: 56, # Integer |
463
+ per_page: 56 # Integer |
464
+ }
465
+
466
+ begin
467
+ # Get job results
468
+ result = api_instance.get_job_results(job_id, opts)
469
+ p result
470
+ rescue Mailodds::ApiError => e
471
+ puts "Error when calling BulkValidationApi->get_job_results: #{e}"
472
+ end
473
+ ```
474
+
475
+ #### Using the get_job_results_with_http_info variant
476
+
477
+ This returns an Array which contains the response data, status code and headers.
478
+
479
+ > <Array(<ResultsResponse>, Integer, Hash)> get_job_results_with_http_info(job_id, opts)
480
+
481
+ ```ruby
482
+ begin
483
+ # Get job results
484
+ data, status_code, headers = api_instance.get_job_results_with_http_info(job_id, opts)
485
+ p status_code # => 2xx
486
+ p headers # => { ... }
487
+ p data # => <ResultsResponse>
488
+ rescue Mailodds::ApiError => e
489
+ puts "Error when calling BulkValidationApi->get_job_results_with_http_info: #{e}"
490
+ end
491
+ ```
492
+
493
+ ### Parameters
494
+
495
+ | Name | Type | Description | Notes |
496
+ | ---- | ---- | ----------- | ----- |
497
+ | **job_id** | **String** | | |
498
+ | **format** | **String** | | [optional][default to &#39;json&#39;] |
499
+ | **filter** | **String** | | [optional] |
500
+ | **page** | **Integer** | | [optional][default to 1] |
501
+ | **per_page** | **Integer** | | [optional][default to 1000] |
502
+
503
+ ### Return type
504
+
505
+ [**ResultsResponse**](ResultsResponse.md)
506
+
507
+ ### Authorization
508
+
509
+ [BearerAuth](../README.md#BearerAuth)
510
+
511
+ ### HTTP request headers
512
+
513
+ - **Content-Type**: Not defined
514
+ - **Accept**: application/json, text/csv, application/x-ndjson
515
+
516
+
517
+ ## get_presigned_upload
518
+
519
+ > <PresignedUploadResponse> get_presigned_upload(get_presigned_upload_request)
520
+
521
+ Get S3 presigned upload URL
522
+
523
+ Get a presigned URL for uploading large files (>10MB) directly to S3.
524
+
525
+ ### Examples
526
+
527
+ ```ruby
528
+ require 'time'
529
+ require 'mailodds'
530
+ # setup authorization
531
+ Mailodds.configure do |config|
532
+ # Configure Bearer authorization: BearerAuth
533
+ config.access_token = 'YOUR_BEARER_TOKEN'
534
+ end
535
+
536
+ api_instance = Mailodds::BulkValidationApi.new
537
+ get_presigned_upload_request = Mailodds::GetPresignedUploadRequest.new({filename: 'filename_example'}) # GetPresignedUploadRequest |
538
+
539
+ begin
540
+ # Get S3 presigned upload URL
541
+ result = api_instance.get_presigned_upload(get_presigned_upload_request)
542
+ p result
543
+ rescue Mailodds::ApiError => e
544
+ puts "Error when calling BulkValidationApi->get_presigned_upload: #{e}"
545
+ end
546
+ ```
547
+
548
+ #### Using the get_presigned_upload_with_http_info variant
549
+
550
+ This returns an Array which contains the response data, status code and headers.
551
+
552
+ > <Array(<PresignedUploadResponse>, Integer, Hash)> get_presigned_upload_with_http_info(get_presigned_upload_request)
553
+
554
+ ```ruby
555
+ begin
556
+ # Get S3 presigned upload URL
557
+ data, status_code, headers = api_instance.get_presigned_upload_with_http_info(get_presigned_upload_request)
558
+ p status_code # => 2xx
559
+ p headers # => { ... }
560
+ p data # => <PresignedUploadResponse>
561
+ rescue Mailodds::ApiError => e
562
+ puts "Error when calling BulkValidationApi->get_presigned_upload_with_http_info: #{e}"
563
+ end
564
+ ```
565
+
566
+ ### Parameters
567
+
568
+ | Name | Type | Description | Notes |
569
+ | ---- | ---- | ----------- | ----- |
570
+ | **get_presigned_upload_request** | [**GetPresignedUploadRequest**](GetPresignedUploadRequest.md) | | |
571
+
572
+ ### Return type
573
+
574
+ [**PresignedUploadResponse**](PresignedUploadResponse.md)
575
+
576
+ ### Authorization
577
+
578
+ [BearerAuth](../README.md#BearerAuth)
579
+
580
+ ### HTTP request headers
581
+
582
+ - **Content-Type**: application/json
583
+ - **Accept**: application/json
584
+
585
+
586
+ ## list_jobs
587
+
588
+ > <JobListResponse> list_jobs(opts)
589
+
590
+ List validation jobs
591
+
592
+ List all validation jobs for the authenticated account.
593
+
594
+ ### Examples
595
+
596
+ ```ruby
597
+ require 'time'
598
+ require 'mailodds'
599
+ # setup authorization
600
+ Mailodds.configure do |config|
601
+ # Configure Bearer authorization: BearerAuth
602
+ config.access_token = 'YOUR_BEARER_TOKEN'
603
+ end
604
+
605
+ api_instance = Mailodds::BulkValidationApi.new
606
+ opts = {
607
+ page: 56, # Integer |
608
+ per_page: 56, # Integer |
609
+ status: 'pending' # String |
610
+ }
611
+
612
+ begin
613
+ # List validation jobs
614
+ result = api_instance.list_jobs(opts)
615
+ p result
616
+ rescue Mailodds::ApiError => e
617
+ puts "Error when calling BulkValidationApi->list_jobs: #{e}"
618
+ end
619
+ ```
620
+
621
+ #### Using the list_jobs_with_http_info variant
622
+
623
+ This returns an Array which contains the response data, status code and headers.
624
+
625
+ > <Array(<JobListResponse>, Integer, Hash)> list_jobs_with_http_info(opts)
626
+
627
+ ```ruby
628
+ begin
629
+ # List validation jobs
630
+ data, status_code, headers = api_instance.list_jobs_with_http_info(opts)
631
+ p status_code # => 2xx
632
+ p headers # => { ... }
633
+ p data # => <JobListResponse>
634
+ rescue Mailodds::ApiError => e
635
+ puts "Error when calling BulkValidationApi->list_jobs_with_http_info: #{e}"
636
+ end
637
+ ```
638
+
639
+ ### Parameters
640
+
641
+ | Name | Type | Description | Notes |
642
+ | ---- | ---- | ----------- | ----- |
643
+ | **page** | **Integer** | | [optional][default to 1] |
644
+ | **per_page** | **Integer** | | [optional][default to 20] |
645
+ | **status** | **String** | | [optional] |
646
+
647
+ ### Return type
648
+
649
+ [**JobListResponse**](JobListResponse.md)
650
+
651
+ ### Authorization
652
+
653
+ [BearerAuth](../README.md#BearerAuth)
654
+
655
+ ### HTTP request headers
656
+
657
+ - **Content-Type**: Not defined
658
+ - **Accept**: application/json
659
+
@@ -0,0 +1,18 @@
1
+ # Mailodds::CheckSuppressionRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **email** | **String** | | |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'mailodds'
13
+
14
+ instance = Mailodds::CheckSuppressionRequest.new(
15
+ email: null
16
+ )
17
+ ```
18
+
@@ -0,0 +1,20 @@
1
+ # Mailodds::CreateJobFromS3Request
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **s3_key** | **String** | S3 key from presigned upload | |
8
+ | **dedup** | **Boolean** | | [optional][default to false] |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'mailodds'
14
+
15
+ instance = Mailodds::CreateJobFromS3Request.new(
16
+ s3_key: null,
17
+ dedup: null
18
+ )
19
+ ```
20
+
@@ -0,0 +1,26 @@
1
+ # Mailodds::CreateJobRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **emails** | **Array&lt;String&gt;** | List of emails to validate | |
8
+ | **dedup** | **Boolean** | Remove duplicate emails | [optional][default to false] |
9
+ | **metadata** | **Object** | Custom metadata for the job | [optional] |
10
+ | **webhook_url** | **String** | URL for completion webhook | [optional] |
11
+ | **idempotency_key** | **String** | Unique key for idempotent requests | [optional] |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'mailodds'
17
+
18
+ instance = Mailodds::CreateJobRequest.new(
19
+ emails: null,
20
+ dedup: null,
21
+ metadata: null,
22
+ webhook_url: null,
23
+ idempotency_key: null
24
+ )
25
+ ```
26
+