candidhealth 0.39.6 → 0.39.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/lib/candidhealth/commons/types/procedure_modifier.rb +1 -0
  3. data/lib/candidhealth/eligibility/v_2/client.rb +48 -6
  4. data/lib/candidhealth/fee_schedules/v_3/client.rb +16 -4
  5. data/lib/candidhealth/fee_schedules/v_3/types/dimension_match.rb +16 -2
  6. data/lib/candidhealth/fee_schedules/v_3/types/dimensions.rb +16 -2
  7. data/lib/candidhealth/fee_schedules/v_3/types/match_payer_plan_groups.rb +85 -0
  8. data/lib/candidhealth/fee_schedules/v_3/types/optional_dimensions.rb +15 -2
  9. data/lib/candidhealth/fee_schedules/v_3/types/payer_plan_group_does_not_match_rate_payer_error.rb +75 -0
  10. data/lib/candidhealth/fee_schedules/v_3/types/validation_error.rb +39 -14
  11. data/lib/candidhealth/organization_providers/v_2/types/license_type.rb +4 -0
  12. data/lib/candidhealth/pre_encounter/appointments/v_1/client.rb +98 -4
  13. data/lib/candidhealth/pre_encounter/appointments/v_1/types/appointment.rb +2 -2
  14. data/lib/candidhealth/pre_encounter/appointments/v_1/types/mutable_appointment.rb +2 -2
  15. data/lib/candidhealth/pre_encounter/appointments/v_1/types/visit.rb +96 -0
  16. data/lib/candidhealth/pre_encounter/appointments/v_1/types/visits_page.rb +98 -0
  17. data/lib/candidhealth/pre_encounter/common/types/external_identifier.rb +87 -0
  18. data/lib/candidhealth/pre_encounter/common/types/external_provider.rb +10 -2
  19. data/lib/candidhealth/pre_encounter/coverages/v_1/client.rb +89 -4
  20. data/lib/candidhealth/pre_encounter/coverages/v_1/types/address.rb +118 -0
  21. data/lib/candidhealth/pre_encounter/coverages/v_1/types/benefits_related_entity.rb +11 -2
  22. data/lib/candidhealth/pre_encounter/coverages/v_1/types/coverages_page.rb +98 -0
  23. data/lib/candidhealth/pre_encounter/coverages/v_1/types/expanded_member_info.rb +133 -0
  24. data/lib/candidhealth/pre_encounter/coverages/v_1/types/insurance_plan.rb +10 -2
  25. data/lib/candidhealth/pre_encounter/coverages/v_1/types/insurance_type_code.rb +1 -0
  26. data/lib/candidhealth/pre_encounter/coverages/v_1/types/member_info.rb +93 -0
  27. data/lib/candidhealth/pre_encounter/coverages/v_1/types/plan_metadata.rb +38 -3
  28. data/lib/candidhealth/pre_encounter/eligibility_checks/client.rb +32 -0
  29. data/lib/candidhealth/pre_encounter/eligibility_checks/v_1/client.rb +124 -0
  30. data/lib/candidhealth/pre_encounter/eligibility_checks/v_1/types/eligibility_check.rb +119 -0
  31. data/lib/candidhealth/pre_encounter/eligibility_checks/v_1/types/eligibility_request.rb +135 -0
  32. data/lib/candidhealth/pre_encounter/eligibility_checks/v_1/types/eligibility_response.rb +15 -0
  33. data/lib/candidhealth/pre_encounter/eligibility_checks/v_1/types/encounter.rb +83 -0
  34. data/lib/candidhealth/pre_encounter/eligibility_checks/v_1/types/individual_provider.rb +81 -0
  35. data/lib/candidhealth/pre_encounter/eligibility_checks/v_1/types/organization_provider.rb +74 -0
  36. data/lib/candidhealth/pre_encounter/eligibility_checks/v_1/types/parsed_response.rb +99 -0
  37. data/lib/candidhealth/pre_encounter/eligibility_checks/v_1/types/provider.rb +66 -0
  38. data/lib/candidhealth/pre_encounter/eligibility_checks/v_1/types/request_correction.rb +79 -0
  39. data/lib/candidhealth/pre_encounter/lists/v_1/types/appointment_list_item.rb +5 -5
  40. data/lib/candidhealth/pre_encounter/patients/v_1/client.rb +70 -14
  41. data/lib/candidhealth/pre_encounter/patients/v_1/types/mutable_patient.rb +14 -2
  42. data/lib/candidhealth/pre_encounter/patients/v_1/types/mutable_patient_with_mrn.rb +14 -2
  43. data/lib/candidhealth/pre_encounter/patients/v_1/types/patient.rb +13 -1
  44. data/lib/requests.rb +2 -2
  45. data/lib/types_export.rb +18 -0
  46. metadata +22 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 896d5796a5f736d6e36dfc1d1f36d661515f8d64bd241445bd8014773bf07ec3
