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
@@ -1,102 +1,142 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require_relative "../../../commons/types/street_address_long_zip"
4
+ require "ostruct"
4
5
  require "json"
5
6
 
6
7
  module CandidApiClient
7
8
  module EncounterProviders
8
9
  module V2
9
- # The billing provider is the provider or business entity submitting the claim.
10
- # Billing provider may be, but is not necessarily, the same person/NPI as the rendering provider.
11
- # From a payer's perspective, this represents the person or entity being reimbursed.
12
- # When a contract exists with the target payer, the billing provider should be the entity contracted with the payer.
13
- # In some circumstances, this will be an individual provider. In that case, submit that provider's NPI and the
14
- # tax ID (TIN) that the provider gave to the payer during contracting.
15
- # In other cases, the billing entity will be a medical group. If so, submit the group NPI and the group's tax ID.
16
- # Box 33 on the CMS-1500 claim form.
17
- class BillingProvider
18
- attr_reader :address, :tax_id, :npi, :taxonomy_code, :first_name, :last_name, :organization_name,
19
- :additional_properties
10
+ module Types
11
+ # The billing provider is the provider or business entity submitting the claim.
12
+ # Billing provider may be, but is not necessarily, the same person/NPI as the
13
+ # rendering provider.
14
+ # From a payer's perspective, this represents the person or entity being
15
+ # reimbursed.
16
+ # When a contract exists with the target payer, the billing provider should be the
17
+ # entity contracted with the payer.
18
+ # In some circumstances, this will be an individual provider. In that case, submit
19
+ # that provider's NPI and the
20
+ # tax ID (TIN) that the provider gave to the payer during contracting.
21
+ # In other cases, the billing entity will be a medical group. If so, submit the
22
+ # group NPI and the group's tax ID.
23
+ # Box 33 on the CMS-1500 claim form.
24
+ class BillingProvider
25
+ # @return [CandidApiClient::Commons::Types::StreetAddressLongZip]
26
+ attr_reader :address
27
+ # @return [String] If the provider has a contract with insurance, this must be the same tax ID
28
+ # given to the payer on an IRS W-9 form completed during contracting.
29
+ attr_reader :tax_id
30
+ # @return [String]
31
+ attr_reader :npi
32
+ # @return [String]
33
+ attr_reader :taxonomy_code
34
+ # @return [String] If the provider is an individual, this should be set instead of organization
35
+ # name
36
+ attr_reader :first_name
37
+ # @return [String] If the provider is an individual, this should be set instead of organization
38
+ # name
39
+ attr_reader :last_name
40
+ # @return [String] If the provider is an organization, this should be set instead of first + last
41
+ # name
42
+ attr_reader :organization_name
43
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
44
+ attr_reader :additional_properties
45
+ # @return [Object]
46
+ attr_reader :_field_set
47
+ protected :_field_set
20
48
 
21
- # @param address [Commons::StreetAddressLongZip]
22
- # @param tax_id [String] If the provider has a contract with insurance, this must be the same tax ID given to the payer on an IRS W-9 form completed during contracting.
23
- # @param npi [String]
24
- # @param taxonomy_code [String]
25
- # @param first_name [String] If the provider is an individual, this should be set instead of organization name
26
- # @param last_name [String] If the provider is an individual, this should be set instead of organization name
27
- # @param organization_name [String] If the provider is an organization, this should be set instead of first + last name
28
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
29
- # @return [EncounterProviders::V2::BillingProvider]
30
- def initialize(address:, tax_id:, npi:, taxonomy_code: nil, first_name: nil, last_name: nil,
31
- organization_name: nil, additional_properties: nil)
32
- # @type [Commons::StreetAddressLongZip]
33
- @address = address
34
- # @type [String] If the provider has a contract with insurance, this must be the same tax ID given to the payer on an IRS W-9 form completed during contracting.
35
- @tax_id = tax_id
36
- # @type [String]
37
- @npi = npi
38
- # @type [String]
39
- @taxonomy_code = taxonomy_code
40
- # @type [String] If the provider is an individual, this should be set instead of organization name
41
- @first_name = first_name
42
- # @type [String] If the provider is an individual, this should be set instead of organization name
43
- @last_name = last_name
44
- # @type [String] If the provider is an organization, this should be set instead of first + last name
45
- @organization_name = organization_name
46
- # @type [OpenStruct] Additional properties unmapped to the current class definition
47
- @additional_properties = additional_properties
48
- end
49
+ OMIT = Object.new
49
50
 
