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
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#MailOdds Email Validation API
|
|
3
|
+
|
|
4
|
+
#MailOdds provides email validation services to help maintain clean email lists and improve deliverability. The API performs multiple validation checks including format verification, domain validation, MX record checking, and disposable email detection. ## Authentication All API requests require authentication using a Bearer token. Include your API key in the Authorization header: ``` Authorization: Bearer YOUR_API_KEY ``` API keys can be created in the MailOdds dashboard. ## Rate Limits Rate limits vary by plan: - Free: 10 requests/minute - Starter: 60 requests/minute - Pro: 300 requests/minute - Business: 1000 requests/minute - Enterprise: Custom limits ## Response Format All responses include: - `schema_version`: API schema version (currently \"1.0\") - `request_id`: Unique request identifier for debugging Error responses include: - `error`: Machine-readable error code - `message`: Human-readable error description
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 1.0.0
|
|
7
|
+
Contact: support@mailodds.com
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
Generator version: 7.19.0
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'cgi'
|
|
14
|
+
|
|
15
|
+
module Mailodds
|
|
16
|
+
class EmailValidationApi
|
|
17
|
+
attr_accessor :api_client
|
|
18
|
+
|
|
19
|
+
def initialize(api_client = ApiClient.default)
|
|
20
|
+
@api_client = api_client
|
|
21
|
+
end
|
|
22
|
+
# Validate single email
|
|
23
|
+
# Validate a single email address. Returns detailed validation results including status, sub-status, and recommended action.
|
|
24
|
+
# @param validate_request [ValidateRequest]
|
|
25
|
+
# @param [Hash] opts the optional parameters
|
|
26
|
+
# @return [ValidationResponse]
|
|
27
|
+
def validate_email(validate_request, opts = {})
|
|
28
|
+
data, _status_code, _headers = validate_email_with_http_info(validate_request, opts)
|
|
29
|
+
data
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
# Validate single email
|
|
33
|
+
# Validate a single email address. Returns detailed validation results including status, sub-status, and recommended action.
|
|
34
|
+
# @param validate_request [ValidateRequest]
|
|
35
|
+
# @param [Hash] opts the optional parameters
|
|
36
|
+
# @return [Array<(ValidationResponse, Integer, Hash)>] ValidationResponse data, response status code and response headers
|
|
37
|
+
def validate_email_with_http_info(validate_request, opts = {})
|
|
38
|
+
if @api_client.config.debugging
|
|
39
|
+
@api_client.config.logger.debug 'Calling API: EmailValidationApi.validate_email ...'
|
|
40
|
+
end
|
|
41
|
+
# verify the required parameter 'validate_request' is set
|
|
42
|
+
if @api_client.config.client_side_validation && validate_request.nil?
|
|
43
|
+
fail ArgumentError, "Missing the required parameter 'validate_request' when calling EmailValidationApi.validate_email"
|
|
44
|
+
end
|
|
45
|
+
# resource path
|
|
46
|
+
local_var_path = '/v1/validate'
|
|
47
|
+
|
|
48
|
+
# query parameters
|
|
49
|
+
query_params = opts[:query_params] || {}
|
|
50
|
+
|
|
51
|
+
# header parameters
|
|
52
|
+
header_params = opts[:header_params] || {}
|
|
53
|
+
# HTTP header 'Accept' (if needed)
|
|
54
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
55
|
+
# HTTP header 'Content-Type'
|
|
56
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
57
|
+
if !content_type.nil?
|
|
58
|
+
header_params['Content-Type'] = content_type
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
# form parameters
|
|
62
|
+
form_params = opts[:form_params] || {}
|
|
63
|
+
|
|
64
|
+
# http body (model)
|
|
65
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(validate_request)
|
|
66
|
+
|
|
67
|
+
# return_type
|
|
68
|
+
return_type = opts[:debug_return_type] || 'ValidationResponse'
|
|
69
|
+
|
|
70
|
+
# auth_names
|
|
71
|
+
auth_names = opts[:debug_auth_names] || ['BearerAuth']
|
|
72
|
+
|
|
73
|
+
new_options = opts.merge(
|
|
74
|
+
:operation => :"EmailValidationApi.validate_email",
|
|
75
|
+
:header_params => header_params,
|
|
76
|
+
:query_params => query_params,
|
|
77
|
+
:form_params => form_params,
|
|
78
|
+
:body => post_body,
|
|
79
|
+
:auth_names => auth_names,
|
|
80
|
+
:return_type => return_type
|
|
81
|
+
)
|
|
82
|
+
|
|
83
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
84
|
+
if @api_client.config.debugging
|
|
85
|
+
@api_client.config.logger.debug "API called: EmailValidationApi#validate_email\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
86
|
+
end
|
|
87
|
+
return data, status_code, headers
|
|
88
|
+
end
|
|
89
|
+
end
|
|
90
|
+
end
|
|
@@ -0,0 +1,356 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#MailOdds Email Validation API
|
|
3
|
+
|
|
4
|
+
#MailOdds provides email validation services to help maintain clean email lists and improve deliverability. The API performs multiple validation checks including format verification, domain validation, MX record checking, and disposable email detection. ## Authentication All API requests require authentication using a Bearer token. Include your API key in the Authorization header: ``` Authorization: Bearer YOUR_API_KEY ``` API keys can be created in the MailOdds dashboard. ## Rate Limits Rate limits vary by plan: - Free: 10 requests/minute - Starter: 60 requests/minute - Pro: 300 requests/minute - Business: 1000 requests/minute - Enterprise: Custom limits ## Response Format All responses include: - `schema_version`: API schema version (currently \"1.0\") - `request_id`: Unique request identifier for debugging Error responses include: - `error`: Machine-readable error code - `message`: Human-readable error description
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 1.0.0
|
|
7
|
+
Contact: support@mailodds.com
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
Generator version: 7.19.0
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'cgi'
|
|
14
|
+
|
|
15
|
+
module Mailodds
|
|
16
|
+
class SuppressionListsApi
|
|
17
|
+
attr_accessor :api_client
|
|
18
|
+
|
|
19
|
+
def initialize(api_client = ApiClient.default)
|
|
20
|
+
@api_client = api_client
|
|
21
|
+
end
|
|
22
|
+
# Add suppression entries
|
|
23
|
+
# Add emails or domains to the suppression list.
|
|
24
|
+
# @param add_suppression_request [AddSuppressionRequest]
|
|
25
|
+
# @param [Hash] opts the optional parameters
|
|
26
|
+
# @return [AddSuppressionResponse]
|
|
27
|
+
def add_suppression(add_suppression_request, opts = {})
|
|
28
|
+
data, _status_code, _headers = add_suppression_with_http_info(add_suppression_request, opts)
|
|
29
|
+
data
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
# Add suppression entries
|
|
33
|
+
# Add emails or domains to the suppression list.
|
|
34
|
+
# @param add_suppression_request [AddSuppressionRequest]
|
|
35
|
+
# @param [Hash] opts the optional parameters
|
|
36
|
+
# @return [Array<(AddSuppressionResponse, Integer, Hash)>] AddSuppressionResponse data, response status code and response headers
|
|
37
|
+
def add_suppression_with_http_info(add_suppression_request, opts = {})
|
|
38
|
+
if @api_client.config.debugging
|
|
39
|
+
@api_client.config.logger.debug 'Calling API: SuppressionListsApi.add_suppression ...'
|
|
40
|
+
end
|
|
41
|
+
# verify the required parameter 'add_suppression_request' is set
|
|
42
|
+
if @api_client.config.client_side_validation && add_suppression_request.nil?
|
|
43
|
+
fail ArgumentError, "Missing the required parameter 'add_suppression_request' when calling SuppressionListsApi.add_suppression"
|
|
44
|
+
end
|
|
45
|
+
# resource path
|
|
46
|
+
local_var_path = '/v1/suppression'
|
|
47
|
+
|
|
48
|
+
# query parameters
|
|
49
|
+
query_params = opts[:query_params] || {}
|
|
50
|
+
|
|
51
|
+
# header parameters
|
|
52
|
+
header_params = opts[:header_params] || {}
|
|
53
|
+
# HTTP header 'Accept' (if needed)
|
|
54
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
55
|
+
# HTTP header 'Content-Type'
|
|
56
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
57
|
+
if !content_type.nil?
|
|
58
|
+
header_params['Content-Type'] = content_type
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
# form parameters
|
|
62
|
+
form_params = opts[:form_params] || {}
|
|
63
|
+
|
|
64
|
+
# http body (model)
|
|
65
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(add_suppression_request)
|
|
66
|
+
|
|
67
|
+
# return_type
|
|
68
|
+
return_type = opts[:debug_return_type] || 'AddSuppressionResponse'
|
|
69
|
+
|
|
70
|
+
# auth_names
|
|
71
|
+
auth_names = opts[:debug_auth_names] || ['BearerAuth']
|
|
72
|
+
|
|
73
|
+
new_options = opts.merge(
|
|
74
|
+
:operation => :"SuppressionListsApi.add_suppression",
|
|
75
|
+
:header_params => header_params,
|
|
76
|
+
:query_params => query_params,
|
|
77
|
+
:form_params => form_params,
|
|
78
|
+
:body => post_body,
|
|
79
|
+
:auth_names => auth_names,
|
|
80
|
+
:return_type => return_type
|
|
81
|
+
)
|
|
82
|
+
|
|
83
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
84
|
+
if @api_client.config.debugging
|
|
85
|
+
@api_client.config.logger.debug "API called: SuppressionListsApi#add_suppression\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
86
|
+
end
|
|
87
|
+
return data, status_code, headers
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
# Check suppression status
|
|
91
|
+
# Check if an email is suppressed.
|
|
92
|
+
# @param check_suppression_request [CheckSuppressionRequest]
|
|
93
|
+
# @param [Hash] opts the optional parameters
|
|
94
|
+
# @return [SuppressionCheckResponse]
|
|
95
|
+
def check_suppression(check_suppression_request, opts = {})
|
|
96
|
+
data, _status_code, _headers = check_suppression_with_http_info(check_suppression_request, opts)
|
|
97
|
+
data
|
|
98
|
+
end
|
|
99
|
+
|
|
100
|
+
# Check suppression status
|
|
101
|
+
# Check if an email is suppressed.
|
|
102
|
+
# @param check_suppression_request [CheckSuppressionRequest]
|
|
103
|
+
# @param [Hash] opts the optional parameters
|
|
104
|
+
# @return [Array<(SuppressionCheckResponse, Integer, Hash)>] SuppressionCheckResponse data, response status code and response headers
|
|
105
|
+
def check_suppression_with_http_info(check_suppression_request, opts = {})
|
|
106
|
+
if @api_client.config.debugging
|
|
107
|
+
@api_client.config.logger.debug 'Calling API: SuppressionListsApi.check_suppression ...'
|
|
108
|
+
end
|
|
109
|
+
# verify the required parameter 'check_suppression_request' is set
|
|
110
|
+
if @api_client.config.client_side_validation && check_suppression_request.nil?
|
|
111
|
+
fail ArgumentError, "Missing the required parameter 'check_suppression_request' when calling SuppressionListsApi.check_suppression"
|
|
112
|
+
end
|
|
113
|
+
# resource path
|
|
114
|
+
local_var_path = '/v1/suppression/check'
|
|
115
|
+
|
|
116
|
+
# query parameters
|
|
117
|
+
query_params = opts[:query_params] || {}
|
|
118
|
+
|
|
119
|
+
# header parameters
|
|
120
|
+
header_params = opts[:header_params] || {}
|
|
121
|
+
# HTTP header 'Accept' (if needed)
|
|
122
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
123
|
+
# HTTP header 'Content-Type'
|
|
124
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
125
|
+
if !content_type.nil?
|
|
126
|
+
header_params['Content-Type'] = content_type
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
# form parameters
|
|
130
|
+
form_params = opts[:form_params] || {}
|
|
131
|
+
|
|
132
|
+
# http body (model)
|
|
133
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(check_suppression_request)
|
|
134
|
+
|
|
135
|
+
# return_type
|
|
136
|
+
return_type = opts[:debug_return_type] || 'SuppressionCheckResponse'
|
|
137
|
+
|
|
138
|
+
# auth_names
|
|
139
|
+
auth_names = opts[:debug_auth_names] || ['BearerAuth']
|
|
140
|
+
|
|
141
|
+
new_options = opts.merge(
|
|
142
|
+
:operation => :"SuppressionListsApi.check_suppression",
|
|
143
|
+
:header_params => header_params,
|
|
144
|
+
:query_params => query_params,
|
|
145
|
+
:form_params => form_params,
|
|
146
|
+
:body => post_body,
|
|
147
|
+
:auth_names => auth_names,
|
|
148
|
+
:return_type => return_type
|
|
149
|
+
)
|
|
150
|
+
|
|
151
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
152
|
+
if @api_client.config.debugging
|
|
153
|
+
@api_client.config.logger.debug "API called: SuppressionListsApi#check_suppression\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
154
|
+
end
|
|
155
|
+
return data, status_code, headers
|
|
156
|
+
end
|
|
157
|
+
|
|
158
|
+
# Get suppression statistics
|
|
159
|
+
# Get statistics about the suppression list.
|
|
160
|
+
# @param [Hash] opts the optional parameters
|
|
161
|
+
# @return [SuppressionStatsResponse]
|
|
162
|
+
def get_suppression_stats(opts = {})
|
|
163
|
+
data, _status_code, _headers = get_suppression_stats_with_http_info(opts)
|
|
164
|
+
data
|
|
165
|
+
end
|
|
166
|
+
|
|
167
|
+
# Get suppression statistics
|
|
168
|
+
# Get statistics about the suppression list.
|
|
169
|
+
# @param [Hash] opts the optional parameters
|
|
170
|
+
# @return [Array<(SuppressionStatsResponse, Integer, Hash)>] SuppressionStatsResponse data, response status code and response headers
|
|
171
|
+
def get_suppression_stats_with_http_info(opts = {})
|
|
172
|
+
if @api_client.config.debugging
|
|
173
|
+
@api_client.config.logger.debug 'Calling API: SuppressionListsApi.get_suppression_stats ...'
|
|
174
|
+
end
|
|
175
|
+
# resource path
|
|
176
|
+
local_var_path = '/v1/suppression/stats'
|
|
177
|
+
|
|
178
|
+
# query parameters
|
|
179
|
+
query_params = opts[:query_params] || {}
|
|
180
|
+
|
|
181
|
+
# header parameters
|
|
182
|
+
header_params = opts[:header_params] || {}
|
|
183
|
+
# HTTP header 'Accept' (if needed)
|
|
184
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
185
|
+
|
|
186
|
+
# form parameters
|
|
187
|
+
form_params = opts[:form_params] || {}
|
|
188
|
+
|
|
189
|
+
# http body (model)
|
|
190
|
+
post_body = opts[:debug_body]
|
|
191
|
+
|
|
192
|
+
# return_type
|
|
193
|
+
return_type = opts[:debug_return_type] || 'SuppressionStatsResponse'
|
|
194
|
+
|
|
195
|
+
# auth_names
|
|
196
|
+
auth_names = opts[:debug_auth_names] || ['BearerAuth']
|
|
197
|
+
|
|
198
|
+
new_options = opts.merge(
|
|
199
|
+
:operation => :"SuppressionListsApi.get_suppression_stats",
|
|
200
|
+
:header_params => header_params,
|
|
201
|
+
:query_params => query_params,
|
|
202
|
+
:form_params => form_params,
|
|
203
|
+
:body => post_body,
|
|
204
|
+
:auth_names => auth_names,
|
|
205
|
+
:return_type => return_type
|
|
206
|
+
)
|
|
207
|
+
|
|
208
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
209
|
+
if @api_client.config.debugging
|
|
210
|
+
@api_client.config.logger.debug "API called: SuppressionListsApi#get_suppression_stats\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
211
|
+
end
|
|
212
|
+
return data, status_code, headers
|
|
213
|
+
end
|
|
214
|
+
|
|
215
|
+
# List suppression entries
|
|
216
|
+
# List all suppression entries for the account.
|
|
217
|
+
# @param [Hash] opts the optional parameters
|
|
218
|
+
# @option opts [Integer] :page (default to 1)
|
|
219
|
+
# @option opts [Integer] :per_page (default to 50)
|
|
220
|
+
# @option opts [String] :type
|
|
221
|
+
# @option opts [String] :search
|
|
222
|
+
# @return [SuppressionListResponse]
|
|
223
|
+
def list_suppression(opts = {})
|
|
224
|
+
data, _status_code, _headers = list_suppression_with_http_info(opts)
|
|
225
|
+
data
|
|
226
|
+
end
|
|
227
|
+
|
|
228
|
+
# List suppression entries
|
|
229
|
+
# List all suppression entries for the account.
|
|
230
|
+
# @param [Hash] opts the optional parameters
|
|
231
|
+
# @option opts [Integer] :page (default to 1)
|
|
232
|
+
# @option opts [Integer] :per_page (default to 50)
|
|
233
|
+
# @option opts [String] :type
|
|
234
|
+
# @option opts [String] :search
|
|
235
|
+
# @return [Array<(SuppressionListResponse, Integer, Hash)>] SuppressionListResponse data, response status code and response headers
|
|
236
|
+
def list_suppression_with_http_info(opts = {})
|
|
237
|
+
if @api_client.config.debugging
|
|
238
|
+
@api_client.config.logger.debug 'Calling API: SuppressionListsApi.list_suppression ...'
|
|
239
|
+
end
|
|
240
|
+
allowable_values = ["email", "domain"]
|
|
241
|
+
if @api_client.config.client_side_validation && opts[:'type'] && !allowable_values.include?(opts[:'type'])
|
|
242
|
+
fail ArgumentError, "invalid value for \"type\", must be one of #{allowable_values}"
|
|
243
|
+
end
|
|
244
|
+
# resource path
|
|
245
|
+
local_var_path = '/v1/suppression'
|
|
246
|
+
|
|
247
|
+
# query parameters
|
|
248
|
+
query_params = opts[:query_params] || {}
|
|
249
|
+
query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
|
|
250
|
+
query_params[:'per_page'] = opts[:'per_page'] if !opts[:'per_page'].nil?
|
|
251
|
+
query_params[:'type'] = opts[:'type'] if !opts[:'type'].nil?
|
|
252
|
+
query_params[:'search'] = opts[:'search'] if !opts[:'search'].nil?
|
|
253
|
+
|
|
254
|
+
# header parameters
|
|
255
|
+
header_params = opts[:header_params] || {}
|
|
256
|
+
# HTTP header 'Accept' (if needed)
|
|
257
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
258
|
+
|
|
259
|
+
# form parameters
|
|
260
|
+
form_params = opts[:form_params] || {}
|
|
261
|
+
|
|
262
|
+
# http body (model)
|
|
263
|
+
post_body = opts[:debug_body]
|
|
264
|
+
|
|
265
|
+
# return_type
|
|
266
|
+
return_type = opts[:debug_return_type] || 'SuppressionListResponse'
|
|
267
|
+
|
|
268
|
+
# auth_names
|
|
269
|
+
auth_names = opts[:debug_auth_names] || ['BearerAuth']
|
|
270
|
+
|
|
271
|
+
new_options = opts.merge(
|
|
272
|
+
:operation => :"SuppressionListsApi.list_suppression",
|
|
273
|
+
:header_params => header_params,
|
|
274
|
+
:query_params => query_params,
|
|
275
|
+
:form_params => form_params,
|
|
276
|
+
:body => post_body,
|
|
277
|
+
:auth_names => auth_names,
|
|
278
|
+
:return_type => return_type
|
|
279
|
+
)
|
|
280
|
+
|
|
281
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
282
|
+
if @api_client.config.debugging
|
|
283
|
+
@api_client.config.logger.debug "API called: SuppressionListsApi#list_suppression\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
284
|
+
end
|
|
285
|
+
return data, status_code, headers
|
|
286
|
+
end
|
|
287
|
+
|
|
288
|
+
# Remove suppression entries
|
|
289
|
+
# Remove emails or domains from the suppression list.
|
|
290
|
+
# @param remove_suppression_request [RemoveSuppressionRequest]
|
|
291
|
+
# @param [Hash] opts the optional parameters
|
|
292
|
+
# @return [RemoveSuppression200Response]
|
|
293
|
+
def remove_suppression(remove_suppression_request, opts = {})
|
|
294
|
+
data, _status_code, _headers = remove_suppression_with_http_info(remove_suppression_request, opts)
|
|
295
|
+
data
|
|
296
|
+
end
|
|
297
|
+
|
|
298
|
+
# Remove suppression entries
|
|
299
|
+
# Remove emails or domains from the suppression list.
|
|
300
|
+
# @param remove_suppression_request [RemoveSuppressionRequest]
|
|
301
|
+
# @param [Hash] opts the optional parameters
|
|
302
|
+
# @return [Array<(RemoveSuppression200Response, Integer, Hash)>] RemoveSuppression200Response data, response status code and response headers
|
|
303
|
+
def remove_suppression_with_http_info(remove_suppression_request, opts = {})
|
|
304
|
+
if @api_client.config.debugging
|
|
305
|
+
@api_client.config.logger.debug 'Calling API: SuppressionListsApi.remove_suppression ...'
|
|
306
|
+
end
|
|
307
|
+
# verify the required parameter 'remove_suppression_request' is set
|
|
308
|
+
if @api_client.config.client_side_validation && remove_suppression_request.nil?
|
|
309
|
+
fail ArgumentError, "Missing the required parameter 'remove_suppression_request' when calling SuppressionListsApi.remove_suppression"
|
|
310
|
+
end
|
|
311
|
+
# resource path
|
|
312
|
+
local_var_path = '/v1/suppression'
|
|
313
|
+
|
|
314
|
+
# query parameters
|
|
315
|
+
query_params = opts[:query_params] || {}
|
|
316
|
+
|
|
317
|
+
# header parameters
|
|
318
|
+
header_params = opts[:header_params] || {}
|
|
319
|
+
# HTTP header 'Accept' (if needed)
|
|
320
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
321
|
+
# HTTP header 'Content-Type'
|
|
322
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
323
|
+
if !content_type.nil?
|
|
324
|
+
header_params['Content-Type'] = content_type
|
|
325
|
+
end
|
|
326
|
+
|
|
327
|
+
# form parameters
|
|
328
|
+
form_params = opts[:form_params] || {}
|
|
329
|
+
|
|
330
|
+
# http body (model)
|
|
331
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(remove_suppression_request)
|
|
332
|
+
|
|
333
|
+
# return_type
|
|
334
|
+
return_type = opts[:debug_return_type] || 'RemoveSuppression200Response'
|
|
335
|
+
|
|
336
|
+
# auth_names
|
|
337
|
+
auth_names = opts[:debug_auth_names] || ['BearerAuth']
|
|
338
|
+
|
|
339
|
+
new_options = opts.merge(
|
|
340
|
+
:operation => :"SuppressionListsApi.remove_suppression",
|
|
341
|
+
:header_params => header_params,
|
|
342
|
+
:query_params => query_params,
|
|
343
|
+
:form_params => form_params,
|
|
344
|
+
:body => post_body,
|
|
345
|
+
:auth_names => auth_names,
|
|
346
|
+
:return_type => return_type
|
|
347
|
+
)
|
|
348
|
+
|
|
349
|
+
data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
|
|
350
|
+
if @api_client.config.debugging
|
|
351
|
+
@api_client.config.logger.debug "API called: SuppressionListsApi#remove_suppression\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
352
|
+
end
|
|
353
|
+
return data, status_code, headers
|
|
354
|
+
end
|
|
355
|
+
end
|
|
356
|
+
end
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#MailOdds Email Validation API
|
|
3
|
+
|
|
4
|
+
#MailOdds provides email validation services to help maintain clean email lists and improve deliverability. The API performs multiple validation checks including format verification, domain validation, MX record checking, and disposable email detection. ## Authentication All API requests require authentication using a Bearer token. Include your API key in the Authorization header: ``` Authorization: Bearer YOUR_API_KEY ``` API keys can be created in the MailOdds dashboard. ## Rate Limits Rate limits vary by plan: - Free: 10 requests/minute - Starter: 60 requests/minute - Pro: 300 requests/minute - Business: 1000 requests/minute - Enterprise: Custom limits ## Response Format All responses include: - `schema_version`: API schema version (currently \"1.0\") - `request_id`: Unique request identifier for debugging Error responses include: - `error`: Machine-readable error code - `message`: Human-readable error description
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 1.0.0
|
|
7
|
+
Contact: support@mailodds.com
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
Generator version: 7.19.0
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'cgi'
|
|
14
|
+
|
|
15
|
+
module Mailodds
|
|
16
|
+
class SystemApi
|
|
17
|
+
attr_accessor :api_client
|
|
18
|
+
|
|
19
|
+
def initialize(api_client = ApiClient.default)
|
|
20
|
+
@api_client = api_client
|
|
21
|
+
end
|
|
22
|
+
# Get validation telemetry
|
|
23
|
+
# Get validation metrics for your account. Useful for building dashboards and monitoring. Supports ETag caching.
|
|
24
|
+
# @param [Hash] opts the optional parameters
|
|
25
|
+
# @option opts [String] :window Time window for metrics (default to '24h')
|
|
26
|
+
# @return [TelemetrySummary]
|
|
27
|
+
def get_telemetry_summary(opts = {})
|
|
28
|
+
data, _status_code, _headers = get_telemetry_summary_with_http_info(opts)
|
|
29
|
+
data
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
# Get validation telemetry
|
|
33
|
+
# Get validation metrics for your account. Useful for building dashboards and monitoring. Supports ETag caching.
|
|
34
|
+
# @param [Hash] opts the optional parameters
|
|
35
|
+
# @option opts [String] :window Time window for metrics (default to '24h')
|
|
36
|
+
# @return [Array<(TelemetrySummary, Integer, Hash)>] TelemetrySummary data, response status code and response headers
|
|
37
|
+
def get_telemetry_summary_with_http_info(opts = {})
|
|
38
|
+
if @api_client.config.debugging
|
|
39
|
+
@api_client.config.logger.debug 'Calling API: SystemApi.get_telemetry_summary ...'
|
|
40
|
+
end
|
|
41
|
+
allowable_values = ["1h", "24h", "30d"]
|
|
42
|
+
if @api_client.config.client_side_validation && opts[:'window'] && !allowable_values.include?(opts[:'window'])
|
|
43
|
+
fail ArgumentError, "invalid value for \"window\", must be one of #{allowable_values}"
|
|
44
|
+
end
|
|
45
|
+
# resource path
|
|
46
|
+
local_var_path = '/v1/telemetry/summary'
|
|
47
|
+
|
|
48
|
+
# query parameters
|
|
49
|
+
query_params = opts[:query_params] || {}
|
|
50
|
+
query_params[:'window'] = opts[:'window'] if !opts[:'window'].nil?
|
|
51
|
+
|
|
52
|
+
# header parameters
|
|
53
|
+
header_params = opts[:header_params] || {}
|
|
54
|
+
# HTTP header 'Accept' (if needed)
|
|
55
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
56
|
+
|
|
57
|
+
# form parameters
|
|
58
|
+
form_params = opts[:form_params] || {}
|
|
59
|
+
|
|
60
|
+
# http body (model)
|
|
61
|
+
post_body = opts[:debug_body]
|
|
62
|
+
|
|
63
|
+
# return_type
|
|
64
|
+
return_type = opts[:debug_return_type] || 'TelemetrySummary'
|
|
65
|
+
|
|
66
|
+
# auth_names
|
|
67
|
+
auth_names = opts[:debug_auth_names] || ['BearerAuth']
|
|
68
|
+
|
|
69
|
+
new_options = opts.merge(
|
|
70
|
+
:operation => :"SystemApi.get_telemetry_summary",
|
|
71
|
+
:header_params => header_params,
|
|
72
|
+
:query_params => query_params,
|
|
73
|
+
:form_params => form_params,
|
|
74
|
+
:body => post_body,
|
|
75
|
+
:auth_names => auth_names,
|
|
76
|
+
:return_type => return_type
|
|
77
|
+
)
|
|
78
|
+
|
|
79
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
80
|
+
if @api_client.config.debugging
|
|
81
|
+
@api_client.config.logger.debug "API called: SystemApi#get_telemetry_summary\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
82
|
+
end
|
|
83
|
+
return data, status_code, headers
|
|
84
|
+
end
|
|
85
|
+
|
|
86
|
+
# Health check
|
|
87
|
+
# Check API health status. No authentication required.
|
|
88
|
+
# @param [Hash] opts the optional parameters
|
|
89
|
+
# @return [HealthCheck200Response]
|
|
90
|
+
def health_check(opts = {})
|
|
91
|
+
data, _status_code, _headers = health_check_with_http_info(opts)
|
|
92
|
+
data
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
# Health check
|
|
96
|
+
# Check API health status. No authentication required.
|
|
97
|
+
# @param [Hash] opts the optional parameters
|
|
98
|
+
# @return [Array<(HealthCheck200Response, Integer, Hash)>] HealthCheck200Response data, response status code and response headers
|
|
99
|
+
def health_check_with_http_info(opts = {})
|
|
100
|
+
if @api_client.config.debugging
|
|
101
|
+
@api_client.config.logger.debug 'Calling API: SystemApi.health_check ...'
|
|
102
|
+
end
|
|
103
|
+
# resource path
|
|
104
|
+
local_var_path = '/health'
|
|
105
|
+
|
|
106
|
+
# query parameters
|
|
107
|
+
query_params = opts[:query_params] || {}
|
|
108
|
+
|
|
109
|
+
# header parameters
|
|
110
|
+
header_params = opts[:header_params] || {}
|
|
111
|
+
# HTTP header 'Accept' (if needed)
|
|
112
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
|
|
113
|
+
|
|
114
|
+
# form parameters
|
|
115
|
+
form_params = opts[:form_params] || {}
|
|
116
|
+
|
|
117
|
+
# http body (model)
|
|
118
|
+
post_body = opts[:debug_body]
|
|
119
|
+
|
|
120
|
+
# return_type
|
|
121
|
+
return_type = opts[:debug_return_type] || 'HealthCheck200Response'
|
|
122
|
+
|
|
123
|
+
# auth_names
|
|
124
|
+
auth_names = opts[:debug_auth_names] || []
|
|
125
|
+
|
|
126
|
+
new_options = opts.merge(
|
|
127
|
+
:operation => :"SystemApi.health_check",
|
|
128
|
+
:header_params => header_params,
|
|
129
|
+
:query_params => query_params,
|
|
130
|
+
:form_params => form_params,
|
|
131
|
+
:body => post_body,
|
|
132
|
+
:auth_names => auth_names,
|
|
133
|
+
:return_type => return_type
|
|
134
|
+
)
|
|
135
|
+
|
|
136
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
137
|
+
if @api_client.config.debugging
|
|
138
|
+
@api_client.config.logger.debug "API called: SystemApi#health_check\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
139
|
+
end
|
|
140
|
+
return data, status_code, headers
|
|
141
|
+
end
|
|
142
|
+
end
|
|
143
|
+
end
|