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,125 +1,156 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "patient_refund_id"
4
- require_relative "../../../commons/types/organization_id"
5
3
  require_relative "../../../financials/types/patient_transaction_source"
6
- require_relative "../../../commons/types/patient_external_id"
7
4
  require "date"
8
5
  require_relative "../../../financials/types/allocation"
9
- require_relative "../../../commons/types/invoice_id"
10
6
  require_relative "../../../financials/types/refund_reason"
7
+ require "ostruct"
11
8
  require "json"
12
9
 
13
10
  module CandidApiClient
14
11
  module PatientRefunds
15
12
  module V1
16
- class PatientRefund
17
- attr_reader :patient_refund_id, :organization_id, :source_internal_id, :refund_source, :amount_cents,
18
- :patient_external_id, :refund_timestamp, :refund_note, :allocations, :invoice, :refund_reason, :additional_properties
13
+ module Types
14
+ class PatientRefund
15
+ # @return [String]
16
+ attr_reader :patient_refund_id
17
+ # @return [String]
18
+ attr_reader :organization_id
19
+ # @return [String]
20
+ attr_reader :source_internal_id
21
+ # @return [CandidApiClient::Financials::Types::PatientTransactionSource]
22
+ attr_reader :refund_source
23
+ # @return [Integer]
24
+ attr_reader :amount_cents
25
+ # @return [String]
26
+ attr_reader :patient_external_id
27
+ # @return [DateTime]
28
+ attr_reader :refund_timestamp
29
+ # @return [String]
30
+ attr_reader :refund_note
31
+ # @return [Array<CandidApiClient::Financials::Types::Allocation>]
32
+ attr_reader :allocations
33
+ # @return [String]
34
+ attr_reader :invoice
35
+ # @return [CandidApiClient::Financials::Types::RefundReason]
36
+ attr_reader :refund_reason
37
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
38
+ attr_reader :additional_properties
39
+ # @return [Object]
40
+ attr_reader :_field_set
41
+ protected :_field_set
19
42
 
20
- # @param patient_refund_id [PatientRefunds::V1::PATIENT_REFUND_ID]
21
- # @param organization_id [Commons::ORGANIZATION_ID]
22
- # @param source_internal_id [String]
23
- # @param refund_source [Financials::PatientTransactionSource]
24
- # @param amount_cents [Integer]
25
- # @param patient_external_id [Commons::PATIENT_EXTERNAL_ID]
26
- # @param refund_timestamp [DateTime]
27
- # @param refund_note [String]
28
- # @param allocations [Array<Financials::Allocation>]
29
- # @param invoice [Commons::INVOICE_ID]
30
- # @param refund_reason [Financials::RefundReason]
31
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
32
- # @return [PatientRefunds::V1::PatientRefund]
33
- def initialize(patient_refund_id:, organization_id:, refund_source:, amount_cents:, patient_external_id:,
34
- allocations:, source_internal_id: nil, refund_timestamp: nil, refund_note: nil, invoice: nil, refund_reason: nil, additional_properties: nil)
35
- # @type [PatientRefunds::V1::PATIENT_REFUND_ID]
36
- @patient_refund_id = patient_refund_id
37
- # @type [Commons::ORGANIZATION_ID]
38
- @organization_id = organization_id
39
- # @type [String]
40
- @source_internal_id = source_internal_id
41
- # @type [Financials::PatientTransactionSource]
42
- @refund_source = refund_source
43
- # @type [Integer]
44
- @amount_cents = amount_cents
45
- # @type [Commons::PATIENT_EXTERNAL_ID]
46
- @patient_external_id = patient_external_id
47
- # @type [DateTime]
48
- @refund_timestamp = refund_timestamp
49
- # @type [String]
50
- @refund_note = refund_note
51
- # @type [Array<Financials::Allocation>]
52
- @allocations = allocations
53
- # @type [Commons::INVOICE_ID]
54
- @invoice = invoice
55
- # @type [Financials::RefundReason]
56
- @refund_reason = refund_reason
57
- # @type [OpenStruct] Additional properties unmapped to the current class definition
58
- @additional_properties = additional_properties
59
- end
43
+ OMIT = Object.new
60
44
 
