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,88 +1,119 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require_relative "../../requests"
4
- require_relative "types/service_facility_id"
5
4
  require_relative "../commons/types/street_address_long_zip"
6
5
  require_relative "types/encounter_service_facility"
7
6
  require "async"
8
7
 
9
8
  module CandidApiClient
10
9
  class ServiceFacilityClient
10
+ # @return [CandidApiClient::RequestClient]
11
11
  attr_reader :request_client
12
12
 
13
- # @param request_client [RequestClient]
14
- # @return [ServiceFacilityClient]
13
+ # @param request_client [CandidApiClient::RequestClient]
14
+ # @return [CandidApiClient::ServiceFacilityClient]
15
15
  def initialize(request_client:)
16
- # @type [RequestClient]
17
16
  @request_client = request_client
18
17
  end
19
18
 
20
- # @param service_facility_id [ServiceFacility::SERVICE_FACILITY_ID]
19
+ # @param service_facility_id [String]
21
20
  # @param organization_name [String]
22
- # @param npi [String] An NPI specific to the service facility if applicable, i.e. if it has one and is not under the billing provider's NPI.
23
- # Box 32 section (a) of the CMS-1500 claim form.
24
- # @param address [Hash] zip_plus_four_code is required for service facility address. When the zip_plus_four_code is not available use "9998" as per CMS documentation.Request of type Commons::StreetAddressLongZip, as a Hash
21
+ # @param npi [String] An NPI specific to the service facility if applicable, i.e. if it has one and is
22
+ # not under the billing provider's NPI.
23
+ # Box 32 section (a) of the CMS-1500 claim form.
24
+ # @param address [Hash] zip_plus_four_code is required for service facility address. When the
25
+ # zip_plus_four_code is not available use "9998" as per CMS documentation.Request of type CandidApiClient::Commons::Types::StreetAddressLongZip, as a Hash
25
26
  # * :zip_plus_four_code (String)
26
27
  # * :address_1 (String)
27
28
  # * :address_2 (String)
28
29
  # * :city (String)
29
- # * :state (Commons::State)
30
+ # * :state (CandidApiClient::Commons::Types::State)
30
31
  # * :zip_code (String)
31
- # @param request_options [RequestOptions]
32
- # @return [ServiceFacility::EncounterServiceFacility]
32
+ # @param request_options [CandidApiClient::RequestOptions]
33
+ # @return [CandidApiClient::ServiceFacility::Types::EncounterServiceFacility]
34
+ # @example
35
+ # api = CandidApiClient::Client.new(base_url: "https://api.example.com", environment: CandidApiClient::Environment::PRODUCTION)
36
+ # api.service_facility.update(
37
+ # service_facility_id: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32",
38
+ # organization_name: "string",
39
+ # npi: "string",
40
+ # address: { address_1: "123 Main St", address_2: "Apt 1", city: "New York", state: NY, zip_code: "10001", zip_plus_four_code: "1234" }
41
+ # )
33
42
  def update(service_facility_id:, organization_name: nil, npi: nil, address: nil, request_options: nil)
34
- response = @request_client.conn.patch("/api/service_facility/v2/#{service_facility_id}") do |req|
43
+ response = @request_client.conn.patch do |req|
35
44
  req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
36
45
  req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
37
- req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
46
+ req.headers = {
47
+ **(req.headers || {}),
48
+ **@request_client.get_headers,
49
+ **(request_options&.additional_headers || {})
50
+ }.compact
38
51
  req.body = {
39
52
  **(request_options&.additional_body_parameters || {}),
40
53
  organization_name: organization_name,
41
54
  npi: npi,
42
55
  address: address
43
56
  }.compact
57
+ req.url "#{@request_client.get_url(environment: CandidApi,
58
+ request_options: request_options)}/api/service_facility/v2/#{service_facility_id}"
44
59
  end
45
- ServiceFacility::EncounterServiceFacility.from_json(json_object: response.body)
60
+ CandidApiClient::ServiceFacility::Types::EncounterServiceFacility.from_json(json_object: response.body)
46
61
  end
