eligible 3.0.0 → 3.1.0.beta1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.circleci/config.yml +1 -0
- data/.gitignore +1 -0
- data/CHANGELOG.md +101 -11
- data/Gemfile +4 -0
- data/Gemfile.lock +13 -6
- data/README.md +51 -54
- data/eligible.gemspec +2 -1
- data/lib/eligible/api_resource.rb +27 -6
- data/lib/eligible/calculator_deploy_url.rb +2 -2
- data/lib/eligible/claim.rb +10 -10
- data/lib/eligible/coverage.rb +8 -4
- data/lib/eligible/coverage_resource.rb +4 -4
- data/lib/eligible/customer.rb +8 -8
- data/lib/eligible/encryptor.rb +1 -1
- data/lib/eligible/enrollment.rb +8 -8
- data/lib/eligible/errors/eligible_error.rb +2 -1
- data/lib/eligible/icd.rb +6 -6
- data/lib/eligible/lockbox.rb +6 -6
- data/lib/eligible/oauth_token.rb +9 -0
- data/lib/eligible/ocr.rb +2 -2
- data/lib/eligible/original_signature_pdf.rb +12 -10
- data/lib/eligible/payer.rb +6 -6
- data/lib/eligible/payer_mapping.rb +37 -0
- data/lib/eligible/payment.rb +4 -4
- data/lib/eligible/preauth_resource.rb +4 -4
- data/lib/eligible/precert.rb +2 -2
- data/lib/eligible/provider_model.rb +2 -2
- data/lib/eligible/public_key.rb +8 -8
- data/lib/eligible/received_pdf.rb +6 -4
- data/lib/eligible/risk_assessment.rb +6 -6
- data/lib/eligible/session_token.rb +4 -4
- data/lib/eligible/ticket.rb +12 -12
- data/lib/eligible/util.rb +2 -2
- data/lib/eligible/v1_0/action.rb +9 -0
- data/lib/eligible/v1_0/attribute.rb +9 -0
- data/lib/eligible/v1_0/balance_capture.rb +21 -0
- data/lib/eligible/v1_0/charge.rb +13 -0
- data/lib/eligible/v1_0/claim.rb +25 -0
- data/lib/eligible/v1_0/claim_service_line.rb +9 -0
- data/lib/eligible/v1_0/contract.rb +9 -0
- data/lib/eligible/v1_0/device.rb +9 -0
- data/lib/eligible/v1_0/discount.rb +9 -0
- data/lib/eligible/v1_0/enrollment.rb +17 -0
- data/lib/eligible/v1_0/estimate.rb +29 -0
- data/lib/eligible/v1_0/estimate_service_line.rb +17 -0
- data/lib/eligible/v1_0/fee.rb +21 -0
- data/lib/eligible/v1_0/fee_refund.rb +29 -0
- data/lib/eligible/v1_0/file.rb +17 -0
- data/lib/eligible/v1_0/file_link.rb +13 -0
- data/lib/eligible/v1_0/insurance_company.rb +21 -0
- data/lib/eligible/v1_0/insurance_company_alias.rb +9 -0
- data/lib/eligible/v1_0/insurance_policy.rb +9 -0
- data/lib/eligible/v1_0/patient_question.rb +9 -0
- data/lib/eligible/v1_0/patient_questionnaire.rb +9 -0
- data/lib/eligible/v1_0/patient_record.rb +9 -0
- data/lib/eligible/v1_0/patient_statement.rb +59 -0
- data/lib/eligible/v1_0/patient_statement_service_line.rb +13 -0
- data/lib/eligible/v1_0/payment_report.rb +21 -0
- data/lib/eligible/v1_0/product.rb +9 -0
- data/lib/eligible/v1_0/provider.rb +9 -0
- data/lib/eligible/v1_0/refund.rb +21 -0
- data/lib/eligible/v1_0/remark.rb +21 -0
- data/lib/eligible/v1_0/rest_api_base.rb +44 -0
- data/lib/eligible/v1_0/rule.rb +13 -0
- data/lib/eligible/v1_0/session.rb +21 -0
- data/lib/eligible/v1_0/transaction.rb +21 -0
- data/lib/eligible/v1_0/treatment.rb +9 -0
- data/lib/eligible/v1_0/value_list.rb +9 -0
- data/lib/eligible/v1_0/value_list_item.rb +9 -0
- data/lib/eligible/v1_0/verification.rb +17 -0
- data/lib/eligible/version.rb +1 -1
- data/lib/eligible/visit_type.rb +4 -4
- data/lib/eligible/x12.rb +2 -2
- data/lib/eligible.rb +150 -38
- metadata +47 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3aeb6336ce4a8b2bd31afea5fc7fddde359ab52f922e91a2015ecf870388e5ae
|
4
|
+
data.tar.gz: 022fb21e622e9031f946da58dc466648fe8a0c941078982167d8f9223fd569ef
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a9be55e34f6d5c70fa2ee8afb258987f650a04ef9b55cb37e9a2029662d139a8113db4bcad0d0d2fd4c4eca883111fe92ac7d0f78228e3377cd08d09fb16f39f
|
7
|
+
data.tar.gz: e29564e5e491c774141fe6663bddc9d5f0b9591e4d958cb4125514fd5dd2020bb62e07d8ad19f1589d55fe714fa5426be05c08d3e47f2140ff4798663c53f16f
|
data/.circleci/config.yml
CHANGED
data/.gitignore
CHANGED
data/CHANGELOG.md
CHANGED
@@ -1,25 +1,115 @@
|
|
1
1
|
# Changelog
|
2
|
-
## 3.0.
|
3
|
-
-
|
2
|
+
## 3.1.0.beta1 - 2022-09-12
|
3
|
+
- Added support of ruby 3.1
|
4
4
|
|
5
|
-
##
|
5
|
+
## 3.0.0.beta28 - 2022-02-07
|
6
6
|
- Updated pinned GDS SSL certificate
|
7
7
|
|
8
|
-
##
|
8
|
+
## 3.0.0.beta27 - 2021-09-23
|
9
|
+
- Updated pinned api.eligible.com certificate
|
10
|
+
|
11
|
+
## 3.0.0.beta26 - 2021-05-12
|
12
|
+
- Updated pinned GDS SSL certificate for Staging
|
13
|
+
|
14
|
+
## 3.0.0.beta25 - 2021-04-12
|
9
15
|
- Updated pinned GDS SSL certificate
|
10
16
|
|
11
|
-
##
|
17
|
+
## 3.0.0.beta24 - 2021-04-01
|
12
18
|
- Updated pinned GDS SSL certificate
|
13
19
|
|
14
|
-
##
|
15
|
-
-
|
20
|
+
## 3.0.0.beta23 - 2020-11-13
|
21
|
+
- Bug fixes
|
16
22
|
|
17
|
-
##
|
18
|
-
-
|
23
|
+
## 3.0.0.beta22 - 2020-10-21
|
24
|
+
- Bug fixes
|
25
|
+
|
26
|
+
## 3.0.0.beta21 - 2020-10-21
|
27
|
+
- Add post method for CE API to avoid 414 error with large X12 inputs
|
28
|
+
|
29
|
+
## 3.0.0.beta20 - 2020-08-17
|
30
|
+
- Bug fixes
|
31
|
+
|
32
|
+
## 3.0.0.beta19 - 2020-07-28
|
33
|
+
- Added refunds and balance_captures REST API endpoints
|
34
|
+
|
35
|
+
## 3.0.0.beta18 - 2020-07-24
|
36
|
+
- Added claim_submit endpoint API url for PatientStatement endpoint
|
19
37
|
|
20
|
-
##
|
38
|
+
## 3.0.0.beta17 - 2020-07-13
|
39
|
+
- Bug fixes
|
40
|
+
|
41
|
+
## 3.0.0.beta16 - 2020-07-10
|
42
|
+
- Migrated "Patient" endpoint to "PatientRecord"
|
43
|
+
|
44
|
+
## 3.0.0.beta15 - 2020-06-12
|
45
|
+
- Added support for patient questionnaire, patient questions API endpoints
|
46
|
+
|
47
|
+
## 3.0.0.beta14 - 2020-06-08
|
48
|
+
- Added Fee and FeeRefund new REST API endpoints
|
49
|
+
|
50
|
+
## 3.0.0.beta13 - 2020-06-05
|
51
|
+
- Added create, update, delete and validate endpoints support for rules
|
52
|
+
|
53
|
+
## 3.0.0.beta12 - 2020-05-12
|
21
54
|
- Updated pinned GDS SSL certificate
|
22
55
|
|
56
|
+
## 3.0.0.beta11 - 2020-05-12
|
57
|
+
- Added summary and escalate actions for Enrollments endpoint
|
58
|
+
- Added Action endpoint
|
59
|
+
- Added Attribute endpoint
|
60
|
+
- Added Claim endpoint
|
61
|
+
- Added ClaimServiceLine endpoint
|
62
|
+
- Added Device endpoint
|
63
|
+
- Added Discount endpoint
|
64
|
+
- Renamed FileObject to File in order to kept consistency
|
65
|
+
- Added FileLink endpoint
|
66
|
+
- Added InsuranceCompanyAlias endpoint
|
67
|
+
- Added PaymentReport endpoint
|
68
|
+
- Added Remark endpoint
|
69
|
+
- Added Rule endpoint
|
70
|
+
- Added Session endpoint
|
71
|
+
- Added Transaction endpoint
|
72
|
+
- Added ValueList endpoint
|
73
|
+
- Added ValueListItem endpoint
|
74
|
+
- Added Verification endpoint
|
75
|
+
- Updated Charge endpoint to raise exception on delete action
|
76
|
+
- Updated Estimate endpoint, raise exception on update and delete actions, and added missing actions process, reestimate, convert
|
77
|
+
- Update EstimateServiceLine endpoint to raise exception on update and delete actions
|
78
|
+
- Updated InsuranceCompany endpoint to raise exception on delete action
|
79
|
+
|
80
|
+
## 3.0.0.beta10 - 2020-05-06
|
81
|
+
- Added support for new REST API endpoints "Contract, Enrollment, Provider"
|
82
|
+
- Added support delete operations on new API.
|
83
|
+
|
84
|
+
## 3.0.0.beta9 - 2020-05-04
|
85
|
+
- Added support for new REST API endpoints "Charge, Estimate, EstimateServiceLine, Product, Treatment"
|
86
|
+
|
87
|
+
## 3.0.0.beta8 - 2020-04-30
|
88
|
+
- Fixed payment and payment_reports API urls for new PatientStatement endpoint
|
89
|
+
|
90
|
+
## 3.0.0.beta7 - 2020-04-16
|
91
|
+
- Removed un-wanted parameters from the API request while making calls to new REST API endpoint
|
92
|
+
|
93
|
+
## 3.0.0.beta6 - 2020-04-08
|
94
|
+
- Bug fix for "PatientStatement" endpoint
|
95
|
+
|
96
|
+
## 3.0.0.beta5 - 2020-03-31
|
97
|
+
- Added support for new REST API endpoints "Insurance Company, Insurance Policy, Patient"
|
98
|
+
|
99
|
+
## 3.0.0.beta4 - 2020-03-16
|
100
|
+
- Fixed query params conversion to support Expand feature for new REST API Endpoints
|
101
|
+
- Changed new REST API endpoints format to support `ID` field or `params`
|
102
|
+
|
103
|
+
## 3.0.0.beta3 - 2020-03-09
|
104
|
+
- Added support for new REST API endpoint "PatientStatement" and "PatientStatementServiceLine"
|
105
|
+
|
106
|
+
## 3.0.0.beta2 - 2020-03-03
|
107
|
+
- Added support for V1.0 REST API endpoints and added Files endpoints
|
108
|
+
- Update pinned api.eligible.com and wildcard.eligible.com certificate
|
109
|
+
|
110
|
+
## 3.0.0.beta1 - 2019-10-01
|
111
|
+
- Added support for Eligible-Account Header in the API requests when used Eligible Connect feature
|
112
|
+
|
23
113
|
## 2.9.9 - 2019-08-07
|
24
114
|
- Added Icd code endpoints
|
25
115
|
|
@@ -74,7 +164,7 @@
|
|
74
164
|
- Documentation updates for the endpoints
|
75
165
|
|
76
166
|
## 2.6.0 - 2016-02-23
|
77
|
-
- Added new endpoints customer, original signature pdf and payer.
|
167
|
+
- Added new endpoints customer, original signature pdf, and payer.
|
78
168
|
- Added specs
|
79
169
|
- Bumped api version to 1.5
|
80
170
|
- Fixed few bugs
|
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 (3.0.
|
4
|
+
eligible (3.1.0.beta1)
|
5
5
|
multi_json (~> 1.15.0)
|
6
6
|
rest-client (~> 2.1.0)
|
7
7
|
|
@@ -10,13 +10,14 @@ GEM
|
|
10
10
|
specs:
|
11
11
|
diff-lcs (1.5.0)
|
12
12
|
docile (1.4.0)
|
13
|
-
domain_name (0.
|
13
|
+
domain_name (0.5.20190701)
|
14
|
+
unf (>= 0.0.5, < 1.0.0)
|
14
15
|
http-accept (1.7.0)
|
15
16
|
http-cookie (1.0.5)
|
16
17
|
domain_name (~> 0.5)
|
17
|
-
mime-types (3.
|
18
|
+
mime-types (3.4.1)
|
18
19
|
mime-types-data (~> 3.2015)
|
19
|
-
mime-types-data (3.
|
20
|
+
mime-types-data (3.2022.0105)
|
20
21
|
multi_json (1.15.0)
|
21
22
|
netrc (0.11.0)
|
22
23
|
rake (13.0.6)
|
@@ -37,7 +38,7 @@ GEM
|
|
37
38
|
rspec-mocks (3.11.1)
|
38
39
|
diff-lcs (>= 1.2.0, < 2.0)
|
39
40
|
rspec-support (~> 3.11.0)
|
40
|
-
rspec-support (3.11.
|
41
|
+
rspec-support (3.11.0)
|
41
42
|
rspec_junit_formatter (0.5.1)
|
42
43
|
rspec-core (>= 2, < 4, != 2.12.0)
|
43
44
|
simplecov (0.21.2)
|
@@ -46,6 +47,9 @@ GEM
|
|
46
47
|
simplecov_json_formatter (~> 0.1)
|
47
48
|
simplecov-html (0.12.3)
|
48
49
|
simplecov_json_formatter (0.1.4)
|
50
|
+
unf (0.1.4)
|
51
|
+
unf_ext
|
52
|
+
unf_ext (0.0.8.2)
|
49
53
|
|
50
54
|
PLATFORMS
|
51
55
|
ruby
|
@@ -54,8 +58,11 @@ DEPENDENCIES
|
|
54
58
|
eligible!
|
55
59
|
rake (~> 13.0.6)
|
56
60
|
rspec (~> 3.11.0)
|
57
|
-
rspec_junit_formatter (~> 0.5.
|
61
|
+
rspec_junit_formatter (~> 0.5.1)
|
58
62
|
simplecov (~> 0.21.2)
|
59
63
|
|
64
|
+
RUBY VERSION
|
65
|
+
ruby 3.1.0p0
|
66
|
+
|
60
67
|
BUNDLED WITH
|
61
68
|
2.1.4
|
data/README.md
CHANGED
@@ -38,7 +38,7 @@ Eligible.test = true
|
|
38
38
|
On each api call, you can overwrite the api key or the test parameter:
|
39
39
|
|
40
40
|
```ruby
|
41
|
-
Eligible::Coverage.get({api_key
|
41
|
+
Eligible::Coverage.get({:api_key => 'NEW_KEY', :test => false})
|
42
42
|
```
|
43
43
|
|
44
44
|
### Response Format
|
@@ -47,7 +47,7 @@ By default, all responses are in JSON, but you can request raw
|
|
47
47
|
access to X12 by adding is as a parameter on the api call:
|
48
48
|
|
49
49
|
```ruby
|
50
|
-
Eligible::Coverage.get({format
|
50
|
+
Eligible::Coverage.get({:format => "x12"})
|
51
51
|
```
|
52
52
|
|
53
53
|
# Important notes
|
@@ -123,18 +123,17 @@ coverage.to_hash
|
|
123
123
|
### Retrieve eligibility and benefit information
|
124
124
|
|
125
125
|
```ruby
|
126
|
-
|
127
126
|
params = {
|
128
|
-
service_type
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
127
|
+
:service_type => "33",
|
128
|
+
:network => "OUT",
|
129
|
+
:payer_id => "000001",
|
130
|
+
:provider_last_name => "Last",
|
131
|
+
:provider_first_name => "First",
|
132
|
+
:provider_npi => "12345678",
|
133
|
+
:member_id => "12345678",
|
134
|
+
:member_last_name => "Austen",
|
135
|
+
:member_first_name => "Jane",
|
136
|
+
:member_dob => "1955-12-14"
|
138
137
|
}
|
139
138
|
|
140
139
|
coverage = Eligible::Coverage.get(params)
|
@@ -155,11 +154,10 @@ params = {
|
|
155
154
|
network: 'IN',
|
156
155
|
payer_id: '00001',
|
157
156
|
provider_npi: '1234567893',
|
158
|
-
member_id: '
|
157
|
+
member_id: 'COST_ESTIMATE_001',
|
159
158
|
member_dob: '1886-01-01',
|
160
159
|
provider_price: '200',
|
161
|
-
level: 'individual'
|
162
|
-
test: true
|
160
|
+
level: 'individual'
|
163
161
|
}
|
164
162
|
|
165
163
|
cost_estimate = Eligible::Coverage.cost_estimate(params)
|
@@ -176,15 +174,14 @@ cost_estimate.to_hash # returns all coverage info along with cost estimate
|
|
176
174
|
|
177
175
|
```ruby
|
178
176
|
params = {
|
179
|
-
payer_id
|
180
|
-
provider_last_name
|
181
|
-
provider_first_name
|
182
|
-
provider_npi
|
183
|
-
member_id
|
184
|
-
member_last_name
|
185
|
-
member_first_name
|
186
|
-
member_dob
|
187
|
-
test: true
|
177
|
+
:payer_id => "000001",
|
178
|
+
:provider_last_name => "Last",
|
179
|
+
:provider_first_name => "First",
|
180
|
+
:provider_npi => "12345678",
|
181
|
+
:member_id => "12345678",
|
182
|
+
:member_last_name => "Austen",
|
183
|
+
:member_first_name => "Jane",
|
184
|
+
:member_dob => "1955-12-14"
|
188
185
|
}
|
189
186
|
medicare = Eligible::Medicare.get(params)
|
190
187
|
medicare.to_hash # returns all coverage info for the request
|
@@ -241,13 +238,13 @@ result.error # return error, if any
|
|
241
238
|
### Retrieve an Enrollment Request
|
242
239
|
|
243
240
|
```ruby
|
244
|
-
params = { enrollment_request_id
|
241
|
+
params = { :enrollment_request_id => 123 }
|
245
242
|
enrollment = Eligible::Enrollment.get(params)
|
246
243
|
enrollment.to_hash # return the api call results
|
247
244
|
enrollment.error # return error, if any
|
248
245
|
enrollment.enrollment_npis # quick access to the enrollment npis within the enrollment request object
|
249
246
|
|
250
|
-
params = { npis
|
247
|
+
params = { :npis => %w(123 456 789).join(',') }
|
251
248
|
enrollment = Eligible::Enrollment.get(params)
|
252
249
|
```
|
253
250
|
|
@@ -342,7 +339,7 @@ claims = Eligible::Claim.all # returns acknowledgment information for all claims
|
|
342
339
|
|
343
340
|
```ruby
|
344
341
|
params = {
|
345
|
-
reference_id
|
342
|
+
:reference_id => "12345"
|
346
343
|
}
|
347
344
|
|
348
345
|
claim = Eligible::Claim.get(params) # returns acknowledgment information on an individual claim identified by its reference_id
|
@@ -357,18 +354,18 @@ claim = Eligible::Claim.get(params) # returns acknowledgment information on an i
|
|
357
354
|
### Retrieve Payment status
|
358
355
|
|
359
356
|
```ruby
|
360
|
-
params = { payer_id
|
361
|
-
provider_tax_id
|
362
|
-
provider_npi
|
363
|
-
provider_first_name
|
364
|
-
provider_first_name
|
365
|
-
member_id
|
366
|
-
member_first_name
|
367
|
-
member_last_name
|
368
|
-
member_dob
|
369
|
-
charge_amount
|
370
|
-
start_date
|
371
|
-
end_date
|
357
|
+
params = { :payer_id => '00001',
|
358
|
+
:provider_tax_id => '4373208923',
|
359
|
+
:provider_npi => '1234567890',
|
360
|
+
:provider_first_name => 'Thomas',
|
361
|
+
:provider_first_name => 'Thomas',
|
362
|
+
:member_id => '123',
|
363
|
+
:member_first_name => 'Benjamin',
|
364
|
+
:member_last_name => 'Franklin',
|
365
|
+
:member_dob => '01-01-1980',
|
366
|
+
:charge_amount => '100.00',
|
367
|
+
:start_date => '2013-03-25',
|
368
|
+
:end_date => '2013-03-25' }
|
372
369
|
|
373
370
|
result = Eligible::Payment.get(params)
|
374
371
|
result.to_hash # return the api call results
|
@@ -380,7 +377,7 @@ result.error # return error, if any
|
|
380
377
|
### X12 post
|
381
378
|
|
382
379
|
```ruby
|
383
|
-
params = { x12
|
380
|
+
params = { :x12 => "ISA*00* *00* *ZZ*SENDERID *ZZ*ELIGIB *130610*0409*^*00501*100000001*0*T*:~GS*HS*SENDERID*ELIGIB*20130610*0409*1*X*005010X279A1~ST*270*0001*005010X279A1~BHT*0022*13*137083739083716126837*20130610*0409~HL*1**20*1~NM1*PR*2*UnitedHealthCare*****PI*112~HL*2*1*21*1~NM1*1P*1*AUSTEN*JANE****XX*1222494919~HL*3*2*22*0~TRN*1*1*1453915417~NM1*IL*1*FRANKLIN*BENJAMIN****MI*23412342~DMG*D8*17371207~DTP*291*D8*20130610~EQ*30~SE*13*0001~GE*1*1~IEA*1*100000001~" }
|
384
381
|
|
385
382
|
result = Eligible::X12.post(params)
|
386
383
|
```
|
@@ -394,10 +391,10 @@ result = Eligible::X12.post(params)
|
|
394
391
|
### Create a ticket
|
395
392
|
|
396
393
|
```ruby
|
397
|
-
params = {priority
|
398
|
-
title
|
399
|
-
notification_email
|
400
|
-
body
|
394
|
+
params = {:priority => 'normal',
|
395
|
+
:title => 'TITLE',
|
396
|
+
:notification_email => 'admin@eligible.com',
|
397
|
+
:body => 'Your comment'}
|
401
398
|
result = Eligible::Ticket.create params
|
402
399
|
result.to_hash # return the api call results
|
403
400
|
enrollment.error # return error, if any
|
@@ -406,7 +403,7 @@ enrollment.error # return error, if any
|
|
406
403
|
### Get a ticket
|
407
404
|
|
408
405
|
```ruby
|
409
|
-
ticket = Eligible::Ticket.get(id
|
406
|
+
ticket = Eligible::Ticket.get(:id => 1)
|
410
407
|
ticket.to_hash # return the api call result
|
411
408
|
ticket.error # return error, if any
|
412
409
|
```
|
@@ -414,11 +411,11 @@ ticket.error # return error, if any
|
|
414
411
|
### Update a ticket
|
415
412
|
|
416
413
|
```ruby
|
417
|
-
params = { id
|
418
|
-
priority
|
419
|
-
title
|
420
|
-
notification_email
|
421
|
-
body
|
414
|
+
params = { :id => 1,
|
415
|
+
:priority => 'normal',
|
416
|
+
:title => 'TITLE',
|
417
|
+
:notification_email => 'your_email@test.com',
|
418
|
+
:body => 'Your comment'}
|
422
419
|
result = Eligible::Ticket.update(params)
|
423
420
|
result.to_hash # return the api call results
|
424
421
|
enrollment.error # return error, if any
|
@@ -427,7 +424,7 @@ enrollment.error # return error, if any
|
|
427
424
|
### Get comments for a ticket
|
428
425
|
|
429
426
|
```ruby
|
430
|
-
comments = Eligible::Ticket.get(id
|
427
|
+
comments = Eligible::Ticket.get(:id => 1)
|
431
428
|
comments.to_hash # return the api call result
|
432
429
|
comments.error # return error, if any
|
433
430
|
|
@@ -435,7 +432,7 @@ comments.error # return error, if any
|
|
435
432
|
|
436
433
|
### Delete a ticket
|
437
434
|
```ruby
|
438
|
-
result = Eligible::Ticket.delete(id
|
435
|
+
result = Eligible::Ticket.delete(:id => 1)
|
439
436
|
comments.to_hash # return the api call result
|
440
437
|
comments.error # return error, if any
|
441
438
|
```
|
@@ -682,7 +679,7 @@ result.error # returns error, if any
|
|
682
679
|
### Use session token without api_key
|
683
680
|
|
684
681
|
```ruby
|
685
|
-
Eligible::Coverage.get({session_token
|
682
|
+
Eligible::Coverage.get({:session_token => 'SESSION_TOKEN', :test => false})
|
686
683
|
```
|
687
684
|
|
688
685
|
|
data/eligible.gemspec
CHANGED
@@ -15,12 +15,13 @@ Gem::Specification.new do |gem|
|
|
15
15
|
|
16
16
|
gem.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
17
17
|
gem.require_paths = ['lib']
|
18
|
+
gem.required_ruby_version = '>= 3.1.0'
|
18
19
|
|
19
20
|
gem.add_dependency('rest-client', '~> 2.1.0')
|
20
21
|
gem.add_dependency('multi_json', '~> 1.15.0')
|
21
22
|
|
22
23
|
gem.add_development_dependency('rake', '~> 13.0.6')
|
23
24
|
gem.add_development_dependency('rspec', '~> 3.11.0')
|
24
|
-
gem.add_development_dependency('rspec_junit_formatter', '~> 0.5.
|
25
|
+
gem.add_development_dependency('rspec_junit_formatter', '~> 0.5.1')
|
25
26
|
gem.add_development_dependency('simplecov', '~> 0.21.2')
|
26
27
|
end
|
@@ -6,10 +6,10 @@ module Eligible
|
|
6
6
|
|
7
7
|
def self.api_url(base, params = nil, param_id = nil)
|
8
8
|
if params.nil?
|
9
|
-
"/#{base}
|
9
|
+
"/#{base}"
|
10
10
|
else
|
11
11
|
id = Util.value(params, param_id)
|
12
|
-
"/#{base}/#{id}
|
12
|
+
"/#{base}/#{id}"
|
13
13
|
end
|
14
14
|
end
|
15
15
|
|
@@ -20,18 +20,39 @@ module Eligible
|
|
20
20
|
"/#{CGI.escape(class_name.downcase)}/"
|
21
21
|
end
|
22
22
|
|
23
|
+
def self.endpoint_name
|
24
|
+
self.const_get('ENDPOINT_NAME')
|
25
|
+
end
|
26
|
+
|
23
27
|
def self.require_param(value, name)
|
24
28
|
fail ArgumentError, "#{name} of the #{class_name} is required" if value.nil? || (value.is_a?(String) && value.empty?)
|
25
29
|
end
|
26
30
|
|
27
|
-
def self.
|
28
|
-
|
31
|
+
def self.required_param_validation(params:, required_params:)
|
32
|
+
return if required_params.nil? || !required_params.is_a?(Array)
|
33
|
+
|
34
|
+
required_params.each do |required_param_name|
|
29
35
|
required_param = Util.value(params, required_param_name)
|
30
36
|
require_param(required_param, required_param_name)
|
31
37
|
end
|
32
|
-
response, api_key = Eligible.request(method, url, api_key, **params)
|
33
|
-
Util.convert_to_eligible_object(response, api_key)
|
34
38
|
end
|
35
39
|
|
40
|
+
def self.rest_api_params(id_or_params)
|
41
|
+
id_or_params.is_a?(Hash) ? id_or_params : { id: id_or_params }
|
42
|
+
end
|
43
|
+
|
44
|
+
def self.send_request(method, url, params, opts = {})
|
45
|
+
headers = opts.clone
|
46
|
+
client_secret = headers.delete(:client_secret)
|
47
|
+
api_key = headers.delete(:api_key)
|
48
|
+
api_key = client_secret unless client_secret.nil?
|
49
|
+
|
50
|
+
required_param_validation(params: params, required_params: headers.delete(:required_params))
|
51
|
+
|
52
|
+
# Here rest_api_version is related to New REST API Endpoints
|
53
|
+
params = self.const_defined?(:REST_API_VERSION) ? params.merge(rest_api_version: self::REST_API_VERSION) : params
|
54
|
+
response, api_key = Eligible.request(method, url, api_key, params, **headers)
|
55
|
+
Util.convert_to_eligible_object(response, api_key)
|
56
|
+
end
|
36
57
|
end
|
37
58
|
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
module Eligible
|
2
2
|
class CalculatorDeployUrl < APIResource
|
3
|
-
def self.fetch_or_create(params,
|
4
|
-
send_request
|
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
|
data/lib/eligible/claim.rb
CHANGED
@@ -1,28 +1,28 @@
|
|
1
1
|
module Eligible
|
2
2
|
class Claim < APIResource
|
3
|
-
def self.ack(params,
|
3
|
+
def self.ack(params, opts = {})
|
4
4
|
reference_id = Util.value(params, :reference_id)
|
5
|
-
send_request
|
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,
|
9
|
-
send_request
|
8
|
+
def self.post(params, opts = {})
|
9
|
+
send_request :post, '/claims.json', params, **opts
|
10
10
|
end
|
11
11
|
|
12
|
-
def self.acks(params,
|
13
|
-
send_request
|
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,
|
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
|
21
|
+
send_request :get, url, params, **opts
|
22
22
|
end
|
23
23
|
|
24
|
-
def self.payment_reports(params,
|
25
|
-
send_request
|
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
|
data/lib/eligible/coverage.rb
CHANGED
@@ -8,12 +8,16 @@ module Eligible
|
|
8
8
|
return '/coverage/all/batch.json'
|
9
9
|
end
|
10
10
|
|
11
|
-
def self.cost_estimate(params,
|
12
|
-
send_request
|
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.
|
16
|
-
send_request
|
15
|
+
def self.cost_estimate_post(params, opts = {})
|
16
|
+
send_request :post, '/coverage/cost_estimates.json', params, **opts
|
17
|
+
end
|
18
|
+
|
19
|
+
def self.batch_medicare_post(params, opts = {})
|
20
|
+
send_request :post, '/medicare/coverage/batch.json', params, **opts
|
17
21
|
end
|
18
22
|
end
|
19
23
|
end
|
@@ -1,11 +1,11 @@
|
|
1
1
|
module Eligible
|
2
2
|
class CoverageResource < APIResource
|
3
|
-
def self.get(params,
|
4
|
-
send_request
|
3
|
+
def self.get(params, opts = {})
|
4
|
+
send_request :get, get_uri, params, **opts
|
5
5
|
end
|
6
6
|
|
7
|
-
def self.post(params,
|
8
|
-
send_request
|
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
|
data/lib/eligible/customer.rb
CHANGED
@@ -1,19 +1,19 @@
|
|
1
1
|
module Eligible
|
2
2
|
class Customer < APIResource
|
3
|
-
def self.get(params,
|
4
|
-
send_request
|
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,
|
8
|
-
send_request
|
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,
|
12
|
-
send_request
|
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,
|
16
|
-
send_request
|
15
|
+
def self.all(params, opts = {})
|
16
|
+
send_request :get, api_url('customers'), params, **opts
|
17
17
|
end
|
18
18
|
end
|
19
19
|
end
|