candidhealth 0.21.0 → 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 +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 +44 -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
@@ -1,62 +1,82 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "intake_question_id"
4
3
  require_relative "intake_response_and_follow_ups"
4
+ require "ostruct"
5
5
  require "json"
6
6
 
7
7
  module CandidApiClient
8
8
  module Encounters
9
9
  module V4
10
- class IntakeQuestion
11
- attr_reader :id, :text, :responses, :additional_properties
10
+ module Types
11
+ class IntakeQuestion
12
+ # @return [String]
13
+ attr_reader :id
14
+ # @return [String]
15
+ attr_reader :text
16
+ # @return [Array<CandidApiClient::Encounters::V4::Types::IntakeResponseAndFollowUps>]
17
+ attr_reader :responses
18
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
19
+ attr_reader :additional_properties
20
+ # @return [Object]
21
+ attr_reader :_field_set
22
+ protected :_field_set
12
23
 
13
- # @param id [Encounters::V4::INTAKE_QUESTION_ID]
14
- # @param text [String]
15
- # @param responses [Array<Encounters::V4::IntakeResponseAndFollowUps>]
16
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
17
- # @return [Encounters::V4::IntakeQuestion]
18
- def initialize(id:, text:, responses: nil, additional_properties: nil)
19
- # @type [Encounters::V4::INTAKE_QUESTION_ID]
20
- @id = id
21
- # @type [String]
22
- @text = text
23
- # @type [Array<Encounters::V4::IntakeResponseAndFollowUps>]
24
- @responses = responses
25
- # @type [OpenStruct] Additional properties unmapped to the current class definition
26
- @additional_properties = additional_properties
27
- end
24
+ OMIT = Object.new
28
25
 
29
- # Deserialize a JSON object to an instance of IntakeQuestion
30
- #
31
- # @param json_object [JSON]
32
- # @return [Encounters::V4::IntakeQuestion]
33
- def self.from_json(json_object:)
34
- struct = JSON.parse(json_object, object_class: OpenStruct)
35
- parsed_json = JSON.parse(json_object)
36
- id = struct.id
37
- text = struct.text
38
- responses = parsed_json["responses"]&.map do |v|
39
- v = v.to_json
40
- Encounters::V4::IntakeResponseAndFollowUps.from_json(json_object: v)
26
+ # @param id [String]
27
+ # @param text [String]
28
+ # @param responses [Array<CandidApiClient::Encounters::V4::Types::IntakeResponseAndFollowUps>]
29
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
30
+ # @return [CandidApiClient::Encounters::V4::Types::IntakeQuestion]
31
+ def initialize(id:, text:, responses: OMIT, additional_properties: nil)
32
+ @id = id
33
+ @text = text
34
+ @responses = responses if responses != OMIT
35
+ @additional_properties = additional_properties
36
+ @_field_set = { "id": id, "text": text, "responses": responses }.reject do |_k, v|
37
+ v == OMIT
38
+ end
41
39
  end
42
- new(id: id, text: text, responses: responses, additional_properties: struct)
43
- end
44
40
 
45
- # Serialize an instance of IntakeQuestion to a JSON object
46
- #
47
- # @return [JSON]
48
- def to_json(*_args)
49
- { "id": @id, "text": @text, "responses": @responses }.to_json
50
- end
41
+ # Deserialize a JSON object to an instance of IntakeQuestion
42
+ #
43
+ # @param json_object [String]
44
+ # @return [CandidApiClient::Encounters::V4::Types::IntakeQuestion]
45
+ def self.from_json(json_object:)
46
+ struct = JSON.parse(json_object, object_class: OpenStruct)
47
+ parsed_json = JSON.parse(json_object)
48
+ id = struct["id"]
49
+ text = struct["text"]
50
+ responses = parsed_json["responses"]&.map do |item|
51
+ item = item.to_json
52
+ CandidApiClient::Encounters::V4::Types::IntakeResponseAndFollowUps.from_json(json_object: item)
53
+ end
54
+ new(
55
+ id: id,
56
+ text: text,
57
+ responses: responses,
58
+ additional_properties: struct
59
+ )
60
+ end
51
61
 