47
62
  end
48
63
 
49
64
  class AsyncServiceFacilityClient
65
+ # @return [CandidApiClient::AsyncRequestClient]
50
66
  attr_reader :request_client
51
67
 
52
- # @param request_client [AsyncRequestClient]
53
- # @return [AsyncServiceFacilityClient]
68
+ # @param request_client [CandidApiClient::AsyncRequestClient]
69
+ # @return [CandidApiClient::AsyncServiceFacilityClient]
54
70
  def initialize(request_client:)
55
- # @type [AsyncRequestClient]
56
71
  @request_client = request_client
57
72
  end
58
73
 
59
- # @param service_facility_id [ServiceFacility::SERVICE_FACILITY_ID]
74
+ # @param service_facility_id [String]
60
75
  # @param organization_name [String]
61
- # @param npi [String] An NPI specific to the service facility if applicable, i.e. if it has one and is not under the billing provider's NPI.
62
- # Box 32 section (a) of the CMS-1500 claim form.
63
- # @param address [Hash] zip_plus_four_code is required for service facility address. When the zip_plus_four_code is not available use "9998" as per CMS documentation.Request of type Commons::StreetAddressLongZip, as a Hash
76
+ # @param npi [String] An NPI specific to the service facility if applicable, i.e. if it has one and is
77
+ # not under the billing provider's NPI.
78
+ # Box 32 section (a) of the CMS-1500 claim form.
79
+ # @param address [Hash] zip_plus_four_code is required for service facility address. When the
80
+ # zip_plus_four_code is not available use "9998" as per CMS documentation.Request of type CandidApiClient::Commons::Types::StreetAddressLongZip, as a Hash
64
81
  # * :zip_plus_four_code (String)
65
82
  # * :address_1 (String)
66
83
  # * :address_2 (String)
67
84
  # * :city (String)
68
- # * :state (Commons::State)
85
+ # * :state (CandidApiClient::Commons::Types::State)
69
86
  # * :zip_code (String)
70
- # @param request_options [RequestOptions]
71
- # @return [ServiceFacility::EncounterServiceFacility]
87
+ # @param request_options [CandidApiClient::RequestOptions]
88
+ # @return [CandidApiClient::ServiceFacility::Types::EncounterServiceFacility]
89
+ # @example
90
+ # api = CandidApiClient::Client.new(base_url: "https://api.example.com", environment: CandidApiClient::Environment::PRODUCTION)
91
+ # api.service_facility.update(
92
+ # service_facility_id: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32",
93
+ # organization_name: "string",
94
+ # npi: "string",
95
+ # address: { address_1: "123 Main St", address_2: "Apt 1", city: "New York", state: NY, zip_code: "10001", zip_plus_four_code: "1234" }
96
+ # )
72
97
  def update(service_facility_id:, organization_name: nil, npi: nil, address: nil, request_options: nil)
73
98
  Async do
74
- response = @request_client.conn.patch("/api/service_facility/v2/#{service_facility_id}") do |req|
99
+ response = @request_client.conn.patch do |req|
75
100
  req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
76
101
  req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
77
- req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
102
+ req.headers = {
103
+ **(req.headers || {}),
104
+ **@request_client.get_headers,
105
+ **(request_options&.additional_headers || {})
106
+ }.compact
78
107
  req.body = {
79
108
  **(request_options&.additional_body_parameters || {}),
80
109
  organization_name: organization_name,
81
110
  npi: npi,
82
111
  address: address
83
112
  }.compact
113
+ req.url "#{@request_client.get_url(environment: CandidApi,
114
+ request_options: request_options)}/api/service_facility/v2/#{service_facility_id}"
84
115
  end
85
- ServiceFacility::EncounterServiceFacility.from_json(json_object: response.body)
116
+ CandidApiClient::ServiceFacility::Types::EncounterServiceFacility.from_json(json_object: response.body)
86
117
  end
87
118
  end
88
119
  end
@@ -1,76 +1,101 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "service_facility_id"
4
3
  require_relative "../../commons/types/street_address_long_zip"
