candidhealth 1.8.0 → 1.9.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.
Files changed (80) hide show
  1. checksums.yaml +4 -4
  2. data/lib/candidhealth/auth/default/client.rb +0 -74
  3. data/lib/candidhealth/charge_capture/v_1/client.rb +71 -4
  4. data/lib/candidhealth/charge_capture_bundles/v_1/client.rb +33 -2
  5. data/lib/candidhealth/diagnoses/client.rb +2 -2
  6. data/lib/candidhealth/encounters/v_4/client.rb +483 -2510
  7. data/lib/candidhealth/encounters/v_4/types/encounter_submission_expectation.rb +3 -6
  8. data/lib/candidhealth/guarantor/v_1/client.rb +4 -0
  9. data/lib/candidhealth/guarantor/v_1/types/guarantor.rb +10 -2
  10. data/lib/candidhealth/guarantor/v_1/types/guarantor_create.rb +10 -2
  11. data/lib/candidhealth/guarantor/v_1/types/guarantor_optional.rb +10 -2
  12. data/lib/candidhealth/guarantor/v_1/types/guarantor_update.rb +10 -2
  13. data/lib/candidhealth/health_care_code_information/v_1/client.rb +2 -74
  14. data/lib/candidhealth/health_care_code_information/v_1/types/admitting_diagnosis.rb +2 -130
  15. data/lib/candidhealth/health_care_code_information/v_1/types/condition_code.rb +100 -1
  16. data/lib/candidhealth/health_care_code_information/v_1/types/condition_information.rb +2 -130
  17. data/lib/candidhealth/health_care_code_information/v_1/types/diagnosis_related_group.rb +2 -130
  18. data/lib/candidhealth/health_care_code_information/v_1/types/external_cause_of_injury.rb +2 -130
  19. data/lib/candidhealth/health_care_code_information/v_1/types/health_care_code_information.rb +2 -134
  20. data/lib/candidhealth/health_care_code_information/v_1/types/health_care_code_information_get_all_response.rb +34 -34
  21. data/lib/candidhealth/health_care_code_information/v_1/types/health_care_code_information_new.rb +4 -139
  22. data/lib/candidhealth/health_care_code_information/v_1/types/health_care_code_information_update.rb +138 -38
  23. data/lib/candidhealth/health_care_code_information/v_1/types/occurrence_code.rb +1 -0
  24. data/lib/candidhealth/health_care_code_information/v_1/types/occurrence_information.rb +10 -132
  25. data/lib/candidhealth/health_care_code_information/v_1/types/occurrence_span_code.rb +6 -1
  26. data/lib/candidhealth/health_care_code_information/v_1/types/occurrence_span_information.rb +2 -130
  27. data/lib/candidhealth/health_care_code_information/v_1/types/other_diagnosis_information.rb +2 -130
  28. data/lib/candidhealth/health_care_code_information/v_1/types/other_procedure_information.rb +10 -132
  29. data/lib/candidhealth/health_care_code_information/v_1/types/patient_reason_for_visit.rb +2 -130
  30. data/lib/candidhealth/health_care_code_information/v_1/types/principal_diagnosis.rb +2 -130
  31. data/lib/candidhealth/health_care_code_information/v_1/types/principal_procedure_information.rb +10 -132
  32. data/lib/candidhealth/health_care_code_information/v_1/types/rd_8_date.rb +16 -4
  33. data/lib/candidhealth/health_care_code_information/v_1/types/treatment_code_information.rb +2 -130
  34. data/lib/candidhealth/health_care_code_information/v_1/types/value_information.rb +2 -130
  35. data/lib/candidhealth/individual/types/patient.rb +10 -2
  36. data/lib/candidhealth/individual/types/patient_create.rb +9 -1
  37. data/lib/candidhealth/individual/types/patient_update.rb +9 -1
  38. data/lib/candidhealth/individual/types/patient_update_with_optional_address.rb +9 -1
  39. data/lib/candidhealth/organization_providers/v_2/types/license_type.rb +2 -0
  40. data/lib/candidhealth/organization_service_facilities/v_2/client.rb +77 -4
  41. data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility.rb +21 -2
  42. data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility_create.rb +21 -2
  43. data/lib/candidhealth/organization_service_facilities/v_2/types/organization_service_facility_update.rb +21 -2
  44. data/lib/candidhealth/payers/v_4/types/clearinghouse_payer_info.rb +36 -2
  45. data/lib/candidhealth/payers/v_4/types/payer.rb +15 -7
  46. data/lib/candidhealth/payers/v_4/types/payer_ids.rb +12 -35
  47. data/lib/candidhealth/payers/v_4/types/primary_payer_ids.rb +84 -0
  48. data/lib/candidhealth/pre_encounter/patients/v_1/client.rb +8 -2
  49. data/lib/candidhealth/pre_encounter/patients/v_1/types/mutable_patient.rb +13 -1
  50. data/lib/candidhealth/pre_encounter/patients/v_1/types/mutable_patient_with_mrn.rb +13 -1
  51. data/lib/candidhealth/pre_encounter/patients/v_1/types/patient.rb +13 -1
  52. data/lib/candidhealth/pre_encounter/patients/v_1/types/patient_service_facility.rb +63 -0
  53. data/lib/candidhealth/service_lines/v_2/client.rb +2 -2
  54. data/lib/candidhealth/service_lines/v_2/types/service_line_create.rb +8 -8
  55. data/lib/candidhealth/service_lines/v_2/types/service_line_create_base.rb +8 -8
  56. data/lib/candidhealth/service_lines/v_2/types/service_line_create_base_base.rb +8 -8
  57. data/lib/requests.rb +2 -2
  58. data/lib/types_export.rb +2 -21
  59. metadata +4 -23
  60. data/lib/candidhealth/encounters_universal/types/universal_encounter_create.rb +0 -944
  61. data/lib/candidhealth/encounters_universal/types/universal_encounter_create_from_pre_encounter.rb +0 -791
  62. data/lib/candidhealth/encounters_universal/types/universal_encounter_update.rb +0 -872
  63. data/lib/candidhealth/health_care_code_information/v_1/types/admitting_diagnosis_new.rb +0 -206
  64. data/lib/candidhealth/health_care_code_information/v_1/types/code_list_qualifier_code.rb +0 -1068
  65. data/lib/candidhealth/health_care_code_information/v_1/types/condition_information_new.rb +0 -207
  66. data/lib/candidhealth/health_care_code_information/v_1/types/date_time_period_format_qualifier.rb +0 -54
  67. data/lib/candidhealth/health_care_code_information/v_1/types/diagnosis_related_group_new.rb +0 -206
  68. data/lib/candidhealth/health_care_code_information/v_1/types/external_cause_of_injury_new.rb +0 -245
  69. data/lib/candidhealth/health_care_code_information/v_1/types/health_care_code_information_create.rb +0 -225
  70. data/lib/candidhealth/health_care_code_information/v_1/types/occurrence_information_new.rb +0 -219
  71. data/lib/candidhealth/health_care_code_information/v_1/types/occurrence_span_information_new.rb +0 -222
  72. data/lib/candidhealth/health_care_code_information/v_1/types/other_diagnosis_information_new.rb +0 -215
  73. data/lib/candidhealth/health_care_code_information/v_1/types/other_procedure_information_new.rb +0 -218
  74. data/lib/candidhealth/health_care_code_information/v_1/types/patient_reason_for_visit_new.rb +0 -206
  75. data/lib/candidhealth/health_care_code_information/v_1/types/principal_diagnosis_new.rb +0 -215
  76. data/lib/candidhealth/health_care_code_information/v_1/types/principal_procedure_information_new.rb +0 -216
  77. data/lib/candidhealth/health_care_code_information/v_1/types/treatment_code_information_new.rb +0 -206
  78. data/lib/candidhealth/health_care_code_information/v_1/types/value_information_new.rb +0 -215
  79. data/lib/candidhealth/service_lines/v_2/types/universal_service_line_create.rb +0 -271
  80. data/lib/candidhealth/x_12/v_1/types/type_of_bill_composite_update.rb +0 -112
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require_relative "../../../commons/types/facility_type_code"
3
4
  require_relative "service_facility_status"
