candidhealth 0.21.0 → 0.24.0.pre.2a6d412

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (439) hide show
  1. checksums.yaml +4 -4
  2. data/lib/candidhealth/auth/client.rb +8 -6
  3. data/lib/candidhealth/auth/v_2/client.rb +86 -38
  4. data/lib/candidhealth/auth/v_2/types/auth_get_token_response.rb +61 -43
  5. data/lib/candidhealth/auth/v_2/types/too_many_requests_error_type.rb +44 -33
  6. data/lib/candidhealth/billing_notes/client.rb +8 -6
  7. data/lib/candidhealth/billing_notes/v_2/client.rb +43 -21
  8. data/lib/candidhealth/billing_notes/v_2/types/billing_note.rb +95 -72
  9. data/lib/candidhealth/billing_notes/v_2/types/billing_note_base.rb +44 -33
  10. data/lib/candidhealth/claim_submission/v_1/types/claim_frequency_type_code.rb +6 -4
  11. data/lib/candidhealth/claim_submission/v_1/types/claim_submission_record_create.rb +80 -59
  12. data/lib/candidhealth/claim_submission/v_1/types/external_claim_submission_create.rb +78 -56
  13. data/lib/candidhealth/claims/types/claim.rb +114 -86
  14. data/lib/candidhealth/claims/types/claim_status.rb +19 -17
  15. data/lib/candidhealth/commons/types/claim_adjustment_group_codes.rb +14 -12
  16. data/lib/candidhealth/commons/types/claim_submission_payer_responsibility_type.rb +6 -4
  17. data/lib/candidhealth/commons/types/date_range_optional_end.rb +57 -40
  18. data/lib/candidhealth/commons/types/delay_reason_code.rb +19 -17
  19. data/lib/candidhealth/commons/types/emr_payer_crosswalk.rb +6 -4
  20. data/lib/candidhealth/commons/types/entity_conflict_error_message.rb +45 -34
  21. data/lib/candidhealth/commons/types/entity_not_found_error_message.rb +45 -34
  22. data/lib/candidhealth/commons/types/facility_type_code.rb +58 -55
  23. data/lib/candidhealth/commons/types/http_service_unavailable_error_message.rb +47 -34
  24. data/lib/candidhealth/commons/types/insurance_type_code.rb +76 -73
  25. data/lib/candidhealth/commons/types/intended_submission_medium.rb +9 -5
  26. data/lib/candidhealth/commons/types/network_type.rb +23 -21
  27. data/lib/candidhealth/commons/types/organization_not_authorized_error_message.rb +46 -34
  28. data/lib/candidhealth/commons/types/patient_relationship_to_insured_code_all.rb +28 -26
  29. data/lib/candidhealth/commons/types/phone_number.rb +55 -39
  30. data/lib/candidhealth/commons/types/phone_number_type.rb +7 -5
  31. data/lib/candidhealth/commons/types/procedure_modifier.rb +391 -389
  32. data/lib/candidhealth/commons/types/qualifier_code.rb +14 -0
  33. data/lib/candidhealth/commons/types/region_national.rb +39 -29
  34. data/lib/candidhealth/commons/types/region_states.rb +45 -34
  35. data/lib/candidhealth/commons/types/regions.rb +78 -72
  36. data/lib/candidhealth/commons/types/removable_date_range_optional_end.rb +77 -71
  37. data/lib/candidhealth/commons/types/request_validation_error.rb +57 -39
  38. data/lib/candidhealth/commons/types/resource_page.rb +57 -40
  39. data/lib/candidhealth/commons/types/service_line_units.rb +6 -4
  40. data/lib/candidhealth/commons/types/sort_direction.rb +6 -4
  41. data/lib/candidhealth/commons/types/source_of_payment_code.rb +28 -26
  42. data/lib/candidhealth/commons/types/state.rb +66 -64
  43. data/lib/candidhealth/commons/types/street_address_base.rb +84 -61
  44. data/lib/candidhealth/commons/types/street_address_long_zip.rb +93 -68
  45. data/lib/candidhealth/commons/types/street_address_short_zip.rb +93 -68
  46. data/lib/candidhealth/commons/types/unauthorized_error_message.rb +47 -34
  47. data/lib/candidhealth/commons/types/unprocessable_entity_error_message.rb +47 -34
  48. data/lib/candidhealth/commons/types/updates_disabled_due_to_external_system_integration_error_message.rb +49 -34
  49. data/lib/candidhealth/contracts/client.rb +8 -6
  50. data/lib/candidhealth/contracts/v_2/client.rb +251 -127
  51. data/lib/candidhealth/contracts/v_2/types/authorized_signatory.rb +92 -67
  52. data/lib/candidhealth/contracts/v_2/types/authorized_signatory_update.rb +76 -70
  53. data/lib/candidhealth/contracts/v_2/types/contract.rb +178 -141
  54. data/lib/candidhealth/contracts/v_2/types/contract_base.rb +134 -106
  55. data/lib/candidhealth/contracts/v_2/types/contract_is_linked_to_fee_schedule_error.rb +44 -33
  56. data/lib/candidhealth/contracts/v_2/types/contract_status.rb +6 -4
  57. data/lib/candidhealth/contracts/v_2/types/contract_with_providers.rb +191 -152
  58. data/lib/candidhealth/contracts/v_2/types/contracts_page.rb +70 -47
  59. data/lib/candidhealth/contracts/v_2/types/date_update.rb +76 -71
  60. data/lib/candidhealth/contracts/v_2/types/insurance_types.rb +86 -80
  61. data/lib/candidhealth/contracts/v_2/types/regions_update.rb +76 -70
  62. data/lib/candidhealth/diagnoses/types/diagnosis.rb +126 -91
  63. data/lib/candidhealth/diagnoses/types/diagnosis_create.rb +88 -58
  64. data/lib/candidhealth/diagnoses/types/diagnosis_type_code.rb +14 -12
  65. data/lib/candidhealth/diagnoses/types/standalone_diagnosis_create.rb +100 -64
  66. data/lib/candidhealth/eligibility/client.rb +8 -6
  67. data/lib/candidhealth/eligibility/v_2/client.rb +210 -124
  68. data/lib/candidhealth/encounter_providers/v_2/types/billing_provider.rb +126 -86
  69. data/lib/candidhealth/encounter_providers/v_2/types/encounter_provider.rb +128 -85
  70. data/lib/candidhealth/encounter_providers/v_2/types/encounter_provider_base.rb +73 -44
  71. data/lib/candidhealth/encounter_providers/v_2/types/initial_referring_provider.rb +132 -0
  72. data/lib/candidhealth/encounter_providers/v_2/types/ordering_provider.rb +123 -0
  73. data/lib/candidhealth/encounter_providers/v_2/types/referring_provider.rb +105 -73
  74. data/lib/candidhealth/encounter_providers/v_2/types/rendering_provider.rb +105 -73
  75. data/lib/candidhealth/encounter_providers/v_2/types/supervising_provider.rb +123 -0
  76. data/lib/candidhealth/encounters/client.rb +8 -6
  77. data/lib/candidhealth/encounters/v_4/client.rb +1056 -476
  78. data/lib/candidhealth/encounters/v_4/types/billable_status_type.rb +5 -3
  79. data/lib/candidhealth/encounters/v_4/types/cash_pay_payer_error_message.rb +44 -33
  80. data/lib/candidhealth/encounters/v_4/types/clinical_note.rb +76 -50
  81. data/lib/candidhealth/encounters/v_4/types/clinical_note_category.rb +70 -45
  82. data/lib/candidhealth/encounters/v_4/types/clinical_note_category_create.rb +57 -40
  83. data/lib/candidhealth/encounters/v_4/types/coding_attribution_type.rb +7 -5
  84. data/lib/candidhealth/encounters/v_4/types/encounter.rb +732 -482
  85. data/lib/candidhealth/encounters/v_4/types/encounter_base.rb +304 -223
  86. data/lib/candidhealth/encounters/v_4/types/encounter_external_id_uniqueness_error_type.rb +47 -34
  87. data/lib/candidhealth/encounters/v_4/types/encounter_guarantor_missing_contact_info_error_type.rb +46 -33
  88. data/lib/candidhealth/encounters/v_4/types/encounter_owner_of_next_action_type.rb +7 -5
  89. data/lib/candidhealth/encounters/v_4/types/encounter_page.rb +70 -47
  90. data/lib/candidhealth/encounters/v_4/types/encounter_patient_control_number_uniqueness_error_type.rb +46 -33
  91. data/lib/candidhealth/encounters/v_4/types/encounter_sort_options.rb +7 -5
  92. data/lib/candidhealth/encounters/v_4/types/encounter_submission_origin_type.rb +5 -3
  93. data/lib/candidhealth/encounters/v_4/types/intake_follow_up.rb +63 -44
  94. data/lib/candidhealth/encounters/v_4/types/intake_question.rb +66 -46
  95. data/lib/candidhealth/encounters/v_4/types/intake_response_and_follow_ups.rb +59 -40
  96. data/lib/candidhealth/encounters/v_4/types/intervention.rb +92 -66
  97. data/lib/candidhealth/encounters/v_4/types/intervention_category.rb +7 -5
  98. data/lib/candidhealth/encounters/v_4/types/lab.rb +63 -43
  99. data/lib/candidhealth/encounters/v_4/types/lab_code_type.rb +5 -3
  100. data/lib/candidhealth/encounters/v_4/types/medication.rb +92 -68
  101. data/lib/candidhealth/encounters/v_4/types/note_category.rb +17 -15
  102. data/lib/candidhealth/encounters/v_4/types/patient_history_category.rb +57 -40
  103. data/lib/candidhealth/encounters/v_4/types/patient_history_category_enum.rb +7 -5
  104. data/lib/candidhealth/encounters/v_4/types/responsible_party_type.rb +6 -4
  105. data/lib/candidhealth/encounters/v_4/types/service_authorization_exception_code.rb +14 -10
  106. data/lib/candidhealth/encounters/v_4/types/synchronicity_type.rb +5 -3
  107. data/lib/candidhealth/encounters/v_4/types/vitals.rb +84 -62
  108. data/lib/candidhealth/era/types/era.rb +62 -46
  109. data/lib/candidhealth/era/types/era_base.rb +55 -40
  110. data/lib/candidhealth/era/types/era_not_fully_processed_error_message.rb +55 -40
  111. data/lib/candidhealth/era_commons/types/claim_status_code_create.rb +14 -12
  112. data/lib/candidhealth/expected_network_status/client.rb +16 -10
  113. data/lib/candidhealth/expected_network_status/v_1/client.rb +76 -29
  114. data/lib/candidhealth/expected_network_status/v_1/types/expected_network_status.rb +6 -4
  115. data/lib/candidhealth/expected_network_status/v_1/types/expected_network_status_response.rb +69 -49
  116. data/lib/candidhealth/expected_network_status/v_2/client.rb +108 -69
  117. data/lib/candidhealth/expected_network_status/v_2/types/compute_all_in_network_providers_request.rb +129 -96
  118. data/lib/candidhealth/expected_network_status/v_2/types/compute_all_in_network_providers_response.rb +62 -47
  119. data/lib/candidhealth/expected_network_status/v_2/types/compute_all_in_network_rendering_providers_result.rb +89 -82
  120. data/lib/candidhealth/expected_network_status/v_2/types/expected_network_status_check_error_message.rb +45 -33
  121. data/lib/candidhealth/expected_network_status/v_2/types/expected_network_status_request_v_2.rb +129 -96
  122. data/lib/candidhealth/expected_network_status/v_2/types/expected_network_status_response_v_2.rb +59 -44
  123. data/lib/candidhealth/expected_network_status/v_2/types/expected_network_status_subscriber_information.rb +68 -49
  124. data/lib/candidhealth/expected_network_status/v_2/types/expected_network_status_v_2.rb +88 -82
  125. data/lib/candidhealth/expected_network_status/v_2/types/explanation.rb +11 -9
  126. data/lib/candidhealth/expected_network_status/v_2/types/in_network_rendering_providers_detail.rb +66 -51
  127. data/lib/candidhealth/expected_network_status/v_2/types/in_network_status.rb +57 -41
  128. data/lib/candidhealth/expected_network_status/v_2/types/indeterminate_network_status.rb +76 -57
  129. data/lib/candidhealth/expected_network_status/v_2/types/insurance_type.rb +59 -43
  130. data/lib/candidhealth/expected_network_status/v_2/types/insurance_type_codes.rb +86 -80
  131. data/lib/candidhealth/expected_network_status/v_2/types/line_of_business.rb +6 -4
  132. data/lib/candidhealth/expected_network_status/v_2/types/out_of_network_status.rb +65 -50
  133. data/lib/candidhealth/expected_network_status/v_2/types/service_type.rb +44 -42
  134. data/lib/candidhealth/exports/client.rb +8 -6
  135. data/lib/candidhealth/exports/v_3/client.rb +88 -48
  136. data/lib/candidhealth/exports/v_3/types/get_exports_response.rb +79 -58
  137. data/lib/candidhealth/external_payment_account_config/client.rb +30 -0
  138. data/lib/candidhealth/external_payment_account_config/v_1/client.rb +89 -0
  139. data/lib/candidhealth/external_payment_account_config/v_1/types/external_payment_account_config.rb +70 -0
  140. data/lib/candidhealth/external_payment_account_config/v_1/types/external_payment_account_config_page.rb +88 -0
  141. data/lib/candidhealth/fee_schedules/client.rb +8 -6
  142. data/lib/candidhealth/fee_schedules/v_3/client.rb +429 -181
  143. data/lib/candidhealth/fee_schedules/v_3/types/dimension_match.rb +159 -130
  144. data/lib/candidhealth/fee_schedules/v_3/types/dimension_name.rb +7 -5
  145. data/lib/candidhealth/fee_schedules/v_3/types/dimensions.rb +146 -117
  146. data/lib/candidhealth/fee_schedules/v_3/types/dimensions_page.rb +70 -51
  147. data/lib/candidhealth/fee_schedules/v_3/types/match_cpt_code.rb +62 -44
  148. data/lib/candidhealth/fee_schedules/v_3/types/match_date.rb +65 -44
  149. data/lib/candidhealth/fee_schedules/v_3/types/match_facility_type_code.rb +64 -44
  150. data/lib/candidhealth/fee_schedules/v_3/types/match_geo.rb +76 -49
  151. data/lib/candidhealth/fee_schedules/v_3/types/match_license_type.rb +64 -44
  152. data/lib/candidhealth/fee_schedules/v_3/types/match_modifiers.rb +67 -48
  153. data/lib/candidhealth/fee_schedules/v_3/types/match_network_types.rb +67 -48
  154. data/lib/candidhealth/fee_schedules/v_3/types/match_payer.rb +62 -45
  155. data/lib/candidhealth/fee_schedules/v_3/types/match_provider.rb +64 -45
  156. data/lib/candidhealth/fee_schedules/v_3/types/match_result.rb +59 -43
  157. data/lib/candidhealth/fee_schedules/v_3/types/match_test_result.rb +63 -46
  158. data/lib/candidhealth/fee_schedules/v_3/types/new_rate.rb +61 -44
  159. data/lib/candidhealth/fee_schedules/v_3/types/new_rate_version.rb +70 -46
  160. data/lib/candidhealth/fee_schedules/v_3/types/optional_dimensions.rb +148 -117
  161. data/lib/candidhealth/fee_schedules/v_3/types/overlapping_rate_entries_error.rb +71 -52
  162. data/lib/candidhealth/fee_schedules/v_3/types/payer_threshold.rb +77 -50
  163. data/lib/candidhealth/fee_schedules/v_3/types/payer_thresholds_page.rb +70 -51
  164. data/lib/candidhealth/fee_schedules/v_3/types/rate.rb +100 -75
  165. data/lib/candidhealth/fee_schedules/v_3/types/rate_entry.rb +79 -55
  166. data/lib/candidhealth/fee_schedules/v_3/types/rate_upload.rb +77 -71
  167. data/lib/candidhealth/fee_schedules/v_3/types/rate_upload_with_possible_errors.rb +79 -55
  168. data/lib/candidhealth/fee_schedules/v_3/types/rates_page.rb +70 -47
  169. data/lib/candidhealth/fee_schedules/v_3/types/threshold_match.rb +79 -54
  170. data/lib/candidhealth/fee_schedules/v_3/types/validation_error.rb +108 -102
  171. data/lib/candidhealth/financials/types/account_type.rb +6 -4
  172. data/lib/candidhealth/financials/types/allocation.rb +60 -43
  173. data/lib/candidhealth/financials/types/allocation_create.rb +63 -45
  174. data/lib/candidhealth/financials/types/allocation_target.rb +102 -95
  175. data/lib/candidhealth/financials/types/allocation_target_create.rb +113 -110
  176. data/lib/candidhealth/financials/types/billing_provider_allocation_target.rb +45 -35
  177. data/lib/candidhealth/financials/types/claim_allocation_target.rb +55 -41
  178. data/lib/candidhealth/financials/types/invoice_update.rb +77 -72
  179. data/lib/candidhealth/financials/types/note_update.rb +77 -71
  180. data/lib/candidhealth/financials/types/patient_transaction_source.rb +11 -9
  181. data/lib/candidhealth/financials/types/refund_reason.rb +5 -3
  182. data/lib/candidhealth/financials/types/refund_reason_update.rb +77 -71
  183. data/lib/candidhealth/financials/types/service_line_allocation_target.rb +62 -48
  184. data/lib/candidhealth/guarantor/client.rb +8 -6
  185. data/lib/candidhealth/guarantor/v_1/client.rb +136 -63
  186. data/lib/candidhealth/guarantor/v_1/types/encounter_has_existing_guarantor_error_type.rb +45 -33
  187. data/lib/candidhealth/guarantor/v_1/types/guarantor.rb +131 -100
  188. data/lib/candidhealth/guarantor/v_1/types/guarantor_base.rb +89 -65
  189. data/lib/candidhealth/guarantor/v_1/types/guarantor_create.rb +123 -93
  190. data/lib/candidhealth/identifiers/types/identifier.rb +85 -64
  191. data/lib/candidhealth/identifiers/types/identifier_base.rb +77 -53
  192. data/lib/candidhealth/identifiers/types/identifier_code.rb +6 -4
  193. data/lib/candidhealth/identifiers/types/identifier_create.rb +77 -53
  194. data/lib/candidhealth/identifiers/types/identifier_update.rb +86 -65
  195. data/lib/candidhealth/identifiers/types/identifier_value.rb +78 -72
  196. data/lib/candidhealth/identifiers/types/medicaid_provider_identifier.rb +55 -39
  197. data/lib/candidhealth/identifiers/types/medicare_provider_identifier.rb +55 -39
  198. data/lib/candidhealth/identifiers/types/updatable_identifier.rb +89 -84
  199. data/lib/candidhealth/import_invoice/client.rb +8 -6
  200. data/lib/candidhealth/import_invoice/v_1/client.rb +182 -86
  201. data/lib/candidhealth/import_invoice/v_1/types/create_import_invoice_request.rb +123 -83
  202. data/lib/candidhealth/import_invoice/v_1/types/import_invoice.rb +145 -110
  203. data/lib/candidhealth/import_invoice/v_1/types/import_invoice_update_request.rb +89 -65
  204. data/lib/candidhealth/import_invoice/v_1/types/import_invoices_page.rb +70 -47
  205. data/lib/candidhealth/import_invoice/v_1/types/invoice_item_info_update.rb +61 -42
  206. data/lib/candidhealth/import_invoice/v_1/types/invoice_item_update_type.rb +5 -3
  207. data/lib/candidhealth/individual/types/gender.rb +9 -7
  208. data/lib/candidhealth/individual/types/individual_base.rb +62 -44
  209. data/lib/candidhealth/individual/types/patient.rb +145 -108
  210. data/lib/candidhealth/individual/types/patient_base.rb +101 -73
  211. data/lib/candidhealth/individual/types/patient_create.rb +137 -101
  212. data/lib/candidhealth/individual/types/subscriber.rb +119 -91
  213. data/lib/candidhealth/individual/types/subscriber_base.rb +99 -74
  214. data/lib/candidhealth/individual/types/subscriber_create.rb +111 -84
  215. data/lib/candidhealth/insurance_adjudications/client.rb +8 -6
  216. data/lib/candidhealth/insurance_adjudications/v_1/client.rb +106 -47
  217. data/lib/candidhealth/insurance_adjudications/v_1/types/claim_adjudication.rb +106 -81
  218. data/lib/candidhealth/insurance_adjudications/v_1/types/claim_adjudication_create.rb +98 -74
  219. data/lib/candidhealth/insurance_adjudications/v_1/types/insurance_adjudication.rb +104 -80
  220. data/lib/candidhealth/insurance_adjudications/v_1/types/insurance_adjudication_create.rb +113 -87
  221. data/lib/candidhealth/insurance_adjudications/v_1/types/service_line_adjudication.rb +121 -91
  222. data/lib/candidhealth/insurance_adjudications/v_1/types/service_line_adjudication_create.rb +113 -84
  223. data/lib/candidhealth/insurance_cards/v_2/types/insurance_card.rb +140 -105
  224. data/lib/candidhealth/insurance_cards/v_2/types/insurance_card_base.rb +76 -55
  225. data/lib/candidhealth/insurance_cards/v_2/types/insurance_card_create.rb +140 -104
  226. data/lib/candidhealth/insurance_payments/client.rb +8 -6
  227. data/lib/candidhealth/insurance_payments/v_1/client.rb +214 -102
  228. data/lib/candidhealth/insurance_payments/v_1/types/insurance_payment.rb +101 -77
  229. data/lib/candidhealth/insurance_payments/v_1/types/insurance_payment_create.rb +93 -70
  230. data/lib/candidhealth/insurance_payments/v_1/types/insurance_payment_sort_field.rb +6 -4
  231. data/lib/candidhealth/insurance_payments/v_1/types/insurance_payments_page.rb +70 -47
  232. data/lib/candidhealth/insurance_refunds/client.rb +8 -6
  233. data/lib/candidhealth/insurance_refunds/v_1/client.rb +218 -108
  234. data/lib/candidhealth/insurance_refunds/v_1/types/insurance_refund.rb +109 -83
  235. data/lib/candidhealth/insurance_refunds/v_1/types/insurance_refund_create.rb +101 -76
  236. data/lib/candidhealth/insurance_refunds/v_1/types/insurance_refund_sort_field.rb +7 -5
  237. data/lib/candidhealth/insurance_refunds/v_1/types/insurance_refunds_page.rb +70 -47
  238. data/lib/candidhealth/invoices/types/invoice.rb +152 -117
  239. data/lib/candidhealth/invoices/types/invoice_item.rb +55 -40
  240. data/lib/candidhealth/invoices/types/invoice_status.rb +10 -8
  241. data/lib/candidhealth/invoices/v_2/types/claim_invoice_item.rb +54 -39
  242. data/lib/candidhealth/invoices/v_2/types/claim_invoice_item_info.rb +66 -48
  243. data/lib/candidhealth/invoices/v_2/types/invoice.rb +151 -114
  244. data/lib/candidhealth/invoices/v_2/types/invoice_destination.rb +8 -5
  245. data/lib/candidhealth/invoices/v_2/types/invoice_destination_metadata.rb +78 -55
  246. data/lib/candidhealth/invoices/v_2/types/invoice_info.rb +66 -48
  247. data/lib/candidhealth/invoices/v_2/types/invoice_item_attribution_create.rb +88 -84
  248. data/lib/candidhealth/invoices/v_2/types/invoice_item_create.rb +59 -42
  249. data/lib/candidhealth/invoices/v_2/types/invoice_item_info.rb +59 -43
  250. data/lib/candidhealth/invoices/v_2/types/invoice_sort_field.rb +9 -7
  251. data/lib/candidhealth/invoices/v_2/types/invoice_status.rb +9 -7
  252. data/lib/candidhealth/invoices/v_2/types/service_line_invoice_item.rb +54 -39
  253. data/lib/candidhealth/invoices/v_2/types/unattributed_invoice_item.rb +44 -33
  254. data/lib/candidhealth/organization_providers/client.rb +8 -6
  255. data/lib/candidhealth/organization_providers/v_2/types/address_type.rb +4 -2
  256. data/lib/candidhealth/organization_providers/v_2/types/employment_status.rb +5 -3
  257. data/lib/candidhealth/organization_providers/v_2/types/license_type.rb +71 -69
  258. data/lib/candidhealth/organization_providers/v_2/types/organization_provider.rb +189 -138
  259. data/lib/candidhealth/organization_providers/v_2/types/organization_provider_address.rb +59 -42
  260. data/lib/candidhealth/organization_providers/v_2/types/organization_provider_base.rb +157 -112
  261. data/lib/candidhealth/organization_providers/v_2/types/organization_provider_sort_options.rb +7 -5
  262. data/lib/candidhealth/organization_providers/v_2/types/provider_type.rb +5 -3
  263. data/lib/candidhealth/organization_providers/v_3/client.rb +166 -80
  264. data/lib/candidhealth/organization_providers/v_3/types/organization_provider_create_v_2.rb +171 -124
  265. data/lib/candidhealth/organization_providers/v_3/types/organization_provider_page_v_2.rb +70 -47
  266. data/lib/candidhealth/organization_providers/v_3/types/organization_provider_update_v_2.rb +169 -121
  267. data/lib/candidhealth/organization_providers/v_3/types/organization_provider_v_2.rb +179 -131
  268. data/lib/candidhealth/organization_service_facilities/client.rb +8 -6
  269. data/lib/candidhealth/organization_service_facilities/v_2/client.rb +186 -90
  270. data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility.rb +149 -111
  271. data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility_create.rb +141 -104
  272. data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility_page.rb +70 -47
  273. data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility_update.rb +141 -104
  274. data/lib/candidhealth/organization_service_facilities/v_2/types/service_facility_mode.rb +5 -3
  275. data/lib/candidhealth/organization_service_facilities/v_2/types/service_facility_operational_status.rb +9 -7
  276. data/lib/candidhealth/organization_service_facilities/v_2/types/service_facility_physical_type.rb +17 -15
  277. data/lib/candidhealth/organization_service_facilities/v_2/types/service_facility_status.rb +6 -4
  278. data/lib/candidhealth/organization_service_facilities/v_2/types/service_facility_type.rb +126 -124
  279. data/lib/candidhealth/patient_payments/client.rb +8 -6
  280. data/lib/candidhealth/patient_payments/v_3/types/patient_payment.rb +143 -111
  281. data/lib/candidhealth/patient_payments/v_3/types/patient_payment_source.rb +12 -10
  282. data/lib/candidhealth/patient_payments/v_3/types/patient_payment_status.rb +14 -12
  283. data/lib/candidhealth/patient_payments/v_4/client.rb +230 -103
  284. data/lib/candidhealth/patient_payments/v_4/types/patient_payment.rb +129 -100
  285. data/lib/candidhealth/patient_payments/v_4/types/patient_payment_sort_field.rb +7 -5
  286. data/lib/candidhealth/patient_payments/v_4/types/patient_payments_page.rb +70 -47
  287. data/lib/candidhealth/patient_refunds/client.rb +8 -6
  288. data/lib/candidhealth/patient_refunds/v_1/client.rb +236 -107
  289. data/lib/candidhealth/patient_refunds/v_1/types/patient_refund.rb +137 -106
  290. data/lib/candidhealth/patient_refunds/v_1/types/patient_refund_sort_field.rb +8 -6
  291. data/lib/candidhealth/patient_refunds/v_1/types/patient_refunds_page.rb +70 -47
  292. data/lib/candidhealth/payers/client.rb +8 -6
  293. data/lib/candidhealth/payers/v_3/client.rb +73 -32
  294. data/lib/candidhealth/payers/v_3/types/payer.rb +61 -44
  295. data/lib/candidhealth/payers/v_3/types/payer_identifier.rb +77 -72
  296. data/lib/candidhealth/payers/v_3/types/payer_info.rb +54 -40
  297. data/lib/candidhealth/payers/v_3/types/payer_page.rb +70 -47
  298. data/lib/candidhealth/pre_encounter/client.rb +30 -0
  299. data/lib/candidhealth/pre_encounter/common/types/address.rb +123 -0
  300. data/lib/candidhealth/pre_encounter/common/types/address_use.rb +17 -0
  301. data/lib/candidhealth/pre_encounter/common/types/contact_point.rb +87 -0
  302. data/lib/candidhealth/pre_encounter/common/types/contact_point_use.rb +17 -0
  303. data/lib/candidhealth/pre_encounter/common/types/error_base.rb +60 -0
  304. data/lib/candidhealth/pre_encounter/common/types/gender.rb +16 -0
  305. data/lib/candidhealth/pre_encounter/common/types/human_name.rb +94 -0
  306. data/lib/candidhealth/pre_encounter/common/types/name_use.rb +19 -0
  307. data/lib/candidhealth/pre_encounter/common/types/not_found_error_body.rb +70 -0
  308. data/lib/candidhealth/pre_encounter/common/types/period.rb +74 -0
  309. data/lib/candidhealth/pre_encounter/common/types/relationship.rb +17 -0
  310. data/lib/candidhealth/pre_encounter/common/types/version_conflict_error_body.rb +77 -0
  311. data/lib/candidhealth/pre_encounter/coverages/client.rb +32 -0
  312. data/lib/candidhealth/pre_encounter/coverages/v_1/client.rb +34 -0
  313. data/lib/candidhealth/pre_encounter/coverages/v_1/coverages/client.rb +487 -0
  314. data/lib/candidhealth/pre_encounter/coverages/v_1/coverages/types/coverage.rb +185 -0
  315. data/lib/candidhealth/pre_encounter/coverages/v_1/coverages/types/coverage_status.rb +22 -0
  316. data/lib/candidhealth/pre_encounter/coverages/v_1/coverages/types/coverage_type.rb +18 -0
  317. data/lib/candidhealth/pre_encounter/coverages/v_1/coverages/types/insurance_plan.rb +136 -0
  318. data/lib/candidhealth/pre_encounter/coverages/v_1/coverages/types/mutable_coverage.rb +131 -0
  319. data/lib/candidhealth/pre_encounter/coverages/v_1/coverages/types/subscriber.rb +90 -0
  320. data/lib/candidhealth/pre_encounter/patients/client.rb +32 -0
  321. data/lib/candidhealth/pre_encounter/patients/v_1/client.rb +34 -0
  322. data/lib/candidhealth/pre_encounter/patients/v_1/patients/client.rb +590 -0
  323. data/lib/candidhealth/pre_encounter/patients/v_1/patients/types/contact.rb +135 -0
  324. data/lib/candidhealth/pre_encounter/patients/v_1/patients/types/external_provenance.rb +75 -0
  325. data/lib/candidhealth/pre_encounter/patients/v_1/patients/types/external_provider.rb +116 -0
  326. data/lib/candidhealth/pre_encounter/patients/v_1/patients/types/marital_status.rb +28 -0
  327. data/lib/candidhealth/pre_encounter/patients/v_1/patients/types/mutable_patient.rb +242 -0
  328. data/lib/candidhealth/pre_encounter/patients/v_1/patients/types/patient.rb +294 -0
  329. data/lib/candidhealth/remits/v_1/types/payee.rb +59 -42
  330. data/lib/candidhealth/remits/v_1/types/payee_identifier.rb +84 -80
  331. data/lib/candidhealth/service_facility/client.rb +58 -27
  332. data/lib/candidhealth/service_facility/types/encounter_service_facility.rb +87 -62
  333. data/lib/candidhealth/service_facility/types/encounter_service_facility_base.rb +87 -57
  334. data/lib/candidhealth/service_lines/v_2/types/denial_reason_content.rb +33 -31
  335. data/lib/candidhealth/service_lines/v_2/types/drug_identification.rb +92 -68
  336. data/lib/candidhealth/service_lines/v_2/types/measurement_unit_code.rb +8 -6
  337. data/lib/candidhealth/service_lines/v_2/types/service_id_qualifier.rb +10 -8
  338. data/lib/candidhealth/service_lines/v_2/types/service_line.rb +352 -222
  339. data/lib/candidhealth/service_lines/v_2/types/service_line_adjustment.rb +85 -62
  340. data/lib/candidhealth/service_lines/v_2/types/service_line_create.rb +235 -113
  341. data/lib/candidhealth/service_lines/v_2/types/service_line_denial_reason.rb +49 -35
  342. data/lib/candidhealth/service_lines/v_2/types/service_line_era_data.rb +60 -44
  343. data/lib/candidhealth/tags/types/tag.rb +69 -51
  344. data/lib/candidhealth/tags/types/tag_color_enum.rb +14 -12
  345. data/lib/candidhealth/tags/types/tag_create.rb +62 -45
  346. data/lib/candidhealth/tasks/client.rb +8 -6
  347. data/lib/candidhealth/tasks/commons/types/task_category.rb +45 -43
  348. data/lib/candidhealth/tasks/commons/types/task_status.rb +11 -9
  349. data/lib/candidhealth/tasks/commons/types/task_type.rb +16 -14
  350. data/lib/candidhealth/tasks/v_3/client.rb +208 -96
  351. data/lib/candidhealth/tasks/v_3/types/task.rb +193 -146
  352. data/lib/candidhealth/tasks/v_3/types/task_action.rb +66 -47
  353. data/lib/candidhealth/tasks/v_3/types/task_action_execution_method.rb +65 -59
  354. data/lib/candidhealth/tasks/v_3/types/task_action_type.rb +5 -3
  355. data/lib/candidhealth/tasks/v_3/types/task_actions.rb +47 -35
  356. data/lib/candidhealth/tasks/v_3/types/task_assignment.rb +59 -40
  357. data/lib/candidhealth/tasks/v_3/types/task_create_v_3.rb +100 -77
  358. data/lib/candidhealth/tasks/v_3/types/task_note.rb +83 -62
  359. data/lib/candidhealth/tasks/v_3/types/task_page.rb +70 -47
  360. data/lib/candidhealth/tasks/v_3/types/task_sort_options.rb +25 -23
  361. data/lib/candidhealth/tasks/v_3/types/task_update_v_3.rb +68 -49
  362. data/lib/candidhealth/tasks/v_3/types/task_updated_to_deprecated_status_error_type.rb +47 -33
  363. data/lib/candidhealth/write_offs/client.rb +8 -6
  364. data/lib/candidhealth/write_offs/v_1/client.rb +168 -83
  365. data/lib/candidhealth/write_offs/v_1/types/create_write_offs_response.rb +47 -35
  366. data/lib/candidhealth/write_offs/v_1/types/insurance_write_off.rb +127 -97
  367. data/lib/candidhealth/write_offs/v_1/types/insurance_write_off_create.rb +103 -78
  368. data/lib/candidhealth/write_offs/v_1/types/insurance_write_off_reason.rb +19 -17
  369. data/lib/candidhealth/write_offs/v_1/types/insurance_write_off_target.rb +84 -81
  370. data/lib/candidhealth/write_offs/v_1/types/patient_write_off.rb +111 -84
  371. data/lib/candidhealth/write_offs/v_1/types/patient_write_off_create.rb +87 -65
  372. data/lib/candidhealth/write_offs/v_1/types/patient_write_off_reason.rb +12 -10
  373. data/lib/candidhealth/write_offs/v_1/types/write_off.rb +77 -71
  374. data/lib/candidhealth/write_offs/v_1/types/write_off_create.rb +77 -71
  375. data/lib/candidhealth/write_offs/v_1/types/write_off_sort_field.rb +6 -4
  376. data/lib/candidhealth/write_offs/v_1/types/write_offs_page.rb +70 -47
  377. data/lib/candidhealth/x_12/v_1/types/carc.rb +406 -404
  378. data/lib/candidhealth/x_12/v_1/types/claim_adjustment_reason_code.rb +61 -44
  379. data/lib/candidhealth/x_12/v_1/types/rarc.rb +1063 -1061
  380. data/lib/candidhealth/x_12/v_1/types/remittance_advice_remark_code.rb +44 -33
  381. data/lib/candidhealth.rb +189 -87
  382. data/lib/core/oauth.rb +62 -0
  383. data/lib/environment.rb +8 -2
  384. data/lib/requests.rb +98 -48
  385. data/lib/types_export.rb +30 -53
  386. metadata +44 -57
  387. data/lib/candidhealth/billing_notes/v_2/types/billing_note_id.rb +0 -9
  388. data/lib/candidhealth/commons/types/claim_id.rb +0 -7
  389. data/lib/candidhealth/commons/types/date.rb +0 -7
  390. data/lib/candidhealth/commons/types/decimal.rb +0 -7
  391. data/lib/candidhealth/commons/types/email.rb +0 -7
  392. data/lib/candidhealth/commons/types/encounter_external_id.rb +0 -7
  393. data/lib/candidhealth/commons/types/encounter_id.rb +0 -7
  394. data/lib/candidhealth/commons/types/error_message.rb +0 -7
  395. data/lib/candidhealth/commons/types/invoice_id.rb +0 -7
  396. data/lib/candidhealth/commons/types/link_url.rb +0 -7
  397. data/lib/candidhealth/commons/types/npi.rb +0 -7
  398. data/lib/candidhealth/commons/types/organization_id.rb +0 -7
  399. data/lib/candidhealth/commons/types/page_token.rb +0 -7
  400. data/lib/candidhealth/commons/types/patient_external_id.rb +0 -7
  401. data/lib/candidhealth/commons/types/provider_id.rb +0 -7
  402. data/lib/candidhealth/commons/types/rate_id.rb +0 -7
  403. data/lib/candidhealth/commons/types/service_line_id.rb +0 -7
  404. data/lib/candidhealth/commons/types/task_assignment_id.rb +0 -7
  405. data/lib/candidhealth/commons/types/task_id.rb +0 -7
  406. data/lib/candidhealth/commons/types/task_note_id.rb +0 -7
  407. data/lib/candidhealth/commons/types/tax_id.rb +0 -7
  408. data/lib/candidhealth/commons/types/user_id.rb +0 -7
  409. data/lib/candidhealth/commons/types/work_queue_id.rb +0 -7
  410. data/lib/candidhealth/contracts/v_2/types/contract_id.rb +0 -9
  411. data/lib/candidhealth/contracts/v_2/types/contracting_provider_id.rb +0 -9
  412. data/lib/candidhealth/contracts/v_2/types/rendering_providerid.rb +0 -9
  413. data/lib/candidhealth/diagnoses/types/diagnosis_id.rb +0 -7
  414. data/lib/candidhealth/encounter_providers/v_2/types/provider_id.rb +0 -9
  415. data/lib/candidhealth/encounters/v_4/types/intake_follow_up_id.rb +0 -9
  416. data/lib/candidhealth/encounters/v_4/types/intake_question_id.rb +0 -9
  417. data/lib/candidhealth/encounters/v_4/types/prior_authorization_number.rb +0 -9
  418. data/lib/candidhealth/encounters/v_4/types/rx_cui.rb +0 -9
  419. data/lib/candidhealth/era/types/era_id.rb +0 -7
  420. data/lib/candidhealth/expected_network_status/v_2/types/network_status_check_id.rb +0 -9
  421. data/lib/candidhealth/guarantor/v_1/types/guarantor_id.rb +0 -9
  422. data/lib/candidhealth/identifiers/types/identifier_id.rb +0 -7
  423. data/lib/candidhealth/individual/types/individual_id.rb +0 -7
  424. data/lib/candidhealth/insurance_adjudications/v_1/types/insurance_adjudication_id.rb +0 -9
  425. data/lib/candidhealth/insurance_adjudications/v_1/types/service_line_adjudication_id.rb +0 -9
  426. data/lib/candidhealth/insurance_cards/v_2/types/insurance_card_id.rb +0 -9
  427. data/lib/candidhealth/insurance_payments/v_1/types/insurance_payment_id.rb +0 -9
  428. data/lib/candidhealth/insurance_refunds/v_1/types/insurance_refund_id.rb +0 -9
  429. data/lib/candidhealth/organization_providers/v_2/types/organization_provider_id.rb +0 -9
  430. data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility_id.rb +0 -9
  431. data/lib/candidhealth/patient_payments/v_3/types/patient_payment_id.rb +0 -9
  432. data/lib/candidhealth/patient_payments/v_4/types/patient_payment_id.rb +0 -9
  433. data/lib/candidhealth/patient_refunds/v_1/types/patient_refund_id.rb +0 -9
  434. data/lib/candidhealth/payers/v_3/types/payer_id.rb +0 -9
  435. data/lib/candidhealth/payers/v_3/types/payer_name.rb +0 -9
  436. data/lib/candidhealth/payers/v_3/types/payer_uuid.rb +0 -9
  437. data/lib/candidhealth/service_facility/types/service_facility_id.rb +0 -7
  438. data/lib/candidhealth/tags/types/tag_id.rb +0 -7
  439. data/lib/candidhealth/write_offs/v_1/types/write_off_id.rb +0 -9