4
+ require "ostruct"
5
5
  require "json"
6
6
 
7
7
  module CandidApiClient
8
- class ServiceFacility
9
- class EncounterServiceFacility
10
- attr_reader :service_facility_id, :organization_name, :npi, :address, :additional_properties
8
+ module ServiceFacility
9
+ module Types
10
+ class EncounterServiceFacility
11
+ # @return [String]
12
+ attr_reader :service_facility_id
13
+ # @return [String]
14
+ attr_reader :organization_name
15
+ # @return [String] An NPI specific to the service facility if applicable, i.e. if it has one and is
16
+ # not under the billing provider's NPI.
17
+ # Box 32 section (a) of the CMS-1500 claim form.
18
+ attr_reader :npi
19
+ # @return [CandidApiClient::Commons::Types::StreetAddressLongZip] zip_plus_four_code is required for service facility address. When the
20
+ # zip_plus_four_code is not available use "9998" as per CMS documentation.
21
+ attr_reader :address
22
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
23
+ attr_reader :additional_properties
24
+ # @return [Object]
25
+ attr_reader :_field_set
26
+ protected :_field_set
11
27
 
12
- # @param service_facility_id [ServiceFacility::SERVICE_FACILITY_ID]
13
- # @param organization_name [String]
14
- # @param npi [String] An NPI specific to the service facility if applicable, i.e. if it has one and is not under the billing provider's NPI.
15
- # Box 32 section (a) of the CMS-1500 claim form.
16
- # @param address [Commons::StreetAddressLongZip] zip_plus_four_code is required for service facility address. When the zip_plus_four_code is not available use "9998" as per CMS documentation.
17
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
18
- # @return [ServiceFacility::EncounterServiceFacility]
19
- def initialize(service_facility_id:, organization_name:, address:, npi: nil, additional_properties: nil)
20
- # @type [ServiceFacility::SERVICE_FACILITY_ID]
21
- @service_facility_id = service_facility_id
22
- # @type [String]
23
- @organization_name = organization_name
24
- # @type [String] An NPI specific to the service facility if applicable, i.e. if it has one and is not under the billing provider's NPI.
25
- # Box 32 section (a) of the CMS-1500 claim form.
26
- @npi = npi
27
- # @type [Commons::StreetAddressLongZip] zip_plus_four_code is required for service facility address. When the zip_plus_four_code is not available use "9998" as per CMS documentation.
28
- @address = address
29
- # @type [OpenStruct] Additional properties unmapped to the current class definition
30
- @additional_properties = additional_properties
31
- end
28
+ OMIT = Object.new
32
29
 
33
- # Deserialize a JSON object to an instance of EncounterServiceFacility
34
- #
35
- # @param json_object [JSON]
36
- # @return [ServiceFacility::EncounterServiceFacility]
37
- def self.from_json(json_object:)
38
- struct = JSON.parse(json_object, object_class: OpenStruct)
39
- parsed_json = JSON.parse(json_object)
40
- service_facility_id = struct.service_facility_id
41
- organization_name = struct.organization_name
42
- npi = struct.npi
43
- if parsed_json["address"].nil?
44
- address = nil
45
- else
46
- address = parsed_json["address"].to_json
47
- address = Commons::StreetAddressLongZip.from_json(json_object: address)
30
+ # @param service_facility_id [String]
31
+ # @param organization_name [String]
32
+ # @param npi [String] An NPI specific to the service facility if applicable, i.e. if it has one and is
33
+ # not under the billing provider's NPI.
34
+ # Box 32 section (a) of the CMS-1500 claim form.
35
+ # @param address [CandidApiClient::Commons::Types::StreetAddressLongZip] zip_plus_four_code is required for service facility address. When the
36
+ # zip_plus_four_code is not available use "9998" as per CMS documentation.
37
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
38
+ # @return [CandidApiClient::ServiceFacility::Types::EncounterServiceFacility]
39
+ def initialize(service_facility_id:, organization_name:, address:, npi: OMIT, additional_properties: nil)
40
+ @service_facility_id = service_facility_id
41
+ @organization_name = organization_name
42
+ @npi = npi if npi != OMIT
43
+ @address = address
44
+ @additional_properties = additional_properties
45
+ @_field_set = {
46
+ "service_facility_id": service_facility_id,
47
+ "organization_name": organization_name,
48
+ "npi": npi,
49
+ "address": address
50
+ }.reject do |_k, v|
51
+ v == OMIT
52
+ end
48
53
  end