4
5
  require_relative "service_facility_operational_status"
5
6
  require_relative "service_facility_mode"
@@ -20,10 +21,15 @@ module CandidApiClient
20
21
  attr_reader :aliases
21
22
  # @return [String] A description of the service facility.
22
23
  attr_reader :description
24
+ # @return [String] An ID for this service facility used in an external system (e.g. your EMR).
25
+ # Service facilities can be queried by this field.
26
+ attr_reader :external_id
23
27
  # @return [String] An NPI specific to the service facility if applicable, i.e. if it has one and is
24
28
  # not under the billing provider's NPI.
25
29
  # Box 32 section (a) of the CMS-1500 claim form.
26
30
  attr_reader :npi
31
+ # @return [CandidApiClient::Commons::Types::FacilityTypeCode] The Place of Service (POS) code for this service facility.
32
+ attr_reader :place_of_service_code
27
33
  # @return [CandidApiClient::OrganizationServiceFacilities::V2::Types::ServiceFacilityStatus] The status of the service facility.
28
34
  attr_reader :status
29
35
  # @return [CandidApiClient::OrganizationServiceFacilities::V2::Types::ServiceFacilityOperationalStatus] The operational status of the service facility.
@@ -49,9 +55,12 @@ module CandidApiClient
49
55
  # @param name [String] The name of the service facility.
50
56
  # @param aliases [Array<String>] A list of alternate names for the service facility.
51
57
  # @param description [String] A description of the service facility.
58
+ # @param external_id [String] An ID for this service facility used in an external system (e.g. your EMR).
59
+ # Service facilities can be queried by this field.
52
60
  # @param npi [String] An NPI specific to the service facility if applicable, i.e. if it has one and is
53
61
  # not under the billing provider's NPI.
54
62
  # Box 32 section (a) of the CMS-1500 claim form.
63
+ # @param place_of_service_code [CandidApiClient::Commons::Types::FacilityTypeCode] The Place of Service (POS) code for this service facility.
55
64
  # @param status [CandidApiClient::OrganizationServiceFacilities::V2::Types::ServiceFacilityStatus] The status of the service facility.
56
65
  # @param operational_status [CandidApiClient::OrganizationServiceFacilities::V2::Types::ServiceFacilityOperationalStatus] The operational status of the service facility.
57
66
  # @param mode [CandidApiClient::OrganizationServiceFacilities::V2::Types::ServiceFacilityMode] The mode of the service facility.
@@ -61,12 +70,14 @@ module CandidApiClient
61
70
  # @param address [CandidApiClient::Commons::Types::StreetAddressLongZip] The address of the service facility.
62
71
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
63
72
  # @return [CandidApiClient::OrganizationServiceFacilities::V2::Types::OrganizationServiceFacilityUpdate]
64
- def initialize(name: OMIT, aliases: OMIT, description: OMIT, npi: OMIT, status: OMIT,
65
- operational_status: OMIT, mode: OMIT, type: OMIT, physical_type: OMIT, telecoms: OMIT, address: OMIT, additional_properties: nil)
73
+ def initialize(name: OMIT, aliases: OMIT, description: OMIT, external_id: OMIT, npi: OMIT,
74
+ place_of_service_code: OMIT, status: OMIT, operational_status: OMIT, mode: OMIT, type: OMIT, physical_type: OMIT, telecoms: OMIT, address: OMIT, additional_properties: nil)
66
75
  @name = name if name != OMIT
67
76
  @aliases = aliases if aliases != OMIT
68
77
  @description = description if description != OMIT
78
+ @external_id = external_id if external_id != OMIT
69
79
  @npi = npi if npi != OMIT
80
+ @place_of_service_code = place_of_service_code if place_of_service_code != OMIT
70
81
  @status = status if status != OMIT
71
82
  @operational_status = operational_status if operational_status != OMIT
72
83
  @mode = mode if mode != OMIT
@@ -79,7 +90,9 @@ module CandidApiClient
79
90
  "name": name,
80
91
  "aliases": aliases,
81
92
  "description": description,
93
+ "external_id": external_id,
82
94
  "npi": npi,
95
+ "place_of_service_code": place_of_service_code,
83
96
  "status": status,
84
97
  "operational_status": operational_status,
85
98
  "mode": mode,
@@ -102,7 +115,9 @@ module CandidApiClient
102
115
  name = struct["name"]
103
116
  aliases = struct["aliases"]
104
117
  description = struct["description"]
118
+ external_id = struct["external_id"]
105
119
  npi = struct["npi"]
120
+ place_of_service_code = struct["place_of_service_code"]
106
121
  status = struct["status"]
107
122
  operational_status = struct["operational_status"]
108
123
  mode = struct["mode"]
@@ -119,7 +134,9 @@ module CandidApiClient
119
134
  name: name,
120
135
  aliases: aliases,
121
136
  description: description,
137
+ external_id: external_id,
122
138
  npi: npi,
139
+ place_of_service_code: place_of_service_code,
123
140
  status: status,
124
141
  operational_status: operational_status,