50
- # Deserialize a JSON object to an instance of BillingProvider
51
- #
52
- # @param json_object [JSON]
53
- # @return [EncounterProviders::V2::BillingProvider]
54
- def self.from_json(json_object:)
55
- struct = JSON.parse(json_object, object_class: OpenStruct)
56
- parsed_json = JSON.parse(json_object)
57
- if parsed_json["address"].nil?
58
- address = nil
59
- else
60
- address = parsed_json["address"].to_json
61
- address = Commons::StreetAddressLongZip.from_json(json_object: address)
51
+ # @param address [CandidApiClient::Commons::Types::StreetAddressLongZip]
52
+ # @param tax_id [String] If the provider has a contract with insurance, this must be the same tax ID
53
+ # given to the payer on an IRS W-9 form completed during contracting.
54
+ # @param npi [String]
55
+ # @param taxonomy_code [String]
56
+ # @param first_name [String] If the provider is an individual, this should be set instead of organization
57
+ # name
58
+ # @param last_name [String] If the provider is an individual, this should be set instead of organization
59
+ # name
60
+ # @param organization_name [String] If the provider is an organization, this should be set instead of first + last
61
+ # name
62
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
63
+ # @return [CandidApiClient::EncounterProviders::V2::Types::BillingProvider]
64
+ def initialize(address:, tax_id:, npi:, taxonomy_code: OMIT, first_name: OMIT, last_name: OMIT,
65
+ organization_name: OMIT, additional_properties: nil)
66
+ @address = address
67
+ @tax_id = tax_id
68
+ @npi = npi
69
+ @taxonomy_code = taxonomy_code if taxonomy_code != OMIT
70
+ @first_name = first_name if first_name != OMIT
71
+ @last_name = last_name if last_name != OMIT
72
+ @organization_name = organization_name if organization_name != OMIT
73
+ @additional_properties = additional_properties
74
+ @_field_set = {
75
+ "address": address,
76
+ "tax_id": tax_id,
77
+ "npi": npi,
78
+ "taxonomy_code": taxonomy_code,
79
+ "first_name": first_name,
80
+ "last_name": last_name,
81
+ "organization_name": organization_name
82
+ }.reject do |_k, v|
83
+ v == OMIT
84
+ end
62
85
  end
63
- tax_id = struct.tax_id
64
- npi = struct.npi
65
- taxonomy_code = struct.taxonomy_code
66
- first_name = struct.first_name
67
- last_name = struct.last_name
68
- organization_name = struct.organization_name
69
- new(address: address, tax_id: tax_id, npi: npi, taxonomy_code: taxonomy_code, first_name: first_name,
70
- last_name: last_name, organization_name: organization_name, additional_properties: struct)
71
- end
72
86
 