49
- new(service_facility_id: service_facility_id, organization_name: organization_name, npi: npi, address: address,
50
- additional_properties: struct)
51
- end
52
54
 
53
- # Serialize an instance of EncounterServiceFacility to a JSON object
54
- #
55
- # @return [JSON]
56
- def to_json(*_args)
57
- {
58
- "service_facility_id": @service_facility_id,
59
- "organization_name": @organization_name,
60
- "npi": @npi,
61
- "address": @address
62
- }.to_json
63
- end
55
+ # Deserialize a JSON object to an instance of EncounterServiceFacility
56
+ #
57
+ # @param json_object [String]
58
+ # @return [CandidApiClient::ServiceFacility::Types::EncounterServiceFacility]
59
+ def self.from_json(json_object:)
60
+ struct = JSON.parse(json_object, object_class: OpenStruct)
61
+ parsed_json = JSON.parse(json_object)
62
+ service_facility_id = struct["service_facility_id"]
63
+ organization_name = struct["organization_name"]
64
+ npi = struct["npi"]
65
+ if parsed_json["address"].nil?
66
+ address = nil
67
+ else
68
+ address = parsed_json["address"].to_json
69
+ address = CandidApiClient::Commons::Types::StreetAddressLongZip.from_json(json_object: address)
70
+ end
71
+ new(
72
+ service_facility_id: service_facility_id,
73
+ organization_name: organization_name,
74
+ npi: npi,
75
+ address: address,
76
+ additional_properties: struct
77
+ )
78
+ end
64
79
 
65
- # 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.
66
- #
67
- # @param obj [Object]
68
- # @return [Void]
69
- def self.validate_raw(obj:)
70
- obj.service_facility_id.is_a?(UUID) != false || raise("Passed value for field obj.service_facility_id is not the expected type, validation failed.")
71
- obj.organization_name.is_a?(String) != false || raise("Passed value for field obj.organization_name is not the expected type, validation failed.")
72
- obj.npi&.is_a?(String) != false || raise("Passed value for field obj.npi is not the expected type, validation failed.")
73
- Commons::StreetAddressLongZip.validate_raw(obj: obj.address)
80
+ # Serialize an instance of EncounterServiceFacility to a JSON object
81
+ #
82
+ # @return [String]
83
+ def to_json(*_args)
84
+ @_field_set&.to_json
85
+ end
86
+
87
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
88
+ # hash and check each fields type against the current object's property
89
+ # definitions.
90
+ #
91
+ # @param obj [Object]
92
+ # @return [Void]
93
+ def self.validate_raw(obj:)
94
+ obj.service_facility_id.is_a?(String) != false || raise("Passed value for field obj.service_facility_id is not the expected type, validation failed.")
95
+ obj.organization_name.is_a?(String) != false || raise("Passed value for field obj.organization_name is not the expected type, validation failed.")
96
+ obj.npi&.is_a?(String) != false || raise("Passed value for field obj.npi is not the expected type, validation failed.")
97
+ CandidApiClient::Commons::Types::StreetAddressLongZip.validate_raw(obj: obj.address)
98
+ end
74
99
  end
75
100
  end
76
101
  end
