candidhealth 0.21.0 → 0.24.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (439) hide show
  1. checksums.yaml +4 -4
  2. data/lib/candidhealth/auth/client.rb +8 -6
  3. data/lib/candidhealth/auth/v_2/client.rb +86 -38
  4. data/lib/candidhealth/auth/v_2/types/auth_get_token_response.rb +61 -43
  5. data/lib/candidhealth/auth/v_2/types/too_many_requests_error_type.rb +44 -33
  6. data/lib/candidhealth/billing_notes/client.rb +8 -6
  7. data/lib/candidhealth/billing_notes/v_2/client.rb +43 -21
  8. data/lib/candidhealth/billing_notes/v_2/types/billing_note.rb +95 -72
  9. data/lib/candidhealth/billing_notes/v_2/types/billing_note_base.rb +44 -33
  10. data/lib/candidhealth/claim_submission/v_1/types/claim_frequency_type_code.rb +6 -4
  11. data/lib/candidhealth/claim_submission/v_1/types/claim_submission_record_create.rb +80 -59
  12. data/lib/candidhealth/claim_submission/v_1/types/external_claim_submission_create.rb +78 -56
  13. data/lib/candidhealth/claims/types/claim.rb +114 -86
  14. data/lib/candidhealth/claims/types/claim_status.rb +19 -17
  15. data/lib/candidhealth/commons/types/claim_adjustment_group_codes.rb +14 -12
  16. data/lib/candidhealth/commons/types/claim_submission_payer_responsibility_type.rb +6 -4
  17. data/lib/candidhealth/commons/types/date_range_optional_end.rb +57 -40
  18. data/lib/candidhealth/commons/types/delay_reason_code.rb +19 -17
  19. data/lib/candidhealth/commons/types/emr_payer_crosswalk.rb +6 -4
  20. data/lib/candidhealth/commons/types/entity_conflict_error_message.rb +45 -34
  21. data/lib/candidhealth/commons/types/entity_not_found_error_message.rb +45 -34
  22. data/lib/candidhealth/commons/types/facility_type_code.rb +58 -55
  23. data/lib/candidhealth/commons/types/http_service_unavailable_error_message.rb +47 -34
  24. data/lib/candidhealth/commons/types/insurance_type_code.rb +76 -73
  25. data/lib/candidhealth/commons/types/intended_submission_medium.rb +9 -5
  26. data/lib/candidhealth/commons/types/network_type.rb +23 -21
  27. data/lib/candidhealth/commons/types/organization_not_authorized_error_message.rb +46 -34
  28. data/lib/candidhealth/commons/types/patient_relationship_to_insured_code_all.rb +28 -26
  29. data/lib/candidhealth/commons/types/phone_number.rb +55 -39
  30. data/lib/candidhealth/commons/types/phone_number_type.rb +7 -5
  31. data/lib/candidhealth/commons/types/procedure_modifier.rb +391 -389
  32. data/lib/candidhealth/commons/types/qualifier_code.rb +14 -0
  33. data/lib/candidhealth/commons/types/region_national.rb +39 -29
  34. data/lib/candidhealth/commons/types/region_states.rb +45 -34
  35. data/lib/candidhealth/commons/types/regions.rb +78 -72
  36. data/lib/candidhealth/commons/types/removable_date_range_optional_end.rb +77 -71
  37. data/lib/candidhealth/commons/types/request_validation_error.rb +57 -39
  38. data/lib/candidhealth/commons/types/resource_page.rb +57 -40
  39. data/lib/candidhealth/commons/types/service_line_units.rb +6 -4
  40. data/lib/candidhealth/commons/types/sort_direction.rb +6 -4
  41. data/lib/candidhealth/commons/types/source_of_payment_code.rb +28 -26
  42. data/lib/candidhealth/commons/types/state.rb +66 -64
  43. data/lib/candidhealth/commons/types/street_address_base.rb +84 -61
  44. data/lib/candidhealth/commons/types/street_address_long_zip.rb +93 -68
  45. data/lib/candidhealth/commons/types/street_address_short_zip.rb +93 -68
  46. data/lib/candidhealth/commons/types/unauthorized_error_message.rb +47 -34
  47. data/lib/candidhealth/commons/types/unprocessable_entity_error_message.rb +47 -34
  48. data/lib/candidhealth/commons/types/updates_disabled_due_to_external_system_integration_error_message.rb +49 -34
  49. data/lib/candidhealth/contracts/client.rb +8 -6
  50. data/lib/candidhealth/contracts/v_2/client.rb +251 -127
  51. data/lib/candidhealth/contracts/v_2/types/authorized_signatory.rb +92 -67
  52. data/lib/candidhealth/contracts/v_2/types/authorized_signatory_update.rb +76 -70
  53. data/lib/candidhealth/contracts/v_2/types/contract.rb +178 -141
  54. data/lib/candidhealth/contracts/v_2/types/contract_base.rb +134 -106
  55. data/lib/candidhealth/contracts/v_2/types/contract_is_linked_to_fee_schedule_error.rb +44 -33
  56. data/lib/candidhealth/contracts/v_2/types/contract_status.rb +6 -4
  57. data/lib/candidhealth/contracts/v_2/types/contract_with_providers.rb +191 -152
  58. data/lib/candidhealth/contracts/v_2/types/contracts_page.rb +70 -47
  59. data/lib/candidhealth/contracts/v_2/types/date_update.rb +76 -71
  60. data/lib/candidhealth/contracts/v_2/types/insurance_types.rb +86 -80
  61. data/lib/candidhealth/contracts/v_2/types/regions_update.rb +76 -70
  62. data/lib/candidhealth/diagnoses/types/diagnosis.rb +126 -91
  63. data/lib/candidhealth/diagnoses/types/diagnosis_create.rb +88 -58
  64. data/lib/candidhealth/diagnoses/types/diagnosis_type_code.rb +14 -12
  65. data/lib/candidhealth/diagnoses/types/standalone_diagnosis_create.rb +100 -64
  66. data/lib/candidhealth/eligibility/client.rb +8 -6
  67. data/lib/candidhealth/eligibility/v_2/client.rb +210 -124
  68. data/lib/candidhealth/encounter_providers/v_2/types/billing_provider.rb +126 -86
  69. data/lib/candidhealth/encounter_providers/v_2/types/encounter_provider.rb +128 -85
  70. data/lib/candidhealth/encounter_providers/v_2/types/encounter_provider_base.rb +73 -44
  71. data/lib/candidhealth/encounter_providers/v_2/types/initial_referring_provider.rb +132 -0
  72. data/lib/candidhealth/encounter_providers/v_2/types/ordering_provider.rb +123 -0
  73. data/lib/candidhealth/encounter_providers/v_2/types/referring_provider.rb +105 -73
  74. data/lib/candidhealth/encounter_providers/v_2/types/rendering_provider.rb +105 -73
  75. data/lib/candidhealth/encounter_providers/v_2/types/supervising_provider.rb +123 -0
  76. data/lib/candidhealth/encounters/client.rb +8 -6
  77. data/lib/candidhealth/encounters/v_4/client.rb +1021 -476
  78. data/lib/candidhealth/encounters/v_4/types/billable_status_type.rb +5 -3
  79. data/lib/candidhealth/encounters/v_4/types/cash_pay_payer_error_message.rb +44 -33
  80. data/lib/candidhealth/encounters/v_4/types/clinical_note.rb +76 -50
  81. data/lib/candidhealth/encounters/v_4/types/clinical_note_category.rb +70 -45
  82. data/lib/candidhealth/encounters/v_4/types/clinical_note_category_create.rb +57 -40
  83. data/lib/candidhealth/encounters/v_4/types/coding_attribution_type.rb +7 -5
  84. data/lib/candidhealth/encounters/v_4/types/encounter.rb +719 -482
  85. data/lib/candidhealth/encounters/v_4/types/encounter_base.rb +304 -223
  86. data/lib/candidhealth/encounters/v_4/types/encounter_external_id_uniqueness_error_type.rb +47 -34
  87. data/lib/candidhealth/encounters/v_4/types/encounter_guarantor_missing_contact_info_error_type.rb +46 -33
  88. data/lib/candidhealth/encounters/v_4/types/encounter_owner_of_next_action_type.rb +7 -5
  89. data/lib/candidhealth/encounters/v_4/types/encounter_page.rb +70 -47
  90. data/lib/candidhealth/encounters/v_4/types/encounter_patient_control_number_uniqueness_error_type.rb +46 -33
  91. data/lib/candidhealth/encounters/v_4/types/encounter_sort_options.rb +7 -5
  92. data/lib/candidhealth/encounters/v_4/types/encounter_submission_origin_type.rb +5 -3
  93. data/lib/candidhealth/encounters/v_4/types/intake_follow_up.rb +63 -44
  94. data/lib/candidhealth/encounters/v_4/types/intake_question.rb +66 -46
  95. data/lib/candidhealth/encounters/v_4/types/intake_response_and_follow_ups.rb +59 -40
  96. data/lib/candidhealth/encounters/v_4/types/intervention.rb +92 -66
  97. data/lib/candidhealth/encounters/v_4/types/intervention_category.rb +7 -5
  98. data/lib/candidhealth/encounters/v_4/types/lab.rb +63 -43
  99. data/lib/candidhealth/encounters/v_4/types/lab_code_type.rb +5 -3
  100. data/lib/candidhealth/encounters/v_4/types/medication.rb +92 -68
  101. data/lib/candidhealth/encounters/v_4/types/note_category.rb +17 -15
  102. data/lib/candidhealth/encounters/v_4/types/patient_history_category.rb +57 -40
  103. data/lib/candidhealth/encounters/v_4/types/patient_history_category_enum.rb +7 -5
  104. data/lib/candidhealth/encounters/v_4/types/responsible_party_type.rb +6 -4
  105. data/lib/candidhealth/encounters/v_4/types/service_authorization_exception_code.rb +14 -10
  106. data/lib/candidhealth/encounters/v_4/types/synchronicity_type.rb +5 -3
  107. data/lib/candidhealth/encounters/v_4/types/vitals.rb +84 -62
  108. data/lib/candidhealth/era/types/era.rb +62 -46
  109. data/lib/candidhealth/era/types/era_base.rb +55 -40
  110. data/lib/candidhealth/era/types/era_not_fully_processed_error_message.rb +55 -40
  111. data/lib/candidhealth/era_commons/types/claim_status_code_create.rb +14 -12
  112. data/lib/candidhealth/expected_network_status/client.rb +16 -10
  113. data/lib/candidhealth/expected_network_status/v_1/client.rb +76 -29
  114. data/lib/candidhealth/expected_network_status/v_1/types/expected_network_status.rb +6 -4
  115. data/lib/candidhealth/expected_network_status/v_1/types/expected_network_status_response.rb +69 -49
  116. data/lib/candidhealth/expected_network_status/v_2/client.rb +108 -69
  117. data/lib/candidhealth/expected_network_status/v_2/types/compute_all_in_network_providers_request.rb +129 -96
  118. data/lib/candidhealth/expected_network_status/v_2/types/compute_all_in_network_providers_response.rb +62 -47
  119. data/lib/candidhealth/expected_network_status/v_2/types/compute_all_in_network_rendering_providers_result.rb +89 -82
  120. data/lib/candidhealth/expected_network_status/v_2/types/expected_network_status_check_error_message.rb +45 -33
  121. data/lib/candidhealth/expected_network_status/v_2/types/expected_network_status_request_v_2.rb +129 -96
  122. data/lib/candidhealth/expected_network_status/v_2/types/expected_network_status_response_v_2.rb +59 -44
  123. data/lib/candidhealth/expected_network_status/v_2/types/expected_network_status_subscriber_information.rb +68 -49
  124. data/lib/candidhealth/expected_network_status/v_2/types/expected_network_status_v_2.rb +88 -82
  125. data/lib/candidhealth/expected_network_status/v_2/types/explanation.rb +11 -9
  126. data/lib/candidhealth/expected_network_status/v_2/types/in_network_rendering_providers_detail.rb +66 -51
  127. data/lib/candidhealth/expected_network_status/v_2/types/in_network_status.rb +57 -41
  128. data/lib/candidhealth/expected_network_status/v_2/types/indeterminate_network_status.rb +76 -57
  129. data/lib/candidhealth/expected_network_status/v_2/types/insurance_type.rb +59 -43
  130. data/lib/candidhealth/expected_network_status/v_2/types/insurance_type_codes.rb +86 -80
  131. data/lib/candidhealth/expected_network_status/v_2/types/line_of_business.rb +6 -4
  132. data/lib/candidhealth/expected_network_status/v_2/types/out_of_network_status.rb +65 -50
  133. data/lib/candidhealth/expected_network_status/v_2/types/service_type.rb +44 -42
  134. data/lib/candidhealth/exports/client.rb +8 -6
  135. data/lib/candidhealth/exports/v_3/client.rb +88 -48
  136. data/lib/candidhealth/exports/v_3/types/get_exports_response.rb +79 -58
  137. data/lib/candidhealth/external_payment_account_config/client.rb +30 -0
  138. data/lib/candidhealth/external_payment_account_config/v_1/client.rb +89 -0
  139. data/lib/candidhealth/external_payment_account_config/v_1/types/external_payment_account_config.rb +70 -0
  140. data/lib/candidhealth/external_payment_account_config/v_1/types/external_payment_account_config_page.rb +88 -0
  141. data/lib/candidhealth/fee_schedules/client.rb +8 -6
  142. data/lib/candidhealth/fee_schedules/v_3/client.rb +429 -181
  143. data/lib/candidhealth/fee_schedules/v_3/types/dimension_match.rb +159 -130
  144. data/lib/candidhealth/fee_schedules/v_3/types/dimension_name.rb +7 -5
  145. data/lib/candidhealth/fee_schedules/v_3/types/dimensions.rb +146 -117
  146. data/lib/candidhealth/fee_schedules/v_3/types/dimensions_page.rb +70 -51
  147. data/lib/candidhealth/fee_schedules/v_3/types/match_cpt_code.rb +62 -44
  148. data/lib/candidhealth/fee_schedules/v_3/types/match_date.rb +65 -44
  149. data/lib/candidhealth/fee_schedules/v_3/types/match_facility_type_code.rb +64 -44
  150. data/lib/candidhealth/fee_schedules/v_3/types/match_geo.rb +76 -49
  151. data/lib/candidhealth/fee_schedules/v_3/types/match_license_type.rb +64 -44
  152. data/lib/candidhealth/fee_schedules/v_3/types/match_modifiers.rb +67 -48
  153. data/lib/candidhealth/fee_schedules/v_3/types/match_network_types.rb +67 -48
  154. data/lib/candidhealth/fee_schedules/v_3/types/match_payer.rb +62 -45
  155. data/lib/candidhealth/fee_schedules/v_3/types/match_provider.rb +64 -45
  156. data/lib/candidhealth/fee_schedules/v_3/types/match_result.rb +59 -43
  157. data/lib/candidhealth/fee_schedules/v_3/types/match_test_result.rb +63 -46
  158. data/lib/candidhealth/fee_schedules/v_3/types/new_rate.rb +61 -44
  159. data/lib/candidhealth/fee_schedules/v_3/types/new_rate_version.rb +70 -46
  160. data/lib/candidhealth/fee_schedules/v_3/types/optional_dimensions.rb +148 -117
  161. data/lib/candidhealth/fee_schedules/v_3/types/overlapping_rate_entries_error.rb +71 -52
  162. data/lib/candidhealth/fee_schedules/v_3/types/payer_threshold.rb +77 -50
  163. data/lib/candidhealth/fee_schedules/v_3/types/payer_thresholds_page.rb +70 -51
  164. data/lib/candidhealth/fee_schedules/v_3/types/rate.rb +100 -75
  165. data/lib/candidhealth/fee_schedules/v_3/types/rate_entry.rb +79 -55
  166. data/lib/candidhealth/fee_schedules/v_3/types/rate_upload.rb +77 -71
  167. data/lib/candidhealth/fee_schedules/v_3/types/rate_upload_with_possible_errors.rb +79 -55
  168. data/lib/candidhealth/fee_schedules/v_3/types/rates_page.rb +70 -47
  169. data/lib/candidhealth/fee_schedules/v_3/types/threshold_match.rb +79 -54
  170. data/lib/candidhealth/fee_schedules/v_3/types/validation_error.rb +108 -102
  171. data/lib/candidhealth/financials/types/account_type.rb +6 -4
  172. data/lib/candidhealth/financials/types/allocation.rb +60 -43
  173. data/lib/candidhealth/financials/types/allocation_create.rb +63 -45
  174. data/lib/candidhealth/financials/types/allocation_target.rb +102 -95
  175. data/lib/candidhealth/financials/types/allocation_target_create.rb +113 -110
  176. data/lib/candidhealth/financials/types/billing_provider_allocation_target.rb +45 -35
  177. data/lib/candidhealth/financials/types/claim_allocation_target.rb +55 -41
  178. data/lib/candidhealth/financials/types/invoice_update.rb +77 -72
  179. data/lib/candidhealth/financials/types/note_update.rb +77 -71
  180. data/lib/candidhealth/financials/types/patient_transaction_source.rb +11 -9
  181. data/lib/candidhealth/financials/types/refund_reason.rb +5 -3
  182. data/lib/candidhealth/financials/types/refund_reason_update.rb +77 -71
  183. data/lib/candidhealth/financials/types/service_line_allocation_target.rb +62 -48
  184. data/lib/candidhealth/guarantor/client.rb +8 -6
  185. data/lib/candidhealth/guarantor/v_1/client.rb +136 -63
  186. data/lib/candidhealth/guarantor/v_1/types/encounter_has_existing_guarantor_error_type.rb +45 -33
  187. data/lib/candidhealth/guarantor/v_1/types/guarantor.rb +131 -100
  188. data/lib/candidhealth/guarantor/v_1/types/guarantor_base.rb +89 -65
  189. data/lib/candidhealth/guarantor/v_1/types/guarantor_create.rb +123 -93
  190. data/lib/candidhealth/identifiers/types/identifier.rb +85 -64
  191. data/lib/candidhealth/identifiers/types/identifier_base.rb +77 -53
  192. data/lib/candidhealth/identifiers/types/identifier_code.rb +6 -4
  193. data/lib/candidhealth/identifiers/types/identifier_create.rb +77 -53
  194. data/lib/candidhealth/identifiers/types/identifier_update.rb +86 -65
  195. data/lib/candidhealth/identifiers/types/identifier_value.rb +78 -72
  196. data/lib/candidhealth/identifiers/types/medicaid_provider_identifier.rb +55 -39
  197. data/lib/candidhealth/identifiers/types/medicare_provider_identifier.rb +55 -39
  198. data/lib/candidhealth/identifiers/types/updatable_identifier.rb +89 -84
  199. data/lib/candidhealth/import_invoice/client.rb +8 -6
  200. data/lib/candidhealth/import_invoice/v_1/client.rb +182 -86
  201. data/lib/candidhealth/import_invoice/v_1/types/create_import_invoice_request.rb +123 -83
  202. data/lib/candidhealth/import_invoice/v_1/types/import_invoice.rb +145 -110
  203. data/lib/candidhealth/import_invoice/v_1/types/import_invoice_update_request.rb +89 -65
  204. data/lib/candidhealth/import_invoice/v_1/types/import_invoices_page.rb +70 -47
  205. data/lib/candidhealth/import_invoice/v_1/types/invoice_item_info_update.rb +61 -42
  206. data/lib/candidhealth/import_invoice/v_1/types/invoice_item_update_type.rb +5 -3
  207. data/lib/candidhealth/individual/types/gender.rb +9 -7
  208. data/lib/candidhealth/individual/types/individual_base.rb +62 -44
  209. data/lib/candidhealth/individual/types/patient.rb +145 -108
  210. data/lib/candidhealth/individual/types/patient_base.rb +101 -73
  211. data/lib/candidhealth/individual/types/patient_create.rb +137 -101
  212. data/lib/candidhealth/individual/types/subscriber.rb +119 -91
  213. data/lib/candidhealth/individual/types/subscriber_base.rb +99 -74
  214. data/lib/candidhealth/individual/types/subscriber_create.rb +111 -84
  215. data/lib/candidhealth/insurance_adjudications/client.rb +8 -6
  216. data/lib/candidhealth/insurance_adjudications/v_1/client.rb +106 -47
  217. data/lib/candidhealth/insurance_adjudications/v_1/types/claim_adjudication.rb +106 -81
  218. data/lib/candidhealth/insurance_adjudications/v_1/types/claim_adjudication_create.rb +98 -74
  219. data/lib/candidhealth/insurance_adjudications/v_1/types/insurance_adjudication.rb +104 -80
  220. data/lib/candidhealth/insurance_adjudications/v_1/types/insurance_adjudication_create.rb +113 -87
  221. data/lib/candidhealth/insurance_adjudications/v_1/types/service_line_adjudication.rb +121 -91
  222. data/lib/candidhealth/insurance_adjudications/v_1/types/service_line_adjudication_create.rb +113 -84
  223. data/lib/candidhealth/insurance_cards/v_2/types/insurance_card.rb +140 -105
  224. data/lib/candidhealth/insurance_cards/v_2/types/insurance_card_base.rb +76 -55
  225. data/lib/candidhealth/insurance_cards/v_2/types/insurance_card_create.rb +140 -104
  226. data/lib/candidhealth/insurance_payments/client.rb +8 -6
  227. data/lib/candidhealth/insurance_payments/v_1/client.rb +214 -102
  228. data/lib/candidhealth/insurance_payments/v_1/types/insurance_payment.rb +101 -77
  229. data/lib/candidhealth/insurance_payments/v_1/types/insurance_payment_create.rb +93 -70
  230. data/lib/candidhealth/insurance_payments/v_1/types/insurance_payment_sort_field.rb +6 -4
  231. data/lib/candidhealth/insurance_payments/v_1/types/insurance_payments_page.rb +70 -47
  232. data/lib/candidhealth/insurance_refunds/client.rb +8 -6
  233. data/lib/candidhealth/insurance_refunds/v_1/client.rb +218 -108
  234. data/lib/candidhealth/insurance_refunds/v_1/types/insurance_refund.rb +109 -83
  235. data/lib/candidhealth/insurance_refunds/v_1/types/insurance_refund_create.rb +101 -76
  236. data/lib/candidhealth/insurance_refunds/v_1/types/insurance_refund_sort_field.rb +7 -5
  237. data/lib/candidhealth/insurance_refunds/v_1/types/insurance_refunds_page.rb +70 -47
  238. data/lib/candidhealth/invoices/types/invoice.rb +152 -117
  239. data/lib/candidhealth/invoices/types/invoice_item.rb +55 -40
  240. data/lib/candidhealth/invoices/types/invoice_status.rb +10 -8
  241. data/lib/candidhealth/invoices/v_2/types/claim_invoice_item.rb +54 -39
  242. data/lib/candidhealth/invoices/v_2/types/claim_invoice_item_info.rb +66 -48
  243. data/lib/candidhealth/invoices/v_2/types/invoice.rb +151 -114
  244. data/lib/candidhealth/invoices/v_2/types/invoice_destination.rb +8 -5
  245. data/lib/candidhealth/invoices/v_2/types/invoice_destination_metadata.rb +78 -55
  246. data/lib/candidhealth/invoices/v_2/types/invoice_info.rb +66 -48
  247. data/lib/candidhealth/invoices/v_2/types/invoice_item_attribution_create.rb +88 -84
  248. data/lib/candidhealth/invoices/v_2/types/invoice_item_create.rb +59 -42
  249. data/lib/candidhealth/invoices/v_2/types/invoice_item_info.rb +59 -43
  250. data/lib/candidhealth/invoices/v_2/types/invoice_sort_field.rb +9 -7
  251. data/lib/candidhealth/invoices/v_2/types/invoice_status.rb +9 -7
  252. data/lib/candidhealth/invoices/v_2/types/service_line_invoice_item.rb +54 -39
  253. data/lib/candidhealth/invoices/v_2/types/unattributed_invoice_item.rb +44 -33
  254. data/lib/candidhealth/organization_providers/client.rb +8 -6
  255. data/lib/candidhealth/organization_providers/v_2/types/address_type.rb +4 -2
  256. data/lib/candidhealth/organization_providers/v_2/types/employment_status.rb +5 -3
  257. data/lib/candidhealth/organization_providers/v_2/types/license_type.rb +71 -69
  258. data/lib/candidhealth/organization_providers/v_2/types/organization_provider.rb +189 -138
  259. data/lib/candidhealth/organization_providers/v_2/types/organization_provider_address.rb +59 -42
  260. data/lib/candidhealth/organization_providers/v_2/types/organization_provider_base.rb +157 -112
  261. data/lib/candidhealth/organization_providers/v_2/types/organization_provider_sort_options.rb +7 -5
  262. data/lib/candidhealth/organization_providers/v_2/types/provider_type.rb +5 -3
  263. data/lib/candidhealth/organization_providers/v_3/client.rb +166 -80
  264. data/lib/candidhealth/organization_providers/v_3/types/organization_provider_create_v_2.rb +171 -124
  265. data/lib/candidhealth/organization_providers/v_3/types/organization_provider_page_v_2.rb +70 -47
  266. data/lib/candidhealth/organization_providers/v_3/types/organization_provider_update_v_2.rb +169 -121
  267. data/lib/candidhealth/organization_providers/v_3/types/organization_provider_v_2.rb +179 -131
  268. data/lib/candidhealth/organization_service_facilities/client.rb +8 -6
  269. data/lib/candidhealth/organization_service_facilities/v_2/client.rb +186 -90
  270. data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility.rb +149 -111
  271. data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility_create.rb +141 -104
  272. data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility_page.rb +70 -47
  273. data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility_update.rb +141 -104
  274. data/lib/candidhealth/organization_service_facilities/v_2/types/service_facility_mode.rb +5 -3
  275. data/lib/candidhealth/organization_service_facilities/v_2/types/service_facility_operational_status.rb +9 -7
  276. data/lib/candidhealth/organization_service_facilities/v_2/types/service_facility_physical_type.rb +17 -15
  277. data/lib/candidhealth/organization_service_facilities/v_2/types/service_facility_status.rb +6 -4
  278. data/lib/candidhealth/organization_service_facilities/v_2/types/service_facility_type.rb +126 -124
  279. data/lib/candidhealth/patient_payments/client.rb +8 -6
  280. data/lib/candidhealth/patient_payments/v_3/types/patient_payment.rb +143 -111
  281. data/lib/candidhealth/patient_payments/v_3/types/patient_payment_source.rb +12 -10
  282. data/lib/candidhealth/patient_payments/v_3/types/patient_payment_status.rb +14 -12
  283. data/lib/candidhealth/patient_payments/v_4/client.rb +230 -103
  284. data/lib/candidhealth/patient_payments/v_4/types/patient_payment.rb +129 -100
  285. data/lib/candidhealth/patient_payments/v_4/types/patient_payment_sort_field.rb +7 -5
  286. data/lib/candidhealth/patient_payments/v_4/types/patient_payments_page.rb +70 -47
  287. data/lib/candidhealth/patient_refunds/client.rb +8 -6
  288. data/lib/candidhealth/patient_refunds/v_1/client.rb +236 -107
  289. data/lib/candidhealth/patient_refunds/v_1/types/patient_refund.rb +137 -106
  290. data/lib/candidhealth/patient_refunds/v_1/types/patient_refund_sort_field.rb +8 -6
  291. data/lib/candidhealth/patient_refunds/v_1/types/patient_refunds_page.rb +70 -47
  292. data/lib/candidhealth/payers/client.rb +8 -6
  293. data/lib/candidhealth/payers/v_3/client.rb +73 -32
  294. data/lib/candidhealth/payers/v_3/types/payer.rb +61 -44
  295. data/lib/candidhealth/payers/v_3/types/payer_identifier.rb +77 -72
  296. data/lib/candidhealth/payers/v_3/types/payer_info.rb +54 -40
  297. data/lib/candidhealth/payers/v_3/types/payer_page.rb +70 -47
  298. data/lib/candidhealth/pre_encounter/client.rb +30 -0
  299. data/lib/candidhealth/pre_encounter/common/types/address.rb +123 -0
  300. data/lib/candidhealth/pre_encounter/common/types/address_use.rb +17 -0
  301. data/lib/candidhealth/pre_encounter/common/types/contact_point.rb +87 -0
  302. data/lib/candidhealth/pre_encounter/common/types/contact_point_use.rb +17 -0
  303. data/lib/candidhealth/pre_encounter/common/types/error_base.rb +60 -0
  304. data/lib/candidhealth/pre_encounter/common/types/gender.rb +16 -0
  305. data/lib/candidhealth/pre_encounter/common/types/human_name.rb +94 -0
  306. data/lib/candidhealth/pre_encounter/common/types/name_use.rb +19 -0
  307. data/lib/candidhealth/pre_encounter/common/types/not_found_error_body.rb +70 -0
  308. data/lib/candidhealth/pre_encounter/common/types/period.rb +74 -0
  309. data/lib/candidhealth/pre_encounter/common/types/relationship.rb +17 -0
  310. data/lib/candidhealth/pre_encounter/common/types/version_conflict_error_body.rb +77 -0
  311. data/lib/candidhealth/pre_encounter/coverages/client.rb +32 -0
  312. data/lib/candidhealth/pre_encounter/coverages/v_1/client.rb +34 -0
  313. data/lib/candidhealth/pre_encounter/coverages/v_1/coverages/client.rb +487 -0
  314. data/lib/candidhealth/pre_encounter/coverages/v_1/coverages/types/coverage.rb +185 -0
  315. data/lib/candidhealth/pre_encounter/coverages/v_1/coverages/types/coverage_status.rb +22 -0
  316. data/lib/candidhealth/pre_encounter/coverages/v_1/coverages/types/coverage_type.rb +18 -0
  317. data/lib/candidhealth/pre_encounter/coverages/v_1/coverages/types/insurance_plan.rb +136 -0
  318. data/lib/candidhealth/pre_encounter/coverages/v_1/coverages/types/mutable_coverage.rb +131 -0
  319. data/lib/candidhealth/pre_encounter/coverages/v_1/coverages/types/subscriber.rb +90 -0
  320. data/lib/candidhealth/pre_encounter/patients/client.rb +32 -0
  321. data/lib/candidhealth/pre_encounter/patients/v_1/client.rb +34 -0
  322. data/lib/candidhealth/pre_encounter/patients/v_1/patients/client.rb +590 -0
  323. data/lib/candidhealth/pre_encounter/patients/v_1/patients/types/contact.rb +135 -0
  324. data/lib/candidhealth/pre_encounter/patients/v_1/patients/types/external_provenance.rb +75 -0
  325. data/lib/candidhealth/pre_encounter/patients/v_1/patients/types/external_provider.rb +116 -0
  326. data/lib/candidhealth/pre_encounter/patients/v_1/patients/types/marital_status.rb +28 -0
  327. data/lib/candidhealth/pre_encounter/patients/v_1/patients/types/mutable_patient.rb +242 -0
  328. data/lib/candidhealth/pre_encounter/patients/v_1/patients/types/patient.rb +294 -0
  329. data/lib/candidhealth/remits/v_1/types/payee.rb +59 -42
  330. data/lib/candidhealth/remits/v_1/types/payee_identifier.rb +84 -80
  331. data/lib/candidhealth/service_facility/client.rb +58 -27
  332. data/lib/candidhealth/service_facility/types/encounter_service_facility.rb +87 -62
  333. data/lib/candidhealth/service_facility/types/encounter_service_facility_base.rb +87 -57
  334. data/lib/candidhealth/service_lines/v_2/types/denial_reason_content.rb +33 -31
  335. data/lib/candidhealth/service_lines/v_2/types/drug_identification.rb +92 -68
  336. data/lib/candidhealth/service_lines/v_2/types/measurement_unit_code.rb +8 -6
  337. data/lib/candidhealth/service_lines/v_2/types/service_id_qualifier.rb +10 -8
  338. data/lib/candidhealth/service_lines/v_2/types/service_line.rb +352 -222
  339. data/lib/candidhealth/service_lines/v_2/types/service_line_adjustment.rb +85 -62
  340. data/lib/candidhealth/service_lines/v_2/types/service_line_create.rb +235 -113
  341. data/lib/candidhealth/service_lines/v_2/types/service_line_denial_reason.rb +49 -35
  342. data/lib/candidhealth/service_lines/v_2/types/service_line_era_data.rb +60 -44
  343. data/lib/candidhealth/tags/types/tag.rb +69 -51
  344. data/lib/candidhealth/tags/types/tag_color_enum.rb +14 -12
  345. data/lib/candidhealth/tags/types/tag_create.rb +62 -45
  346. data/lib/candidhealth/tasks/client.rb +8 -6
  347. data/lib/candidhealth/tasks/commons/types/task_category.rb +45 -43
  348. data/lib/candidhealth/tasks/commons/types/task_status.rb +11 -9
  349. data/lib/candidhealth/tasks/commons/types/task_type.rb +16 -14
  350. data/lib/candidhealth/tasks/v_3/client.rb +208 -96
  351. data/lib/candidhealth/tasks/v_3/types/task.rb +193 -146
  352. data/lib/candidhealth/tasks/v_3/types/task_action.rb +66 -47
  353. data/lib/candidhealth/tasks/v_3/types/task_action_execution_method.rb +65 -59
  354. data/lib/candidhealth/tasks/v_3/types/task_action_type.rb +5 -3
  355. data/lib/candidhealth/tasks/v_3/types/task_actions.rb +47 -35
  356. data/lib/candidhealth/tasks/v_3/types/task_assignment.rb +59 -40
  357. data/lib/candidhealth/tasks/v_3/types/task_create_v_3.rb +100 -77
  358. data/lib/candidhealth/tasks/v_3/types/task_note.rb +83 -62
  359. data/lib/candidhealth/tasks/v_3/types/task_page.rb +70 -47
  360. data/lib/candidhealth/tasks/v_3/types/task_sort_options.rb +25 -23
  361. data/lib/candidhealth/tasks/v_3/types/task_update_v_3.rb +68 -49
  362. data/lib/candidhealth/tasks/v_3/types/task_updated_to_deprecated_status_error_type.rb +47 -33
  363. data/lib/candidhealth/write_offs/client.rb +8 -6
  364. data/lib/candidhealth/write_offs/v_1/client.rb +168 -83
  365. data/lib/candidhealth/write_offs/v_1/types/create_write_offs_response.rb +47 -35
  366. data/lib/candidhealth/write_offs/v_1/types/insurance_write_off.rb +127 -97
  367. data/lib/candidhealth/write_offs/v_1/types/insurance_write_off_create.rb +103 -78
  368. data/lib/candidhealth/write_offs/v_1/types/insurance_write_off_reason.rb +19 -17
  369. data/lib/candidhealth/write_offs/v_1/types/insurance_write_off_target.rb +84 -81
  370. data/lib/candidhealth/write_offs/v_1/types/patient_write_off.rb +111 -84
  371. data/lib/candidhealth/write_offs/v_1/types/patient_write_off_create.rb +87 -65
  372. data/lib/candidhealth/write_offs/v_1/types/patient_write_off_reason.rb +12 -10
  373. data/lib/candidhealth/write_offs/v_1/types/write_off.rb +77 -71
  374. data/lib/candidhealth/write_offs/v_1/types/write_off_create.rb +77 -71
  375. data/lib/candidhealth/write_offs/v_1/types/write_off_sort_field.rb +6 -4
  376. data/lib/candidhealth/write_offs/v_1/types/write_offs_page.rb +70 -47
  377. data/lib/candidhealth/x_12/v_1/types/carc.rb +406 -404
  378. data/lib/candidhealth/x_12/v_1/types/claim_adjustment_reason_code.rb +61 -44
  379. data/lib/candidhealth/x_12/v_1/types/rarc.rb +1063 -1061
  380. data/lib/candidhealth/x_12/v_1/types/remittance_advice_remark_code.rb +44 -33
  381. data/lib/candidhealth.rb +189 -87
  382. data/lib/core/oauth.rb +62 -0
  383. data/lib/environment.rb +8 -2
  384. data/lib/requests.rb +98 -48
  385. data/lib/types_export.rb +30 -53
  386. metadata +42 -55
  387. data/lib/candidhealth/billing_notes/v_2/types/billing_note_id.rb +0 -9
  388. data/lib/candidhealth/commons/types/claim_id.rb +0 -7
  389. data/lib/candidhealth/commons/types/date.rb +0 -7
  390. data/lib/candidhealth/commons/types/decimal.rb +0 -7
  391. data/lib/candidhealth/commons/types/email.rb +0 -7
  392. data/lib/candidhealth/commons/types/encounter_external_id.rb +0 -7
  393. data/lib/candidhealth/commons/types/encounter_id.rb +0 -7
  394. data/lib/candidhealth/commons/types/error_message.rb +0 -7
  395. data/lib/candidhealth/commons/types/invoice_id.rb +0 -7
  396. data/lib/candidhealth/commons/types/link_url.rb +0 -7
  397. data/lib/candidhealth/commons/types/npi.rb +0 -7
  398. data/lib/candidhealth/commons/types/organization_id.rb +0 -7
  399. data/lib/candidhealth/commons/types/page_token.rb +0 -7
  400. data/lib/candidhealth/commons/types/patient_external_id.rb +0 -7
  401. data/lib/candidhealth/commons/types/provider_id.rb +0 -7
  402. data/lib/candidhealth/commons/types/rate_id.rb +0 -7
  403. data/lib/candidhealth/commons/types/service_line_id.rb +0 -7
  404. data/lib/candidhealth/commons/types/task_assignment_id.rb +0 -7
  405. data/lib/candidhealth/commons/types/task_id.rb +0 -7
  406. data/lib/candidhealth/commons/types/task_note_id.rb +0 -7
  407. data/lib/candidhealth/commons/types/tax_id.rb +0 -7
  408. data/lib/candidhealth/commons/types/user_id.rb +0 -7
  409. data/lib/candidhealth/commons/types/work_queue_id.rb +0 -7
  410. data/lib/candidhealth/contracts/v_2/types/contract_id.rb +0 -9
  411. data/lib/candidhealth/contracts/v_2/types/contracting_provider_id.rb +0 -9
  412. data/lib/candidhealth/contracts/v_2/types/rendering_providerid.rb +0 -9
  413. data/lib/candidhealth/diagnoses/types/diagnosis_id.rb +0 -7
  414. data/lib/candidhealth/encounter_providers/v_2/types/provider_id.rb +0 -9
  415. data/lib/candidhealth/encounters/v_4/types/intake_follow_up_id.rb +0 -9
  416. data/lib/candidhealth/encounters/v_4/types/intake_question_id.rb +0 -9
  417. data/lib/candidhealth/encounters/v_4/types/prior_authorization_number.rb +0 -9
  418. data/lib/candidhealth/encounters/v_4/types/rx_cui.rb +0 -9
  419. data/lib/candidhealth/era/types/era_id.rb +0 -7
  420. data/lib/candidhealth/expected_network_status/v_2/types/network_status_check_id.rb +0 -9
  421. data/lib/candidhealth/guarantor/v_1/types/guarantor_id.rb +0 -9
  422. data/lib/candidhealth/identifiers/types/identifier_id.rb +0 -7
  423. data/lib/candidhealth/individual/types/individual_id.rb +0 -7
  424. data/lib/candidhealth/insurance_adjudications/v_1/types/insurance_adjudication_id.rb +0 -9
  425. data/lib/candidhealth/insurance_adjudications/v_1/types/service_line_adjudication_id.rb +0 -9
  426. data/lib/candidhealth/insurance_cards/v_2/types/insurance_card_id.rb +0 -9
  427. data/lib/candidhealth/insurance_payments/v_1/types/insurance_payment_id.rb +0 -9
  428. data/lib/candidhealth/insurance_refunds/v_1/types/insurance_refund_id.rb +0 -9
  429. data/lib/candidhealth/organization_providers/v_2/types/organization_provider_id.rb +0 -9
  430. data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility_id.rb +0 -9
  431. data/lib/candidhealth/patient_payments/v_3/types/patient_payment_id.rb +0 -9
  432. data/lib/candidhealth/patient_payments/v_4/types/patient_payment_id.rb +0 -9
  433. data/lib/candidhealth/patient_refunds/v_1/types/patient_refund_id.rb +0 -9
  434. data/lib/candidhealth/payers/v_3/types/payer_id.rb +0 -9
  435. data/lib/candidhealth/payers/v_3/types/payer_name.rb +0 -9
  436. data/lib/candidhealth/payers/v_3/types/payer_uuid.rb +0 -9
  437. data/lib/candidhealth/service_facility/types/service_facility_id.rb +0 -7
  438. data/lib/candidhealth/tags/types/tag_id.rb +0 -7
  439. data/lib/candidhealth/write_offs/v_1/types/write_off_id.rb +0 -9