125
142
  mode: mode,
@@ -148,7 +165,9 @@ module CandidApiClient
148
165
  obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
149
166
  obj.aliases&.is_a?(Array) != false || raise("Passed value for field obj.aliases is not the expected type, validation failed.")
150
167
  obj.description&.is_a?(String) != false || raise("Passed value for field obj.description is not the expected type, validation failed.")
168
+ obj.external_id&.is_a?(String) != false || raise("Passed value for field obj.external_id is not the expected type, validation failed.")
151
169
  obj.npi&.is_a?(String) != false || raise("Passed value for field obj.npi is not the expected type, validation failed.")
170
+ obj.place_of_service_code&.is_a?(CandidApiClient::Commons::Types::FacilityTypeCode) != false || raise("Passed value for field obj.place_of_service_code is not the expected type, validation failed.")
152
171
  obj.status&.is_a?(CandidApiClient::OrganizationServiceFacilities::V2::Types::ServiceFacilityStatus) != false || raise("Passed value for field obj.status is not the expected type, validation failed.")
153
172
  obj.operational_status&.is_a?(CandidApiClient::OrganizationServiceFacilities::V2::Types::ServiceFacilityOperationalStatus) != false || raise("Passed value for field obj.operational_status is not the expected type, validation failed.")
154
173
  obj.mode&.is_a?(CandidApiClient::OrganizationServiceFacilities::V2::Types::ServiceFacilityMode) != false || raise("Passed value for field obj.mode is not the expected type, validation failed.")
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require_relative "payer_ids"
4
+ require_relative "support_state"
4
5
  require "ostruct"
5
6
  require "json"
6
7
 
@@ -15,6 +16,14 @@ module CandidApiClient
15
16
  attr_reader :professional_payer_ids
16
17
  # @return [CandidApiClient::Payers::V4::Types::PayerIds] Payer IDs for institutional claims
17
18
  attr_reader :institutional_payer_ids
19
+ # @return [CandidApiClient::Payers::V4::Types::SupportState] The support state for claims submission
20
+ attr_reader :professional_claims_support
21
+ # @return [CandidApiClient::Payers::V4::Types::SupportState] The support state for institutional claims submission
22
+ attr_reader :institutional_claims_support
23
+ # @return [CandidApiClient::Payers::V4::Types::SupportState] The support state for eligibility
24
+ attr_reader :eligibility_support
25
+ # @return [CandidApiClient::Payers::V4::Types::SupportState] The support state for remittance
26
+ attr_reader :remittance_support
18
27
  # @return [OpenStruct] Additional properties unmapped to the current class definition
19
28
  attr_reader :additional_properties
20
29
  # @return [Object]
@@ -26,17 +35,30 @@ module CandidApiClient
26
35
  # @param payer_name [String] The clearinghouse display name of the payer.
27
36
  # @param professional_payer_ids [CandidApiClient::Payers::V4::Types::PayerIds] Payer IDs for professional claims
28
37
  # @param institutional_payer_ids [CandidApiClient::Payers::V4::Types::PayerIds] Payer IDs for institutional claims
38
+ # @param professional_claims_support [CandidApiClient::Payers::V4::Types::SupportState] The support state for claims submission
39
+ # @param institutional_claims_support [CandidApiClient::Payers::V4::Types::SupportState] The support state for institutional claims submission
40
+ # @param eligibility_support [CandidApiClient::Payers::V4::Types::SupportState] The support state for eligibility
41
+ # @param remittance_support [CandidApiClient::Payers::V4::Types::SupportState] The support state for remittance
29
42
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
30
43
  # @return [CandidApiClient::Payers::V4::Types::ClearinghousePayerInfo]
31
- def initialize(payer_name:, professional_payer_ids:, institutional_payer_ids:, additional_properties: nil)
44
+ def initialize(payer_name:, professional_payer_ids:, institutional_payer_ids:, professional_claims_support:,
45
+ institutional_claims_support:, eligibility_support:, remittance_support:, additional_properties: nil)
32
46
  @payer_name = payer_name
33
47
  @professional_payer_ids = professional_payer_ids
34
48
  @institutional_payer_ids = institutional_payer_ids
49
+ @professional_claims_support = professional_claims_support
50
+ @institutional_claims_support = institutional_claims_support
51
+ @eligibility_support = eligibility_support
52
+ @remittance_support = remittance_support
35
53
  @additional_properties = additional_properties
36
54
  @_field_set = {
37
55
  "payer_name": payer_name,
38
56
  "professional_payer_ids": professional_payer_ids,
39
- "institutional_payer_ids": institutional_payer_ids
57
+ "institutional_payer_ids": institutional_payer_ids,
58
+ "professional_claims_support": professional_claims_support,
59
+ "institutional_claims_support": institutional_claims_support,
60
+ "eligibility_support": eligibility_support,
61
+ "remittance_support": remittance_support
40
62
  }
41
63
  end
42
64
 
@@ -60,10 +82,18 @@ module CandidApiClient
60
82
  institutional_payer_ids = parsed_json["institutional_payer_ids"].to_json
61
83
  institutional_payer_ids = CandidApiClient::Payers::V4::Types::PayerIds.from_json(json_object: institutional_payer_ids)
62
84
  end
85
+ professional_claims_support = struct["professional_claims_support"]
86
+ institutional_claims_support = struct["institutional_claims_support"]
87
+ eligibility_support = struct["eligibility_support"]
88
+ remittance_support = struct["remittance_support"]
63
89
  new(
64
90
  payer_name: payer_name,
65
91
  professional_payer_ids: professional_payer_ids,
66
92
  institutional_payer_ids: institutional_payer_ids,
93
+ professional_claims_support: professional_claims_support,
94
+ institutional_claims_support: institutional_claims_support,
95
+ eligibility_support: eligibility_support,
96
+ remittance_support: remittance_support,
67
97
  additional_properties: struct
68
98
  )
69
99
  end
@@ -85,6 +115,10 @@ module CandidApiClient
85
115
  obj.payer_name.is_a?(String) != false || raise("Passed value for field obj.payer_name is not the expected type, validation failed.")
86
116
  CandidApiClient::Payers::V4::Types::PayerIds.validate_raw(obj: obj.professional_payer_ids)
87
117
  CandidApiClient::Payers::V4::Types::PayerIds.validate_raw(obj: obj.institutional_payer_ids)
