vericred_client 0.0.9 → 0.0.11

Sign up to get free protection for your applications and to get access to all the features.
Files changed (164) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +116 -13
  3. data/docs/Base.md +1 -1
  4. data/docs/Drug.md +1 -0
  5. data/docs/DrugCoverage.md +2 -1
  6. data/docs/DrugCoverageResponse.md +1 -1
  7. data/docs/DrugCoveragesApi.md +69 -0
  8. data/docs/DrugPackage.md +1 -0
  9. data/docs/DrugPackagesApi.md +66 -0
  10. data/docs/DrugSearchResponse.md +1 -1
  11. data/docs/DrugsApi.md +0 -61
  12. data/docs/Formulary.md +9 -0
  13. data/docs/FormularyDrugPackageResponse.md +10 -0
  14. data/docs/FormularyResponse.md +9 -0
  15. data/docs/Network.md +1 -1
  16. data/docs/NetworkDetails.md +10 -0
  17. data/docs/NetworkDetailsResponse.md +8 -0
  18. data/docs/NetworkSearchResponse.md +1 -1
  19. data/docs/NetworkSize.md +10 -0
  20. data/docs/NetworkSizesApi.md +124 -0
  21. data/docs/NetworksApi.md +55 -0
  22. data/docs/Plan.md +6 -4
  23. data/docs/PlanSearchResponse.md +2 -2
  24. data/docs/PlanSearchResponseMeta.md +9 -0
  25. data/docs/PlanSearchResult.md +6 -4
  26. data/docs/PlansApi.md +12 -10
  27. data/docs/Provider.md +1 -6
  28. data/docs/ProviderDetails.md +31 -0
  29. data/docs/ProviderGeocode.md +10 -0
  30. data/docs/ProvidersApi.md +61 -7
  31. data/docs/ProvidersGeocodeResponse.md +9 -0
  32. data/docs/ProvidersSearchResponse.md +1 -1
  33. data/docs/RequestPlanFindApplicant.md +2 -0
  34. data/docs/RequestPlanFindDrugPackage.md +1 -0
  35. data/docs/RequestProvidersSearch.md +5 -2
  36. data/docs/StateNetworkSizeRequest.md +9 -0
  37. data/docs/StateNetworkSizeResponse.md +9 -0
  38. data/docs/ZipCountiesApi.md +56 -1
  39. data/lib/vericred_client.rb +103 -2
  40. data/lib/vericred_client/api/drug_coverages_api.rb +295 -0
  41. data/lib/vericred_client/api/drug_packages_api.rb +289 -0
  42. data/lib/vericred_client/api/drugs_api.rb +88 -68
  43. data/lib/vericred_client/api/network_sizes_api.rb +348 -0
  44. data/lib/vericred_client/api/networks_api.rb +145 -1
  45. data/lib/vericred_client/api/plans_api.rb +108 -15
  46. data/lib/vericred_client/api/providers_api.rb +155 -9
  47. data/lib/vericred_client/api/zip_counties_api.rb +148 -4
  48. data/lib/vericred_client/api_client.rb +110 -21
  49. data/lib/vericred_client/api_error.rb +88 -1
  50. data/lib/vericred_client/configuration.rb +88 -1
  51. data/lib/vericred_client/models/applicant.rb +90 -3
  52. data/lib/vericred_client/models/base.rb +91 -4
  53. data/lib/vericred_client/models/carrier.rb +90 -3
  54. data/lib/vericred_client/models/carrier_subsidiary.rb +90 -3
  55. data/lib/vericred_client/models/county.rb +90 -3
  56. data/lib/vericred_client/models/county_bulk.rb +90 -3
  57. data/lib/vericred_client/models/drug.rb +101 -4
  58. data/lib/vericred_client/models/drug_coverage.rb +111 -14
  59. data/lib/vericred_client/models/drug_coverage_response.rb +91 -4
  60. data/lib/vericred_client/models/drug_package.rb +104 -7
  61. data/lib/vericred_client/models/drug_search_response.rb +91 -4
  62. data/lib/vericred_client/models/formulary.rb +404 -0
  63. data/lib/vericred_client/models/formulary_drug_package_response.rb +414 -0
  64. data/lib/vericred_client/models/formulary_response.rb +406 -0
  65. data/lib/vericred_client/models/meta.rb +90 -3
  66. data/lib/vericred_client/models/network.rb +91 -4
  67. data/lib/vericred_client/models/network_details.rb +416 -0
  68. data/lib/vericred_client/models/{pricing.rb → network_details_response.rb} +99 -112
  69. data/lib/vericred_client/models/network_search_response.rb +91 -4
  70. data/lib/vericred_client/models/network_size.rb +414 -0
  71. data/lib/vericred_client/models/plan.rb +115 -8
  72. data/lib/vericred_client/models/plan_county.rb +90 -3
  73. data/lib/vericred_client/models/plan_county_bulk.rb +90 -3
  74. data/lib/vericred_client/models/plan_search_response.rb +93 -6
  75. data/lib/vericred_client/models/plan_search_response_meta.rb +404 -0
  76. data/lib/vericred_client/models/plan_search_result.rb +115 -8
  77. data/lib/vericred_client/models/plan_show_response.rb +90 -3
  78. data/lib/vericred_client/models/provider.rb +101 -66
  79. data/lib/vericred_client/models/provider_details.rb +628 -0
  80. data/lib/vericred_client/models/provider_geocode.rb +414 -0
  81. data/lib/vericred_client/models/provider_show_response.rb +90 -3
  82. data/lib/vericred_client/models/providers_geocode_response.rb +406 -0
  83. data/lib/vericred_client/models/providers_search_response.rb +91 -4
  84. data/lib/vericred_client/models/rating_area.rb +90 -3
  85. data/lib/vericred_client/models/request_plan_find.rb +90 -3
  86. data/lib/vericred_client/models/request_plan_find_applicant.rb +114 -7
  87. data/lib/vericred_client/models/request_plan_find_drug_package.rb +104 -7
  88. data/lib/vericred_client/models/request_plan_find_provider.rb +90 -3
  89. data/lib/vericred_client/models/request_providers_search.rb +143 -26
  90. data/lib/vericred_client/models/service_area.rb +90 -3
  91. data/lib/vericred_client/models/service_area_zip_county.rb +90 -3
  92. data/lib/vericred_client/models/state.rb +90 -3
  93. data/lib/vericred_client/models/state_network_size_request.rb +408 -0
  94. data/lib/vericred_client/models/state_network_size_response.rb +406 -0
  95. data/lib/vericred_client/models/zip_code.rb +90 -3
  96. data/lib/vericred_client/models/zip_counties_response.rb +90 -3
  97. data/lib/vericred_client/models/zip_county.rb +90 -3
  98. data/lib/vericred_client/models/zip_county_bulk.rb +90 -3
  99. data/lib/vericred_client/models/zip_county_response.rb +90 -3
  100. data/lib/vericred_client/version.rb +89 -2
  101. data/spec/api/drug_coverages_api_spec.rb +254 -0
  102. data/spec/api/drug_packages_api_spec.rb +253 -0
  103. data/spec/api/drugs_api_spec.rb +88 -15
  104. data/spec/api/network_sizes_api_spec.rb +266 -0
  105. data/spec/api/networks_api_spec.rb +100 -1
  106. data/spec/api/plans_api_spec.rb +92 -4
  107. data/spec/api/providers_api_spec.rb +102 -3
  108. data/spec/api/zip_counties_api_spec.rb +101 -2
  109. data/spec/api_client_spec.rb +91 -25
  110. data/spec/configuration_spec.rb +88 -1
  111. data/spec/models/applicant_spec.rb +88 -1
  112. data/spec/models/base_spec.rb +88 -1
  113. data/spec/models/carrier_spec.rb +88 -1
  114. data/spec/models/carrier_subsidiary_spec.rb +88 -1
  115. data/spec/models/county_bulk_spec.rb +88 -1
  116. data/spec/models/county_spec.rb +88 -1
  117. data/spec/models/drug_coverage_response_spec.rb +88 -1
  118. data/spec/models/drug_coverage_spec.rb +95 -2
  119. data/spec/models/drug_package_spec.rb +94 -1
  120. data/spec/models/drug_search_response_spec.rb +88 -1
  121. data/spec/models/drug_spec.rb +94 -1
  122. data/spec/models/formulary_drug_package_response_spec.rb +259 -0
  123. data/spec/models/formulary_response_spec.rb +253 -0
  124. data/spec/models/formulary_spec.rb +253 -0
  125. data/spec/models/meta_spec.rb +88 -1
  126. data/spec/models/network_details_response_spec.rb +247 -0
  127. data/spec/models/network_details_spec.rb +259 -0
  128. data/spec/models/network_search_response_spec.rb +88 -1
  129. data/spec/models/network_size_spec.rb +259 -0
  130. data/spec/models/network_spec.rb +88 -1
  131. data/spec/models/plan_county_bulk_spec.rb +88 -1
  132. data/spec/models/plan_county_spec.rb +88 -1
  133. data/spec/models/plan_search_response_meta_spec.rb +253 -0
  134. data/spec/models/plan_search_response_spec.rb +88 -1
  135. data/spec/models/plan_search_result_spec.rb +100 -1
  136. data/spec/models/plan_show_response_spec.rb +88 -1
  137. data/spec/models/plan_spec.rb +100 -1
  138. data/spec/models/provider_details_spec.rb +385 -0
  139. data/spec/models/provider_geocode_spec.rb +259 -0
  140. data/spec/models/provider_show_response_spec.rb +88 -1
  141. data/spec/models/provider_spec.rb +94 -37
  142. data/spec/models/providers_geocode_response_spec.rb +253 -0
  143. data/spec/models/providers_search_response_spec.rb +88 -1
  144. data/spec/models/rating_area_spec.rb +88 -1
  145. data/spec/models/request_plan_find_applicant_spec.rb +100 -1
  146. data/spec/models/request_plan_find_drug_package_spec.rb +94 -1
  147. data/spec/models/request_plan_find_provider_spec.rb +88 -1
  148. data/spec/models/request_plan_find_spec.rb +88 -1
  149. data/spec/models/request_providers_search_spec.rb +109 -4
  150. data/spec/models/service_area_spec.rb +88 -1
  151. data/spec/models/service_area_zip_county_spec.rb +88 -1
  152. data/spec/models/state_network_size_request_spec.rb +253 -0
  153. data/spec/models/state_network_size_response_spec.rb +253 -0
  154. data/spec/models/state_spec.rb +88 -1
  155. data/spec/models/zip_code_spec.rb +88 -1
  156. data/spec/models/zip_counties_response_spec.rb +88 -1
  157. data/spec/models/zip_county_bulk_spec.rb +88 -1
  158. data/spec/models/zip_county_response_spec.rb +88 -1
  159. data/spec/models/zip_county_spec.rb +88 -1
  160. data/spec/spec_helper.rb +88 -1
  161. data/vericred_client.gemspec +90 -2
  162. metadata +66 -16
  163. data/docs/Pricing.md +0 -18
  164. data/spec/models/pricing_spec.rb +0 -220