@@ -1,248 +1,378 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require_relative "../../../commons/types/procedure_modifier"
4
- require_relative "../../../diagnoses/types/diagnosis_id"
5
4
  require_relative "service_line_era_data"
6
5
  require_relative "service_line_adjustment"
7
6
  require_relative "../../../invoices/types/invoice"
8
7
  require_relative "../../../invoices/v_2/types/invoice_info"
9
8
  require_relative "service_line_denial_reason"
10
9
  require_relative "../../../commons/types/facility_type_code"
11
- require_relative "../../../commons/types/service_line_id"
12
- require_relative "../../../commons/types/decimal"
10
+ require_relative "../../../encounter_providers/v_2/types/encounter_provider"
13
11
  require_relative "../../../commons/types/service_line_units"
14
- require_relative "../../../commons/types/claim_id"
15
12
  require_relative "../../../commons/types/date_range_optional_end"
16
13
  require "date"
14
+ require "ostruct"
17
15
  require "json"
18
16
 
19
17
  module CandidApiClient
20
18
  module ServiceLines
21
19
  module V2
22
- class ServiceLine
23
- attr_reader :modifiers, :charge_amount_cents, :allowed_amount_cents, :insurance_balance_cents,
24
- :patient_balance_cents, :paid_amount_cents, :patient_responsibility_cents, :diagnosis_id_zero, :diagnosis_id_one, :diagnosis_id_two, :diagnosis_id_three, :service_line_era_data, :service_line_manual_adjustments, :related_invoices, :related_invoice_info, :denial_reason, :place_of_service_code, :service_line_id, :procedure_code, :quantity, :units, :claim_id, :date_of_service_range, :description, :date_of_service, :end_date_of_service, :additional_properties
20
+ module Types
21
+ class ServiceLine
22
+ # @return [Array<CandidApiClient::Commons::Types::ProcedureModifier>]
23
+ attr_reader :modifiers
24
+ # @return [Integer]
25
+ attr_reader :charge_amount_cents
26
+ # @return [Integer]
27
+ attr_reader :allowed_amount_cents
28
+ # @return [Integer]
29
+ attr_reader :insurance_balance_cents
30
+ # @return [Integer]
31
+ attr_reader :patient_balance_cents
32
+ # @return [Integer]
33
+ attr_reader :paid_amount_cents
34
+ # @return [Integer]
35
+ attr_reader :patient_responsibility_cents
36
+ # @return [String]
37
+ attr_reader :diagnosis_id_zero
38
+ # @return [String]
39
+ attr_reader :diagnosis_id_one
40
+ # @return [String]
41
+ attr_reader :diagnosis_id_two
42
+ # @return [String]
43
+ attr_reader :diagnosis_id_three
44
+ # @return [CandidApiClient::ServiceLines::V2::Types::ServiceLineEraData]
45
+ attr_reader :service_line_era_data
46
+ # @return [Array<CandidApiClient::ServiceLines::V2::Types::ServiceLineAdjustment>]
47
+ attr_reader :service_line_manual_adjustments
48
+ # @return [Array<CandidApiClient::Invoices::Types::Invoice>]
49
+ attr_reader :related_invoices
50
+ # @return [Array<CandidApiClient::Invoices::V2::Types::InvoiceInfo>]
51
+ attr_reader :related_invoice_info
52
+ # @return [CandidApiClient::ServiceLines::V2::Types::ServiceLineDenialReason]
53
+ attr_reader :denial_reason
54
+ # @return [CandidApiClient::Commons::Types::FacilityTypeCode]
55
+ attr_reader :place_of_service_code
56
+ # @return [CandidApiClient::Commons::Types::FacilityTypeCode]
57
+ attr_reader :place_of_service_code_as_submitted
58
+ # @return [String]
59
+ attr_reader :service_line_id
60
+ # @return [String]
61
+ attr_reader :procedure_code
62
+ # @return [CandidApiClient::EncounterProviders::V2::Types::EncounterProvider]
63
+ attr_reader :referring_provider
64
+ # @return [CandidApiClient::EncounterProviders::V2::Types::EncounterProvider]
65
+ attr_reader :initial_referring_provider
66
+ # @return [CandidApiClient::EncounterProviders::V2::Types::EncounterProvider]
67
+ attr_reader :supervising_provider
68
+ # @return [CandidApiClient::EncounterProviders::V2::Types::EncounterProvider]
69
+ attr_reader :ordering_provider
70
+ # @return [String] String representation of a Decimal that can be parsed by most libraries.
71
+ # A ServiceLine quantity cannot contain more than one digit of precision.
72
+ # Example: 1.1 is valid, 1.11 is not.
73
+ attr_reader :quantity
74
+ # @return [CandidApiClient::Commons::Types::ServiceLineUnits]
75
+ attr_reader :units
76
+ # @return [String]
77
+ attr_reader :claim_id
78
+ # @return [CandidApiClient::Commons::Types::DateRangeOptionalEnd] A range of dates of service for this service line. If the service line is for a
79
+ # single date, the end date
80
+ # will be empty.
81
+ attr_reader :date_of_service_range
82
+ # @return [String] A free-form description to clarify the related data elements and their content.
83
+ # Maps to SV1-01, C003-07 on the 837-P.
84
+ attr_reader :description
85
+ # @return [Date]
86
+ attr_reader :date_of_service
87
+ # @return [Date]
88
+ attr_reader :end_date_of_service
89
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
90
+ attr_reader :additional_properties
91
+ # @return [Object]
92
+ attr_reader :_field_set
93
+ protected :_field_set
25
94
 
