candidhealth 0.17.1

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 (346) hide show
  1. checksums.yaml +7 -0
  2. data/lib/candidhealth/auth/client.rb +28 -0
  3. data/lib/candidhealth/auth/v_2/client.rb +90 -0
  4. data/lib/candidhealth/auth/v_2/types/auth_get_token_request.rb +54 -0
  5. data/lib/candidhealth/auth/v_2/types/auth_get_token_response.rb +59 -0
  6. data/lib/candidhealth/auth/v_2/types/too_many_requests_error_type.rb +49 -0
  7. data/lib/candidhealth/billing_notes/client.rb +28 -0
  8. data/lib/candidhealth/billing_notes/v_2/client.rb +76 -0
  9. data/lib/candidhealth/billing_notes/v_2/types/billing_note.rb +89 -0
  10. data/lib/candidhealth/billing_notes/v_2/types/billing_note_base.rb +49 -0
  11. data/lib/candidhealth/billing_notes/v_2/types/billing_note_id.rb +9 -0
  12. data/lib/candidhealth/claim_submission/v_1/types/claim_frequency_type_code.rb +14 -0
  13. data/lib/candidhealth/claim_submission/v_1/types/claim_submission_record_create.rb +68 -0
  14. data/lib/candidhealth/claim_submission/v_1/types/external_claim_submission_create.rb +75 -0
  15. data/lib/candidhealth/claims/types/claim.rb +98 -0
  16. data/lib/candidhealth/claims/types/claim_status.rb +23 -0
  17. data/lib/candidhealth/commons/types/claim_adjustment_group_codes.rb +17 -0
  18. data/lib/candidhealth/commons/types/claim_id.rb +7 -0
  19. data/lib/candidhealth/commons/types/claim_submission_payer_responsibility_type.rb +10 -0
  20. data/lib/candidhealth/commons/types/date.rb +7 -0
  21. data/lib/candidhealth/commons/types/date_range_optional_end.rb +53 -0
  22. data/lib/candidhealth/commons/types/decimal.rb +7 -0
  23. data/lib/candidhealth/commons/types/delay_reason_code.rb +23 -0
  24. data/lib/candidhealth/commons/types/email.rb +7 -0
  25. data/lib/candidhealth/commons/types/emr_payer_crosswalk.rb +10 -0
  26. data/lib/candidhealth/commons/types/encounter_external_id.rb +7 -0
  27. data/lib/candidhealth/commons/types/encounter_id.rb +7 -0
  28. data/lib/candidhealth/commons/types/entity_not_found_error_message.rb +47 -0
  29. data/lib/candidhealth/commons/types/error_message.rb +7 -0
  30. data/lib/candidhealth/commons/types/facility_type_code.rb +61 -0
  31. data/lib/candidhealth/commons/types/http_service_unavailable_error_message.rb +47 -0
  32. data/lib/candidhealth/commons/types/insurance_type_code.rb +79 -0
  33. data/lib/candidhealth/commons/types/invoice_id.rb +7 -0
  34. data/lib/candidhealth/commons/types/link_url.rb +7 -0
  35. data/lib/candidhealth/commons/types/npi.rb +7 -0
  36. data/lib/candidhealth/commons/types/organization_id.rb +7 -0
  37. data/lib/candidhealth/commons/types/organization_not_authorized_error_message.rb +47 -0
  38. data/lib/candidhealth/commons/types/page_token.rb +7 -0
  39. data/lib/candidhealth/commons/types/patient_external_id.rb +7 -0
  40. data/lib/candidhealth/commons/types/patient_relationship_to_insured_code_all.rb +32 -0
  41. data/lib/candidhealth/commons/types/phone_number.rb +53 -0
  42. data/lib/candidhealth/commons/types/phone_number_type.rb +11 -0
  43. data/lib/candidhealth/commons/types/procedure_modifier.rb +395 -0
  44. data/lib/candidhealth/commons/types/provider_id.rb +7 -0
  45. data/lib/candidhealth/commons/types/region_national.rb +41 -0
  46. data/lib/candidhealth/commons/types/region_states.rb +48 -0
  47. data/lib/candidhealth/commons/types/regions.rb +92 -0
  48. data/lib/candidhealth/commons/types/removable_date_range_optional_end.rb +90 -0
  49. data/lib/candidhealth/commons/types/request_validation_error.rb +52 -0
  50. data/lib/candidhealth/commons/types/resource_page.rb +53 -0
  51. data/lib/candidhealth/commons/types/service_line_id.rb +7 -0
  52. data/lib/candidhealth/commons/types/service_line_units.rb +10 -0
  53. data/lib/candidhealth/commons/types/sort_direction.rb +10 -0
  54. data/lib/candidhealth/commons/types/source_of_payment_code.rb +31 -0
  55. data/lib/candidhealth/commons/types/state.rb +70 -0
  56. data/lib/candidhealth/commons/types/street_address_base.rb +75 -0
  57. data/lib/candidhealth/commons/types/street_address_long_zip.rb +82 -0
  58. data/lib/candidhealth/commons/types/street_address_short_zip.rb +82 -0
  59. data/lib/candidhealth/commons/types/task_assignment_id.rb +7 -0
  60. data/lib/candidhealth/commons/types/task_id.rb +7 -0
  61. data/lib/candidhealth/commons/types/task_note_id.rb +7 -0
  62. data/lib/candidhealth/commons/types/tax_id.rb +7 -0
  63. data/lib/candidhealth/commons/types/unauthorized_error_message.rb +47 -0
  64. data/lib/candidhealth/commons/types/unprocessable_entity_error_message.rb +47 -0
  65. data/lib/candidhealth/commons/types/updates_disabled_due_to_external_system_integration_error_message.rb +47 -0
  66. data/lib/candidhealth/commons/types/user_id.rb +7 -0
  67. data/lib/candidhealth/commons/types/work_queue_id.rb +7 -0
  68. data/lib/candidhealth/contracts/client.rb +28 -0
  69. data/lib/candidhealth/contracts/v_2/client.rb +336 -0
  70. data/lib/candidhealth/contracts/v_2/types/authorized_signatory.rb +83 -0
  71. data/lib/candidhealth/contracts/v_2/types/authorized_signatory_update.rb +92 -0
  72. data/lib/candidhealth/contracts/v_2/types/contract.rb +165 -0
  73. data/lib/candidhealth/contracts/v_2/types/contract_base.rb +128 -0
  74. data/lib/candidhealth/contracts/v_2/types/contract_id.rb +9 -0
  75. data/lib/candidhealth/contracts/v_2/types/contract_is_linked_to_fee_schedule_error.rb +49 -0
  76. data/lib/candidhealth/contracts/v_2/types/contract_status.rb +13 -0
  77. data/lib/candidhealth/contracts/v_2/types/contract_with_providers.rb +177 -0
  78. data/lib/candidhealth/contracts/v_2/types/contracting_provider_id.rb +9 -0
  79. data/lib/candidhealth/contracts/v_2/types/contracts_page.rb +65 -0
  80. data/lib/candidhealth/contracts/v_2/types/date_update.rb +92 -0
  81. data/lib/candidhealth/contracts/v_2/types/insurance_types.rb +103 -0
  82. data/lib/candidhealth/contracts/v_2/types/regions_update.rb +92 -0
  83. data/lib/candidhealth/contracts/v_2/types/rendering_providerid.rb +9 -0
  84. data/lib/candidhealth/diagnoses/types/diagnosis.rb +106 -0
  85. data/lib/candidhealth/diagnoses/types/diagnosis_create.rb +72 -0
  86. data/lib/candidhealth/diagnoses/types/diagnosis_id.rb +7 -0
  87. data/lib/candidhealth/diagnoses/types/diagnosis_type_code.rb +18 -0
  88. data/lib/candidhealth/diagnoses/types/standalone_diagnosis_create.rb +78 -0
  89. data/lib/candidhealth/eligibility/client.rb +28 -0
  90. data/lib/candidhealth/eligibility/v_2/client.rb +136 -0
  91. data/lib/candidhealth/encounter_providers/v_2/types/billing_provider.rb +104 -0
  92. data/lib/candidhealth/encounter_providers/v_2/types/encounter_provider.rb +103 -0
  93. data/lib/candidhealth/encounter_providers/v_2/types/encounter_provider_base.rb +60 -0
  94. data/lib/candidhealth/encounter_providers/v_2/types/provider_id.rb +9 -0
  95. data/lib/candidhealth/encounter_providers/v_2/types/referring_provider.rb +91 -0
  96. data/lib/candidhealth/encounter_providers/v_2/types/rendering_provider.rb +91 -0
  97. data/lib/candidhealth/encounters/client.rb +28 -0
  98. data/lib/candidhealth/encounters/v_4/client.rb +1125 -0
  99. data/lib/candidhealth/encounters/v_4/types/billable_status_type.rb +12 -0
  100. data/lib/candidhealth/encounters/v_4/types/cash_pay_payer_error_message.rb +49 -0
  101. data/lib/candidhealth/encounters/v_4/types/clinical_note.rb +67 -0
  102. data/lib/candidhealth/encounters/v_4/types/clinical_note_category.rb +64 -0
  103. data/lib/candidhealth/encounters/v_4/types/clinical_note_category_create.rb +59 -0
  104. data/lib/candidhealth/encounters/v_4/types/coding_attribution_type.rb +14 -0
  105. data/lib/candidhealth/encounters/v_4/types/encounter.rb +515 -0
  106. data/lib/candidhealth/encounters/v_4/types/encounter_base.rb +274 -0
  107. data/lib/candidhealth/encounters/v_4/types/encounter_external_id_uniqueness_error_type.rb +50 -0
  108. data/lib/candidhealth/encounters/v_4/types/encounter_guarantor_missing_contact_info_error_type.rb +49 -0
  109. data/lib/candidhealth/encounters/v_4/types/encounter_owner_of_next_action_type.rb +14 -0
  110. data/lib/candidhealth/encounters/v_4/types/encounter_page.rb +65 -0
  111. data/lib/candidhealth/encounters/v_4/types/encounter_patient_control_number_uniqueness_error_type.rb +49 -0
  112. data/lib/candidhealth/encounters/v_4/types/encounter_sort_options.rb +14 -0
  113. data/lib/candidhealth/encounters/v_4/types/encounter_submission_origin_type.rb +12 -0
  114. data/lib/candidhealth/encounters/v_4/types/intake_follow_up.rb +60 -0
  115. data/lib/candidhealth/encounters/v_4/types/intake_follow_up_id.rb +9 -0
  116. data/lib/candidhealth/encounters/v_4/types/intake_question.rb +64 -0
  117. data/lib/candidhealth/encounters/v_4/types/intake_question_id.rb +9 -0
  118. data/lib/candidhealth/encounters/v_4/types/intake_response_and_follow_ups.rb +58 -0
  119. data/lib/candidhealth/encounters/v_4/types/intervention.rb +87 -0
  120. data/lib/candidhealth/encounters/v_4/types/intervention_category.rb +14 -0
  121. data/lib/candidhealth/encounters/v_4/types/lab.rb +60 -0
  122. data/lib/candidhealth/encounters/v_4/types/lab_code_type.rb +12 -0
  123. data/lib/candidhealth/encounters/v_4/types/medication.rb +84 -0
  124. data/lib/candidhealth/encounters/v_4/types/note_category.rb +24 -0
  125. data/lib/candidhealth/encounters/v_4/types/patient_history_category.rb +59 -0
  126. data/lib/candidhealth/encounters/v_4/types/patient_history_category_enum.rb +14 -0
  127. data/lib/candidhealth/encounters/v_4/types/prior_authorization_number.rb +9 -0
  128. data/lib/candidhealth/encounters/v_4/types/responsible_party_type.rb +13 -0
  129. data/lib/candidhealth/encounters/v_4/types/rx_cui.rb +9 -0
  130. data/lib/candidhealth/encounters/v_4/types/service_authorization_exception_code.rb +19 -0
  131. data/lib/candidhealth/encounters/v_4/types/synchronicity_type.rb +12 -0
  132. data/lib/candidhealth/encounters/v_4/types/vitals.rb +78 -0
  133. data/lib/candidhealth/era/types/era.rb +59 -0
  134. data/lib/candidhealth/era/types/era_base.rb +53 -0
  135. data/lib/candidhealth/era/types/era_id.rb +7 -0
  136. data/lib/candidhealth/era/types/era_not_fully_processed_error_message.rb +53 -0
  137. data/lib/candidhealth/era_commons/types/claim_status_code_create.rb +18 -0
  138. data/lib/candidhealth/expected_network_status/client.rb +31 -0
  139. data/lib/candidhealth/expected_network_status/v_1/client.rb +112 -0
  140. data/lib/candidhealth/expected_network_status/v_1/types/expected_network_status.rb +13 -0
  141. data/lib/candidhealth/expected_network_status/v_1/types/expected_network_status_response.rb +66 -0
  142. data/lib/candidhealth/expected_network_status/v_2/client.rb +183 -0
  143. data/lib/candidhealth/expected_network_status/v_2/types/compute_all_in_network_providers_request.rb +119 -0
  144. data/lib/candidhealth/expected_network_status/v_2/types/compute_all_in_network_providers_response.rb +65 -0
  145. data/lib/candidhealth/expected_network_status/v_2/types/compute_all_in_network_rendering_providers_result.rb +107 -0
  146. data/lib/candidhealth/expected_network_status/v_2/types/expected_network_status_check_error_message.rb +49 -0
  147. data/lib/candidhealth/expected_network_status/v_2/types/expected_network_status_request_v_2.rb +119 -0
  148. data/lib/candidhealth/expected_network_status/v_2/types/expected_network_status_response_v_2.rb +62 -0
  149. data/lib/candidhealth/expected_network_status/v_2/types/expected_network_status_subscriber_information.rb +67 -0
  150. data/lib/candidhealth/expected_network_status/v_2/types/expected_network_status_v_2.rb +107 -0
  151. data/lib/candidhealth/expected_network_status/v_2/types/explanation.rb +18 -0
  152. data/lib/candidhealth/expected_network_status/v_2/types/in_network_rendering_providers_detail.rb +67 -0
  153. data/lib/candidhealth/expected_network_status/v_2/types/in_network_status.rb +57 -0
  154. data/lib/candidhealth/expected_network_status/v_2/types/indeterminate_network_status.rb +74 -0
  155. data/lib/candidhealth/expected_network_status/v_2/types/insurance_type.rb +62 -0
  156. data/lib/candidhealth/expected_network_status/v_2/types/insurance_type_codes.rb +103 -0
  157. data/lib/candidhealth/expected_network_status/v_2/types/line_of_business.rb +13 -0
  158. data/lib/candidhealth/expected_network_status/v_2/types/network_status_check_id.rb +9 -0
  159. data/lib/candidhealth/expected_network_status/v_2/types/out_of_network_status.rb +67 -0
  160. data/lib/candidhealth/expected_network_status/v_2/types/service_type.rb +51 -0
  161. data/lib/candidhealth/exports/client.rb +28 -0
  162. data/lib/candidhealth/exports/v_3/client.rb +102 -0
  163. data/lib/candidhealth/exports/v_3/types/get_exports_response.rb +75 -0
  164. data/lib/candidhealth/financials/types/account_type.rb +10 -0
  165. data/lib/candidhealth/financials/types/allocation.rb +58 -0
  166. data/lib/candidhealth/financials/types/allocation_create.rb +60 -0
  167. data/lib/candidhealth/financials/types/allocation_target.rb +118 -0
  168. data/lib/candidhealth/financials/types/allocation_target_create.rb +118 -0
  169. data/lib/candidhealth/financials/types/billing_provider_allocation_target.rb +48 -0
  170. data/lib/candidhealth/financials/types/claim_allocation_target.rb +54 -0
  171. data/lib/candidhealth/financials/types/invoice_update.rb +90 -0
  172. data/lib/candidhealth/financials/types/note_update.rb +89 -0
  173. data/lib/candidhealth/financials/types/patient_transaction_source.rb +15 -0
  174. data/lib/candidhealth/financials/types/refund_reason.rb +9 -0
  175. data/lib/candidhealth/financials/types/refund_reason_update.rb +90 -0
  176. data/lib/candidhealth/financials/types/service_line_allocation_target.rb +61 -0
  177. data/lib/candidhealth/guarantor/client.rb +28 -0
  178. data/lib/candidhealth/guarantor/v_1/client.rb +224 -0
  179. data/lib/candidhealth/guarantor/v_1/types/encounter_has_existing_guarantor_error_type.rb +49 -0
  180. data/lib/candidhealth/guarantor/v_1/types/guarantor.rb +121 -0
  181. data/lib/candidhealth/guarantor/v_1/types/guarantor_base.rb +84 -0
  182. data/lib/candidhealth/guarantor/v_1/types/guarantor_create.rb +114 -0
  183. data/lib/candidhealth/guarantor/v_1/types/guarantor_id.rb +9 -0
  184. data/lib/candidhealth/identifiers/types/identifier.rb +82 -0
  185. data/lib/candidhealth/identifiers/types/identifier_base.rb +71 -0
  186. data/lib/candidhealth/identifiers/types/identifier_code.rb +10 -0
  187. data/lib/candidhealth/identifiers/types/identifier_create.rb +71 -0
  188. data/lib/candidhealth/identifiers/types/identifier_id.rb +7 -0
  189. data/lib/candidhealth/identifiers/types/identifier_update.rb +83 -0
  190. data/lib/candidhealth/identifiers/types/identifier_value.rb +92 -0
  191. data/lib/candidhealth/identifiers/types/medicaid_provider_identifier.rb +53 -0
  192. data/lib/candidhealth/identifiers/types/medicare_provider_identifier.rb +53 -0
  193. data/lib/candidhealth/identifiers/types/updatable_identifier.rb +105 -0
  194. data/lib/candidhealth/individual/types/gender.rb +13 -0
  195. data/lib/candidhealth/individual/types/individual_base.rb +58 -0
  196. data/lib/candidhealth/individual/types/individual_id.rb +7 -0
  197. data/lib/candidhealth/individual/types/patient.rb +126 -0
  198. data/lib/candidhealth/individual/types/patient_base.rb +89 -0
  199. data/lib/candidhealth/individual/types/patient_create.rb +119 -0
  200. data/lib/candidhealth/individual/types/subscriber.rb +110 -0
  201. data/lib/candidhealth/individual/types/subscriber_base.rb +91 -0
  202. data/lib/candidhealth/individual/types/subscriber_create.rb +103 -0
  203. data/lib/candidhealth/insurance_adjudications/client.rb +28 -0
  204. data/lib/candidhealth/insurance_adjudications/v_1/client.rb +143 -0
  205. data/lib/candidhealth/insurance_adjudications/v_1/types/claim_adjudication.rb +101 -0
  206. data/lib/candidhealth/insurance_adjudications/v_1/types/claim_adjudication_create.rb +95 -0
  207. data/lib/candidhealth/insurance_adjudications/v_1/types/insurance_adjudication.rb +99 -0
  208. data/lib/candidhealth/insurance_adjudications/v_1/types/insurance_adjudication_create.rb +109 -0
  209. data/lib/candidhealth/insurance_adjudications/v_1/types/insurance_adjudication_id.rb +9 -0
  210. data/lib/candidhealth/insurance_adjudications/v_1/types/service_line_adjudication.rb +112 -0
  211. data/lib/candidhealth/insurance_adjudications/v_1/types/service_line_adjudication_create.rb +105 -0
  212. data/lib/candidhealth/insurance_adjudications/v_1/types/service_line_adjudication_id.rb +9 -0
  213. data/lib/candidhealth/insurance_cards/v_2/types/insurance_card.rb +123 -0
  214. data/lib/candidhealth/insurance_cards/v_2/types/insurance_card_base.rb +73 -0
  215. data/lib/candidhealth/insurance_cards/v_2/types/insurance_card_create.rb +123 -0
  216. data/lib/candidhealth/insurance_cards/v_2/types/insurance_card_id.rb +9 -0
  217. data/lib/candidhealth/insurance_payments/client.rb +28 -0
  218. data/lib/candidhealth/insurance_payments/v_1/client.rb +269 -0
  219. data/lib/candidhealth/insurance_payments/v_1/types/insurance_payment.rb +98 -0
  220. data/lib/candidhealth/insurance_payments/v_1/types/insurance_payment_create.rb +91 -0
  221. data/lib/candidhealth/insurance_payments/v_1/types/insurance_payment_id.rb +9 -0
  222. data/lib/candidhealth/insurance_payments/v_1/types/insurance_payment_sort_field.rb +13 -0
  223. data/lib/candidhealth/insurance_payments/v_1/types/insurance_payments_page.rb +65 -0
  224. data/lib/candidhealth/insurance_refunds/client.rb +28 -0
  225. data/lib/candidhealth/insurance_refunds/v_1/client.rb +280 -0
  226. data/lib/candidhealth/insurance_refunds/v_1/types/insurance_refund.rb +105 -0
  227. data/lib/candidhealth/insurance_refunds/v_1/types/insurance_refund_create.rb +98 -0
  228. data/lib/candidhealth/insurance_refunds/v_1/types/insurance_refund_id.rb +9 -0
  229. data/lib/candidhealth/insurance_refunds/v_1/types/insurance_refund_sort_field.rb +14 -0
  230. data/lib/candidhealth/insurance_refunds/v_1/types/insurance_refunds_page.rb +65 -0
  231. data/lib/candidhealth/invoices/types/invoice.rb +134 -0
  232. data/lib/candidhealth/invoices/types/invoice_item.rb +53 -0
  233. data/lib/candidhealth/invoices/types/invoice_status.rb +13 -0
  234. data/lib/candidhealth/organization_providers/client.rb +28 -0
  235. data/lib/candidhealth/organization_providers/v_2/types/address_type.rb +11 -0
  236. data/lib/candidhealth/organization_providers/v_2/types/employment_status.rb +12 -0
  237. data/lib/candidhealth/organization_providers/v_2/types/license_type.rb +78 -0
  238. data/lib/candidhealth/organization_providers/v_2/types/organization_provider.rb +159 -0
  239. data/lib/candidhealth/organization_providers/v_2/types/organization_provider_address.rb +61 -0
  240. data/lib/candidhealth/organization_providers/v_2/types/organization_provider_base.rb +132 -0
  241. data/lib/candidhealth/organization_providers/v_2/types/organization_provider_id.rb +9 -0
  242. data/lib/candidhealth/organization_providers/v_2/types/organization_provider_sort_options.rb +14 -0
  243. data/lib/candidhealth/organization_providers/v_2/types/provider_type.rb +12 -0
  244. data/lib/candidhealth/organization_providers/v_3/client.rb +239 -0
  245. data/lib/candidhealth/organization_providers/v_3/types/organization_provider_create_v_2.rb +147 -0
  246. data/lib/candidhealth/organization_providers/v_3/types/organization_provider_page_v_2.rb +65 -0
  247. data/lib/candidhealth/organization_providers/v_3/types/organization_provider_update_v_2.rb +143 -0
  248. data/lib/candidhealth/organization_providers/v_3/types/organization_provider_v_2.rb +154 -0
  249. data/lib/candidhealth/organization_service_facilities/client.rb +28 -0
  250. data/lib/candidhealth/organization_service_facilities/v_2/client.rb +256 -0
  251. data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility.rb +134 -0
  252. data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility_create.rb +127 -0
  253. data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility_id.rb +9 -0
  254. data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility_page.rb +65 -0
  255. data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility_update.rb +127 -0
  256. data/lib/candidhealth/organization_service_facilities/v_2/types/service_facility_mode.rb +12 -0
  257. data/lib/candidhealth/organization_service_facilities/v_2/types/service_facility_operational_status.rb +16 -0
  258. data/lib/candidhealth/organization_service_facilities/v_2/types/service_facility_physical_type.rb +24 -0
  259. data/lib/candidhealth/organization_service_facilities/v_2/types/service_facility_status.rb +13 -0
  260. data/lib/candidhealth/organization_service_facilities/v_2/types/service_facility_type.rb +133 -0
  261. data/lib/candidhealth/patient_payments/client.rb +28 -0
  262. data/lib/candidhealth/patient_payments/v_3/types/patient_payment.rb +130 -0
  263. data/lib/candidhealth/patient_payments/v_3/types/patient_payment_id.rb +9 -0
  264. data/lib/candidhealth/patient_payments/v_3/types/patient_payment_source.rb +19 -0
  265. data/lib/candidhealth/patient_payments/v_3/types/patient_payment_status.rb +21 -0
  266. data/lib/candidhealth/patient_payments/v_4/client.rb +304 -0
  267. data/lib/candidhealth/patient_payments/v_4/types/patient_payment.rb +120 -0
  268. data/lib/candidhealth/patient_payments/v_4/types/patient_payment_id.rb +9 -0
  269. data/lib/candidhealth/patient_payments/v_4/types/patient_payment_sort_field.rb +14 -0
  270. data/lib/candidhealth/patient_payments/v_4/types/patient_payments_page.rb +65 -0
  271. data/lib/candidhealth/patient_refunds/client.rb +28 -0
  272. data/lib/candidhealth/patient_refunds/v_1/client.rb +316 -0
  273. data/lib/candidhealth/patient_refunds/v_1/types/patient_refund.rb +127 -0
  274. data/lib/candidhealth/patient_refunds/v_1/types/patient_refund_id.rb +9 -0
  275. data/lib/candidhealth/patient_refunds/v_1/types/patient_refund_sort_field.rb +15 -0
  276. data/lib/candidhealth/patient_refunds/v_1/types/patient_refunds_page.rb +65 -0
  277. data/lib/candidhealth/payers/client.rb +28 -0
  278. data/lib/candidhealth/payers/v_3/client.rb +104 -0
  279. data/lib/candidhealth/payers/v_3/types/payer.rb +60 -0
  280. data/lib/candidhealth/payers/v_3/types/payer_id.rb +9 -0
  281. data/lib/candidhealth/payers/v_3/types/payer_identifier.rb +94 -0
  282. data/lib/candidhealth/payers/v_3/types/payer_info.rb +56 -0
  283. data/lib/candidhealth/payers/v_3/types/payer_name.rb +9 -0
  284. data/lib/candidhealth/payers/v_3/types/payer_page.rb +65 -0
  285. data/lib/candidhealth/payers/v_3/types/payer_uuid.rb +9 -0
  286. data/lib/candidhealth/remits/v_1/types/payee.rb +60 -0
  287. data/lib/candidhealth/remits/v_1/types/payee_identifier.rb +102 -0
  288. data/lib/candidhealth/service_facility/client.rb +89 -0
  289. data/lib/candidhealth/service_facility/types/encounter_service_facility.rb +77 -0
  290. data/lib/candidhealth/service_facility/types/encounter_service_facility_base.rb +72 -0
  291. data/lib/candidhealth/service_facility/types/service_facility_id.rb +7 -0
  292. data/lib/candidhealth/service_lines/v_2/types/denial_reason_content.rb +40 -0
  293. data/lib/candidhealth/service_lines/v_2/types/drug_identification.rb +86 -0
  294. data/lib/candidhealth/service_lines/v_2/types/measurement_unit_code.rb +15 -0
  295. data/lib/candidhealth/service_lines/v_2/types/service_id_qualifier.rb +17 -0
  296. data/lib/candidhealth/service_lines/v_2/types/service_line.rb +225 -0
  297. data/lib/candidhealth/service_lines/v_2/types/service_line_adjustment.rb +79 -0
  298. data/lib/candidhealth/service_lines/v_2/types/service_line_create.rb +120 -0
  299. data/lib/candidhealth/service_lines/v_2/types/service_line_denial_reason.rb +52 -0
  300. data/lib/candidhealth/service_lines/v_2/types/service_line_era_data.rb +62 -0
  301. data/lib/candidhealth/tags/types/tag.rb +65 -0
  302. data/lib/candidhealth/tags/types/tag_color_enum.rb +18 -0
  303. data/lib/candidhealth/tags/types/tag_create.rb +59 -0
  304. data/lib/candidhealth/tags/types/tag_id.rb +7 -0
  305. data/lib/candidhealth/tasks/client.rb +28 -0
  306. data/lib/candidhealth/tasks/commons/types/task_category.rb +50 -0
  307. data/lib/candidhealth/tasks/commons/types/task_status.rb +17 -0
  308. data/lib/candidhealth/tasks/commons/types/task_type.rb +22 -0
  309. data/lib/candidhealth/tasks/v_3/client.rb +259 -0
  310. data/lib/candidhealth/tasks/v_3/types/task.rb +170 -0
  311. data/lib/candidhealth/tasks/v_3/types/task_action.rb +66 -0
  312. data/lib/candidhealth/tasks/v_3/types/task_action_execution_method.rb +79 -0
  313. data/lib/candidhealth/tasks/v_3/types/task_action_type.rb +12 -0
  314. data/lib/candidhealth/tasks/v_3/types/task_actions.rb +53 -0
  315. data/lib/candidhealth/tasks/v_3/types/task_assignment.rb +56 -0
  316. data/lib/candidhealth/tasks/v_3/types/task_create_v_3.rb +95 -0
  317. data/lib/candidhealth/tasks/v_3/types/task_note.rb +79 -0
  318. data/lib/candidhealth/tasks/v_3/types/task_page.rb +65 -0
  319. data/lib/candidhealth/tasks/v_3/types/task_sort_options.rb +32 -0
  320. data/lib/candidhealth/tasks/v_3/types/task_update_v_3.rb +66 -0
  321. data/lib/candidhealth/tasks/v_3/types/task_updated_to_deprecated_status_error_type.rb +50 -0
  322. data/lib/candidhealth/write_offs/client.rb +28 -0
  323. data/lib/candidhealth/write_offs/v_1/client.rb +218 -0
  324. data/lib/candidhealth/write_offs/v_1/types/create_write_offs_response.rb +53 -0
  325. data/lib/candidhealth/write_offs/v_1/types/insurance_write_off.rb +119 -0
  326. data/lib/candidhealth/write_offs/v_1/types/insurance_write_off_create.rb +100 -0
  327. data/lib/candidhealth/write_offs/v_1/types/insurance_write_off_reason.rb +25 -0
  328. data/lib/candidhealth/write_offs/v_1/types/insurance_write_off_target.rb +103 -0
  329. data/lib/candidhealth/write_offs/v_1/types/patient_write_off.rb +102 -0
  330. data/lib/candidhealth/write_offs/v_1/types/patient_write_off_create.rb +83 -0
  331. data/lib/candidhealth/write_offs/v_1/types/patient_write_off_reason.rb +19 -0
  332. data/lib/candidhealth/write_offs/v_1/types/write_off.rb +94 -0
  333. data/lib/candidhealth/write_offs/v_1/types/write_off_create.rb +94 -0
  334. data/lib/candidhealth/write_offs/v_1/types/write_off_id.rb +9 -0
  335. data/lib/candidhealth/write_offs/v_1/types/write_off_sort_field.rb +13 -0
  336. data/lib/candidhealth/write_offs/v_1/types/write_offs_page.rb +65 -0
  337. data/lib/candidhealth/x_12/v_1/types/carc.rb +412 -0
  338. data/lib/candidhealth/x_12/v_1/types/claim_adjustment_reason_code.rb +62 -0
  339. data/lib/candidhealth/x_12/v_1/types/rarc.rb +1070 -0
  340. data/lib/candidhealth/x_12/v_1/types/remittance_advice_remark_code.rb +50 -0
  341. data/lib/candidhealth.rb +129 -0
  342. data/lib/environment.rb +8 -0
  343. data/lib/gemconfig.rb +14 -0
  344. data/lib/requests.rb +113 -0
  345. data/lib/types_export.rb +303 -0
  346. metadata +468 -0