73
- # Serialize an instance of BillingProvider to a JSON object
74
- #
75
- # @return [JSON]
76
- def to_json(*_args)
77
- {
78
- "address": @address,
79
- "tax_id": @tax_id,
80
- "npi": @npi,
81
- "taxonomy_code": @taxonomy_code,
82
- "first_name": @first_name,
83
- "last_name": @last_name,
84
- "organization_name": @organization_name
85
- }.to_json
86
- end
87
+ # Deserialize a JSON object to an instance of BillingProvider
88
+ #
89
+ # @param json_object [String]
90
+ # @return [CandidApiClient::EncounterProviders::V2::Types::BillingProvider]
91
+ def self.from_json(json_object:)
92
+ struct = JSON.parse(json_object, object_class: OpenStruct)
93
+ parsed_json = JSON.parse(json_object)
94
+ if parsed_json["address"].nil?
95
+ address = nil
96
+ else
97
+ address = parsed_json["address"].to_json
98
+ address = CandidApiClient::Commons::Types::StreetAddressLongZip.from_json(json_object: address)
99
+ end
100
+ tax_id = struct["tax_id"]
101
+ npi = struct["npi"]
102
+ taxonomy_code = struct["taxonomy_code"]
103
+ first_name = struct["first_name"]
104
+ last_name = struct["last_name"]
105
+ organization_name = struct["organization_name"]
106
+ new(
107
+ address: address,
108
+ tax_id: tax_id,
109
+ npi: npi,
110
+ taxonomy_code: taxonomy_code,
111
+ first_name: first_name,
112
+ last_name: last_name,
113
+ organization_name: organization_name,
114
+ additional_properties: struct
115
+ )
116
+ end
87
117
 
88
- # 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.
89
- #
90
- # @param obj [Object]
91
- # @return [Void]
92
- def self.validate_raw(obj:)
93
- Commons::StreetAddressLongZip.validate_raw(obj: obj.address)
94
- obj.tax_id.is_a?(String) != false || raise("Passed value for field obj.tax_id is not the expected type, validation failed.")
95
- obj.npi.is_a?(String) != false || raise("Passed value for field obj.npi is not the expected type, validation failed.")
96
- obj.taxonomy_code&.is_a?(String) != false || raise("Passed value for field obj.taxonomy_code is not the expected type, validation failed.")
97
- obj.first_name&.is_a?(String) != false || raise("Passed value for field obj.first_name is not the expected type, validation failed.")
98
- obj.last_name&.is_a?(String) != false || raise("Passed value for field obj.last_name is not the expected type, validation failed.")
99
- obj.organization_name&.is_a?(String) != false || raise("Passed value for field obj.organization_name is not the expected type, validation failed.")
118
+ # Serialize an instance of BillingProvider to a JSON object
119
+ #
120
+ # @return [String]
121
+ def to_json(*_args)
122
+ @_field_set&.to_json
123
+ end
124
+
125
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
126
+ # hash and check each fields type against the current object's property
127
+ # definitions.
128
+ #
129
+ # @param obj [Object]
130
+ # @return [Void]
131
+ def self.validate_raw(obj:)
132
+ CandidApiClient::Commons::Types::StreetAddressLongZip.validate_raw(obj: obj.address)
133
+ obj.tax_id.is_a?(String) != false || raise("Passed value for field obj.tax_id is not the expected type, validation failed.")
134
+ obj.npi.is_a?(String) != false || raise("Passed value for field obj.npi is not the expected type, validation failed.")
135
+ obj.taxonomy_code&.is_a?(String) != false || raise("Passed value for field obj.taxonomy_code is not the expected type, validation failed.")
136
+ obj.first_name&.is_a?(String) != false || raise("Passed value for field obj.first_name is not the expected type, validation failed.")
137
+ obj.last_name&.is_a?(String) != false || raise("Passed value for field obj.last_name is not the expected type, validation failed.")
138
+ obj.organization_name&.is_a?(String) != false || raise("Passed value for field obj.organization_name is not the expected type, validation failed.")
139
+ end
100
140
  end
101
141
  end
102
142
  end
@@ -1,101 +1,144 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "provider_id"
4
3
  require_relative "../../../commons/types/street_address_long_zip"
4
+ require_relative "../../../commons/types/qualifier_code"
5
+ require "ostruct"
5
6
  require "json"
6
7
 
7
8
  module CandidApiClient
8
9
  module EncounterProviders
9
10
  module V2