4
- data.tar.gz: 58914250d2b0c91dc1ad4d5d90f164321c42518f86fd65ecb1887113df56bf39
3
+ metadata.gz: 19663b3533c583e080c31d3afa214f52ba5d8760f2e9fd45e96df11e2744afad
4
+ data.tar.gz: 3e80796b9240328a1b5791394fa95a6c51043c00b06de2ef0522d1c305c05ccf
5
5
  SHA512:
6
- metadata.gz: fb43ac7ebddee0182ba94b038c4fb221f6d0a64a91b61b7f8c4035a2337ce4fd1e71587c4114441bc9cacbdc1614d65552cdeff19aeedb1c3b5ec0ddd20881b3
7
- data.tar.gz: 4c94c53956fd089f8d5e563394101651ebb2cc8294140d6b38388b1875b476386afded7baf896eb218b0ba55dfbbfde43e458f13d143e8eae4c8b7ee3d0b8c14
6
+ metadata.gz: 15b5ac00b2e897c5c63ed7dc5c3bab21afa8aeb74bc4456ff9b2f40683004a0ef89426679b158ac487ab8283d05c7cb172270b859e77dd8148d21a96b4176d95
7
+ data.tar.gz: 3b374a2a476f74d78e9e8e8ad81a3fd298370911471478976532a40f0b311aac1105069f17cbb97d899e71139a80869b2bfd27ad03dbb83bfd42185211b53953
@@ -393,6 +393,7 @@ module CandidApiClient
393
393
  V_3 = "V3"
394
394
  XE = "XE"
395
395
  XS = "XS"
396
+ XU = "XU"
396
397
  end
397
398
  end
398
399
  end
@@ -17,7 +17,14 @@ module CandidApiClient
17
17
  @request_client = request_client
18
18
  end
19
19
 
20
- # This API is a wrapper around Change Healthcare's eligibility API. Below are some
20
+ # <Tip>Candid is deprecating support for this endpoint. It is instead recommended
21
+ # to use [Candid's Stedi passthrough
22
+ # t](https://docs.joincandidhealth.com/api-reference/eligibility-checks/v-1/post).
23
+ # For assistance with the transition, please reference the [Transitioning to
24
+ # Candid's New Eligibility
25
+ # Endpoint](https://support.joincandidhealth.com/hc/en-us/articles/34918552872980)
26
+ # document in the Candid Support Center.</Tip>
27
+ # This API is a wrapper around Change Healthcare's eligibility API. Below are some
21
28
  # helpful documentation links:
22
29
  # - [Change Healthcare - Guides: Contents of the Eligibility Request
23
30
  # althcare.com/eligibilityandclaims/docs/contents-of-the-eligibility-request-body)
@@ -64,7 +71,14 @@ module CandidApiClient
64
71
  JSON.parse(response.body)
65
72
  end
66
73
 
67
- # **Availity has transitioned their GET endpoint to a POST endpoint. Candid has
74
+ # <Tip>Candid is deprecating support for this endpoint. It is instead recommended
75
+ # to use [Candid's Stedi passthrough
76
+ # t](https://docs.joincandidhealth.com/api-reference/eligibility-checks/v-1/post).
77
+ # For assistance with the transition, please reference the [Transitioning to
78
+ # Candid's New Eligibility
79
+ # Endpoint](https://support.joincandidhealth.com/hc/en-us/articles/34918552872980)
80
+ # document in the Candid Support Center.</Tip>
81
+ # **Availity has transitioned their GET endpoint to a POST endpoint. Candid has
68
82
  # updated their pass-through integration to enable backwards compatibility for the
69
83
  # GET endpoint so that customers do not have to immediately update their
70
84
  # integrations.**
@@ -107,7 +121,14 @@ module CandidApiClient
107
121
  JSON.parse(response.body)
108
122
  end
109
123
 
110
- # If you'd like access to this endpoint, please reach out to
124
+ # <Tip>Candid is deprecating support for this endpoint. It is instead recommended
125
+ # to use [Candid's Stedi passthrough
126
+ # t](https://docs.joincandidhealth.com/api-reference/eligibility-checks/v-1/post).
127
+ # For assistance with the transition, please reference the [Transitioning to
128
+ # Candid's New Eligibility
129
+ # Endpoint](https://support.joincandidhealth.com/hc/en-us/articles/34918552872980)
130
+ # document in the Candid Support Center.</Tip>
131
+ # If you'd like access to this endpoint, please reach out to
111
132
  # support@joincandidhealth.com with the subject line "Action: Activate Availity
112
133
  # Eligibility API Endpoint
113
134
  # This API is a wrapper around Availity's coverages API. Below are some helpful
@@ -155,7 +176,14 @@ module CandidApiClient
155
176
  @request_client = request_client
156
177
  end
157
178
 
158
- # This API is a wrapper around Change Healthcare's eligibility API. Below are some
179
+ # <Tip>Candid is deprecating support for this endpoint. It is instead recommended
180
+ # to use [Candid's Stedi passthrough
181
+ # t](https://docs.joincandidhealth.com/api-reference/eligibility-checks/v-1/post).
182
+ # For assistance with the transition, please reference the [Transitioning to
183
+ # Candid's New Eligibility
184
+ # Endpoint](https://support.joincandidhealth.com/hc/en-us/articles/34918552872980)
185
+ # document in the Candid Support Center.</Tip>
186
+ # This API is a wrapper around Change Healthcare's eligibility API. Below are some
159
187
  # helpful documentation links:
160
188
  # - [Change Healthcare - Guides: Contents of the Eligibility Request
161
189
  # althcare.com/eligibilityandclaims/docs/contents-of-the-eligibility-request-body)
@@ -205,7 +233,14 @@ module CandidApiClient
205
233
  end
206
234
  end
207
235
 
208
- # **Availity has transitioned their GET endpoint to a POST endpoint. Candid has
236
+ # <Tip>Candid is deprecating support for this endpoint. It is instead recommended
237
+ # to use [Candid's Stedi passthrough
238
+ # t](https://docs.joincandidhealth.com/api-reference/eligibility-checks/v-1/post).
239
+ # For assistance with the transition, please reference the [Transitioning to
240
+ # Candid's New Eligibility
241
+ # Endpoint](https://support.joincandidhealth.com/hc/en-us/articles/34918552872980)
242
+ # document in the Candid Support Center.</Tip>
243
+ # **Availity has transitioned their GET endpoint to a POST endpoint. Candid has
209
244
  # updated their pass-through integration to enable backwards compatibility for the
210
245
  # GET endpoint so that customers do not have to immediately update their
211
246
  # integrations.**
@@ -251,7 +286,14 @@ module CandidApiClient
251
286
  end
252
287
  end
253
288
 
254
- # If you'd like access to this endpoint, please reach out to
289
+ # <Tip>Candid is deprecating support for this endpoint. It is instead recommended
290
+ # to use [Candid's Stedi passthrough
291
+ # t](https://docs.joincandidhealth.com/api-reference/eligibility-checks/v-1/post).
292
+ # For assistance with the transition, please reference the [Transitioning to
293
+ # Candid's New Eligibility
294
+ # Endpoint](https://support.joincandidhealth.com/hc/en-us/articles/34918552872980)
295
+ # document in the Candid Support Center.</Tip>
296
+ # If you'd like access to this endpoint, please reach out to
255
297
  # support@joincandidhealth.com with the subject line "Action: Activate Availity
256
298
  # Eligibility API Endpoint
257
299
  # This API is a wrapper around Availity's coverages API. Below are some helpful
@@ -93,6 +93,7 @@ module CandidApiClient
93
93
  # @param license_types [CandidApiClient::OrganizationProviders::V2::Types::LicenseType]
94
94
  # @param facility_type_codes [CandidApiClient::Commons::Types::FacilityTypeCode]
95
95
  # @param network_types [CandidApiClient::Commons::Types::NetworkType]
96
+ # @param payer_plan_group_ids [String]
96
97
  # @param cpt_code [String]
97
98
  # @param modifiers [CandidApiClient::Commons::Types::ProcedureModifier]
98
99
  # @param request_options [CandidApiClient::RequestOptions]
@@ -110,11 +111,12 @@ module CandidApiClient
110
111
  # license_types: MD,
111
112
  # facility_type_codes: PHARMACY,
112
113
  # network_types: PPO,
114
+ # payer_plan_group_ids: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32",
113
115
  # cpt_code: "string",
114
116
  # modifiers: TWENTY_TWO
115
117
  # )
116
118
  def get_multi(page_token: nil, limit: nil, active_date: nil, payer_uuid: nil,
117
- organization_billing_provider_id: nil, states: nil, zip_codes: nil, license_types: nil, facility_type_codes: nil, network_types: nil, cpt_code: nil, modifiers: nil, request_options: nil)
119
+ organization_billing_provider_id: nil, states: nil, zip_codes: nil, license_types: nil, facility_type_codes: nil, network_types: nil, payer_plan_group_ids: nil, cpt_code: nil, modifiers: nil, request_options: nil)
118
120
  response = @request_client.conn.get do |req|
119
121
  req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
120
122
  req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
@@ -135,6 +137,7 @@ module CandidApiClient
135
137
  "license_types": license_types,
136
138
  "facility_type_codes": facility_type_codes,
137
139
  "network_types": network_types,
140
+ "payer_plan_group_ids": payer_plan_group_ids,
138
141
  "cpt_code": cpt_code,
139
142
  "modifiers": modifiers
140
143
  }.compact
@@ -158,6 +161,7 @@ module CandidApiClient
158
161
  # @param license_types [CandidApiClient::OrganizationProviders::V2::Types::LicenseType]
159
162
  # @param facility_type_codes [CandidApiClient::Commons::Types::FacilityTypeCode]
160
163
  # @param network_types [CandidApiClient::Commons::Types::NetworkType]
164
+ # @param payer_plan_group_ids [String]
161
165
  # @param cpt_code [String]
162
166
  # @param modifiers [CandidApiClient::Commons::Types::ProcedureModifier]
163
167
  # @param request_options [CandidApiClient::RequestOptions]
@@ -175,11 +179,12 @@ module CandidApiClient
175
179
  # license_types: MD,
176
180
  # facility_type_codes: PHARMACY,