@@ -1,77 +1,100 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "date"
4
+ require "ostruct"
4
5
  require "json"
5
6
 
6
7
  module CandidApiClient
7
8
  module ServiceLines
8
9
  module V2
9
- class ServiceLineAdjustment
10
- attr_reader :created_at, :adjustment_group_code, :adjustment_reason_code, :adjustment_amount_cents,
11
- :adjustment_note, :additional_properties
10
+ module Types
11
+ class ServiceLineAdjustment
12
+ # @return [DateTime]
13
+ attr_reader :created_at
14
+ # @return [String]
15
+ attr_reader :adjustment_group_code
16
+ # @return [String]
17
+ attr_reader :adjustment_reason_code
18
+ # @return [Integer]
19
+ attr_reader :adjustment_amount_cents
20
+ # @return [String]
21
+ attr_reader :adjustment_note
22
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
23
+ attr_reader :additional_properties
24
+ # @return [Object]
25
+ attr_reader :_field_set
26
+ protected :_field_set
12
27
 
13
- # @param created_at [DateTime]
14
- # @param adjustment_group_code [String]
15
- # @param adjustment_reason_code [String]
16
- # @param adjustment_amount_cents [Integer]
17
- # @param adjustment_note [String]
18
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
19
- # @return [ServiceLines::V2::ServiceLineAdjustment]
20
- def initialize(created_at:, adjustment_group_code: nil, adjustment_reason_code: nil,
21
- adjustment_amount_cents: nil, adjustment_note: nil, additional_properties: nil)
22
- # @type [DateTime]
23
- @created_at = created_at
24
- # @type [String]
25
- @adjustment_group_code = adjustment_group_code
26
- # @type [String]
27
- @adjustment_reason_code = adjustment_reason_code
28
- # @type [Integer]
29
- @adjustment_amount_cents = adjustment_amount_cents
30
- # @type [String]
31
- @adjustment_note = adjustment_note
32
- # @type [OpenStruct] Additional properties unmapped to the current class definition
33
- @additional_properties = additional_properties
34
- end
28
+ OMIT = Object.new
35
29
 