@@ -0,0 +1,274 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../../../commons/types/encounter_external_id"
4
+ require_relative "../../../commons/types/date"
5
+ require_relative "prior_authorization_number"
6
+ require_relative "medication"
7
+ require_relative "vitals"
8
+ require_relative "intervention"
9
+ require_relative "../../../commons/types/street_address_long_zip"
10
+ require_relative "synchronicity_type"
11
+ require_relative "billable_status_type"
12
+ require_relative "responsible_party_type"
13
+ require_relative "service_authorization_exception_code"
14
+ require_relative "../../../commons/types/delay_reason_code"
15
+ require "json"
16
+
17
+ module CandidApiClient
18
+ module Encounters
19
+ module V4
20
+ class EncounterBase
21
+ attr_reader :external_id, :date_of_service, :end_date_of_service, :prior_authorization_number,
22
+ :patient_authorized_release, :benefits_assigned_to_provider, :provider_accepts_assignment, :appointment_type, :existing_medications, :vitals, :interventions, :pay_to_address, :synchronicity, :billable_status, :responsible_party, :additional_information, :service_authorization_exception_code, :admission_date, :discharge_date, :onset_of_current_illness_or_symptom_date, :last_menstrual_period_date, :delay_reason_code, :additional_properties
23
+
24
+ # @param external_id [Commons::ENCOUNTER_EXTERNAL_ID] A client-specified unique ID to associate with this encounter;
25
+ # for example, your internal encounter ID or a Dr. Chrono encounter ID.
26
+ # This field should not contain PHI.
27
+ # @param date_of_service [Commons::DATE] Date formatted as YYYY-MM-DD; eg: 2019-08-24.
28
+ # This date must be the local date in the timezone where the service occurred.
29
+ # Box 24a on the CMS-1500 claim form.
30
+ # If service occurred over a range of dates, this should be the start date.
31
+ # @param end_date_of_service [Commons::DATE] Date formatted as YYYY-MM-DD; eg: 2019-08-25.
32
+ # This date must be the local date in the timezone where the service occurred.
33
+ # If omitted, the Encounter is assumed to be for a single day.
34
+ # Must not be temporally before the date_of_service field.
35
+ # @param prior_authorization_number [Encounters::V4::PRIOR_AUTHORIZATION_NUMBER] Box 23 on the CMS-1500 claim form.
36
+ # @param patient_authorized_release [Boolean] Whether this patient has authorized the release of medical information
37
+ # for billing purpose.
38
+ # Box 12 on the CMS-1500 claim form.
39
+ # @param benefits_assigned_to_provider [Boolean] Whether this patient has authorized insurance payments to be made to you,
40
+ # not them. If false, patient may receive reimbursement.
41
+ # Box 13 on the CMS-1500 claim form.
42
+ # @param provider_accepts_assignment [Boolean] Whether you have accepted the patient's authorization for insurance payments
43
+ # to be made to you, not them.
44
+ # Box 27 on the CMS-1500 claim form.
45
+ # @param appointment_type [String] Human-readable description of the appointment type (ex: "Acupuncture - Headaches").
46
+ # @param existing_medications [Array<Encounters::V4::Medication>]
47
+ # @param vitals [Encounters::V4::Vitals]
48
+ # @param interventions [Array<Encounters::V4::Intervention>]
49
+ # @param pay_to_address [Commons::StreetAddressLongZip] Specifies the address to which payments for the claim should be sent.
50
+ # @param synchronicity [Encounters::V4::SynchronicityType] Whether or not this was a synchronous or asynchronous encounter.
51
+ # Asynchronous encounters occur when providers and patients communicate online using
52
+ # forms, instant messaging, or other pre-recorded digital mediums.
53
+ # Synchronous encounters occur in live, real-time settings where the patient interacts
54
+ # directly with the provider, such as over video or a phone call.
55
+ # @param billable_status [Encounters::V4::BillableStatusType] Defines if the Encounter is to be billed by Candid to the responsible_party.
56
+ # Examples for when this should be set to NOT_BILLABLE include
57
+ # if the Encounter has not occurred yet or if there is no intention of ever billing the responsible_party.
58
+ # @param responsible_party [Encounters::V4::ResponsiblePartyType] Defines the party to be billed with the initial balance owed on the claim.
59
+ # @param additional_information [String] Defines additional information on the claim needed by the payer.
60
+ # Box 19 on the CMS-1500 claim form.
61
+ # @param service_authorization_exception_code [Encounters::V4::ServiceAuthorizationExceptionCode] 837p Loop2300 REF\*4N
62
+ # Required when mandated by government law or regulation to obtain authorization for specific service(s) but, for the
63
+ # reasons listed in one of the enum values of ServiceAuthorizationExceptionCode, the service was performed without
64
+ # obtaining the authorization.
65
+ # @param admission_date [Commons::DATE] 837p Loop2300 DTP\*435, CMS-1500 Box 18
66
+ # Required on all ambulance claims when the patient was known to be admitted to the hospital.
67
+ # OR
68
+ # Required on all claims involving inpatient medical visits.
69
+ # @param discharge_date [Commons::DATE] 837p Loop2300 DTP\*096, CMS-1500 Box 18
70
+ # Required for inpatient claims when the patient was discharged from the facility and the discharge date is known.
71
+ # @param onset_of_current_illness_or_symptom_date [Commons::DATE] 837p Loop2300 DTP\*431, CMS-1500 Box 14
72
+ # Required for the initial medical service or visit performed in response to a medical emergency when the date is available and is different than the date of service.
73
+ # OR
74
+ # This date is the onset of acute symptoms for the current illness or condition.
75
+ # @param last_menstrual_period_date [Commons::DATE] 837p Loop2300 DTP\*484, CMS-1500 Box 14
76
+ # Required when, in the judgment of the provider, the services on this claim are related to the patient's pregnancy.
77
+ # @param delay_reason_code [Commons::DelayReasonCode] 837i Loop2300, CLM-1300 Box 20
78
+ # Code indicating the reason why a request was delayed
79
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
80
+ # @return [Encounters::V4::EncounterBase]
81
+ def initialize(external_id:, date_of_service:, patient_authorized_release:, benefits_assigned_to_provider:,
82
+ provider_accepts_assignment:, billable_status:, responsible_party:, end_date_of_service: nil, prior_authorization_number: nil, appointment_type: nil, existing_medications: nil, vitals: nil, interventions: nil, pay_to_address: nil, synchronicity: nil, additional_information: nil, service_authorization_exception_code: nil, admission_date: nil, discharge_date: nil, onset_of_current_illness_or_symptom_date: nil, last_menstrual_period_date: nil, delay_reason_code: nil, additional_properties: nil)
83
+ # @type [Commons::ENCOUNTER_EXTERNAL_ID] A client-specified unique ID to associate with this encounter;
84
+ # for example, your internal encounter ID or a Dr. Chrono encounter ID.
85
+ # This field should not contain PHI.
86
+ @external_id = external_id
87
+ # @type [Commons::DATE] Date formatted as YYYY-MM-DD; eg: 2019-08-24.
88
+ # This date must be the local date in the timezone where the service occurred.
89
+ # Box 24a on the CMS-1500 claim form.
90
+ # If service occurred over a range of dates, this should be the start date.
91
+ @date_of_service = date_of_service
92
+ # @type [Commons::DATE] Date formatted as YYYY-MM-DD; eg: 2019-08-25.
93
+ # This date must be the local date in the timezone where the service occurred.
94
+ # If omitted, the Encounter is assumed to be for a single day.
95
+ # Must not be temporally before the date_of_service field.
96
+ @end_date_of_service = end_date_of_service
97
+ # @type [Encounters::V4::PRIOR_AUTHORIZATION_NUMBER] Box 23 on the CMS-1500 claim form.
98
+ @prior_authorization_number = prior_authorization_number
99
+ # @type [Boolean] Whether this patient has authorized the release of medical information
100
+ # for billing purpose.
101
+ # Box 12 on the CMS-1500 claim form.
102
+ @patient_authorized_release = patient_authorized_release
103
+ # @type [Boolean] Whether this patient has authorized insurance payments to be made to you,
104
+ # not them. If false, patient may receive reimbursement.
105
+ # Box 13 on the CMS-1500 claim form.
106
+ @benefits_assigned_to_provider = benefits_assigned_to_provider
107
+ # @type [Boolean] Whether you have accepted the patient's authorization for insurance payments
108
+ # to be made to you, not them.
109
+ # Box 27 on the CMS-1500 claim form.
110
+ @provider_accepts_assignment = provider_accepts_assignment
111
+ # @type [String] Human-readable description of the appointment type (ex: "Acupuncture - Headaches").
112
+ @appointment_type = appointment_type
113
+ # @type [Array<Encounters::V4::Medication>]
114
+ @existing_medications = existing_medications
115
+ # @type [Encounters::V4::Vitals]
116
+ @vitals = vitals
117
+ # @type [Array<Encounters::V4::Intervention>]
118
+ @interventions = interventions
119
+ # @type [Commons::StreetAddressLongZip] Specifies the address to which payments for the claim should be sent.
120
+ @pay_to_address = pay_to_address
121
+ # @type [Encounters::V4::SynchronicityType] Whether or not this was a synchronous or asynchronous encounter.
122
+ # Asynchronous encounters occur when providers and patients communicate online using
123
+ # forms, instant messaging, or other pre-recorded digital mediums.
124
+ # Synchronous encounters occur in live, real-time settings where the patient interacts
125
+ # directly with the provider, such as over video or a phone call.
126
+ @synchronicity = synchronicity
127
+ # @type [Encounters::V4::BillableStatusType] Defines if the Encounter is to be billed by Candid to the responsible_party.
128
+ # Examples for when this should be set to NOT_BILLABLE include
129
+ # if the Encounter has not occurred yet or if there is no intention of ever billing the responsible_party.
130
+ @billable_status = billable_status
131
+ # @type [Encounters::V4::ResponsiblePartyType] Defines the party to be billed with the initial balance owed on the claim.
132
+ @responsible_party = responsible_party
133
+ # @type [String] Defines additional information on the claim needed by the payer.
134
+ # Box 19 on the CMS-1500 claim form.
135
+ @additional_information = additional_information
136
+ # @type [Encounters::V4::ServiceAuthorizationExceptionCode] 837p Loop2300 REF\*4N
137
+ # Required when mandated by government law or regulation to obtain authorization for specific service(s) but, for the
138
+ # reasons listed in one of the enum values of ServiceAuthorizationExceptionCode, the service was performed without
139
+ # obtaining the authorization.
140
+ @service_authorization_exception_code = service_authorization_exception_code
141
+ # @type [Commons::DATE] 837p Loop2300 DTP\*435, CMS-1500 Box 18
142
+ # Required on all ambulance claims when the patient was known to be admitted to the hospital.
143
+ # OR
144
+ # Required on all claims involving inpatient medical visits.
145
+ @admission_date = admission_date
146
+ # @type [Commons::DATE] 837p Loop2300 DTP\*096, CMS-1500 Box 18
147
+ # Required for inpatient claims when the patient was discharged from the facility and the discharge date is known.
148
+ @discharge_date = discharge_date
149
+ # @type [Commons::DATE] 837p Loop2300 DTP\*431, CMS-1500 Box 14
150
+ # Required for the initial medical service or visit performed in response to a medical emergency when the date is available and is different than the date of service.
151
+ # OR
152
+ # This date is the onset of acute symptoms for the current illness or condition.
153
+ @onset_of_current_illness_or_symptom_date = onset_of_current_illness_or_symptom_date
154
+ # @type [Commons::DATE] 837p Loop2300 DTP\*484, CMS-1500 Box 14
155
+ # Required when, in the judgment of the provider, the services on this claim are related to the patient's pregnancy.
156
+ @last_menstrual_period_date = last_menstrual_period_date
157
+ # @type [Commons::DelayReasonCode] 837i Loop2300, CLM-1300 Box 20
158
+ # Code indicating the reason why a request was delayed
159
+ @delay_reason_code = delay_reason_code
160
+ # @type [OpenStruct] Additional properties unmapped to the current class definition
161
+ @additional_properties = additional_properties
162
+ end
163
+
164
+ # Deserialize a JSON object to an instance of EncounterBase
165
+ #
166
+ # @param json_object [JSON]
167
+ # @return [Encounters::V4::EncounterBase]
168
+ def self.from_json(json_object:)
169
+ struct = JSON.parse(json_object, object_class: OpenStruct)
170
+ parsed_json = JSON.parse(json_object)
171
+ external_id = struct.external_id
172
+ date_of_service = struct.date_of_service
173
+ end_date_of_service = struct.end_date_of_service
174
+ prior_authorization_number = struct.prior_authorization_number
175
+ patient_authorized_release = struct.patient_authorized_release
176
+ benefits_assigned_to_provider = struct.benefits_assigned_to_provider
177
+ provider_accepts_assignment = struct.provider_accepts_assignment
178
+ appointment_type = struct.appointment_type
179
+ existing_medications = parsed_json["existing_medications"]&.map do |v|
180
+ v = v.to_json
181
+ Encounters::V4::Medication.from_json(json_object: v)
182
+ end
183
+ if parsed_json["vitals"].nil?
184
+ vitals = nil
185
+ else
186
+ vitals = parsed_json["vitals"].to_json
187
+ vitals = Encounters::V4::Vitals.from_json(json_object: vitals)
188
+ end
189
+ interventions = parsed_json["interventions"]&.map do |v|
190
+ v = v.to_json
191
+ Encounters::V4::Intervention.from_json(json_object: v)
192
+ end
193
+ if parsed_json["pay_to_address"].nil?
194
+ pay_to_address = nil
195
+ else
196
+ pay_to_address = parsed_json["pay_to_address"].to_json
197
+ pay_to_address = Commons::StreetAddressLongZip.from_json(json_object: pay_to_address)
198
+ end
199
+ synchronicity = struct.synchronicity
200
+ billable_status = struct.billable_status
201
+ responsible_party = struct.responsible_party
202
+ additional_information = struct.additional_information
203
+ service_authorization_exception_code = struct.service_authorization_exception_code
204
+ admission_date = struct.admission_date
205
+ discharge_date = struct.discharge_date
206
+ onset_of_current_illness_or_symptom_date = struct.onset_of_current_illness_or_symptom_date
207
+ last_menstrual_period_date = struct.last_menstrual_period_date
208
+ delay_reason_code = struct.delay_reason_code
209
+ new(external_id: external_id, date_of_service: date_of_service, end_date_of_service: end_date_of_service,
210
+ prior_authorization_number: prior_authorization_number, patient_authorized_release: patient_authorized_release, benefits_assigned_to_provider: benefits_assigned_to_provider, provider_accepts_assignment: provider_accepts_assignment, appointment_type: appointment_type, existing_medications: existing_medications, vitals: vitals, interventions: interventions, pay_to_address: pay_to_address, synchronicity: synchronicity, billable_status: billable_status, responsible_party: responsible_party, additional_information: additional_information, service_authorization_exception_code: service_authorization_exception_code, admission_date: admission_date, discharge_date: discharge_date, onset_of_current_illness_or_symptom_date: onset_of_current_illness_or_symptom_date, last_menstrual_period_date: last_menstrual_period_date, delay_reason_code: delay_reason_code, additional_properties: struct)
211
+ end
212
+
213
+ # Serialize an instance of EncounterBase to a JSON object
214
+ #
215
+ # @return [JSON]
216
+ def to_json(*_args)
217
+ {
218
+ "external_id": @external_id,
219
+ "date_of_service": @date_of_service,
220
+ "end_date_of_service": @end_date_of_service,
221
+ "prior_authorization_number": @prior_authorization_number,
222
+ "patient_authorized_release": @patient_authorized_release,
223
+ "benefits_assigned_to_provider": @benefits_assigned_to_provider,
224
+ "provider_accepts_assignment": @provider_accepts_assignment,
225
+ "appointment_type": @appointment_type,
226
+ "existing_medications": @existing_medications,
227
+ "vitals": @vitals,
228
+ "interventions": @interventions,
229
+ "pay_to_address": @pay_to_address,
230
+ "synchronicity": @synchronicity,
231
+ "billable_status": @billable_status,
232
+ "responsible_party": @responsible_party,
233
+ "additional_information": @additional_information,
234
+ "service_authorization_exception_code": @service_authorization_exception_code,
235
+ "admission_date": @admission_date,
236
+ "discharge_date": @discharge_date,
237
+ "onset_of_current_illness_or_symptom_date": @onset_of_current_illness_or_symptom_date,
238
+ "last_menstrual_period_date": @last_menstrual_period_date,
239
+ "delay_reason_code": @delay_reason_code
240
+ }.to_json
241
+ end
242
+
243
+ # 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.
244
+ #
245
+ # @param obj [Object]
246
+ # @return [Void]
247
+ def self.validate_raw(obj:)
248
+ obj.external_id.is_a?(String) != false || raise("Passed value for field obj.external_id is not the expected type, validation failed.")
249
+ obj.date_of_service.is_a?(String) != false || raise("Passed value for field obj.date_of_service is not the expected type, validation failed.")
250
+ obj.end_date_of_service&.is_a?(String) != false || raise("Passed value for field obj.end_date_of_service is not the expected type, validation failed.")
251
+ obj.prior_authorization_number&.is_a?(String) != false || raise("Passed value for field obj.prior_authorization_number is not the expected type, validation failed.")
252
+ obj.patient_authorized_release.is_a?(Boolean) != false || raise("Passed value for field obj.patient_authorized_release is not the expected type, validation failed.")
253
+ obj.benefits_assigned_to_provider.is_a?(Boolean) != false || raise("Passed value for field obj.benefits_assigned_to_provider is not the expected type, validation failed.")
254
+ obj.provider_accepts_assignment.is_a?(Boolean) != false || raise("Passed value for field obj.provider_accepts_assignment is not the expected type, validation failed.")
255
+ obj.appointment_type&.is_a?(String) != false || raise("Passed value for field obj.appointment_type is not the expected type, validation failed.")
256
+ obj.existing_medications&.is_a?(Array) != false || raise("Passed value for field obj.existing_medications is not the expected type, validation failed.")
257
+ obj.vitals.nil? || Encounters::V4::Vitals.validate_raw(obj: obj.vitals)
258
+ obj.interventions&.is_a?(Array) != false || raise("Passed value for field obj.interventions is not the expected type, validation failed.")
259
+ obj.pay_to_address.nil? || Commons::StreetAddressLongZip.validate_raw(obj: obj.pay_to_address)
260
+ obj.synchronicity&.is_a?(Encounters::V4::SynchronicityType) != false || raise("Passed value for field obj.synchronicity is not the expected type, validation failed.")
261
+ obj.billable_status.is_a?(Encounters::V4::BillableStatusType) != false || raise("Passed value for field obj.billable_status is not the expected type, validation failed.")
262
+ obj.responsible_party.is_a?(Encounters::V4::ResponsiblePartyType) != false || raise("Passed value for field obj.responsible_party is not the expected type, validation failed.")
263
+ obj.additional_information&.is_a?(String) != false || raise("Passed value for field obj.additional_information is not the expected type, validation failed.")
264
+ obj.service_authorization_exception_code&.is_a?(Encounters::V4::ServiceAuthorizationExceptionCode) != false || raise("Passed value for field obj.service_authorization_exception_code is not the expected type, validation failed.")
265
+ obj.admission_date&.is_a?(String) != false || raise("Passed value for field obj.admission_date is not the expected type, validation failed.")
266
+ obj.discharge_date&.is_a?(String) != false || raise("Passed value for field obj.discharge_date is not the expected type, validation failed.")
267
+ obj.onset_of_current_illness_or_symptom_date&.is_a?(String) != false || raise("Passed value for field obj.onset_of_current_illness_or_symptom_date is not the expected type, validation failed.")
268
+ obj.last_menstrual_period_date&.is_a?(String) != false || raise("Passed value for field obj.last_menstrual_period_date is not the expected type, validation failed.")
269
+ obj.delay_reason_code&.is_a?(Commons::DelayReasonCode) != false || raise("Passed value for field obj.delay_reason_code is not the expected type, validation failed.")
270
+ end
271
+ end
272
+ end
273
+ end
274
+ end
@@ -0,0 +1,50 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../../../commons/types/encounter_external_id"
4
+ require "json"
5
+
6
+ module CandidApiClient
7
+ module Encounters
8
+ module V4
9
+ class EncounterExternalIdUniquenessErrorType
10
+ attr_reader :external_id, :additional_properties
11
+
12
+ # @param external_id [Commons::ENCOUNTER_EXTERNAL_ID]
13
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
14
+ # @return [Encounters::V4::EncounterExternalIdUniquenessErrorType]
15
+ def initialize(external_id: nil, additional_properties: nil)
16
+ # @type [Commons::ENCOUNTER_EXTERNAL_ID]
17
+ @external_id = external_id
18
+ # @type [OpenStruct] Additional properties unmapped to the current class definition
19
+ @additional_properties = additional_properties
20
+ end
21
+
22
+ # Deserialize a JSON object to an instance of EncounterExternalIdUniquenessErrorType
23
+ #
24
+ # @param json_object [JSON]
25
+ # @return [Encounters::V4::EncounterExternalIdUniquenessErrorType]
26
+ def self.from_json(json_object:)
27
+ struct = JSON.parse(json_object, object_class: OpenStruct)
28
+ JSON.parse(json_object)
29
+ external_id = struct.external_id
30
+ new(external_id: external_id, additional_properties: struct)
31
+ end
32
+
33
+ # Serialize an instance of EncounterExternalIdUniquenessErrorType to a JSON object
34
+ #
35
+ # @return [JSON]
36
+ def to_json(*_args)
37
+ { "external_id": @external_id }.to_json
38
+ end
39
+
40
+ # 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.
41
+ #
42
+ # @param obj [Object]
43
+ # @return [Void]
44
+ def self.validate_raw(obj:)
45
+ obj.external_id&.is_a?(String) != false || raise("Passed value for field obj.external_id is not the expected type, validation failed.")
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+
5
+ module CandidApiClient
6
+ module Encounters
7
+ module V4
8
+ class EncounterGuarantorMissingContactInfoErrorType
9
+ attr_reader :missing_fields, :additional_properties
10
+
11
+ # @param missing_fields [Array<String>]
12
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
13
+ # @return [Encounters::V4::EncounterGuarantorMissingContactInfoErrorType]
14
+ def initialize(missing_fields:, additional_properties: nil)
15
+ # @type [Array<String>]
16
+ @missing_fields = missing_fields
17
+ # @type [OpenStruct] Additional properties unmapped to the current class definition
18
+ @additional_properties = additional_properties
19
+ end
20
+
21
+ # Deserialize a JSON object to an instance of EncounterGuarantorMissingContactInfoErrorType
22
+ #
23
+ # @param json_object [JSON]
24
+ # @return [Encounters::V4::EncounterGuarantorMissingContactInfoErrorType]
25
+ def self.from_json(json_object:)
26
+ struct = JSON.parse(json_object, object_class: OpenStruct)
27
+ JSON.parse(json_object)
28
+ missing_fields = struct.missing_fields
29
+ new(missing_fields: missing_fields, additional_properties: struct)
30
+ end
31
+
32
+ # Serialize an instance of EncounterGuarantorMissingContactInfoErrorType to a JSON object
33
+ #
34
+ # @return [JSON]
35
+ def to_json(*_args)
36
+ { "missing_fields": @missing_fields }.to_json
37
+ end
38
+
39
+ # 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.
40
+ #
41
+ # @param obj [Object]
42
+ # @return [Void]
43
+ def self.validate_raw(obj:)
44
+ obj.missing_fields.is_a?(Array) != false || raise("Passed value for field obj.missing_fields is not the expected type, validation failed.")
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CandidApiClient
4
+ module Encounters
5
+ module V4
6
+ class EncounterOwnerOfNextActionType
7
+ CANDID = "CANDID"
8
+ CUSTOMER = "CUSTOMER"
9
+ CODER = "CODER"
10
+ NONE = "NONE"
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,65 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "encounter"
4
+ require_relative "../../../commons/types/page_token"
5
+ require "json"
6
+
7
+ module CandidApiClient
8
+ module Encounters
9
+ module V4
10
+ class EncounterPage
11
+ attr_reader :items, :prev_page_token, :next_page_token, :additional_properties
12
+
13
+ # @param items [Array<Encounters::V4::Encounter>]
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 [Encounters::V4::EncounterPage]
18
+ def initialize(items:, prev_page_token: nil, next_page_token: nil, additional_properties: nil)
19
+ # @type [Array<Encounters::V4::Encounter>]
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
28
+
29
+ # Deserialize a JSON object to an instance of EncounterPage
30
+ #
31
+ # @param json_object [JSON]
32
+ # @return [Encounters::V4::EncounterPage]
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
+ Encounters::V4::Encounter.from_json(json_object: v)
39
+ 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
+
46
+ # Serialize an instance of EncounterPage 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
52
+
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.")
61
+ end
62
+ end
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+
5
+ module CandidApiClient
6
+ module Encounters
7
+ module V4
8
+ class EncounterPatientControlNumberUniquenessErrorType
9
+ attr_reader :patient_control_number, :additional_properties
10
+
11
+ # @param patient_control_number [String]
12
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
13
+ # @return [Encounters::V4::EncounterPatientControlNumberUniquenessErrorType]
14
+ def initialize(patient_control_number:, additional_properties: nil)
15
+ # @type [String]
16
+ @patient_control_number = patient_control_number
17
+ # @type [OpenStruct] Additional properties unmapped to the current class definition
18
+ @additional_properties = additional_properties
19
+ end
20
+
21
+ # Deserialize a JSON object to an instance of EncounterPatientControlNumberUniquenessErrorType
22
+ #
23
+ # @param json_object [JSON]
24
+ # @return [Encounters::V4::EncounterPatientControlNumberUniquenessErrorType]
25
+ def self.from_json(json_object:)
26
+ struct = JSON.parse(json_object, object_class: OpenStruct)
27
+ JSON.parse(json_object)
28
+ patient_control_number = struct.patient_control_number
29
+ new(patient_control_number: patient_control_number, additional_properties: struct)
30
+ end
31
+
32
+ # Serialize an instance of EncounterPatientControlNumberUniquenessErrorType to a JSON object
33
+ #
34
+ # @return [JSON]
35
+ def to_json(*_args)
36
+ { "patient_control_number": @patient_control_number }.to_json
37
+ end
38
+
39
+ # 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.
40
+ #
41
+ # @param obj [Object]
42
+ # @return [Void]
43
+ def self.validate_raw(obj:)
44
+ obj.patient_control_number.is_a?(String) != false || raise("Passed value for field obj.patient_control_number is not the expected type, validation failed.")
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CandidApiClient
4
+ module Encounters
5
+ module V4
6
+ class EncounterSortOptions
7
+ CREATED_AT_ASC = "created_at:asc"
8
+ CREATED_AT_DESC = "created_at:desc"
9
+ DATE_OF_SERVICE_ASC = "date_of_service:asc"
10
+ DATE_OF_SERVICE_DESC = "date_of_service:desc"
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CandidApiClient
4
+ module Encounters
5
+ module V4
6
+ class EncounterSubmissionOriginType
7
+ CANDID = "CANDID"
8
+ EXTERNAL = "EXTERNAL"
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,60 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "intake_follow_up_id"
4
+ require "json"
5
+
6
+ module CandidApiClient
7
+ module Encounters
8
+ module V4
9
+ class IntakeFollowUp
10
+ attr_reader :id, :text, :response, :additional_properties
11
+
12
+ # @param id [Encounters::V4::INTAKE_FOLLOW_UP_ID]
13
+ # @param text [String]
14
+ # @param response [String]
15
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
16
+ # @return [Encounters::V4::IntakeFollowUp]
17
+ def initialize(id:, text:, response: nil, additional_properties: nil)
18
+ # @type [Encounters::V4::INTAKE_FOLLOW_UP_ID]
19
+ @id = id
20
+ # @type [String]
21
+ @text = text
22
+ # @type [String]
23
+ @response = response
24
+ # @type [OpenStruct] Additional properties unmapped to the current class definition
25
+ @additional_properties = additional_properties
26
+ end
27
+
28
+ # Deserialize a JSON object to an instance of IntakeFollowUp
29
+ #
30
+ # @param json_object [JSON]
31
+ # @return [Encounters::V4::IntakeFollowUp]
32
+ def self.from_json(json_object:)
33
+ struct = JSON.parse(json_object, object_class: OpenStruct)
34
+ JSON.parse(json_object)
35
+ id = struct.id
36
+ text = struct.text
37
+ response = struct.response
38
+ new(id: id, text: text, response: response, additional_properties: struct)
39
+ end
40
+
41
+ # Serialize an instance of IntakeFollowUp to a JSON object
42
+ #
43
+ # @return [JSON]
44
+ def to_json(*_args)
45
+ { "id": @id, "text": @text, "response": @response }.to_json
46
+ end
47
+
48
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given hash and check each fields type against the current object's property definitions.
49
+ #
50
+ # @param obj [Object]
51
+ # @return [Void]
52
+ def self.validate_raw(obj:)
53
+ obj.id.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
54
+ obj.text.is_a?(String) != false || raise("Passed value for field obj.text is not the expected type, validation failed.")
55
+ obj.response&.is_a?(String) != false || raise("Passed value for field obj.response is not the expected type, validation failed.")
56
+ end
57
+ end
58
+ end
59
+ end
60
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CandidApiClient
4
+ module Encounters
5
+ module V4
6
+ INTAKE_FOLLOW_UP_ID = String
7
+ end
8
+ end
9
+ end