@@ -1,71 +1,101 @@
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
- class ServiceFacility
8
- # Encounter Service facility is typically the location a medical service was rendered, such as a provider office or hospital.
9
- # For telehealth, service facility can represent the provider's location when the service was delivered (e.g., home),
10
- # or the location where an in-person visit would have taken place, whichever is easier to identify.
11
- # If the provider is in-network, service facility may be defined in payer contracts.
12
- # Box 32 on the CMS-1500 claim form.
13
- # Note that for an in-network claim to be successfully adjudicated, the service facility address listed on claims
14
- # must match what was provided to the payer during the credentialing process.
15
- class EncounterServiceFacilityBase
16
- attr_reader :organization_name, :npi, :address, :additional_properties
8
+ module ServiceFacility
9
+ module Types
10
+ # Encounter Service facility is typically the location a medical service was
11
+ # rendered, such as a provider office or hospital.
12
+ # For telehealth, service facility can represent the provider's location when the
13
+ # service was delivered (e.g., home),
14
+ # or the location where an in-person visit would have taken place, whichever is
15
+ # easier to identify.
16
+ # If the provider is in-network, service facility may be defined in payer
17
+ # contracts.
18
+ # Box 32 on the CMS-1500 claim form.
19
+ # Note that for an in-network claim to be successfully adjudicated, the service
20
+ # facility address listed on claims
21
+ # must match what was provided to the payer during the credentialing process.
22
+ class EncounterServiceFacilityBase
23
+ # @return [String]
24
+ attr_reader :organization_name
25
+ # @return [String] An NPI specific to the service facility if applicable, i.e. if it has one and is
26
+ # not under the billing provider's NPI.
27
+ # Box 32 section (a) of the CMS-1500 claim form.
28
+ attr_reader :npi
29
+ # @return [CandidApiClient::Commons::Types::StreetAddressLongZip] zip_plus_four_code is required for service facility address. When the
30
+ # zip_plus_four_code is not available use "9998" as per CMS documentation.
31
+ attr_reader :address
32
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
33
+ attr_reader :additional_properties
34
+ # @return [Object]
35
+ attr_reader :_field_set
36
+ protected :_field_set
17
37
 
18
- # @param organization_name [String]
19
- # @param npi [String] An NPI specific to the service facility if applicable, i.e. if it has one and is not under the billing provider's NPI.
20
- # Box 32 section (a) of the CMS-1500 claim form.
21
- # @param address [Commons::StreetAddressLongZip] zip_plus_four_code is required for service facility address. When the zip_plus_four_code is not available use "9998" as per CMS documentation.
22
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
23
- # @return [ServiceFacility::EncounterServiceFacilityBase]
24
- def initialize(organization_name:, address:, npi: nil, additional_properties: nil)
25
- # @type [String]
26
- @organization_name = organization_name
27
- # @type [String] An NPI specific to the service facility if applicable, i.e. if it has one and is not under the billing provider's NPI.
28
- # Box 32 section (a) of the CMS-1500 claim form.
29
- @npi = npi
30
- # @type [Commons::StreetAddressLongZip] zip_plus_four_code is required for service facility address. When the zip_plus_four_code is not available use "9998" as per CMS documentation.
31
- @address = address
32
- # @type [OpenStruct] Additional properties unmapped to the current class definition
33
- @additional_properties = additional_properties
34
- end
38
+ OMIT = Object.new
35
39
 
36
- # Deserialize a JSON object to an instance of EncounterServiceFacilityBase
37
- #
38
- # @param json_object [JSON]
39
- # @return [ServiceFacility::EncounterServiceFacilityBase]
40
- def self.from_json(json_object:)
41
- struct = JSON.parse(json_object, object_class: OpenStruct)
42
- parsed_json = JSON.parse(json_object)
43
- organization_name = struct.organization_name
44
- npi = struct.npi
45
- if parsed_json["address"].nil?
46
- address = nil
47
- else
48
- address = parsed_json["address"].to_json
49
- address = Commons::StreetAddressLongZip.from_json(json_object: address)
40
+ # @param organization_name [String]
41
+ # @param npi [String] An NPI specific to the service facility if applicable, i.e. if it has one and is
42
+ # not under the billing provider's NPI.
43
+ # Box 32 section (a) of the CMS-1500 claim form.
44
+ # @param address [CandidApiClient::Commons::Types::StreetAddressLongZip] zip_plus_four_code is required for service facility address. When the
45
+ # zip_plus_four_code is not available use "9998" as per CMS documentation.
46
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
47
+ # @return [CandidApiClient::ServiceFacility::Types::EncounterServiceFacilityBase]
48
+ def initialize(organization_name:, address:, npi: OMIT, additional_properties: nil)
49
+ @organization_name = organization_name
50
+ @npi = npi if npi != OMIT
51
+ @address = address
52
+ @additional_properties = additional_properties
53
+ @_field_set = { "organization_name": organization_name, "npi": npi, "address": address }.reject do |_k, v|
54
+ v == OMIT
55
+ end
50
56
  end