36
- # Deserialize a JSON object to an instance of ServiceLineAdjustment
37
- #
38
- # @param json_object [JSON]
39
- # @return [ServiceLines::V2::ServiceLineAdjustment]
40
- def self.from_json(json_object:)
41
- struct = JSON.parse(json_object, object_class: OpenStruct)
42
- parsed_json = JSON.parse(json_object)
43
- created_at = (DateTime.parse(parsed_json["created_at"]) unless parsed_json["created_at"].nil?)
44
- adjustment_group_code = struct.adjustment_group_code
45
- adjustment_reason_code = struct.adjustment_reason_code
46
- adjustment_amount_cents = struct.adjustment_amount_cents
47
- adjustment_note = struct.adjustment_note
48
- new(created_at: created_at, adjustment_group_code: adjustment_group_code,
49
- adjustment_reason_code: adjustment_reason_code, adjustment_amount_cents: adjustment_amount_cents, adjustment_note: adjustment_note, additional_properties: struct)
50
- end
30
+ # @param created_at [DateTime]
31
+ # @param adjustment_group_code [String]
32
+ # @param adjustment_reason_code [String]
33
+ # @param adjustment_amount_cents [Integer]
34
+ # @param adjustment_note [String]
35
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
36
+ # @return [CandidApiClient::ServiceLines::V2::Types::ServiceLineAdjustment]
37
+ def initialize(created_at:, adjustment_group_code: OMIT, adjustment_reason_code: OMIT,
38
+ adjustment_amount_cents: OMIT, adjustment_note: OMIT, additional_properties: nil)
39
+ @created_at = created_at
40
+ @adjustment_group_code = adjustment_group_code if adjustment_group_code != OMIT
41
+ @adjustment_reason_code = adjustment_reason_code if adjustment_reason_code != OMIT
42
+ @adjustment_amount_cents = adjustment_amount_cents if adjustment_amount_cents != OMIT
43
+ @adjustment_note = adjustment_note if adjustment_note != OMIT
44
+ @additional_properties = additional_properties
45
+ @_field_set = {
46
+ "created_at": created_at,
47
+ "adjustment_group_code": adjustment_group_code,
48
+ "adjustment_reason_code": adjustment_reason_code,
49
+ "adjustment_amount_cents": adjustment_amount_cents,
50
+ "adjustment_note": adjustment_note
51
+ }.reject do |_k, v|
52
+ v == OMIT
53
+ end
54
+ end
51
55
 