26
- # @param modifiers [Array<Commons::ProcedureModifier>]
27
- # @param charge_amount_cents [Integer]
28
- # @param allowed_amount_cents [Integer]
29
- # @param insurance_balance_cents [Integer]
30
- # @param patient_balance_cents [Integer]
31
- # @param paid_amount_cents [Integer]
32
- # @param patient_responsibility_cents [Integer]
33
- # @param diagnosis_id_zero [Diagnoses::DIAGNOSIS_ID]
34
- # @param diagnosis_id_one [Diagnoses::DIAGNOSIS_ID]
35
- # @param diagnosis_id_two [Diagnoses::DIAGNOSIS_ID]
36
- # @param diagnosis_id_three [Diagnoses::DIAGNOSIS_ID]
37
- # @param service_line_era_data [ServiceLines::V2::ServiceLineEraData]
38
- # @param service_line_manual_adjustments [Array<ServiceLines::V2::ServiceLineAdjustment>]
39
- # @param related_invoices [Array<Invoices::Invoice>]
40
- # @param related_invoice_info [Array<Invoices::V2::InvoiceInfo>]
41
- # @param denial_reason [ServiceLines::V2::ServiceLineDenialReason]
42
- # @param place_of_service_code [Commons::FacilityTypeCode]
43
- # @param service_line_id [Commons::SERVICE_LINE_ID]
44
- # @param procedure_code [String]
45
- # @param quantity [Commons::DECIMAL] String representation of a Decimal that can be parsed by most libraries.
46
- # A ServiceLine quantity cannot contain more than one digit of precision.
47
- # Example: 1.1 is valid, 1.11 is not.
48
- # @param units [Commons::ServiceLineUnits]
49
- # @param claim_id [Commons::CLAIM_ID]
50
- # @param date_of_service_range [Commons::DateRangeOptionalEnd] A range of dates of service for this service line. If the service line is for a single date, the end date
51
- # will be empty.
52
- # @param description [String] A free-form description to clarify the related data elements and their content. Maps to SV1-01, C003-07 on the 837-P.
53
- # @param date_of_service [Date]
54
- # @param end_date_of_service [Date]
55
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
56
- # @return [ServiceLines::V2::ServiceLine]
57
- def initialize(service_line_id:, procedure_code:, quantity:, units:, claim_id:, date_of_service_range:, date_of_service:, modifiers: nil, charge_amount_cents: nil, allowed_amount_cents: nil,
58
- insurance_balance_cents: nil, patient_balance_cents: nil, paid_amount_cents: nil, patient_responsibility_cents: nil, diagnosis_id_zero: nil, diagnosis_id_one: nil, diagnosis_id_two: nil, diagnosis_id_three: nil, service_line_era_data: nil, service_line_manual_adjustments: nil, related_invoices: nil, related_invoice_info: nil, denial_reason: nil, place_of_service_code: nil, description: nil, end_date_of_service: nil, additional_properties: nil)
59
- # @type [Array<Commons::ProcedureModifier>]
60
- @modifiers = modifiers
61
- # @type [Integer]
62
- @charge_amount_cents = charge_amount_cents
63
- # @type [Integer]
64
- @allowed_amount_cents = allowed_amount_cents
65
- # @type [Integer]
66
- @insurance_balance_cents = insurance_balance_cents
67
- # @type [Integer]
68
- @patient_balance_cents = patient_balance_cents
69
- # @type [Integer]
70
- @paid_amount_cents = paid_amount_cents
71
- # @type [Integer]
72
- @patient_responsibility_cents = patient_responsibility_cents
73
- # @type [Diagnoses::DIAGNOSIS_ID]
74
- @diagnosis_id_zero = diagnosis_id_zero
75
- # @type [Diagnoses::DIAGNOSIS_ID]
76
- @diagnosis_id_one = diagnosis_id_one
77
- # @type [Diagnoses::DIAGNOSIS_ID]
78
- @diagnosis_id_two = diagnosis_id_two
79
- # @type [Diagnoses::DIAGNOSIS_ID]
80
- @diagnosis_id_three = diagnosis_id_three
81
- # @type [ServiceLines::V2::ServiceLineEraData]
82
- @service_line_era_data = service_line_era_data
83
- # @type [Array<ServiceLines::V2::ServiceLineAdjustment>]
84
- @service_line_manual_adjustments = service_line_manual_adjustments
85
- # @type [Array<Invoices::Invoice>]
86
- @related_invoices = related_invoices
87
- # @type [Array<Invoices::V2::InvoiceInfo>]
88
- @related_invoice_info = related_invoice_info
89
- # @type [ServiceLines::V2::ServiceLineDenialReason]
90
- @denial_reason = denial_reason
91
- # @type [Commons::FacilityTypeCode]
92
- @place_of_service_code = place_of_service_code
93
- # @type [Commons::SERVICE_LINE_ID]
94
- @service_line_id = service_line_id
95
- # @type [String]
96
- @procedure_code = procedure_code
97
- # @type [Commons::DECIMAL] String representation of a Decimal that can be parsed by most libraries.
98
- # A ServiceLine quantity cannot contain more than one digit of precision.
99
- # Example: 1.1 is valid, 1.11 is not.
100
- @quantity = quantity
101
- # @type [Commons::ServiceLineUnits]
102
- @units = units
103
- # @type [Commons::CLAIM_ID]
104
- @claim_id = claim_id
105
- # @type [Commons::DateRangeOptionalEnd] A range of dates of service for this service line. If the service line is for a single date, the end date
106
- # will be empty.
107
- @date_of_service_range = date_of_service_range
108
- # @type [String] A free-form description to clarify the related data elements and their content. Maps to SV1-01, C003-07 on the 837-P.
109
- @description = description
110
- # @type [Date]
111
- @date_of_service = date_of_service
112
- # @type [Date]
113
- @end_date_of_service = end_date_of_service
114
- # @type [OpenStruct] Additional properties unmapped to the current class definition
115
- @additional_properties = additional_properties
116
- end
95
+ OMIT = Object.new
117
96
 