61
- # Deserialize a JSON object to an instance of PatientRefund
62
- #
63
- # @param json_object [JSON]
64
- # @return [PatientRefunds::V1::PatientRefund]
65
- def self.from_json(json_object:)
66
- struct = JSON.parse(json_object, object_class: OpenStruct)
67
- parsed_json = JSON.parse(json_object)
68
- patient_refund_id = struct.patient_refund_id
69
- organization_id = struct.organization_id
70
- source_internal_id = struct.source_internal_id
71
- refund_source = struct.refund_source
72
- amount_cents = struct.amount_cents
73
- patient_external_id = struct.patient_external_id
74
- refund_timestamp = unless parsed_json["refund_timestamp"].nil?
75
- DateTime.parse(parsed_json["refund_timestamp"])
76
- end
77
- refund_note = struct.refund_note
78
- allocations = parsed_json["allocations"]&.map do |v|
79
- v = v.to_json
80
- Financials::Allocation.from_json(json_object: v)
45
+ # @param patient_refund_id [String]
46
+ # @param organization_id [String]
47
+ # @param source_internal_id [String]
48
+ # @param refund_source [CandidApiClient::Financials::Types::PatientTransactionSource]
49
+ # @param amount_cents [Integer]
50
+ # @param patient_external_id [String]
51
+ # @param refund_timestamp [DateTime]
52
+ # @param refund_note [String]
53
+ # @param allocations [Array<CandidApiClient::Financials::Types::Allocation>]
54
+ # @param invoice [String]
55
+ # @param refund_reason [CandidApiClient::Financials::Types::RefundReason]
56
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
57
+ # @return [CandidApiClient::PatientRefunds::V1::Types::PatientRefund]
58
+ def initialize(patient_refund_id:, organization_id:, refund_source:, amount_cents:, patient_external_id:,
59
+ allocations:, source_internal_id: OMIT, refund_timestamp: OMIT, refund_note: OMIT, invoice: OMIT, refund_reason: OMIT, additional_properties: nil)
60
+ @patient_refund_id = patient_refund_id
61
+ @organization_id = organization_id
62
+ @source_internal_id = source_internal_id if source_internal_id != OMIT
63
+ @refund_source = refund_source
64
+ @amount_cents = amount_cents
65
+ @patient_external_id = patient_external_id
66
+ @refund_timestamp = refund_timestamp if refund_timestamp != OMIT
67
+ @refund_note = refund_note if refund_note != OMIT
68
+ @allocations = allocations
69
+ @invoice = invoice if invoice != OMIT
70
+ @refund_reason = refund_reason if refund_reason != OMIT
71
+ @additional_properties = additional_properties
72
+ @_field_set = {
73
+ "patient_refund_id": patient_refund_id,
74
+ "organization_id": organization_id,
75
+ "source_internal_id": source_internal_id,
76
+ "refund_source": refund_source,
77
+ "amount_cents": amount_cents,
78
+ "patient_external_id": patient_external_id,
79
+ "refund_timestamp": refund_timestamp,
80
+ "refund_note": refund_note,
81
+ "allocations": allocations,
82
+ "invoice": invoice,
83
+ "refund_reason": refund_reason
84
+ }.reject do |_k, v|
85
+ v == OMIT
86
+ end
81
87
  end
82
- invoice = struct.invoice
83
- refund_reason = struct.refund_reason
84
- new(patient_refund_id: patient_refund_id, organization_id: organization_id,
85
- source_internal_id: source_internal_id, refund_source: refund_source, amount_cents: amount_cents, patient_external_id: patient_external_id, refund_timestamp: refund_timestamp, refund_note: refund_note, allocations: allocations, invoice: invoice, refund_reason: refund_reason, additional_properties: struct)
86
- end
87
88
 