52
- # Serialize an instance of ServiceLineAdjustment to a JSON object
53
- #
54
- # @return [JSON]
55
- def to_json(*_args)
56
- {
57
- "created_at": @created_at,
58
- "adjustment_group_code": @adjustment_group_code,
59
- "adjustment_reason_code": @adjustment_reason_code,
60
- "adjustment_amount_cents": @adjustment_amount_cents,
61
- "adjustment_note": @adjustment_note
62
- }.to_json
63
- end
56
+ # Deserialize a JSON object to an instance of ServiceLineAdjustment
57
+ #
58
+ # @param json_object [String]
59
+ # @return [CandidApiClient::ServiceLines::V2::Types::ServiceLineAdjustment]
60
+ def self.from_json(json_object:)
61
+ struct = JSON.parse(json_object, object_class: OpenStruct)
62
+ parsed_json = JSON.parse(json_object)
63
+ created_at = (DateTime.parse(parsed_json["created_at"]) unless parsed_json["created_at"].nil?)
64
+ adjustment_group_code = struct["adjustment_group_code"]
65
+ adjustment_reason_code = struct["adjustment_reason_code"]
66
+ adjustment_amount_cents = struct["adjustment_amount_cents"]
67
+ adjustment_note = struct["adjustment_note"]
68
+ new(
69
+ created_at: created_at,
70
+ adjustment_group_code: adjustment_group_code,
71
+ adjustment_reason_code: adjustment_reason_code,
72
+ adjustment_amount_cents: adjustment_amount_cents,
73
+ adjustment_note: adjustment_note,
74
+ additional_properties: struct
75
+ )
76
+ end
77
+
78
+ # Serialize an instance of ServiceLineAdjustment to a JSON object
79
+ #
80
+ # @return [String]
81
+ def to_json(*_args)
82
+ @_field_set&.to_json
83
+ end
64
84
 