118
- # Deserialize a JSON object to an instance of ServiceLine
119
- #
120
- # @param json_object [JSON]
121
- # @return [ServiceLines::V2::ServiceLine]
122
- def self.from_json(json_object:)
123
- struct = JSON.parse(json_object, object_class: OpenStruct)
124
- parsed_json = JSON.parse(json_object)
125
- modifiers = struct.modifiers
126
- charge_amount_cents = struct.charge_amount_cents
127
- allowed_amount_cents = struct.allowed_amount_cents
128
- insurance_balance_cents = struct.insurance_balance_cents
129
- patient_balance_cents = struct.patient_balance_cents
130
- paid_amount_cents = struct.paid_amount_cents
131
- patient_responsibility_cents = struct.patient_responsibility_cents
132
- diagnosis_id_zero = struct.diagnosis_id_zero
133
- diagnosis_id_one = struct.diagnosis_id_one
134
- diagnosis_id_two = struct.diagnosis_id_two
135
- diagnosis_id_three = struct.diagnosis_id_three
136
- if parsed_json["service_line_era_data"].nil?
137
- service_line_era_data = nil
138
- else
139
- service_line_era_data = parsed_json["service_line_era_data"].to_json
140
- service_line_era_data = ServiceLines::V2::ServiceLineEraData.from_json(json_object: service_line_era_data)
141
- end
142
- service_line_manual_adjustments = parsed_json["service_line_manual_adjustments"]&.map do |v|
143
- v = v.to_json
144
- ServiceLines::V2::ServiceLineAdjustment.from_json(json_object: v)
145
- end
146
- related_invoices = parsed_json["related_invoices"]&.map do |v|
147
- v = v.to_json
148
- Invoices::Invoice.from_json(json_object: v)
149
- end
150
- related_invoice_info = parsed_json["related_invoice_info"]&.map do |v|
151
- v = v.to_json
152
- Invoices::V2::InvoiceInfo.from_json(json_object: v)
153
- end
154
- if parsed_json["denial_reason"].nil?
155
- denial_reason = nil
156
- else
157
- denial_reason = parsed_json["denial_reason"].to_json
158
- denial_reason = ServiceLines::V2::ServiceLineDenialReason.from_json(json_object: denial_reason)
97
+ # @param modifiers [Array<CandidApiClient::Commons::Types::ProcedureModifier>]
98
+ # @param charge_amount_cents [Integer]
99
+ # @param allowed_amount_cents [Integer]
100
+ # @param insurance_balance_cents [Integer]
101
+ # @param patient_balance_cents [Integer]
102
+ # @param paid_amount_cents [Integer]
103
+ # @param patient_responsibility_cents [Integer]
104
+ # @param diagnosis_id_zero [String]
105
+ # @param diagnosis_id_one [String]
106
+ # @param diagnosis_id_two [String]
107
+ # @param diagnosis_id_three [String]
108
+ # @param service_line_era_data [CandidApiClient::ServiceLines::V2::Types::ServiceLineEraData]
109
+ # @param service_line_manual_adjustments [Array<CandidApiClient::ServiceLines::V2::Types::ServiceLineAdjustment>]
110
+ # @param related_invoices [Array<CandidApiClient::Invoices::Types::Invoice>]
111
+ # @param related_invoice_info [Array<CandidApiClient::Invoices::V2::Types::InvoiceInfo>]
112
+ # @param denial_reason [CandidApiClient::ServiceLines::V2::Types::ServiceLineDenialReason]
113
+ # @param place_of_service_code [CandidApiClient::Commons::Types::FacilityTypeCode]
114
+ # @param place_of_service_code_as_submitted [CandidApiClient::Commons::Types::FacilityTypeCode]
115
+ # @param service_line_id [String]
116
+ # @param procedure_code [String]
117
+ # @param referring_provider [CandidApiClient::EncounterProviders::V2::Types::EncounterProvider]
118
+ # @param initial_referring_provider [CandidApiClient::EncounterProviders::V2::Types::EncounterProvider]
119
+ # @param supervising_provider [CandidApiClient::EncounterProviders::V2::Types::EncounterProvider]
120
+ # @param ordering_provider [CandidApiClient::EncounterProviders::V2::Types::EncounterProvider]
121
+ # @param quantity [String] String representation of a Decimal that can be parsed by most libraries.
122
+ # A ServiceLine quantity cannot contain more than one digit of precision.
123
+ # Example: 1.1 is valid, 1.11 is not.
124
+ # @param units [CandidApiClient::Commons::Types::ServiceLineUnits]
125
+ # @param claim_id [String]
126
+ # @param date_of_service_range [CandidApiClient::Commons::Types::DateRangeOptionalEnd] A range of dates of service for this service line. If the service line is for a
127
+ # single date, the end date
128
+ # will be empty.
129
+ # @param description [String] A free-form description to clarify the related data elements and their content.
130
+ # Maps to SV1-01, C003-07 on the 837-P.
131
+ # @param date_of_service [Date]
132
+ # @param end_date_of_service [Date]
133
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
134
+ # @return [CandidApiClient::ServiceLines::V2::Types::ServiceLine]
135
+ def initialize(service_line_id:, procedure_code:, quantity:, units:, claim_id:, date_of_service_range:, date_of_service:, modifiers: OMIT, charge_amount_cents: OMIT, allowed_amount_cents: OMIT,
136
+ insurance_balance_cents: OMIT, patient_balance_cents: OMIT, paid_amount_cents: OMIT, patient_responsibility_cents: OMIT, diagnosis_id_zero: OMIT, diagnosis_id_one: OMIT, diagnosis_id_two: OMIT, diagnosis_id_three: OMIT, service_line_era_data: OMIT, service_line_manual_adjustments: OMIT, related_invoices: OMIT, related_invoice_info: OMIT, denial_reason: OMIT, place_of_service_code: OMIT, place_of_service_code_as_submitted: OMIT, referring_provider: OMIT, initial_referring_provider: OMIT, supervising_provider: OMIT, ordering_provider: OMIT, description: OMIT, end_date_of_service: OMIT, additional_properties: nil)
137
+ @modifiers = modifiers if modifiers != OMIT
138
+ @charge_amount_cents = charge_amount_cents if charge_amount_cents != OMIT
139
+ @allowed_amount_cents = allowed_amount_cents if allowed_amount_cents != OMIT
140
+ @insurance_balance_cents = insurance_balance_cents if insurance_balance_cents != OMIT
141
+ @patient_balance_cents = patient_balance_cents if patient_balance_cents != OMIT
142
+ @paid_amount_cents = paid_amount_cents if paid_amount_cents != OMIT
143
+ @patient_responsibility_cents = patient_responsibility_cents if patient_responsibility_cents != OMIT
144
+ @diagnosis_id_zero = diagnosis_id_zero if diagnosis_id_zero != OMIT
145
+ @diagnosis_id_one = diagnosis_id_one if diagnosis_id_one != OMIT
146
+ @diagnosis_id_two = diagnosis_id_two if diagnosis_id_two != OMIT
147
+ @diagnosis_id_three = diagnosis_id_three if diagnosis_id_three != OMIT
148
+ @service_line_era_data = service_line_era_data if service_line_era_data != OMIT
149
+ if service_line_manual_adjustments != OMIT
150
+ @service_line_manual_adjustments = service_line_manual_adjustments
151
+ end
152
+ @related_invoices = related_invoices if related_invoices != OMIT
153
+ @related_invoice_info = related_invoice_info if related_invoice_info != OMIT
154
+ @denial_reason = denial_reason if denial_reason != OMIT
155
+ @place_of_service_code = place_of_service_code if place_of_service_code != OMIT
156
+ if place_of_service_code_as_submitted != OMIT
157
+ @place_of_service_code_as_submitted = place_of_service_code_as_submitted
158
+ end
159
+ @service_line_id = service_line_id
160
+ @procedure_code = procedure_code
161
+ @referring_provider = referring_provider if referring_provider != OMIT
162
+ @initial_referring_provider = initial_referring_provider if initial_referring_provider != OMIT
163
+ @supervising_provider = supervising_provider if supervising_provider != OMIT
164
+ @ordering_provider = ordering_provider if ordering_provider != OMIT
165
+ @quantity = quantity
166
+ @units = units
167
+ @claim_id = claim_id
168
+ @date_of_service_range = date_of_service_range
169
+ @description = description if description != OMIT
170
+ @date_of_service = date_of_service
171
+ @end_date_of_service = end_date_of_service if end_date_of_service != OMIT
172
+ @additional_properties = additional_properties
173
+ @_field_set = {
174
+ "modifiers": modifiers,
175
+ "charge_amount_cents": charge_amount_cents,
176
+ "allowed_amount_cents": allowed_amount_cents,
177
+ "insurance_balance_cents": insurance_balance_cents,
178
+ "patient_balance_cents": patient_balance_cents,
179
+ "paid_amount_cents": paid_amount_cents,
180
+ "patient_responsibility_cents": patient_responsibility_cents,
181
+ "diagnosis_id_zero": diagnosis_id_zero,
182
+ "diagnosis_id_one": diagnosis_id_one,
183
+ "diagnosis_id_two": diagnosis_id_two,
184
+ "diagnosis_id_three": diagnosis_id_three,
185
+ "service_line_era_data": service_line_era_data,
186
+ "service_line_manual_adjustments": service_line_manual_adjustments,
187
+ "related_invoices": related_invoices,
188
+ "related_invoice_info": related_invoice_info,
189
+ "denial_reason": denial_reason,
190
+ "place_of_service_code": place_of_service_code,
191
+ "place_of_service_code_as_submitted": place_of_service_code_as_submitted,
192
+ "service_line_id": service_line_id,
193
+ "procedure_code": procedure_code,
194
+ "referring_provider": referring_provider,
195
+ "initial_referring_provider": initial_referring_provider,
196
+ "supervising_provider": supervising_provider,
197
+ "ordering_provider": ordering_provider,
198
+ "quantity": quantity,
199
+ "units": units,
200
+ "claim_id": claim_id,
201
+ "date_of_service_range": date_of_service_range,
202
+ "description": description,
203
+ "date_of_service": date_of_service,
204
+ "end_date_of_service": end_date_of_service
205
+ }.reject do |_k, v|
206
+ v == OMIT
207
+ end
159
208
  end