10
- class EncounterProvider
11
- attr_reader :provider_id, :address, :tax_id, :npi, :taxonomy_code, :first_name, :last_name, :organization_name,
12
- :additional_properties
11
+ module Types
12
+ class EncounterProvider
13
+ # @return [String]
14
+ attr_reader :provider_id
15
+ # @return [CandidApiClient::Commons::Types::StreetAddressLongZip]
16
+ attr_reader :address
17
+ # @return [String]
18
+ attr_reader :tax_id
19
+ # @return [String]
20
+ attr_reader :npi
21
+ # @return [String]
22
+ attr_reader :taxonomy_code
23
+ # @return [CandidApiClient::Commons::Types::QualifierCode]
24
+ attr_reader :qualifier
25
+ # @return [String] If the provider is an individual, this should be set instead of organization
26
+ # name
27
+ attr_reader :first_name
28
+ # @return [String] If the provider is an individual, this should be set instead of organization
29
+ # name
30
+ attr_reader :last_name
31
+ # @return [String] If the provider is an organization, this should be set instead of first + last
32
+ # name
33
+ attr_reader :organization_name
34
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
35
+ attr_reader :additional_properties
36
+ # @return [Object]
37
+ attr_reader :_field_set
38
+ protected :_field_set
13
39
 
14
- # @param provider_id [EncounterProviders::V2::PROVIDER_ID]
15
- # @param address [Commons::StreetAddressLongZip]
16
- # @param tax_id [String]
17
- # @param npi [String]
18
- # @param taxonomy_code [String]
19
- # @param first_name [String] If the provider is an individual, this should be set instead of organization name
20
- # @param last_name [String] If the provider is an individual, this should be set instead of organization name
21
- # @param organization_name [String] If the provider is an organization, this should be set instead of first + last name
22
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
23
- # @return [EncounterProviders::V2::EncounterProvider]
24
- def initialize(provider_id:, address:, npi:, tax_id: nil, taxonomy_code: nil, first_name: nil, last_name: nil,
25
- organization_name: nil, additional_properties: nil)
26
- # @type [EncounterProviders::V2::PROVIDER_ID]
27
- @provider_id = provider_id
28
- # @type [Commons::StreetAddressLongZip]
29
- @address = address
30
- # @type [String]
31
- @tax_id = tax_id
32
- # @type [String]
33
- @npi = npi
34
- # @type [String]
35
- @taxonomy_code = taxonomy_code
36
- # @type [String] If the provider is an individual, this should be set instead of organization name
37
- @first_name = first_name
38
- # @type [String] If the provider is an individual, this should be set instead of organization name
39
- @last_name = last_name
40
- # @type [String] If the provider is an organization, this should be set instead of first + last name
41
- @organization_name = organization_name
42
- # @type [OpenStruct] Additional properties unmapped to the current class definition
43
- @additional_properties = additional_properties
44
- end
40
+ OMIT = Object.new
45
41
 
46
- # Deserialize a JSON object to an instance of EncounterProvider
47
- #
48
- # @param json_object [JSON]
49
- # @return [EncounterProviders::V2::EncounterProvider]
50
- def self.from_json(json_object:)
51
- struct = JSON.parse(json_object, object_class: OpenStruct)
52
- parsed_json = JSON.parse(json_object)
53
- provider_id = struct.provider_id
54
- if parsed_json["address"].nil?
55
- address = nil
56
- else
57
- address = parsed_json["address"].to_json
58
- address = Commons::StreetAddressLongZip.from_json(json_object: address)
42
+ # @param provider_id [String]
43
+ # @param address [CandidApiClient::Commons::Types::StreetAddressLongZip]
44
+ # @param tax_id [String]
45
+ # @param npi [String]
46
+ # @param taxonomy_code [String]
47
+ # @param qualifier [CandidApiClient::Commons::Types::QualifierCode]
48
+ # @param first_name [String] If the provider is an individual, this should be set instead of organization
49
+ # name
50
+ # @param last_name [String] If the provider is an individual, this should be set instead of organization
51
+ # name
52
+ # @param organization_name [String] If the provider is an organization, this should be set instead of first + last
53
+ # name
54
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
55
+ # @return [CandidApiClient::EncounterProviders::V2::Types::EncounterProvider]
56
+ def initialize(provider_id:, address:, npi:, tax_id: OMIT, taxonomy_code: OMIT, qualifier: OMIT,
57
+ first_name: OMIT, last_name: OMIT, organization_name: OMIT, additional_properties: nil)
58
+ @provider_id = provider_id
59
+ @address = address
60
+ @tax_id = tax_id if tax_id != OMIT
61
+ @npi = npi
62
+ @taxonomy_code = taxonomy_code if taxonomy_code != OMIT
63
+ @qualifier = qualifier if qualifier != OMIT
64
+ @first_name = first_name if first_name != OMIT
65
+ @last_name = last_name if last_name != OMIT
66
+ @organization_name = organization_name if organization_name != OMIT
67
+ @additional_properties = additional_properties
68
+ @_field_set = {
69
+ "provider_id": provider_id,
70
+ "address": address,
71
+ "tax_id": tax_id,
72
+ "npi": npi,
73
+ "taxonomy_code": taxonomy_code,
74
+ "qualifier": qualifier,
75
+ "first_name": first_name,
76
+ "last_name": last_name,
77
+ "organization_name": organization_name
78
+ }.reject do |_k, v|
79
+ v == OMIT
80
+ end
59
81
  end