52
- # 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.
53
- #
54
- # @param obj [Object]
55
- # @return [Void]
56
- def self.validate_raw(obj:)
57
- obj.id.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
58
- obj.text.is_a?(String) != false || raise("Passed value for field obj.text is not the expected type, validation failed.")
59
- obj.responses&.is_a?(Array) != false || raise("Passed value for field obj.responses is not the expected type, validation failed.")
62
+ # Serialize an instance of IntakeQuestion to a JSON object
63
+ #
64
+ # @return [String]
65
+ def to_json(*_args)
66
+ @_field_set&.to_json
67
+ end
68
+
69
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
70
+ # hash and check each fields type against the current object's property
71
+ # definitions.
72
+ #
73
+ # @param obj [Object]
74
+ # @return [Void]
75
+ def self.validate_raw(obj:)
76
+ obj.id.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
77
+ obj.text.is_a?(String) != false || raise("Passed value for field obj.text is not the expected type, validation failed.")
78
+ obj.responses&.is_a?(Array) != false || raise("Passed value for field obj.responses is not the expected type, validation failed.")
79
+ end
60
80
  end
61
81
  end
62
82
  end
@@ -1,56 +1,75 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require_relative "intake_follow_up"
4
+ require "ostruct"
4
5
  require "json"
5
6
 
6
7
  module CandidApiClient
7
8
  module Encounters
8
9
  module V4
9
- class IntakeResponseAndFollowUps
10
- attr_reader :response, :follow_ups, :additional_properties
10
+ module Types
11
+ class IntakeResponseAndFollowUps
12
+ # @return [String]
13
+ attr_reader :response
14
+ # @return [Array<CandidApiClient::Encounters::V4::Types::IntakeFollowUp>]
15
+ attr_reader :follow_ups
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 response [String]
13
- # @param follow_ups [Array<Encounters::V4::IntakeFollowUp>]
14
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
15
- # @return [Encounters::V4::IntakeResponseAndFollowUps]
16
- def initialize(response: nil, follow_ups: nil, additional_properties: nil)
17
- # @type [String]
18
- @response = response
19
- # @type [Array<Encounters::V4::IntakeFollowUp>]
20
- @follow_ups = follow_ups
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 IntakeResponseAndFollowUps
26
- #
27
- # @param json_object [JSON]
28
- # @return [Encounters::V4::IntakeResponseAndFollowUps]
29
- def self.from_json(json_object:)
30
- struct = JSON.parse(json_object, object_class: OpenStruct)
31
- parsed_json = JSON.parse(json_object)
32
- response = struct.response
33
- follow_ups = parsed_json["follow_ups"]&.map do |v|
34
- v = v.to_json
35
- Encounters::V4::IntakeFollowUp.from_json(json_object: v)
24
+ # @param response [String]
25
+ # @param follow_ups [Array<CandidApiClient::Encounters::V4::Types::IntakeFollowUp>]
26
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
27
+ # @return [CandidApiClient::Encounters::V4::Types::IntakeResponseAndFollowUps]
28
+ def initialize(response: OMIT, follow_ups: OMIT, additional_properties: nil)
29
+ @response = response if response != OMIT
30
+ @follow_ups = follow_ups if follow_ups != OMIT
31
+ @additional_properties = additional_properties
32
+ @_field_set = { "response": response, "follow_ups": follow_ups }.reject do |_k, v|
33
+ v == OMIT
34
+ end
36
35
  end
37
- new(response: response, follow_ups: follow_ups, additional_properties: struct)
38
- end
39
36
 
40
- # Serialize an instance of IntakeResponseAndFollowUps to a JSON object
41
- #
42
- # @return [JSON]
43
- def to_json(*_args)
44
- { "response": @response, "follow_ups": @follow_ups }.to_json
45
- end
37
+ # Deserialize a JSON object to an instance of IntakeResponseAndFollowUps
38
+ #
39
+ # @param json_object [String]
40
+ # @return [CandidApiClient::Encounters::V4::Types::IntakeResponseAndFollowUps]
41
+ def self.from_json(json_object:)
42
+ struct = JSON.parse(json_object, object_class: OpenStruct)
43
+ parsed_json = JSON.parse(json_object)
44
+ response = struct["response"]
45
+ follow_ups = parsed_json["follow_ups"]&.map do |item|
46
+ item = item.to_json
47
+ CandidApiClient::Encounters::V4::Types::IntakeFollowUp.from_json(json_object: item)
48
+ end
49
+ new(
50
+ response: response,
51
+ follow_ups: follow_ups,
52
+ additional_properties: struct
53
+ )
54
+ end
46
55
 
47
- # 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.
48
- #
49
- # @param obj [Object]
50
- # @return [Void]
51
- def self.validate_raw(obj:)
52
- obj.response&.is_a?(String) != false || raise("Passed value for field obj.response is not the expected type, validation failed.")
53
- obj.follow_ups&.is_a?(Array) != false || raise("Passed value for field obj.follow_ups is not the expected type, validation failed.")
56
+ # Serialize an instance of IntakeResponseAndFollowUps 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.response&.is_a?(String) != false || raise("Passed value for field obj.response is not the expected type, validation failed.")
71
+ obj.follow_ups&.is_a?(Array) != false || raise("Passed value for field obj.follow_ups is not the expected type, validation failed.")
72
+ end
54
73
  end