160
- place_of_service_code = struct.place_of_service_code
161
- service_line_id = struct.service_line_id
162
- procedure_code = struct.procedure_code
163
- quantity = struct.quantity
164
- units = struct.units
165
- claim_id = struct.claim_id
166
- if parsed_json["date_of_service_range"].nil?
167
- date_of_service_range = nil
168
- else
169
- date_of_service_range = parsed_json["date_of_service_range"].to_json
170
- date_of_service_range = Commons::DateRangeOptionalEnd.from_json(json_object: date_of_service_range)
209
+
210
+ # Deserialize a JSON object to an instance of ServiceLine
211
+ #
212
+ # @param json_object [String]
213
+ # @return [CandidApiClient::ServiceLines::V2::Types::ServiceLine]
214
+ def self.from_json(json_object:)
215
+ struct = JSON.parse(json_object, object_class: OpenStruct)
216
+ parsed_json = JSON.parse(json_object)
217
+ modifiers = struct["modifiers"]
218
+ charge_amount_cents = struct["charge_amount_cents"]
219
+ allowed_amount_cents = struct["allowed_amount_cents"]
220
+ insurance_balance_cents = struct["insurance_balance_cents"]
221
+ patient_balance_cents = struct["patient_balance_cents"]
222
+ paid_amount_cents = struct["paid_amount_cents"]
223
+ patient_responsibility_cents = struct["patient_responsibility_cents"]
224
+ diagnosis_id_zero = struct["diagnosis_id_zero"]
225
+ diagnosis_id_one = struct["diagnosis_id_one"]
226
+ diagnosis_id_two = struct["diagnosis_id_two"]
227
+ diagnosis_id_three = struct["diagnosis_id_three"]
228
+ if parsed_json["service_line_era_data"].nil?
229
+ service_line_era_data = nil
230
+ else
231
+ service_line_era_data = parsed_json["service_line_era_data"].to_json
232
+ service_line_era_data = CandidApiClient::ServiceLines::V2::Types::ServiceLineEraData.from_json(json_object: service_line_era_data)
233
+ end
234
+ service_line_manual_adjustments = parsed_json["service_line_manual_adjustments"]&.map do |item|
235
+ item = item.to_json
236
+ CandidApiClient::ServiceLines::V2::Types::ServiceLineAdjustment.from_json(json_object: item)
237
+ end
238
+ related_invoices = parsed_json["related_invoices"]&.map do |item|
239
+ item = item.to_json
240
+ CandidApiClient::Invoices::Types::Invoice.from_json(json_object: item)
241
+ end
242
+ related_invoice_info = parsed_json["related_invoice_info"]&.map do |item|
243
+ item = item.to_json
244
+ CandidApiClient::Invoices::V2::Types::InvoiceInfo.from_json(json_object: item)
245
+ end
246
+ if parsed_json["denial_reason"].nil?
247
+ denial_reason = nil
248
+ else
249
+ denial_reason = parsed_json["denial_reason"].to_json
250
+ denial_reason = CandidApiClient::ServiceLines::V2::Types::ServiceLineDenialReason.from_json(json_object: denial_reason)
251
+ end
252
+ place_of_service_code = struct["place_of_service_code"]
253
+ place_of_service_code_as_submitted = struct["place_of_service_code_as_submitted"]
254
+ service_line_id = struct["service_line_id"]
255
+ procedure_code = struct["procedure_code"]
256
+ if parsed_json["referring_provider"].nil?
257
+ referring_provider = nil
258
+ else
259
+ referring_provider = parsed_json["referring_provider"].to_json
260
+ referring_provider = CandidApiClient::EncounterProviders::V2::Types::EncounterProvider.from_json(json_object: referring_provider)
261
+ end
262
+ if parsed_json["initial_referring_provider"].nil?
263
+ initial_referring_provider = nil
264
+ else
265
+ initial_referring_provider = parsed_json["initial_referring_provider"].to_json
266
+ initial_referring_provider = CandidApiClient::EncounterProviders::V2::Types::EncounterProvider.from_json(json_object: initial_referring_provider)
267
+ end
268
+ if parsed_json["supervising_provider"].nil?
269
+ supervising_provider = nil
270
+ else
271
+ supervising_provider = parsed_json["supervising_provider"].to_json
272
+ supervising_provider = CandidApiClient::EncounterProviders::V2::Types::EncounterProvider.from_json(json_object: supervising_provider)
273
+ end
274
+ if parsed_json["ordering_provider"].nil?
275
+ ordering_provider = nil
276
+ else
277
+ ordering_provider = parsed_json["ordering_provider"].to_json
278
+ ordering_provider = CandidApiClient::EncounterProviders::V2::Types::EncounterProvider.from_json(json_object: ordering_provider)
279
+ end
280
+ quantity = struct["quantity"]
281
+ units = struct["units"]
282
+ claim_id = struct["claim_id"]
283
+ if parsed_json["date_of_service_range"].nil?
284
+ date_of_service_range = nil
285
+ else
286
+ date_of_service_range = parsed_json["date_of_service_range"].to_json
287
+ date_of_service_range = CandidApiClient::Commons::Types::DateRangeOptionalEnd.from_json(json_object: date_of_service_range)
288
+ end
289
+ description = struct["description"]
290
+ date_of_service = (Date.parse(parsed_json["date_of_service"]) unless parsed_json["date_of_service"].nil?)
291
+ end_date_of_service = unless parsed_json["end_date_of_service"].nil?
292
+ Date.parse(parsed_json["end_date_of_service"])
293
+ end
294
+ new(
295
+ modifiers: modifiers,
296
+ charge_amount_cents: charge_amount_cents,
297
+ allowed_amount_cents: allowed_amount_cents,
298
+ insurance_balance_cents: insurance_balance_cents,
299
+ patient_balance_cents: patient_balance_cents,
300
+ paid_amount_cents: paid_amount_cents,
301
+ patient_responsibility_cents: patient_responsibility_cents,
302
+ diagnosis_id_zero: diagnosis_id_zero,
303
+ diagnosis_id_one: diagnosis_id_one,
304
+ diagnosis_id_two: diagnosis_id_two,
305
+ diagnosis_id_three: diagnosis_id_three,
306
+ service_line_era_data: service_line_era_data,
307
+ service_line_manual_adjustments: service_line_manual_adjustments,
308
+ related_invoices: related_invoices,
309
+ related_invoice_info: related_invoice_info,
310
+ denial_reason: denial_reason,
311
+ place_of_service_code: place_of_service_code,
312
+ place_of_service_code_as_submitted: place_of_service_code_as_submitted,
313
+ service_line_id: service_line_id,
314
+ procedure_code: procedure_code,
315
+ referring_provider: referring_provider,
316
+ initial_referring_provider: initial_referring_provider,
317
+ supervising_provider: supervising_provider,
318
+ ordering_provider: ordering_provider,
319
+ quantity: quantity,
320
+ units: units,
321
+ claim_id: claim_id,
322
+ date_of_service_range: date_of_service_range,
323
+ description: description,
324
+ date_of_service: date_of_service,
325
+ end_date_of_service: end_date_of_service,
326
+ additional_properties: struct
327
+ )
171
328
  end
