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.
- checksums.yaml +7 -0
- data/Gemfile +9 -0
- data/README.md +64 -0
- data/Rakefile +10 -0
- data/docs/AddPolicyRule201Response.md +18 -0
- data/docs/AddSuppressionRequest.md +18 -0
- data/docs/AddSuppressionRequestEntriesInner.md +22 -0
- data/docs/AddSuppressionResponse.md +22 -0
- data/docs/BulkValidationApi.md +659 -0
- data/docs/CheckSuppressionRequest.md +18 -0
- data/docs/CreateJobFromS3Request.md +20 -0
- data/docs/CreateJobRequest.md +26 -0
- data/docs/CreatePolicyFromPresetRequest.md +22 -0
- data/docs/CreatePolicyRequest.md +24 -0
- data/docs/DeleteJob200Response.md +20 -0
- data/docs/DeletePolicy200Response.md +20 -0
- data/docs/DeletePolicyRule200Response.md +18 -0
- data/docs/EmailValidationApi.md +77 -0
- data/docs/ErrorResponse.md +22 -0
- data/docs/GetPresignedUploadRequest.md +20 -0
- data/docs/HealthCheck200Response.md +20 -0
- data/docs/Job.md +34 -0
- data/docs/JobListResponse.md +22 -0
- data/docs/JobResponse.md +20 -0
- data/docs/JobSummary.md +26 -0
- data/docs/Pagination.md +24 -0
- data/docs/Policy.md +34 -0
- data/docs/PolicyListResponse.md +22 -0
- data/docs/PolicyListResponseLimits.md +22 -0
- data/docs/PolicyPresetsResponse.md +20 -0
- data/docs/PolicyPresetsResponsePresetsInner.md +24 -0
- data/docs/PolicyResponse.md +20 -0
- data/docs/PolicyRule.md +28 -0
- data/docs/PolicyRuleAction.md +18 -0
- data/docs/PolicyTestResponse.md +26 -0
- data/docs/PresignedUploadResponse.md +20 -0
- data/docs/PresignedUploadResponseUpload.md +24 -0
- data/docs/RemoveSuppression200Response.md +20 -0
- data/docs/RemoveSuppressionRequest.md +18 -0
- data/docs/ResultsResponse.md +22 -0
- data/docs/SuppressionCheckResponse.md +26 -0
- data/docs/SuppressionEntry.md +26 -0
- data/docs/SuppressionListResponse.md +22 -0
- data/docs/SuppressionListsApi.md +362 -0
- data/docs/SuppressionStatsResponse.md +22 -0
- data/docs/SuppressionStatsResponseByType.md +20 -0
- data/docs/SystemApi.md +141 -0
- data/docs/TelemetrySummary.md +32 -0
- data/docs/TelemetrySummaryRates.md +24 -0
- data/docs/TelemetrySummaryTopDomainsInner.md +28 -0
- data/docs/TelemetrySummaryTopReasonsInner.md +20 -0
- data/docs/TelemetrySummaryTotals.md +20 -0
- data/docs/TestPolicyRequest.md +20 -0
- data/docs/TestPolicyRequestTestResult.md +26 -0
- data/docs/UpdatePolicyRequest.md +24 -0
- data/docs/ValidateRequest.md +20 -0
- data/docs/ValidationPoliciesApi.md +712 -0
- data/docs/ValidationResponse.md +40 -0
- data/docs/ValidationResponseSuppressionMatch.md +22 -0
- data/docs/ValidationResult.md +26 -0
- data/git_push.sh +57 -0
- data/lib/mailodds/api/bulk_validation_api.rb +651 -0
- data/lib/mailodds/api/email_validation_api.rb +90 -0
- data/lib/mailodds/api/suppression_lists_api.rb +356 -0
- data/lib/mailodds/api/system_api.rb +143 -0
- data/lib/mailodds/api/validation_policies_api.rb +686 -0
- data/lib/mailodds/api_client.rb +397 -0
- data/lib/mailodds/api_error.rb +58 -0
- data/lib/mailodds/api_model_base.rb +88 -0
- data/lib/mailodds/configuration.rb +308 -0
- data/lib/mailodds/models/add_policy_rule201_response.rb +147 -0
- data/lib/mailodds/models/add_suppression_request.rb +166 -0
- data/lib/mailodds/models/add_suppression_request_entries_inner.rb +223 -0
- data/lib/mailodds/models/add_suppression_response.rb +165 -0
- data/lib/mailodds/models/check_suppression_request.rb +164 -0
- data/lib/mailodds/models/create_job_from_s3_request.rb +176 -0
- data/lib/mailodds/models/create_job_request.rb +219 -0
- data/lib/mailodds/models/create_policy_from_preset_request.rb +225 -0
- data/lib/mailodds/models/create_policy_request.rb +223 -0
- data/lib/mailodds/models/delete_job200_response.rb +156 -0
- data/lib/mailodds/models/delete_policy200_response.rb +156 -0
- data/lib/mailodds/models/delete_policy_rule200_response.rb +147 -0
- data/lib/mailodds/models/error_response.rb +201 -0
- data/lib/mailodds/models/get_presigned_upload_request.rb +175 -0
- data/lib/mailodds/models/health_check200_response.rb +156 -0
- data/lib/mailodds/models/job.rb +281 -0
- data/lib/mailodds/models/job_list_response.rb +167 -0
- data/lib/mailodds/models/job_response.rb +156 -0
- data/lib/mailodds/models/job_summary.rb +183 -0
- data/lib/mailodds/models/pagination.rb +174 -0
- data/lib/mailodds/models/policy.rb +221 -0
- data/lib/mailodds/models/policy_list_response.rb +167 -0
- data/lib/mailodds/models/policy_list_response_limits.rb +166 -0
- data/lib/mailodds/models/policy_presets_response.rb +158 -0
- data/lib/mailodds/models/policy_presets_response_presets_inner.rb +176 -0
- data/lib/mailodds/models/policy_response.rb +156 -0
- data/lib/mailodds/models/policy_rule.rb +269 -0
- data/lib/mailodds/models/policy_rule_action.rb +181 -0
- data/lib/mailodds/models/policy_test_response.rb +187 -0
- data/lib/mailodds/models/presigned_upload_response.rb +156 -0
- data/lib/mailodds/models/presigned_upload_response_upload.rb +174 -0
- data/lib/mailodds/models/remove_suppression200_response.rb +156 -0
- data/lib/mailodds/models/remove_suppression_request.rb +166 -0
- data/lib/mailodds/models/results_response.rb +167 -0
- data/lib/mailodds/models/suppression_check_response.rb +217 -0
- data/lib/mailodds/models/suppression_entry.rb +217 -0
- data/lib/mailodds/models/suppression_list_response.rb +167 -0
- data/lib/mailodds/models/suppression_stats_response.rb +165 -0
- data/lib/mailodds/models/suppression_stats_response_by_type.rb +156 -0
- data/lib/mailodds/models/telemetry_summary.rb +251 -0
- data/lib/mailodds/models/telemetry_summary_rates.rb +179 -0
- data/lib/mailodds/models/telemetry_summary_top_domains_inner.rb +192 -0
- data/lib/mailodds/models/telemetry_summary_top_reasons_inner.rb +156 -0
- data/lib/mailodds/models/telemetry_summary_totals.rb +158 -0
- data/lib/mailodds/models/test_policy_request.rb +190 -0
- data/lib/mailodds/models/test_policy_request_test_result.rb +184 -0
- data/lib/mailodds/models/update_policy_request.rb +174 -0
- data/lib/mailodds/models/validate_request.rb +175 -0
- data/lib/mailodds/models/validation_response.rb +326 -0
- data/lib/mailodds/models/validation_response_suppression_match.rb +199 -0
- data/lib/mailodds/models/validation_result.rb +183 -0
- data/lib/mailodds/version.rb +15 -0
- data/lib/mailodds.rb +96 -0
- data/mailodds.gemspec +31 -0
- data/spec/api/bulk_validation_api_spec.rb +151 -0
- data/spec/api/email_validation_api_spec.rb +47 -0
- data/spec/api/suppression_lists_api_spec.rb +97 -0
- data/spec/api/system_api_spec.rb +58 -0
- data/spec/api/validation_policies_api_spec.rb +157 -0
- data/spec/models/add_policy_rule201_response_spec.rb +36 -0
- data/spec/models/add_suppression_request_entries_inner_spec.rb +52 -0
- data/spec/models/add_suppression_request_spec.rb +36 -0
- data/spec/models/add_suppression_response_spec.rb +48 -0
- data/spec/models/check_suppression_request_spec.rb +36 -0
- data/spec/models/create_job_from_s3_request_spec.rb +42 -0
- data/spec/models/create_job_request_spec.rb +60 -0
- data/spec/models/create_policy_from_preset_request_spec.rb +52 -0
- data/spec/models/create_policy_request_spec.rb +54 -0
- data/spec/models/delete_job200_response_spec.rb +42 -0
- data/spec/models/delete_policy200_response_spec.rb +42 -0
- data/spec/models/delete_policy_rule200_response_spec.rb +36 -0
- data/spec/models/error_response_spec.rb +48 -0
- data/spec/models/get_presigned_upload_request_spec.rb +42 -0
- data/spec/models/health_check200_response_spec.rb +42 -0
- data/spec/models/job_list_response_spec.rb +48 -0
- data/spec/models/job_response_spec.rb +42 -0
- data/spec/models/job_spec.rb +88 -0
- data/spec/models/job_summary_spec.rb +60 -0
- data/spec/models/pagination_spec.rb +54 -0
- data/spec/models/policy_list_response_limits_spec.rb +48 -0
- data/spec/models/policy_list_response_spec.rb +48 -0
- data/spec/models/policy_presets_response_presets_inner_spec.rb +54 -0
- data/spec/models/policy_presets_response_spec.rb +42 -0
- data/spec/models/policy_response_spec.rb +42 -0
- data/spec/models/policy_rule_action_spec.rb +40 -0
- data/spec/models/policy_rule_spec.rb +70 -0
- data/spec/models/policy_spec.rb +84 -0
- data/spec/models/policy_test_response_spec.rb +60 -0
- data/spec/models/presigned_upload_response_spec.rb +42 -0
- data/spec/models/presigned_upload_response_upload_spec.rb +54 -0
- data/spec/models/remove_suppression200_response_spec.rb +42 -0
- data/spec/models/remove_suppression_request_spec.rb +36 -0
- data/spec/models/results_response_spec.rb +48 -0
- data/spec/models/suppression_check_response_spec.rb +64 -0
- data/spec/models/suppression_entry_spec.rb +64 -0
- data/spec/models/suppression_list_response_spec.rb +48 -0
- data/spec/models/suppression_stats_response_by_type_spec.rb +42 -0
- data/spec/models/suppression_stats_response_spec.rb +48 -0
- data/spec/models/telemetry_summary_rates_spec.rb +54 -0
- data/spec/models/telemetry_summary_spec.rb +82 -0
- data/spec/models/telemetry_summary_top_domains_inner_spec.rb +66 -0
- data/spec/models/telemetry_summary_top_reasons_inner_spec.rb +42 -0
- data/spec/models/telemetry_summary_totals_spec.rb +42 -0
- data/spec/models/test_policy_request_spec.rb +42 -0
- data/spec/models/test_policy_request_test_result_spec.rb +60 -0
- data/spec/models/update_policy_request_spec.rb +54 -0
- data/spec/models/validate_request_spec.rb +42 -0
- data/spec/models/validation_response_spec.rb +110 -0
- data/spec/models/validation_response_suppression_match_spec.rb +52 -0
- data/spec/models/validation_result_spec.rb +60 -0
- data/spec/spec_helper.rb +111 -0
- metadata +322 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: a1b586b3e8c6fbca5bf39745cc8da155ee85611caafe2f23874eb5c5d9db3f42
|
|
4
|
+
data.tar.gz: 2d9667abec929403174f215df4439b34ed9052a9e70e3b705358bcca2e4b040b
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: 93cd2e171b2a5f57b9d876d048c016100318e5afdfbf3a9b9fd155110dfaa06f39afa3434e9fd684677d44a776d7707c01c250650cba80e7366c3095ddb9786c
|
|
7
|
+
data.tar.gz: bf50cd160fba3d70a4278d5870b474b2db5506ac358855600e3772b67f2e67ccf54da8c07eff5f8c4b9bfa01c8e4d53859991049ff9b0bf658cd722aabc9bcea
|
data/Gemfile
ADDED
data/README.md
ADDED
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
# MailOdds SDK for Ruby
|
|
2
|
+
|
|
3
|
+
Official Ruby client for the [MailOdds Email Validation API](https://mailodds.com/docs).
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```shell
|
|
8
|
+
gem install mailodds
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Or add to your Gemfile:
|
|
12
|
+
|
|
13
|
+
```ruby
|
|
14
|
+
gem 'mailodds', '~> 1.0'
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Quick Start
|
|
18
|
+
|
|
19
|
+
```ruby
|
|
20
|
+
require 'mailodds'
|
|
21
|
+
|
|
22
|
+
Mailodds.configure do |config|
|
|
23
|
+
config.access_token = 'mo_live_your_api_key'
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
api = Mailodds::EmailValidationApi.new
|
|
27
|
+
request = Mailodds::ValidateRequest.new(email: 'user@example.com')
|
|
28
|
+
result = api.validate_email(request)
|
|
29
|
+
|
|
30
|
+
case result.action
|
|
31
|
+
when 'accept'
|
|
32
|
+
puts 'Safe to send'
|
|
33
|
+
when 'accept_with_caution'
|
|
34
|
+
puts 'Valid but risky -- flag for review'
|
|
35
|
+
when 'reject'
|
|
36
|
+
puts 'Do not send'
|
|
37
|
+
when 'retry_later'
|
|
38
|
+
puts 'Temporary failure -- retry after backoff'
|
|
39
|
+
end
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Response Handling
|
|
43
|
+
|
|
44
|
+
Branch on the `action` field for decisioning:
|
|
45
|
+
|
|
46
|
+
| Action | Meaning | Recommended |
|
|
47
|
+
|--------|---------|-------------|
|
|
48
|
+
| `accept` | Safe to send | Add to mailing list |
|
|
49
|
+
| `accept_with_caution` | Valid but risky (catch-all, role account) | Flag for review |
|
|
50
|
+
| `reject` | Invalid or disposable | Do not send |
|
|
51
|
+
| `retry_later` | Temporary failure | Retry after backoff |
|
|
52
|
+
|
|
53
|
+
## Test Mode
|
|
54
|
+
|
|
55
|
+
Use an `mo_test_` prefixed API key with test domains for predictable responses without consuming credits.
|
|
56
|
+
|
|
57
|
+
## API Reference
|
|
58
|
+
|
|
59
|
+
Full API documentation: https://mailodds.com/docs
|
|
60
|
+
OpenAPI spec: https://mailodds.com/openapi.yaml
|
|
61
|
+
|
|
62
|
+
## License
|
|
63
|
+
|
|
64
|
+
MIT
|
data/Rakefile
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Mailodds::AddPolicyRule201Response
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **rule** | [**PolicyRule**](PolicyRule.md) | | [optional] |
|
|
8
|
+
|
|
9
|
+
## Example
|
|
10
|
+
|
|
11
|
+
```ruby
|
|
12
|
+
require 'mailodds'
|
|
13
|
+
|
|
14
|
+
instance = Mailodds::AddPolicyRule201Response.new(
|
|
15
|
+
rule: null
|
|
16
|
+
)
|
|
17
|
+
```
|
|
18
|
+
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Mailodds::AddSuppressionRequest
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **entries** | [**Array<AddSuppressionRequestEntriesInner>**](AddSuppressionRequestEntriesInner.md) | | |
|
|
8
|
+
|
|
9
|
+
## Example
|
|
10
|
+
|
|
11
|
+
```ruby
|
|
12
|
+
require 'mailodds'
|
|
13
|
+
|
|
14
|
+
instance = Mailodds::AddSuppressionRequest.new(
|
|
15
|
+
entries: null
|
|
16
|
+
)
|
|
17
|
+
```
|
|
18
|
+
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Mailodds::AddSuppressionRequestEntriesInner
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **type** | **String** | | |
|
|
8
|
+
| **value** | **String** | | |
|
|
9
|
+
| **reason** | **String** | | [optional] |
|
|
10
|
+
|
|
11
|
+
## Example
|
|
12
|
+
|
|
13
|
+
```ruby
|
|
14
|
+
require 'mailodds'
|
|
15
|
+
|
|
16
|
+
instance = Mailodds::AddSuppressionRequestEntriesInner.new(
|
|
17
|
+
type: null,
|
|
18
|
+
value: null,
|
|
19
|
+
reason: null
|
|
20
|
+
)
|
|
21
|
+
```
|
|
22
|
+
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Mailodds::AddSuppressionResponse
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **schema_version** | **String** | | [optional] |
|
|
8
|
+
| **added** | **Integer** | | [optional] |
|
|
9
|
+
| **skipped** | **Integer** | | [optional] |
|
|
10
|
+
|
|
11
|
+
## Example
|
|
12
|
+
|
|
13
|
+
```ruby
|
|
14
|
+
require 'mailodds'
|
|
15
|
+
|
|
16
|
+
instance = Mailodds::AddSuppressionResponse.new(
|
|
17
|
+
schema_version: null,
|
|
18
|
+
added: null,
|
|
19
|
+
skipped: null
|
|
20
|
+
)
|
|
21
|
+
```
|
|
22
|
+
|