51
- new(organization_name: organization_name, npi: npi, address: address, additional_properties: struct)
52
- end
53
57
 
54
- # Serialize an instance of EncounterServiceFacilityBase to a JSON object
55
- #
56
- # @return [JSON]
57
- def to_json(*_args)
58
- { "organization_name": @organization_name, "npi": @npi, "address": @address }.to_json
59
- end
58
+ # Deserialize a JSON object to an instance of EncounterServiceFacilityBase
59
+ #
60
+ # @param json_object [String]
61
+ # @return [CandidApiClient::ServiceFacility::Types::EncounterServiceFacilityBase]
62
+ def self.from_json(json_object:)
63
+ struct = JSON.parse(json_object, object_class: OpenStruct)
64
+ parsed_json = JSON.parse(json_object)
65
+ organization_name = struct["organization_name"]
66
+ npi = struct["npi"]
67
+ if parsed_json["address"].nil?
68
+ address = nil
69
+ else
70
+ address = parsed_json["address"].to_json
71
+ address = CandidApiClient::Commons::Types::StreetAddressLongZip.from_json(json_object: address)
72
+ end
73
+ new(
74
+ organization_name: organization_name,
75
+ npi: npi,
76
+ address: address,
77
+ additional_properties: struct
78
+ )
79
+ end
60
80
 
61
- # 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.
62
- #
63
- # @param obj [Object]
64
- # @return [Void]
65
- def self.validate_raw(obj:)
66
- obj.organization_name.is_a?(String) != false || raise("Passed value for field obj.organization_name is not the expected type, validation failed.")
67
- obj.npi&.is_a?(String) != false || raise("Passed value for field obj.npi is not the expected type, validation failed.")
68
- Commons::StreetAddressLongZip.validate_raw(obj: obj.address)
81
+ # Serialize an instance of EncounterServiceFacilityBase to a JSON object
82
+ #
83
+ # @return [String]
84
+ def to_json(*_args)
85
+ @_field_set&.to_json
86
+ end
87
+
88
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
89
+ # hash and check each fields type against the current object's property
90
+ # definitions.
91
+ #
92
+ # @param obj [Object]
93
+ # @return [Void]
94
+ def self.validate_raw(obj:)
95
+ obj.organization_name.is_a?(String) != false || raise("Passed value for field obj.organization_name is not the expected type, validation failed.")
96
+ obj.npi&.is_a?(String) != false || raise("Passed value for field obj.npi is not the expected type, validation failed.")
97
+ CandidApiClient::Commons::Types::StreetAddressLongZip.validate_raw(obj: obj.address)
98
+ end
69
99
  end
70
100
  end
71
101
  end
@@ -3,37 +3,39 @@
3
3
  module CandidApiClient
4
4
  module ServiceLines
5
5
  module V2