177
181
  # network_types: PPO,
182
+ # payer_plan_group_ids: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32",
178
183
  # cpt_code: "string",
179
184
  # modifiers: TWENTY_TWO
180
185
  # )
181
186
  def get_unique_values_for_dimension(pivot_dimension:, page_token: nil, limit: nil, payer_uuid: nil,
182
- organization_billing_provider_id: nil, states: nil, zip_codes: nil, license_types: nil, facility_type_codes: nil, network_types: nil, cpt_code: nil, modifiers: nil, request_options: nil)
187
+ organization_billing_provider_id: nil, states: nil, zip_codes: nil, license_types: nil, facility_type_codes: nil, network_types: nil, payer_plan_group_ids: nil, cpt_code: nil, modifiers: nil, request_options: nil)
183
188
  response = @request_client.conn.get do |req|
184
189
  req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
185
190
  req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
@@ -200,6 +205,7 @@ module CandidApiClient
200
205
  "license_types": license_types,
201
206
  "facility_type_codes": facility_type_codes,
202
207
  "network_types": network_types,
208
+ "payer_plan_group_ids": payer_plan_group_ids,
203
209
  "cpt_code": cpt_code,
204
210
  "modifiers": modifiers
205
211
  }.compact
@@ -444,6 +450,7 @@ module CandidApiClient
444
450
  # @param license_types [CandidApiClient::OrganizationProviders::V2::Types::LicenseType]
445
451
  # @param facility_type_codes [CandidApiClient::Commons::Types::FacilityTypeCode]
446
452
  # @param network_types [CandidApiClient::Commons::Types::NetworkType]
453
+ # @param payer_plan_group_ids [String]
447
454
  # @param cpt_code [String]
448
455
  # @param modifiers [CandidApiClient::Commons::Types::ProcedureModifier]
449
456
  # @param request_options [CandidApiClient::RequestOptions]
@@ -461,11 +468,12 @@ module CandidApiClient
461
468
  # license_types: MD,
462
469
  # facility_type_codes: PHARMACY,
463
470
  # network_types: PPO,
471
+ # payer_plan_group_ids: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32",
464
472
  # cpt_code: "string",
465
473
  # modifiers: TWENTY_TWO
466
474
  # )
467
475
  def get_multi(page_token: nil, limit: nil, active_date: nil, payer_uuid: nil,
468
- organization_billing_provider_id: nil, states: nil, zip_codes: nil, license_types: nil, facility_type_codes: nil, network_types: nil, cpt_code: nil, modifiers: nil, request_options: nil)
476
+ organization_billing_provider_id: nil, states: nil, zip_codes: nil, license_types: nil, facility_type_codes: nil, network_types: nil, payer_plan_group_ids: nil, cpt_code: nil, modifiers: nil, request_options: nil)
469
477
  Async do
470
478
  response = @request_client.conn.get do |req|
471
479
  req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
@@ -487,6 +495,7 @@ module CandidApiClient
487
495
  "license_types": license_types,
488
496
  "facility_type_codes": facility_type_codes,
489
497
  "network_types": network_types,
498
+ "payer_plan_group_ids": payer_plan_group_ids,
490
499
  "cpt_code": cpt_code,
491
500
  "modifiers": modifiers
492
501
  }.compact
@@ -511,6 +520,7 @@ module CandidApiClient
511
520
  # @param license_types [CandidApiClient::OrganizationProviders::V2::Types::LicenseType]
512
521
  # @param facility_type_codes [CandidApiClient::Commons::Types::FacilityTypeCode]
513
522
  # @param network_types [CandidApiClient::Commons::Types::NetworkType]
523
+ # @param payer_plan_group_ids [String]
514
524
  # @param cpt_code [String]
515
525
  # @param modifiers [CandidApiClient::Commons::Types::ProcedureModifier]
516
526
  # @param request_options [CandidApiClient::RequestOptions]
@@ -528,11 +538,12 @@ module CandidApiClient
528
538
  # license_types: MD,
529
539
  # facility_type_codes: PHARMACY,
530
540
  # network_types: PPO,
541
+ # payer_plan_group_ids: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32",
531
542
  # cpt_code: "string",
532
543
  # modifiers: TWENTY_TWO
533
544
  # )
534
545
  def get_unique_values_for_dimension(pivot_dimension:, page_token: nil, limit: nil, payer_uuid: nil,
535
- organization_billing_provider_id: nil, states: nil, zip_codes: nil, license_types: nil, facility_type_codes: nil, network_types: nil, cpt_code: nil, modifiers: nil, request_options: nil)
546
+ organization_billing_provider_id: nil, states: nil, zip_codes: nil, license_types: nil, facility_type_codes: nil, network_types: nil, payer_plan_group_ids: nil, cpt_code: nil, modifiers: nil, request_options: nil)
536
547
  Async do
537
548
  response = @request_client.conn.get do |req|
538
549
  req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
@@ -554,6 +565,7 @@ module CandidApiClient
554
565
  "license_types": license_types,
555
566
  "facility_type_codes": facility_type_codes,
556
567
  "network_types": network_types,