55
74
  end
56
75
  end
@@ -3,83 +3,109 @@
3
3
  require_relative "intervention_category"
4
4
  require_relative "medication"
5
5
  require_relative "lab"
6
+ require "ostruct"
6
7
  require "json"
7
8
 
8
9
  module CandidApiClient
9
10
  module Encounters
10
11
  module V4
11
- class Intervention
12
- attr_reader :name, :category, :description, :medication, :labs, :additional_properties
12
+ module Types
13
+ class Intervention
14
+ # @return [String]
15
+ attr_reader :name
16
+ # @return [CandidApiClient::Encounters::V4::Types::InterventionCategory]
17
+ attr_reader :category
18
+ # @return [String] "Examples: 'Birth Control LAC', 'Tracking', 'Stress Management', 'Supplement',
19
+ # 'Labs'"
20
+ attr_reader :description
21
+ # @return [CandidApiClient::Encounters::V4::Types::Medication] Required when `type` is `allopathic`.
22
+ attr_reader :medication
23
+ # @return [Array<CandidApiClient::Encounters::V4::Types::Lab>] Required when `type` is `tests`.
24
+ attr_reader :labs
25
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
26
+ attr_reader :additional_properties
27
+ # @return [Object]
28
+ attr_reader :_field_set
29
+ protected :_field_set
13
30
 
14
- # @param name [String]
15
- # @param category [Encounters::V4::InterventionCategory]
16
- # @param description [String] "Examples: 'Birth Control LAC', 'Tracking', 'Stress Management', 'Supplement', 'Labs'"
17
- # @param medication [Encounters::V4::Medication] Required when `type` is `allopathic`.
18
- # @param labs [Array<Encounters::V4::Lab>] Required when `type` is `tests`.
19
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
20
- # @return [Encounters::V4::Intervention]
21
- def initialize(name:, category:, description: nil, medication: nil, labs: nil, additional_properties: nil)
22
- # @type [String]
23
- @name = name
24
- # @type [Encounters::V4::InterventionCategory]
25
- @category = category
26
- # @type [String] "Examples: 'Birth Control LAC', 'Tracking', 'Stress Management', 'Supplement', 'Labs'"
27
- @description = description
28
- # @type [Encounters::V4::Medication] Required when `type` is `allopathic`.
29
- @medication = medication
30
- # @type [Array<Encounters::V4::Lab>] Required when `type` is `tests`.
31
- @labs = labs
32
- # @type [OpenStruct] Additional properties unmapped to the current class definition
33
- @additional_properties = additional_properties
34
- end
31
+ OMIT = Object.new
35
32
 
36
- # Deserialize a JSON object to an instance of Intervention
37
- #
38
- # @param json_object [JSON]
39
- # @return [Encounters::V4::Intervention]
40
- def self.from_json(json_object:)
41
- struct = JSON.parse(json_object, object_class: OpenStruct)
42
- parsed_json = JSON.parse(json_object)
43
- name = struct.name
44
- category = struct.category
45
- description = struct.description
46
- if parsed_json["medication"].nil?
47
- medication = nil
48
- else
49
- medication = parsed_json["medication"].to_json
50
- medication = Encounters::V4::Medication.from_json(json_object: medication)
33
+ # @param name [String]
34
+ # @param category [CandidApiClient::Encounters::V4::Types::InterventionCategory]
35
+ # @param description [String] "Examples: 'Birth Control LAC', 'Tracking', 'Stress Management', 'Supplement',
36
+ # 'Labs'"
37
+ # @param medication [CandidApiClient::Encounters::V4::Types::Medication] Required when `type` is `allopathic`.
38
+ # @param labs [Array<CandidApiClient::Encounters::V4::Types::Lab>] Required when `type` is `tests`.
39
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
40
+ # @return [CandidApiClient::Encounters::V4::Types::Intervention]
41
+ def initialize(name:, category:, description: OMIT, medication: OMIT, labs: OMIT, additional_properties: nil)
42
+ @name = name
43
+ @category = category
44
+ @description = description if description != OMIT
45
+ @medication = medication if medication != OMIT
46
+ @labs = labs if labs != OMIT
47
+ @additional_properties = additional_properties
48
+ @_field_set = {
49
+ "name": name,
50
+ "category": category,
51
+ "description": description,
52
+ "medication": medication,
53
+ "labs": labs
54
+ }.reject do |_k, v|
55
+ v == OMIT
56
+ end
51
57
  end
