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.
- checksums.yaml +7 -0
- data/lib/candidhealth/auth/client.rb +28 -0
- data/lib/candidhealth/auth/v_2/client.rb +90 -0
- data/lib/candidhealth/auth/v_2/types/auth_get_token_request.rb +54 -0
- data/lib/candidhealth/auth/v_2/types/auth_get_token_response.rb +59 -0
- data/lib/candidhealth/auth/v_2/types/too_many_requests_error_type.rb +49 -0
- data/lib/candidhealth/billing_notes/client.rb +28 -0
- data/lib/candidhealth/billing_notes/v_2/client.rb +76 -0
- data/lib/candidhealth/billing_notes/v_2/types/billing_note.rb +89 -0
- data/lib/candidhealth/billing_notes/v_2/types/billing_note_base.rb +49 -0
- data/lib/candidhealth/billing_notes/v_2/types/billing_note_id.rb +9 -0
- data/lib/candidhealth/claim_submission/v_1/types/claim_frequency_type_code.rb +14 -0
- data/lib/candidhealth/claim_submission/v_1/types/claim_submission_record_create.rb +68 -0
- data/lib/candidhealth/claim_submission/v_1/types/external_claim_submission_create.rb +75 -0
- data/lib/candidhealth/claims/types/claim.rb +98 -0
- data/lib/candidhealth/claims/types/claim_status.rb +23 -0
- data/lib/candidhealth/commons/types/claim_adjustment_group_codes.rb +17 -0
- data/lib/candidhealth/commons/types/claim_id.rb +7 -0
- data/lib/candidhealth/commons/types/claim_submission_payer_responsibility_type.rb +10 -0
- data/lib/candidhealth/commons/types/date.rb +7 -0
- data/lib/candidhealth/commons/types/date_range_optional_end.rb +53 -0
- data/lib/candidhealth/commons/types/decimal.rb +7 -0
- data/lib/candidhealth/commons/types/delay_reason_code.rb +23 -0
- data/lib/candidhealth/commons/types/email.rb +7 -0
- data/lib/candidhealth/commons/types/emr_payer_crosswalk.rb +10 -0
- data/lib/candidhealth/commons/types/encounter_external_id.rb +7 -0
- data/lib/candidhealth/commons/types/encounter_id.rb +7 -0
- data/lib/candidhealth/commons/types/entity_not_found_error_message.rb +47 -0
- data/lib/candidhealth/commons/types/error_message.rb +7 -0
- data/lib/candidhealth/commons/types/facility_type_code.rb +61 -0
- data/lib/candidhealth/commons/types/http_service_unavailable_error_message.rb +47 -0
- data/lib/candidhealth/commons/types/insurance_type_code.rb +79 -0
- data/lib/candidhealth/commons/types/invoice_id.rb +7 -0
- data/lib/candidhealth/commons/types/link_url.rb +7 -0
- data/lib/candidhealth/commons/types/npi.rb +7 -0
- data/lib/candidhealth/commons/types/organization_id.rb +7 -0
- data/lib/candidhealth/commons/types/organization_not_authorized_error_message.rb +47 -0
- data/lib/candidhealth/commons/types/page_token.rb +7 -0
- data/lib/candidhealth/commons/types/patient_external_id.rb +7 -0
- data/lib/candidhealth/commons/types/patient_relationship_to_insured_code_all.rb +32 -0
- data/lib/candidhealth/commons/types/phone_number.rb +53 -0
- data/lib/candidhealth/commons/types/phone_number_type.rb +11 -0
- data/lib/candidhealth/commons/types/procedure_modifier.rb +395 -0
- data/lib/candidhealth/commons/types/provider_id.rb +7 -0
- data/lib/candidhealth/commons/types/region_national.rb +41 -0
- data/lib/candidhealth/commons/types/region_states.rb +48 -0
- data/lib/candidhealth/commons/types/regions.rb +92 -0
- data/lib/candidhealth/commons/types/removable_date_range_optional_end.rb +90 -0
- data/lib/candidhealth/commons/types/request_validation_error.rb +52 -0
- data/lib/candidhealth/commons/types/resource_page.rb +53 -0
- data/lib/candidhealth/commons/types/service_line_id.rb +7 -0
- data/lib/candidhealth/commons/types/service_line_units.rb +10 -0
- data/lib/candidhealth/commons/types/sort_direction.rb +10 -0
- data/lib/candidhealth/commons/types/source_of_payment_code.rb +31 -0
- data/lib/candidhealth/commons/types/state.rb +70 -0
- data/lib/candidhealth/commons/types/street_address_base.rb +75 -0
- data/lib/candidhealth/commons/types/street_address_long_zip.rb +82 -0
- data/lib/candidhealth/commons/types/street_address_short_zip.rb +82 -0
- data/lib/candidhealth/commons/types/task_assignment_id.rb +7 -0
- data/lib/candidhealth/commons/types/task_id.rb +7 -0
- data/lib/candidhealth/commons/types/task_note_id.rb +7 -0
- data/lib/candidhealth/commons/types/tax_id.rb +7 -0
- data/lib/candidhealth/commons/types/unauthorized_error_message.rb +47 -0
- data/lib/candidhealth/commons/types/unprocessable_entity_error_message.rb +47 -0
- data/lib/candidhealth/commons/types/updates_disabled_due_to_external_system_integration_error_message.rb +47 -0
- data/lib/candidhealth/commons/types/user_id.rb +7 -0
- data/lib/candidhealth/commons/types/work_queue_id.rb +7 -0
- data/lib/candidhealth/contracts/client.rb +28 -0
- data/lib/candidhealth/contracts/v_2/client.rb +336 -0
- data/lib/candidhealth/contracts/v_2/types/authorized_signatory.rb +83 -0
- data/lib/candidhealth/contracts/v_2/types/authorized_signatory_update.rb +92 -0
- data/lib/candidhealth/contracts/v_2/types/contract.rb +165 -0
- data/lib/candidhealth/contracts/v_2/types/contract_base.rb +128 -0
- data/lib/candidhealth/contracts/v_2/types/contract_id.rb +9 -0
- data/lib/candidhealth/contracts/v_2/types/contract_is_linked_to_fee_schedule_error.rb +49 -0
- data/lib/candidhealth/contracts/v_2/types/contract_status.rb +13 -0
- data/lib/candidhealth/contracts/v_2/types/contract_with_providers.rb +177 -0
- data/lib/candidhealth/contracts/v_2/types/contracting_provider_id.rb +9 -0
- data/lib/candidhealth/contracts/v_2/types/contracts_page.rb +65 -0
- data/lib/candidhealth/contracts/v_2/types/date_update.rb +92 -0
- data/lib/candidhealth/contracts/v_2/types/insurance_types.rb +103 -0
- data/lib/candidhealth/contracts/v_2/types/regions_update.rb +92 -0
- data/lib/candidhealth/contracts/v_2/types/rendering_providerid.rb +9 -0
- data/lib/candidhealth/diagnoses/types/diagnosis.rb +106 -0
- data/lib/candidhealth/diagnoses/types/diagnosis_create.rb +72 -0
- data/lib/candidhealth/diagnoses/types/diagnosis_id.rb +7 -0
- data/lib/candidhealth/diagnoses/types/diagnosis_type_code.rb +18 -0
- data/lib/candidhealth/diagnoses/types/standalone_diagnosis_create.rb +78 -0
- data/lib/candidhealth/eligibility/client.rb +28 -0
- data/lib/candidhealth/eligibility/v_2/client.rb +136 -0
- data/lib/candidhealth/encounter_providers/v_2/types/billing_provider.rb +104 -0
- data/lib/candidhealth/encounter_providers/v_2/types/encounter_provider.rb +103 -0
- data/lib/candidhealth/encounter_providers/v_2/types/encounter_provider_base.rb +60 -0
- data/lib/candidhealth/encounter_providers/v_2/types/provider_id.rb +9 -0
- data/lib/candidhealth/encounter_providers/v_2/types/referring_provider.rb +91 -0
- data/lib/candidhealth/encounter_providers/v_2/types/rendering_provider.rb +91 -0
- data/lib/candidhealth/encounters/client.rb +28 -0
- data/lib/candidhealth/encounters/v_4/client.rb +1125 -0
- data/lib/candidhealth/encounters/v_4/types/billable_status_type.rb +12 -0
- data/lib/candidhealth/encounters/v_4/types/cash_pay_payer_error_message.rb +49 -0
- data/lib/candidhealth/encounters/v_4/types/clinical_note.rb +67 -0
- data/lib/candidhealth/encounters/v_4/types/clinical_note_category.rb +64 -0
- data/lib/candidhealth/encounters/v_4/types/clinical_note_category_create.rb +59 -0
- data/lib/candidhealth/encounters/v_4/types/coding_attribution_type.rb +14 -0
- data/lib/candidhealth/encounters/v_4/types/encounter.rb +515 -0
- data/lib/candidhealth/encounters/v_4/types/encounter_base.rb +274 -0
- data/lib/candidhealth/encounters/v_4/types/encounter_external_id_uniqueness_error_type.rb +50 -0
- data/lib/candidhealth/encounters/v_4/types/encounter_guarantor_missing_contact_info_error_type.rb +49 -0
- data/lib/candidhealth/encounters/v_4/types/encounter_owner_of_next_action_type.rb +14 -0
- data/lib/candidhealth/encounters/v_4/types/encounter_page.rb +65 -0
- data/lib/candidhealth/encounters/v_4/types/encounter_patient_control_number_uniqueness_error_type.rb +49 -0
- data/lib/candidhealth/encounters/v_4/types/encounter_sort_options.rb +14 -0
- data/lib/candidhealth/encounters/v_4/types/encounter_submission_origin_type.rb +12 -0
- data/lib/candidhealth/encounters/v_4/types/intake_follow_up.rb +60 -0
- data/lib/candidhealth/encounters/v_4/types/intake_follow_up_id.rb +9 -0
- data/lib/candidhealth/encounters/v_4/types/intake_question.rb +64 -0
- data/lib/candidhealth/encounters/v_4/types/intake_question_id.rb +9 -0
- data/lib/candidhealth/encounters/v_4/types/intake_response_and_follow_ups.rb +58 -0
- data/lib/candidhealth/encounters/v_4/types/intervention.rb +87 -0
- data/lib/candidhealth/encounters/v_4/types/intervention_category.rb +14 -0
- data/lib/candidhealth/encounters/v_4/types/lab.rb +60 -0
- data/lib/candidhealth/encounters/v_4/types/lab_code_type.rb +12 -0
- data/lib/candidhealth/encounters/v_4/types/medication.rb +84 -0
- data/lib/candidhealth/encounters/v_4/types/note_category.rb +24 -0
- data/lib/candidhealth/encounters/v_4/types/patient_history_category.rb +59 -0
- data/lib/candidhealth/encounters/v_4/types/patient_history_category_enum.rb +14 -0
- data/lib/candidhealth/encounters/v_4/types/prior_authorization_number.rb +9 -0
- data/lib/candidhealth/encounters/v_4/types/responsible_party_type.rb +13 -0
- data/lib/candidhealth/encounters/v_4/types/rx_cui.rb +9 -0
- data/lib/candidhealth/encounters/v_4/types/service_authorization_exception_code.rb +19 -0
- data/lib/candidhealth/encounters/v_4/types/synchronicity_type.rb +12 -0
- data/lib/candidhealth/encounters/v_4/types/vitals.rb +78 -0
- data/lib/candidhealth/era/types/era.rb +59 -0
- data/lib/candidhealth/era/types/era_base.rb +53 -0
- data/lib/candidhealth/era/types/era_id.rb +7 -0
- data/lib/candidhealth/era/types/era_not_fully_processed_error_message.rb +53 -0
- data/lib/candidhealth/era_commons/types/claim_status_code_create.rb +18 -0
- data/lib/candidhealth/expected_network_status/client.rb +31 -0
- data/lib/candidhealth/expected_network_status/v_1/client.rb +112 -0
- data/lib/candidhealth/expected_network_status/v_1/types/expected_network_status.rb +13 -0
- data/lib/candidhealth/expected_network_status/v_1/types/expected_network_status_response.rb +66 -0
- data/lib/candidhealth/expected_network_status/v_2/client.rb +183 -0
- data/lib/candidhealth/expected_network_status/v_2/types/compute_all_in_network_providers_request.rb +119 -0
- data/lib/candidhealth/expected_network_status/v_2/types/compute_all_in_network_providers_response.rb +65 -0
- data/lib/candidhealth/expected_network_status/v_2/types/compute_all_in_network_rendering_providers_result.rb +107 -0
- data/lib/candidhealth/expected_network_status/v_2/types/expected_network_status_check_error_message.rb +49 -0
- data/lib/candidhealth/expected_network_status/v_2/types/expected_network_status_request_v_2.rb +119 -0
- data/lib/candidhealth/expected_network_status/v_2/types/expected_network_status_response_v_2.rb +62 -0
- data/lib/candidhealth/expected_network_status/v_2/types/expected_network_status_subscriber_information.rb +67 -0
- data/lib/candidhealth/expected_network_status/v_2/types/expected_network_status_v_2.rb +107 -0
- data/lib/candidhealth/expected_network_status/v_2/types/explanation.rb +18 -0
- data/lib/candidhealth/expected_network_status/v_2/types/in_network_rendering_providers_detail.rb +67 -0
- data/lib/candidhealth/expected_network_status/v_2/types/in_network_status.rb +57 -0
- data/lib/candidhealth/expected_network_status/v_2/types/indeterminate_network_status.rb +74 -0
- data/lib/candidhealth/expected_network_status/v_2/types/insurance_type.rb +62 -0
- data/lib/candidhealth/expected_network_status/v_2/types/insurance_type_codes.rb +103 -0
- data/lib/candidhealth/expected_network_status/v_2/types/line_of_business.rb +13 -0
- data/lib/candidhealth/expected_network_status/v_2/types/network_status_check_id.rb +9 -0
- data/lib/candidhealth/expected_network_status/v_2/types/out_of_network_status.rb +67 -0
- data/lib/candidhealth/expected_network_status/v_2/types/service_type.rb +51 -0
- data/lib/candidhealth/exports/client.rb +28 -0
- data/lib/candidhealth/exports/v_3/client.rb +102 -0
- data/lib/candidhealth/exports/v_3/types/get_exports_response.rb +75 -0
- data/lib/candidhealth/financials/types/account_type.rb +10 -0
- data/lib/candidhealth/financials/types/allocation.rb +58 -0
- data/lib/candidhealth/financials/types/allocation_create.rb +60 -0
- data/lib/candidhealth/financials/types/allocation_target.rb +118 -0
- data/lib/candidhealth/financials/types/allocation_target_create.rb +118 -0
- data/lib/candidhealth/financials/types/billing_provider_allocation_target.rb +48 -0
- data/lib/candidhealth/financials/types/claim_allocation_target.rb +54 -0
- data/lib/candidhealth/financials/types/invoice_update.rb +90 -0
- data/lib/candidhealth/financials/types/note_update.rb +89 -0
- data/lib/candidhealth/financials/types/patient_transaction_source.rb +15 -0
- data/lib/candidhealth/financials/types/refund_reason.rb +9 -0
- data/lib/candidhealth/financials/types/refund_reason_update.rb +90 -0
- data/lib/candidhealth/financials/types/service_line_allocation_target.rb +61 -0
- data/lib/candidhealth/guarantor/client.rb +28 -0
- data/lib/candidhealth/guarantor/v_1/client.rb +224 -0
- data/lib/candidhealth/guarantor/v_1/types/encounter_has_existing_guarantor_error_type.rb +49 -0
- data/lib/candidhealth/guarantor/v_1/types/guarantor.rb +121 -0
- data/lib/candidhealth/guarantor/v_1/types/guarantor_base.rb +84 -0
- data/lib/candidhealth/guarantor/v_1/types/guarantor_create.rb +114 -0
- data/lib/candidhealth/guarantor/v_1/types/guarantor_id.rb +9 -0
- data/lib/candidhealth/identifiers/types/identifier.rb +82 -0
- data/lib/candidhealth/identifiers/types/identifier_base.rb +71 -0
- data/lib/candidhealth/identifiers/types/identifier_code.rb +10 -0
- data/lib/candidhealth/identifiers/types/identifier_create.rb +71 -0
- data/lib/candidhealth/identifiers/types/identifier_id.rb +7 -0
- data/lib/candidhealth/identifiers/types/identifier_update.rb +83 -0
- data/lib/candidhealth/identifiers/types/identifier_value.rb +92 -0
- data/lib/candidhealth/identifiers/types/medicaid_provider_identifier.rb +53 -0
- data/lib/candidhealth/identifiers/types/medicare_provider_identifier.rb +53 -0
- data/lib/candidhealth/identifiers/types/updatable_identifier.rb +105 -0
- data/lib/candidhealth/individual/types/gender.rb +13 -0
- data/lib/candidhealth/individual/types/individual_base.rb +58 -0
- data/lib/candidhealth/individual/types/individual_id.rb +7 -0
- data/lib/candidhealth/individual/types/patient.rb +126 -0
- data/lib/candidhealth/individual/types/patient_base.rb +89 -0
- data/lib/candidhealth/individual/types/patient_create.rb +119 -0
- data/lib/candidhealth/individual/types/subscriber.rb +110 -0
- data/lib/candidhealth/individual/types/subscriber_base.rb +91 -0
- data/lib/candidhealth/individual/types/subscriber_create.rb +103 -0
- data/lib/candidhealth/insurance_adjudications/client.rb +28 -0
- data/lib/candidhealth/insurance_adjudications/v_1/client.rb +143 -0
- data/lib/candidhealth/insurance_adjudications/v_1/types/claim_adjudication.rb +101 -0
- data/lib/candidhealth/insurance_adjudications/v_1/types/claim_adjudication_create.rb +95 -0
- data/lib/candidhealth/insurance_adjudications/v_1/types/insurance_adjudication.rb +99 -0
- data/lib/candidhealth/insurance_adjudications/v_1/types/insurance_adjudication_create.rb +109 -0
- data/lib/candidhealth/insurance_adjudications/v_1/types/insurance_adjudication_id.rb +9 -0
- data/lib/candidhealth/insurance_adjudications/v_1/types/service_line_adjudication.rb +112 -0
- data/lib/candidhealth/insurance_adjudications/v_1/types/service_line_adjudication_create.rb +105 -0
- data/lib/candidhealth/insurance_adjudications/v_1/types/service_line_adjudication_id.rb +9 -0
- data/lib/candidhealth/insurance_cards/v_2/types/insurance_card.rb +123 -0
- data/lib/candidhealth/insurance_cards/v_2/types/insurance_card_base.rb +73 -0
- data/lib/candidhealth/insurance_cards/v_2/types/insurance_card_create.rb +123 -0
- data/lib/candidhealth/insurance_cards/v_2/types/insurance_card_id.rb +9 -0
- data/lib/candidhealth/insurance_payments/client.rb +28 -0
- data/lib/candidhealth/insurance_payments/v_1/client.rb +269 -0
- data/lib/candidhealth/insurance_payments/v_1/types/insurance_payment.rb +98 -0
- data/lib/candidhealth/insurance_payments/v_1/types/insurance_payment_create.rb +91 -0
- data/lib/candidhealth/insurance_payments/v_1/types/insurance_payment_id.rb +9 -0
- data/lib/candidhealth/insurance_payments/v_1/types/insurance_payment_sort_field.rb +13 -0
- data/lib/candidhealth/insurance_payments/v_1/types/insurance_payments_page.rb +65 -0
- data/lib/candidhealth/insurance_refunds/client.rb +28 -0
- data/lib/candidhealth/insurance_refunds/v_1/client.rb +280 -0
- data/lib/candidhealth/insurance_refunds/v_1/types/insurance_refund.rb +105 -0
- data/lib/candidhealth/insurance_refunds/v_1/types/insurance_refund_create.rb +98 -0
- data/lib/candidhealth/insurance_refunds/v_1/types/insurance_refund_id.rb +9 -0
- data/lib/candidhealth/insurance_refunds/v_1/types/insurance_refund_sort_field.rb +14 -0
- data/lib/candidhealth/insurance_refunds/v_1/types/insurance_refunds_page.rb +65 -0
- data/lib/candidhealth/invoices/types/invoice.rb +134 -0
- data/lib/candidhealth/invoices/types/invoice_item.rb +53 -0
- data/lib/candidhealth/invoices/types/invoice_status.rb +13 -0
- data/lib/candidhealth/organization_providers/client.rb +28 -0
- data/lib/candidhealth/organization_providers/v_2/types/address_type.rb +11 -0
- data/lib/candidhealth/organization_providers/v_2/types/employment_status.rb +12 -0
- data/lib/candidhealth/organization_providers/v_2/types/license_type.rb +78 -0
- data/lib/candidhealth/organization_providers/v_2/types/organization_provider.rb +159 -0
- data/lib/candidhealth/organization_providers/v_2/types/organization_provider_address.rb +61 -0
- data/lib/candidhealth/organization_providers/v_2/types/organization_provider_base.rb +132 -0
- data/lib/candidhealth/organization_providers/v_2/types/organization_provider_id.rb +9 -0
- data/lib/candidhealth/organization_providers/v_2/types/organization_provider_sort_options.rb +14 -0
- data/lib/candidhealth/organization_providers/v_2/types/provider_type.rb +12 -0
- data/lib/candidhealth/organization_providers/v_3/client.rb +239 -0
- data/lib/candidhealth/organization_providers/v_3/types/organization_provider_create_v_2.rb +147 -0
- data/lib/candidhealth/organization_providers/v_3/types/organization_provider_page_v_2.rb +65 -0
- data/lib/candidhealth/organization_providers/v_3/types/organization_provider_update_v_2.rb +143 -0
- data/lib/candidhealth/organization_providers/v_3/types/organization_provider_v_2.rb +154 -0
- data/lib/candidhealth/organization_service_facilities/client.rb +28 -0
- data/lib/candidhealth/organization_service_facilities/v_2/client.rb +256 -0
- data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility.rb +134 -0
- data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility_create.rb +127 -0
- data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility_id.rb +9 -0
- data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility_page.rb +65 -0
- data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility_update.rb +127 -0
- data/lib/candidhealth/organization_service_facilities/v_2/types/service_facility_mode.rb +12 -0
- data/lib/candidhealth/organization_service_facilities/v_2/types/service_facility_operational_status.rb +16 -0
- data/lib/candidhealth/organization_service_facilities/v_2/types/service_facility_physical_type.rb +24 -0
- data/lib/candidhealth/organization_service_facilities/v_2/types/service_facility_status.rb +13 -0
- data/lib/candidhealth/organization_service_facilities/v_2/types/service_facility_type.rb +133 -0
- data/lib/candidhealth/patient_payments/client.rb +28 -0
- data/lib/candidhealth/patient_payments/v_3/types/patient_payment.rb +130 -0
- data/lib/candidhealth/patient_payments/v_3/types/patient_payment_id.rb +9 -0
- data/lib/candidhealth/patient_payments/v_3/types/patient_payment_source.rb +19 -0
- data/lib/candidhealth/patient_payments/v_3/types/patient_payment_status.rb +21 -0
- data/lib/candidhealth/patient_payments/v_4/client.rb +304 -0
- data/lib/candidhealth/patient_payments/v_4/types/patient_payment.rb +120 -0
- data/lib/candidhealth/patient_payments/v_4/types/patient_payment_id.rb +9 -0
- data/lib/candidhealth/patient_payments/v_4/types/patient_payment_sort_field.rb +14 -0
- data/lib/candidhealth/patient_payments/v_4/types/patient_payments_page.rb +65 -0
- data/lib/candidhealth/patient_refunds/client.rb +28 -0
- data/lib/candidhealth/patient_refunds/v_1/client.rb +316 -0
- data/lib/candidhealth/patient_refunds/v_1/types/patient_refund.rb +127 -0
- data/lib/candidhealth/patient_refunds/v_1/types/patient_refund_id.rb +9 -0
- data/lib/candidhealth/patient_refunds/v_1/types/patient_refund_sort_field.rb +15 -0
- data/lib/candidhealth/patient_refunds/v_1/types/patient_refunds_page.rb +65 -0
- data/lib/candidhealth/payers/client.rb +28 -0
- data/lib/candidhealth/payers/v_3/client.rb +104 -0
- data/lib/candidhealth/payers/v_3/types/payer.rb +60 -0
- data/lib/candidhealth/payers/v_3/types/payer_id.rb +9 -0
- data/lib/candidhealth/payers/v_3/types/payer_identifier.rb +94 -0
- data/lib/candidhealth/payers/v_3/types/payer_info.rb +56 -0
- data/lib/candidhealth/payers/v_3/types/payer_name.rb +9 -0
- data/lib/candidhealth/payers/v_3/types/payer_page.rb +65 -0
- data/lib/candidhealth/payers/v_3/types/payer_uuid.rb +9 -0
- data/lib/candidhealth/remits/v_1/types/payee.rb +60 -0
- data/lib/candidhealth/remits/v_1/types/payee_identifier.rb +102 -0
- data/lib/candidhealth/service_facility/client.rb +89 -0
- data/lib/candidhealth/service_facility/types/encounter_service_facility.rb +77 -0
- data/lib/candidhealth/service_facility/types/encounter_service_facility_base.rb +72 -0
- data/lib/candidhealth/service_facility/types/service_facility_id.rb +7 -0
- data/lib/candidhealth/service_lines/v_2/types/denial_reason_content.rb +40 -0
- data/lib/candidhealth/service_lines/v_2/types/drug_identification.rb +86 -0
- data/lib/candidhealth/service_lines/v_2/types/measurement_unit_code.rb +15 -0
- data/lib/candidhealth/service_lines/v_2/types/service_id_qualifier.rb +17 -0
- data/lib/candidhealth/service_lines/v_2/types/service_line.rb +225 -0
- data/lib/candidhealth/service_lines/v_2/types/service_line_adjustment.rb +79 -0
- data/lib/candidhealth/service_lines/v_2/types/service_line_create.rb +120 -0
- data/lib/candidhealth/service_lines/v_2/types/service_line_denial_reason.rb +52 -0
- data/lib/candidhealth/service_lines/v_2/types/service_line_era_data.rb +62 -0
- data/lib/candidhealth/tags/types/tag.rb +65 -0
- data/lib/candidhealth/tags/types/tag_color_enum.rb +18 -0
- data/lib/candidhealth/tags/types/tag_create.rb +59 -0
- data/lib/candidhealth/tags/types/tag_id.rb +7 -0
- data/lib/candidhealth/tasks/client.rb +28 -0
- data/lib/candidhealth/tasks/commons/types/task_category.rb +50 -0
- data/lib/candidhealth/tasks/commons/types/task_status.rb +17 -0
- data/lib/candidhealth/tasks/commons/types/task_type.rb +22 -0
- data/lib/candidhealth/tasks/v_3/client.rb +259 -0
- data/lib/candidhealth/tasks/v_3/types/task.rb +170 -0
- data/lib/candidhealth/tasks/v_3/types/task_action.rb +66 -0
- data/lib/candidhealth/tasks/v_3/types/task_action_execution_method.rb +79 -0
- data/lib/candidhealth/tasks/v_3/types/task_action_type.rb +12 -0
- data/lib/candidhealth/tasks/v_3/types/task_actions.rb +53 -0
- data/lib/candidhealth/tasks/v_3/types/task_assignment.rb +56 -0
- data/lib/candidhealth/tasks/v_3/types/task_create_v_3.rb +95 -0
- data/lib/candidhealth/tasks/v_3/types/task_note.rb +79 -0
- data/lib/candidhealth/tasks/v_3/types/task_page.rb +65 -0
- data/lib/candidhealth/tasks/v_3/types/task_sort_options.rb +32 -0
- data/lib/candidhealth/tasks/v_3/types/task_update_v_3.rb +66 -0
- data/lib/candidhealth/tasks/v_3/types/task_updated_to_deprecated_status_error_type.rb +50 -0
- data/lib/candidhealth/write_offs/client.rb +28 -0
- data/lib/candidhealth/write_offs/v_1/client.rb +218 -0
- data/lib/candidhealth/write_offs/v_1/types/create_write_offs_response.rb +53 -0
- data/lib/candidhealth/write_offs/v_1/types/insurance_write_off.rb +119 -0
- data/lib/candidhealth/write_offs/v_1/types/insurance_write_off_create.rb +100 -0
- data/lib/candidhealth/write_offs/v_1/types/insurance_write_off_reason.rb +25 -0
- data/lib/candidhealth/write_offs/v_1/types/insurance_write_off_target.rb +103 -0
- data/lib/candidhealth/write_offs/v_1/types/patient_write_off.rb +102 -0
- data/lib/candidhealth/write_offs/v_1/types/patient_write_off_create.rb +83 -0
- data/lib/candidhealth/write_offs/v_1/types/patient_write_off_reason.rb +19 -0
- data/lib/candidhealth/write_offs/v_1/types/write_off.rb +94 -0
- data/lib/candidhealth/write_offs/v_1/types/write_off_create.rb +94 -0
- data/lib/candidhealth/write_offs/v_1/types/write_off_id.rb +9 -0
- data/lib/candidhealth/write_offs/v_1/types/write_off_sort_field.rb +13 -0
- data/lib/candidhealth/write_offs/v_1/types/write_offs_page.rb +65 -0
- data/lib/candidhealth/x_12/v_1/types/carc.rb +412 -0
- data/lib/candidhealth/x_12/v_1/types/claim_adjustment_reason_code.rb +62 -0
- data/lib/candidhealth/x_12/v_1/types/rarc.rb +1070 -0
- data/lib/candidhealth/x_12/v_1/types/remittance_advice_remark_code.rb +50 -0
- data/lib/candidhealth.rb +129 -0
- data/lib/environment.rb +8 -0
- data/lib/gemconfig.rb +14 -0
- data/lib/requests.rb +113 -0
- data/lib/types_export.rb +303 -0
- metadata +468 -0
@@ -0,0 +1,304 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "../../../requests"
|
4
|
+
require_relative "../../commons/types/patient_external_id"
|
5
|
+
require_relative "../../commons/types/claim_id"
|
6
|
+
require_relative "../../commons/types/service_line_id"
|
7
|
+
require_relative "../../commons/types/provider_id"
|
8
|
+
require_relative "../../commons/types/invoice_id"
|
9
|
+
require_relative "../../financials/types/patient_transaction_source"
|
10
|
+
require_relative "types/patient_payment_sort_field"
|
11
|
+
require_relative "../../commons/types/sort_direction"
|
12
|
+
require_relative "../../commons/types/page_token"
|
13
|
+
require_relative "types/patient_payments_page"
|
14
|
+
require_relative "types/patient_payment_id"
|
15
|
+
require_relative "types/patient_payment"
|
16
|
+
require "date"
|
17
|
+
require_relative "../../financials/types/allocation_create"
|
18
|
+
require_relative "../../financials/types/note_update"
|
19
|
+
require_relative "../../financials/types/invoice_update"
|
20
|
+
require "async"
|
21
|
+
|
22
|
+
module CandidApiClient
|
23
|
+
module PatientPayments
|
24
|
+
module V4
|
25
|
+
class V4Client
|
26
|
+
attr_reader :request_client
|
27
|
+
|
28
|
+
# @param request_client [RequestClient]
|
29
|
+
# @return [PatientPayments::V4::V4Client]
|
30
|
+
def initialize(request_client:)
|
31
|
+
# @type [RequestClient]
|
32
|
+
@request_client = request_client
|
33
|
+
end
|
34
|
+
|
35
|
+
# Returns all patient payments satisfying the search criteria AND whose organization_id matches
|
36
|
+
# the current organization_id of the authenticated user.
|
37
|
+
#
|
38
|
+
# @param limit [Integer] Defaults to 100. The value must be greater than 0 and less than 1000.
|
39
|
+
# @param patient_external_id [Commons::PATIENT_EXTERNAL_ID]
|
40
|
+
# @param claim_id [Commons::CLAIM_ID]
|
41
|
+
# @param service_line_id [Commons::SERVICE_LINE_ID]
|
42
|
+
# @param billing_provider_id [Commons::PROVIDER_ID]
|
43
|
+
# @param unattributed [Boolean] returns payments with unattributed allocations if set to true
|
44
|
+
# @param invoice_id [Commons::INVOICE_ID]
|
45
|
+
# @param sources [Financials::PatientTransactionSource]
|
46
|
+
# @param sort [PatientPayments::V4::PatientPaymentSortField] Defaults to payment_timestamp
|
47
|
+
# @param sort_direction [Commons::SortDirection] Sort direction. Defaults to descending order if not provided.
|
48
|
+
# @param page_token [Commons::PAGE_TOKEN]
|
49
|
+
# @param request_options [RequestOptions]
|
50
|
+
# @return [PatientPayments::V4::PatientPaymentsPage]
|
51
|
+
def get_multi(limit: nil, patient_external_id: nil, claim_id: nil, service_line_id: nil,
|
52
|
+
billing_provider_id: nil, unattributed: nil, invoice_id: nil, sources: nil, sort: nil, sort_direction: nil, page_token: nil, request_options: nil)
|
53
|
+
response = @request_client.conn.get("/api/patient-payments/v4") do |req|
|
54
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
55
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
56
|
+
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
57
|
+
req.params = {
|
58
|
+
**(request_options&.additional_query_parameters || {}),
|
59
|
+
"limit": limit,
|
60
|
+
"patient_external_id": patient_external_id,
|
61
|
+
"claim_id": claim_id,
|
62
|
+
"service_line_id": service_line_id,
|
63
|
+
"billing_provider_id": billing_provider_id,
|
64
|
+
"unattributed": unattributed,
|
65
|
+
"invoice_id": invoice_id,
|
66
|
+
"sources": sources,
|
67
|
+
"sort": sort,
|
68
|
+
"sort_direction": sort_direction,
|
69
|
+
"page_token": page_token
|
70
|
+
}.compact
|
71
|
+
end
|
72
|
+
PatientPayments::V4::PatientPaymentsPage.from_json(json_object: response.body)
|
73
|
+
end
|
74
|
+
|
75
|
+
# Retrieves a previously created patient payment by its `patient_payment_id`.
|
76
|
+
#
|
77
|
+
# @param patient_payment_id [PatientPayments::V4::PATIENT_PAYMENT_ID]
|
78
|
+
# @param request_options [RequestOptions]
|
79
|
+
# @return [PatientPayments::V4::PatientPayment]
|
80
|
+
def get(patient_payment_id:, request_options: nil)
|
81
|
+
response = @request_client.conn.get("/api/patient-payments/v4/#{patient_payment_id}") do |req|
|
82
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
83
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
84
|
+
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
85
|
+
end
|
86
|
+
PatientPayments::V4::PatientPayment.from_json(json_object: response.body)
|
87
|
+
end
|
88
|
+
|
89
|
+
# Creates a new patient payment record and returns the newly created PatientPayment object.
|
90
|
+
# The allocations can describe whether the payment is being applied toward a specific service line,
|
91
|
+
# claim, or billing provider.
|
92
|
+
#
|
93
|
+
# @param amount_cents [Integer]
|
94
|
+
# @param payment_timestamp [DateTime]
|
95
|
+
# @param payment_note [String]
|
96
|
+
# @param patient_external_id [Commons::PATIENT_EXTERNAL_ID]
|
97
|
+
# @param allocations [Array<Hash>] Request of type Array<Financials::AllocationCreate>, as a Hash
|
98
|
+
# * :amount_cents (Integer)
|
99
|
+
# * :target (Hash)
|
100
|
+
# @param invoice [Commons::INVOICE_ID]
|
101
|
+
# @param request_options [RequestOptions]
|
102
|
+
# @return [PatientPayments::V4::PatientPayment]
|
103
|
+
def create(amount_cents:, patient_external_id:, allocations:, payment_timestamp: nil, payment_note: nil,
|
104
|
+
invoice: nil, request_options: nil)
|
105
|
+
response = @request_client.conn.post("/api/patient-payments/v4") do |req|
|
106
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
107
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
108
|
+
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
109
|
+
req.body = {
|
110
|
+
**(request_options&.additional_body_parameters || {}),
|
111
|
+
amount_cents: amount_cents,
|
112
|
+
payment_timestamp: payment_timestamp,
|
113
|
+
payment_note: payment_note,
|
114
|
+
patient_external_id: patient_external_id,
|
115
|
+
allocations: allocations,
|
116
|
+
invoice: invoice
|
117
|
+
}.compact
|
118
|
+
end
|
119
|
+
PatientPayments::V4::PatientPayment.from_json(json_object: response.body)
|
120
|
+
end
|
121
|
+
|
122
|
+
# Updates the patient payment record matching the provided patient_payment_id.
|
123
|
+
#
|
124
|
+
# @param patient_payment_id [PatientPayments::V4::PATIENT_PAYMENT_ID]
|
125
|
+
# @param payment_timestamp [DateTime]
|
126
|
+
# @param payment_note [Financials::NoteUpdate]
|
127
|
+
# @param invoice [Financials::InvoiceUpdate]
|
128
|
+
# @param request_options [RequestOptions]
|
129
|
+
# @return [PatientPayments::V4::PatientPayment]
|
130
|
+
def update(patient_payment_id:, payment_timestamp: nil, payment_note: nil, invoice: nil, request_options: nil)
|
131
|
+
response = @request_client.conn.patch("/api/patient-payments/v4/#{patient_payment_id}") do |req|
|
132
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
133
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
134
|
+
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
135
|
+
req.body = {
|
136
|
+
**(request_options&.additional_body_parameters || {}),
|
137
|
+
payment_timestamp: payment_timestamp,
|
138
|
+
payment_note: payment_note,
|
139
|
+
invoice: invoice
|
140
|
+
}.compact
|
141
|
+
end
|
142
|
+
PatientPayments::V4::PatientPayment.from_json(json_object: response.body)
|
143
|
+
end
|
144
|
+
|
145
|
+
# Deletes the patient payment record matching the provided patient_payment_id.
|
146
|
+
#
|
147
|
+
# @param patient_payment_id [PatientPayments::V4::PATIENT_PAYMENT_ID]
|
148
|
+
# @param request_options [RequestOptions]
|
149
|
+
# @return [Void]
|
150
|
+
def delete(patient_payment_id:, request_options: nil)
|
151
|
+
@request_client.conn.delete("/api/patient-payments/v4/#{patient_payment_id}") do |req|
|
152
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
153
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
154
|
+
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
155
|
+
end
|
156
|
+
end
|
157
|
+
end
|
158
|
+
|
159
|
+
class AsyncV4Client
|
160
|
+
attr_reader :request_client
|
161
|
+
|
162
|
+
# @param request_client [AsyncRequestClient]
|
163
|
+
# @return [PatientPayments::V4::AsyncV4Client]
|
164
|
+
def initialize(request_client:)
|
165
|
+
# @type [AsyncRequestClient]
|
166
|
+
@request_client = request_client
|
167
|
+
end
|
168
|
+
|
169
|
+
# Returns all patient payments satisfying the search criteria AND whose organization_id matches
|
170
|
+
# the current organization_id of the authenticated user.
|
171
|
+
#
|
172
|
+
# @param limit [Integer] Defaults to 100. The value must be greater than 0 and less than 1000.
|
173
|
+
# @param patient_external_id [Commons::PATIENT_EXTERNAL_ID]
|
174
|
+
# @param claim_id [Commons::CLAIM_ID]
|
175
|
+
# @param service_line_id [Commons::SERVICE_LINE_ID]
|
176
|
+
# @param billing_provider_id [Commons::PROVIDER_ID]
|
177
|
+
# @param unattributed [Boolean] returns payments with unattributed allocations if set to true
|
178
|
+
# @param invoice_id [Commons::INVOICE_ID]
|
179
|
+
# @param sources [Financials::PatientTransactionSource]
|
180
|
+
# @param sort [PatientPayments::V4::PatientPaymentSortField] Defaults to payment_timestamp
|
181
|
+
# @param sort_direction [Commons::SortDirection] Sort direction. Defaults to descending order if not provided.
|
182
|
+
# @param page_token [Commons::PAGE_TOKEN]
|
183
|
+
# @param request_options [RequestOptions]
|
184
|
+
# @return [PatientPayments::V4::PatientPaymentsPage]
|
185
|
+
def get_multi(limit: nil, patient_external_id: nil, claim_id: nil, service_line_id: nil,
|
186
|
+
billing_provider_id: nil, unattributed: nil, invoice_id: nil, sources: nil, sort: nil, sort_direction: nil, page_token: nil, request_options: nil)
|
187
|
+
Async do
|
188
|
+
response = @request_client.conn.get("/api/patient-payments/v4") do |req|
|
189
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
190
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
191
|
+
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
192
|
+
req.params = {
|
193
|
+
**(request_options&.additional_query_parameters || {}),
|
194
|
+
"limit": limit,
|
195
|
+
"patient_external_id": patient_external_id,
|
196
|
+
"claim_id": claim_id,
|
197
|
+
"service_line_id": service_line_id,
|
198
|
+
"billing_provider_id": billing_provider_id,
|
199
|
+
"unattributed": unattributed,
|
200
|
+
"invoice_id": invoice_id,
|
201
|
+
"sources": sources,
|
202
|
+
"sort": sort,
|
203
|
+
"sort_direction": sort_direction,
|
204
|
+
"page_token": page_token
|
205
|
+
}.compact
|
206
|
+
end
|
207
|
+
PatientPayments::V4::PatientPaymentsPage.from_json(json_object: response.body)
|
208
|
+
end
|
209
|
+
end
|
210
|
+
|
211
|
+
# Retrieves a previously created patient payment by its `patient_payment_id`.
|
212
|
+
#
|
213
|
+
# @param patient_payment_id [PatientPayments::V4::PATIENT_PAYMENT_ID]
|
214
|
+
# @param request_options [RequestOptions]
|
215
|
+
# @return [PatientPayments::V4::PatientPayment]
|
216
|
+
def get(patient_payment_id:, request_options: nil)
|
217
|
+
Async do
|
218
|
+
response = @request_client.conn.get("/api/patient-payments/v4/#{patient_payment_id}") do |req|
|
219
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
220
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
221
|
+
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
222
|
+
end
|
223
|
+
PatientPayments::V4::PatientPayment.from_json(json_object: response.body)
|
224
|
+
end
|
225
|
+
end
|
226
|
+
|
227
|
+
# Creates a new patient payment record and returns the newly created PatientPayment object.
|
228
|
+
# The allocations can describe whether the payment is being applied toward a specific service line,
|
229
|
+
# claim, or billing provider.
|
230
|
+
#
|
231
|
+
# @param amount_cents [Integer]
|
232
|
+
# @param payment_timestamp [DateTime]
|
233
|
+
# @param payment_note [String]
|
234
|
+
# @param patient_external_id [Commons::PATIENT_EXTERNAL_ID]
|
235
|
+
# @param allocations [Array<Hash>] Request of type Array<Financials::AllocationCreate>, as a Hash
|
236
|
+
# * :amount_cents (Integer)
|
237
|
+
# * :target (Hash)
|
238
|
+
# @param invoice [Commons::INVOICE_ID]
|
239
|
+
# @param request_options [RequestOptions]
|
240
|
+
# @return [PatientPayments::V4::PatientPayment]
|
241
|
+
def create(amount_cents:, patient_external_id:, allocations:, payment_timestamp: nil, payment_note: nil,
|
242
|
+
invoice: nil, request_options: nil)
|
243
|
+
Async do
|
244
|
+
response = @request_client.conn.post("/api/patient-payments/v4") do |req|
|
245
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
246
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
247
|
+
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
248
|
+
req.body = {
|
249
|
+
**(request_options&.additional_body_parameters || {}),
|
250
|
+
amount_cents: amount_cents,
|
251
|
+
payment_timestamp: payment_timestamp,
|
252
|
+
payment_note: payment_note,
|
253
|
+
patient_external_id: patient_external_id,
|
254
|
+
allocations: allocations,
|
255
|
+
invoice: invoice
|
256
|
+
}.compact
|
257
|
+
end
|
258
|
+
PatientPayments::V4::PatientPayment.from_json(json_object: response.body)
|
259
|
+
end
|
260
|
+
end
|
261
|
+
|
262
|
+
# Updates the patient payment record matching the provided patient_payment_id.
|
263
|
+
#
|
264
|
+
# @param patient_payment_id [PatientPayments::V4::PATIENT_PAYMENT_ID]
|
265
|
+
# @param payment_timestamp [DateTime]
|
266
|
+
# @param payment_note [Financials::NoteUpdate]
|
267
|
+
# @param invoice [Financials::InvoiceUpdate]
|
268
|
+
# @param request_options [RequestOptions]
|
269
|
+
# @return [PatientPayments::V4::PatientPayment]
|
270
|
+
def update(patient_payment_id:, payment_timestamp: nil, payment_note: nil, invoice: nil, request_options: nil)
|
271
|
+
Async do
|
272
|
+
response = @request_client.conn.patch("/api/patient-payments/v4/#{patient_payment_id}") do |req|
|
273
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
274
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
275
|
+
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
276
|
+
req.body = {
|
277
|
+
**(request_options&.additional_body_parameters || {}),
|
278
|
+
payment_timestamp: payment_timestamp,
|
279
|
+
payment_note: payment_note,
|
280
|
+
invoice: invoice
|
281
|
+
}.compact
|
282
|
+
end
|
283
|
+
PatientPayments::V4::PatientPayment.from_json(json_object: response.body)
|
284
|
+
end
|
285
|
+
end
|
286
|
+
|
287
|
+
# Deletes the patient payment record matching the provided patient_payment_id.
|
288
|
+
#
|
289
|
+
# @param patient_payment_id [PatientPayments::V4::PATIENT_PAYMENT_ID]
|
290
|
+
# @param request_options [RequestOptions]
|
291
|
+
# @return [Void]
|
292
|
+
def delete(patient_payment_id:, request_options: nil)
|
293
|
+
Async do
|
294
|
+
@request_client.conn.delete("/api/patient-payments/v4/#{patient_payment_id}") do |req|
|
295
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
296
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
297
|
+
req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
|
298
|
+
end
|
299
|
+
end
|
300
|
+
end
|
301
|
+
end
|
302
|
+
end
|
303
|
+
end
|
304
|
+
end
|
@@ -0,0 +1,120 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "patient_payment_id"
|
4
|
+
require_relative "../../../commons/types/organization_id"
|
5
|
+
require_relative "../../../financials/types/patient_transaction_source"
|
6
|
+
require_relative "../../../commons/types/patient_external_id"
|
7
|
+
require "date"
|
8
|
+
require_relative "../../../financials/types/allocation"
|
9
|
+
require_relative "../../../commons/types/invoice_id"
|
10
|
+
require "json"
|
11
|
+
|
12
|
+
module CandidApiClient
|
13
|
+
module PatientPayments
|
14
|
+
module V4
|
15
|
+
class PatientPayment
|
16
|
+
attr_reader :patient_payment_id, :organization_id, :source_internal_id, :payment_source, :amount_cents,
|
17
|
+
:patient_external_id, :payment_timestamp, :payment_note, :allocations, :invoice, :additional_properties
|
18
|
+
|
19
|
+
# @param patient_payment_id [PatientPayments::V4::PATIENT_PAYMENT_ID]
|
20
|
+
# @param organization_id [Commons::ORGANIZATION_ID]
|
21
|
+
# @param source_internal_id [String]
|
22
|
+
# @param payment_source [Financials::PatientTransactionSource]
|
23
|
+
# @param amount_cents [Integer]
|
24
|
+
# @param patient_external_id [Commons::PATIENT_EXTERNAL_ID]
|
25
|
+
# @param payment_timestamp [DateTime]
|
26
|
+
# @param payment_note [String]
|
27
|
+
# @param allocations [Array<Financials::Allocation>]
|
28
|
+
# @param invoice [Commons::INVOICE_ID]
|
29
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
30
|
+
# @return [PatientPayments::V4::PatientPayment]
|
31
|
+
def initialize(patient_payment_id:, organization_id:, payment_source:, amount_cents:, patient_external_id:,
|
32
|
+
allocations:, source_internal_id: nil, payment_timestamp: nil, payment_note: nil, invoice: nil, additional_properties: nil)
|
33
|
+
# @type [PatientPayments::V4::PATIENT_PAYMENT_ID]
|
34
|
+
@patient_payment_id = patient_payment_id
|
35
|
+
# @type [Commons::ORGANIZATION_ID]
|
36
|
+
@organization_id = organization_id
|
37
|
+
# @type [String]
|
38
|
+
@source_internal_id = source_internal_id
|
39
|
+
# @type [Financials::PatientTransactionSource]
|
40
|
+
@payment_source = payment_source
|
41
|
+
# @type [Integer]
|
42
|
+
@amount_cents = amount_cents
|
43
|
+
# @type [Commons::PATIENT_EXTERNAL_ID]
|
44
|
+
@patient_external_id = patient_external_id
|
45
|
+
# @type [DateTime]
|
46
|
+
@payment_timestamp = payment_timestamp
|
47
|
+
# @type [String]
|
48
|
+
@payment_note = payment_note
|
49
|
+
# @type [Array<Financials::Allocation>]
|
50
|
+
@allocations = allocations
|
51
|
+
# @type [Commons::INVOICE_ID]
|
52
|
+
@invoice = invoice
|
53
|
+
# @type [OpenStruct] Additional properties unmapped to the current class definition
|
54
|
+
@additional_properties = additional_properties
|
55
|
+
end
|
56
|
+
|
57
|
+
# Deserialize a JSON object to an instance of PatientPayment
|
58
|
+
#
|
59
|
+
# @param json_object [JSON]
|
60
|
+
# @return [PatientPayments::V4::PatientPayment]
|
61
|
+
def self.from_json(json_object:)
|
62
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
63
|
+
parsed_json = JSON.parse(json_object)
|
64
|
+
patient_payment_id = struct.patient_payment_id
|
65
|
+
organization_id = struct.organization_id
|
66
|
+
source_internal_id = struct.source_internal_id
|
67
|
+
payment_source = struct.payment_source
|
68
|
+
amount_cents = struct.amount_cents
|
69
|
+
patient_external_id = struct.patient_external_id
|
70
|
+
payment_timestamp = unless parsed_json["payment_timestamp"].nil?
|
71
|
+
DateTime.parse(parsed_json["payment_timestamp"])
|
72
|
+
end
|
73
|
+
payment_note = struct.payment_note
|
74
|
+
allocations = parsed_json["allocations"]&.map do |v|
|
75
|
+
v = v.to_json
|
76
|
+
Financials::Allocation.from_json(json_object: v)
|
77
|
+
end
|
78
|
+
invoice = struct.invoice
|
79
|
+
new(patient_payment_id: patient_payment_id, organization_id: organization_id,
|
80
|
+
source_internal_id: source_internal_id, payment_source: payment_source, amount_cents: amount_cents, patient_external_id: patient_external_id, payment_timestamp: payment_timestamp, payment_note: payment_note, allocations: allocations, invoice: invoice, additional_properties: struct)
|
81
|
+
end
|
82
|
+
|
83
|
+
# Serialize an instance of PatientPayment to a JSON object
|
84
|
+
#
|
85
|
+
# @return [JSON]
|
86
|
+
def to_json(*_args)
|
87
|
+
{
|
88
|
+
"patient_payment_id": @patient_payment_id,
|
89
|
+
"organization_id": @organization_id,
|
90
|
+
"source_internal_id": @source_internal_id,
|
91
|
+
"payment_source": @payment_source,
|
92
|
+
"amount_cents": @amount_cents,
|
93
|
+
"patient_external_id": @patient_external_id,
|
94
|
+
"payment_timestamp": @payment_timestamp,
|
95
|
+
"payment_note": @payment_note,
|
96
|
+
"allocations": @allocations,
|
97
|
+
"invoice": @invoice
|
98
|
+
}.to_json
|
99
|
+
end
|
100
|
+
|
101
|
+
# 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.
|
102
|
+
#
|
103
|
+
# @param obj [Object]
|
104
|
+
# @return [Void]
|
105
|
+
def self.validate_raw(obj:)
|
106
|
+
obj.patient_payment_id.is_a?(String) != false || raise("Passed value for field obj.patient_payment_id is not the expected type, validation failed.")
|
107
|
+
obj.organization_id.is_a?(String) != false || raise("Passed value for field obj.organization_id is not the expected type, validation failed.")
|
108
|
+
obj.source_internal_id&.is_a?(String) != false || raise("Passed value for field obj.source_internal_id is not the expected type, validation failed.")
|
109
|
+
obj.payment_source.is_a?(Financials::PatientTransactionSource) != false || raise("Passed value for field obj.payment_source is not the expected type, validation failed.")
|
110
|
+
obj.amount_cents.is_a?(Integer) != false || raise("Passed value for field obj.amount_cents is not the expected type, validation failed.")
|
111
|
+
obj.patient_external_id.is_a?(String) != false || raise("Passed value for field obj.patient_external_id is not the expected type, validation failed.")
|
112
|
+
obj.payment_timestamp&.is_a?(DateTime) != false || raise("Passed value for field obj.payment_timestamp is not the expected type, validation failed.")
|
113
|
+
obj.payment_note&.is_a?(String) != false || raise("Passed value for field obj.payment_note is not the expected type, validation failed.")
|
114
|
+
obj.allocations.is_a?(Array) != false || raise("Passed value for field obj.allocations is not the expected type, validation failed.")
|
115
|
+
obj.invoice&.is_a?(String) != false || raise("Passed value for field obj.invoice is not the expected type, validation failed.")
|
116
|
+
end
|
117
|
+
end
|
118
|
+
end
|
119
|
+
end
|
120
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module CandidApiClient
|
4
|
+
module PatientPayments
|
5
|
+
module V4
|
6
|
+
class PatientPaymentSortField
|
7
|
+
PAYMENT_SOURCE = "payment_source"
|
8
|
+
AMOUNT_CENTS = "amount_cents"
|
9
|
+
PAYMENT_TIMESTAMP = "payment_timestamp"
|
10
|
+
PAYMENT_NOTE = "payment_note"
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,65 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "patient_payment"
|
4
|
+
require_relative "../../../commons/types/page_token"
|
5
|
+
require "json"
|
6
|
+
|
7
|
+
module CandidApiClient
|
8
|
+
module PatientPayments
|
9
|
+
module V4
|
10
|
+
class PatientPaymentsPage
|
11
|
+
attr_reader :items, :prev_page_token, :next_page_token, :additional_properties
|
12
|
+
|
13
|
+
# @param items [Array<PatientPayments::V4::PatientPayment>]
|
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 [PatientPayments::V4::PatientPaymentsPage]
|
18
|
+
def initialize(items:, prev_page_token: nil, next_page_token: nil, additional_properties: nil)
|
19
|
+
# @type [Array<PatientPayments::V4::PatientPayment>]
|
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 PatientPaymentsPage
|
30
|
+
#
|
31
|
+
# @param json_object [JSON]
|
32
|
+
# @return [PatientPayments::V4::PatientPaymentsPage]
|
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
|
+
PatientPayments::V4::PatientPayment.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 PatientPaymentsPage 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,28 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "../../requests"
|
4
|
+
require_relative "v_1/client"
|
5
|
+
|
6
|
+
module CandidApiClient
|
7
|
+
module PatientRefunds
|
8
|
+
class Client
|
9
|
+
attr_reader :v_1
|
10
|
+
|
11
|
+
# @param request_client [RequestClient]
|
12
|
+
# @return [PatientRefunds::Client]
|
13
|
+
def initialize(request_client:)
|
14
|
+
@v_1 = PatientRefunds::V1::V1Client.new(request_client: request_client)
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
class AsyncClient
|
19
|
+
attr_reader :v_1
|
20
|
+
|
21
|
+
# @param request_client [RequestClient]
|
22
|
+
# @return [PatientRefunds::AsyncClient]
|
23
|
+
def initialize(request_client:)
|
24
|
+
@v_1 = PatientRefunds::V1::AsyncV1Client.new(request_client: request_client)
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|