172
- description = struct.description
173
- date_of_service = (Date.parse(parsed_json["date_of_service"]) unless parsed_json["date_of_service"].nil?)
174
- end_date_of_service = unless parsed_json["end_date_of_service"].nil?
175
- Date.parse(parsed_json["end_date_of_service"])
176
- end
177
- new(modifiers: modifiers, charge_amount_cents: charge_amount_cents,
178
- allowed_amount_cents: allowed_amount_cents, insurance_balance_cents: insurance_balance_cents, patient_balance_cents: patient_balance_cents, paid_amount_cents: paid_amount_cents, patient_responsibility_cents: patient_responsibility_cents, diagnosis_id_zero: diagnosis_id_zero, diagnosis_id_one: diagnosis_id_one, diagnosis_id_two: diagnosis_id_two, diagnosis_id_three: diagnosis_id_three, service_line_era_data: service_line_era_data, service_line_manual_adjustments: service_line_manual_adjustments, related_invoices: related_invoices, related_invoice_info: related_invoice_info, denial_reason: denial_reason, place_of_service_code: place_of_service_code, service_line_id: service_line_id, procedure_code: procedure_code, quantity: quantity, units: units, claim_id: claim_id, date_of_service_range: date_of_service_range, description: description, date_of_service: date_of_service, end_date_of_service: end_date_of_service, additional_properties: struct)
179
- end
180
329
 