60
- tax_id = struct.tax_id
61
- npi = struct.npi
62
- taxonomy_code = struct.taxonomy_code
63
- first_name = struct.first_name
64
- last_name = struct.last_name
65
- organization_name = struct.organization_name
66
- new(provider_id: provider_id, address: address, tax_id: tax_id, npi: npi, taxonomy_code: taxonomy_code,
67
- first_name: first_name, last_name: last_name, organization_name: organization_name, additional_properties: struct)
68
- end
69
82
 
70
- # Serialize an instance of EncounterProvider to a JSON object
71
- #
72
- # @return [JSON]
73
- def to_json(*_args)
74
- {
75
- "provider_id": @provider_id,
76
- "address": @address,
77
- "tax_id": @tax_id,
78
- "npi": @npi,
79
- "taxonomy_code": @taxonomy_code,
80
- "first_name": @first_name,
81
- "last_name": @last_name,
82
- "organization_name": @organization_name
83
- }.to_json
84
- end
83
+ # Deserialize a JSON object to an instance of EncounterProvider
84
+ #
85
+ # @param json_object [String]
86
+ # @return [CandidApiClient::EncounterProviders::V2::Types::EncounterProvider]
87
+ def self.from_json(json_object:)
88
+ struct = JSON.parse(json_object, object_class: OpenStruct)
89
+ parsed_json = JSON.parse(json_object)
90
+ provider_id = struct["provider_id"]
91
+ if parsed_json["address"].nil?
92
+ address = nil
93
+ else
94
+ address = parsed_json["address"].to_json
95
+ address = CandidApiClient::Commons::Types::StreetAddressLongZip.from_json(json_object: address)
96
+ end
97
+ tax_id = struct["tax_id"]
98
+ npi = struct["npi"]
99
+ taxonomy_code = struct["taxonomy_code"]
100
+ qualifier = struct["qualifier"]
101
+ first_name = struct["first_name"]
102
+ last_name = struct["last_name"]
103
+ organization_name = struct["organization_name"]
104
+ new(
105
+ provider_id: provider_id,
106
+ address: address,
107
+ tax_id: tax_id,
108
+ npi: npi,
109
+ taxonomy_code: taxonomy_code,
110
+ qualifier: qualifier,
111
+ first_name: first_name,
112
+ last_name: last_name,
113
+ organization_name: organization_name,
114
+ additional_properties: struct
115
+ )
116
+ end
85
117
 
