eligible 2.9.14 → 3.0.0.beta1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 134e5143b5d182697d93547c1de096a2a69b3d0a94c141b76222e2e41beb41df
4
- data.tar.gz: e55bf2b0eb4d95f7079fd3de1b9e842410f39e923fb2a61ed10e5e19b7e9097a
3
+ metadata.gz: 5f26d623c6899f3464e7e248ac88bc443bf7bc9ca483b7aebe989e430a1f01d4
4
+ data.tar.gz: 532753d9a4753bec287e0f4d74202b15596711a07898d2e24ad47712ec6580e0
5
5
  SHA512:
6
- metadata.gz: 15ba3d1a91a93b6631f88e4023ffd4a62f1c96291bbbf164bdbb969bca0265798d3ee19f5ecb3fdc9db867bbf4d89b163b5b938329b9e261f6033d4535ffcbc2
7
- data.tar.gz: fb7f6a5810fba3a5ed01dd5be7971cfe1d94d9d3c2876b696bf3c2d5bc87ee84251a93f9180262c0ce35a336ca5364a76357d4733d1cd5cc7fb3c9508121ffe9
6
+ metadata.gz: d579842a87e0968e409d4aa095975c754e8deecb869c474594ee4587156154b69644d69ad951c3cf56dda61cf02202c38dfa2e0159c9e4b0e473c5e1bfc1c34f
7
+ data.tar.gz: 7f3884cdb6665753356acca910e296b3f8ac57dbae9dab1c6e93ba3d753ced3ae2f90c0642c41ecd3c7808f38998cefcf2f8e59c6ab2256aec97af456c17218a
data/.circleci/config.yml CHANGED
@@ -1,7 +1,7 @@
1
1
  version: 2
2
2
  default_environment: &default_environment
3
3
  docker:
4
- - image: circleci/ruby:2.2-jessie-browsers
4
+ - image: circleci/ruby:2.4-stretch-browsers
5
5
  environment:
6
6
  BUNDLE_JOBS: 3
7
7
  BUNDLE_RETRY: 3
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 2.2.3
1
+ 2.4.3
data/CHANGELOG.md CHANGED
@@ -1,18 +1,7 @@
1
1
  # Changelog
2
- ## 2.9.14 - 2023-01-16
3
- - Updated pinned GDS SSL certificate
4
2
 
5
- ## 2.9.13 - 2022-02-07
6
- - Updated pinned GDS SSL certificate
7
-
8
- ## 2.9.12 - 2021-04-12
9
- - Fixing the pinned GDS SSL certificate
10
-
11
- ## 2.9.11 - 2021-04-01
12
- - Updated pinned GDS SSL certificate
13
-
14
- ## 2.9.10 - 2020-05-13
15
- - Updated pinned GDS SSL certificate
3
+ ## 3.0.0.beta1 - 2019-10-01
4
+ - Added support for Eligible-Account Header in the API requests when used Eligible Connect feature
16
5
 
17
6
  ## 2.9.9 - 2019-08-07
18
7
  - Added Icd code endpoints
data/Gemfile CHANGED
@@ -1,4 +1,8 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
+ # cut patch number off the version number and lock it down to the minor version
4
+ ruby_version = File.read(File.expand_path('.ruby-version', __dir__)).chomp.split('.')[0..1].join('.')
5
+ ruby "~> #{ruby_version}"
6
+
3
7
  # Specify your gem's dependencies in eligible.gemspec
4
8
  gemspec
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- eligible (2.9.14)
4
+ eligible (3.0.0.beta1)
5
5
  multi_json (~> 1.7)
6
6
  rest-client (~> 2.0.0)
7
7
 
@@ -12,13 +12,13 @@ GEM
12
12
  docile (1.1.5)
13
13
  domain_name (0.5.20190701)
14
14
  unf (>= 0.0.5, < 1.0.0)
15
- http-cookie (1.0.5)
15
+ http-cookie (1.0.3)
16
16
  domain_name (~> 0.5)
17
17
  json (2.1.0)
18
- mime-types (3.4.1)
18
+ mime-types (3.3.1)
19
19
  mime-types-data (~> 3.2015)
20
- mime-types-data (3.2022.0105)
21
- multi_json (1.15.0)
20
+ mime-types-data (3.2019.1009)
21
+ multi_json (1.14.1)
22
22
  netrc (0.11.0)
23
23
  rake (12.3.0)
24
24
  rest-client (2.0.2)