52
- labs = parsed_json["labs"]&.map do |v|
53
- v = v.to_json
54
- Encounters::V4::Lab.from_json(json_object: v)
58
+
59
+ # Deserialize a JSON object to an instance of Intervention
60
+ #
61
+ # @param json_object [String]
62
+ # @return [CandidApiClient::Encounters::V4::Types::Intervention]
63
+ def self.from_json(json_object:)
64
+ struct = JSON.parse(json_object, object_class: OpenStruct)
65
+ parsed_json = JSON.parse(json_object)
66
+ name = struct["name"]
67
+ category = struct["category"]
68
+ description = struct["description"]
69
+ if parsed_json["medication"].nil?
70
+ medication = nil
71
+ else
72
+ medication = parsed_json["medication"].to_json
73
+ medication = CandidApiClient::Encounters::V4::Types::Medication.from_json(json_object: medication)
74
+ end
75
+ labs = parsed_json["labs"]&.map do |item|
76
+ item = item.to_json
77
+ CandidApiClient::Encounters::V4::Types::Lab.from_json(json_object: item)
78
+ end
79
+ new(
80
+ name: name,
81
+ category: category,
82
+ description: description,
83
+ medication: medication,
84
+ labs: labs,
85
+ additional_properties: struct
86
+ )
55
87
  end
56
- new(name: name, category: category, description: description, medication: medication, labs: labs,
57
- additional_properties: struct)
58
- end
59
88
 
60
- # Serialize an instance of Intervention to a JSON object
61
- #
62
- # @return [JSON]
63
- def to_json(*_args)
64
- {
65
- "name": @name,
66
- "category": @category,
67
- "description": @description,
68
- "medication": @medication,
69
- "labs": @labs
70
- }.to_json
71
- end
89
+ # Serialize an instance of Intervention to a JSON object
90
+ #
91
+ # @return [String]
92
+ def to_json(*_args)
93
+ @_field_set&.to_json
94
+ end
72
95
 
73
- # 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.
74
- #
75
- # @param obj [Object]
76
- # @return [Void]
77
- def self.validate_raw(obj:)
78
- obj.name.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
79
- obj.category.is_a?(Encounters::V4::InterventionCategory) != false || raise("Passed value for field obj.category is not the expected type, validation failed.")
80
- obj.description&.is_a?(String) != false || raise("Passed value for field obj.description is not the expected type, validation failed.")
81
- obj.medication.nil? || Encounters::V4::Medication.validate_raw(obj: obj.medication)
82
- obj.labs&.is_a?(Array) != false || raise("Passed value for field obj.labs is not the expected type, validation failed.")
96
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
97
+ # hash and check each fields type against the current object's property
98
+ # definitions.
99
+ #
100
+ # @param obj [Object]
101
+ # @return [Void]
102
+ def self.validate_raw(obj:)
103
+ obj.name.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
104
+ obj.category.is_a?(CandidApiClient::Encounters::V4::Types::InterventionCategory) != false || raise("Passed value for field obj.category is not the expected type, validation failed.")
105
+ obj.description&.is_a?(String) != false || raise("Passed value for field obj.description is not the expected type, validation failed.")
106
+ obj.medication.nil? || CandidApiClient::Encounters::V4::Types::Medication.validate_raw(obj: obj.medication)
107
+ obj.labs&.is_a?(Array) != false || raise("Passed value for field obj.labs is not the expected type, validation failed.")
108
+ end
83
109
  end
84
110
  end
85
111
  end
@@ -3,11 +3,13 @@
3
3
  module CandidApiClient
4
4
  module Encounters
5
5
  module V4
6
- class InterventionCategory
7
- ALLOPATHIC = "allopathic"
8
- NATUROPATHIC = "naturopathic"
9
- TESTS = "tests"
10
- LIFESTYLE = "lifestyle"
6
+ module Types
7
+ class InterventionCategory
8
+ ALLOPATHIC = "allopathic"
9
+ NATUROPATHIC = "naturopathic"
10
+ TESTS = "tests"
11
+ LIFESTYLE = "lifestyle"
12
+ end
11
13
  end
12
14
  end
13
15
  end
@@ -1,58 +1,78 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require_relative "lab_code_type"
4
+ require "ostruct"
4
5
  require "json"
5
6
 
6
7
  module CandidApiClient
7
8
  module Encounters
8
9
  module V4