181
- # Serialize an instance of ServiceLine to a JSON object
182
- #
183
- # @return [JSON]
184
- def to_json(*_args)
185
- {
186
- "modifiers": @modifiers,
187
- "charge_amount_cents": @charge_amount_cents,
188
- "allowed_amount_cents": @allowed_amount_cents,
189
- "insurance_balance_cents": @insurance_balance_cents,
190
- "patient_balance_cents": @patient_balance_cents,
191
- "paid_amount_cents": @paid_amount_cents,
192
- "patient_responsibility_cents": @patient_responsibility_cents,
193
- "diagnosis_id_zero": @diagnosis_id_zero,
194
- "diagnosis_id_one": @diagnosis_id_one,
195
- "diagnosis_id_two": @diagnosis_id_two,
196
- "diagnosis_id_three": @diagnosis_id_three,
197
- "service_line_era_data": @service_line_era_data,
198
- "service_line_manual_adjustments": @service_line_manual_adjustments,
199
- "related_invoices": @related_invoices,
200
- "related_invoice_info": @related_invoice_info,
201
- "denial_reason": @denial_reason,
202
- "place_of_service_code": @place_of_service_code,
203
- "service_line_id": @service_line_id,
204
- "procedure_code": @procedure_code,
205
- "quantity": @quantity,
206
- "units": @units,
207
- "claim_id": @claim_id,
208
- "date_of_service_range": @date_of_service_range,
209
- "description": @description,
210
- "date_of_service": @date_of_service,
211
- "end_date_of_service": @end_date_of_service
212
- }.to_json
213
- end
330
+ # Serialize an instance of ServiceLine to a JSON object
331
+ #
332
+ # @return [String]
333
+ def to_json(*_args)
334
+ @_field_set&.to_json
335
+ end
214
336
 