118
+ obj.professional_claims_support.is_a?(CandidApiClient::Payers::V4::Types::SupportState) != false || raise("Passed value for field obj.professional_claims_support is not the expected type, validation failed.")
119
+ obj.institutional_claims_support.is_a?(CandidApiClient::Payers::V4::Types::SupportState) != false || raise("Passed value for field obj.institutional_claims_support is not the expected type, validation failed.")
120
+ obj.eligibility_support.is_a?(CandidApiClient::Payers::V4::Types::SupportState) != false || raise("Passed value for field obj.eligibility_support is not the expected type, validation failed.")
121
+ obj.remittance_support.is_a?(CandidApiClient::Payers::V4::Types::SupportState) != false || raise("Passed value for field obj.remittance_support is not the expected type, validation failed.")
88
122
  end
89
123
  end
90
124
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "payer_ids"
3
+ require_relative "primary_payer_ids"
4
4
  require_relative "../../../commons/types/street_address_long_zip"
5
5
  require "ostruct"
6
6
  require "json"
@@ -12,10 +12,12 @@ module CandidApiClient
12
12
  class Payer
13
13
  # @return [String] Auto-generated ID set on creation.
14
14
  attr_reader :payer_uuid
15
- # @return [CandidApiClient::Payers::V4::Types::PayerIds] The primary national payer IDs of the payer.
15
+ # @return [CandidApiClient::Payers::V4::Types::PrimaryPayerIds] The primary national payer IDs of the payer.
16
16
  attr_reader :payer_ids
17
17
  # @return [String] The primary display name of the payer.
18
18
  attr_reader :payer_name
19
+ # @return [Array<String>] The alternate display names of the payer.
20
+ attr_reader :alternate_payer_names
19
21
  # @return [Hash{CandidApiClient::Commons::Types::Clearinghouse => CandidApiClient::Payers::V4::Types::ClearinghousePayerInfo}]
20
22
  attr_reader :clearinghouse_payer_info
21
23
  # @return [CandidApiClient::Commons::Types::StreetAddressLongZip]
@@ -29,17 +31,19 @@ module CandidApiClient
29
31
  OMIT = Object.new
30
32
 
31
33
  # @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.
34
+ # @param payer_ids [CandidApiClient::Payers::V4::Types::PrimaryPayerIds] The primary national payer IDs of the payer.
33
35
  # @param payer_name [String] The primary display name of the payer.
36
+ # @param alternate_payer_names [Array<String>] The alternate display names of the payer.
34
37
  # @param clearinghouse_payer_info [Hash{CandidApiClient::Commons::Types::Clearinghouse => CandidApiClient::Payers::V4::Types::ClearinghousePayerInfo}]
35
38
  # @param street_address [CandidApiClient::Commons::Types::StreetAddressLongZip]
36
39
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
37
40
  # @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)
41
+ def initialize(payer_uuid:, payer_ids:, payer_name:, alternate_payer_names:, clearinghouse_payer_info:,
42
+ street_address: OMIT, additional_properties: nil)
40
43
  @payer_uuid = payer_uuid
41
44
  @payer_ids = payer_ids
42
45
  @payer_name = payer_name
46
+ @alternate_payer_names = alternate_payer_names
43
47
  @clearinghouse_payer_info = clearinghouse_payer_info
44
48
  @street_address = street_address if street_address != OMIT
45
49
  @additional_properties = additional_properties
@@ -47,6 +51,7 @@ module CandidApiClient
47
51
  "payer_uuid": payer_uuid,
48
52
  "payer_ids": payer_ids,
49
53
  "payer_name": payer_name,
54
+ "alternate_payer_names": alternate_payer_names,
50
55
  "clearinghouse_payer_info": clearinghouse_payer_info,
51
56
  "street_address": street_address
52
57
  }.reject do |_k, v|
@@ -66,9 +71,10 @@ module CandidApiClient
66
71
  payer_ids = nil
67
72
  else
68
73
  payer_ids = parsed_json["payer_ids"].to_json
69
- payer_ids = CandidApiClient::Payers::V4::Types::PayerIds.from_json(json_object: payer_ids)
74
+ payer_ids = CandidApiClient::Payers::V4::Types::PrimaryPayerIds.from_json(json_object: payer_ids)
70
75
  end
71
76
  payer_name = struct["payer_name"]
77
+ alternate_payer_names = struct["alternate_payer_names"]
72
78
  clearinghouse_payer_info = parsed_json["clearinghouse_payer_info"]&.transform_values do |value|
73
79
  value = value.to_json
74
80
  CandidApiClient::Payers::V4::Types::ClearinghousePayerInfo.from_json(json_object: value)
@@ -83,6 +89,7 @@ module CandidApiClient
83
89
  payer_uuid: payer_uuid,
84
90
  payer_ids: payer_ids,
85
91
  payer_name: payer_name,
92
+ alternate_payer_names: alternate_payer_names,
86
93
  clearinghouse_payer_info: clearinghouse_payer_info,
87
94
  street_address: street_address,
88
95
  additional_properties: struct
@@ -104,8 +111,9 @@ module CandidApiClient
104
111
  # @return [Void]
105
112
  def self.validate_raw(obj:)
106
113
  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)
114
+ CandidApiClient::Payers::V4::Types::PrimaryPayerIds.validate_raw(obj: obj.payer_ids)
108
115
  obj.payer_name.is_a?(String) != false || raise("Passed value for field obj.payer_name is not the expected type, validation failed.")
116
+ obj.alternate_payer_names.is_a?(Array) != false || raise("Passed value for field obj.alternate_payer_names is not the expected type, validation failed.")
109
117
  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
118
  obj.street_address.nil? || CandidApiClient::Commons::Types::StreetAddressLongZip.validate_raw(obj: obj.street_address)
111
119
  end
@@ -1,6 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative "support_state"
4
3
  require "ostruct"
5
4
  require "json"
6
5
 
@@ -15,12 +14,6 @@ module CandidApiClient
15
14
  attr_reader :eligibility_payer_id
16
15
  # @return [String] The payer ID for remittance
17
16
  attr_reader :remittance_payer_id
18
- # @return [CandidApiClient::Payers::V4::Types::SupportState] The support state for claims submission
19
- attr_reader :claims_support
20
- # @return [CandidApiClient::Payers::V4::Types::SupportState] The support state for eligibility
21
- attr_reader :eligibility_support
22
- # @return [CandidApiClient::Payers::V4::Types::SupportState] The support state for remittance
23
- attr_reader :remittance_support
24
17
  # @return [OpenStruct] Additional properties unmapped to the current class definition
25
18
  attr_reader :additional_properties
26
19
  # @return [Object]
@@ -32,28 +25,21 @@ module CandidApiClient
32
25
  # @param claims_payer_id [String] The payer ID for claim submission
33
26
  # @param eligibility_payer_id [String] The payer ID for eligibility