65
- # Leveraged for Union-type generation, validate_raw attempts to parse the given hash and check each fields type against the current object's property definitions.
66
- #
67
- # @param obj [Object]
68
- # @return [Void]
69
- def self.validate_raw(obj:)
70
- obj.created_at.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
71
- obj.adjustment_group_code&.is_a?(String) != false || raise("Passed value for field obj.adjustment_group_code is not the expected type, validation failed.")
72
- obj.adjustment_reason_code&.is_a?(String) != false || raise("Passed value for field obj.adjustment_reason_code is not the expected type, validation failed.")
73
- obj.adjustment_amount_cents&.is_a?(Integer) != false || raise("Passed value for field obj.adjustment_amount_cents is not the expected type, validation failed.")
74
- obj.adjustment_note&.is_a?(String) != false || raise("Passed value for field obj.adjustment_note is not the expected type, validation failed.")
85
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
86
+ # hash and check each fields type against the current object's property
87
+ # definitions.
88
+ #
89
+ # @param obj [Object]
90
+ # @return [Void]
91
+ def self.validate_raw(obj:)
92
+ obj.created_at.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
93
+ obj.adjustment_group_code&.is_a?(String) != false || raise("Passed value for field obj.adjustment_group_code is not the expected type, validation failed.")
94
+ obj.adjustment_reason_code&.is_a?(String) != false || raise("Passed value for field obj.adjustment_reason_code is not the expected type, validation failed.")
95
+ obj.adjustment_amount_cents&.is_a?(Integer) != false || raise("Passed value for field obj.adjustment_amount_cents is not the expected type, validation failed.")
96
+ obj.adjustment_note&.is_a?(String) != false || raise("Passed value for field obj.adjustment_note is not the expected type, validation failed.")
97
+ end
75
98
  end