@@ -47,7 +47,7 @@ GEM
47
47
  simplecov-html (0.10.2)
48
48
  unf (0.1.4)
49
49
  unf_ext
50
- unf_ext (0.0.8.2)
50
+ unf_ext (0.0.7.6)
51
51
 
52
52
  PLATFORMS
53
53
  ruby
@@ -59,5 +59,8 @@ DEPENDENCIES
59
59
  rspec_junit_formatter (~> 0.3.0)
60
60
  simplecov (~> 0.11)
61
61
 
62
+ RUBY VERSION
63
+ ruby 2.4.3p205
64
+
62
65
  BUNDLED WITH
63
66
  1.17.3
@@ -24,12 +24,24 @@ module Eligible
24
24
  fail ArgumentError, "#{name} of the #{class_name} is required" if value.nil? || (value.is_a?(String) && value.empty?)
25
25
  end
26
26
 
27
- def self.send_request(method, url, api_key, params, required_param_name = nil)
28
- unless required_param_name.nil?
27
+ def self.required_param_validation(params:, required_params:)
28
+ return if required_params.nil? || !required_params.is_a?(Array)
29
+
30
+ required_params.each do |required_param_name|
29
31
  required_param = Util.value(params, required_param_name)
30
32
  require_param(required_param, required_param_name)
31
33
  end
32
- response, api_key = Eligible.request(method, url, api_key, params)
34
+ end
35
+
36
+ def self.send_request(method, url, params, opts)
37
+ headers = opts.clone
38
+ client_secret = headers.delete(:client_secret)
39
+ api_key = headers.delete(:api_key)
40
+ api_key = client_secret unless client_secret.nil?
41
+
42
+ required_param_validation(params: params, required_params: headers.delete(:required_params))
43
+
44
+ response, api_key = Eligible.request(method, url, api_key, params, headers)
33
45
  Util.convert_to_eligible_object(response, api_key)
34
46
  end
35
47
 
@@ -1,7 +1,7 @@
1
1
  module Eligible
2
2
  class CalculatorDeployUrl < APIResource
3
- def self.fetch_or_create(params, api_key = nil)
4
- send_request(:get, '/calculator_deploy_urls.json', api_key, params)
3
+ def self.fetch_or_create(params, opts = {})
4
+ send_request :get, '/calculator_deploy_urls.json', params, opts
5
5
  end
6
6
  end
7
7
  end
@@ -1,28 +1,28 @@
1
1
  module Eligible
2
2
  class Claim < APIResource
3
- def self.ack(params, api_key = nil)
3
+ def self.ack(params, opts = {})
4
4
  reference_id = Util.value(params, :reference_id)
5
- send_request(:get, "/claims/#{reference_id}/acknowledgements.json", api_key, params, :reference_id)
5
+ send_request :get, "/claims/#{reference_id}/acknowledgements.json", params, opts.merge(required_params: [:reference_id])
6
6
  end
7
7
 
8
- def self.post(params, api_key = nil)
9
- send_request(:post, '/claims.json', api_key, params)
8
+ def self.post(params, opts = {})
9
+ send_request :post, '/claims.json', params, opts
10
10
  end
11
11
 
12
- def self.acks(params, api_key = nil)
13
- send_request(:get, '/claims/acknowledgements.json', api_key, params)
12
+ def self.acks(params, opts = {})
13
+ send_request :get, '/claims/acknowledgements.json', params, opts
14
14
  end
15
15
 
16
- def self.payment_report(params, api_key = nil)
16
+ def self.payment_report(params, opts = {})
17
17
  reference_id = Util.value(params, :reference_id)
18
18
  require_param(reference_id, 'Reference id')
19
19
  id = Util.value(params, :id)
20
20
  url = id.nil? ? "/claims/#{reference_id}/payment_reports" : "/claims/#{reference_id}/payment_reports/#{id}"
21
- send_request(:get, url, api_key, params)
21
+ send_request :get, url, params, opts
22
22
  end
23
23
 
24
- def self.payment_reports(params, api_key = nil)
25
- send_request(:get, '/claims/payment_reports.json', api_key, params)
24
+ def self.payment_reports(params, opts = {})
25
+ send_request :get, '/claims/payment_reports.json', params, opts
26
26
  end
27
27
  end
28
28
  end
@@ -8,12 +8,12 @@ module Eligible
8
8
  return '/coverage/all/batch.json'
9
9
  end
10
10
 