34
27
  # @param remittance_payer_id [String] The payer ID for remittance
35
- # @param claims_support [CandidApiClient::Payers::V4::Types::SupportState] The support state for claims submission
36
- # @param eligibility_support [CandidApiClient::Payers::V4::Types::SupportState] The support state for eligibility
37
- # @param remittance_support [CandidApiClient::Payers::V4::Types::SupportState] The support state for remittance
38
28
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
39
29
  # @return [CandidApiClient::Payers::V4::Types::PayerIds]
40
- def initialize(claims_payer_id:, eligibility_payer_id:, remittance_payer_id:, claims_support:,
41
- eligibility_support:, remittance_support:, additional_properties: nil)
42
- @claims_payer_id = claims_payer_id
43
- @eligibility_payer_id = eligibility_payer_id
44
- @remittance_payer_id = remittance_payer_id
45
- @claims_support = claims_support
46
- @eligibility_support = eligibility_support
47
- @remittance_support = remittance_support
30
+ def initialize(claims_payer_id: OMIT, eligibility_payer_id: OMIT, remittance_payer_id: OMIT,
31
+ additional_properties: nil)
32
+ @claims_payer_id = claims_payer_id if claims_payer_id != OMIT
33
+ @eligibility_payer_id = eligibility_payer_id if eligibility_payer_id != OMIT
34
+ @remittance_payer_id = remittance_payer_id if remittance_payer_id != OMIT
48
35
  @additional_properties = additional_properties
49
36
  @_field_set = {
50
37
  "claims_payer_id": claims_payer_id,
51
38
  "eligibility_payer_id": eligibility_payer_id,
52
- "remittance_payer_id": remittance_payer_id,
53
- "claims_support": claims_support,
54
- "eligibility_support": eligibility_support,
55
- "remittance_support": remittance_support
56
- }
39
+ "remittance_payer_id": remittance_payer_id
40
+ }.reject do |_k, v|
41
+ v == OMIT
42
+ end
57
43
  end
58
44
 
59
45
  # Deserialize a JSON object to an instance of PayerIds
@@ -65,16 +51,10 @@ module CandidApiClient
65
51
  claims_payer_id = struct["claims_payer_id"]
66
52
  eligibility_payer_id = struct["eligibility_payer_id"]
67
53
  remittance_payer_id = struct["remittance_payer_id"]
68
- claims_support = struct["claims_support"]
69
- eligibility_support = struct["eligibility_support"]
70
- remittance_support = struct["remittance_support"]
71
54
  new(
72
55
  claims_payer_id: claims_payer_id,
73
56
  eligibility_payer_id: eligibility_payer_id,
74
57
  remittance_payer_id: remittance_payer_id,
75
- claims_support: claims_support,
76
- eligibility_support: eligibility_support,
77
- remittance_support: remittance_support,
78
58
  additional_properties: struct
79
59
  )
80
60
  end
@@ -93,12 +73,9 @@ module CandidApiClient
93
73
  # @param obj [Object]
94
74
  # @return [Void]
95
75
  def self.validate_raw(obj:)
96
- obj.claims_payer_id.is_a?(String) != false || raise("Passed value for field obj.claims_payer_id is not the expected type, validation failed.")
97
- obj.eligibility_payer_id.is_a?(String) != false || raise("Passed value for field obj.eligibility_payer_id is not the expected type, validation failed.")
98
- obj.remittance_payer_id.is_a?(String) != false || raise("Passed value for field obj.remittance_payer_id is not the expected type, validation failed.")
99
- obj.claims_support.is_a?(CandidApiClient::Payers::V4::Types::SupportState) != false || raise("Passed value for field obj.claims_support is not the expected type, validation failed.")
100
- obj.eligibility_support.is_a?(CandidApiClient::Payers::V4::Types::SupportState) != false || raise("Passed value for field obj.eligibility_support is not the expected type, validation failed.")
101
- obj.remittance_support.is_a?(CandidApiClient::Payers::V4::Types::SupportState) != false || raise("Passed value for field obj.remittance_support is not the expected type, validation failed.")
76
+ obj.claims_payer_id&.is_a?(String) != false || raise("Passed value for field obj.claims_payer_id is not the expected type, validation failed.")
77
+ obj.eligibility_payer_id&.is_a?(String) != false || raise("Passed value for field obj.eligibility_payer_id is not the expected type, validation failed.")
78
+ obj.remittance_payer_id&.is_a?(String) != false || raise("Passed value for field obj.remittance_payer_id is not the expected type, validation failed.")
102
79
  end
103
80
  end
104
81
  end
@@ -0,0 +1,84 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "ostruct"
4
+ require "json"
5
+
6
+ module CandidApiClient
7
+ module Payers
8
+ module V4
9
+ module Types
10
+ class PrimaryPayerIds
11
+ # @return [String] The payer ID for claim submission
12
+ attr_reader :claims_payer_id
13
+ # @return [String] The payer ID for eligibility
14
+ attr_reader :eligibility_payer_id
15
+ # @return [String] The payer ID for remittance
16
+ attr_reader :remittance_payer_id
17
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
18
+ attr_reader :additional_properties
19
+ # @return [Object]
20
+ attr_reader :_field_set
21
+ protected :_field_set
22
+
23
+ OMIT = Object.new
24
+
25
+ # @param claims_payer_id [String] The payer ID for claim submission
26
+ # @param eligibility_payer_id [String] The payer ID for eligibility
27
+ # @param remittance_payer_id [String] The payer ID for remittance
28
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
29
+ # @return [CandidApiClient::Payers::V4::Types::PrimaryPayerIds]
30
+ def initialize(claims_payer_id:, eligibility_payer_id: OMIT, remittance_payer_id: OMIT,
31
+ additional_properties: nil)
32
+ @claims_payer_id = claims_payer_id
33
+ @eligibility_payer_id = eligibility_payer_id if eligibility_payer_id != OMIT
34
+ @remittance_payer_id = remittance_payer_id if remittance_payer_id != OMIT
35
+ @additional_properties = additional_properties
36
+ @_field_set = {
37
+ "claims_payer_id": claims_payer_id,
38
+ "eligibility_payer_id": eligibility_payer_id,
39
+ "remittance_payer_id": remittance_payer_id
40
+ }.reject do |_k, v|
41
+ v == OMIT
42
+ end
43
+ end
44
+
45
+ # Deserialize a JSON object to an instance of PrimaryPayerIds
46
+ #
47
+ # @param json_object [String]
48
+ # @return [CandidApiClient::Payers::V4::Types::PrimaryPayerIds]
49
+ def self.from_json(json_object:)
50
+ struct = JSON.parse(json_object, object_class: OpenStruct)
51
+ claims_payer_id = struct["claims_payer_id"]
52
+ eligibility_payer_id = struct["eligibility_payer_id"]
53
+ remittance_payer_id = struct["remittance_payer_id"]
54
+ new(
55
+ claims_payer_id: claims_payer_id,
56
+ eligibility_payer_id: eligibility_payer_id,
57
+ remittance_payer_id: remittance_payer_id,
58
+ additional_properties: struct
59
+ )
60
+ end
61
+
62
+ # Serialize an instance of PrimaryPayerIds to a JSON object
63
+ #
64
+ # @return [String]
65
+ def to_json(*_args)
66
+ @_field_set&.to_json
67
+ end
68
+
69
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
70
+ # hash and check each fields type against the current object's property
71
+ # definitions.
72
+ #
73
+ # @param obj [Object]
74
+ # @return [Void]
75
+ def self.validate_raw(obj:)
76
+ obj.claims_payer_id.is_a?(String) != false || raise("Passed value for field obj.claims_payer_id is not the expected type, validation failed.")
77
+ obj.eligibility_payer_id&.is_a?(String) != false || raise("Passed value for field obj.eligibility_payer_id is not the expected type, validation failed.")
78
+ obj.remittance_payer_id&.is_a?(String) != false || raise("Passed value for field obj.remittance_payer_id is not the expected type, validation failed.")
79
+ end
80
+ end
81
+ end
82
+ end
83
+ end
84
+ end
@@ -114,6 +114,7 @@ module CandidApiClient
114
114
  # * :authorizations (Array<CandidApiClient::PreEncounter::Patients::V1::Types::Authorization>)