9
- class Lab
10
- attr_reader :name, :code, :code_type, :additional_properties
10
+ module Types
11
+ class Lab
12
+ # @return [String]
13
+ attr_reader :name
14
+ # @return [String]
15
+ attr_reader :code
16
+ # @return [CandidApiClient::Encounters::V4::Types::LabCodeType]
17
+ attr_reader :code_type
18
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
19
+ attr_reader :additional_properties
20
+ # @return [Object]
21
+ attr_reader :_field_set
22
+ protected :_field_set
11
23
 
12
- # @param name [String]
13
- # @param code [String]
14
- # @param code_type [Encounters::V4::LabCodeType]
15
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
16
- # @return [Encounters::V4::Lab]
17
- def initialize(name:, code: nil, code_type: nil, additional_properties: nil)
18
- # @type [String]
19
- @name = name
20
- # @type [String]
21
- @code = code
22
- # @type [Encounters::V4::LabCodeType]
23
- @code_type = code_type
24
- # @type [OpenStruct] Additional properties unmapped to the current class definition
25
- @additional_properties = additional_properties
26
- end
24
+ OMIT = Object.new
27
25
 
28
- # Deserialize a JSON object to an instance of Lab
29
- #
30
- # @param json_object [JSON]
31
- # @return [Encounters::V4::Lab]
32
- def self.from_json(json_object:)
33
- struct = JSON.parse(json_object, object_class: OpenStruct)
34
- JSON.parse(json_object)
35
- name = struct.name
36
- code = struct.code
37
- code_type = struct.code_type
38
- new(name: name, code: code, code_type: code_type, additional_properties: struct)
39
- end
26
+ # @param name [String]
27
+ # @param code [String]
28
+ # @param code_type [CandidApiClient::Encounters::V4::Types::LabCodeType]
29
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
30
+ # @return [CandidApiClient::Encounters::V4::Types::Lab]
31
+ def initialize(name:, code: OMIT, code_type: OMIT, additional_properties: nil)
32
+ @name = name
33
+ @code = code if code != OMIT
34
+ @code_type = code_type if code_type != OMIT
35
+ @additional_properties = additional_properties
36
+ @_field_set = { "name": name, "code": code, "code_type": code_type }.reject do |_k, v|
37
+ v == OMIT
38
+ end
39
+ end
40
40
 
41
- # Serialize an instance of Lab to a JSON object
42
- #
43
- # @return [JSON]
44
- def to_json(*_args)
45
- { "name": @name, "code": @code, "code_type": @code_type }.to_json
46
- end
41
+ # Deserialize a JSON object to an instance of Lab
42
+ #
43
+ # @param json_object [String]
44
+ # @return [CandidApiClient::Encounters::V4::Types::Lab]
45
+ def self.from_json(json_object:)
46
+ struct = JSON.parse(json_object, object_class: OpenStruct)
47
+ name = struct["name"]
48
+ code = struct["code"]
49
+ code_type = struct["code_type"]
50
+ new(
51
+ name: name,
52
+ code: code,
53
+ code_type: code_type,
54
+ additional_properties: struct
55
+ )
56
+ end
57
+
58
+ # Serialize an instance of Lab to a JSON object
59
+ #
60
+ # @return [String]
61
+ def to_json(*_args)
62
+ @_field_set&.to_json
63
+ end
47
64
 
48
- # 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.
49
- #
50
- # @param obj [Object]
51
- # @return [Void]
52
- def self.validate_raw(obj:)
53
- obj.name.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
54
- obj.code&.is_a?(String) != false || raise("Passed value for field obj.code is not the expected type, validation failed.")
55
- obj.code_type&.is_a?(Encounters::V4::LabCodeType) != false || raise("Passed value for field obj.code_type is not the expected type, validation failed.")
65
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
66
+ # hash and check each fields type against the current object's property
67
+ # definitions.
68
+ #
69
+ # @param obj [Object]
70
+ # @return [Void]
71
+ def self.validate_raw(obj:)
72
+ obj.name.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
73
+ obj.code&.is_a?(String) != false || raise("Passed value for field obj.code is not the expected type, validation failed.")
74
+ obj.code_type&.is_a?(CandidApiClient::Encounters::V4::Types::LabCodeType) != false || raise("Passed value for field obj.code_type is not the expected type, validation failed.")
75
+ end
56
76
  end
57
77
  end
58
78
  end
@@ -3,9 +3,11 @@
3
3
  module CandidApiClient
4
4
  module Encounters
5
5
  module V4
6
- class LabCodeType
7
- QUEST = "quest"
8
- LABCORP = "labcorp"
6
+ module Types
7
+ class LabCodeType
8
+ QUEST = "quest"
9
+ LABCORP = "labcorp"
10
+ end
9
11
  end
10
12
  end
11
13
  end