11
- def self.cost_estimate(params, api_key = nil)
12
- send_request(:get, '/coverage/cost_estimates.json', api_key, params)
11
+ def self.cost_estimate(params, opts = {})
12
+ send_request :get, '/coverage/cost_estimates.json', params, opts
13
13
  end
14
14
 
15
- def self.batch_medicare_post(params, api_key = nil)
16
- send_request(:post, '/medicare/coverage/batch.json', api_key, params)
15
+ def self.batch_medicare_post(params, opts = {})
16
+ send_request :post, '/medicare/coverage/batch.json', params, opts
17
17
  end
18
18
  end
19
19
  end
@@ -1,11 +1,11 @@
1
1
  module Eligible
2
2
  class CoverageResource < APIResource
3
- def self.get(params, api_key = nil)
4
- send_request(:get, get_uri, api_key, params)
3
+ def self.get(params, opts = {})
4
+ send_request :get, get_uri, params, opts
5
5
  end
6
6
 
7
- def self.post(params, api_key = nil)
8
- send_request(:post, post_uri, api_key, params)
7
+ def self.post(params, opts = {})
8
+ send_request :post, post_uri, params, opts
9
9
  end
10
10
 
11
11
  def self.get_uri
@@ -1,19 +1,19 @@
1
1
  module Eligible
2
2
  class Customer < APIResource
3
- def self.get(params, api_key = nil)
4
- send_request(:get, api_url('customers', params, :customer_id), api_key, params, :customer_id)
3
+ def self.get(params, opts = {})
4
+ send_request :get, api_url('customers', params, :customer_id), params, opts.merge(required_params: [:customer_id])
5
5
  end
6
6
 
7
- def self.post(params, api_key = nil)
8
- send_request(:post, api_url('customers'), api_key, params)
7
+ def self.post(params, opts = {})
8
+ send_request :post, api_url('customers'), params, opts
9
9
  end
10
10
 
11
- def self.update(params, api_key = nil)
12
- send_request(:put, api_url('customers', params, :customer_id), api_key, params, :customer_id)
11
+ def self.update(params, opts = {})
12
+ send_request :put, api_url('customers', params, :customer_id), params, opts.merge(required_params: [:customer_id])
13
13
  end
14
14
 
15
- def self.all(params, api_key = nil)
16
- send_request(:get, api_url('customers'), api_key, params)
15
+ def self.all(params, opts = {})
16
+ send_request :get, api_url('customers'), params, opts
17
17
  end
18
18
  end
19
19
  end
@@ -1,19 +1,19 @@
1
1
  module Eligible
2
2
  class Enrollment < APIResource
3
- def self.get(params, api_key = nil)
4
- send_request(:get, api_url('enrollment_npis', params, :enrollment_npi_id), api_key, params, :enrollment_npi_id)
3
+ def self.get(params, opts = {})
4
+ send_request :get, api_url('enrollment_npis', params, :enrollment_npi_id), params, opts.merge(required_params: [:enrollment_npi_id])
5
5
  end
6
6
 
7
- def self.list(params, api_key = nil)
8
- send_request(:get, api_url('enrollment_npis'), api_key, params)
7
+ def self.list(params, opts = {})
8
+ send_request :get, api_url('enrollment_npis'), params, opts
9
9
  end
10
10
 
11
- def self.post(params, api_key = nil)
12
- send_request(:post, api_url('enrollment_npis'), api_key, params)
11
+ def self.post(params, opts = {})
12
+ send_request :post, api_url('enrollment_npis'), params, opts
13
13
  end
14
14
 
15
- def self.update(params, api_key = nil)
16
- send_request(:put, api_url('enrollment_npis', params, :enrollment_npi_id), api_key, params, :enrollment_npi_id)
15
+ def self.update(params, opts = {})
16
+ send_request :put, api_url('enrollment_npis', params, :enrollment_npi_id), params, opts.merge(required_params: [:enrollment_npi_id])
17
17
  end
18
18
 
19
19
  def enrollment_npis
@@ -16,7 +16,8 @@ module Eligible
16
16
 
17
17
  def to_s
18
18
  status_string = @http_status.nil? ? '' : "(Status #{@http_status}) "
19
- "#{status_string}#{@message}: #{@errors.to_json}"
19
+ json_errors = errors.presence || (json_body&.key?(:error) ? [json_body] : [])
20
+ "#{status_string}#{@message}: #{json_errors.to_json}"
20
21
  end