568
+ "payer_plan_group_ids": payer_plan_group_ids,
557
569
  "cpt_code": cpt_code,
558
570
  "modifiers": modifiers
559
571
  }.compact
@@ -9,6 +9,7 @@ require_relative "match_modifiers"
9
9
  require_relative "match_license_type"
10
10
  require_relative "match_facility_type_code"
11
11
  require_relative "match_network_types"
12
+ require_relative "match_payer_plan_groups"
12
13
  require "ostruct"
13
14
  require "json"
14
15
 
@@ -36,6 +37,8 @@ module CandidApiClient
36
37
  attr_reader :facility_type_code
37
38
  # @return [CandidApiClient::FeeSchedules::V3::Types::MatchNetworkTypes]
38
39
  attr_reader :network_types
40
+ # @return [CandidApiClient::FeeSchedules::V3::Types::MatchPayerPlanGroups]
41
+ attr_reader :payer_plan_groups
39
42
  # @return [OpenStruct] Additional properties unmapped to the current class definition
40
43
  attr_reader :additional_properties
41
44
  # @return [Object]
@@ -53,10 +56,11 @@ module CandidApiClient
53
56
  # @param license_type [CandidApiClient::FeeSchedules::V3::Types::MatchLicenseType]
54
57
  # @param facility_type_code [CandidApiClient::FeeSchedules::V3::Types::MatchFacilityTypeCode]
55
58
  # @param network_types [CandidApiClient::FeeSchedules::V3::Types::MatchNetworkTypes]
59
+ # @param payer_plan_groups [CandidApiClient::FeeSchedules::V3::Types::MatchPayerPlanGroups]
56
60
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
57
61
  # @return [CandidApiClient::FeeSchedules::V3::Types::DimensionMatch]
58
62
  def initialize(payer:, geography:, organization_billing_provider:, date_of_service:, cpt_code:, modifiers:,
59
- license_type:, facility_type_code:, network_types:, additional_properties: nil)
63
+ license_type:, facility_type_code:, network_types:, payer_plan_groups:, additional_properties: nil)
60
64
  @payer = payer
61
65
  @geography = geography
62
66
  @organization_billing_provider = organization_billing_provider
@@ -66,6 +70,7 @@ module CandidApiClient
66
70
  @license_type = license_type
67
71
  @facility_type_code = facility_type_code
68
72
  @network_types = network_types
73
+ @payer_plan_groups = payer_plan_groups
69
74
  @additional_properties = additional_properties
70
75
  @_field_set = {
71
76
  "payer": payer,
@@ -76,7 +81,8 @@ module CandidApiClient
76
81
  "modifiers": modifiers,
77
82
  "license_type": license_type,
78
83
  "facility_type_code": facility_type_code,
79
- "network_types": network_types
84
+ "network_types": network_types,
85
+ "payer_plan_groups": payer_plan_groups
80
86
  }
81
87
  end
82
88
 
@@ -141,6 +147,12 @@ module CandidApiClient
141
147
  network_types = parsed_json["network_types"].to_json
142
148
  network_types = CandidApiClient::FeeSchedules::V3::Types::MatchNetworkTypes.from_json(json_object: network_types)
143
149
  end
150
+ if parsed_json["payer_plan_groups"].nil?
151
+ payer_plan_groups = nil
152
+ else
153
+ payer_plan_groups = parsed_json["payer_plan_groups"].to_json
154
+ payer_plan_groups = CandidApiClient::FeeSchedules::V3::Types::MatchPayerPlanGroups.from_json(json_object: payer_plan_groups)
155
+ end
144
156
  new(
145
157
  payer: payer,
146
158
  geography: geography,
@@ -151,6 +163,7 @@ module CandidApiClient
151
163
  license_type: license_type,
152
164
  facility_type_code: facility_type_code,
153
165
  network_types: network_types,
166
+ payer_plan_groups: payer_plan_groups,
154
167
  additional_properties: struct
155
168
  )
156
169
  end
@@ -178,6 +191,7 @@ module CandidApiClient
178
191
  CandidApiClient::FeeSchedules::V3::Types::MatchLicenseType.validate_raw(obj: obj.license_type)
179
192
  CandidApiClient::FeeSchedules::V3::Types::MatchFacilityTypeCode.validate_raw(obj: obj.facility_type_code)
180
193
  CandidApiClient::FeeSchedules::V3::Types::MatchNetworkTypes.validate_raw(obj: obj.network_types)
194
+ CandidApiClient::FeeSchedules::V3::Types::MatchPayerPlanGroups.validate_raw(obj: obj.payer_plan_groups)
181
195
  end
182
196
  end
183
197
  end
@@ -10,7 +10,8 @@ module CandidApiClient
10
10
  module Types
11
11
  # Dimension values that qualify a rate. For the optional dimensions, a null value
12
12
  # signifies "all apply". For set-type dimensions, an empty set signifies "all
13
- # apply".
13
+ # apply". Only one of, but not both, of `network_types` and `payer_plan_group_id`
14
+ # may be populated.
14
15
  class Dimensions
15
16
  # @return [String]