86
- # 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.
87
- #
88
- # @param obj [Object]
89
- # @return [Void]
90
- def self.validate_raw(obj:)
91
- obj.provider_id.is_a?(UUID) != false || raise("Passed value for field obj.provider_id is not the expected type, validation failed.")
92
- Commons::StreetAddressLongZip.validate_raw(obj: obj.address)
93
- obj.tax_id&.is_a?(String) != false || raise("Passed value for field obj.tax_id is not the expected type, validation failed.")
94
- obj.npi.is_a?(String) != false || raise("Passed value for field obj.npi is not the expected type, validation failed.")
95
- obj.taxonomy_code&.is_a?(String) != false || raise("Passed value for field obj.taxonomy_code is not the expected type, validation failed.")
96
- obj.first_name&.is_a?(String) != false || raise("Passed value for field obj.first_name is not the expected type, validation failed.")
97
- obj.last_name&.is_a?(String) != false || raise("Passed value for field obj.last_name is not the expected type, validation failed.")
98
- obj.organization_name&.is_a?(String) != false || raise("Passed value for field obj.organization_name is not the expected type, validation failed.")
118
+ # Serialize an instance of EncounterProvider to a JSON object
119
+ #
120
+ # @return [String]
121
+ def to_json(*_args)
122
+ @_field_set&.to_json
123
+ end
124
+
125
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
126
+ # hash and check each fields type against the current object's property
127
+ # definitions.
128
+ #
129
+ # @param obj [Object]
130
+ # @return [Void]
131
+ def self.validate_raw(obj:)
132
+ obj.provider_id.is_a?(String) != false || raise("Passed value for field obj.provider_id is not the expected type, validation failed.")
133
+ CandidApiClient::Commons::Types::StreetAddressLongZip.validate_raw(obj: obj.address)
134
+ obj.tax_id&.is_a?(String) != false || raise("Passed value for field obj.tax_id is not the expected type, validation failed.")
135
+ obj.npi.is_a?(String) != false || raise("Passed value for field obj.npi is not the expected type, validation failed.")
136
+ obj.taxonomy_code&.is_a?(String) != false || raise("Passed value for field obj.taxonomy_code is not the expected type, validation failed.")
137
+ obj.qualifier&.is_a?(CandidApiClient::Commons::Types::QualifierCode) != false || raise("Passed value for field obj.qualifier is not the expected type, validation failed.")
138
+ obj.first_name&.is_a?(String) != false || raise("Passed value for field obj.first_name is not the expected type, validation failed.")
139
+ obj.last_name&.is_a?(String) != false || raise("Passed value for field obj.last_name is not the expected type, validation failed.")
140
+ obj.organization_name&.is_a?(String) != false || raise("Passed value for field obj.organization_name is not the expected type, validation failed.")
141
+ end
99
142
  end
100
143
  end
101
144
  end
@@ -1,58 +1,87 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require "ostruct"
3
4
  require "json"
4
5
 
5
6
  module CandidApiClient
6
7
  module EncounterProviders
7
8
  module V2
8
- class EncounterProviderBase
9
- attr_reader :first_name, :last_name, :organization_name, :additional_properties
9
+ module Types
10
+ class EncounterProviderBase
11
+ # @return [String] If the provider is an individual, this should be set instead of organization
12
+ # name
13
+ attr_reader :first_name
14
+ # @return [String] If the provider is an individual, this should be set instead of organization
15
+ # name
16
+ attr_reader :last_name
17
+ # @return [String] If the provider is an organization, this should be set instead of first + last
18
+ # name
19
+ attr_reader :organization_name
20
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
21
+ attr_reader :additional_properties
22
+ # @return [Object]
23
+ attr_reader :_field_set
24
+ protected :_field_set
10
25
 
11
- # @param first_name [String] If the provider is an individual, this should be set instead of organization name
12
- # @param last_name [String] If the provider is an individual, this should be set instead of organization name
13
- # @param organization_name [String] If the provider is an organization, this should be set instead of first + last name
14
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
15
- # @return [EncounterProviders::V2::EncounterProviderBase]
16
- def initialize(first_name: nil, last_name: nil, organization_name: nil, additional_properties: nil)
17
- # @type [String] If the provider is an individual, this should be set instead of organization name
18
- @first_name = first_name
19
- # @type [String] If the provider is an individual, this should be set instead of organization name
20
- @last_name = last_name
21
- # @type [String] If the provider is an organization, this should be set instead of first + last name
22
- @organization_name = organization_name
23
- # @type [OpenStruct] Additional properties unmapped to the current class definition
24
- @additional_properties = additional_properties
25
- end
26
+ OMIT = Object.new
26
27
 