215
- # Leveraged for Union-type generation, validate_raw attempts to parse the given hash and check each fields type against the current object's property definitions.
216
- #
217
- # @param obj [Object]
218
- # @return [Void]
219
- def self.validate_raw(obj:)
220
- obj.modifiers&.is_a?(Array) != false || raise("Passed value for field obj.modifiers is not the expected type, validation failed.")
221
- obj.charge_amount_cents&.is_a?(Integer) != false || raise("Passed value for field obj.charge_amount_cents is not the expected type, validation failed.")
222
- obj.allowed_amount_cents&.is_a?(Integer) != false || raise("Passed value for field obj.allowed_amount_cents is not the expected type, validation failed.")
223
- obj.insurance_balance_cents&.is_a?(Integer) != false || raise("Passed value for field obj.insurance_balance_cents is not the expected type, validation failed.")
224
- obj.patient_balance_cents&.is_a?(Integer) != false || raise("Passed value for field obj.patient_balance_cents is not the expected type, validation failed.")
225
- obj.paid_amount_cents&.is_a?(Integer) != false || raise("Passed value for field obj.paid_amount_cents is not the expected type, validation failed.")
226
- obj.patient_responsibility_cents&.is_a?(Integer) != false || raise("Passed value for field obj.patient_responsibility_cents is not the expected type, validation failed.")
227
- obj.diagnosis_id_zero&.is_a?(UUID) != false || raise("Passed value for field obj.diagnosis_id_zero is not the expected type, validation failed.")
228
- obj.diagnosis_id_one&.is_a?(UUID) != false || raise("Passed value for field obj.diagnosis_id_one is not the expected type, validation failed.")
229
- obj.diagnosis_id_two&.is_a?(UUID) != false || raise("Passed value for field obj.diagnosis_id_two is not the expected type, validation failed.")
230
- obj.diagnosis_id_three&.is_a?(UUID) != false || raise("Passed value for field obj.diagnosis_id_three is not the expected type, validation failed.")
231
- obj.service_line_era_data.nil? || ServiceLines::V2::ServiceLineEraData.validate_raw(obj: obj.service_line_era_data)
232
- obj.service_line_manual_adjustments&.is_a?(Array) != false || raise("Passed value for field obj.service_line_manual_adjustments is not the expected type, validation failed.")
233
- obj.related_invoices&.is_a?(Array) != false || raise("Passed value for field obj.related_invoices is not the expected type, validation failed.")
234
- obj.related_invoice_info&.is_a?(Array) != false || raise("Passed value for field obj.related_invoice_info is not the expected type, validation failed.")
235
- obj.denial_reason.nil? || ServiceLines::V2::ServiceLineDenialReason.validate_raw(obj: obj.denial_reason)
236
- obj.place_of_service_code&.is_a?(Commons::FacilityTypeCode) != false || raise("Passed value for field obj.place_of_service_code is not the expected type, validation failed.")
237
- obj.service_line_id.is_a?(UUID) != false || raise("Passed value for field obj.service_line_id is not the expected type, validation failed.")
238
- obj.procedure_code.is_a?(String) != false || raise("Passed value for field obj.procedure_code is not the expected type, validation failed.")
239
- obj.quantity.is_a?(String) != false || raise("Passed value for field obj.quantity is not the expected type, validation failed.")
240
- obj.units.is_a?(Commons::ServiceLineUnits) != false || raise("Passed value for field obj.units is not the expected type, validation failed.")
241
- obj.claim_id.is_a?(UUID) != false || raise("Passed value for field obj.claim_id is not the expected type, validation failed.")
242
- Commons::DateRangeOptionalEnd.validate_raw(obj: obj.date_of_service_range)
243
- obj.description&.is_a?(String) != false || raise("Passed value for field obj.description is not the expected type, validation failed.")
244
- obj.date_of_service.is_a?(Date) != false || raise("Passed value for field obj.date_of_service is not the expected type, validation failed.")
245
- obj.end_date_of_service&.is_a?(Date) != false || raise("Passed value for field obj.end_date_of_service is not the expected type, validation failed.")
337
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
338
+ # hash and check each fields type against the current object's property
339
+ # definitions.
340
+ #
341
+ # @param obj [Object]
342
+ # @return [Void]
343
+ def self.validate_raw(obj:)
344
+ obj.modifiers&.is_a?(Array) != false || raise("Passed value for field obj.modifiers is not the expected type, validation failed.")
345
+ obj.charge_amount_cents&.is_a?(Integer) != false || raise("Passed value for field obj.charge_amount_cents is not the expected type, validation failed.")
346
+ obj.allowed_amount_cents&.is_a?(Integer) != false || raise("Passed value for field obj.allowed_amount_cents is not the expected type, validation failed.")
347
+ obj.insurance_balance_cents&.is_a?(Integer) != false || raise("Passed value for field obj.insurance_balance_cents is not the expected type, validation failed.")
348
+ obj.patient_balance_cents&.is_a?(Integer) != false || raise("Passed value for field obj.patient_balance_cents is not the expected type, validation failed.")
349
+ obj.paid_amount_cents&.is_a?(Integer) != false || raise("Passed value for field obj.paid_amount_cents is not the expected type, validation failed.")
350
+ obj.patient_responsibility_cents&.is_a?(Integer) != false || raise("Passed value for field obj.patient_responsibility_cents is not the expected type, validation failed.")
351
+ obj.diagnosis_id_zero&.is_a?(String) != false || raise("Passed value for field obj.diagnosis_id_zero is not the expected type, validation failed.")
352
+ obj.diagnosis_id_one&.is_a?(String) != false || raise("Passed value for field obj.diagnosis_id_one is not the expected type, validation failed.")
353
+ obj.diagnosis_id_two&.is_a?(String) != false || raise("Passed value for field obj.diagnosis_id_two is not the expected type, validation failed.")
354
+ obj.diagnosis_id_three&.is_a?(String) != false || raise("Passed value for field obj.diagnosis_id_three is not the expected type, validation failed.")
355
+ obj.service_line_era_data.nil? || CandidApiClient::ServiceLines::V2::Types::ServiceLineEraData.validate_raw(obj: obj.service_line_era_data)
356
+ obj.service_line_manual_adjustments&.is_a?(Array) != false || raise("Passed value for field obj.service_line_manual_adjustments is not the expected type, validation failed.")
357
+ obj.related_invoices&.is_a?(Array) != false || raise("Passed value for field obj.related_invoices is not the expected type, validation failed.")
358
+ obj.related_invoice_info&.is_a?(Array) != false || raise("Passed value for field obj.related_invoice_info is not the expected type, validation failed.")
359
+ obj.denial_reason.nil? || CandidApiClient::ServiceLines::V2::Types::ServiceLineDenialReason.validate_raw(obj: obj.denial_reason)
360
+ obj.place_of_service_code&.is_a?(CandidApiClient::Commons::Types::FacilityTypeCode) != false || raise("Passed value for field obj.place_of_service_code is not the expected type, validation failed.")
361
+ obj.place_of_service_code_as_submitted&.is_a?(CandidApiClient::Commons::Types::FacilityTypeCode) != false || raise("Passed value for field obj.place_of_service_code_as_submitted is not the expected type, validation failed.")
362
+ obj.service_line_id.is_a?(String) != false || raise("Passed value for field obj.service_line_id is not the expected type, validation failed.")
363
+ obj.procedure_code.is_a?(String) != false || raise("Passed value for field obj.procedure_code is not the expected type, validation failed.")
364
+ obj.referring_provider.nil? || CandidApiClient::EncounterProviders::V2::Types::EncounterProvider.validate_raw(obj: obj.referring_provider)
365
+ obj.initial_referring_provider.nil? || CandidApiClient::EncounterProviders::V2::Types::EncounterProvider.validate_raw(obj: obj.initial_referring_provider)
366
+ obj.supervising_provider.nil? || CandidApiClient::EncounterProviders::V2::Types::EncounterProvider.validate_raw(obj: obj.supervising_provider)
367
+ obj.ordering_provider.nil? || CandidApiClient::EncounterProviders::V2::Types::EncounterProvider.validate_raw(obj: obj.ordering_provider)
368
+ obj.quantity.is_a?(String) != false || raise("Passed value for field obj.quantity is not the expected type, validation failed.")
369
+ obj.units.is_a?(CandidApiClient::Commons::Types::ServiceLineUnits) != false || raise("Passed value for field obj.units is not the expected type, validation failed.")
370
+ obj.claim_id.is_a?(String) != false || raise("Passed value for field obj.claim_id is not the expected type, validation failed.")
371
+ CandidApiClient::Commons::Types::DateRangeOptionalEnd.validate_raw(obj: obj.date_of_service_range)
372
+ obj.description&.is_a?(String) != false || raise("Passed value for field obj.description is not the expected type, validation failed.")
373
+ obj.date_of_service.is_a?(Date) != false || raise("Passed value for field obj.date_of_service is not the expected type, validation failed.")
374
+ obj.end_date_of_service&.is_a?(Date) != false || raise("Passed value for field obj.end_date_of_service is not the expected type, validation failed.")
375
+ end
246
376
  end
247
377
  end
248
378
  end