115
115
  # * :referrals (Array<CandidApiClient::PreEncounter::Patients::V1::Types::Referral>)
116
116
  # * :primary_service_facility_id (String)
117
+ # * :service_facilities (Array<CandidApiClient::PreEncounter::Patients::V1::Types::PatientServiceFacility>)
117
118
  # * :do_not_invoice_reason (CandidApiClient::PreEncounter::Patients::V1::Types::DoNotInvoiceReason)
118
119
  # * :note_ids (Array<String>)
119
120
  # * :tag_ids (Array<String>)
@@ -259,6 +260,7 @@ module CandidApiClient
259
260
  # * :authorizations (Array<CandidApiClient::PreEncounter::Patients::V1::Types::Authorization>)
260
261
  # * :referrals (Array<CandidApiClient::PreEncounter::Patients::V1::Types::Referral>)
261
262
  # * :primary_service_facility_id (String)
263
+ # * :service_facilities (Array<CandidApiClient::PreEncounter::Patients::V1::Types::PatientServiceFacility>)
262
264
  # * :do_not_invoice_reason (CandidApiClient::PreEncounter::Patients::V1::Types::DoNotInvoiceReason)
263
265
  # * :note_ids (Array<String>)
264
266
  # * :tag_ids (Array<String>)
@@ -291,7 +293,7 @@ module CandidApiClient
291
293
  # @return [CandidApiClient::PreEncounter::Patients::V1::Types::Patient]
292
294
  # @example
293
295
  # api = CandidApiClient::Client.new(base_url: "https://api.example.com", environment: CandidApiClient::Environment::PRODUCTION)
294
- # api.pre_encounter.patients.v_1.create_with_mrn(request: { name: { family: "family", given: ["given", "given"], use: USUAL }, other_names: [{ family: "family", given: ["given", "given"], use: USUAL }, { family: "family", given: ["given", "given"], use: USUAL }], birth_date: DateTime.parse(2023-01-15), biological_sex: FEMALE, primary_address: { use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }, other_addresses: [{ use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }, { use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }], other_telecoms: [{ value: "value", use: HOME }, { value: "value", use: HOME }], contacts: [{ relationship: [SELF, SELF], name: { family: "family", given: ["given", "given"], use: USUAL }, telecoms: [{ value: "value", use: HOME }, { value: "value", use: HOME }], addresses: [{ use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }, { use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }] }, { relationship: [SELF, SELF], name: { family: "family", given: ["given", "given"], use: USUAL }, telecoms: [{ value: "value", use: HOME }, { value: "value", use: HOME }], addresses: [{ use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }, { use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }] }], general_practitioners: [{ name: { family: "family", given: ["given", "given"], use: USUAL }, telecoms: [{ value: "value", use: HOME }, { value: "value", use: HOME }] }, { name: { family: "family", given: ["given", "given"], use: USUAL }, telecoms: [{ value: "value", use: HOME }, { value: "value", use: HOME }] }], filing_order: { coverages: ["d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32"] }, mrn: "mrn" })
296
+ # api.pre_encounter.patients.v_1.create_with_mrn(request: { mrn: "mrn", name: { family: "family", given: ["given", "given"], use: USUAL }, other_names: [{ family: "family", given: ["given", "given"], use: USUAL }, { family: "family", given: ["given", "given"], use: USUAL }], birth_date: DateTime.parse(2023-01-15), biological_sex: FEMALE, primary_address: { use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }, other_addresses: [{ use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }, { use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }], other_telecoms: [{ value: "value", use: HOME }, { value: "value", use: HOME }], contacts: [{ relationship: [SELF, SELF], name: { family: "family", given: ["given", "given"], use: USUAL }, telecoms: [{ value: "value", use: HOME }, { value: "value", use: HOME }], addresses: [{ use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }, { use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }] }, { relationship: [SELF, SELF], name: { family: "family", given: ["given", "given"], use: USUAL }, telecoms: [{ value: "value", use: HOME }, { value: "value", use: HOME }], addresses: [{ use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }, { use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }] }], general_practitioners: [{ name: { family: "family", given: ["given", "given"], use: USUAL }, telecoms: [{ value: "value", use: HOME }, { value: "value", use: HOME }] }, { name: { family: "family", given: ["given", "given"], use: USUAL }, telecoms: [{ value: "value", use: HOME }, { value: "value", use: HOME }] }], filing_order: { coverages: ["d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32"] } })
295
297
  def create_with_mrn(request:, skip_duplicate_check: nil, request_options: nil)
296
298
  response = @request_client.conn.post do |req|
297
299
  req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
@@ -548,6 +550,7 @@ module CandidApiClient
548
550
  # * :authorizations (Array<CandidApiClient::PreEncounter::Patients::V1::Types::Authorization>)
549
551
  # * :referrals (Array<CandidApiClient::PreEncounter::Patients::V1::Types::Referral>)
550
552
  # * :primary_service_facility_id (String)