76
99
  end
77
100
  end
@@ -1,133 +1,255 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require_relative "../../../commons/types/procedure_modifier"
4
- require_relative "../../../commons/types/decimal"
5
4
  require_relative "../../../commons/types/service_line_units"
6
5
  require_relative "drug_identification"
7
6
  require_relative "../../../commons/types/facility_type_code"
8
7
  require "date"
8
+ require_relative "../../../encounter_providers/v_2/types/referring_provider"
9
+ require_relative "../../../encounter_providers/v_2/types/initial_referring_provider"
10
+ require_relative "../../../encounter_providers/v_2/types/supervising_provider"
11
+ require_relative "../../../encounter_providers/v_2/types/ordering_provider"
12
+ require "ostruct"
9
13
  require "json"
10
14
 
11
15
  module CandidApiClient
12
16
  module ServiceLines
13
17
  module V2
14
- class ServiceLineCreate
15
- attr_reader :modifiers, :procedure_code, :quantity, :units, :charge_amount_cents, :diagnosis_pointers,
16
- :drug_identification, :place_of_service_code, :description, :date_of_service, :end_date_of_service, :additional_properties
18
+ module Types
19
+ class ServiceLineCreate
20
+ # @return [Array<CandidApiClient::Commons::Types::ProcedureModifier>]
21
+ attr_reader :modifiers
22
+ # @return [String]
23
+ attr_reader :procedure_code
24
+ # @return [String] String representation of a Decimal that can be parsed by most libraries.
25
+ # A ServiceLine quantity cannot contain more than one digit of precision.
26
+ # Example: 1.1 is valid, 1.11 is not.
27
+ attr_reader :quantity
28
+ # @return [CandidApiClient::Commons::Types::ServiceLineUnits]
29
+ attr_reader :units
30
+ # @return [Integer] The total amount charged for this service line taking quantity into account. For
31
+ # example, if a single unit
32
+ # costs 100 cents and 2 units were rendered, the charge_amount_cents should be
33
+ # 200. Should be greater than or
34
+ # equal to 0.
35
+ attr_reader :charge_amount_cents
36
+ # @return [Array<Integer>] Indices (zero-indexed) of all the diagnoses this service line references
37
+ attr_reader :diagnosis_pointers
38
+ # @return [CandidApiClient::ServiceLines::V2::Types::DrugIdentification]
39
+ attr_reader :drug_identification
40
+ # @return [CandidApiClient::Commons::Types::FacilityTypeCode]
41
+ attr_reader :place_of_service_code
42
+ # @return [String] A free-form description to clarify the related data elements and their content.
43
+ # Maps to SV1-01, C003-07 on the 837-P.
44
+ attr_reader :description
45
+ # @return [Date]
46
+ attr_reader :date_of_service
47
+ # @return [Date]
48
+ attr_reader :end_date_of_service
49
+ # @return [CandidApiClient::EncounterProviders::V2::Types::ReferringProvider] The final provider who referred the services that were rendered.
50
+ # All physicians who order services or refer Medicare beneficiaries must
51
+ # report this data.
52
+ attr_reader :referring_provider
53
+ # @return [CandidApiClient::EncounterProviders::V2::Types::InitialReferringProvider] The second iteration of Loop ID-2310. Use code "P3 - Primary Care Provider" in
54
+ # this loop to
55
+ # indicate the initial referral from the primary care provider or whatever
56
+ # provider wrote the initial referral for this patient's episode of care being
57
+ # billed/reported in this transaction.
58
+ # Information in Loop ID-2310 applies to the entire claim unless overridden on a
59
+ # service line by the presence of Loop ID-2420 with the same value in NM101.
60
+ attr_reader :initial_referring_provider
61
+ # @return [CandidApiClient::EncounterProviders::V2::Types::SupervisingProvider] Required when the rendering provider is supervised by a physician. If not
62
+ # required by this implementation guide, do not send.
63
+ # Information in Loop ID-2310 applies to the entire claim unless overridden on a
64
+ # service line by the presence of Loop ID-2420 with the same value in NM101.
65
+ attr_reader :supervising_provider
66
+ # @return [CandidApiClient::EncounterProviders::V2::Types::OrderingProvider] Required when the service or supply was ordered by a provider who is different
67
+ # than the rendering provider for this service line.
68
+ # If not required by this implementation guide, do not send.
69
+ attr_reader :ordering_provider
70
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
71
+ attr_reader :additional_properties
72
+ # @return [Object]
73
+ attr_reader :_field_set
74
+ protected :_field_set
17
75
 
18
- # @param modifiers [Array<Commons::ProcedureModifier>]
19
- # @param procedure_code [String]
20
- # @param quantity [Commons::DECIMAL] String representation of a Decimal that can be parsed by most libraries.
21
- # A ServiceLine quantity cannot contain more than one digit of precision.
22
- # Example: 1.1 is valid, 1.11 is not.
23
- # @param units [Commons::ServiceLineUnits]
24
- # @param charge_amount_cents [Integer] The total amount charged for this service line taking quantity into account. For example, if a single unit
25
- # costs 100 cents and 2 units were rendered, the charge_amount_cents should be 200. Should be greater than or
26
- # equal to 0.
27
- # @param diagnosis_pointers [Array<Integer>] Indices (zero-indexed) of all the diagnoses this service line references
28
- # @param drug_identification [ServiceLines::V2::DrugIdentification]
29
- # @param place_of_service_code [Commons::FacilityTypeCode]
30
- # @param description [String] A free-form description to clarify the related data elements and their content. Maps to SV1-01, C003-07 on the 837-P.
31
- # @param date_of_service [Date]
32
- # @param end_date_of_service [Date]
33
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
34
- # @return [ServiceLines::V2::ServiceLineCreate]
35
- def initialize(procedure_code:, quantity:, units:, diagnosis_pointers:, modifiers: nil,
36
- charge_amount_cents: nil, drug_identification: nil, place_of_service_code: nil, description: nil, date_of_service: nil, end_date_of_service: nil, additional_properties: nil)
37
- # @type [Array<Commons::ProcedureModifier>]
38
- @modifiers = modifiers
39
- # @type [String]
40
- @procedure_code = procedure_code
41
- # @type [Commons::DECIMAL] String representation of a Decimal that can be parsed by most libraries.
42
- # A ServiceLine quantity cannot contain more than one digit of precision.
43
- # Example: 1.1 is valid, 1.11 is not.
44
- @quantity = quantity
45
- # @type [Commons::ServiceLineUnits]
46
- @units = units
47
- # @type [Integer] The total amount charged for this service line taking quantity into account. For example, if a single unit
48
- # costs 100 cents and 2 units were rendered, the charge_amount_cents should be 200. Should be greater than or
49
- # equal to 0.
50
- @charge_amount_cents = charge_amount_cents
51
- # @type [Array<Integer>] Indices (zero-indexed) of all the diagnoses this service line references
52
- @diagnosis_pointers = diagnosis_pointers
53
- # @type [ServiceLines::V2::DrugIdentification]
54
- @drug_identification = drug_identification
55
- # @type [Commons::FacilityTypeCode]
56
- @place_of_service_code = place_of_service_code
57
- # @type [String] A free-form description to clarify the related data elements and their content. Maps to SV1-01, C003-07 on the 837-P.
58
- @description = description
59
- # @type [Date]
60
- @date_of_service = date_of_service
61
- # @type [Date]
62
- @end_date_of_service = end_date_of_service
63
- # @type [OpenStruct] Additional properties unmapped to the current class definition
64
- @additional_properties = additional_properties
65
- end
76
+ OMIT = Object.new
66
77
 