21
22
  end
22
23
  end
data/lib/eligible/icd.rb CHANGED
@@ -1,16 +1,16 @@
1
1
  module Eligible
2
2
  class Icd < APIResource
3
3
 
4
- def self.list(params, api_key = nil)
5
- send_request(:get, "/icds/#{Util.value(params, :type)}", api_key, params)
4
+ def self.list(params, opts = {})
5
+ send_request :get, "/icds/#{Util.value(params, :type)}", params, opts
6
6
  end
7
7
 
8
- def self.describe(params, api_key = nil)
9
- send_request(:get, "/icds/#{Util.value(params, :type)}/describe/#{Util.value(params, :code)}", api_key, params)
8
+ def self.describe(params, opts = {})
9
+ send_request :get, "/icds/#{Util.value(params, :type)}/describe/#{Util.value(params, :code)}", params, opts
10
10
  end
11
11
 
12
- def self.crosswalk(params, api_key = nil)
13
- send_request(:get, "/icds/#{Util.value(params, :type)}/crosswalk/#{Util.value(params, :code)}", api_key, params)
12
+ def self.crosswalk(params, opts = {})
13
+ send_request :get, "/icds/#{Util.value(params, :type)}/crosswalk/#{Util.value(params, :code)}", params, opts
14
14
  end
15
15
  end
16
16
  end
@@ -3,12 +3,12 @@ require 'base64'
3
3
 
4
4
  module Eligible
5
5
  class Lockbox < APIResource
6
- def self.get(params, api_key = nil)
7
- send_request(:get, api_url('lockboxes', params, :lockbox_id), api_key, params, :lockbox_id)
6
+ def self.get(params, opts = {})
7
+ send_request :get, api_url('lockboxes', params, :lockbox_id), params, opts.merge(required_params: [:lockbox_id])
8
8
  end
9
9
 
10
- def self.all(params, api_key = nil)
11
- send_request(:get, api_url('lockboxes'), api_key, params)
10
+ def self.all(params, opts = {})
11
+ send_request :get, api_url('lockboxes'), params, opts
12
12
  end
13
13
 
14
14
  def self.extract_private_key(params)
@@ -29,10 +29,10 @@ module Eligible
29
29
  Encryptor.decrypt(value: Base64.decode64(data), key: sha_key, insecure_mode: true)
30
30
  end
31
31
 
32
- def self.get_and_decrypt_from_lockbox(params, api_key = nil)
32
+ def self.get_and_decrypt_from_lockbox(params, opts = {})
33
33
  private_key = extract_private_key(params)
34
34
  delete_private_key!(params)
35
- req = get(params, api_key).to_hash
35
+ req = get(params, opts).to_hash
36
36
  decrypt_data(req[:encrypted_data], req[:encrypted_key], private_key)
37
37
  end
38
38
  end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Eligible
4
+ class OauthToken < APIResource
5
+ def self.post(params, opts = {})
6
+ send_request :post, '/oauth/token', params, opts
7
+ end
8
+ end
9
+ end
data/lib/eligible/ocr.rb CHANGED
@@ -5,9 +5,9 @@ module Eligible
5
5
  params[:file] = File.new(file, 'rb') if file.is_a?(String)
6
6
  end
7
7
 
8
- def self.post(params, api_key = nil)
8
+ def self.post(params, opts = {})
9
9
  setup_file(params)
10
- send_request(:post, '/card_scans.json', api_key, params)
10
+ send_request :post, '/card_scans.json', params, opts
11
11
  end
12
12
 
13
13
  private_class_method :setup_file
@@ -5,8 +5,8 @@ module Eligible
5
5
  "/enrollment_npis/#{enrollment_npi_id}/original_signature_pdf"
6
6
  end
7
7
 
8
- def self.get(params, api_key = nil)
9
- send_request(:get, original_signature_pdf_url(params), api_key, params, :enrollment_npi_id)
8
+ def self.get(params, opts = {})
9
+ send_request :get, original_signature_pdf_url(params), params, opts.merge(required_params: [:enrollment_npi_id])
10
10
  end
11
11
 
12
12
  def self.setup_file(params)
@@ -14,25 +14,27 @@ module Eligible
14
14
  params[:file] = File.new(file, 'rb') if file.is_a?(String)
15
15
  end
16
16
 
17
- def self.post(params, api_key = nil)
17
+ def self.post(params, opts = {})
18
18
  setup_file(params)