88
- # Serialize an instance of PatientRefund to a JSON object
89
- #
90
- # @return [JSON]
91
- def to_json(*_args)
92
- {
93
- "patient_refund_id": @patient_refund_id,
94
- "organization_id": @organization_id,
95
- "source_internal_id": @source_internal_id,
96
- "refund_source": @refund_source,
97
- "amount_cents": @amount_cents,
98
- "patient_external_id": @patient_external_id,
99
- "refund_timestamp": @refund_timestamp,
100
- "refund_note": @refund_note,
101
- "allocations": @allocations,
102
- "invoice": @invoice,
103
- "refund_reason": @refund_reason
104
- }.to_json
105
- end
89
+ # Deserialize a JSON object to an instance of PatientRefund
90
+ #
91
+ # @param json_object [String]
92
+ # @return [CandidApiClient::PatientRefunds::V1::Types::PatientRefund]
93
+ def self.from_json(json_object:)
94
+ struct = JSON.parse(json_object, object_class: OpenStruct)
95
+ parsed_json = JSON.parse(json_object)
96
+ patient_refund_id = struct["patient_refund_id"]
97
+ organization_id = struct["organization_id"]
98
+ source_internal_id = struct["source_internal_id"]
99
+ refund_source = struct["refund_source"]
100
+ amount_cents = struct["amount_cents"]
101
+ patient_external_id = struct["patient_external_id"]
102
+ refund_timestamp = unless parsed_json["refund_timestamp"].nil?
103
+ DateTime.parse(parsed_json["refund_timestamp"])
104
+ end
105
+ refund_note = struct["refund_note"]
106
+ allocations = parsed_json["allocations"]&.map do |item|
107
+ item = item.to_json
108
+ CandidApiClient::Financials::Types::Allocation.from_json(json_object: item)
109
+ end
110
+ invoice = struct["invoice"]
111
+ refund_reason = struct["refund_reason"]
112
+ new(
113
+ patient_refund_id: patient_refund_id,
114
+ organization_id: organization_id,
115
+ source_internal_id: source_internal_id,
116
+ refund_source: refund_source,
117
+ amount_cents: amount_cents,
118
+ patient_external_id: patient_external_id,
119
+ refund_timestamp: refund_timestamp,
120
+ refund_note: refund_note,
121
+ allocations: allocations,
122
+ invoice: invoice,
123
+ refund_reason: refund_reason,
124
+ additional_properties: struct
125
+ )
126
+ end
106
127
 
107
- # 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.
108
- #
109
- # @param obj [Object]
110
- # @return [Void]
111
- def self.validate_raw(obj:)
112
- obj.patient_refund_id.is_a?(UUID) != false || raise("Passed value for field obj.patient_refund_id is not the expected type, validation failed.")
113
- obj.organization_id.is_a?(UUID) != false || raise("Passed value for field obj.organization_id is not the expected type, validation failed.")
114
- obj.source_internal_id&.is_a?(String) != false || raise("Passed value for field obj.source_internal_id is not the expected type, validation failed.")
115
- obj.refund_source.is_a?(Financials::PatientTransactionSource) != false || raise("Passed value for field obj.refund_source is not the expected type, validation failed.")
116
- obj.amount_cents.is_a?(Integer) != false || raise("Passed value for field obj.amount_cents is not the expected type, validation failed.")
117
- obj.patient_external_id.is_a?(String) != false || raise("Passed value for field obj.patient_external_id is not the expected type, validation failed.")
118
- obj.refund_timestamp&.is_a?(DateTime) != false || raise("Passed value for field obj.refund_timestamp is not the expected type, validation failed.")
119
- obj.refund_note&.is_a?(String) != false || raise("Passed value for field obj.refund_note is not the expected type, validation failed.")
120
- obj.allocations.is_a?(Array) != false || raise("Passed value for field obj.allocations is not the expected type, validation failed.")
121
- obj.invoice&.is_a?(UUID) != false || raise("Passed value for field obj.invoice is not the expected type, validation failed.")
122
- obj.refund_reason&.is_a?(Financials::RefundReason) != false || raise("Passed value for field obj.refund_reason is not the expected type, validation failed.")
128
+ # Serialize an instance of PatientRefund to a JSON object
129
+ #
130
+ # @return [String]
131
+ def to_json(*_args)
132
+ @_field_set&.to_json
133
+ end
134
+
135
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
136
+ # hash and check each fields type against the current object's property
137
+ # definitions.
138
+ #
139
+ # @param obj [Object]
140
+ # @return [Void]
141
+ def self.validate_raw(obj:)
142
+ obj.patient_refund_id.is_a?(String) != false || raise("Passed value for field obj.patient_refund_id is not the expected type, validation failed.")
143
+ obj.organization_id.is_a?(String) != false || raise("Passed value for field obj.organization_id is not the expected type, validation failed.")
144
+ obj.source_internal_id&.is_a?(String) != false || raise("Passed value for field obj.source_internal_id is not the expected type, validation failed.")
145
+ obj.refund_source.is_a?(CandidApiClient::Financials::Types::PatientTransactionSource) != false || raise("Passed value for field obj.refund_source is not the expected type, validation failed.")
146
+ obj.amount_cents.is_a?(Integer) != false || raise("Passed value for field obj.amount_cents is not the expected type, validation failed.")
147
+ obj.patient_external_id.is_a?(String) != false || raise("Passed value for field obj.patient_external_id is not the expected type, validation failed.")
148
+ obj.refund_timestamp&.is_a?(DateTime) != false || raise("Passed value for field obj.refund_timestamp is not the expected type, validation failed.")
149
+ obj.refund_note&.is_a?(String) != false || raise("Passed value for field obj.refund_note is not the expected type, validation failed.")
150
+ obj.allocations.is_a?(Array) != false || raise("Passed value for field obj.allocations is not the expected type, validation failed.")
151
+ obj.invoice&.is_a?(String) != false || raise("Passed value for field obj.invoice is not the expected type, validation failed.")
152
+ obj.refund_reason&.is_a?(CandidApiClient::Financials::Types::RefundReason) != false || raise("Passed value for field obj.refund_reason is not the expected type, validation failed.")
153
+ end
123
154
  end