@@ -6,13 +6,20 @@ accepts.
6
6
 
7
7
  ## Getting Started
8
8
 
9
- Visit our [Developer Portal](https://vericred.3scale.net) to
9
+ Visit our [Developer Portal](https://developers.vericred.com) to
10
10
  create an account.
11
11
 
12
12
  Once you have created an account, you can create one Application for
13
13
  Production and another for our Sandbox (select the appropriate Plan when
14
14
  you create the Application).
15
15
 
16
+ ## SDKs
17
+
18
+ Our API follows standard REST conventions, so you can use any HTTP client
19
+ to integrate with us. You will likely find it easier to use one of our
20
+ [autogenerated SDKs](https://github.com/vericred/?query=vericred-),
21
+ which we make available for several common programming languages.
22
+
16
23
  ## Authentication
17
24
 
18
25
  To authenticate, pass the API Key you created in the Developer Portal as
@@ -108,6 +115,86 @@ The response would be
108
115
  }
109
116
  ```
110
117
 
118
+ ## Benefits summary format
119
+ Benefit cost-share strings are formatted to capture:
120
+ * Network tiers
121
+ * Compound or conditional cost-share
122
+ * Limits on the cost-share
123
+ * Benefit-specific maximum out-of-pocket costs
124
+
125
+ **Example #1**
126
+ As an example, we would represent [this Summary of Benefits & Coverage](https://s3.amazonaws.com/vericred-data/SBC/2017/33602TX0780032.pdf) as:
127
+
128
+ * **Hospital stay facility fees**:
129
+ - Network Provider: `$400 copay/admit plus 20% coinsurance`
130
+ - Out-of-Network Provider: `$1,500 copay/admit plus 50% coinsurance`
131
+ - Vericred's format for this benefit: `In-Network: $400 before deductible then 20% after deductible / Out-of-Network: $1,500 before deductible then 50% after deductible`
132
+
133
+ * **Rehabilitation services:**
134
+ - Network Provider: `20% coinsurance`
135
+ - Out-of-Network Provider: `50% coinsurance`
136
+ - Limitations & Exceptions: `35 visit maximum per benefit period combined with Chiropractic care.`
137
+ - Vericred's format for this benefit: `In-Network: 20% after deductible / Out-of-Network: 50% after deductible | limit: 35 visit(s) per Benefit Period`
138
+
139
+ **Example #2**
140
+ In [this other Summary of Benefits & Coverage](https://s3.amazonaws.com/vericred-data/SBC/2017/40733CA0110568.pdf), the **specialty_drugs** cost-share has a maximum out-of-pocket for in-network pharmacies.
141
+ * **Specialty drugs:**
142
+ - Network Provider: `40% coinsurance up to a $500 maximum for up to a 30 day supply`
143
+ - Out-of-Network Provider `Not covered`
144
+ - Vericred's format for this benefit: `In-Network: 40% after deductible, up to $500 per script / Out-of-Network: 100%`
145
+
146
+ **BNF**
147
+
148
+ Here's a description of the benefits summary string, represented as a context-free grammar:
149
+
150
+ ```
151
+ root ::= coverage
152
+
153
+ coverage ::= (simple_coverage | tiered_coverage) (space pipe space coverage_limitation)?
154
+ tiered_coverage ::= tier (space slash space tier)*
155
+ tier ::= tier_name colon space (tier_coverage | not_applicable)
156
+ tier_coverage ::= simple_coverage (space (then | or | and) space simple_coverage)* tier_limitation?
157
+ simple_coverage ::= (pre_coverage_limitation space)? coverage_amount (space post_coverage_limitation)? (comma? space coverage_condition)?
158
+ coverage_limitation ::= "limit" colon space (((simple_coverage | simple_limitation) (semicolon space see_carrier_documentation)?) | see_carrier_documentation | waived_if_admitted)
159
+ waived_if_admitted ::= ("copay" space)? "waived if admitted"
160
+ simple_limitation ::= pre_coverage_limitation space "copay applies"
161
+ tier_name ::= "In-Network-Tier-2" | "Out-of-Network" | "In-Network"
162
+ tier_limitation ::= comma space "up to" space (currency | (integer space time_unit plural?)) (space post_coverage_limitation)?
163
+ coverage_amount ::= currency | unlimited | included | unknown | percentage | (digits space (treatment_unit | time_unit) plural?)
164
+ pre_coverage_limitation ::= first space digits space time_unit plural?
165
+ post_coverage_limitation ::= (((then space currency) | "per condition") space)? "per" space (treatment_unit | (integer space time_unit) | time_unit) plural?
166
+ coverage_condition ::= ("before deductible" | "after deductible" | "penalty" | allowance | "in-state" | "out-of-state") (space allowance)?
167
+ allowance ::= upto_allowance | after_allowance
168
+ upto_allowance ::= "up to" space (currency space)? "allowance"
169
+ after_allowance ::= "after" space (currency space)? "allowance"
170
+ see_carrier_documentation ::= "see carrier documentation for more information"
171
+ unknown ::= "unknown"
172
+ unlimited ::= /[uU]nlimited/
173
+ included ::= /[iI]ncluded in [mM]edical/
174
+ time_unit ::= /[hH]our/ | (((/[cC]alendar/ | /[cC]ontract/) space)? /[yY]ear/) | /[mM]onth/ | /[dD]ay/ | /[wW]eek/ | /[vV]isit/ | /[lL]ifetime/ | ((((/[bB]enefit/ plural?) | /[eE]ligibility/) space)? /[pP]eriod/)
175
+ treatment_unit ::= /[pP]erson/ | /[gG]roup/ | /[cC]ondition/ | /[sS]cript/ | /[vV]isit/ | /[eE]xam/ | /[iI]tem/ | /[sS]tay/ | /[tT]reatment/ | /[aA]dmission/ | /[eE]pisode/
176
+ comma ::= ","
177
+ colon ::= ":"
178
+ semicolon ::= ";"
179
+ pipe ::= "|"
180
+ slash ::= "/"
181
+ plural ::= "(s)" | "s"
182
+ then ::= "then" | ("," space) | space
183
+ or ::= "or"
184
+ and ::= "and"
185
+ not_applicable ::= "Not Applicable" | "N/A" | "NA"
186
+ first ::= "first"
187
+ currency ::= "$" number
188
+ percentage ::= number "%"
189
+ number ::= float | integer
190
+ float ::= digits "." digits
191
+ integer ::= /[0-9]/+ (comma_int | under_int)*
192
+ comma_int ::= ("," /[0-9]/*3) !"_"
193
+ under_int ::= ("_" /[0-9]/*3) !","
194
+ digits ::= /[0-9]/+ ("_" /[0-9]/+)*
195
+ space ::= /[ \t]/+
196
+ ```
197
+
111
198
 
112
199
 
113
200
  OpenAPI spec version: 1.0.0
@@ -152,9 +239,9 @@ describe 'PlansApi' do
152
239
 
153
240
  # unit tests for find_plans
154
241
  # Find Plans
155
- # ### Location Information Searching for a set of plans requires a `zip_code` and `fips_code` code. These are used to determine pricing and availabity of health plans. This endpoint is paginated. Optionally, you may provide a list of Applicants or Providers ### Applicants This is a list of people who will be covered by the plan. We use this list to calculate the premium. You must include `age` and can include `smoker`, which also factors into pricing in some states. Applicants *must* include an age. If smoker is omitted, its value is assumed to be false. #### Multiple Applicants To get pricing for multiple applicants, just append multiple sets of data to the URL with the age and smoking status of each applicant next to each other. For example, given two applicants - one age 32 and a non-smoker and one age 29 and a smoker, you could use the following request `GET /plans?zip_code=07451&fips_code=33025&applicants[][age]=32&applicants[][age]=29&applicants[][smoker]=true` It would also be acceptible to include `applicants[][smoker]=false` after the first applicant's age. ### Providers We identify Providers (Doctors) by their National Practitioner Index number (NPI). If you pass a list of Providers, keyed by their NPI number, we will return a list of which Providers are in and out of network for each plan returned. For example, if we had two providers with the NPI numbers `12345` and `23456` you would make the following request `GET /plans?zip_code=07451&fips_code=33025&providers[][npi]=12345&providers[][npi]=23456` ### Enrollment Date To calculate plan pricing and availability, we default to the current date as the enrollment date. To specify a date in the future (or the past), pass a string with the format `YYYY-MM-DD` in the `enrollment_date` parameter. `GET /plans?zip_code=07451&fips_code=33025&enrollment_date=2016-01-01` ### Subsidy On-marketplace plans are eligible for a subsidy based on the `household_size` and `household_income` of the applicants. If you pass those values, we will calculate the `subsidized_premium` and return it for each plan. If no values are provided, the `subsidized_premium` will be the same as the `premium` `GET /plans?zip_code=07451&fips_code=33025&household_size=4&household_income=40000` ### Sorting Plans can be sorted by the `premium`, `carrier_name`, `level`, and `plan_type` fields, by either ascending (as `asc`) or descending (as `dsc) sort under the `sort` field. For example, to sort plans by level, the sort parameter would be `level:asc`.
242
+ # ### Location Information Searching for a set of plans requires a `zip_code` and `fips_code` code. These are used to determine pricing and availabity of health plans. This endpoint is paginated. Optionally, you may provide a list of Applicants or Providers ### Applicants This is a list of people who will be covered by the plan. We use this list to calculate the premium. You must include `age` and can include `smoker`, which also factors into pricing in some states. Applicants *must* include an age. If smoker is omitted, its value is assumed to be false. #### Multiple Applicants To get pricing for multiple applicants, just append multiple sets of data to the URL with the age and smoking status of each applicant next to each other. For example, given two applicants - one age 32 and a non-smoker and one age 29 and a smoker, you could use the following request `GET /plans?zip_code=07451&fips_code=33025&applicants[][age]=32&applicants[][age]=29&applicants[][smoker]=true` It would also be acceptible to include `applicants[][smoker]=false` after the first applicant's age. ### Providers We identify Providers (Doctors) by their National Practitioner Index number (NPI). If you pass a list of Providers, keyed by their NPI number, we will return a list of which Providers are in and out of network for each plan returned. For example, if we had two providers with the NPI numbers `12345` and `23456` you would make the following request `GET /plans?zip_code=07451&fips_code=33025&providers[][npi]=12345&providers[][npi]=23456` ### Enrollment Date To calculate plan pricing and availability, we default to the current date as the enrollment date. To specify a date in the future (or the past), pass a string with the format `YYYY-MM-DD` in the `enrollment_date` parameter. `GET /plans?zip_code=07451&fips_code=33025&enrollment_date=2016-01-01` ### Subsidy On-marketplace plans are eligible for a subsidy based on the `household_size` and `household_income` of the applicants. If you pass those values, we will calculate the `subsidized_premium` and return it for each plan. If no values are provided, the `subsidized_premium` will be the same as the `premium` `GET /plans?zip_code=07451&fips_code=33025&household_size=4&household_income=40000` ### Sorting Plans can be sorted by the `premium`, `carrier_name`, `level`, and `plan_type` fields, by either ascending (as `asc`) or descending (as `dsc`) sort under the `sort` field. For example, to sort plans by level, the sort parameter would be `level:asc`. ### Drug coverages Are included along with the rest of the plan data. See [the description below](#drugcoverages) for more details.
243
+ # @param body
156
244
  # @param [Hash] opts the optional parameters
157
- # @option opts [RequestPlanFind] :body
158
245
  # @return [PlanSearchResponse]
159
246
  describe 'find_plans test' do
160
247
  it "should work" do
@@ -164,7 +251,8 @@ describe 'PlansApi' do
164
251
 
165
252
  # unit tests for show_plan
166
253
  # Show Plan
167
- # Show the details of an individual Plan. This includes deductibles, maximums out of pocket, and co-pay/coinsurance for benefits
254
+ # Show the details of an individual Plan. This includes deductibles, maximums out of pocket, and co-pay/coinsurance for benefits (See [Benefits summary format](#header-benefits-summary-format) above.)
255
+ # @param id ID of the Plan
168
256
  # @param [Hash] opts the optional parameters
169
257
  # @option opts [Integer] :year Plan year (defaults to current year)
170
258
  # @return [PlanShowResponse]
@@ -6,13 +6,20 @@ accepts.
6
6
 
7
7
  ## Getting Started
8
8
 
9
- Visit our [Developer Portal](https://vericred.3scale.net) to
9
+ Visit our [Developer Portal](https://developers.vericred.com) to
10
10
  create an account.
11
11
 
12
12
  Once you have created an account, you can create one Application for
13
13
  Production and another for our Sandbox (select the appropriate Plan when
14
14
  you create the Application).
15
15
 
16
+ ## SDKs
17
+
18
+ Our API follows standard REST conventions, so you can use any HTTP client
19
+ to integrate with us. You will likely find it easier to use one of our
20
+ [autogenerated SDKs](https://github.com/vericred/?query=vericred-),
21
+ which we make available for several common programming languages.
22
+
16
23
  ## Authentication
17
24
 
18
25
  To authenticate, pass the API Key you created in the Developer Portal as
@@ -108,6 +115,86 @@ The response would be
108
115
  }
109
116
  ```
110
117
 
118
+ ## Benefits summary format
119
+ Benefit cost-share strings are formatted to capture:
120
+ * Network tiers
121
+ * Compound or conditional cost-share
122
+ * Limits on the cost-share
123
+ * Benefit-specific maximum out-of-pocket costs
124
+
125
+ **Example #1**
126
+ As an example, we would represent [this Summary of Benefits & Coverage](https://s3.amazonaws.com/vericred-data/SBC/2017/33602TX0780032.pdf) as:
127
+
128
+ * **Hospital stay facility fees**:
129
+ - Network Provider: `$400 copay/admit plus 20% coinsurance`
130
+ - Out-of-Network Provider: `$1,500 copay/admit plus 50% coinsurance`
131
+ - Vericred's format for this benefit: `In-Network: $400 before deductible then 20% after deductible / Out-of-Network: $1,500 before deductible then 50% after deductible`
132
+
133
+ * **Rehabilitation services:**
134
+ - Network Provider: `20% coinsurance`
135
+ - Out-of-Network Provider: `50% coinsurance`
136
+ - Limitations & Exceptions: `35 visit maximum per benefit period combined with Chiropractic care.`
137
+ - Vericred's format for this benefit: `In-Network: 20% after deductible / Out-of-Network: 50% after deductible | limit: 35 visit(s) per Benefit Period`
138
+
139
+ **Example #2**
140
+ In [this other Summary of Benefits & Coverage](https://s3.amazonaws.com/vericred-data/SBC/2017/40733CA0110568.pdf), the **specialty_drugs** cost-share has a maximum out-of-pocket for in-network pharmacies.
141
+ * **Specialty drugs:**
142
+ - Network Provider: `40% coinsurance up to a $500 maximum for up to a 30 day supply`
143
+ - Out-of-Network Provider `Not covered`
144
+ - Vericred's format for this benefit: `In-Network: 40% after deductible, up to $500 per script / Out-of-Network: 100%`
145
+
146
+ **BNF**
147
+
148
+ Here's a description of the benefits summary string, represented as a context-free grammar:
149
+
150
+ ```
151
+ root ::= coverage
152
+
153
+ coverage ::= (simple_coverage | tiered_coverage) (space pipe space coverage_limitation)?
154
+ tiered_coverage ::= tier (space slash space tier)*
155
+ tier ::= tier_name colon space (tier_coverage | not_applicable)
156
+ tier_coverage ::= simple_coverage (space (then | or | and) space simple_coverage)* tier_limitation?
157
+ simple_coverage ::= (pre_coverage_limitation space)? coverage_amount (space post_coverage_limitation)? (comma? space coverage_condition)?
158
+ coverage_limitation ::= "limit" colon space (((simple_coverage | simple_limitation) (semicolon space see_carrier_documentation)?) | see_carrier_documentation | waived_if_admitted)
159
+ waived_if_admitted ::= ("copay" space)? "waived if admitted"
160
+ simple_limitation ::= pre_coverage_limitation space "copay applies"
161
+ tier_name ::= "In-Network-Tier-2" | "Out-of-Network" | "In-Network"
162
+ tier_limitation ::= comma space "up to" space (currency | (integer space time_unit plural?)) (space post_coverage_limitation)?
163
+ coverage_amount ::= currency | unlimited | included | unknown | percentage | (digits space (treatment_unit | time_unit) plural?)
164
+ pre_coverage_limitation ::= first space digits space time_unit plural?
165
+ post_coverage_limitation ::= (((then space currency) | "per condition") space)? "per" space (treatment_unit | (integer space time_unit) | time_unit) plural?
166
+ coverage_condition ::= ("before deductible" | "after deductible" | "penalty" | allowance | "in-state" | "out-of-state") (space allowance)?
167
+ allowance ::= upto_allowance | after_allowance
168
+ upto_allowance ::= "up to" space (currency space)? "allowance"
169
+ after_allowance ::= "after" space (currency space)? "allowance"
170
+ see_carrier_documentation ::= "see carrier documentation for more information"
171
+ unknown ::= "unknown"
172
+ unlimited ::= /[uU]nlimited/
173
+ included ::= /[iI]ncluded in [mM]edical/
174
+ time_unit ::= /[hH]our/ | (((/[cC]alendar/ | /[cC]ontract/) space)? /[yY]ear/) | /[mM]onth/ | /[dD]ay/ | /[wW]eek/ | /[vV]isit/ | /[lL]ifetime/ | ((((/[bB]enefit/ plural?) | /[eE]ligibility/) space)? /[pP]eriod/)
175
+ treatment_unit ::= /[pP]erson/ | /[gG]roup/ | /[cC]ondition/ | /[sS]cript/ | /[vV]isit/ | /[eE]xam/ | /[iI]tem/ | /[sS]tay/ | /[tT]reatment/ | /[aA]dmission/ | /[eE]pisode/
176
+ comma ::= ","
177
+ colon ::= ":"
178
+ semicolon ::= ";"
179
+ pipe ::= "|"
180
+ slash ::= "/"
181
+ plural ::= "(s)" | "s"
182
+ then ::= "then" | ("," space) | space
183
+ or ::= "or"
184
+ and ::= "and"
185
+ not_applicable ::= "Not Applicable" | "N/A" | "NA"
186
+ first ::= "first"
187
+ currency ::= "$" number
188
+ percentage ::= number "%"
189
+ number ::= float | integer
190
+ float ::= digits "." digits
191
+ integer ::= /[0-9]/+ (comma_int | under_int)*
192
+ comma_int ::= ("," /[0-9]/*3) !"_"
193
+ under_int ::= ("_" /[0-9]/*3) !","
194
+ digits ::= /[0-9]/+ ("_" /[0-9]/+)*
195
+ space ::= /[ \t]/+
196
+ ```
197
+
111
198
 
112
199
 
113
200
  OpenAPI spec version: 1.0.0
@@ -166,9 +253,9 @@ describe 'ProvidersApi' do
166
253
 
167
254
  # unit tests for get_providers
168
255
  # Find Providers
169
- # All `Provider` searches require a `zip_code`, which we use for weighting the search results to favor `Provider`s that are near the user. For example, we would want \"Dr. John Smith\" who is 5 miles away to appear before \"Dr. John Smith\" who is 100 miles away. The weighting also allows for non-exact matches. In our prior example, we would want \"Dr. Jon Smith\" who is 2 miles away to appear before the exact match \"Dr. John Smith\" who is 100 miles away because it is more likely that the user just entered an incorrect name. The free text search also supports Specialty name search and \"body part\" Specialty name search. So, searching \"John Smith nose\" would return \"Dr. John Smith\", the ENT Specialist before \"Dr. John Smith\" the Internist.
256
+ # ### Provider Details All searches can take a `search_term`, which is used as a component in the score (and thus the ranking/order) of the results. This is combined with the proximity to the location in ranking results. For example, we would want \"Dr. John Smith\" who is 5 miles away from a given Zip Code to appear before \"Dr. John Smith\" who is 100 miles away. The weighting also allows for non-exact matches. In our prior example, we would want \"Dr. Jon Smith\" who is 2 miles away to appear before the exact match \"Dr. John Smith\" who is 100 miles away because it is more likely that the user just entered an incorrect name. The free text search also supports Specialty name search and \"body part\" Specialty name search. So, searching \"John Smith nose\" would return \"Dr. John Smith\", the ENT Specialist before \"Dr. John Smith\" the Internist. In addition, we can filter `Providers` by whether or not they accept *any* insurance. Our data set includes over 4 million `Providers`, some of whom do not accept any insurance at all. This filter makes it more likely that the user will find his or her practitioner in some cases. We can also use `min_score` to omit less relevant results. This makes sense in the case where your application wants to display *all* of the results returned regardless of how many there are. Otherwise, using our default `min_score` and pagination should be sufficient. ### Location Information All `Provider` searches that do *not* specify `plan_ids` or `network_ids`require some type of location information. We use this information either to weight results or to filter results, depending on the type. #### Zip Code When providing the `zip_code` parameter, we order the `Providers` returned based on their score, which incorporates their proximity to the given Zip Code and the closeness of match to the search text. If a `radius` is also provided, we filter out `Providers` who are outside of that radius from the center of the Zip Code provided #### Polygon When providing the `polygon` parameter, we filter providers who are outside the bounds of the shape provided. This is mutually exclusive with `zip_code` and `radius`. ### Plan/Network Information We can also filter based on `Plan` and `Network` participation. These filters are mutually exclusive and return the union of the resulting sets for each `Plan` or `Network`. I.e. if you provider Plan A and Plan B, you will receive `Providers` who accept *either* `Plan`. The same is true for `Networks`. ### Examples *Find Dr. Foo near Brooklyn* `{ \"search_term\": \"Foo\", \"zip_code\": \"11215\" }` *Find all Providers within 5 miles of Brooklyn who accept a Plan* `{ \"zip_code\": \"11215\", \"radius\": 5, \"hios_ids\": [\"88582NY0230001\"] }` *Find all providers on a map of Brooklyn ordered by a combination of proximity to the center point of the map and relevance to the search term \"ENT\"* ``` { \"polygon\": [ {\"lon\":-74.0126609802,\"lat\":40.6275684851 }, {\"lon\":-74.0126609802,\"lat\":40.7097269508 }, {\"lon\":-73.9367866516,\"lat\":40.7097269508 }, {\"lon\":-73.9367866516,\"lat\":40.6275684851 } ], \"search_term\" : \"ENT\" } ```
257
+ # @param body
170
258
  # @param [Hash] opts the optional parameters
171
- # @option opts [RequestProvidersSearch] :body
172
259
  # @return [ProvidersSearchResponse]
173
260
  describe 'get_providers test' do
174
261
  it "should work" do
@@ -176,4 +263,16 @@ describe 'ProvidersApi' do
176
263
  end
177
264
  end
178
265
 
266
+ # unit tests for get_providers_0
267
+ # Find Providers
268
+ # ### Provider Details All searches can take a `search_term`, which is used as a component in the score (and thus the ranking/order) of the results. This is combined with the proximity to the location in ranking results. For example, we would want \"Dr. John Smith\" who is 5 miles away from a given Zip Code to appear before \"Dr. John Smith\" who is 100 miles away. The weighting also allows for non-exact matches. In our prior example, we would want \"Dr. Jon Smith\" who is 2 miles away to appear before the exact match \"Dr. John Smith\" who is 100 miles away because it is more likely that the user just entered an incorrect name. The free text search also supports Specialty name search and \"body part\" Specialty name search. So, searching \"John Smith nose\" would return \"Dr. John Smith\", the ENT Specialist before \"Dr. John Smith\" the Internist. In addition, we can filter `Providers` by whether or not they accept *any* insurance. Our data set includes over 4 million `Providers`, some of whom do not accept any insurance at all. This filter makes it more likely that the user will find his or her practitioner in some cases. We can also use `min_score` to omit less relevant results. This makes sense in the case where your application wants to display *all* of the results returned regardless of how many there are. Otherwise, using our default `min_score` and pagination should be sufficient. ### Location Information All `Provider` searches that do *not* specify `plan_ids` or `network_ids`require some type of location information. We use this information either to weight results or to filter results, depending on the type. #### Zip Code When providing the `zip_code` parameter, we order the `Providers` returned based on their score, which incorporates their proximity to the given Zip Code and the closeness of match to the search text. If a `radius` is also provided, we filter out `Providers` who are outside of that radius from the center of the Zip Code provided #### Polygon When providing the `polygon` parameter, we filter providers who are outside the bounds of the shape provided. This is mutually exclusive with `zip_code` and `radius`. ### Plan/Network Information We can also filter based on `Plan` and `Network` participation. These filters are mutually exclusive and return the union of the resulting sets for each `Plan` or `Network`. I.e. if you provider Plan A and Plan B, you will receive `Providers` who accept *either* `Plan`. The same is true for `Networks`. ### Examples *Find Dr. Foo near Brooklyn* `{ \"search_term\": \"Foo\", \"zip_code\": \"11215\" }` *Find all Providers within 5 miles of Brooklyn who accept a Plan* `{ \"zip_code\": \"11215\", \"radius\": 5, \"hios_ids\": [\"88582NY0230001\"] }` *Find all providers on a map of Brooklyn ordered by a combination of proximity to the center point of the map and relevance to the search term \"ENT\"* ``` { \"polygon\": [ {\"lon\":-74.0126609802,\"lat\":40.6275684851 }, {\"lon\":-74.0126609802,\"lat\":40.7097269508 }, {\"lon\":-73.9367866516,\"lat\":40.7097269508 }, {\"lon\":-73.9367866516,\"lat\":40.6275684851 } ], \"search_term\" : \"ENT\" } ```
269
+ # @param body
270
+ # @param [Hash] opts the optional parameters
271
+ # @return [ProvidersGeocodeResponse]
272
+ describe 'get_providers_0 test' do
273
+ it "should work" do
274
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
275
+ end
276
+ end
277
+
179
278
  end
@@ -6,13 +6,20 @@ accepts.
6
6
 
7
7
  ## Getting Started
8
8
 
9
- Visit our [Developer Portal](https://vericred.3scale.net) to
9
+ Visit our [Developer Portal](https://developers.vericred.com) to
10
10
  create an account.
11
11
 
12
12
  Once you have created an account, you can create one Application for
13
13
  Production and another for our Sandbox (select the appropriate Plan when
14
14
  you create the Application).
15
15
 
16
+ ## SDKs
17
+
18
+ Our API follows standard REST conventions, so you can use any HTTP client
19
+ to integrate with us. You will likely find it easier to use one of our
20
+ [autogenerated SDKs](https://github.com/vericred/?query=vericred-),
21
+ which we make available for several common programming languages.
22
+
16
23
  ## Authentication
17
24
 
18
25
  To authenticate, pass the API Key you created in the Developer Portal as
@@ -108,6 +115,86 @@ The response would be
108
115
  }
109
116
  ```
110
117
 
118
+ ## Benefits summary format
119
+ Benefit cost-share strings are formatted to capture:
120
+ * Network tiers
121
+ * Compound or conditional cost-share
122
+ * Limits on the cost-share
123
+ * Benefit-specific maximum out-of-pocket costs
124
+
125
+ **Example #1**
126
+ As an example, we would represent [this Summary of Benefits & Coverage](https://s3.amazonaws.com/vericred-data/SBC/2017/33602TX0780032.pdf) as:
127
+
128
+ * **Hospital stay facility fees**:
129
+ - Network Provider: `$400 copay/admit plus 20% coinsurance`
130
+ - Out-of-Network Provider: `$1,500 copay/admit plus 50% coinsurance`
131
+ - Vericred's format for this benefit: `In-Network: $400 before deductible then 20% after deductible / Out-of-Network: $1,500 before deductible then 50% after deductible`
132
+
133
+ * **Rehabilitation services:**
134
+ - Network Provider: `20% coinsurance`
135
+ - Out-of-Network Provider: `50% coinsurance`
136
+ - Limitations & Exceptions: `35 visit maximum per benefit period combined with Chiropractic care.`
137
+ - Vericred's format for this benefit: `In-Network: 20% after deductible / Out-of-Network: 50% after deductible | limit: 35 visit(s) per Benefit Period`
138
+
139
+ **Example #2**
140
+ In [this other Summary of Benefits & Coverage](https://s3.amazonaws.com/vericred-data/SBC/2017/40733CA0110568.pdf), the **specialty_drugs** cost-share has a maximum out-of-pocket for in-network pharmacies.
141
+ * **Specialty drugs:**
142
+ - Network Provider: `40% coinsurance up to a $500 maximum for up to a 30 day supply`
143
+ - Out-of-Network Provider `Not covered`
144
+ - Vericred's format for this benefit: `In-Network: 40% after deductible, up to $500 per script / Out-of-Network: 100%`
145
+
146
+ **BNF**
147
+
148
+ Here's a description of the benefits summary string, represented as a context-free grammar:
149
+
150
+ ```
151
+ root ::= coverage
152
+
153
+ coverage ::= (simple_coverage | tiered_coverage) (space pipe space coverage_limitation)?
154
+ tiered_coverage ::= tier (space slash space tier)*
155
+ tier ::= tier_name colon space (tier_coverage | not_applicable)
156
+ tier_coverage ::= simple_coverage (space (then | or | and) space simple_coverage)* tier_limitation?
157
+ simple_coverage ::= (pre_coverage_limitation space)? coverage_amount (space post_coverage_limitation)? (comma? space coverage_condition)?
158
+ coverage_limitation ::= "limit" colon space (((simple_coverage | simple_limitation) (semicolon space see_carrier_documentation)?) | see_carrier_documentation | waived_if_admitted)
159
+ waived_if_admitted ::= ("copay" space)? "waived if admitted"
160
+ simple_limitation ::= pre_coverage_limitation space "copay applies"
161
+ tier_name ::= "In-Network-Tier-2" | "Out-of-Network" | "In-Network"
162
+ tier_limitation ::= comma space "up to" space (currency | (integer space time_unit plural?)) (space post_coverage_limitation)?
163
+ coverage_amount ::= currency | unlimited | included | unknown | percentage | (digits space (treatment_unit | time_unit) plural?)
164
+ pre_coverage_limitation ::= first space digits space time_unit plural?
165
+ post_coverage_limitation ::= (((then space currency) | "per condition") space)? "per" space (treatment_unit | (integer space time_unit) | time_unit) plural?
166
+ coverage_condition ::= ("before deductible" | "after deductible" | "penalty" | allowance | "in-state" | "out-of-state") (space allowance)?
167
+ allowance ::= upto_allowance | after_allowance
168
+ upto_allowance ::= "up to" space (currency space)? "allowance"
169
+ after_allowance ::= "after" space (currency space)? "allowance"
170
+ see_carrier_documentation ::= "see carrier documentation for more information"
171
+ unknown ::= "unknown"
172
+ unlimited ::= /[uU]nlimited/
173
+ included ::= /[iI]ncluded in [mM]edical/
174
+ time_unit ::= /[hH]our/ | (((/[cC]alendar/ | /[cC]ontract/) space)? /[yY]ear/) | /[mM]onth/ | /[dD]ay/ | /[wW]eek/ | /[vV]isit/ | /[lL]ifetime/ | ((((/[bB]enefit/ plural?) | /[eE]ligibility/) space)? /[pP]eriod/)
175
+ treatment_unit ::= /[pP]erson/ | /[gG]roup/ | /[cC]ondition/ | /[sS]cript/ | /[vV]isit/ | /[eE]xam/ | /[iI]tem/ | /[sS]tay/ | /[tT]reatment/ | /[aA]dmission/ | /[eE]pisode/
176
+ comma ::= ","
177
+ colon ::= ":"
178
+ semicolon ::= ";"
179
+ pipe ::= "|"
180
+ slash ::= "/"
181
+ plural ::= "(s)" | "s"
182
+ then ::= "then" | ("," space) | space
183
+ or ::= "or"
184
+ and ::= "and"
185
+ not_applicable ::= "Not Applicable" | "N/A" | "NA"
186
+ first ::= "first"
187
+ currency ::= "$" number
188
+ percentage ::= number "%"
189
+ number ::= float | integer
190
+ float ::= digits "." digits
191
+ integer ::= /[0-9]/+ (comma_int | under_int)*
192
+ comma_int ::= ("," /[0-9]/*3) !"_"
193
+ under_int ::= ("_" /[0-9]/*3) !","
194
+ digits ::= /[0-9]/+ ("_" /[0-9]/+)*
195
+ space ::= /[ \t]/+
196
+ ```
197
+
111
198
 
112
199
 
113
200
  OpenAPI spec version: 1.0.0
@@ -155,11 +242,23 @@ describe 'ZipCountiesApi' do
155
242
  # Our `Plan` endpoints require a zip code and a fips (county) code. This is because plan pricing requires both of these elements. Users are unlikely to know their fips code, so we provide this endpoint to look up a `ZipCounty` by zip code and return both the selected zip and fips codes.
156
243
  # @param zip_prefix Partial five-digit Zip
157
244
  # @param [Hash] opts the optional parameters
158
- # @return [ZipCountyResponse]
245
+ # @return [ZipCountiesResponse]
159
246
  describe 'get_zip_counties test' do
160
247
  it "should work" do
161
248
  # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
162
249
  end
163
250
  end
164
251
 
252
+ # unit tests for show_zip_county
253
+ # Show an individual ZipCounty
254
+ # Our `Plan` endpoints require a zip code and a fips (county) code. This is because plan pricing requires both of these elements. Users are unlikely to know their fips code, so we provide this endpoint to returns the details for a `ZipCounty` by zip code and return both the selected zip and fips codes.
255
+ # @param id Unique ID for ZipCounty
256
+ # @param [Hash] opts the optional parameters
257
+ # @return [ZipCountyResponse]
258
+ describe 'show_zip_county test' do
259
+ it "should work" do
260
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
261
+ end
262
+ end
263
+
165
264
  end
@@ -6,13 +6,20 @@ accepts.
6
6
 
7
7
  ## Getting Started
8
8
 
9
- Visit our [Developer Portal](https://vericred.3scale.net) to
9
+ Visit our [Developer Portal](https://developers.vericred.com) to
10
10
  create an account.
11
11
 
12
12
  Once you have created an account, you can create one Application for
13
13
  Production and another for our Sandbox (select the appropriate Plan when
14
14
  you create the Application).
15
15
 
16
+ ## SDKs
17
+
18
+ Our API follows standard REST conventions, so you can use any HTTP client
19
+ to integrate with us. You will likely find it easier to use one of our
20
+ [autogenerated SDKs](https://github.com/vericred/?query=vericred-),
21
+ which we make available for several common programming languages.
22
+
16
23
  ## Authentication
17
24
 
18
25
  To authenticate, pass the API Key you created in the Developer Portal as
@@ -108,6 +115,86 @@ The response would be
108
115
  }
109
116
  ```
110
117
 
118
+ ## Benefits summary format
119
+ Benefit cost-share strings are formatted to capture:
120
+ * Network tiers
121
+ * Compound or conditional cost-share
122
+ * Limits on the cost-share
123
+ * Benefit-specific maximum out-of-pocket costs
124
+
125
+ **Example #1**
126
+ As an example, we would represent [this Summary of Benefits & Coverage](https://s3.amazonaws.com/vericred-data/SBC/2017/33602TX0780032.pdf) as:
127
+
128
+ * **Hospital stay facility fees**:
129
+ - Network Provider: `$400 copay/admit plus 20% coinsurance`
130
+ - Out-of-Network Provider: `$1,500 copay/admit plus 50% coinsurance`
131
+ - Vericred's format for this benefit: `In-Network: $400 before deductible then 20% after deductible / Out-of-Network: $1,500 before deductible then 50% after deductible`
132
+
133
+ * **Rehabilitation services:**
134
+ - Network Provider: `20% coinsurance`
135
+ - Out-of-Network Provider: `50% coinsurance`
136
+ - Limitations & Exceptions: `35 visit maximum per benefit period combined with Chiropractic care.`
137
+ - Vericred's format for this benefit: `In-Network: 20% after deductible / Out-of-Network: 50% after deductible | limit: 35 visit(s) per Benefit Period`
138
+
139
+ **Example #2**
140
+ In [this other Summary of Benefits & Coverage](https://s3.amazonaws.com/vericred-data/SBC/2017/40733CA0110568.pdf), the **specialty_drugs** cost-share has a maximum out-of-pocket for in-network pharmacies.
141
+ * **Specialty drugs:**
142
+ - Network Provider: `40% coinsurance up to a $500 maximum for up to a 30 day supply`
143
+ - Out-of-Network Provider `Not covered`
144
+ - Vericred's format for this benefit: `In-Network: 40% after deductible, up to $500 per script / Out-of-Network: 100%`
145
+
146
+ **BNF**
147
+
148
+ Here's a description of the benefits summary string, represented as a context-free grammar:
149
+
150
+ ```
151
+ root ::= coverage
152
+
153
+ coverage ::= (simple_coverage | tiered_coverage) (space pipe space coverage_limitation)?
154
+ tiered_coverage ::= tier (space slash space tier)*
155
+ tier ::= tier_name colon space (tier_coverage | not_applicable)
156
+ tier_coverage ::= simple_coverage (space (then | or | and) space simple_coverage)* tier_limitation?
157
+ simple_coverage ::= (pre_coverage_limitation space)? coverage_amount (space post_coverage_limitation)? (comma? space coverage_condition)?
158
+ coverage_limitation ::= "limit" colon space (((simple_coverage | simple_limitation) (semicolon space see_carrier_documentation)?) | see_carrier_documentation | waived_if_admitted)
159
+ waived_if_admitted ::= ("copay" space)? "waived if admitted"
160
+ simple_limitation ::= pre_coverage_limitation space "copay applies"
161
+ tier_name ::= "In-Network-Tier-2" | "Out-of-Network" | "In-Network"
162
+ tier_limitation ::= comma space "up to" space (currency | (integer space time_unit plural?)) (space post_coverage_limitation)?
163
+ coverage_amount ::= currency | unlimited | included | unknown | percentage | (digits space (treatment_unit | time_unit) plural?)
164
+ pre_coverage_limitation ::= first space digits space time_unit plural?
165
+ post_coverage_limitation ::= (((then space currency) | "per condition") space)? "per" space (treatment_unit | (integer space time_unit) | time_unit) plural?
166
+ coverage_condition ::= ("before deductible" | "after deductible" | "penalty" | allowance | "in-state" | "out-of-state") (space allowance)?
167
+ allowance ::= upto_allowance | after_allowance
168
+ upto_allowance ::= "up to" space (currency space)? "allowance"
169
+ after_allowance ::= "after" space (currency space)? "allowance"
170
+ see_carrier_documentation ::= "see carrier documentation for more information"
171
+ unknown ::= "unknown"
172
+ unlimited ::= /[uU]nlimited/
173
+ included ::= /[iI]ncluded in [mM]edical/
174
+ time_unit ::= /[hH]our/ | (((/[cC]alendar/ | /[cC]ontract/) space)? /[yY]ear/) | /[mM]onth/ | /[dD]ay/ | /[wW]eek/ | /[vV]isit/ | /[lL]ifetime/ | ((((/[bB]enefit/ plural?) | /[eE]ligibility/) space)? /[pP]eriod/)
175
+ treatment_unit ::= /[pP]erson/ | /[gG]roup/ | /[cC]ondition/ | /[sS]cript/ | /[vV]isit/ | /[eE]xam/ | /[iI]tem/ | /[sS]tay/ | /[tT]reatment/ | /[aA]dmission/ | /[eE]pisode/
176
+ comma ::= ","
177
+ colon ::= ":"
178
+ semicolon ::= ";"
179
+ pipe ::= "|"
180
+ slash ::= "/"
181
+ plural ::= "(s)" | "s"
182
+ then ::= "then" | ("," space) | space
183
+ or ::= "or"
184
+ and ::= "and"
185
+ not_applicable ::= "Not Applicable" | "N/A" | "NA"
186
+ first ::= "first"
187
+ currency ::= "$" number
188
+ percentage ::= number "%"
189
+ number ::= float | integer
190
+ float ::= digits "." digits
191
+ integer ::= /[0-9]/+ (comma_int | under_int)*
192
+ comma_int ::= ("," /[0-9]/*3) !"_"
193
+ under_int ::= ("_" /[0-9]/*3) !","
194
+ digits ::= /[0-9]/+ ("_" /[0-9]/+)*
195
+ space ::= /[ \t]/+
196
+ ```
197
+
111
198
 
112
199
 
113
200
  OpenAPI spec version: 1.0.0
@@ -169,26 +256,7 @@ describe VericredClient::ApiClient do
169
256
  end
170
257
  end
171
258
 
172
- describe "params_encoding in #build_request" do
173
- let(:config) { VericredClient::Configuration.new }
174
- let(:api_client) { VericredClient::ApiClient.new(config) }
175
-
176
- it "defaults to nil" do
177
- expect(VericredClient::Configuration.default.params_encoding).to eq(nil)
178
- expect(config.params_encoding).to eq(nil)
179
-
180
- request = api_client.build_request(:get, '/test')
181
- expect(request.options[:params_encoding]).to eq(nil)
182
- end
183
-
184
- it "can be customized" do
185
- config.params_encoding = :multi
186
- request = api_client.build_request(:get, '/test')
187
- expect(request.options[:params_encoding]).to eq(:multi)
188
- end
189
- end
190
-
191
- describe "timeout in #build_request" do
259
+ describe "timeout in #http_client" do
192
260
  let(:config) { VericredClient::Configuration.new }
193
261
  let(:api_client) { VericredClient::ApiClient.new(config) }
194
262
 
@@ -196,14 +264,12 @@ describe VericredClient::ApiClient do
196
264
  expect(VericredClient::Configuration.default.timeout).to eq(0)
197
265
  expect(config.timeout).to eq(0)
198
266
 
199
- request = api_client.build_request(:get, '/test')
200
- expect(request.options[:timeout]).to eq(0)
267
+ expect(api_client.http_client.receive_timeout).to eq(0)
201
268
  end
202
269
 
203
270
  it "can be customized" do
204
271
  config.timeout = 100
205
- request = api_client.build_request(:get, '/test')
206
- expect(request.options[:timeout]).to eq(100)
272
+ expect(api_client.http_client.receive_timeout).to eq(100)
207
273
  end
208
274
  end
209
275