candidhealth 0.20.1 → 0.24.0.pre.2a6d412

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 (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 +1056 -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 +732 -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 +239 -59
  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 +88 -0
  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 +18 -0
  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 +32 -53
  386. metadata +46 -57
  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
@@ -0,0 +1,294 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "date"
4
+ require_relative "../../../../common/types/human_name"
5
+ require_relative "../../../../common/types/gender"
6
+ require_relative "marital_status"
7
+ require_relative "../../../../common/types/address"
8
+ require_relative "../../../../common/types/contact_point"
9
+ require_relative "external_provenance"
10
+ require_relative "contact"
11
+ require_relative "external_provider"
12
+ require "ostruct"
13
+ require "json"
14
+
15
+ module CandidApiClient
16
+ module PreEncounter
17
+ module Patients
18
+ module V1
19
+ module Patients
20
+ module Types
21
+ # A patient object with immutable server-owned properties.
22
+ class Patient
23
+ # @return [String]
24
+ attr_reader :id
25
+ # @return [String] The organization that owns this patient.
26
+ attr_reader :organization_id
27
+ # @return [Boolean] True if the patient is deactivated. Deactivated patients are not returned in
28
+ # search results but are returned in all other endpoints including scan.
29
+ attr_reader :deactivated
30
+ # @return [Integer] The version of the patient. Any update to any property of a patient object will
31
+ # create a new version.
32
+ attr_reader :version
33
+ # @return [DateTime]
34
+ attr_reader :updated_at
35
+ # @return [String] The user ID of the user who last updated the patient.
36
+ attr_reader :updating_user_id
37
+ # @return [CandidApiClient::PreEncounter::Common::Types::HumanName]
38
+ attr_reader :name
39
+ # @return [Array<CandidApiClient::PreEncounter::Common::Types::HumanName>] Other names for the patient.
40
+ attr_reader :other_names
41
+ # @return [CandidApiClient::PreEncounter::Common::Types::Gender]
42
+ attr_reader :gender
43
+ # @return [Date]
44
+ attr_reader :birth_date
45
+ # @return [CandidApiClient::PreEncounter::Patients::V1::Patients::Types::MaritalStatus]
46
+ attr_reader :marital_status
47
+ # @return [DateTime] Time of death for the patient. Leave unset if the patient is not deceased.
48
+ attr_reader :deceased
49
+ # @return [Integer] The number of siblings the patient was born with. Leave unset if the patient was
50
+ # not part of a multiple birth.
51
+ attr_reader :multiple_birth
52
+ # @return [CandidApiClient::PreEncounter::Common::Types::Address] The primary address for the patient.
53
+ attr_reader :primary_address
54
+ # @return [Array<CandidApiClient::PreEncounter::Common::Types::Address>] Other addresses for the patient.
55
+ attr_reader :other_addresses
56
+ # @return [CandidApiClient::PreEncounter::Common::Types::ContactPoint] The primary phone number for the patient.
57
+ attr_reader :primary_telecom
58
+ # @return [Array<CandidApiClient::PreEncounter::Common::Types::ContactPoint>] Other phone numbers for the patient.
59
+ attr_reader :other_telecoms
60
+ # @return [String]
61
+ attr_reader :photo
62
+ # @return [String]
63
+ attr_reader :language
64
+ # @return [CandidApiClient::PreEncounter::Patients::V1::Patients::Types::ExternalProvenance] Information about the upstream system that owns this patient data. Leave unset
65
+ # if Candid owns patient data.
66
+ attr_reader :external_provenance
67
+ # @return [Array<CandidApiClient::PreEncounter::Patients::V1::Patients::Types::Contact>] Contacts for the patient.
68
+ attr_reader :contacts
69
+ # @return [Array<CandidApiClient::PreEncounter::Patients::V1::Patients::Types::ExternalProvider>]
70
+ attr_reader :general_practitioners
71
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
72
+ attr_reader :additional_properties
73
+ # @return [Object]
74
+ attr_reader :_field_set
75
+ protected :_field_set
76
+
77
+ OMIT = Object.new
78
+
79
+ # @param id [String]
80
+ # @param organization_id [String] The organization that owns this patient.
81
+ # @param deactivated [Boolean] True if the patient is deactivated. Deactivated patients are not returned in
82
+ # search results but are returned in all other endpoints including scan.
83
+ # @param version [Integer] The version of the patient. Any update to any property of a patient object will
84
+ # create a new version.
85
+ # @param updated_at [DateTime]
86
+ # @param updating_user_id [String] The user ID of the user who last updated the patient.
87
+ # @param name [CandidApiClient::PreEncounter::Common::Types::HumanName]
88
+ # @param other_names [Array<CandidApiClient::PreEncounter::Common::Types::HumanName>] Other names for the patient.
89
+ # @param gender [CandidApiClient::PreEncounter::Common::Types::Gender]
90
+ # @param birth_date [Date]
91
+ # @param marital_status [CandidApiClient::PreEncounter::Patients::V1::Patients::Types::MaritalStatus]
92
+ # @param deceased [DateTime] Time of death for the patient. Leave unset if the patient is not deceased.
93
+ # @param multiple_birth [Integer] The number of siblings the patient was born with. Leave unset if the patient was
94
+ # not part of a multiple birth.
95
+ # @param primary_address [CandidApiClient::PreEncounter::Common::Types::Address] The primary address for the patient.
96
+ # @param other_addresses [Array<CandidApiClient::PreEncounter::Common::Types::Address>] Other addresses for the patient.
97
+ # @param primary_telecom [CandidApiClient::PreEncounter::Common::Types::ContactPoint] The primary phone number for the patient.
98
+ # @param other_telecoms [Array<CandidApiClient::PreEncounter::Common::Types::ContactPoint>] Other phone numbers for the patient.
99
+ # @param photo [String]
100
+ # @param language [String]
101
+ # @param external_provenance [CandidApiClient::PreEncounter::Patients::V1::Patients::Types::ExternalProvenance] Information about the upstream system that owns this patient data. Leave unset
102
+ # if Candid owns patient data.
103
+ # @param contacts [Array<CandidApiClient::PreEncounter::Patients::V1::Patients::Types::Contact>] Contacts for the patient.
104
+ # @param general_practitioners [Array<CandidApiClient::PreEncounter::Patients::V1::Patients::Types::ExternalProvider>]
105
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
106
+ # @return [CandidApiClient::PreEncounter::Patients::V1::Patients::Types::Patient]
107
+ def initialize(id:, organization_id:, deactivated:, version:, updated_at:, updating_user_id:, name:,
108
+ other_names:, gender:, birth_date:, primary_address:, other_addresses:, primary_telecom:, other_telecoms:, contacts:, general_practitioners:, marital_status: OMIT, deceased: OMIT, multiple_birth: OMIT, photo: OMIT, language: OMIT, external_provenance: OMIT, additional_properties: nil)
109
+ @id = id
110
+ @organization_id = organization_id
111
+ @deactivated = deactivated
112
+ @version = version
113
+ @updated_at = updated_at
114
+ @updating_user_id = updating_user_id
115
+ @name = name
116
+ @other_names = other_names
117
+ @gender = gender
118
+ @birth_date = birth_date
119
+ @marital_status = marital_status if marital_status != OMIT
120
+ @deceased = deceased if deceased != OMIT
121
+ @multiple_birth = multiple_birth if multiple_birth != OMIT
122
+ @primary_address = primary_address
123
+ @other_addresses = other_addresses
124
+ @primary_telecom = primary_telecom
125
+ @other_telecoms = other_telecoms
126
+ @photo = photo if photo != OMIT
127
+ @language = language if language != OMIT
128
+ @external_provenance = external_provenance if external_provenance != OMIT
129
+ @contacts = contacts
130
+ @general_practitioners = general_practitioners
131
+ @additional_properties = additional_properties
132
+ @_field_set = {
133
+ "id": id,
134
+ "organization_id": organization_id,
135
+ "deactivated": deactivated,
136
+ "version": version,
137
+ "updated_at": updated_at,
138
+ "updating_user_id": updating_user_id,
139
+ "name": name,
140
+ "other_names": other_names,
141
+ "gender": gender,
142
+ "birth_date": birth_date,
143
+ "marital_status": marital_status,
144
+ "deceased": deceased,
145
+ "multiple_birth": multiple_birth,
146
+ "primary_address": primary_address,
147
+ "other_addresses": other_addresses,
148
+ "primary_telecom": primary_telecom,
149
+ "other_telecoms": other_telecoms,
150
+ "photo": photo,
151
+ "language": language,
152
+ "external_provenance": external_provenance,
153
+ "contacts": contacts,
154
+ "general_practitioners": general_practitioners
155
+ }.reject do |_k, v|
156
+ v == OMIT
157
+ end
158
+ end
159
+
160
+ # Deserialize a JSON object to an instance of Patient
161
+ #
162
+ # @param json_object [String]
163
+ # @return [CandidApiClient::PreEncounter::Patients::V1::Patients::Types::Patient]
164
+ def self.from_json(json_object:)
165
+ struct = JSON.parse(json_object, object_class: OpenStruct)
166
+ parsed_json = JSON.parse(json_object)
167
+ id = struct["id"]
168
+ organization_id = struct["organization_id"]
169
+ deactivated = struct["deactivated"]
170
+ version = struct["version"]
171
+ updated_at = (DateTime.parse(parsed_json["updated_at"]) unless parsed_json["updated_at"].nil?)
172
+ updating_user_id = struct["updating_user_id"]
173
+ if parsed_json["name"].nil?
174
+ name = nil
175
+ else
176
+ name = parsed_json["name"].to_json
177
+ name = CandidApiClient::PreEncounter::Common::Types::HumanName.from_json(json_object: name)
178
+ end
179
+ other_names = parsed_json["other_names"]&.map do |item|
180
+ item = item.to_json
181
+ CandidApiClient::PreEncounter::Common::Types::HumanName.from_json(json_object: item)
182
+ end
183
+ gender = struct["gender"]
184
+ birth_date = (Date.parse(parsed_json["birth_date"]) unless parsed_json["birth_date"].nil?)
185
+ marital_status = struct["marital_status"]
186
+ deceased = (DateTime.parse(parsed_json["deceased"]) unless parsed_json["deceased"].nil?)
187
+ multiple_birth = struct["multiple_birth"]
188
+ if parsed_json["primary_address"].nil?
189
+ primary_address = nil
190
+ else
191
+ primary_address = parsed_json["primary_address"].to_json
192
+ primary_address = CandidApiClient::PreEncounter::Common::Types::Address.from_json(json_object: primary_address)
193
+ end
194
+ other_addresses = parsed_json["other_addresses"]&.map do |item|
195
+ item = item.to_json
196
+ CandidApiClient::PreEncounter::Common::Types::Address.from_json(json_object: item)
197
+ end
198
+ if parsed_json["primary_telecom"].nil?
199
+ primary_telecom = nil
200
+ else
201
+ primary_telecom = parsed_json["primary_telecom"].to_json
202
+ primary_telecom = CandidApiClient::PreEncounter::Common::Types::ContactPoint.from_json(json_object: primary_telecom)
203
+ end
204
+ other_telecoms = parsed_json["other_telecoms"]&.map do |item|
205
+ item = item.to_json
206
+ CandidApiClient::PreEncounter::Common::Types::ContactPoint.from_json(json_object: item)
207
+ end
208
+ photo = struct["photo"]
209
+ language = struct["language"]
210
+ if parsed_json["external_provenance"].nil?
211
+ external_provenance = nil
212
+ else
213
+ external_provenance = parsed_json["external_provenance"].to_json
214
+ external_provenance = CandidApiClient::PreEncounter::Patients::V1::Patients::Types::ExternalProvenance.from_json(json_object: external_provenance)
215
+ end
216
+ contacts = parsed_json["contacts"]&.map do |item|
217
+ item = item.to_json
218
+ CandidApiClient::PreEncounter::Patients::V1::Patients::Types::Contact.from_json(json_object: item)
219
+ end
220
+ general_practitioners = parsed_json["general_practitioners"]&.map do |item|
221
+ item = item.to_json
222
+ CandidApiClient::PreEncounter::Patients::V1::Patients::Types::ExternalProvider.from_json(json_object: item)
223
+ end
224
+ new(
225
+ id: id,
226
+ organization_id: organization_id,
227
+ deactivated: deactivated,
228
+ version: version,
229
+ updated_at: updated_at,
230
+ updating_user_id: updating_user_id,
231
+ name: name,
232
+ other_names: other_names,
233
+ gender: gender,
234
+ birth_date: birth_date,
235
+ marital_status: marital_status,
236
+ deceased: deceased,
237
+ multiple_birth: multiple_birth,
238
+ primary_address: primary_address,
239
+ other_addresses: other_addresses,
240
+ primary_telecom: primary_telecom,
241
+ other_telecoms: other_telecoms,
242
+ photo: photo,
243
+ language: language,
244
+ external_provenance: external_provenance,
245
+ contacts: contacts,
246
+ general_practitioners: general_practitioners,
247
+ additional_properties: struct
248
+ )
249
+ end
250
+
251
+ # Serialize an instance of Patient to a JSON object
252
+ #
253
+ # @return [String]
254
+ def to_json(*_args)
255
+ @_field_set&.to_json
256
+ end
257
+
258
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
259
+ # hash and check each fields type against the current object's property
260
+ # definitions.
261
+ #
262
+ # @param obj [Object]
263
+ # @return [Void]
264
+ def self.validate_raw(obj:)
265
+ obj.id.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
266
+ obj.organization_id.is_a?(String) != false || raise("Passed value for field obj.organization_id is not the expected type, validation failed.")
267
+ obj.deactivated.is_a?(Boolean) != false || raise("Passed value for field obj.deactivated is not the expected type, validation failed.")
268
+ obj.version.is_a?(Integer) != false || raise("Passed value for field obj.version is not the expected type, validation failed.")
269
+ obj.updated_at.is_a?(DateTime) != false || raise("Passed value for field obj.updated_at is not the expected type, validation failed.")
270
+ obj.updating_user_id.is_a?(String) != false || raise("Passed value for field obj.updating_user_id is not the expected type, validation failed.")
271
+ CandidApiClient::PreEncounter::Common::Types::HumanName.validate_raw(obj: obj.name)
272
+ obj.other_names.is_a?(Array) != false || raise("Passed value for field obj.other_names is not the expected type, validation failed.")
273
+ obj.gender.is_a?(CandidApiClient::PreEncounter::Common::Types::Gender) != false || raise("Passed value for field obj.gender is not the expected type, validation failed.")
274
+ obj.birth_date.is_a?(Date) != false || raise("Passed value for field obj.birth_date is not the expected type, validation failed.")
275
+ obj.marital_status&.is_a?(CandidApiClient::PreEncounter::Patients::V1::Patients::Types::MaritalStatus) != false || raise("Passed value for field obj.marital_status is not the expected type, validation failed.")
276
+ obj.deceased&.is_a?(DateTime) != false || raise("Passed value for field obj.deceased is not the expected type, validation failed.")
277
+ obj.multiple_birth&.is_a?(Integer) != false || raise("Passed value for field obj.multiple_birth is not the expected type, validation failed.")
278
+ CandidApiClient::PreEncounter::Common::Types::Address.validate_raw(obj: obj.primary_address)
279
+ obj.other_addresses.is_a?(Array) != false || raise("Passed value for field obj.other_addresses is not the expected type, validation failed.")
280
+ CandidApiClient::PreEncounter::Common::Types::ContactPoint.validate_raw(obj: obj.primary_telecom)
281
+ obj.other_telecoms.is_a?(Array) != false || raise("Passed value for field obj.other_telecoms is not the expected type, validation failed.")
282
+ obj.photo&.is_a?(String) != false || raise("Passed value for field obj.photo is not the expected type, validation failed.")
283
+ obj.language&.is_a?(String) != false || raise("Passed value for field obj.language is not the expected type, validation failed.")
284
+ obj.external_provenance.nil? || CandidApiClient::PreEncounter::Patients::V1::Patients::Types::ExternalProvenance.validate_raw(obj: obj.external_provenance)
285
+ obj.contacts.is_a?(Array) != false || raise("Passed value for field obj.contacts is not the expected type, validation failed.")
286
+ obj.general_practitioners.is_a?(Array) != false || raise("Passed value for field obj.general_practitioners is not the expected type, validation failed.")
287
+ end
288
+ end
289
+ end
290
+ end
291
+ end
292
+ end
293
+ end
294
+ end
@@ -1,58 +1,75 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require_relative "payee_identifier"
4
+ require "ostruct"
4
5
  require "json"
5
6
 
6
7
  module CandidApiClient
7
8
  module Remits
8
9
  module V1
9
- class Payee
10
- attr_reader :payee_name, :payee_identifier, :additional_properties
10
+ module Types
11
+ class Payee
12
+ # @return [String]
13
+ attr_reader :payee_name
14
+ # @return [CandidApiClient::Remits::V1::Types::PayeeIdentifier]
15
+ attr_reader :payee_identifier
16
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
17
+ attr_reader :additional_properties
18
+ # @return [Object]
19
+ attr_reader :_field_set
20
+ protected :_field_set
11
21
 
12
- # @param payee_name [String]
13
- # @param payee_identifier [Remits::V1::PayeeIdentifier]
14
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
15
- # @return [Remits::V1::Payee]
16
- def initialize(payee_name:, payee_identifier:, additional_properties: nil)
17
- # @type [String]
18
- @payee_name = payee_name
19
- # @type [Remits::V1::PayeeIdentifier]
20
- @payee_identifier = payee_identifier
21
- # @type [OpenStruct] Additional properties unmapped to the current class definition
22
- @additional_properties = additional_properties
23
- end
22
+ OMIT = Object.new
24
23
 
25
- # Deserialize a JSON object to an instance of Payee
26
- #
27
- # @param json_object [JSON]
28
- # @return [Remits::V1::Payee]
29
- def self.from_json(json_object:)
30
- struct = JSON.parse(json_object, object_class: OpenStruct)
31
- parsed_json = JSON.parse(json_object)
32
- payee_name = struct.payee_name
33
- if parsed_json["payee_identifier"].nil?
34
- payee_identifier = nil
35
- else
36
- payee_identifier = parsed_json["payee_identifier"].to_json
37
- payee_identifier = Remits::V1::PayeeIdentifier.from_json(json_object: payee_identifier)
24
+ # @param payee_name [String]
25
+ # @param payee_identifier [CandidApiClient::Remits::V1::Types::PayeeIdentifier]
26
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
27
+ # @return [CandidApiClient::Remits::V1::Types::Payee]
28
+ def initialize(payee_name:, payee_identifier:, additional_properties: nil)
29
+ @payee_name = payee_name
30
+ @payee_identifier = payee_identifier
31
+ @additional_properties = additional_properties
32
+ @_field_set = { "payee_name": payee_name, "payee_identifier": payee_identifier }
38
33
  end
39
- new(payee_name: payee_name, payee_identifier: payee_identifier, additional_properties: struct)
40
- end
41
34
 
42
- # Serialize an instance of Payee to a JSON object
43
- #
44
- # @return [JSON]
45
- def to_json(*_args)
46
- { "payee_name": @payee_name, "payee_identifier": @payee_identifier }.to_json
47
- end
35
+ # Deserialize a JSON object to an instance of Payee
36
+ #
37
+ # @param json_object [String]
38
+ # @return [CandidApiClient::Remits::V1::Types::Payee]
39
+ def self.from_json(json_object:)
40
+ struct = JSON.parse(json_object, object_class: OpenStruct)
41
+ parsed_json = JSON.parse(json_object)
42
+ payee_name = struct["payee_name"]
43
+ if parsed_json["payee_identifier"].nil?
44
+ payee_identifier = nil
45
+ else
46
+ payee_identifier = parsed_json["payee_identifier"].to_json
47
+ payee_identifier = CandidApiClient::Remits::V1::Types::PayeeIdentifier.from_json(json_object: payee_identifier)
48
+ end
49
+ new(
50
+ payee_name: payee_name,
51
+ payee_identifier: payee_identifier,
52
+ additional_properties: struct
53
+ )
54
+ end
48
55
 
49
- # 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.
50
- #
51
- # @param obj [Object]
52
- # @return [Void]
53
- def self.validate_raw(obj:)
54
- obj.payee_name.is_a?(String) != false || raise("Passed value for field obj.payee_name is not the expected type, validation failed.")
55
- Remits::V1::PayeeIdentifier.validate_raw(obj: obj.payee_identifier)
56
+ # Serialize an instance of Payee to a JSON object
57
+ #
58
+ # @return [String]
59
+ def to_json(*_args)
60
+ @_field_set&.to_json
61
+ end
62
+
63
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
64
+ # hash and check each fields type against the current object's property
65
+ # definitions.
66
+ #
67
+ # @param obj [Object]
68
+ # @return [Void]
69
+ def self.validate_raw(obj:)
70
+ obj.payee_name.is_a?(String) != false || raise("Passed value for field obj.payee_name is not the expected type, validation failed.")
71
+ CandidApiClient::Remits::V1::Types::PayeeIdentifier.validate_raw(obj: obj.payee_identifier)
72
+ end
56
73
  end
57
74
  end
58
75
  end
@@ -1,100 +1,104 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "json"
4
- require_relative "../../../commons/types/npi"
5
- require_relative "../../../commons/types/tax_id"
6
4
 
7
5
  module CandidApiClient
8
6
  module Remits
9
7
  module V1
10
- class PayeeIdentifier
11
- attr_reader :member, :discriminant
8
+ module Types
9
+ class PayeeIdentifier
10
+ # @return [Object]
11
+ attr_reader :member
12
+ # @return [String]
13
+ attr_reader :discriminant
12
14
 
13
- private_class_method :new
14
- alias kind_of? is_a?
15
- # @param member [Object]
16
- # @param discriminant [String]
17
- # @return [Remits::V1::PayeeIdentifier]
18
- def initialize(member:, discriminant:)
19
- # @type [Object]
20
- @member = member
21
- # @type [String]
22
- @discriminant = discriminant
23
- end
15
+ private_class_method :new
16
+ alias kind_of? is_a?
24
17
 
25
- # Deserialize a JSON object to an instance of PayeeIdentifier
26
- #
27
- # @param json_object [JSON]
28
- # @return [Remits::V1::PayeeIdentifier]
29
- def self.from_json(json_object:)
30
- struct = JSON.parse(json_object, object_class: OpenStruct)
31
- member = case struct.type
32
- when "npi"
33
- json_object.value
34
- when "tin"
35
- json_object.value
36
- when "cms_plan_id"
37
- json_object.value
38
- else
39
- json_object
40
- end
41
- new(member: member, discriminant: struct.type)
42
- end
18
+ # @param member [Object]
19
+ # @param discriminant [String]
20
+ # @return [CandidApiClient::Remits::V1::Types::PayeeIdentifier]
21
+ def initialize(member:, discriminant:)
22
+ @member = member
23
+ @discriminant = discriminant
24
+ end
43
25
 
44
- # For Union Types, to_json functionality is delegated to the wrapped member.
45
- #
46
- # @return [JSON]
47
- def to_json(*_args)
48
- case @discriminant
49
- when "npi"
50
- when "tin"
51
- when "cms_plan_id"
26
+ # Deserialize a JSON object to an instance of PayeeIdentifier
27
+ #
28
+ # @param json_object [String]
29
+ # @return [CandidApiClient::Remits::V1::Types::PayeeIdentifier]
30
+ def self.from_json(json_object:)
31
+ struct = JSON.parse(json_object, object_class: OpenStruct)
32
+ member = case struct.type
33
+ when "npi"
34
+ json_object.value
35
+ when "tin"
36
+ json_object.value
37
+ when "cms_plan_id"
38
+ json_object.value
39
+ else
40
+ json_object
41
+ end
42
+ new(member: member, discriminant: struct.type)
52
43
  end
53
- { "type": @discriminant, "value": @member }.to_json
54
- @member.to_json
55
- end
56
44
 
57
- # 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.
58
- #
59
- # @param obj [Object]
60
- # @return [Void]
61
- def self.validate_raw(obj:)
62
- case obj.type
63
- when "npi"
64
- obj.is_a?(String) != false || raise("Passed value for field obj is not the expected type, validation failed.")
65
- when "tin"
66
- obj.is_a?(String) != false || raise("Passed value for field obj is not the expected type, validation failed.")
67
- when "cms_plan_id"
68
- obj.is_a?(String) != false || raise("Passed value for field obj is not the expected type, validation failed.")
69
- else
70
- raise("Passed value matched no type within the union, validation failed.")
45
+ # For Union Types, to_json functionality is delegated to the wrapped member.
46
+ #
47
+ # @return [String]
48
+ def to_json(*_args)
49
+ case @discriminant
50
+ when "npi"
51
+ when "tin"
52
+ when "cms_plan_id"
53
+ end
54
+ { "type": @discriminant, "value": @member }.to_json
55
+ @member.to_json
71
56
  end
72
- end
73
57
 
74
- # For Union Types, is_a? functionality is delegated to the wrapped member.
75
- #
76
- # @param obj [Object]
77
- # @return [Boolean]
78
- def is_a?(obj)
79
- @member.is_a?(obj)
80
- end
58
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
59
+ # hash and check each fields type against the current object's property
60
+ # definitions.
61
+ #
62
+ # @param obj [Object]
63
+ # @return [Void]
64
+ def self.validate_raw(obj:)
65
+ case obj.type
66
+ when "npi"
67
+ obj.is_a?(String) != false || raise("Passed value for field obj is not the expected type, validation failed.")
68
+ when "tin"
69
+ obj.is_a?(String) != false || raise("Passed value for field obj is not the expected type, validation failed.")
70
+ when "cms_plan_id"
71
+ obj.is_a?(String) != false || raise("Passed value for field obj is not the expected type, validation failed.")
72
+ else
73
+ raise("Passed value matched no type within the union, validation failed.")
74
+ end
75
+ end
81
76
 
82
- # @param member [Commons::NPI]
83
- # @return [Remits::V1::PayeeIdentifier]
84
- def self.npi(member:)
85
- new(member: member, discriminant: "npi")
86
- end
77
+ # For Union Types, is_a? functionality is delegated to the wrapped member.
78
+ #
79
+ # @param obj [Object]
80
+ # @return [Boolean]
81
+ def is_a?(obj)
82
+ @member.is_a?(obj)
83
+ end
87
84
 
88
- # @param member [Commons::TAX_ID]
89
- # @return [Remits::V1::PayeeIdentifier]
90
- def self.tin(member:)
91
- new(member: member, discriminant: "tin")
92
- end
85
+ # @param member [String]
86
+ # @return [CandidApiClient::Remits::V1::Types::PayeeIdentifier]
87
+ def self.npi(member:)
88
+ new(member: member, discriminant: "npi")
89
+ end
93
90
 
94
- # @param member [String]
95
- # @return [Remits::V1::PayeeIdentifier]
96
- def self.cms_plan_id(member:)
97
- new(member: member, discriminant: "cms_plan_id")
91
+ # @param member [String]
92
+ # @return [CandidApiClient::Remits::V1::Types::PayeeIdentifier]
93
+ def self.tin(member:)
94
+ new(member: member, discriminant: "tin")
95
+ end
96
+
97
+ # @param member [String]
98
+ # @return [CandidApiClient::Remits::V1::Types::PayeeIdentifier]
99
+ def self.cms_plan_id(member:)
100
+ new(member: member, discriminant: "cms_plan_id")
101
+ end
98
102
  end
99
103
  end
100
104
  end