553
+ # * :service_facilities (Array<CandidApiClient::PreEncounter::Patients::V1::Types::PatientServiceFacility>)
551
554
  # * :do_not_invoice_reason (CandidApiClient::PreEncounter::Patients::V1::Types::DoNotInvoiceReason)
552
555
  # * :note_ids (Array<String>)
553
556
  # * :tag_ids (Array<String>)
@@ -813,6 +816,7 @@ module CandidApiClient
813
816
  # * :authorizations (Array<CandidApiClient::PreEncounter::Patients::V1::Types::Authorization>)
814
817
  # * :referrals (Array<CandidApiClient::PreEncounter::Patients::V1::Types::Referral>)
815
818
  # * :primary_service_facility_id (String)
819
+ # * :service_facilities (Array<CandidApiClient::PreEncounter::Patients::V1::Types::PatientServiceFacility>)
816
820
  # * :do_not_invoice_reason (CandidApiClient::PreEncounter::Patients::V1::Types::DoNotInvoiceReason)
817
821
  # * :note_ids (Array<String>)
818
822
  # * :tag_ids (Array<String>)
@@ -960,6 +964,7 @@ module CandidApiClient
960
964
  # * :authorizations (Array<CandidApiClient::PreEncounter::Patients::V1::Types::Authorization>)
961
965
  # * :referrals (Array<CandidApiClient::PreEncounter::Patients::V1::Types::Referral>)
962
966
  # * :primary_service_facility_id (String)
967
+ # * :service_facilities (Array<CandidApiClient::PreEncounter::Patients::V1::Types::PatientServiceFacility>)
963
968
  # * :do_not_invoice_reason (CandidApiClient::PreEncounter::Patients::V1::Types::DoNotInvoiceReason)
964
969
  # * :note_ids (Array<String>)
965
970
  # * :tag_ids (Array<String>)
@@ -992,7 +997,7 @@ module CandidApiClient
992
997
  # @return [CandidApiClient::PreEncounter::Patients::V1::Types::Patient]
993
998
  # @example
994
999
  # api = CandidApiClient::Client.new(base_url: "https://api.example.com", environment: CandidApiClient::Environment::PRODUCTION)
995
- # api.pre_encounter.patients.v_1.create_with_mrn(request: { name: { family: "family", given: ["given", "given"], use: USUAL }, other_names: [{ family: "family", given: ["given", "given"], use: USUAL }, { family: "family", given: ["given", "given"], use: USUAL }], birth_date: DateTime.parse(2023-01-15), biological_sex: FEMALE, primary_address: { use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }, other_addresses: [{ use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }, { use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }], other_telecoms: [{ value: "value", use: HOME }, { value: "value", use: HOME }], contacts: [{ relationship: [SELF, SELF], name: { family: "family", given: ["given", "given"], use: USUAL }, telecoms: [{ value: "value", use: HOME }, { value: "value", use: HOME }], addresses: [{ use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }, { use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }] }, { relationship: [SELF, SELF], name: { family: "family", given: ["given", "given"], use: USUAL }, telecoms: [{ value: "value", use: HOME }, { value: "value", use: HOME }], addresses: [{ use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }, { use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }] }], general_practitioners: [{ name: { family: "family", given: ["given", "given"], use: USUAL }, telecoms: [{ value: "value", use: HOME }, { value: "value", use: HOME }] }, { name: { family: "family", given: ["given", "given"], use: USUAL }, telecoms: [{ value: "value", use: HOME }, { value: "value", use: HOME }] }], filing_order: { coverages: ["d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32"] }, mrn: "mrn" })
1000
+ # api.pre_encounter.patients.v_1.create_with_mrn(request: { mrn: "mrn", name: { family: "family", given: ["given", "given"], use: USUAL }, other_names: [{ family: "family", given: ["given", "given"], use: USUAL }, { family: "family", given: ["given", "given"], use: USUAL }], birth_date: DateTime.parse(2023-01-15), biological_sex: FEMALE, primary_address: { use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }, other_addresses: [{ use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }, { use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }], other_telecoms: [{ value: "value", use: HOME }, { value: "value", use: HOME }], contacts: [{ relationship: [SELF, SELF], name: { family: "family", given: ["given", "given"], use: USUAL }, telecoms: [{ value: "value", use: HOME }, { value: "value", use: HOME }], addresses: [{ use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }, { use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }] }, { relationship: [SELF, SELF], name: { family: "family", given: ["given", "given"], use: USUAL }, telecoms: [{ value: "value", use: HOME }, { value: "value", use: HOME }], addresses: [{ use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }, { use: HOME, line: ["line", "line"], city: "city", state: "state", postal_code: "postal_code", country: "country" }] }], general_practitioners: [{ name: { family: "family", given: ["given", "given"], use: USUAL }, telecoms: [{ value: "value", use: HOME }, { value: "value", use: HOME }] }, { name: { family: "family", given: ["given", "given"], use: USUAL }, telecoms: [{ value: "value", use: HOME }, { value: "value", use: HOME }] }], filing_order: { coverages: ["d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32"] } })
996
1001
  def create_with_mrn(request:, skip_duplicate_check: nil, request_options: nil)
997
1002
  Async do
998
1003
  response = @request_client.conn.post do |req|
@@ -1261,6 +1266,7 @@ module CandidApiClient
1261
1266
  # * :authorizations (Array<CandidApiClient::PreEncounter::Patients::V1::Types::Authorization>)
1262
1267
  # * :referrals (Array<CandidApiClient::PreEncounter::Patients::V1::Types::Referral>)
1263
1268
  # * :primary_service_facility_id (String)
1269
+ # * :service_facilities (Array<CandidApiClient::PreEncounter::Patients::V1::Types::PatientServiceFacility>)
1264
1270
  # * :do_not_invoice_reason (CandidApiClient::PreEncounter::Patients::V1::Types::DoNotInvoiceReason)
1265
1271
  # * :note_ids (Array<String>)
1266
1272
  # * :tag_ids (Array<String>)
@@ -20,6 +20,7 @@ require_relative "../../../common/types/canonical_non_insurance_payer_associatio
20
20
  require_relative "guarantor"
21
21
  require_relative "authorization"
22
22
  require_relative "referral"
23
+ require_relative "patient_service_facility"
23
24
  require_relative "do_not_invoice_reason"
24
25
  require_relative "origination_detail"
25
26
  require_relative "inferred_patient_metadata"
@@ -105,6 +106,8 @@ module CandidApiClient
105
106
  attr_reader :referrals
106
107
  # @return [String]
107
108
  attr_reader :primary_service_facility_id