19
- send_request(:post, original_signature_pdf_url(params), api_key, params, :enrollment_npi_id)
19
+ send_request :post, original_signature_pdf_url(params), params, opts.merge(required_params: [:enrollment_npi_id])
20
20
  end
21
21
 
22
- def self.update(params, api_key = nil)
22
+ def self.update(params, opts = {})
23
23
  setup_file(params)
24
- send_request(:put, original_signature_pdf_url(params), api_key, params, :enrollment_npi_id)
24
+ send_request :put, original_signature_pdf_url(params), params, opts.merge(required_params: [:enrollment_npi_id])
25
25
  end
26
26
 
27
- def self.delete(params, api_key = nil)
28
- send_request(:delete, original_signature_pdf_url(params), api_key, params, :enrollment_npi_id)
27
+ def self.delete(params, opts = {})
28
+ send_request :delete, original_signature_pdf_url(params), params, opts.merge(required_params: [:enrollment_npi_id])
29
29
  end
30
30
 
31
- def self.download(params, api_key = nil)
31
+ def self.download(params, opts = {})
32
32
  enrollment_npi_id = Util.value(params, :enrollment_npi_id)
33
33
  require_param(enrollment_npi_id, 'Enrollment Npi id')
34
34
  params[:format] = 'x12'
35
- response = Eligible.request(:get, "/enrollment_npis/#{enrollment_npi_id}/original_signature_pdf/download", api_key, params)[0]
35
+ headers = opts.clone
36
+ api_key = headers.delete(:api_key)
37
+ response = Eligible.request(:get, "/enrollment_npis/#{enrollment_npi_id}/original_signature_pdf/download", api_key, params, headers)[0]
36
38
  filename = params[:filename] || '/tmp/original_signature_pdf.pdf'
37
39
  file = File.new(filename, 'w')
38
40
  file.write response
@@ -1,17 +1,17 @@
1
1
  module Eligible
2
2
  class Payer < APIResource
3
- def self.list(params, api_key = nil)
4
- send_request(:get, api_url('payers'), api_key, params)
3
+ def self.list(params, opts = {})
4
+ send_request :get, api_url('payers'), params, opts
5
5
  end
6
6
 
7
- def self.get(params, api_key = nil)
8
- send_request(:get, api_url('payers', params, :payer_id), api_key, params, :payer_id)
7
+ def self.get(params, opts = {})
8
+ send_request :get, api_url('payers', params, :payer_id), params, opts.merge(required_params: [:payer_id])
9
9
  end
10
10
 
11
- def self.search_options(params, api_key = nil)
11
+ def self.search_options(params, opts = {})
12
12
  payer_id = Util.value(params, :payer_id)
13
13
  url = payer_id.nil? ? '/payers/search_options' : "/payers/#{payer_id}/search_options"
14
- send_request(:get, url, api_key, params)
14
+ send_request :get, url, params, opts
15
15
  end
16
16
  end
17
17
  end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Eligible
4
+ class PayerMapping < APIResource
5
+ def self.mapper(params, opts = {})
6
+ send_request :post, '/payer_mapping/mapper', params, opts
7
+ end
8
+
9
+ def self.mapper_batch(params, opts = {})
10
+ send_request :post, '/payer_mapping/mapper/batch', params, opts
11
+ end
12
+
13
+ def self.search(params, opts = {})
14
+ send_request :post, '/payer_mapping/search', params, opts
15
+ end
16
+
17
+ def self.search_batch(params, opts = {})
18
+ send_request :post, '/payer_mapping/search/batch', params, opts
19
+ end
20
+
21
+ def self.normalize(params, opts = {})
22
+ send_request :post, '/payer_mapping/normalize', params, opts
23
+ end
24
+
25
+ def self.normalize_batch(params, opts = {})
26
+ send_request :post, '/payer_mapping/normalize/batch', params, opts
27
+ end
28
+
29
+ def self.normalize_cased(params, opts = {})
30
+ send_request :post, '/payer_mapping/normalize_cased', params, opts
31
+ end
32
+
33
+ def self.normalize_cased_batch(params, opts = {})
34
+ send_request :post, '/payer_mapping/normalize_cased/batch', params, opts
35
+ end
36
+ end
37
+ end
@@ -1,11 +1,11 @@
1
1
  module Eligible
2
2
  class Payment < APIResource