27
- # Deserialize a JSON object to an instance of EncounterProviderBase
28
- #
29
- # @param json_object [JSON]
30
- # @return [EncounterProviders::V2::EncounterProviderBase]
31
- def self.from_json(json_object:)
32
- struct = JSON.parse(json_object, object_class: OpenStruct)
33
- JSON.parse(json_object)
34
- first_name = struct.first_name
35
- last_name = struct.last_name
36
- organization_name = struct.organization_name
37
- new(first_name: first_name, last_name: last_name, organization_name: organization_name,
38
- additional_properties: struct)
39
- end
28
+ # @param first_name [String] If the provider is an individual, this should be set instead of organization
29
+ # name
30
+ # @param last_name [String] If the provider is an individual, this should be set instead of organization
31
+ # name
32
+ # @param organization_name [String] If the provider is an organization, this should be set instead of first + last
33
+ # name
34
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
35
+ # @return [CandidApiClient::EncounterProviders::V2::Types::EncounterProviderBase]
36
+ def initialize(first_name: OMIT, last_name: OMIT, organization_name: OMIT, additional_properties: nil)
37
+ @first_name = first_name if first_name != OMIT
38
+ @last_name = last_name if last_name != OMIT
39
+ @organization_name = organization_name if organization_name != OMIT
40
+ @additional_properties = additional_properties
41
+ @_field_set = {
42
+ "first_name": first_name,
43
+ "last_name": last_name,
44
+ "organization_name": organization_name
45
+ }.reject do |_k, v|
46
+ v == OMIT
47
+ end
48
+ end
40
49
 
41
- # Serialize an instance of EncounterProviderBase to a JSON object
42
- #
43
- # @return [JSON]
44
- def to_json(*_args)
45
- { "first_name": @first_name, "last_name": @last_name, "organization_name": @organization_name }.to_json
46
- end
50
+ # Deserialize a JSON object to an instance of EncounterProviderBase
51
+ #
52
+ # @param json_object [String]
53
+ # @return [CandidApiClient::EncounterProviders::V2::Types::EncounterProviderBase]
54
+ def self.from_json(json_object:)
55
+ struct = JSON.parse(json_object, object_class: OpenStruct)
56
+ first_name = struct["first_name"]
57
+ last_name = struct["last_name"]
58
+ organization_name = struct["organization_name"]
59
+ new(
60
+ first_name: first_name,
61
+ last_name: last_name,
62
+ organization_name: organization_name,
63
+ additional_properties: struct
64
+ )
65
+ end
66
+
67
+ # Serialize an instance of EncounterProviderBase to a JSON object
68
+ #
69
+ # @return [String]
70
+ def to_json(*_args)
71
+ @_field_set&.to_json
72
+ end
47
73
 
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.first_name&.is_a?(String) != false || raise("Passed value for field obj.first_name is not the expected type, validation failed.")
54
- obj.last_name&.is_a?(String) != false || raise("Passed value for field obj.last_name is not the expected type, validation failed.")
55
- obj.organization_name&.is_a?(String) != false || raise("Passed value for field obj.organization_name is not the expected type, validation failed.")
74
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
75
+ # hash and check each fields type against the current object's property
76
+ # definitions.
77
+ #
78
+ # @param obj [Object]
79
+ # @return [Void]
80
+ def self.validate_raw(obj:)
81
+ obj.first_name&.is_a?(String) != false || raise("Passed value for field obj.first_name is not the expected type, validation failed.")
82
+ obj.last_name&.is_a?(String) != false || raise("Passed value for field obj.last_name is not the expected type, validation failed.")
83
+ obj.organization_name&.is_a?(String) != false || raise("Passed value for field obj.organization_name is not the expected type, validation failed.")
84
+ end
56
85
  end
57
86
  end
58
87
  end