16
17
  attr_reader :payer_uuid
@@ -26,6 +27,8 @@ module CandidApiClient
26
27
  attr_reader :facility_type_codes
27
28
  # @return [Set<CandidApiClient::Commons::Types::NetworkType>]
28
29
  attr_reader :network_types
30
+ # @return [Set<String>]
31
+ attr_reader :payer_plan_group_ids
29
32
  # @return [String]
30
33
  attr_reader :cpt_code
31
34
  # @return [Set<CandidApiClient::Commons::Types::ProcedureModifier>]
@@ -45,12 +48,13 @@ module CandidApiClient
45
48
  # @param license_types [Set<CandidApiClient::OrganizationProviders::V2::Types::LicenseType>]
46
49
  # @param facility_type_codes [Set<CandidApiClient::Commons::Types::FacilityTypeCode>]
47
50
  # @param network_types [Set<CandidApiClient::Commons::Types::NetworkType>]
51
+ # @param payer_plan_group_ids [Set<String>]
48
52
  # @param cpt_code [String]
49
53
  # @param modifiers [Set<CandidApiClient::Commons::Types::ProcedureModifier>]
50
54
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
51
55
  # @return [CandidApiClient::FeeSchedules::V3::Types::Dimensions]
52
56
  def initialize(payer_uuid:, organization_billing_provider_id:, states:, zip_codes:, license_types:,
53
- facility_type_codes:, network_types:, cpt_code:, modifiers:, additional_properties: nil)
57
+ facility_type_codes:, network_types:, payer_plan_group_ids:, cpt_code:, modifiers:, additional_properties: nil)
54
58
  @payer_uuid = payer_uuid
55
59
  @organization_billing_provider_id = organization_billing_provider_id
56
60
  @states = states
@@ -58,6 +62,7 @@ module CandidApiClient
58
62
  @license_types = license_types
59
63
  @facility_type_codes = facility_type_codes
60
64
  @network_types = network_types
65
+ @payer_plan_group_ids = payer_plan_group_ids
61
66
  @cpt_code = cpt_code
62
67
  @modifiers = modifiers
63
68
  @additional_properties = additional_properties
@@ -69,6 +74,7 @@ module CandidApiClient
69
74
  "license_types": license_types,
70
75
  "facility_type_codes": facility_type_codes,
71
76
  "network_types": network_types,
77
+ "payer_plan_group_ids": payer_plan_group_ids,
72
78
  "cpt_code": cpt_code,
73
79
  "modifiers": modifiers
74
80
  }
@@ -113,6 +119,12 @@ module CandidApiClient
113
119
  network_types = parsed_json["network_types"].to_json
114
120
  network_types = Set.new(network_types)
115
121
  end
122
+ if parsed_json["payer_plan_group_ids"].nil?
123
+ payer_plan_group_ids = nil
124
+ else
125
+ payer_plan_group_ids = parsed_json["payer_plan_group_ids"].to_json
126
+ payer_plan_group_ids = Set.new(payer_plan_group_ids)
127
+ end
116
128
  cpt_code = struct["cpt_code"]
117
129
  if parsed_json["modifiers"].nil?
118
130
  modifiers = nil
@@ -128,6 +140,7 @@ module CandidApiClient
128
140
  license_types: license_types,
129
141
  facility_type_codes: facility_type_codes,
130
142
  network_types: network_types,
143
+ payer_plan_group_ids: payer_plan_group_ids,
131
144
  cpt_code: cpt_code,
132
145
  modifiers: modifiers,
133
146
  additional_properties: struct
@@ -155,6 +168,7 @@ module CandidApiClient
155
168
  obj.license_types.is_a?(Set) != false || raise("Passed value for field obj.license_types is not the expected type, validation failed.")
156
169
  obj.facility_type_codes.is_a?(Set) != false || raise("Passed value for field obj.facility_type_codes is not the expected type, validation failed.")
157
170
  obj.network_types.is_a?(Set) != false || raise("Passed value for field obj.network_types is not the expected type, validation failed.")
171
+ obj.payer_plan_group_ids.is_a?(Set) != false || raise("Passed value for field obj.payer_plan_group_ids is not the expected type, validation failed.")
158
172
  obj.cpt_code.is_a?(String) != false || raise("Passed value for field obj.cpt_code is not the expected type, validation failed.")
159
173
  obj.modifiers.is_a?(Set) != false || raise("Passed value for field obj.modifiers is not the expected type, validation failed.")
160
174
  end
