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,105 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "insurance_refund_id"
4
+ require_relative "../../../payers/v_3/types/payer"
5
+ require "date"
6
+ require_relative "../../../financials/types/allocation"
7
+ require_relative "../../../financials/types/refund_reason"
8
+ require "json"
9
+
10
+ module CandidApiClient
11
+ module InsuranceRefunds
12
+ module V1
13
+ class InsuranceRefund
14
+ attr_reader :insurance_refund_id, :payer, :amount_cents, :refund_timestamp, :refund_note, :allocations,
15
+ :refund_reason, :additional_properties
16
+
17
+ # @param insurance_refund_id [InsuranceRefunds::V1::INSURANCE_REFUND_ID]
18
+ # @param payer [Payers::V3::Payer]
19
+ # @param amount_cents [Integer]
20
+ # @param refund_timestamp [DateTime]
21
+ # @param refund_note [String]
22
+ # @param allocations [Array<Financials::Allocation>]
23
+ # @param refund_reason [Financials::RefundReason]
24
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
25
+ # @return [InsuranceRefunds::V1::InsuranceRefund]
26
+ def initialize(insurance_refund_id:, payer:, amount_cents:, allocations:, refund_timestamp: nil,
27
+ refund_note: nil, refund_reason: nil, additional_properties: nil)
28
+ # @type [InsuranceRefunds::V1::INSURANCE_REFUND_ID]
29
+ @insurance_refund_id = insurance_refund_id
30
+ # @type [Payers::V3::Payer]
31
+ @payer = payer
32
+ # @type [Integer]
33
+ @amount_cents = amount_cents
34
+ # @type [DateTime]
35
+ @refund_timestamp = refund_timestamp
36
+ # @type [String]
37
+ @refund_note = refund_note
38
+ # @type [Array<Financials::Allocation>]
39
+ @allocations = allocations
40
+ # @type [Financials::RefundReason]
41
+ @refund_reason = refund_reason
42
+ # @type [OpenStruct] Additional properties unmapped to the current class definition
43
+ @additional_properties = additional_properties
44
+ end
45
+
46
+ # Deserialize a JSON object to an instance of InsuranceRefund
47
+ #
48
+ # @param json_object [JSON]
49
+ # @return [InsuranceRefunds::V1::InsuranceRefund]
50
+ def self.from_json(json_object:)
51
+ struct = JSON.parse(json_object, object_class: OpenStruct)
52
+ parsed_json = JSON.parse(json_object)
53
+ insurance_refund_id = struct.insurance_refund_id
54
+ if parsed_json["payer"].nil?
55
+ payer = nil
56
+ else
57
+ payer = parsed_json["payer"].to_json
58
+ payer = Payers::V3::Payer.from_json(json_object: payer)
59
+ end
60
+ amount_cents = struct.amount_cents
61
+ refund_timestamp = unless parsed_json["refund_timestamp"].nil?
62
+ DateTime.parse(parsed_json["refund_timestamp"])
63
+ end
64
+ refund_note = struct.refund_note
65
+ allocations = parsed_json["allocations"]&.map do |v|
66
+ v = v.to_json
67
+ Financials::Allocation.from_json(json_object: v)
68
+ end
69
+ refund_reason = struct.refund_reason
70
+ new(insurance_refund_id: insurance_refund_id, payer: payer, amount_cents: amount_cents,
71
+ refund_timestamp: refund_timestamp, refund_note: refund_note, allocations: allocations, refund_reason: refund_reason, additional_properties: struct)
72
+ end
73
+
74
+ # Serialize an instance of InsuranceRefund to a JSON object
75
+ #
76
+ # @return [JSON]
77
+ def to_json(*_args)
78
+ {
79
+ "insurance_refund_id": @insurance_refund_id,
80
+ "payer": @payer,
81
+ "amount_cents": @amount_cents,
82
+ "refund_timestamp": @refund_timestamp,
83
+ "refund_note": @refund_note,
84
+ "allocations": @allocations,
85
+ "refund_reason": @refund_reason
86
+ }.to_json
87
+ end
88
+
89
+ # 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.
90
+ #
91
+ # @param obj [Object]
92
+ # @return [Void]
93
+ def self.validate_raw(obj:)
94
+ obj.insurance_refund_id.is_a?(String) != false || raise("Passed value for field obj.insurance_refund_id is not the expected type, validation failed.")
95
+ Payers::V3::Payer.validate_raw(obj: obj.payer)
96
+ obj.amount_cents.is_a?(Integer) != false || raise("Passed value for field obj.amount_cents is not the expected type, validation failed.")
97
+ obj.refund_timestamp&.is_a?(DateTime) != false || raise("Passed value for field obj.refund_timestamp is not the expected type, validation failed.")
98
+ obj.refund_note&.is_a?(String) != false || raise("Passed value for field obj.refund_note is not the expected type, validation failed.")
99
+ obj.allocations.is_a?(Array) != false || raise("Passed value for field obj.allocations is not the expected type, validation failed.")
100
+ obj.refund_reason&.is_a?(Financials::RefundReason) != false || raise("Passed value for field obj.refund_reason is not the expected type, validation failed.")
101
+ end
102
+ end
103
+ end
104
+ end
105
+ end
@@ -0,0 +1,98 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../../../payers/v_3/types/payer_identifier"
4
+ require "date"
5
+ require_relative "../../../financials/types/allocation_create"
6
+ require_relative "../../../financials/types/refund_reason"
7
+ require "json"
8
+
9
+ module CandidApiClient
10
+ module InsuranceRefunds
11
+ module V1
12
+ class InsuranceRefundCreate
13
+ attr_reader :payer_identifier, :amount_cents, :refund_timestamp, :refund_note, :allocations, :refund_reason,
14
+ :additional_properties
15
+
16
+ # @param payer_identifier [Payers::V3::PayerIdentifier]
17
+ # @param amount_cents [Integer]
18
+ # @param refund_timestamp [DateTime]
19
+ # @param refund_note [String]
20
+ # @param allocations [Array<Financials::AllocationCreate>]
21
+ # @param refund_reason [Financials::RefundReason]
22
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
23
+ # @return [InsuranceRefunds::V1::InsuranceRefundCreate]
24
+ def initialize(payer_identifier:, amount_cents:, allocations:, refund_timestamp: nil, refund_note: nil,
25
+ refund_reason: nil, additional_properties: nil)
26
+ # @type [Payers::V3::PayerIdentifier]
27
+ @payer_identifier = payer_identifier
28
+ # @type [Integer]
29
+ @amount_cents = amount_cents
30
+ # @type [DateTime]
31
+ @refund_timestamp = refund_timestamp
32
+ # @type [String]
33
+ @refund_note = refund_note
34
+ # @type [Array<Financials::AllocationCreate>]
35
+ @allocations = allocations
36
+ # @type [Financials::RefundReason]
37
+ @refund_reason = refund_reason
38
+ # @type [OpenStruct] Additional properties unmapped to the current class definition
39
+ @additional_properties = additional_properties
40
+ end
41
+
42
+ # Deserialize a JSON object to an instance of InsuranceRefundCreate
43
+ #
44
+ # @param json_object [JSON]
45
+ # @return [InsuranceRefunds::V1::InsuranceRefundCreate]
46
+ def self.from_json(json_object:)
47
+ struct = JSON.parse(json_object, object_class: OpenStruct)
48
+ parsed_json = JSON.parse(json_object)
49
+ if parsed_json["payer_identifier"].nil?
50
+ payer_identifier = nil
51
+ else
52
+ payer_identifier = parsed_json["payer_identifier"].to_json
53
+ payer_identifier = Payers::V3::PayerIdentifier.from_json(json_object: payer_identifier)
54
+ end
55
+ amount_cents = struct.amount_cents
56
+ refund_timestamp = unless parsed_json["refund_timestamp"].nil?
57
+ DateTime.parse(parsed_json["refund_timestamp"])
58
+ end
59
+ refund_note = struct.refund_note
60
+ allocations = parsed_json["allocations"]&.map do |v|
61
+ v = v.to_json
62
+ Financials::AllocationCreate.from_json(json_object: v)
63
+ end
64
+ refund_reason = struct.refund_reason
65
+ new(payer_identifier: payer_identifier, amount_cents: amount_cents, refund_timestamp: refund_timestamp,
66
+ refund_note: refund_note, allocations: allocations, refund_reason: refund_reason, additional_properties: struct)
67
+ end
68
+
69
+ # Serialize an instance of InsuranceRefundCreate to a JSON object
70
+ #
71
+ # @return [JSON]
72
+ def to_json(*_args)
73
+ {
74
+ "payer_identifier": @payer_identifier,
75
+ "amount_cents": @amount_cents,
76
+ "refund_timestamp": @refund_timestamp,
77
+ "refund_note": @refund_note,
78
+ "allocations": @allocations,
79
+ "refund_reason": @refund_reason
80
+ }.to_json
81
+ end
82
+
83
+ # 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.
84
+ #
85
+ # @param obj [Object]
86
+ # @return [Void]
87
+ def self.validate_raw(obj:)
88
+ Payers::V3::PayerIdentifier.validate_raw(obj: obj.payer_identifier)
89
+ obj.amount_cents.is_a?(Integer) != false || raise("Passed value for field obj.amount_cents is not the expected type, validation failed.")
90
+ obj.refund_timestamp&.is_a?(DateTime) != false || raise("Passed value for field obj.refund_timestamp is not the expected type, validation failed.")
91
+ obj.refund_note&.is_a?(String) != false || raise("Passed value for field obj.refund_note is not the expected type, validation failed.")
92
+ obj.allocations.is_a?(Array) != false || raise("Passed value for field obj.allocations is not the expected type, validation failed.")
93
+ obj.refund_reason&.is_a?(Financials::RefundReason) != false || raise("Passed value for field obj.refund_reason is not the expected type, validation failed.")
94
+ end
95
+ end
96
+ end
97
+ end
98
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CandidApiClient
4
+ module InsuranceRefunds
5
+ module V1
6
+ INSURANCE_REFUND_ID = String
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CandidApiClient
4
+ module InsuranceRefunds
5
+ module V1
6
+ class InsuranceRefundSortField
7
+ AMOUNT_CENTS = "amount_cents"
8
+ REFUND_TIMESTAMP = "refund_timestamp"
9
+ REFUND_NOTE = "refund_note"
10
+ REFUND_REASON = "refund_reason"
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,65 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "insurance_refund"
4
+ require_relative "../../../commons/types/page_token"
5
+ require "json"
6
+
7
+ module CandidApiClient
8
+ module InsuranceRefunds
9
+ module V1
10
+ class InsuranceRefundsPage
11
+ attr_reader :items, :prev_page_token, :next_page_token, :additional_properties
12
+
13
+ # @param items [Array<InsuranceRefunds::V1::InsuranceRefund>]
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 [InsuranceRefunds::V1::InsuranceRefundsPage]
18
+ def initialize(items:, prev_page_token: nil, next_page_token: nil, additional_properties: nil)
19
+ # @type [Array<InsuranceRefunds::V1::InsuranceRefund>]
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 InsuranceRefundsPage
30
+ #
31
+ # @param json_object [JSON]
32
+ # @return [InsuranceRefunds::V1::InsuranceRefundsPage]
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
+ InsuranceRefunds::V1::InsuranceRefund.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 InsuranceRefundsPage 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,134 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../../commons/types/invoice_id"
4
+ require "date"
5
+ require_relative "../../commons/types/organization_id"
6
+ require_relative "../../commons/types/patient_external_id"
7
+ require_relative "../../commons/types/date"
8
+ require_relative "invoice_status"
9
+ require_relative "invoice_item"
10
+ require "json"
11
+
12
+ module CandidApiClient
13
+ class Invoices
14
+ class Invoice
15
+ attr_reader :id, :created_at, :updated_at, :organzation_id, :source_id, :source_customer_id,
16
+ :patient_external_id, :note, :due_date, :status, :url, :customer_invoice_url, :items, :additional_properties
17
+
18
+ # @param id [Commons::INVOICE_ID]
19
+ # @param created_at [DateTime]
20
+ # @param updated_at [DateTime]
21
+ # @param organzation_id [Commons::ORGANIZATION_ID]
22
+ # @param source_id [String]
23
+ # @param source_customer_id [String]
24
+ # @param patient_external_id [Commons::PATIENT_EXTERNAL_ID]
25
+ # @param note [String]
26
+ # @param due_date [Commons::DATE]
27
+ # @param status [Invoices::InvoiceStatus]
28
+ # @param url [String]
29
+ # @param customer_invoice_url [String]
30
+ # @param items [Array<Invoices::InvoiceItem>]
31
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
32
+ # @return [Invoices::Invoice]
33
+ def initialize(id:, created_at:, updated_at:, organzation_id:, source_id:, source_customer_id:,
34
+ patient_external_id:, due_date:, status:, items:, note: nil, url: nil, customer_invoice_url: nil, additional_properties: nil)
35
+ # @type [Commons::INVOICE_ID]
36
+ @id = id
37
+ # @type [DateTime]
38
+ @created_at = created_at
39
+ # @type [DateTime]
40
+ @updated_at = updated_at
41
+ # @type [Commons::ORGANIZATION_ID]
42
+ @organzation_id = organzation_id
43
+ # @type [String]
44
+ @source_id = source_id
45
+ # @type [String]
46
+ @source_customer_id = source_customer_id
47
+ # @type [Commons::PATIENT_EXTERNAL_ID]
48
+ @patient_external_id = patient_external_id
49
+ # @type [String]
50
+ @note = note
51
+ # @type [Commons::DATE]
52
+ @due_date = due_date
53
+ # @type [Invoices::InvoiceStatus]
54
+ @status = status
55
+ # @type [String]
56
+ @url = url
57
+ # @type [String]
58
+ @customer_invoice_url = customer_invoice_url
59
+ # @type [Array<Invoices::InvoiceItem>]
60
+ @items = items
61
+ # @type [OpenStruct] Additional properties unmapped to the current class definition
62
+ @additional_properties = additional_properties
63
+ end
64
+
65
+ # Deserialize a JSON object to an instance of Invoice
66
+ #
67
+ # @param json_object [JSON]
68
+ # @return [Invoices::Invoice]
69
+ def self.from_json(json_object:)
70
+ struct = JSON.parse(json_object, object_class: OpenStruct)
71
+ parsed_json = JSON.parse(json_object)
72
+ id = struct.id
73
+ created_at = (DateTime.parse(parsed_json["created_at"]) unless parsed_json["created_at"].nil?)
74
+ updated_at = (DateTime.parse(parsed_json["updated_at"]) unless parsed_json["updated_at"].nil?)
75
+ organzation_id = struct.organzation_id
76
+ source_id = struct.source_id
77
+ source_customer_id = struct.source_customer_id
78
+ patient_external_id = struct.patient_external_id
79
+ note = struct.note
80
+ due_date = struct.due_date
81
+ status = struct.status
82
+ url = struct.url
83
+ customer_invoice_url = struct.customer_invoice_url
84
+ items = parsed_json["items"]&.map do |v|
85
+ v = v.to_json
86
+ Invoices::InvoiceItem.from_json(json_object: v)
87
+ end
88
+ new(id: id, created_at: created_at, updated_at: updated_at, organzation_id: organzation_id,
89
+ source_id: source_id, source_customer_id: source_customer_id, patient_external_id: patient_external_id, note: note, due_date: due_date, status: status, url: url, customer_invoice_url: customer_invoice_url, items: items, additional_properties: struct)
90
+ end
91
+
92
+ # Serialize an instance of Invoice to a JSON object
93
+ #
94
+ # @return [JSON]
95
+ def to_json(*_args)
96
+ {
97
+ "id": @id,
98
+ "created_at": @created_at,
99
+ "updated_at": @updated_at,
100
+ "organzation_id": @organzation_id,
101
+ "source_id": @source_id,
102
+ "source_customer_id": @source_customer_id,
103
+ "patient_external_id": @patient_external_id,
104
+ "note": @note,
105
+ "due_date": @due_date,
106
+ "status": @status,
107
+ "url": @url,
108
+ "customer_invoice_url": @customer_invoice_url,
109
+ "items": @items
110
+ }.to_json
111
+ end
112
+
113
+ # 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.
114
+ #
115
+ # @param obj [Object]
116
+ # @return [Void]
117
+ def self.validate_raw(obj:)
118
+ obj.id.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
119
+ obj.created_at.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
120
+ obj.updated_at.is_a?(DateTime) != false || raise("Passed value for field obj.updated_at is not the expected type, validation failed.")
121
+ obj.organzation_id.is_a?(String) != false || raise("Passed value for field obj.organzation_id is not the expected type, validation failed.")
122
+ obj.source_id.is_a?(String) != false || raise("Passed value for field obj.source_id is not the expected type, validation failed.")
123
+ obj.source_customer_id.is_a?(String) != false || raise("Passed value for field obj.source_customer_id is not the expected type, validation failed.")
124
+ obj.patient_external_id.is_a?(String) != false || raise("Passed value for field obj.patient_external_id is not the expected type, validation failed.")
125
+ obj.note&.is_a?(String) != false || raise("Passed value for field obj.note is not the expected type, validation failed.")
126
+ obj.due_date.is_a?(String) != false || raise("Passed value for field obj.due_date is not the expected type, validation failed.")
127
+ obj.status.is_a?(Invoices::InvoiceStatus) != false || raise("Passed value for field obj.status is not the expected type, validation failed.")
128
+ obj.url&.is_a?(String) != false || raise("Passed value for field obj.url is not the expected type, validation failed.")
129
+ obj.customer_invoice_url&.is_a?(String) != false || raise("Passed value for field obj.customer_invoice_url is not the expected type, validation failed.")
130
+ obj.items.is_a?(Array) != false || raise("Passed value for field obj.items is not the expected type, validation failed.")
131
+ end
132
+ end
133
+ end
134
+ end
@@ -0,0 +1,53 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../../commons/types/service_line_id"
4
+ require "json"
5
+
6
+ module CandidApiClient
7
+ class Invoices
8
+ class InvoiceItem
9
+ attr_reader :service_line_id, :amount_cents, :additional_properties
10
+
11
+ # @param service_line_id [Commons::SERVICE_LINE_ID]
12
+ # @param amount_cents [Integer]
13
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
14
+ # @return [Invoices::InvoiceItem]
15
+ def initialize(service_line_id:, amount_cents:, additional_properties: nil)
16
+ # @type [Commons::SERVICE_LINE_ID]
17
+ @service_line_id = service_line_id
18
+ # @type [Integer]
19
+ @amount_cents = amount_cents
20
+ # @type [OpenStruct] Additional properties unmapped to the current class definition
21
+ @additional_properties = additional_properties
22
+ end
23
+
24
+ # Deserialize a JSON object to an instance of InvoiceItem
25
+ #
26
+ # @param json_object [JSON]
27
+ # @return [Invoices::InvoiceItem]
28
+ def self.from_json(json_object:)
29
+ struct = JSON.parse(json_object, object_class: OpenStruct)
30
+ JSON.parse(json_object)
31
+ service_line_id = struct.service_line_id
32
+ amount_cents = struct.amount_cents
33
+ new(service_line_id: service_line_id, amount_cents: amount_cents, additional_properties: struct)
34
+ end
35
+
36
+ # Serialize an instance of InvoiceItem to a JSON object
37
+ #
38
+ # @return [JSON]
39
+ def to_json(*_args)
40
+ { "service_line_id": @service_line_id, "amount_cents": @amount_cents }.to_json
41
+ end
42
+
43
+ # 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.
44
+ #
45
+ # @param obj [Object]
46
+ # @return [Void]
47
+ def self.validate_raw(obj:)
48
+ obj.service_line_id.is_a?(String) != false || raise("Passed value for field obj.service_line_id is not the expected type, validation failed.")
49
+ obj.amount_cents.is_a?(Integer) != false || raise("Passed value for field obj.amount_cents is not the expected type, validation failed.")
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CandidApiClient
4
+ class Invoices
5
+ class InvoiceStatus
6
+ DRAFT = "draft"
7
+ OPEN = "open"
8
+ PAID = "paid"
9
+ VOID = "void"
10
+ UNCOLLECTIBLE = "uncollectible"
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../../requests"
4
+ require_relative "v_3/client"
5
+
6
+ module CandidApiClient
7
+ module OrganizationProviders
8
+ class Client
9
+ attr_reader :v_3
10
+
11
+ # @param request_client [RequestClient]
12
+ # @return [OrganizationProviders::Client]
13
+ def initialize(request_client:)
14
+ @v_3 = OrganizationProviders::V3::V3Client.new(request_client: request_client)
15
+ end
16
+ end
17
+
18
+ class AsyncClient
19
+ attr_reader :v_3
20
+
21
+ # @param request_client [RequestClient]
22
+ # @return [OrganizationProviders::AsyncClient]
23
+ def initialize(request_client:)
24
+ @v_3 = OrganizationProviders::V3::AsyncV3Client.new(request_client: request_client)
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CandidApiClient
4
+ module OrganizationProviders
5
+ module V2
6
+ class AddressType
7
+ DEFAULT = "DEFAULT"
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CandidApiClient
4
+ module OrganizationProviders
5
+ module V2
6
+ class EmploymentStatus
7
+ ACTIVE = "ACTIVE"
8
+ TERMINATED = "TERMINATED"
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,78 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CandidApiClient
4
+ module OrganizationProviders
5
+ module V2
6
+ class LicenseType
7
+ MD = "MD"
8
+ NP = "NP"
9
+ PA = "PA"
10
+ LMFT = "LMFT"
11
+ LCPC = "LCPC"
12
+ LCSW = "LCSW"
13
+ PMHNP = "PMHNP"
14
+ FNP = "FNP"
15
+ LPCC = "LPCC"
16
+ DO = "DO"
17
+ RD = "RD"
18
+ SLP = "SLP"
19
+ APRN = "APRN"
20
+ LPC = "LPC"
21
+ PHD = "PHD"
22
+ PSYD = "PSYD"
23
+ LMSW = "LMSW"
24
+ LMHC = "LMHC"
25
+ OTHER_MASTERS = "OTHER_MASTERS"
26
+ BCBA = "BCBA"
27
+ UNKNOWN = "UNKNOWN"
28
+ RPH = "RPH"
29
+ PHT = "PHT"
30
+ LAC = "LAC"
31
+ LMT = "LMT"
32
+ DC = "DC"
33
+ ND = "ND"
34
+ MA = "MA"
35
+ PT = "PT"
36
+ IBCLC = "IBCLC"
37
+ RN = "RN"
38
+ DPT = "DPT"
39
+ LCMHC = "LCMHC"
40
+ CNM = "CNM"
41
+ RNFA = "RNFA"
42
+ ACSW = "ACSW"
43
+ APC = "APC"
44
+ BCABA = "BCABA"
45
+ BHA = "BHA"
46
+ OD = "OD"
47
+ DPM = "DPM"
48
+ DA = "DA"
49
+ DDS = "DDS"
50
+ DEH = "DEH"
51
+ DMD = "DMD"
52
+ PTA = "PTA"
53
+ LCADC = "LCADC"
54
+ LCAT = "LCAT"
55
+ LCMHCS = "LCMHCS"
56
+ LCMHCA = "LCMHCA"
57
+ LCSWA = "LCSWA"
58
+ LICSW = "LICSW"
59
+ LISW = "LISW"
60
+ LMFTS = "LMFTS"
61
+ LMFTA = "LMFTA"
62
+ LPCI = "LPCI"
63
+ LSCSW = "LSCSW"
64
+ MHCA = "MHCA"
65
+ MHT = "MHT"
66
+ RBT = "RBT"
67
+ RCSWI = "RCSWI"
68
+ RHMCI = "RHMCI"
69
+ LPN = "LPN"
70
+ OTD = "OTD"
71
+ OMS = "OMS"
72
+ MFTA = "MFTA"
73
+ APCC = "APCC"
74
+ DNP = "DNP"
75
+ end
76
+ end
77
+ end
78
+ end