124
155
  end
125
156
  end
@@ -3,12 +3,14 @@
3
3
  module CandidApiClient
4
4
  module PatientRefunds
5
5
  module V1
6
- class PatientRefundSortField
7
- REFUND_SOURCE = "refund_source"
8
- AMOUNT_CENTS = "amount_cents"
9
- REFUND_TIMESTAMP = "refund_timestamp"
10
- REFUND_REASON = "refund_reason"
11
- REFUND_NOTE = "refund_note"
6
+ module Types
7
+ class PatientRefundSortField
8
+ REFUND_SOURCE = "refund_source"
9
+ AMOUNT_CENTS = "amount_cents"
10
+ REFUND_TIMESTAMP = "refund_timestamp"
11
+ REFUND_REASON = "refund_reason"
12
+ REFUND_NOTE = "refund_note"
13
+ end
12
14
  end
13
15
  end
14
16
  end
@@ -1,63 +1,86 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require_relative "patient_refund"
4
- require_relative "../../../commons/types/page_token"
4
+ require "ostruct"
5
5
  require "json"
6
6
 
7
7
  module CandidApiClient
8
8
  module PatientRefunds
9
9
  module V1
10
- class PatientRefundsPage
11
- attr_reader :items, :prev_page_token, :next_page_token, :additional_properties
10
+ module Types
11
+ class PatientRefundsPage
12
+ # @return [Array<CandidApiClient::PatientRefunds::V1::Types::PatientRefund>]
13
+ attr_reader :items
14
+ # @return [String]
15
+ attr_reader :prev_page_token
16
+ # @return [String]
17
+ attr_reader :next_page_token
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 items [Array<PatientRefunds::V1::PatientRefund>]
14
- # @param prev_page_token [Commons::PAGE_TOKEN]
15
- # @param next_page_token [Commons::PAGE_TOKEN]
16
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
17
- # @return [PatientRefunds::V1::PatientRefundsPage]
18
- def initialize(items:, prev_page_token: nil, next_page_token: nil, additional_properties: nil)
19
- # @type [Array<PatientRefunds::V1::PatientRefund>]
20
- @items = items
21
- # @type [Commons::PAGE_TOKEN]
22
- @prev_page_token = prev_page_token
23
- # @type [Commons::PAGE_TOKEN]
24
- @next_page_token = next_page_token
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 PatientRefundsPage
30
- #
31
- # @param json_object [JSON]
32
- # @return [PatientRefunds::V1::PatientRefundsPage]
33
- def self.from_json(json_object:)
34
- struct = JSON.parse(json_object, object_class: OpenStruct)
35
- parsed_json = JSON.parse(json_object)
36
- items = parsed_json["items"]&.map do |v|
37
- v = v.to_json
38
- PatientRefunds::V1::PatientRefund.from_json(json_object: v)
26
+ # @param items [Array<CandidApiClient::PatientRefunds::V1::Types::PatientRefund>]
27
+ # @param prev_page_token [String]
28
+ # @param next_page_token [String]
29
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
30
+ # @return [CandidApiClient::PatientRefunds::V1::Types::PatientRefundsPage]
31
+ def initialize(items:, prev_page_token: OMIT, next_page_token: OMIT, additional_properties: nil)
32
+ @items = items
33
+ @prev_page_token = prev_page_token if prev_page_token != OMIT
34
+ @next_page_token = next_page_token if next_page_token != OMIT
35
+ @additional_properties = additional_properties
36
+ @_field_set = {
37
+ "items": items,
38
+ "prev_page_token": prev_page_token,
39
+ "next_page_token": next_page_token
40
+ }.reject do |_k, v|
41
+ v == OMIT
42
+ end
39
43
  end