67
- # Deserialize a JSON object to an instance of ServiceLineCreate
68
- #
69
- # @param json_object [JSON]
70
- # @return [ServiceLines::V2::ServiceLineCreate]
71
- def self.from_json(json_object:)
72
- struct = JSON.parse(json_object, object_class: OpenStruct)
73
- parsed_json = JSON.parse(json_object)
74
- modifiers = struct.modifiers
75
- procedure_code = struct.procedure_code
76
- quantity = struct.quantity
77
- units = struct.units
78
- charge_amount_cents = struct.charge_amount_cents
79
- diagnosis_pointers = struct.diagnosis_pointers
80
- if parsed_json["drug_identification"].nil?
81
- drug_identification = nil
82
- else
83
- drug_identification = parsed_json["drug_identification"].to_json
84
- drug_identification = ServiceLines::V2::DrugIdentification.from_json(json_object: drug_identification)
78
+ # @param modifiers [Array<CandidApiClient::Commons::Types::ProcedureModifier>]
79
+ # @param procedure_code [String]
80
+ # @param quantity [String] String representation of a Decimal that can be parsed by most libraries.
81
+ # A ServiceLine quantity cannot contain more than one digit of precision.
82
+ # Example: 1.1 is valid, 1.11 is not.
83
+ # @param units [CandidApiClient::Commons::Types::ServiceLineUnits]
84
+ # @param charge_amount_cents [Integer] The total amount charged for this service line taking quantity into account. For
85
+ # example, if a single unit
86
+ # costs 100 cents and 2 units were rendered, the charge_amount_cents should be
87
+ # 200. Should be greater than or
88
+ # equal to 0.
89
+ # @param diagnosis_pointers [Array<Integer>] Indices (zero-indexed) of all the diagnoses this service line references
90
+ # @param drug_identification [CandidApiClient::ServiceLines::V2::Types::DrugIdentification]
91
+ # @param place_of_service_code [CandidApiClient::Commons::Types::FacilityTypeCode]
92
+ # @param description [String] A free-form description to clarify the related data elements and their content.
93
+ # Maps to SV1-01, C003-07 on the 837-P.
94
+ # @param date_of_service [Date]
95
+ # @param end_date_of_service [Date]
96
+ # @param referring_provider [CandidApiClient::EncounterProviders::V2::Types::ReferringProvider] The final provider who referred the services that were rendered.
97
+ # All physicians who order services or refer Medicare beneficiaries must
98
+ # report this data.
99
+ # @param initial_referring_provider [CandidApiClient::EncounterProviders::V2::Types::InitialReferringProvider] The second iteration of Loop ID-2310. Use code "P3 - Primary Care Provider" in
100
+ # this loop to
101
+ # indicate the initial referral from the primary care provider or whatever
102
+ # provider wrote the initial referral for this patient's episode of care being
103
+ # billed/reported in this transaction.
104
+ # Information in Loop ID-2310 applies to the entire claim unless overridden on a
105
+ # service line by the presence of Loop ID-2420 with the same value in NM101.
106
+ # @param supervising_provider [CandidApiClient::EncounterProviders::V2::Types::SupervisingProvider] Required when the rendering provider is supervised by a physician. If not
107
+ # required by this implementation guide, do not send.
108
+ # Information in Loop ID-2310 applies to the entire claim unless overridden on a
109
+ # service line by the presence of Loop ID-2420 with the same value in NM101.
110
+ # @param ordering_provider [CandidApiClient::EncounterProviders::V2::Types::OrderingProvider] Required when the service or supply was ordered by a provider who is different
111
+ # than the rendering provider for this service line.
112
+ # If not required by this implementation guide, do not send.
113
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
114
+ # @return [CandidApiClient::ServiceLines::V2::Types::ServiceLineCreate]
115
+ def initialize(procedure_code:, quantity:, units:, diagnosis_pointers:, modifiers: OMIT,
116
+ charge_amount_cents: OMIT, drug_identification: OMIT, place_of_service_code: OMIT, description: OMIT, date_of_service: OMIT, end_date_of_service: OMIT, referring_provider: OMIT, initial_referring_provider: OMIT, supervising_provider: OMIT, ordering_provider: OMIT, additional_properties: nil)
117
+ @modifiers = modifiers if modifiers != OMIT
118
+ @procedure_code = procedure_code
119
+ @quantity = quantity
120
+ @units = units
121
+ @charge_amount_cents = charge_amount_cents if charge_amount_cents != OMIT
122
+ @diagnosis_pointers = diagnosis_pointers
123
+ @drug_identification = drug_identification if drug_identification != OMIT
124
+ @place_of_service_code = place_of_service_code if place_of_service_code != OMIT
125
+ @description = description if description != OMIT
126
+ @date_of_service = date_of_service if date_of_service != OMIT
127
+ @end_date_of_service = end_date_of_service if end_date_of_service != OMIT
128
+ @referring_provider = referring_provider if referring_provider != OMIT
129
+ @initial_referring_provider = initial_referring_provider if initial_referring_provider != OMIT
130
+ @supervising_provider = supervising_provider if supervising_provider != OMIT
131
+ @ordering_provider = ordering_provider if ordering_provider != OMIT
132
+ @additional_properties = additional_properties
133
+ @_field_set = {
134
+ "modifiers": modifiers,
135
+ "procedure_code": procedure_code,
136
+ "quantity": quantity,
137
+ "units": units,
138
+ "charge_amount_cents": charge_amount_cents,
139
+ "diagnosis_pointers": diagnosis_pointers,
140
+ "drug_identification": drug_identification,
141
+ "place_of_service_code": place_of_service_code,
142
+ "description": description,
143
+ "date_of_service": date_of_service,
144
+ "end_date_of_service": end_date_of_service,
145
+ "referring_provider": referring_provider,
146
+ "initial_referring_provider": initial_referring_provider,
147
+ "supervising_provider": supervising_provider,
148
+ "ordering_provider": ordering_provider
149
+ }.reject do |_k, v|
150
+ v == OMIT
151
+ end
85
152
  end
86
- place_of_service_code = struct.place_of_service_code
87
- description = struct.description
88
- date_of_service = (Date.parse(parsed_json["date_of_service"]) unless parsed_json["date_of_service"].nil?)
89
- end_date_of_service = unless parsed_json["end_date_of_service"].nil?
90
- Date.parse(parsed_json["end_date_of_service"])
91
- end
92
- new(modifiers: modifiers, procedure_code: procedure_code, quantity: quantity, units: units,
93
- charge_amount_cents: charge_amount_cents, diagnosis_pointers: diagnosis_pointers, drug_identification: drug_identification, place_of_service_code: place_of_service_code, description: description, date_of_service: date_of_service, end_date_of_service: end_date_of_service, additional_properties: struct)
94
- end
95
153
 
96
- # Serialize an instance of ServiceLineCreate to a JSON object
97
- #
98
- # @return [JSON]
99
- def to_json(*_args)
100
- {
101
- "modifiers": @modifiers,
102
- "procedure_code": @procedure_code,
103
- "quantity": @quantity,
104
- "units": @units,
105
- "charge_amount_cents": @charge_amount_cents,
106
- "diagnosis_pointers": @diagnosis_pointers,
107
- "drug_identification": @drug_identification,
108
- "place_of_service_code": @place_of_service_code,
109
- "description": @description,
110
- "date_of_service": @date_of_service,
111
- "end_date_of_service": @end_date_of_service
112
- }.to_json
113
- end
154
+ # Deserialize a JSON object to an instance of ServiceLineCreate
155
+ #
156
+ # @param json_object [String]
157
+ # @return [CandidApiClient::ServiceLines::V2::Types::ServiceLineCreate]
158
+ def self.from_json(json_object:)
159
+ struct = JSON.parse(json_object, object_class: OpenStruct)
160
+ parsed_json = JSON.parse(json_object)
161
+ modifiers = struct["modifiers"]
162
+ procedure_code = struct["procedure_code"]
163
+ quantity = struct["quantity"]
164
+ units = struct["units"]
165
+ charge_amount_cents = struct["charge_amount_cents"]
166
+ diagnosis_pointers = struct["diagnosis_pointers"]
167
+ if parsed_json["drug_identification"].nil?
168
+ drug_identification = nil
169
+ else
170
+ drug_identification = parsed_json["drug_identification"].to_json
171
+ drug_identification = CandidApiClient::ServiceLines::V2::Types::DrugIdentification.from_json(json_object: drug_identification)
172
+ end
173
+ place_of_service_code = struct["place_of_service_code"]
174
+ description = struct["description"]
175
+ date_of_service = (Date.parse(parsed_json["date_of_service"]) unless parsed_json["date_of_service"].nil?)
176
+ end_date_of_service = unless parsed_json["end_date_of_service"].nil?
177
+ Date.parse(parsed_json["end_date_of_service"])
178
+ end
179
+ if parsed_json["referring_provider"].nil?
180
+ referring_provider = nil
181
+ else
182
+ referring_provider = parsed_json["referring_provider"].to_json
183
+ referring_provider = CandidApiClient::EncounterProviders::V2::Types::ReferringProvider.from_json(json_object: referring_provider)
184
+ end
185
+ if parsed_json["initial_referring_provider"].nil?
186
+ initial_referring_provider = nil
187
+ else
188
+ initial_referring_provider = parsed_json["initial_referring_provider"].to_json
189
+ initial_referring_provider = CandidApiClient::EncounterProviders::V2::Types::InitialReferringProvider.from_json(json_object: initial_referring_provider)
190
+ end
191
+ if parsed_json["supervising_provider"].nil?
192
+ supervising_provider = nil
193
+ else
194
+ supervising_provider = parsed_json["supervising_provider"].to_json
195
+ supervising_provider = CandidApiClient::EncounterProviders::V2::Types::SupervisingProvider.from_json(json_object: supervising_provider)
196
+ end
197
+ if parsed_json["ordering_provider"].nil?
198
+ ordering_provider = nil
199
+ else
200
+ ordering_provider = parsed_json["ordering_provider"].to_json
201
+ ordering_provider = CandidApiClient::EncounterProviders::V2::Types::OrderingProvider.from_json(json_object: ordering_provider)
202
+ end
203
+ new(
204
+ modifiers: modifiers,
205
+ procedure_code: procedure_code,
206
+ quantity: quantity,
207
+ units: units,
208
+ charge_amount_cents: charge_amount_cents,
209
+ diagnosis_pointers: diagnosis_pointers,
210
+ drug_identification: drug_identification,
211
+ place_of_service_code: place_of_service_code,
212
+ description: description,
213
+ date_of_service: date_of_service,
214
+ end_date_of_service: end_date_of_service,
215
+ referring_provider: referring_provider,
216
+ initial_referring_provider: initial_referring_provider,
217
+ supervising_provider: supervising_provider,
218
+ ordering_provider: ordering_provider,
219
+ additional_properties: struct
220
+ )
221
+ end
114
222
 