3
- def self.get(params, api_key = nil)
4
- send_request(:get, '/payment/status.json', api_key, params)
3
+ def self.get(params, opts = {})
4
+ send_request :get, '/payment/status.json', params, opts
5
5
  end
6
6
 
7
- def self.batch(params, api_key = nil)
8
- send_request(:get, '/batch/payment/status.json', api_key, params)
7
+ def self.batch(params, opts = {})
8
+ send_request :get, '/batch/payment/status.json', params, opts
9
9
  end
10
10
  end
11
11
  end
@@ -1,11 +1,11 @@
1
1
  module Eligible
2
2
  class PreauthResource < CoverageResource
3
- def self.inquiry(params, api_key = nil)
4
- get(params, api_key)
3
+ def self.inquiry(params, opts = {})
4
+ get(params, opts)
5
5
  end
6
6
 
7
- def self.create(params, api_key = nil)
8
- post(params, api_key)
7
+ def self.create(params, opts = {})
8
+ post(params, opts)
9
9
  end
10
10
  end
11
11
  end
@@ -1,7 +1,7 @@
1
1
  module Eligible
2
2
  class Precert < PreauthResource
3
- def self.require(params, api_key = nil)
4
- send_request(:get, '/precert/require.json', api_key, params)
3
+ def self.require(params, opts = {})
4
+ send_request :get, '/precert/require.json', params, opts
5
5
  end
6
6
 
7
7
  def self.get_uri
@@ -1,7 +1,7 @@
1
1
  module Eligible
2
2
  class ProviderModel < APIResource
3
- def self.get(params, api_key = nil)
4
- send_request(:get, '/provider_models.json', api_key, params)
3
+ def self.get(params, opts = {})
4
+ send_request :get, '/provider_models.json', params, opts
5
5
  end
6
6
  end
7
7
  end
@@ -2,21 +2,21 @@ require 'openssl'
2
2
 
3
3
  module Eligible
4
4
  class PublicKey < APIResource
5
- def self.get(params, api_key = nil)
6
- send_request(:get, api_url('public_keys', params, :key_id), api_key, params, :key_id)
5
+ def self.get(params, opts = {})
6
+ send_request :get, api_url('public_keys', params, :key_id), params, opts.merge(required_params: [:key_id])
7
7
  end
8
8
 
9
- def self.post(params, api_key = nil)
10
- send_request(:post, api_url('public_keys'), api_key, params)
9
+ def self.post(params, opts = {})
10
+ send_request :post, api_url('public_keys'), params, opts
11
11
  end
12
12
 
13
- def self.activate(params, api_key = nil)
13
+ def self.activate(params, opts = {})
14
14
  key_id = Util.value(params, :key_id)
15
- send_request(:get, "/public_keys/#{key_id}/activate.json", api_key, params, :key_id)
15
+ send_request :get, "/public_keys/#{key_id}/activate.json", params, opts.merge(required_params: [:key_id])
16
16
  end
17
17
 
18
- def self.all(params, api_key = nil)
19
- send_request(:get, api_url('public_keys'), api_key, params)
18
+ def self.all(params, opts = {})
19
+ send_request :get, api_url('public_keys'), params, opts
20
20
  end
21
21
 
22
22
  def self.create_pair
@@ -5,15 +5,17 @@ module Eligible
5
5
  "/enrollment_npis/#{enrollment_npi_id}/received_pdf"
6
6
  end
7
7
 
8
- def self.get(params, api_key = nil)
9
- send_request(:get, received_pdf_url(params), api_key, params, :enrollment_npi_id)
8
+ def self.get(params, opts = {})
9
+ send_request :get, received_pdf_url(params), params, opts.merge(required_params: [:enrollment_npi_id])
10
10
  end
11
11
 
12
- def self.download(params, api_key = nil)
12
+ def self.download(params, opts = {})
13
13
  enrollment_npi_id = Util.value(params, :enrollment_npi_id)
14
14
  require_param(enrollment_npi_id, 'Enrollment Npi id')
15
15
  params[:format] = 'x12'
16
- response = Eligible.request(:get, "/enrollment_npis/#{params[:enrollment_npi_id]}/received_pdf/download", api_key, params)[0]
16
+ headers = opts.clone
17
+ api_key = headers.delete(:api_key)
18
+ response = Eligible.request(:get, "/enrollment_npis/#{params[:enrollment_npi_id]}/received_pdf/download", api_key, params, headers)[0]
17
19
  filename = params[:filename] || '/tmp/received_pdf.pdf'