40
- prev_page_token = struct.prev_page_token
41
- next_page_token = struct.next_page_token
42
- new(items: items, prev_page_token: prev_page_token, next_page_token: next_page_token,
43
- additional_properties: struct)
44
- end
45
44
 
46
- # Serialize an instance of PatientRefundsPage to a JSON object
47
- #
48
- # @return [JSON]
49
- def to_json(*_args)
50
- { "items": @items, "prev_page_token": @prev_page_token, "next_page_token": @next_page_token }.to_json
51
- end
45
+ # Deserialize a JSON object to an instance of PatientRefundsPage
46
+ #
47
+ # @param json_object [String]
48
+ # @return [CandidApiClient::PatientRefunds::V1::Types::PatientRefundsPage]
49
+ def self.from_json(json_object:)
50
+ struct = JSON.parse(json_object, object_class: OpenStruct)
51
+ parsed_json = JSON.parse(json_object)
52
+ items = parsed_json["items"]&.map do |item|
53
+ item = item.to_json
54
+ CandidApiClient::PatientRefunds::V1::Types::PatientRefund.from_json(json_object: item)
55
+ end
56
+ prev_page_token = struct["prev_page_token"]
57
+ next_page_token = struct["next_page_token"]
58
+ new(
59
+ items: items,
60
+ prev_page_token: prev_page_token,
61
+ next_page_token: next_page_token,
62
+ additional_properties: struct
63
+ )
64
+ end
52
65
 
53
- # 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.
54
- #
55
- # @param obj [Object]
56
- # @return [Void]
57
- def self.validate_raw(obj:)
58
- obj.items.is_a?(Array) != false || raise("Passed value for field obj.items is not the expected type, validation failed.")
59
- obj.prev_page_token&.is_a?(String) != false || raise("Passed value for field obj.prev_page_token is not the expected type, validation failed.")
60
- obj.next_page_token&.is_a?(String) != false || raise("Passed value for field obj.next_page_token is not the expected type, validation failed.")
66
+ # Serialize an instance of PatientRefundsPage to a JSON object
67
+ #
68
+ # @return [String]
69
+ def to_json(*_args)
70
+ @_field_set&.to_json
71
+ end
72
+
73
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
74
+ # hash and check each fields type against the current object's property
75
+ # definitions.
76
+ #
77
+ # @param obj [Object]
78
+ # @return [Void]
79
+ def self.validate_raw(obj:)
80
+ obj.items.is_a?(Array) != false || raise("Passed value for field obj.items is not the expected type, validation failed.")
81
+ obj.prev_page_token&.is_a?(String) != false || raise("Passed value for field obj.prev_page_token is not the expected type, validation failed.")
82
+ obj.next_page_token&.is_a?(String) != false || raise("Passed value for field obj.next_page_token is not the expected type, validation failed.")
83
+ end
61
84
  end
62
85
  end
63
86
  end
@@ -6,22 +6,24 @@ require_relative "v_3/client"
6
6
  module CandidApiClient
7
7
  module Payers
8
8
  class Client
9
+ # @return [CandidApiClient::Payers::V3::V3Client]
9
10
  attr_reader :v_3
10
11
 
11
- # @param request_client [RequestClient]
12
- # @return [Payers::Client]
12
+ # @param request_client [CandidApiClient::RequestClient]
13
+ # @return [CandidApiClient::Payers::Client]
13
14
  def initialize(request_client:)
14
- @v_3 = Payers::V3::V3Client.new(request_client: request_client)
15
+ @v_3 = CandidApiClient::Payers::V3::V3Client.new(request_client: request_client)
15
16
  end
16
17
  end
17
18
 
18
19
  class AsyncClient
20
+ # @return [CandidApiClient::Payers::V3::AsyncV3Client]
19
21
  attr_reader :v_3
20
22
 
