zerobounce-sdk 2.1.8 → 3.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 +4 -4
- data/CHANGELOG.md +172 -19
- data/README.md +477 -410
- data/lib/zerobounce/api_key.rb +21 -0
- data/lib/zerobounce/api_urls.rb +9 -0
- data/lib/zerobounce/base_request.rb +260 -8
- data/lib/zerobounce/client.rb +30 -0
- data/lib/zerobounce/configuration.rb +24 -3
- data/lib/zerobounce/error.rb +20 -0
- data/lib/zerobounce/get_file_helper.rb +6 -8
- data/lib/zerobounce/priority3.rb +351 -0
- data/lib/zerobounce/request.rb +84 -42
- data/lib/zerobounce/response_error.rb +117 -0
- data/lib/zerobounce/validate_sub_status.rb +1 -0
- data/lib/zerobounce/version.rb +1 -1
- data/lib/zerobounce/warmup.rb +471 -0
- data/lib/zerobounce.rb +112 -26
- metadata +46 -41
- data/.dockerignore +0 -17
- data/.env.example +0 -3
- data/.github/auto_assign.yml +0 -5
- data/.github/dependabot.yml +0 -35
- data/.github/workflows/auto_assign_ci.yaml +0 -21
- data/.github/workflows/codeql.yml +0 -105
- data/.github/workflows/publish.yml +0 -131
- data/.github/workflows/sdk_ci.yml +0 -29
- data/.gitignore +0 -70
- data/.rspec +0 -2
- data/.ruby-version +0 -1
- data/CODE_OF_CONDUCT.md +0 -69
- data/CONTRIBUTING.md +0 -112
- data/Dockerfile +0 -17
- data/Gemfile +0 -13
- data/Gemfile.lock +0 -135
- data/LICENSE.txt +0 -21
- data/Rakefile +0 -26
- data/SECURITY.md +0 -21
- data/bin/bundle +0 -105
- data/bin/console +0 -7
- data/bin/setup +0 -6
- data/data/zerobounce-ai-scoring.csv +0 -31
- data/data/zerobounce-batch-validation.csv +0 -31
- data/documentation.md +0 -530
- data/files/scoring.csv +0 -1
- data/files/validation.csv +0 -1
- data/files/zerobounce-ai-scoring.csv +0 -31
- data/files/zerobounce-batch-validation.csv +0 -31
- data/lib/zerobounce/mock_request.rb +0 -86
- data/zerobounce.gemspec +0 -49
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
require 'zerobounce/base_request'
|
|
4
|
-
require 'zerobounce/get_file_helper'
|
|
5
|
-
|
|
6
|
-
module Zerobounce
|
|
7
|
-
|
|
8
|
-
# Sends the HTTP request.
|
|
9
|
-
class MockRequest < BaseRequest
|
|
10
|
-
|
|
11
|
-
def self.get(path, params, content_type='application/json')
|
|
12
|
-
response = self._get(Zerobounce.configuration.api_root_url, path, params, content_type)
|
|
13
|
-
if response.headers[:content_type] == 'application/json'
|
|
14
|
-
response_body = response.body
|
|
15
|
-
response_body_json = JSON.parse(response_body)
|
|
16
|
-
|
|
17
|
-
raise (response_body_json['error']) if response_body_json.key?('error')
|
|
18
|
-
raise (response_body_json['errors'][0]['error']) \
|
|
19
|
-
if response_body_json.key?('errors') and \
|
|
20
|
-
response_body_json['errors'].length > 0
|
|
21
|
-
|
|
22
|
-
return response_body_json
|
|
23
|
-
else
|
|
24
|
-
return response
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
|
|
28
|
-
def self.bulk_get(path, params, content_type='application/json')
|
|
29
|
-
response = self._get(Zerobounce.configuration.bulk_api_root_url, path, params, content_type)
|
|
30
|
-
if response.headers[:content_type] == 'application/json'
|
|
31
|
-
response_body = response.body
|
|
32
|
-
response_body_json = JSON.parse(response_body)
|
|
33
|
-
|
|
34
|
-
raise (response_body_json['error']) if response_body_json.key?('error')
|
|
35
|
-
raise (response_body_json['errors'][0]['error']) \
|
|
36
|
-
if response_body_json.key?('errors') and \
|
|
37
|
-
response_body_json['errors'].length > 0
|
|
38
|
-
|
|
39
|
-
return response_body_json
|
|
40
|
-
else
|
|
41
|
-
return response.body
|
|
42
|
-
end
|
|
43
|
-
end
|
|
44
|
-
|
|
45
|
-
def self.bulk_getfile(path, params)
|
|
46
|
-
response = self._get(Zerobounce.configuration.bulk_api_root_url, path, params, 'application/json')
|
|
47
|
-
GetFileHelper.process_getfile_response(response)
|
|
48
|
-
end
|
|
49
|
-
|
|
50
|
-
def self.post(path, params, content_type='application/json', filepath=nil)
|
|
51
|
-
response = self._post(Zerobounce.configuration.api_root_url, path, params, \
|
|
52
|
-
content_type, filepath)
|
|
53
|
-
if response.headers[:content_type] == 'application/json'
|
|
54
|
-
response_body = response.body
|
|
55
|
-
response_body_json = JSON.parse(response_body)
|
|
56
|
-
|
|
57
|
-
raise (response_body_json['error']) if response_body_json.key?('error')
|
|
58
|
-
raise (response_body_json['errors'][0]['error']) \
|
|
59
|
-
if response_body_json.key?('errors') and \
|
|
60
|
-
response_body_json['errors'].length > 0
|
|
61
|
-
|
|
62
|
-
return response_body_json
|
|
63
|
-
end
|
|
64
|
-
return response.body
|
|
65
|
-
end
|
|
66
|
-
|
|
67
|
-
def self.bulk_post(path, params, content_type='application/json', filepath=nil)
|
|
68
|
-
response = self._post(Zerobounce.configuration.bulk_api_root_url, path, params, \
|
|
69
|
-
content_type, filepath)
|
|
70
|
-
if response.headers[:content_type] == 'application/json'
|
|
71
|
-
response_body = response.body
|
|
72
|
-
response_body_json = JSON.parse(response_body)
|
|
73
|
-
|
|
74
|
-
raise (response_body_json['error']) if response_body_json.key?('error')
|
|
75
|
-
raise (response_body_json['errors'][0]['error']) \
|
|
76
|
-
if response_body_json.key?('errors') and \
|
|
77
|
-
response_body_json['errors'].length > 0
|
|
78
|
-
|
|
79
|
-
return response_body_json
|
|
80
|
-
end
|
|
81
|
-
return response.body
|
|
82
|
-
end
|
|
83
|
-
|
|
84
|
-
end
|
|
85
|
-
|
|
86
|
-
end
|
data/zerobounce.gemspec
DELETED
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
lib = File.expand_path('lib', __dir__)
|
|
4
|
-
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
5
|
-
require 'zerobounce/version'
|
|
6
|
-
|
|
7
|
-
Gem::Specification.new do |spec| # rubocop:disable Metrics/BlockLength
|
|
8
|
-
spec.name = 'zerobounce-sdk'
|
|
9
|
-
spec.version = Zerobounce::VERSION
|
|
10
|
-
spec.authors = ['Zero Bounce']
|
|
11
|
-
spec.email = ['integrations@zerobounce.net']
|
|
12
|
-
|
|
13
|
-
spec.summary = 'A Ruby client for Zerobounce.net.'
|
|
14
|
-
spec.description = 'A Ruby client for Zerobounce.net.'
|
|
15
|
-
spec.homepage = 'https://zerobounce.net'
|
|
16
|
-
spec.license = 'MIT'
|
|
17
|
-
|
|
18
|
-
spec.files = `git ls-files -z`.split("\x0").reject do |f|
|
|
19
|
-
f.match(%r{^(test|spec|features)/})
|
|
20
|
-
end
|
|
21
|
-
spec.bindir = 'exe'
|
|
22
|
-
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
|
23
|
-
spec.require_paths = ['lib']
|
|
24
|
-
|
|
25
|
-
spec.metadata['yard.run'] = 'yri' # use "yard" to build full HTML docs.
|
|
26
|
-
|
|
27
|
-
spec.required_ruby_version = '>= 2.5'
|
|
28
|
-
|
|
29
|
-
spec.add_dependency 'rest-client', '~>2.1'
|
|
30
|
-
spec.add_dependency 'dotenv'
|
|
31
|
-
|
|
32
|
-
spec.add_development_dependency 'base64' # stdlib gem on Ruby 3.4+
|
|
33
|
-
spec.add_development_dependency 'bigdecimal' # required by crack (webmock) on Ruby 3.4+
|
|
34
|
-
spec.add_development_dependency 'ostruct' # stdlib gem on Ruby 3.5+ (json/simplecov load chain)
|
|
35
|
-
spec.add_development_dependency 'logger' # stdlib gem on Ruby 3.4+ (mime-types / rest-client load chain)
|
|
36
|
-
spec.add_development_dependency 'bundler', '~> 2.4.6'
|
|
37
|
-
spec.add_development_dependency 'pry', '~> 0.14.1'
|
|
38
|
-
spec.add_development_dependency 'rake', '~> 13.0'
|
|
39
|
-
spec.add_development_dependency 'rspec', '~> 3.0'
|
|
40
|
-
spec.add_development_dependency 'rspec_junit_formatter', '~> 0.4.1'
|
|
41
|
-
spec.add_development_dependency 'rubocop', '~> 1.15'
|
|
42
|
-
spec.add_development_dependency 'rubocop-performance', '~> 1.11', '>= 1.11.3'
|
|
43
|
-
spec.add_development_dependency 'rubocop-rake', '~> 0.5.1'
|
|
44
|
-
spec.add_development_dependency 'rubocop-rspec', '~> 2.3'
|
|
45
|
-
spec.add_development_dependency 'simplecov', '~> 0.21.2'
|
|
46
|
-
spec.add_development_dependency 'yard', '~> 0.9.42'
|
|
47
|
-
spec.add_development_dependency 'webmock', '~> 3.18'
|
|
48
|
-
spec.add_development_dependency 'vcr', '~> 6.4'
|
|
49
|
-
end
|