candidhealth 1.6.0 → 1.8.0
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 +4 -4
- data/lib/candidhealth/auth/default/client.rb +74 -0
- data/lib/candidhealth/charge_capture/v_1/client.rb +48 -48
- data/lib/candidhealth/charge_capture/v_1/types/charge_capture_data.rb +70 -56
- data/lib/candidhealth/commons/types/clearinghouse.rb +18 -0
- data/lib/candidhealth/commons/types/procedure_modifier.rb +11 -0
- data/lib/candidhealth/credentialing/v_2/client.rb +342 -8
- data/lib/candidhealth/credentialing/v_2/types/base_credentialing_span.rb +143 -0
- data/lib/candidhealth/credentialing/v_2/types/facility_credentialing_span.rb +165 -0
- data/lib/candidhealth/credentialing/v_2/types/facility_credentialing_span_page.rb +88 -0
- data/lib/candidhealth/credentialing/v_2/types/provider_credentialing_span.rb +34 -34
- data/lib/candidhealth/encounter_providers/v_2/types/billing_provider.rb +1 -1
- data/lib/candidhealth/encounter_providers/v_2/types/billing_provider_update.rb +1 -1
- data/lib/candidhealth/encounter_providers/v_2/types/billing_provider_update_with_optional_address.rb +1 -1
- data/lib/candidhealth/encounters/v_4/client.rb +3253 -2040
- data/lib/candidhealth/encounters/v_4/types/encounter.rb +111 -86
- data/lib/candidhealth/encounters/v_4/types/encounter_base.rb +39 -33
- data/lib/candidhealth/encounters/v_4/types/encounter_create.rb +796 -0
- data/lib/candidhealth/encounters/v_4/types/encounter_create_from_pre_encounter.rb +131 -117
- data/lib/candidhealth/encounters/v_4/types/encounter_deep_optional.rb +70 -56
- data/lib/candidhealth/encounters/v_4/types/encounter_optional.rb +29 -39
- data/lib/candidhealth/encounters/v_4/types/encounter_rendering_or_attending_provider_required_error.rb +55 -0
- data/lib/candidhealth/encounters/v_4/types/encounter_update.rb +736 -0
- data/lib/candidhealth/encounters_universal/types/universal_encounter_create.rb +944 -0
- data/lib/candidhealth/encounters_universal/types/universal_encounter_create_base.rb +691 -0
- data/lib/candidhealth/encounters_universal/types/universal_encounter_create_from_pre_encounter.rb +791 -0
- data/lib/candidhealth/encounters_universal/types/universal_encounter_create_from_pre_encounter_base.rb +572 -0
- data/lib/candidhealth/encounters_universal/types/universal_encounter_update.rb +872 -0
- data/lib/candidhealth/encounters_universal/types/universal_encounter_update_base.rb +700 -0
- data/lib/candidhealth/fee_schedules/v_3/client.rb +57 -0
- data/lib/candidhealth/fee_schedules/v_3/types/validation_error.rb +12 -0
- data/lib/candidhealth/financials/types/patient_transaction_source.rb +1 -0
- data/lib/candidhealth/health_care_code_information/client.rb +30 -0
- data/lib/candidhealth/health_care_code_information/v_1/client.rb +268 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/admitting_diagnosis.rb +236 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/admitting_diagnosis_code_qualifier.rb +14 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/admitting_diagnosis_new.rb +206 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/code_list_qualifier_code.rb +1068 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/condition_code.rb +71 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/condition_information.rb +237 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/condition_information_code_qualifier.rb +13 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/condition_information_new.rb +207 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/date_time_period_format_qualifier.rb +54 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/diagnosis_related_group.rb +236 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/diagnosis_related_group_code_qualifier.rb +13 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/diagnosis_related_group_new.rb +206 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/external_cause_of_injury.rb +245 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/external_cause_of_injury_code_qualifier.rb +14 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/external_cause_of_injury_new.rb +245 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/health_care_code_information.rb +218 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/health_care_code_information_create.rb +225 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/health_care_code_information_get_all_response.rb +227 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/health_care_code_information_new.rb +188 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/health_care_code_information_update.rb +225 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/occurrence_code.rb +71 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/occurrence_information.rb +249 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/occurrence_information_code_qualifier.rb +13 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/occurrence_information_new.rb +219 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/occurrence_span_code.rb +25 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/occurrence_span_code_qualifier.rb +13 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/occurrence_span_information.rb +252 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/occurrence_span_information_new.rb +222 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/other_diagnosis_information.rb +245 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/other_diagnosis_information_code_qualifier.rb +14 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/other_diagnosis_information_new.rb +215 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/other_procedure_information.rb +248 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/other_procedure_information_code_qualifier.rb +14 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/other_procedure_information_new.rb +218 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/patient_reason_for_visit.rb +236 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/patient_reason_for_visit_code_qualifier.rb +14 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/patient_reason_for_visit_new.rb +206 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/present_on_admission_indicator_code.rb +17 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/principal_diagnosis.rb +245 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/principal_diagnosis_code_qualifier.rb +14 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/principal_diagnosis_new.rb +215 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/principal_procedure_information.rb +246 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/principal_procedure_information_code_qualifier.rb +15 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/principal_procedure_information_new.rb +216 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/rd_8_date.rb +72 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/set_or_clear_admitting_diagnosis.rb +69 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/set_or_clear_diagnosis_related_group.rb +69 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/set_or_clear_principal_diagnosis.rb +69 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/set_or_clear_principal_procedure_information.rb +71 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/treatment_code_information.rb +236 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/treatment_code_information_new.rb +206 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/treatment_code_qualifier.rb +13 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/value_code.rb +119 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/value_code_qualifier.rb +13 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/value_information.rb +245 -0
- data/lib/candidhealth/health_care_code_information/v_1/types/value_information_new.rb +215 -0
- data/lib/candidhealth/individual/types/patient.rb +6 -6
- data/lib/candidhealth/individual/types/patient_base.rb +6 -6
- data/lib/candidhealth/individual/types/patient_create.rb +6 -6
- data/lib/candidhealth/individual/types/patient_update.rb +6 -6
- data/lib/candidhealth/individual/types/patient_update_with_optional_address.rb +6 -6
- data/lib/candidhealth/organization_providers/v_2/types/license_type.rb +2 -0
- data/lib/candidhealth/patient_ar/client.rb +30 -0
- data/lib/candidhealth/patient_ar/v_1/client.rb +161 -0
- data/lib/candidhealth/patient_ar/v_1/types/insurance_adjustment_info.rb +60 -0
- data/lib/candidhealth/patient_ar/v_1/types/insurance_payment_info.rb +60 -0
- data/lib/candidhealth/patient_ar/v_1/types/invalid_filters_error_type.rb +60 -0
- data/lib/candidhealth/patient_ar/v_1/types/inventory_record.rb +101 -0
- data/lib/candidhealth/patient_ar/v_1/types/invoice_itemization_response.rb +103 -0
- data/lib/candidhealth/patient_ar/v_1/types/list_inventory_paged_response.rb +77 -0
- data/lib/candidhealth/patient_ar/v_1/types/non_insurance_adjustment_info.rb +60 -0
- data/lib/candidhealth/patient_ar/v_1/types/non_insurance_payment_info.rb +60 -0
- data/lib/candidhealth/patient_ar/v_1/types/patient_adjustment_info.rb +60 -0
- data/lib/candidhealth/patient_ar/v_1/types/patient_ar_status.rb +14 -0
- data/lib/candidhealth/patient_ar/v_1/types/patient_payment_allocation.rb +76 -0
- data/lib/candidhealth/patient_ar/v_1/types/patient_payment_info.rb +75 -0
- data/lib/candidhealth/patient_ar/v_1/types/service_line_itemization.rb +210 -0
- data/lib/candidhealth/payers/client.rb +7 -0
- data/lib/candidhealth/payers/v_4/client.rb +137 -0
- data/lib/candidhealth/payers/v_4/types/clearinghouse_payer_info.rb +93 -0
- data/lib/candidhealth/payers/v_4/types/payer.rb +116 -0
- data/lib/candidhealth/payers/v_4/types/payer_ids.rb +107 -0
- data/lib/candidhealth/payers/v_4/types/payer_page.rb +88 -0
- data/lib/candidhealth/payers/v_4/types/support_state.rb +15 -0
- data/lib/candidhealth/pre_encounter/coverages/v_1/client.rb +4 -4
- data/lib/candidhealth/pre_encounter/coverages/v_1/types/subscriber.rb +3 -3
- data/lib/candidhealth/pre_encounter/patients/v_1/client.rb +204 -6
- data/lib/candidhealth/pre_encounter/patients/v_1/types/guarantor.rb +3 -3
- data/lib/candidhealth/pre_encounter/patients/v_1/types/inferred_patient_metadata.rb +80 -0
- data/lib/candidhealth/pre_encounter/patients/v_1/types/mutable_patient.rb +33 -5
- data/lib/candidhealth/pre_encounter/patients/v_1/types/mutable_patient_with_mrn.rb +33 -5
- data/lib/candidhealth/pre_encounter/patients/v_1/types/origination_detail.rb +104 -0
- data/lib/candidhealth/pre_encounter/patients/v_1/types/patient.rb +32 -4
- data/lib/candidhealth/pre_encounter/patients/v_1/types/referral_source.rb +18 -0
- data/lib/candidhealth/pre_encounter/patients/v_1/types/referral_type.rb +17 -0
- data/lib/candidhealth/pre_encounter/patients/v_1/types/specialization_category.rb +42 -0
- data/lib/candidhealth/service_lines/v_2/client.rb +252 -10
- data/lib/candidhealth/service_lines/v_2/types/service_line.rb +28 -10
- data/lib/candidhealth/service_lines/v_2/types/service_line_create.rb +52 -40
- data/lib/candidhealth/service_lines/v_2/types/service_line_create_base.rb +251 -0
- data/lib/candidhealth/service_lines/v_2/types/service_line_create_base_base.rb +243 -0
- data/lib/candidhealth/service_lines/v_2/types/service_line_create_optional.rb +48 -24
- data/lib/candidhealth/service_lines/v_2/types/service_line_create_standalone.rb +58 -46
- data/lib/candidhealth/service_lines/v_2/types/service_line_create_standalone_base.rb +273 -0
- data/lib/candidhealth/service_lines/v_2/types/service_line_create_standalone_base_base.rb +265 -0
- data/lib/candidhealth/service_lines/v_2/types/service_line_update.rb +64 -54
- data/lib/candidhealth/service_lines/v_2/types/service_line_update_base.rb +263 -0
- data/lib/candidhealth/service_lines/v_2/types/universal_service_line_create.rb +271 -0
- data/lib/candidhealth/service_lines/v_2/types/universal_service_line_create_standalone.rb +317 -0
- data/lib/candidhealth/service_lines/v_2/types/universal_service_line_update.rb +307 -0
- data/lib/candidhealth/x_12/v_1/types/type_of_bill_composite.rb +2 -2
- data/lib/candidhealth/x_12/v_1/types/type_of_bill_composite_base.rb +90 -0
- data/lib/candidhealth/x_12/v_1/types/type_of_bill_composite_update.rb +112 -0
- data/lib/candidhealth.rb +21 -7
- data/lib/requests.rb +2 -2
- data/lib/types_export.rb +116 -13
- metadata +109 -2
@@ -0,0 +1,210 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "date"
|
4
|
+
require_relative "insurance_adjustment_info"
|
5
|
+
require_relative "insurance_payment_info"
|
6
|
+
require_relative "non_insurance_adjustment_info"
|
7
|
+
require_relative "non_insurance_payment_info"
|
8
|
+
require_relative "patient_adjustment_info"
|
9
|
+
require_relative "patient_payment_info"
|
10
|
+
require "ostruct"
|
11
|
+
require "json"
|
12
|
+
|
13
|
+
module CandidApiClient
|
14
|
+
module PatientAr
|
15
|
+
module V1
|
16
|
+
module Types
|
17
|
+
class ServiceLineItemization
|
18
|
+
# @return [String] The ID of the service line.
|
19
|
+
attr_reader :service_line_id
|
20
|
+
# @return [String] The procedure code (CPT/HCPCS) associated with the service line.
|
21
|
+
attr_reader :procedure_code
|
22
|
+
# @return [Date] The date of service for the service line.
|
23
|
+
attr_reader :date_of_service
|
24
|
+
# @return [Integer] The total patient balance in cents for the service line. Negative values
|
25
|
+
# indicate a credit balance.
|
26
|
+
attr_reader :patient_balance_cents
|
27
|
+
# @return [Integer] The total charge amount in cents for the service line.
|
28
|
+
attr_reader :charge_amount_cents
|
29
|
+
# @return [CandidApiClient::PatientAr::V1::Types::InsuranceAdjustmentInfo]
|
30
|
+
attr_reader :insurance_adjustments
|
31
|
+
# @return [CandidApiClient::PatientAr::V1::Types::InsurancePaymentInfo]
|
32
|
+
attr_reader :insurance_payments
|
33
|
+
# @return [CandidApiClient::PatientAr::V1::Types::NonInsuranceAdjustmentInfo]
|
34
|
+
attr_reader :non_insurance_adjustments
|
35
|
+
# @return [CandidApiClient::PatientAr::V1::Types::NonInsurancePaymentInfo]
|
36
|
+
attr_reader :non_insurance_payments
|
37
|
+
# @return [CandidApiClient::PatientAr::V1::Types::PatientAdjustmentInfo]
|
38
|
+
attr_reader :patient_adjustments
|
39
|
+
# @return [CandidApiClient::PatientAr::V1::Types::PatientPaymentInfo]
|
40
|
+
attr_reader :patient_payments
|
41
|
+
# @return [Integer] The copay amount in cents for the service line.
|
42
|
+
attr_reader :copay_cents
|
43
|
+
# @return [Integer] The coinsurance amount in cents for the service line.
|
44
|
+
attr_reader :coinsurance_cents
|
45
|
+
# @return [Integer] The deductible amount in cents for the service line.
|
46
|
+
attr_reader :deductible_cents
|
47
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
48
|
+
attr_reader :additional_properties
|
49
|
+
# @return [Object]
|
50
|
+
attr_reader :_field_set
|
51
|
+
protected :_field_set
|
52
|
+
|
53
|
+
OMIT = Object.new
|
54
|
+
|
55
|
+
# @param service_line_id [String] The ID of the service line.
|
56
|
+
# @param procedure_code [String] The procedure code (CPT/HCPCS) associated with the service line.
|
57
|
+
# @param date_of_service [Date] The date of service for the service line.
|
58
|
+
# @param patient_balance_cents [Integer] The total patient balance in cents for the service line. Negative values
|
59
|
+
# indicate a credit balance.
|
60
|
+
# @param charge_amount_cents [Integer] The total charge amount in cents for the service line.
|
61
|
+
# @param insurance_adjustments [CandidApiClient::PatientAr::V1::Types::InsuranceAdjustmentInfo]
|
62
|
+
# @param insurance_payments [CandidApiClient::PatientAr::V1::Types::InsurancePaymentInfo]
|
63
|
+
# @param non_insurance_adjustments [CandidApiClient::PatientAr::V1::Types::NonInsuranceAdjustmentInfo]
|
64
|
+
# @param non_insurance_payments [CandidApiClient::PatientAr::V1::Types::NonInsurancePaymentInfo]
|
65
|
+
# @param patient_adjustments [CandidApiClient::PatientAr::V1::Types::PatientAdjustmentInfo]
|
66
|
+
# @param patient_payments [CandidApiClient::PatientAr::V1::Types::PatientPaymentInfo]
|
67
|
+
# @param copay_cents [Integer] The copay amount in cents for the service line.
|
68
|
+
# @param coinsurance_cents [Integer] The coinsurance amount in cents for the service line.
|
69
|
+
# @param deductible_cents [Integer] The deductible amount in cents for the service line.
|
70
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
71
|
+
# @return [CandidApiClient::PatientAr::V1::Types::ServiceLineItemization]
|
72
|
+
def initialize(service_line_id:, procedure_code:, date_of_service:, patient_balance_cents:,
|
73
|
+
charge_amount_cents:, insurance_adjustments:, insurance_payments:, non_insurance_adjustments:, non_insurance_payments:, patient_adjustments:, patient_payments:, copay_cents:, coinsurance_cents:, deductible_cents:, additional_properties: nil)
|
74
|
+
@service_line_id = service_line_id
|
75
|
+
@procedure_code = procedure_code
|
76
|
+
@date_of_service = date_of_service
|
77
|
+
@patient_balance_cents = patient_balance_cents
|
78
|
+
@charge_amount_cents = charge_amount_cents
|
79
|
+
@insurance_adjustments = insurance_adjustments
|
80
|
+
@insurance_payments = insurance_payments
|
81
|
+
@non_insurance_adjustments = non_insurance_adjustments
|
82
|
+
@non_insurance_payments = non_insurance_payments
|
83
|
+
@patient_adjustments = patient_adjustments
|
84
|
+
@patient_payments = patient_payments
|
85
|
+
@copay_cents = copay_cents
|
86
|
+
@coinsurance_cents = coinsurance_cents
|
87
|
+
@deductible_cents = deductible_cents
|
88
|
+
@additional_properties = additional_properties
|
89
|
+
@_field_set = {
|
90
|
+
"service_line_id": service_line_id,
|
91
|
+
"procedure_code": procedure_code,
|
92
|
+
"date_of_service": date_of_service,
|
93
|
+
"patient_balance_cents": patient_balance_cents,
|
94
|
+
"charge_amount_cents": charge_amount_cents,
|
95
|
+
"insurance_adjustments": insurance_adjustments,
|
96
|
+
"insurance_payments": insurance_payments,
|
97
|
+
"non_insurance_adjustments": non_insurance_adjustments,
|
98
|
+
"non_insurance_payments": non_insurance_payments,
|
99
|
+
"patient_adjustments": patient_adjustments,
|
100
|
+
"patient_payments": patient_payments,
|
101
|
+
"copay_cents": copay_cents,
|
102
|
+
"coinsurance_cents": coinsurance_cents,
|
103
|
+
"deductible_cents": deductible_cents
|
104
|
+
}
|
105
|
+
end
|
106
|
+
|
107
|
+
# Deserialize a JSON object to an instance of ServiceLineItemization
|
108
|
+
#
|
109
|
+
# @param json_object [String]
|
110
|
+
# @return [CandidApiClient::PatientAr::V1::Types::ServiceLineItemization]
|
111
|
+
def self.from_json(json_object:)
|
112
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
113
|
+
parsed_json = JSON.parse(json_object)
|
114
|
+
service_line_id = struct["service_line_id"]
|
115
|
+
procedure_code = struct["procedure_code"]
|
116
|
+
date_of_service = (Date.parse(parsed_json["date_of_service"]) unless parsed_json["date_of_service"].nil?)
|
117
|
+
patient_balance_cents = struct["patient_balance_cents"]
|
118
|
+
charge_amount_cents = struct["charge_amount_cents"]
|
119
|
+
if parsed_json["insurance_adjustments"].nil?
|
120
|
+
insurance_adjustments = nil
|
121
|
+
else
|
122
|
+
insurance_adjustments = parsed_json["insurance_adjustments"].to_json
|
123
|
+
insurance_adjustments = CandidApiClient::PatientAr::V1::Types::InsuranceAdjustmentInfo.from_json(json_object: insurance_adjustments)
|
124
|
+
end
|
125
|
+
if parsed_json["insurance_payments"].nil?
|
126
|
+
insurance_payments = nil
|
127
|
+
else
|
128
|
+
insurance_payments = parsed_json["insurance_payments"].to_json
|
129
|
+
insurance_payments = CandidApiClient::PatientAr::V1::Types::InsurancePaymentInfo.from_json(json_object: insurance_payments)
|
130
|
+
end
|
131
|
+
if parsed_json["non_insurance_adjustments"].nil?
|
132
|
+
non_insurance_adjustments = nil
|
133
|
+
else
|
134
|
+
non_insurance_adjustments = parsed_json["non_insurance_adjustments"].to_json
|
135
|
+
non_insurance_adjustments = CandidApiClient::PatientAr::V1::Types::NonInsuranceAdjustmentInfo.from_json(json_object: non_insurance_adjustments)
|
136
|
+
end
|
137
|
+
if parsed_json["non_insurance_payments"].nil?
|
138
|
+
non_insurance_payments = nil
|
139
|
+
else
|
140
|
+
non_insurance_payments = parsed_json["non_insurance_payments"].to_json
|
141
|
+
non_insurance_payments = CandidApiClient::PatientAr::V1::Types::NonInsurancePaymentInfo.from_json(json_object: non_insurance_payments)
|
142
|
+
end
|
143
|
+
if parsed_json["patient_adjustments"].nil?
|
144
|
+
patient_adjustments = nil
|
145
|
+
else
|
146
|
+
patient_adjustments = parsed_json["patient_adjustments"].to_json
|
147
|
+
patient_adjustments = CandidApiClient::PatientAr::V1::Types::PatientAdjustmentInfo.from_json(json_object: patient_adjustments)
|
148
|
+
end
|
149
|
+
if parsed_json["patient_payments"].nil?
|
150
|
+
patient_payments = nil
|
151
|
+
else
|
152
|
+
patient_payments = parsed_json["patient_payments"].to_json
|
153
|
+
patient_payments = CandidApiClient::PatientAr::V1::Types::PatientPaymentInfo.from_json(json_object: patient_payments)
|
154
|
+
end
|
155
|
+
copay_cents = struct["copay_cents"]
|
156
|
+
coinsurance_cents = struct["coinsurance_cents"]
|
157
|
+
deductible_cents = struct["deductible_cents"]
|
158
|
+
new(
|
159
|
+
service_line_id: service_line_id,
|
160
|
+
procedure_code: procedure_code,
|
161
|
+
date_of_service: date_of_service,
|
162
|
+
patient_balance_cents: patient_balance_cents,
|
163
|
+
charge_amount_cents: charge_amount_cents,
|
164
|
+
insurance_adjustments: insurance_adjustments,
|
165
|
+
insurance_payments: insurance_payments,
|
166
|
+
non_insurance_adjustments: non_insurance_adjustments,
|
167
|
+
non_insurance_payments: non_insurance_payments,
|
168
|
+
patient_adjustments: patient_adjustments,
|
169
|
+
patient_payments: patient_payments,
|
170
|
+
copay_cents: copay_cents,
|
171
|
+
coinsurance_cents: coinsurance_cents,
|
172
|
+
deductible_cents: deductible_cents,
|
173
|
+
additional_properties: struct
|
174
|
+
)
|
175
|
+
end
|
176
|
+
|
177
|
+
# Serialize an instance of ServiceLineItemization to a JSON object
|
178
|
+
#
|
179
|
+
# @return [String]
|
180
|
+
def to_json(*_args)
|
181
|
+
@_field_set&.to_json
|
182
|
+
end
|
183
|
+
|
184
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
185
|
+
# hash and check each fields type against the current object's property
|
186
|
+
# definitions.
|
187
|
+
#
|
188
|
+
# @param obj [Object]
|
189
|
+
# @return [Void]
|
190
|
+
def self.validate_raw(obj:)
|
191
|
+
obj.service_line_id.is_a?(String) != false || raise("Passed value for field obj.service_line_id is not the expected type, validation failed.")
|
192
|
+
obj.procedure_code.is_a?(String) != false || raise("Passed value for field obj.procedure_code is not the expected type, validation failed.")
|
193
|
+
obj.date_of_service.is_a?(Date) != false || raise("Passed value for field obj.date_of_service is not the expected type, validation failed.")
|
194
|
+
obj.patient_balance_cents.is_a?(Integer) != false || raise("Passed value for field obj.patient_balance_cents is not the expected type, validation failed.")
|
195
|
+
obj.charge_amount_cents.is_a?(Integer) != false || raise("Passed value for field obj.charge_amount_cents is not the expected type, validation failed.")
|
196
|
+
CandidApiClient::PatientAr::V1::Types::InsuranceAdjustmentInfo.validate_raw(obj: obj.insurance_adjustments)
|
197
|
+
CandidApiClient::PatientAr::V1::Types::InsurancePaymentInfo.validate_raw(obj: obj.insurance_payments)
|
198
|
+
CandidApiClient::PatientAr::V1::Types::NonInsuranceAdjustmentInfo.validate_raw(obj: obj.non_insurance_adjustments)
|
199
|
+
CandidApiClient::PatientAr::V1::Types::NonInsurancePaymentInfo.validate_raw(obj: obj.non_insurance_payments)
|
200
|
+
CandidApiClient::PatientAr::V1::Types::PatientAdjustmentInfo.validate_raw(obj: obj.patient_adjustments)
|
201
|
+
CandidApiClient::PatientAr::V1::Types::PatientPaymentInfo.validate_raw(obj: obj.patient_payments)
|
202
|
+
obj.copay_cents.is_a?(Integer) != false || raise("Passed value for field obj.copay_cents is not the expected type, validation failed.")
|
203
|
+
obj.coinsurance_cents.is_a?(Integer) != false || raise("Passed value for field obj.coinsurance_cents is not the expected type, validation failed.")
|
204
|
+
obj.deductible_cents.is_a?(Integer) != false || raise("Passed value for field obj.deductible_cents is not the expected type, validation failed.")
|
205
|
+
end
|
206
|
+
end
|
207
|
+
end
|
208
|
+
end
|
209
|
+
end
|
210
|
+
end
|
@@ -2,28 +2,35 @@
|
|
2
2
|
|
3
3
|
require_relative "../../requests"
|
4
4
|
require_relative "v_3/client"
|
5
|
+
require_relative "v_4/client"
|
5
6
|
|
6
7
|
module CandidApiClient
|
7
8
|
module Payers
|
8
9
|
class Client
|
9
10
|
# @return [CandidApiClient::Payers::V3::V3Client]
|
10
11
|
attr_reader :v_3
|
12
|
+
# @return [CandidApiClient::Payers::V4::V4Client]
|
13
|
+
attr_reader :v_4
|
11
14
|
|
12
15
|
# @param request_client [CandidApiClient::RequestClient]
|
13
16
|
# @return [CandidApiClient::Payers::Client]
|
14
17
|
def initialize(request_client:)
|
15
18
|
@v_3 = CandidApiClient::Payers::V3::V3Client.new(request_client: request_client)
|
19
|
+
@v_4 = CandidApiClient::Payers::V4::V4Client.new(request_client: request_client)
|
16
20
|
end
|
17
21
|
end
|
18
22
|
|
19
23
|
class AsyncClient
|
20
24
|
# @return [CandidApiClient::Payers::V3::AsyncV3Client]
|
21
25
|
attr_reader :v_3
|
26
|
+
# @return [CandidApiClient::Payers::V4::AsyncV4Client]
|
27
|
+
attr_reader :v_4
|
22
28
|
|
23
29
|
# @param request_client [CandidApiClient::AsyncRequestClient]
|
24
30
|
# @return [CandidApiClient::Payers::AsyncClient]
|
25
31
|
def initialize(request_client:)
|
26
32
|
@v_3 = CandidApiClient::Payers::V3::AsyncV3Client.new(request_client: request_client)
|
33
|
+
@v_4 = CandidApiClient::Payers::V4::AsyncV4Client.new(request_client: request_client)
|
27
34
|
end
|
28
35
|
end
|
29
36
|
end
|
@@ -0,0 +1,137 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "../../../requests"
|
4
|
+
require_relative "types/payer"
|
5
|
+
require_relative "types/payer_page"
|
6
|
+
require "async"
|
7
|
+
|
8
|
+
module CandidApiClient
|
9
|
+
module Payers
|
10
|
+
module V4
|
11
|
+
class V4Client
|
12
|
+
# @return [CandidApiClient::RequestClient]
|
13
|
+
attr_reader :request_client
|
14
|
+
|
15
|
+
# @param request_client [CandidApiClient::RequestClient]
|
16
|
+
# @return [CandidApiClient::Payers::V4::V4Client]
|
17
|
+
def initialize(request_client:)
|
18
|
+
@request_client = request_client
|
19
|
+
end
|
20
|
+
|
21
|
+
# @param payer_uuid [String]
|
22
|
+
# @param request_options [CandidApiClient::RequestOptions]
|
23
|
+
# @return [CandidApiClient::Payers::V4::Types::Payer]
|
24
|
+
# @example
|
25
|
+
# api = CandidApiClient::Client.new(base_url: "https://api.example.com", environment: CandidApiClient::Environment::PRODUCTION)
|
26
|
+
# api.payers.v_4.get(payer_uuid: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32")
|
27
|
+
def get(payer_uuid:, request_options: nil)
|
28
|
+
response = @request_client.conn.get do |req|
|
29
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
30
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
31
|
+
req.headers = {
|
32
|
+
**(req.headers || {}),
|
33
|
+
**@request_client.get_headers,
|
34
|
+
**(request_options&.additional_headers || {})
|
35
|
+
}.compact
|
36
|
+
req.url "#{@request_client.get_url(environment: CandidApi,
|
37
|
+
request_options: request_options)}/api/payers/v4/#{payer_uuid}"
|
38
|
+
end
|
39
|
+
CandidApiClient::Payers::V4::Types::Payer.from_json(json_object: response.body)
|
40
|
+
end
|
41
|
+
|
42
|
+
# @param limit [Integer] Maximum number of entities per page, defaults to 100.
|
43
|
+
# @param search_term [String]
|
44
|
+
# @param page_token [String]
|
45
|
+
# @param request_options [CandidApiClient::RequestOptions]
|
46
|
+
# @return [CandidApiClient::Payers::V4::Types::PayerPage]
|
47
|
+
# @example
|
48
|
+
# api = CandidApiClient::Client.new(base_url: "https://api.example.com", environment: CandidApiClient::Environment::PRODUCTION)
|
49
|
+
# api.payers.v_4.get_all
|
50
|
+
def get_all(limit: nil, search_term: nil, page_token: nil, request_options: nil)
|
51
|
+
response = @request_client.conn.get do |req|
|
52
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
53
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
54
|
+
req.headers = {
|
55
|
+
**(req.headers || {}),
|
56
|
+
**@request_client.get_headers,
|
57
|
+
**(request_options&.additional_headers || {})
|
58
|
+
}.compact
|
59
|
+
req.params = {
|
60
|
+
**(request_options&.additional_query_parameters || {}),
|
61
|
+
"limit": limit,
|
62
|
+
"search_term": search_term,
|
63
|
+
"page_token": page_token
|
64
|
+
}.compact
|
65
|
+
req.url "#{@request_client.get_url(environment: CandidApi, request_options: request_options)}/api/payers/v4"
|
66
|
+
end
|
67
|
+
CandidApiClient::Payers::V4::Types::PayerPage.from_json(json_object: response.body)
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
71
|
+
class AsyncV4Client
|
72
|
+
# @return [CandidApiClient::AsyncRequestClient]
|
73
|
+
attr_reader :request_client
|
74
|
+
|
75
|
+
# @param request_client [CandidApiClient::AsyncRequestClient]
|
76
|
+
# @return [CandidApiClient::Payers::V4::AsyncV4Client]
|
77
|
+
def initialize(request_client:)
|
78
|
+
@request_client = request_client
|
79
|
+
end
|
80
|
+
|
81
|
+
# @param payer_uuid [String]
|
82
|
+
# @param request_options [CandidApiClient::RequestOptions]
|
83
|
+
# @return [CandidApiClient::Payers::V4::Types::Payer]
|
84
|
+
# @example
|
85
|
+
# api = CandidApiClient::Client.new(base_url: "https://api.example.com", environment: CandidApiClient::Environment::PRODUCTION)
|
86
|
+
# api.payers.v_4.get(payer_uuid: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32")
|
87
|
+
def get(payer_uuid:, request_options: nil)
|
88
|
+
Async do
|
89
|
+
response = @request_client.conn.get do |req|
|
90
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
91
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
92
|
+
req.headers = {
|
93
|
+
**(req.headers || {}),
|
94
|
+
**@request_client.get_headers,
|
95
|
+
**(request_options&.additional_headers || {})
|
96
|
+
}.compact
|
97
|
+
req.url "#{@request_client.get_url(environment: CandidApi,
|
98
|
+
request_options: request_options)}/api/payers/v4/#{payer_uuid}"
|
99
|
+
end
|
100
|
+
CandidApiClient::Payers::V4::Types::Payer.from_json(json_object: response.body)
|
101
|
+
end
|
102
|
+
end
|
103
|
+
|
104
|
+
# @param limit [Integer] Maximum number of entities per page, defaults to 100.
|
105
|
+
# @param search_term [String]
|
106
|
+
# @param page_token [String]
|
107
|
+
# @param request_options [CandidApiClient::RequestOptions]
|
108
|
+
# @return [CandidApiClient::Payers::V4::Types::PayerPage]
|
109
|
+
# @example
|
110
|
+
# api = CandidApiClient::Client.new(base_url: "https://api.example.com", environment: CandidApiClient::Environment::PRODUCTION)
|
111
|
+
# api.payers.v_4.get_all
|
112
|
+
def get_all(limit: nil, search_term: nil, page_token: nil, request_options: nil)
|
113
|
+
Async do
|
114
|
+
response = @request_client.conn.get do |req|
|
115
|
+
req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
|
116
|
+
req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
|
117
|
+
req.headers = {
|
118
|
+
**(req.headers || {}),
|
119
|
+
**@request_client.get_headers,
|
120
|
+
**(request_options&.additional_headers || {})
|
121
|
+
}.compact
|
122
|
+
req.params = {
|
123
|
+
**(request_options&.additional_query_parameters || {}),
|
124
|
+
"limit": limit,
|
125
|
+
"search_term": search_term,
|
126
|
+
"page_token": page_token
|
127
|
+
}.compact
|
128
|
+
req.url "#{@request_client.get_url(environment: CandidApi,
|
129
|
+
request_options: request_options)}/api/payers/v4"
|
130
|
+
end
|
131
|
+
CandidApiClient::Payers::V4::Types::PayerPage.from_json(json_object: response.body)
|
132
|
+
end
|
133
|
+
end
|
134
|
+
end
|
135
|
+
end
|
136
|
+
end
|
137
|
+
end
|
@@ -0,0 +1,93 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "payer_ids"
|
4
|
+
require "ostruct"
|
5
|
+
require "json"
|
6
|
+
|
7
|
+
module CandidApiClient
|
8
|
+
module Payers
|
9
|
+
module V4
|
10
|
+
module Types
|
11
|
+
class ClearinghousePayerInfo
|
12
|
+
# @return [String] The clearinghouse display name of the payer.
|
13
|
+
attr_reader :payer_name
|
14
|
+
# @return [CandidApiClient::Payers::V4::Types::PayerIds] Payer IDs for professional claims
|
15
|
+
attr_reader :professional_payer_ids
|
16
|
+
# @return [CandidApiClient::Payers::V4::Types::PayerIds] Payer IDs for institutional claims
|
17
|
+
attr_reader :institutional_payer_ids
|
18
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
19
|
+
attr_reader :additional_properties
|
20
|
+
# @return [Object]
|
21
|
+
attr_reader :_field_set
|
22
|
+
protected :_field_set
|
23
|
+
|
24
|
+
OMIT = Object.new
|
25
|
+
|
26
|
+
# @param payer_name [String] The clearinghouse display name of the payer.
|
27
|
+
# @param professional_payer_ids [CandidApiClient::Payers::V4::Types::PayerIds] Payer IDs for professional claims
|
28
|
+
# @param institutional_payer_ids [CandidApiClient::Payers::V4::Types::PayerIds] Payer IDs for institutional claims
|
29
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
30
|
+
# @return [CandidApiClient::Payers::V4::Types::ClearinghousePayerInfo]
|
31
|
+
def initialize(payer_name:, professional_payer_ids:, institutional_payer_ids:, additional_properties: nil)
|
32
|
+
@payer_name = payer_name
|
33
|
+
@professional_payer_ids = professional_payer_ids
|
34
|
+
@institutional_payer_ids = institutional_payer_ids
|
35
|
+
@additional_properties = additional_properties
|
36
|
+
@_field_set = {
|
37
|
+
"payer_name": payer_name,
|
38
|
+
"professional_payer_ids": professional_payer_ids,
|
39
|
+
"institutional_payer_ids": institutional_payer_ids
|
40
|
+
}
|
41
|
+
end
|
42
|
+
|
43
|
+
# Deserialize a JSON object to an instance of ClearinghousePayerInfo
|
44
|
+
#
|
45
|
+
# @param json_object [String]
|
46
|
+
# @return [CandidApiClient::Payers::V4::Types::ClearinghousePayerInfo]
|
47
|
+
def self.from_json(json_object:)
|
48
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
49
|
+
parsed_json = JSON.parse(json_object)
|
50
|
+
payer_name = struct["payer_name"]
|
51
|
+
if parsed_json["professional_payer_ids"].nil?
|
52
|
+
professional_payer_ids = nil
|
53
|
+
else
|
54
|
+
professional_payer_ids = parsed_json["professional_payer_ids"].to_json
|
55
|
+
professional_payer_ids = CandidApiClient::Payers::V4::Types::PayerIds.from_json(json_object: professional_payer_ids)
|
56
|
+
end
|
57
|
+
if parsed_json["institutional_payer_ids"].nil?
|
58
|
+
institutional_payer_ids = nil
|
59
|
+
else
|
60
|
+
institutional_payer_ids = parsed_json["institutional_payer_ids"].to_json
|
61
|
+
institutional_payer_ids = CandidApiClient::Payers::V4::Types::PayerIds.from_json(json_object: institutional_payer_ids)
|
62
|
+
end
|
63
|
+
new(
|
64
|
+
payer_name: payer_name,
|
65
|
+
professional_payer_ids: professional_payer_ids,
|
66
|
+
institutional_payer_ids: institutional_payer_ids,
|
67
|
+
additional_properties: struct
|
68
|
+
)
|
69
|
+
end
|
70
|
+
|
71
|
+
# Serialize an instance of ClearinghousePayerInfo to a JSON object
|
72
|
+
#
|
73
|
+
# @return [String]
|
74
|
+
def to_json(*_args)
|
75
|
+
@_field_set&.to_json
|
76
|
+
end
|
77
|
+
|
78
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
79
|
+
# hash and check each fields type against the current object's property
|
80
|
+
# definitions.
|
81
|
+
#
|
82
|
+
# @param obj [Object]
|
83
|
+
# @return [Void]
|
84
|
+
def self.validate_raw(obj:)
|
85
|
+
obj.payer_name.is_a?(String) != false || raise("Passed value for field obj.payer_name is not the expected type, validation failed.")
|
86
|
+
CandidApiClient::Payers::V4::Types::PayerIds.validate_raw(obj: obj.professional_payer_ids)
|
87
|
+
CandidApiClient::Payers::V4::Types::PayerIds.validate_raw(obj: obj.institutional_payer_ids)
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
91
|
+
end
|
92
|
+
end
|
93
|
+
end
|
@@ -0,0 +1,116 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "payer_ids"
|
4
|
+
require_relative "../../../commons/types/street_address_long_zip"
|
5
|
+
require "ostruct"
|
6
|
+
require "json"
|
7
|
+
|
8
|
+
module CandidApiClient
|
9
|
+
module Payers
|
10
|
+
module V4
|
11
|
+
module Types
|
12
|
+
class Payer
|
13
|
+
# @return [String] Auto-generated ID set on creation.
|
14
|
+
attr_reader :payer_uuid
|
15
|
+
# @return [CandidApiClient::Payers::V4::Types::PayerIds] The primary national payer IDs of the payer.
|
16
|
+
attr_reader :payer_ids
|
17
|
+
# @return [String] The primary display name of the payer.
|
18
|
+
attr_reader :payer_name
|
19
|
+
# @return [Hash{CandidApiClient::Commons::Types::Clearinghouse => CandidApiClient::Payers::V4::Types::ClearinghousePayerInfo}]
|
20
|
+
attr_reader :clearinghouse_payer_info
|
21
|
+
# @return [CandidApiClient::Commons::Types::StreetAddressLongZip]
|
22
|
+
attr_reader :street_address
|
23
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
24
|
+
attr_reader :additional_properties
|
25
|
+
# @return [Object]
|
26
|
+
attr_reader :_field_set
|
27
|
+
protected :_field_set
|
28
|
+
|
29
|
+
OMIT = Object.new
|
30
|
+
|
31
|
+
# @param payer_uuid [String] Auto-generated ID set on creation.
|
32
|
+
# @param payer_ids [CandidApiClient::Payers::V4::Types::PayerIds] The primary national payer IDs of the payer.
|
33
|
+
# @param payer_name [String] The primary display name of the payer.
|
34
|
+
# @param clearinghouse_payer_info [Hash{CandidApiClient::Commons::Types::Clearinghouse => CandidApiClient::Payers::V4::Types::ClearinghousePayerInfo}]
|
35
|
+
# @param street_address [CandidApiClient::Commons::Types::StreetAddressLongZip]
|
36
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
37
|
+
# @return [CandidApiClient::Payers::V4::Types::Payer]
|
38
|
+
def initialize(payer_uuid:, payer_ids:, payer_name:, clearinghouse_payer_info:, street_address: OMIT,
|
39
|
+
additional_properties: nil)
|
40
|
+
@payer_uuid = payer_uuid
|
41
|
+
@payer_ids = payer_ids
|
42
|
+
@payer_name = payer_name
|
43
|
+
@clearinghouse_payer_info = clearinghouse_payer_info
|
44
|
+
@street_address = street_address if street_address != OMIT
|
45
|
+
@additional_properties = additional_properties
|
46
|
+
@_field_set = {
|
47
|
+
"payer_uuid": payer_uuid,
|
48
|
+
"payer_ids": payer_ids,
|
49
|
+
"payer_name": payer_name,
|
50
|
+
"clearinghouse_payer_info": clearinghouse_payer_info,
|
51
|
+
"street_address": street_address
|
52
|
+
}.reject do |_k, v|
|
53
|
+
v == OMIT
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
# Deserialize a JSON object to an instance of Payer
|
58
|
+
#
|
59
|
+
# @param json_object [String]
|
60
|
+
# @return [CandidApiClient::Payers::V4::Types::Payer]
|
61
|
+
def self.from_json(json_object:)
|
62
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
63
|
+
parsed_json = JSON.parse(json_object)
|
64
|
+
payer_uuid = struct["payer_uuid"]
|
65
|
+
if parsed_json["payer_ids"].nil?
|
66
|
+
payer_ids = nil
|
67
|
+
else
|
68
|
+
payer_ids = parsed_json["payer_ids"].to_json
|
69
|
+
payer_ids = CandidApiClient::Payers::V4::Types::PayerIds.from_json(json_object: payer_ids)
|
70
|
+
end
|
71
|
+
payer_name = struct["payer_name"]
|
72
|
+
clearinghouse_payer_info = parsed_json["clearinghouse_payer_info"]&.transform_values do |value|
|
73
|
+
value = value.to_json
|
74
|
+
CandidApiClient::Payers::V4::Types::ClearinghousePayerInfo.from_json(json_object: value)
|
75
|
+
end
|
76
|
+
if parsed_json["street_address"].nil?
|
77
|
+
street_address = nil
|
78
|
+
else
|
79
|
+
street_address = parsed_json["street_address"].to_json
|
80
|
+
street_address = CandidApiClient::Commons::Types::StreetAddressLongZip.from_json(json_object: street_address)
|
81
|
+
end
|
82
|
+
new(
|
83
|
+
payer_uuid: payer_uuid,
|
84
|
+
payer_ids: payer_ids,
|
85
|
+
payer_name: payer_name,
|
86
|
+
clearinghouse_payer_info: clearinghouse_payer_info,
|
87
|
+
street_address: street_address,
|
88
|
+
additional_properties: struct
|
89
|
+
)
|
90
|
+
end
|
91
|
+
|
92
|
+
# Serialize an instance of Payer to a JSON object
|
93
|
+
#
|
94
|
+
# @return [String]
|
95
|
+
def to_json(*_args)
|
96
|
+
@_field_set&.to_json
|
97
|
+
end
|
98
|
+
|
99
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
100
|
+
# hash and check each fields type against the current object's property
|
101
|
+
# definitions.
|
102
|
+
#
|
103
|
+
# @param obj [Object]
|
104
|
+
# @return [Void]
|
105
|
+
def self.validate_raw(obj:)
|
106
|
+
obj.payer_uuid.is_a?(String) != false || raise("Passed value for field obj.payer_uuid is not the expected type, validation failed.")
|
107
|
+
CandidApiClient::Payers::V4::Types::PayerIds.validate_raw(obj: obj.payer_ids)
|
108
|
+
obj.payer_name.is_a?(String) != false || raise("Passed value for field obj.payer_name is not the expected type, validation failed.")
|
109
|
+
obj.clearinghouse_payer_info.is_a?(Hash) != false || raise("Passed value for field obj.clearinghouse_payer_info is not the expected type, validation failed.")
|
110
|
+
obj.street_address.nil? || CandidApiClient::Commons::Types::StreetAddressLongZip.validate_raw(obj: obj.street_address)
|
111
|
+
end
|
112
|
+
end
|
113
|
+
end
|
114
|
+
end
|
115
|
+
end
|
116
|
+
end
|