6
- class DenialReasonContent
7
- AUTHORIZATION_REQUIRED = "Authorization Required"
8
- REFERRAL_REQUIRED = "Referral Required"
9
- MEDICAL_RECORDS_REQUESTED = "Medical Records Requested"
10
- TIMELY_FILING = "Timely Filing"
11
- DUPLICATE_CLAIM = "Duplicate Claim"
12
- INCORRECT_PLACE_OF_SERVICE = "Incorrect Place of Service"
13
- INCORRECT_PATIENT_GENDER = "Incorrect Patient Gender"
14
- BUNDLED = "Bundled"
15
- EXCEEDED_BILLABLE_TIME = "Exceeded Billable Time"
16
- INVALID_PROVIDER_INFORMATION = "Invalid Provider Information"
17
- INVALID_DIAGNOSIS_CODE = "Invalid Diagnosis Code"
18
- INCORRECT_PROCEDURE_CODE = "Incorrect Procedure Code"
19
- INVALID_MODIFIER = "Invalid Modifier"
20
- MISSING_NDC_CODE = "Missing NDC Code"
21
- INVALID_INSURANCE_DATA = "Invalid Insurance Data"
22
- NO_ACTIVE_COVERAGE = "No Active Coverage"
23
- COORDINATION_OF_BENEFITS = "Coordination of Benefits"
24
- INCORRECT_PAYER = "Incorrect Payer"
25
- CREDENTIALING = "Credentialing"
26
- NO_EFFECTIVE_CONTRACT = "No Effective Contract"
27
- MISSING_W_9 = "Missing W-9"
28
- MISSING_CONTRACT_LINKAGE = "Missing Contract Linkage"
29
- NON_COVERED_BENEFIT = "Non-Covered Benefit"
30
- EXPERIMENTAL_PROCEDURE = "Experimental Procedure"
31
- NOT_MEDICALLY_NECESSARY = "Not Medically Necessary"
32
- INFO_REQUESTED_FROM_PROVIDER = "Info Requested from Provider"
33
- INFO_REQUESTED_FROM_PATIENT = "Info Requested from Patient"
34
- BILLING_ERROR = "Billing Error"
35
- UNKNOWN = "Unknown"
36
- MAX_BENEFIT_REACHED = "Max Benefit Reached"
6
+ module Types
7
+ class DenialReasonContent
8
+ AUTHORIZATION_REQUIRED = "Authorization Required"
9
+ REFERRAL_REQUIRED = "Referral Required"
10
+ MEDICAL_RECORDS_REQUESTED = "Medical Records Requested"
11
+ TIMELY_FILING = "Timely Filing"
12
+ DUPLICATE_CLAIM = "Duplicate Claim"
13
+ INCORRECT_PLACE_OF_SERVICE = "Incorrect Place of Service"
14
+ INCORRECT_PATIENT_GENDER = "Incorrect Patient Gender"
15
+ BUNDLED = "Bundled"
16
+ EXCEEDED_BILLABLE_TIME = "Exceeded Billable Time"
17
+ INVALID_PROVIDER_INFORMATION = "Invalid Provider Information"
18
+ INVALID_DIAGNOSIS_CODE = "Invalid Diagnosis Code"
19
+ INCORRECT_PROCEDURE_CODE = "Incorrect Procedure Code"
20
+ INVALID_MODIFIER = "Invalid Modifier"
21
+ MISSING_NDC_CODE = "Missing NDC Code"
22
+ INVALID_INSURANCE_DATA = "Invalid Insurance Data"
23
+ NO_ACTIVE_COVERAGE = "No Active Coverage"
24
+ COORDINATION_OF_BENEFITS = "Coordination of Benefits"
25
+ INCORRECT_PAYER = "Incorrect Payer"
26
+ CREDENTIALING = "Credentialing"
27
+ NO_EFFECTIVE_CONTRACT = "No Effective Contract"
28
+ MISSING_W_9 = "Missing W-9"
29
+ MISSING_CONTRACT_LINKAGE = "Missing Contract Linkage"
30
+ NON_COVERED_BENEFIT = "Non-Covered Benefit"
31
+ EXPERIMENTAL_PROCEDURE = "Experimental Procedure"
32
+ NOT_MEDICALLY_NECESSARY = "Not Medically Necessary"
33
+ INFO_REQUESTED_FROM_PROVIDER = "Info Requested from Provider"
34
+ INFO_REQUESTED_FROM_PATIENT = "Info Requested from Patient"
35
+ BILLING_ERROR = "Billing Error"
36
+ UNKNOWN = "Unknown"
37
+ MAX_BENEFIT_REACHED = "Max Benefit Reached"
38
+ end
37
39
  end
38
40
  end
39
41
  end