eligible 2.2 → 2.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +129 -0
- data/lib/eligible.rb +5 -3
- data/lib/eligible/coverage.rb +13 -0
- data/lib/eligible/demographic.rb +7 -1
- data/lib/eligible/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: db1f19b35719b1eeb1e339ae413fc36038d6e322
|
4
|
+
data.tar.gz: a1a9e247377c3fdb52f54150066ef554616a3dc7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 87c4140d9b5940479d5f5cab0d0f95a6ed738046963e93714aabcd3a9078746edf0eceefe3ca7631344cf15e972b4ca9b0ccde2d13174983fac4f6462f15827a
|
7
|
+
data.tar.gz: 0e2a53d43aa60655f4d15628a065a540a022827ddc4e2bf55d5883d332c8d8a00584b754260582b5c1528fccfc81acec67ad781459e7dda23ca860ffca82d1b9
|
data/README.md
CHANGED
@@ -51,6 +51,50 @@ demographic.all # returns all fields for the demographic, per demographic/all
|
|
51
51
|
```
|
52
52
|
|
53
53
|
|
54
|
+
|
55
|
+
##Batch post Demographic
|
56
|
+
**POST** `https://gds.eligibleapi.com/v1.1/demographic/all/batch.json`
|
57
|
+
|
58
|
+
```ruby
|
59
|
+
|
60
|
+
Eligible.test = true
|
61
|
+
params = {
|
62
|
+
"parameters"=>[
|
63
|
+
{
|
64
|
+
"id"=>1,
|
65
|
+
"payer_name"=>"UnitedHealthCare",
|
66
|
+
"payer_id"=>"00112",
|
67
|
+
"service_provider_npi"=>"12341234",
|
68
|
+
"subscriber_id"=>"98769876",
|
69
|
+
"subscriber_first_name"=>"Jane",
|
70
|
+
"subscriber_last_name"=>"Austen",
|
71
|
+
"service_provider_last_name"=>"Gaurav",
|
72
|
+
"service_provider_first_name"=>"Gupta",
|
73
|
+
"subscriber_dob"=>"1947-10-07"
|
74
|
+
},
|
75
|
+
{
|
76
|
+
"id"=>2,
|
77
|
+
"payer_name"=>"UnitedHealthCare",
|
78
|
+
"payer_id"=>"00112",
|
79
|
+
"service_provider_npi"=>"67676767",
|
80
|
+
"subscriber_id"=>"98989898",
|
81
|
+
"subscriber_first_name"=>"Gaurav",
|
82
|
+
"subscriber_last_name"=>"Gupta",
|
83
|
+
"service_provider_last_name"=>"Jane",
|
84
|
+
"service_provider_first_name"=>"Austen",
|
85
|
+
"subscriber_dob"=>"1947-08-15"
|
86
|
+
}
|
87
|
+
]
|
88
|
+
}
|
89
|
+
Eligible::Demographic.batch_post params
|
90
|
+
# return
|
91
|
+
Eligible::EligibleObject:0x000000058914a8 @api_key="XXX",
|
92
|
+
@values={:reference_id=>"1ea06414-2132-52e1-1580-aea92f37720b",
|
93
|
+
:number_of_items=>2},
|
94
|
+
@unsaved_values=#<Set: {}>,
|
95
|
+
@transient_values=#<Set: {}>>
|
96
|
+
```
|
97
|
+
|
54
98
|
### Retrieve Coverage object
|
55
99
|
|
56
100
|
```ruby
|
@@ -70,6 +114,91 @@ params = {
|
|
70
114
|
coverage = Eligible::Coverage.get(params)
|
71
115
|
coverage.all # returns all coverage info for the request
|
72
116
|
```
|
117
|
+
##Batch post Coverage
|
118
|
+
**POST** `https://gds.eligibleapi.com/v1.1/coverage/all/batch.json`
|
119
|
+
|
120
|
+
```ruby
|
121
|
+
Eligible.test = true
|
122
|
+
params = {
|
123
|
+
"api_key"=>"81ef98e5-4584-19fb-0d8c-6e987b95d695",
|
124
|
+
"parameters"=>[
|
125
|
+
{
|
126
|
+
"id"=>1,
|
127
|
+
"payer_name"=>"UnitedHealthCare",
|
128
|
+
"payer_id"=>"00112",
|
129
|
+
"service_provider_npi"=>"12341234",
|
130
|
+
"subscriber_id"=>"98769876",
|
131
|
+
"subscriber_first_name"=>"Jane",
|
132
|
+
"subscriber_last_name"=>"Austen",
|
133
|
+
"service_provider_last_name"=>"Gaurav",
|
134
|
+
"service_provider_first_name"=>"Gupta",
|
135
|
+
"subscriber_dob"=>"1947-10-07"
|
136
|
+
},
|
137
|
+
{
|
138
|
+
"id"=>2,
|
139
|
+
"payer_name"=>"UnitedHealthCare",
|
140
|
+
"payer_id"=>"00112",
|
141
|
+
"service_provider_npi"=>"67676767",
|
142
|
+
"subscriber_id"=>"98989898",
|
143
|
+
"subscriber_first_name"=>"Gaurav",
|
144
|
+
"subscriber_last_name"=>"Gupta",
|
145
|
+
"service_provider_last_name"=>"Jane",
|
146
|
+
"service_provider_first_name"=>"Austen",
|
147
|
+
"subscriber_dob"=>"1947-08-15"
|
148
|
+
}
|
149
|
+
]
|
150
|
+
}
|
151
|
+
|
152
|
+
Eligible::Coverage.batch_post params
|
153
|
+
#Return:
|
154
|
+
Eligible::EligibleObject:0x000000059a11b8 @api_key="XXX",
|
155
|
+
@values={:reference_id=>"1ea06414-2132-52e1-1580-aea92f37720b",
|
156
|
+
:number_of_items=>2},
|
157
|
+
@unsaved_values=#<Set: {}>,
|
158
|
+
@transient_values=#<Set: {}>>
|
159
|
+
|
160
|
+
```
|
161
|
+
##Batch post Medicare
|
162
|
+
**POST** `https://gds.eligibleapi.com/v1.1/medicare/coverage/batch.json`
|
163
|
+
|
164
|
+
```ruby
|
165
|
+
Eligible.test = true
|
166
|
+
params = {
|
167
|
+
"parameters"=>[
|
168
|
+
{
|
169
|
+
"id"=>1,
|
170
|
+
"service_provider_npi"=>"12341234",
|
171
|
+
"subscriber_id"=>"98769876",
|
172
|
+
"subscriber_first_name"=>"Jane",
|
173
|
+
"subscriber_last_name"=>"Austen",
|
174
|
+
"service_provider_last_name"=>"Gaurav",
|
175
|
+
"service_provider_first_name"=>"Gupta",
|
176
|
+
"subscriber_dob"=>"1947-10-07"
|
177
|
+
},
|
178
|
+
{
|
179
|
+
"id"=>2,
|
180
|
+
"service_provider_npi"=>"67676767",
|
181
|
+
"subscriber_id"=>"98989898",
|
182
|
+
"subscriber_first_name"=>"Gaurav",
|
183
|
+
"subscriber_last_name"=>"Gupta",
|
184
|
+
"service_provider_last_name"=>"Jane",
|
185
|
+
"service_provider_first_name"=>"Austen",
|
186
|
+
"subscriber_dob"=>"1947-08-15"
|
187
|
+
}
|
188
|
+
]
|
189
|
+
}
|
190
|
+
|
191
|
+
Eligible::Coverage.batch_medicare_post params
|
192
|
+
#Return:
|
193
|
+
Eligible::EligibleObject:0x00000004db0188 @api_key="72cbca2e-1da7-b030-d2e6-a05cbae11c1b",
|
194
|
+
@values={:reference_id=>"1ea06414-2132-52e1-1580-aea92f37720b",
|
195
|
+
:number_of_items=>2},
|
196
|
+
@unsaved_values=#<Set: {}>,
|
197
|
+
@transient_values=#<Set: {}>>
|
198
|
+
```
|
199
|
+
|
200
|
+
|
201
|
+
|
73
202
|
|
74
203
|
|
75
204
|
### Post Enrollment object
|
data/lib/eligible.rb
CHANGED
@@ -32,7 +32,7 @@ require 'eligible/errors/invalid_request_error'
|
|
32
32
|
module Eligible
|
33
33
|
@@api_key = nil
|
34
34
|
@@test = false
|
35
|
-
@@api_base =
|
35
|
+
@@api_base = 'https://gds.eligibleapi.com/v1.1'
|
36
36
|
@@api_version = 1.1
|
37
37
|
|
38
38
|
def self.api_url(url='')
|
@@ -112,6 +112,7 @@ module Eligible
|
|
112
112
|
else
|
113
113
|
payload = params.merge!({'api_key' => api_key ,'test' => self.test }).to_json #Util.flatten_params(params).collect{|(key, value)| "#{key}=#{Util.url_encode(value)}"}.join('&')
|
114
114
|
end
|
115
|
+
|
115
116
|
begin
|
116
117
|
headers = { :x_eligible_client_user_agent => Eligible::JSON.dump(ua) }.merge(headers)
|
117
118
|
rescue => e
|
@@ -142,6 +143,7 @@ module Eligible
|
|
142
143
|
|
143
144
|
begin
|
144
145
|
response = execute_request(opts)
|
146
|
+
|
145
147
|
rescue SocketError => e
|
146
148
|
self.handle_restclient_error(e)
|
147
149
|
rescue NoMethodError => e
|
@@ -220,9 +222,9 @@ module Eligible
|
|
220
222
|
when RestClient::SSLCertificateNotVerified
|
221
223
|
message = "Could not verify Eligible's SSL certificate."
|
222
224
|
when SocketError
|
223
|
-
message =
|
225
|
+
message = 'Unexpected error communicating when trying to connect to Eligible.'
|
224
226
|
else
|
225
|
-
message =
|
227
|
+
message = 'Unexpected error communicating with Eligible. If this problem persists, let us know at support@eligible.com.'
|
226
228
|
end
|
227
229
|
message += "\n\n(Network error: #{e.message})"
|
228
230
|
raise APIConnectionError.new(message)
|
data/lib/eligible/coverage.rb
CHANGED
@@ -11,6 +11,19 @@ module Eligible
|
|
11
11
|
error ? nil : to_hash
|
12
12
|
end
|
13
13
|
|
14
|
+
|
15
|
+
|
16
|
+
def self.batch_post(params, api_key=nil)
|
17
|
+
#https://gds.eligibleapi.com/v1.1/coverage/all/batch.json
|
18
|
+
response, api_key = Eligible.request(:post, '/coverage/all/batch.json', api_key, params)
|
19
|
+
Util.convert_to_eligible_object(response, api_key)
|
20
|
+
end
|
21
|
+
|
22
|
+
def self.batch_medicare_post(params, api_key=nil)
|
23
|
+
response, api_key = Eligible.request(:post, '/medicare/coverage/batch.json', api_key, params)
|
24
|
+
Util.convert_to_eligible_object(response, api_key)
|
25
|
+
end
|
26
|
+
|
14
27
|
end
|
15
28
|
|
16
29
|
end
|
data/lib/eligible/demographic.rb
CHANGED
@@ -36,5 +36,11 @@ module Eligible
|
|
36
36
|
keys = COMMON_ATTRIBUTES + DOB_ATTRIBUTES
|
37
37
|
error ? nil : to_hash.select { |k, v| keys.include?(k) }
|
38
38
|
end
|
39
|
+
|
40
|
+
|
41
|
+
def self.batch_post(params, api_key=nil)
|
42
|
+
response, api_key = Eligible.request(:post, '/demographic/all/batch.json', api_key, params)
|
43
|
+
Util.convert_to_eligible_object(response, api_key)
|
44
|
+
end
|
39
45
|
end
|
40
|
-
end
|
46
|
+
end
|
data/lib/eligible/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: eligible
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: '2.
|
4
|
+
version: '2.3'
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andy Brett
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-08-
|
11
|
+
date: 2013-08-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: mocha
|