18
20
  file = File.new(filename, 'w')
19
21
  file.write response
@@ -1,15 +1,15 @@
1
1
  module Eligible
2
2
  class RiskAssessment < APIResource
3
- def self.criteria(params, api_key = nil)
4
- send_request(:get, '/risk_assessments/criteria.json', api_key, params)
3
+ def self.criteria(params, opts = {})
4
+ send_request :get, '/risk_assessments/criteria.json', params, opts
5
5
  end
6
6
 
7
- def self.cost_estimate(params, api_key = nil)
8
- send_request(:get, '/risk_assessments/cost_estimates.json', api_key, params)
7
+ def self.cost_estimate(params, opts = {})
8
+ send_request :get, '/risk_assessments/cost_estimates.json', params, opts
9
9
  end
10
10
 
11
- def self.fetch(params, api_key = nil)
12
- send_request(:get, '/risk_assessments/fetch.json', api_key, params)
11
+ def self.fetch(params, opts = {})
12
+ send_request :get, '/risk_assessments/fetch.json', params, opts
13
13
  end
14
14
  end
15
15
  end
@@ -1,11 +1,11 @@
1
1
  module Eligible
2
2
  class SessionToken < APIResource
3
- def self.create(params, api_key = nil)
4
- send_request(:post, '/session_tokens/create.json', api_key, params)
3
+ def self.create(params, opts = {})
4
+ send_request :post, '/session_tokens/create.json', params, opts
5
5
  end
6
6
 
7
- def self.revoke(params, api_key = nil)
8
- send_request(:post, '/session_tokens/revoke.json', api_key, params)
7
+ def self.revoke(params, opts = {})
8
+ send_request :post, '/session_tokens/revoke.json', params, opts
9
9
  end
10
10
  end
11
11
  end
@@ -13,28 +13,28 @@ module Eligible
13
13
  end
14
14
  end
15
15
 
16
- def self.create(params, api_key = nil)
17
- send_request(:post, ticket_url, api_key, params)
16
+ def self.create(params, opts = {})
17
+ send_request :post, ticket_url, params, opts
18
18
  end
19
19
 
20
- def self.comments(params, api_key = nil)
21
- send_request(:post, ticket_url(params, true), api_key, params, :id)
20
+ def self.comments(params, opts = {})
21
+ send_request :post, ticket_url(params, true), params, opts.merge(required_params: [:id])
22
22
  end
23
23
 
24
- def self.all(params, api_key = nil)
25
- send_request(:get, ticket_url, api_key, params)
24
+ def self.all(params, opts = {})
25
+ send_request :get, ticket_url, params, opts
26
26
  end
27
27
 
28
- def self.get(params, api_key = nil)
29
- send_request(:get, ticket_url(params), api_key, params, :id)
28
+ def self.get(params, opts = {})
29
+ send_request :get, ticket_url(params), params, opts.merge(required_params: [:id])
30
30
  end
31
31
 
32
- def self.delete(params, api_key = nil)
33
- send_request(:delete, ticket_url(params), api_key, params, :id)
32
+ def self.delete(params, opts = {})
33
+ send_request :delete, ticket_url(params), params, opts.merge(required_params: [:id])
34
34
  end
35
35
 
36
- def self.update(params, api_key = nil)
37
- send_request(:put, ticket_url(params), api_key, params, :id)
36
+ def self.update(params, opts = {})
37
+ send_request :put, ticket_url(params), params, opts.merge(required_params: [:id])
38
38
  end
39
39
  end
40
40
  end
@@ -1,3 +1,3 @@
1
1
  module Eligible
2
- VERSION = '2.9.14'.freeze
2
+ VERSION = '3.0.0.beta1'.freeze
3
3
  end
@@ -1,11 +1,11 @@
1
1
  module Eligible
2
2
  class VisitType < APIResource
3
- def self.list(params, api_key = nil)
4
- send_request(:get, '/visit_types.json', api_key, params)
3
+ def self.list(params, opts = {})
4
+ send_request :get, '/visit_types.json', params, opts
5
5
  end
6
6
 
7
- def self.insurance_company_ids(params, api_key = nil)
8
- send_request(:get, '/visit_types/insurance_company_ids.json', api_key, params)
7
+ def self.insurance_company_ids(params, opts = {})
8
+ send_request :get, '/visit_types/insurance_company_ids.json', params, opts
9
9
  end
10
10
  end
11
11
  end