115
- # 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.
116
- #
117
- # @param obj [Object]
118
- # @return [Void]
119
- def self.validate_raw(obj:)
120
- obj.modifiers&.is_a?(Array) != false || raise("Passed value for field obj.modifiers is not the expected type, validation failed.")
121
- obj.procedure_code.is_a?(String) != false || raise("Passed value for field obj.procedure_code is not the expected type, validation failed.")
122
- obj.quantity.is_a?(String) != false || raise("Passed value for field obj.quantity is not the expected type, validation failed.")
123
- obj.units.is_a?(Commons::ServiceLineUnits) != false || raise("Passed value for field obj.units is not the expected type, validation failed.")
124
- obj.charge_amount_cents&.is_a?(Integer) != false || raise("Passed value for field obj.charge_amount_cents is not the expected type, validation failed.")
125
- obj.diagnosis_pointers.is_a?(Array) != false || raise("Passed value for field obj.diagnosis_pointers is not the expected type, validation failed.")
126
- obj.drug_identification.nil? || ServiceLines::V2::DrugIdentification.validate_raw(obj: obj.drug_identification)
127
- obj.place_of_service_code&.is_a?(Commons::FacilityTypeCode) != false || raise("Passed value for field obj.place_of_service_code is not the expected type, validation failed.")
128
- obj.description&.is_a?(String) != false || raise("Passed value for field obj.description is not the expected type, validation failed.")
129
- obj.date_of_service&.is_a?(Date) != false || raise("Passed value for field obj.date_of_service is not the expected type, validation failed.")
130
- obj.end_date_of_service&.is_a?(Date) != false || raise("Passed value for field obj.end_date_of_service is not the expected type, validation failed.")
223
+ # Serialize an instance of ServiceLineCreate to a JSON object
224
+ #
225
+ # @return [String]
226
+ def to_json(*_args)
227
+ @_field_set&.to_json
228
+ end
229
+
230
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
231
+ # hash and check each fields type against the current object's property
232
+ # definitions.
233
+ #
234
+ # @param obj [Object]
235
+ # @return [Void]
236
+ def self.validate_raw(obj:)
237
+ obj.modifiers&.is_a?(Array) != false || raise("Passed value for field obj.modifiers is not the expected type, validation failed.")
238
+ obj.procedure_code.is_a?(String) != false || raise("Passed value for field obj.procedure_code is not the expected type, validation failed.")
239
+ obj.quantity.is_a?(String) != false || raise("Passed value for field obj.quantity is not the expected type, validation failed.")
240
+ obj.units.is_a?(CandidApiClient::Commons::Types::ServiceLineUnits) != false || raise("Passed value for field obj.units is not the expected type, validation failed.")
241
+ obj.charge_amount_cents&.is_a?(Integer) != false || raise("Passed value for field obj.charge_amount_cents is not the expected type, validation failed.")
242
+ obj.diagnosis_pointers.is_a?(Array) != false || raise("Passed value for field obj.diagnosis_pointers is not the expected type, validation failed.")
243
+ obj.drug_identification.nil? || CandidApiClient::ServiceLines::V2::Types::DrugIdentification.validate_raw(obj: obj.drug_identification)
244
+ obj.place_of_service_code&.is_a?(CandidApiClient::Commons::Types::FacilityTypeCode) != false || raise("Passed value for field obj.place_of_service_code is not the expected type, validation failed.")
245
+ obj.description&.is_a?(String) != false || raise("Passed value for field obj.description is not the expected type, validation failed.")
246
+ obj.date_of_service&.is_a?(Date) != false || raise("Passed value for field obj.date_of_service is not the expected type, validation failed.")
247
+ obj.end_date_of_service&.is_a?(Date) != false || raise("Passed value for field obj.end_date_of_service is not the expected type, validation failed.")
248
+ obj.referring_provider.nil? || CandidApiClient::EncounterProviders::V2::Types::ReferringProvider.validate_raw(obj: obj.referring_provider)
249
+ obj.initial_referring_provider.nil? || CandidApiClient::EncounterProviders::V2::Types::InitialReferringProvider.validate_raw(obj: obj.initial_referring_provider)
250
+ obj.supervising_provider.nil? || CandidApiClient::EncounterProviders::V2::Types::SupervisingProvider.validate_raw(obj: obj.supervising_provider)
251
+ obj.ordering_provider.nil? || CandidApiClient::EncounterProviders::V2::Types::OrderingProvider.validate_raw(obj: obj.ordering_provider)
252
+ end
131
253
  end
132
254
  end
133
255
  end
@@ -1,50 +1,64 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require_relative "denial_reason_content"
4
+ require "ostruct"
4
5
  require "json"
5
6
 
6
7
  module CandidApiClient
7
8
  module ServiceLines
8
9
  module V2
9
- # The reason a given service line was denied within a given time range.
10
- # A service line may be denied for different reasons over time, but only one reason at a time.
11
- class ServiceLineDenialReason
12
- attr_reader :reason, :additional_properties
10
+ module Types
11
+ # The reason a given service line was denied within a given time range.
12
+ # A service line may be denied for different reasons over time, but only one
13
+ # reason at a time.
14
+ class ServiceLineDenialReason
15
+ # @return [CandidApiClient::ServiceLines::V2::Types::DenialReasonContent] Text of the denial reason
16
+ attr_reader :reason
17
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
18
+ attr_reader :additional_properties
19
+ # @return [Object]
20
+ attr_reader :_field_set
21
+ protected :_field_set
13
22
 
14
- # @param reason [ServiceLines::V2::DenialReasonContent] Text of the denial reason
15
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
16
- # @return [ServiceLines::V2::ServiceLineDenialReason]
17
- def initialize(reason: nil, additional_properties: nil)
18
- # @type [ServiceLines::V2::DenialReasonContent] Text of the denial reason
19
- @reason = reason
20
- # @type [OpenStruct] Additional properties unmapped to the current class definition
21
- @additional_properties = additional_properties
22
- end
23
+ OMIT = Object.new
23
24
 
24
- # Deserialize a JSON object to an instance of ServiceLineDenialReason
25
- #
26
- # @param json_object [JSON]
27
- # @return [ServiceLines::V2::ServiceLineDenialReason]
28
- def self.from_json(json_object:)
29
- struct = JSON.parse(json_object, object_class: OpenStruct)
30
- JSON.parse(json_object)
31
- reason = struct.reason
32
- new(reason: reason, additional_properties: struct)
33
- end
25
+ # @param reason [CandidApiClient::ServiceLines::V2::Types::DenialReasonContent] Text of the denial reason
26
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
27
+ # @return [CandidApiClient::ServiceLines::V2::Types::ServiceLineDenialReason]
28
+ def initialize(reason: OMIT, additional_properties: nil)
29
+ @reason = reason if reason != OMIT
30
+ @additional_properties = additional_properties
31
+ @_field_set = { "reason": reason }.reject do |_k, v|
32
+ v == OMIT
33
+ end
34
+ end
34
35
 
35
- # Serialize an instance of ServiceLineDenialReason to a JSON object
36
- #
37
- # @return [JSON]
38
- def to_json(*_args)
39
- { "reason": @reason }.to_json
40
- end
36
+ # Deserialize a JSON object to an instance of ServiceLineDenialReason
37
+ #
38
+ # @param json_object [String]
39
+ # @return [CandidApiClient::ServiceLines::V2::Types::ServiceLineDenialReason]
40
+ def self.from_json(json_object:)
41
+ struct = JSON.parse(json_object, object_class: OpenStruct)
42
+ reason = struct["reason"]
43
+ new(reason: reason, additional_properties: struct)
44
+ end
45
+
46
+ # Serialize an instance of ServiceLineDenialReason to a JSON object
47
+ #
48
+ # @return [String]
49
+ def to_json(*_args)
50
+ @_field_set&.to_json
51
+ end
41
52
 
42
- # 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.
43
- #
44
- # @param obj [Object]
45
- # @return [Void]
46
- def self.validate_raw(obj:)
47
- obj.reason&.is_a?(ServiceLines::V2::DenialReasonContent) != false || raise("Passed value for field obj.reason is not the expected type, validation failed.")
53
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
54
+ # hash and check each fields type against the current object's property
55
+ # definitions.
56
+ #
57
+ # @param obj [Object]
58
+ # @return [Void]
59
+ def self.validate_raw(obj:)
60
+ obj.reason&.is_a?(CandidApiClient::ServiceLines::V2::Types::DenialReasonContent) != false || raise("Passed value for field obj.reason is not the expected type, validation failed.")
61
+ end
48
62
  end
49
63
  end
50
64
  end