21
- # @param request_client [RequestClient]
22
- # @return [Payers::AsyncClient]
23
+ # @param request_client [CandidApiClient::AsyncRequestClient]
24
+ # @return [CandidApiClient::Payers::AsyncClient]
23
25
  def initialize(request_client:)
24
- @v_3 = Payers::V3::AsyncV3Client.new(request_client: request_client)
26
+ @v_3 = CandidApiClient::Payers::V3::AsyncV3Client.new(request_client: request_client)
25
27
  end
26
28
  end
27
29
  end
@@ -1,9 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require_relative "../../../requests"
4
- require_relative "types/payer_uuid"
5
4
  require_relative "types/payer"
6
- require_relative "../../commons/types/page_token"
7
5
  require_relative "types/payer_page"
8
6
  require "async"
9
7
 
@@ -11,91 +9,134 @@ module CandidApiClient
11
9
  module Payers
12
10
  module V3
13
11
  class V3Client
12
+ # @return [CandidApiClient::RequestClient]
14
13
  attr_reader :request_client
15
14
 
16
- # @param request_client [RequestClient]
17
- # @return [Payers::V3::V3Client]
15
+ # @param request_client [CandidApiClient::RequestClient]
16
+ # @return [CandidApiClient::Payers::V3::V3Client]
18
17
  def initialize(request_client:)
19
- # @type [RequestClient]
20
18
  @request_client = request_client
21
19
  end
22
20
 
23
- # @param payer_uuid [Payers::V3::PAYER_UUID]
24
- # @param request_options [RequestOptions]
25
- # @return [Payers::V3::Payer]
21
+ # @param payer_uuid [String]
22
+ # @param request_options [CandidApiClient::RequestOptions]
23
+ # @return [CandidApiClient::Payers::V3::Types::Payer]
24
+ # @example
25
+ # api = CandidApiClient::Client.new(base_url: "https://api.example.com", environment: CandidApiClient::Environment::PRODUCTION)
26
+ # api.payers.v_3.get(payer_uuid: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32")
26
27
  def get(payer_uuid:, request_options: nil)
27
- response = @request_client.conn.get("/api/payers/v3/#{payer_uuid}") do |req|
28
+ response = @request_client.conn.get do |req|
28
29
  req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
29
30
  req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
30
- req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
31
+ req.headers = {
32
+ **(req.headers || {}),
33
+ **@request_client.get_headers,
34
+ **(request_options&.additional_headers || {})
35
+ }.compact
36
+ req.url "#{@request_client.get_url(environment: CandidApi,
37
+ request_options: request_options)}/api/payers/v3/#{payer_uuid}"
31
38
  end
32
- Payers::V3::Payer.from_json(json_object: response.body)
39
+ CandidApiClient::Payers::V3::Types::Payer.from_json(json_object: response.body)
33
40
  end
34
41
 
35
42
  # @param limit [Integer] Maximum number of entities per page, defaults to 100.
36
43
  # @param search_term [String]
37
- # @param page_token [Commons::PAGE_TOKEN]
38
- # @param request_options [RequestOptions]
39
- # @return [Payers::V3::PayerPage]
44
+ # @param page_token [String]
45
+ # @param request_options [CandidApiClient::RequestOptions]
46
+ # @return [CandidApiClient::Payers::V3::Types::PayerPage]
47
+ # @example
48
+ # api = CandidApiClient::Client.new(base_url: "https://api.example.com", environment: CandidApiClient::Environment::PRODUCTION)
49
+ # api.payers.v_3.get_all(
50
+ # limit: 100,
51
+ # search_term: "john",
52
+ # page_token: "eyJ0b2tlbiI6IjEiLCJwYWdlX3Rva2VuIjoiMiJ9"
53
+ # )
40
54
  def get_all(limit: nil, search_term: nil, page_token: nil, request_options: nil)
41
- response = @request_client.conn.get("/api/payers/v3") do |req|
55
+ response = @request_client.conn.get do |req|
42
56
  req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
43
57
  req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
44
- req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
58
+ req.headers = {
59
+ **(req.headers || {}),
60
+ **@request_client.get_headers,
61
+ **(request_options&.additional_headers || {})
62
+ }.compact
45
63
  req.params = {
46
64
  **(request_options&.additional_query_parameters || {}),
47
65
  "limit": limit,
48
66
  "search_term": search_term,
49
67
  "page_token": page_token
50
68
  }.compact