@@ -0,0 +1,85 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "set"
4
+ require "ostruct"
5
+ require "json"
6
+
7
+ module CandidApiClient
8
+ module FeeSchedules
9
+ module V3
10
+ module Types
11
+ # Match information for a payer plan group
12
+ class MatchPayerPlanGroups
13
+ # @return [Set<String>]
14
+ attr_reader :value
15
+ # @return [Boolean]
16
+ attr_reader :match
17
+ # @return [String]
18
+ attr_reader :explanation
19
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
20
+ attr_reader :additional_properties
21
+ # @return [Object]
22
+ attr_reader :_field_set
23
+ protected :_field_set
24
+
25
+ OMIT = Object.new
26
+
27
+ # @param value [Set<String>]
28
+ # @param match [Boolean]
29
+ # @param explanation [String]
30
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
31
+ # @return [CandidApiClient::FeeSchedules::V3::Types::MatchPayerPlanGroups]
32
+ def initialize(value:, match:, explanation:, additional_properties: nil)
33
+ @value = value
34
+ @match = match
35
+ @explanation = explanation
36
+ @additional_properties = additional_properties
37
+ @_field_set = { "value": value, "match": match, "explanation": explanation }
38
+ end
39
+
40
+ # Deserialize a JSON object to an instance of MatchPayerPlanGroups
41
+ #
42
+ # @param json_object [String]
43
+ # @return [CandidApiClient::FeeSchedules::V3::Types::MatchPayerPlanGroups]
44
+ def self.from_json(json_object:)
45
+ struct = JSON.parse(json_object, object_class: OpenStruct)
46
+ parsed_json = JSON.parse(json_object)
47
+ if parsed_json["value"].nil?
48
+ value = nil
49
+ else
50
+ value = parsed_json["value"].to_json
51
+ value = Set.new(value)
52
+ end
53
+ match = struct["match"]
54
+ explanation = struct["explanation"]
55
+ new(
56
+ value: value,
57
+ match: match,
58
+ explanation: explanation,
59
+ additional_properties: struct
60
+ )
61
+ end
62
+
63
+ # Serialize an instance of MatchPayerPlanGroups to a JSON object
64
+ #
65
+ # @return [String]
66
+ def to_json(*_args)
67
+ @_field_set&.to_json
68
+ end
69
+
70
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
71
+ # hash and check each fields type against the current object's property
72
+ # definitions.
73
+ #
74
+ # @param obj [Object]
75
+ # @return [Void]
76
+ def self.validate_raw(obj:)
77
+ obj.value.is_a?(Set) != false || raise("Passed value for field obj.value is not the expected type, validation failed.")
78
+ obj.match.is_a?(Boolean) != false || raise("Passed value for field obj.match is not the expected type, validation failed.")
79
+ obj.explanation.is_a?(String) != false || raise("Passed value for field obj.explanation is not the expected type, validation failed.")
80
+ end
81
+ end
82
+ end
83
+ end
84
+ end
85
+ end
@@ -24,6 +24,8 @@ module CandidApiClient
24
24
  attr_reader :facility_type_codes
25
25
  # @return [Set<CandidApiClient::Commons::Types::NetworkType>]
26
26
  attr_reader :network_types
27
+ # @return [Set<String>]
28
+ attr_reader :payer_plan_group_ids
27
29
  # @return [String]
28
30
  attr_reader :cpt_code
29
31
  # @return [Set<CandidApiClient::Commons::Types::ProcedureModifier>]
@@ -43,12 +45,13 @@ module CandidApiClient
43
45
  # @param license_types [Set<CandidApiClient::OrganizationProviders::V2::Types::LicenseType>]
44
46
  # @param facility_type_codes [Set<CandidApiClient::Commons::Types::FacilityTypeCode>]
45
47
  # @param network_types [Set<CandidApiClient::Commons::Types::NetworkType>]
48
+ # @param payer_plan_group_ids [Set<String>]
46
49
  # @param cpt_code [String]
47
50
  # @param modifiers [Set<CandidApiClient::Commons::Types::ProcedureModifier>]
48
51
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
49
52
  # @return [CandidApiClient::FeeSchedules::V3::Types::OptionalDimensions]
50
- def initialize(states:, zip_codes:, license_types:, facility_type_codes:, network_types:, modifiers:,
51
- payer_uuid: OMIT, organization_billing_provider_id: OMIT, cpt_code: OMIT, additional_properties: nil)
53
+ def initialize(states:, zip_codes:, license_types:, facility_type_codes:, network_types:,
54
+ payer_plan_group_ids:, modifiers:, payer_uuid: OMIT, organization_billing_provider_id: OMIT, cpt_code: OMIT, additional_properties: nil)
52
55
  @payer_uuid = payer_uuid if payer_uuid != OMIT
53
56
  if organization_billing_provider_id != OMIT
54
57
  @organization_billing_provider_id = organization_billing_provider_id
@@ -58,6 +61,7 @@ module CandidApiClient
58
61
  @license_types = license_types
59
62
  @facility_type_codes = facility_type_codes
60
63
  @network_types = network_types
64
+ @payer_plan_group_ids = payer_plan_group_ids
61
65
  @cpt_code = cpt_code if cpt_code != OMIT
62
66
  @modifiers = modifiers
63
67
  @additional_properties = additional_properties
@@ -69,6 +73,7 @@ module CandidApiClient
69
73
  "license_types": license_types,
70
74
  "facility_type_codes": facility_type_codes,
71
75
  "network_types": network_types,
76
+ "payer_plan_group_ids": payer_plan_group_ids,
72
77
  "cpt_code": cpt_code,
73
78
  "modifiers": modifiers
74
79
  }.reject do |_k, v|