109
+ # @return [Array<CandidApiClient::PreEncounter::Patients::V1::Types::PatientServiceFacility>] Associated service facilities for this patient.
110
+ attr_reader :service_facilities
108
111
  # @return [CandidApiClient::PreEncounter::Patients::V1::Types::DoNotInvoiceReason] If this value is defined, the customer will not be invoiced.
109
112
  attr_reader :do_not_invoice_reason
110
113
  # @return [Array<String>]
@@ -161,6 +164,7 @@ module CandidApiClient
161
164
  # @param authorizations [Array<CandidApiClient::PreEncounter::Patients::V1::Types::Authorization>]
162
165
  # @param referrals [Array<CandidApiClient::PreEncounter::Patients::V1::Types::Referral>]
163
166
  # @param primary_service_facility_id [String]
167
+ # @param service_facilities [Array<CandidApiClient::PreEncounter::Patients::V1::Types::PatientServiceFacility>] Associated service facilities for this patient.
164
168
  # @param do_not_invoice_reason [CandidApiClient::PreEncounter::Patients::V1::Types::DoNotInvoiceReason] If this value is defined, the customer will not be invoiced.
165
169
  # @param note_ids [Array<String>]
166
170
  # @param tag_ids [Array<String>]
@@ -169,7 +173,7 @@ module CandidApiClient
169
173
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
170
174
  # @return [CandidApiClient::PreEncounter::Patients::V1::Types::MutablePatient]
171
175
  def initialize(name:, other_names:, birth_date:, biological_sex:, primary_address:, other_addresses:, other_telecoms:, contacts:, general_practitioners:, filing_order:, other_identifiers: OMIT, gender: OMIT,
172
- social_security_number: OMIT, sexual_orientation: OMIT, pronouns: OMIT, race: OMIT, ethnicity: OMIT, disability_status: OMIT, marital_status: OMIT, deceased: OMIT, multiple_birth: OMIT, primary_telecom: OMIT, email: OMIT, electronic_communication_opt_in: OMIT, photo: OMIT, language: OMIT, external_provenance: OMIT, non_insurance_payers: OMIT, non_insurance_payer_associations: OMIT, guarantor: OMIT, self_pay: OMIT, authorizations: OMIT, referrals: OMIT, primary_service_facility_id: OMIT, do_not_invoice_reason: OMIT, note_ids: OMIT, tag_ids: OMIT, origination_detail: OMIT, inferred_patient_metadata: OMIT, additional_properties: nil)
176
+ social_security_number: OMIT, sexual_orientation: OMIT, pronouns: OMIT, race: OMIT, ethnicity: OMIT, disability_status: OMIT, marital_status: OMIT, deceased: OMIT, multiple_birth: OMIT, primary_telecom: OMIT, email: OMIT, electronic_communication_opt_in: OMIT, photo: OMIT, language: OMIT, external_provenance: OMIT, non_insurance_payers: OMIT, non_insurance_payer_associations: OMIT, guarantor: OMIT, self_pay: OMIT, authorizations: OMIT, referrals: OMIT, primary_service_facility_id: OMIT, service_facilities: OMIT, do_not_invoice_reason: OMIT, note_ids: OMIT, tag_ids: OMIT, origination_detail: OMIT, inferred_patient_metadata: OMIT, additional_properties: nil)
173
177
  @name = name
174
178
  @other_names = other_names
175
179
  @other_identifiers = other_identifiers if other_identifiers != OMIT
@@ -208,6 +212,7 @@ module CandidApiClient
208
212
  @authorizations = authorizations if authorizations != OMIT
209
213
  @referrals = referrals if referrals != OMIT
210
214
  @primary_service_facility_id = primary_service_facility_id if primary_service_facility_id != OMIT
215
+ @service_facilities = service_facilities if service_facilities != OMIT
211
216
  @do_not_invoice_reason = do_not_invoice_reason if do_not_invoice_reason != OMIT
212
217
  @note_ids = note_ids if note_ids != OMIT
213
218
  @tag_ids = tag_ids if tag_ids != OMIT
@@ -249,6 +254,7 @@ module CandidApiClient
249
254
  "authorizations": authorizations,
250
255
  "referrals": referrals,
251
256
  "primary_service_facility_id": primary_service_facility_id,
257
+ "service_facilities": service_facilities,
252
258
  "do_not_invoice_reason": do_not_invoice_reason,
253
259
  "note_ids": note_ids,
254
260
  "tag_ids": tag_ids,
@@ -357,6 +363,10 @@ module CandidApiClient
357
363
  CandidApiClient::PreEncounter::Patients::V1::Types::Referral.from_json(json_object: item)
358
364
  end
359
365
  primary_service_facility_id = struct["primary_service_facility_id"]
366
+ service_facilities = parsed_json["service_facilities"]&.map do |item|
367
+ item = item.to_json
368
+ CandidApiClient::PreEncounter::Patients::V1::Types::PatientServiceFacility.from_json(json_object: item)
369
+ end
360
370
  do_not_invoice_reason = struct["do_not_invoice_reason"]
361
371
  note_ids = struct["note_ids"]
362
372
  tag_ids = struct["tag_ids"]
@@ -407,6 +417,7 @@ module CandidApiClient
407
417
  authorizations: authorizations,
408
418
  referrals: referrals,
409
419
  primary_service_facility_id: primary_service_facility_id,
420
+ service_facilities: service_facilities,
410
421
  do_not_invoice_reason: do_not_invoice_reason,
411
422
  note_ids: note_ids,
412
423
  tag_ids: tag_ids,
@@ -464,6 +475,7 @@ module CandidApiClient
464
475
  obj.authorizations&.is_a?(Array) != false || raise("Passed value for field obj.authorizations is not the expected type, validation failed.")
465
476
  obj.referrals&.is_a?(Array) != false || raise("Passed value for field obj.referrals is not the expected type, validation failed.")
466
477
  obj.primary_service_facility_id&.is_a?(String) != false || raise("Passed value for field obj.primary_service_facility_id is not the expected type, validation failed.")
478
+ obj.service_facilities&.is_a?(Array) != false || raise("Passed value for field obj.service_facilities is not the expected type, validation failed.")
467
479
  obj.do_not_invoice_reason&.is_a?(CandidApiClient::PreEncounter::Patients::V1::Types::DoNotInvoiceReason) != false || raise("Passed value for field obj.do_not_invoice_reason is not the expected type, validation failed.")
468
480
  obj.note_ids&.is_a?(Array) != false || raise("Passed value for field obj.note_ids is not the expected type, validation failed.")
469
481
  obj.tag_ids&.is_a?(Array) != false || raise("Passed value for field obj.tag_ids is not the expected type, validation failed.")