data/lib/eligible/x12.rb CHANGED
@@ -1,8 +1,8 @@
1
1
  module Eligible
2
2
  class X12 < APIResource
3
- def self.post(params, api_key = nil)
3
+ def self.post(params, opts = {})
4
4
  params[:format] = 'x12'
5
- send_request(:post, '/x12', api_key, params)
5
+ send_request :post, '/x12', params, opts
6
6
  end
7
7
  end
8
8
  end
data/lib/eligible.rb CHANGED
@@ -25,8 +25,10 @@ require 'eligible/ticket'
25
25
  require 'eligible/customer'
26
26
  require 'eligible/ocr'
27
27
  require 'eligible/original_signature_pdf'
28
+ require 'eligible/oauth_token'
28
29
  require 'eligible/received_pdf'
29
30
  require 'eligible/payer'
31
+ require 'eligible/payer_mapping'
30
32
  require 'eligible/preauth_resource'
31
33
  require 'eligible/precert'
32
34
  require 'eligible/referral'
@@ -51,15 +53,22 @@ module Eligible
51
53
  @@test = false
52
54
  @@api_version = '1.5'
53
55
  @@api_base = "https://gds.eligibleapi.com/v#{@@api_version}"
54
- @@fingerprints = %w(1a1b7d4faa43ecdeab40cc8d203583624d5917f4
55
- b4225ee59dc7ede4d68e7b2c75c6e6ac79649416
56
- 75132c1ab844500c6ad1f26b49c11d36933ce868
56
+ @@fingerprints = %w(9df5f186fb20ad25ffd864942a6394840b02a480
57
57
  a1cd762a9f4be0f3b6bdd6300e52c6ce8d7d67f5)
58
+ @@eligible_account = nil
58
59
 
59
60
  def self.api_url(url = '')
60
61
  @@api_base + url.to_s
61
62
  end
62
63
 
64
+ def self.eligible_account
65
+ @@eligible_account
66
+ end
67
+
68
+ def self.eligible_account=(eligible_account)
69
+ @@eligible_account = eligible_account
70
+ end
71
+
63
72
  def self.api_key
64
73
  @@api_key
65
74
  end
@@ -165,6 +174,7 @@ module Eligible
165
174
  }.merge(headers)
166
175
 
167
176
  headers[:eligible_version] = api_version if api_version
177
+ headers[:eligible_account] = eligible_account if eligible_account
168
178
 
169
179
  opts = {
170
180
  method: method,
metadata CHANGED
@@ -1,16 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eligible
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.9.14
4
+ version: 3.0.0.beta1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Katelyn Gleaon
8
8
  - Rodrigo Dominguez
9
9
  - Aaron Bedra
10
- autorequire:
10
+ autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2023-01-19 00:00:00.000000000 Z
13
+ date: 2020-02-04 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rest-client
@@ -139,9 +139,11 @@ files:
139
139
  - lib/eligible/json.rb
140
140
  - lib/eligible/lockbox.rb
141
141
  - lib/eligible/medicare.rb
142
+ - lib/eligible/oauth_token.rb
142
143
  - lib/eligible/ocr.rb
143
144
  - lib/eligible/original_signature_pdf.rb
144
145
  - lib/eligible/payer.rb
146
+ - lib/eligible/payer_mapping.rb
145
147
  - lib/eligible/payment.rb
146
148
  - lib/eligible/preauth_resource.rb
147
149
  - lib/eligible/precert.rb
@@ -160,7 +162,7 @@ homepage: https://github.com/eligible/eligible-ruby
160
162
  licenses:
161
163
  - MIT
162
164
  metadata: {}
163
- post_install_message:
165
+ post_install_message:
164
166
  rdoc_options: []
165
167
  require_paths:
166
168
  - lib
@@ -171,12 +173,13 @@ required_ruby_version: !ruby/object:Gem::Requirement
171
173
  version: '0'
172
174
  required_rubygems_version: !ruby/object:Gem::Requirement
173
175
  requirements:
174
- - - ">="
176
+ - - ">"
175
177
  - !ruby/object:Gem::Version
176
- version: '0'
178
+ version: 1.3.1
177
179
  requirements: []
178
- rubygems_version: 3.3.3
179
- signing_key:
180
+ rubyforge_project:
181
+ rubygems_version: 2.7.10
182
+ signing_key:
180
183
  specification_version: 4
181
184
  summary: Ruby wrapper for the Eligible API
182
185
  test_files: []