@@ -115,6 +120,12 @@ module CandidApiClient
115
120
  network_types = parsed_json["network_types"].to_json
116
121
  network_types = Set.new(network_types)
117
122
  end
123
+ if parsed_json["payer_plan_group_ids"].nil?
124
+ payer_plan_group_ids = nil
125
+ else
126
+ payer_plan_group_ids = parsed_json["payer_plan_group_ids"].to_json
127
+ payer_plan_group_ids = Set.new(payer_plan_group_ids)
128
+ end
118
129
  cpt_code = struct["cpt_code"]
119
130
  if parsed_json["modifiers"].nil?
120
131
  modifiers = nil
@@ -130,6 +141,7 @@ module CandidApiClient
130
141
  license_types: license_types,
131
142
  facility_type_codes: facility_type_codes,
132
143
  network_types: network_types,
144
+ payer_plan_group_ids: payer_plan_group_ids,
133
145
  cpt_code: cpt_code,
134
146
  modifiers: modifiers,
135
147
  additional_properties: struct
@@ -157,6 +169,7 @@ module CandidApiClient
157
169
  obj.license_types.is_a?(Set) != false || raise("Passed value for field obj.license_types is not the expected type, validation failed.")
158
170
  obj.facility_type_codes.is_a?(Set) != false || raise("Passed value for field obj.facility_type_codes is not the expected type, validation failed.")
159
171
  obj.network_types.is_a?(Set) != false || raise("Passed value for field obj.network_types is not the expected type, validation failed.")
172
+ obj.payer_plan_group_ids.is_a?(Set) != false || raise("Passed value for field obj.payer_plan_group_ids is not the expected type, validation failed.")
160
173
  obj.cpt_code&.is_a?(String) != false || raise("Passed value for field obj.cpt_code is not the expected type, validation failed.")
161
174
  obj.modifiers.is_a?(Set) != false || raise("Passed value for field obj.modifiers is not the expected type, validation failed.")
162
175
  end
@@ -0,0 +1,75 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "ostruct"
4
+ require "json"
5
+
6
+ module CandidApiClient
7
+ module FeeSchedules
8
+ module V3
9
+ module Types
10
+ class PayerPlanGroupDoesNotMatchRatePayerError
11
+ # @return [String]
12
+ attr_reader :rate_payer_uuid
13
+ # @return [String]
14
+ attr_reader :payer_plan_group_payer_uuid
15
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
16
+ attr_reader :additional_properties
17
+ # @return [Object]
18
+ attr_reader :_field_set
19
+ protected :_field_set
20
+
21
+ OMIT = Object.new
22
+
23
+ # @param rate_payer_uuid [String]
24
+ # @param payer_plan_group_payer_uuid [String]
25
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
26
+ # @return [CandidApiClient::FeeSchedules::V3::Types::PayerPlanGroupDoesNotMatchRatePayerError]
27
+ def initialize(rate_payer_uuid:, payer_plan_group_payer_uuid:, additional_properties: nil)
28
+ @rate_payer_uuid = rate_payer_uuid
29
+ @payer_plan_group_payer_uuid = payer_plan_group_payer_uuid
30
+ @additional_properties = additional_properties
31
+ @_field_set = {
32
+ "rate_payer_uuid": rate_payer_uuid,
33
+ "payer_plan_group_payer_uuid": payer_plan_group_payer_uuid
34
+ }
35
+ end
36
+
37
+ # Deserialize a JSON object to an instance of
38
+ # PayerPlanGroupDoesNotMatchRatePayerError
39
+ #
40
+ # @param json_object [String]
41
+ # @return [CandidApiClient::FeeSchedules::V3::Types::PayerPlanGroupDoesNotMatchRatePayerError]
42
+ def self.from_json(json_object:)
43
+ struct = JSON.parse(json_object, object_class: OpenStruct)
44
+ rate_payer_uuid = struct["rate_payer_uuid"]
45
+ payer_plan_group_payer_uuid = struct["payer_plan_group_payer_uuid"]
46
+ new(
47
+ rate_payer_uuid: rate_payer_uuid,
48
+ payer_plan_group_payer_uuid: payer_plan_group_payer_uuid,
49
+ additional_properties: struct
50
+ )
51
+ end
52
+
53
+ # Serialize an instance of PayerPlanGroupDoesNotMatchRatePayerError to a JSON
54
+ # object
55
+ #
56
+ # @return [String]
57
+ def to_json(*_args)
58
+ @_field_set&.to_json
59
+ end
60
+
61
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
62
+ # hash and check each fields type against the current object's property
63
+ # definitions.
64
+ #
65
+ # @param obj [Object]
66
+ # @return [Void]
67
+ def self.validate_raw(obj:)
68
+ obj.rate_payer_uuid.is_a?(String) != false || raise("Passed value for field obj.rate_payer_uuid is not the expected type, validation failed.")
69
+ obj.payer_plan_group_payer_uuid.is_a?(String) != false || raise("Passed value for field obj.payer_plan_group_payer_uuid is not the expected type, validation failed.")
70
+ end
71
+ end
72
+ end
73
+ end
74
+ end
75
+ end