69
+ req.url "#{@request_client.get_url(environment: CandidApi, request_options: request_options)}/api/payers/v3"
51
70
  end
52
- Payers::V3::PayerPage.from_json(json_object: response.body)
71
+ CandidApiClient::Payers::V3::Types::PayerPage.from_json(json_object: response.body)
53
72
  end
54
73
  end
55
74
 
56
75
  class AsyncV3Client
76
+ # @return [CandidApiClient::AsyncRequestClient]
57
77
  attr_reader :request_client
58
78
 
59
- # @param request_client [AsyncRequestClient]
60
- # @return [Payers::V3::AsyncV3Client]
79
+ # @param request_client [CandidApiClient::AsyncRequestClient]
80
+ # @return [CandidApiClient::Payers::V3::AsyncV3Client]
61
81
  def initialize(request_client:)
62
- # @type [AsyncRequestClient]
63
82
  @request_client = request_client
64
83
  end
65
84
 
66
- # @param payer_uuid [Payers::V3::PAYER_UUID]
67
- # @param request_options [RequestOptions]
68
- # @return [Payers::V3::Payer]
85
+ # @param payer_uuid [String]
86
+ # @param request_options [CandidApiClient::RequestOptions]
87
+ # @return [CandidApiClient::Payers::V3::Types::Payer]
88
+ # @example
89
+ # api = CandidApiClient::Client.new(base_url: "https://api.example.com", environment: CandidApiClient::Environment::PRODUCTION)
90
+ # api.payers.v_3.get(payer_uuid: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32")
69
91
  def get(payer_uuid:, request_options: nil)
70
92
  Async do
71
- response = @request_client.conn.get("/api/payers/v3/#{payer_uuid}") do |req|
93
+ response = @request_client.conn.get do |req|
72
94
  req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
73
95
  req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
74
- req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
96
+ req.headers = {
97
+ **(req.headers || {}),
98
+ **@request_client.get_headers,
99
+ **(request_options&.additional_headers || {})
100
+ }.compact
101
+ req.url "#{@request_client.get_url(environment: CandidApi,
102
+ request_options: request_options)}/api/payers/v3/#{payer_uuid}"
75
103
  end
76
- Payers::V3::Payer.from_json(json_object: response.body)
104
+ CandidApiClient::Payers::V3::Types::Payer.from_json(json_object: response.body)
77
105
  end
78
106
  end
79
107
 
80
108
  # @param limit [Integer] Maximum number of entities per page, defaults to 100.
81
109
  # @param search_term [String]
82
- # @param page_token [Commons::PAGE_TOKEN]
83
- # @param request_options [RequestOptions]
84
- # @return [Payers::V3::PayerPage]
110
+ # @param page_token [String]
111
+ # @param request_options [CandidApiClient::RequestOptions]
112
+ # @return [CandidApiClient::Payers::V3::Types::PayerPage]
113
+ # @example
114
+ # api = CandidApiClient::Client.new(base_url: "https://api.example.com", environment: CandidApiClient::Environment::PRODUCTION)
115
+ # api.payers.v_3.get_all(
116
+ # limit: 100,
117
+ # search_term: "john",
118
+ # page_token: "eyJ0b2tlbiI6IjEiLCJwYWdlX3Rva2VuIjoiMiJ9"
119
+ # )
85
120
  def get_all(limit: nil, search_term: nil, page_token: nil, request_options: nil)
86
121
  Async do
87
- response = @request_client.conn.get("/api/payers/v3") do |req|
122
+ response = @request_client.conn.get do |req|
88
123
  req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
89
124
  req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
90
- req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
125
+ req.headers = {
126
+ **(req.headers || {}),
127
+ **@request_client.get_headers,
128
+ **(request_options&.additional_headers || {})
129
+ }.compact
91
130
  req.params = {
92
131
  **(request_options&.additional_query_parameters || {}),
93
132
  "limit": limit,
94
133
  "search_term": search_term,
95
134
  "page_token": page_token
96
135
  }.compact
136
+ req.url "#{@request_client.get_url(environment: CandidApi,
137
+ request_options: request_options)}/api/payers/v3"
97
138
  end
98
- Payers::V3::PayerPage.from_json(json_object: response.body)
139
+ CandidApiClient::Payers::V3::Types::PayerPage.from_json(json_object: response.body)
99
140
  end
100
141
  end
101
142
  end