candidhealth 0.43.0 → 0.45.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 (26) hide show
  1. checksums.yaml +4 -4
  2. data/lib/candidhealth/charge_capture/v_1/client.rb +506 -483
  3. data/lib/candidhealth/charge_capture/v_1/types/charge_capture_data.rb +184 -174
  4. data/lib/candidhealth/charge_capture/v_1/types/charge_external_id_conflict_error_message.rb +62 -0
  5. data/lib/candidhealth/charge_capture_bundles/v_1/types/charge_capture_claim_creation.rb +20 -4
  6. data/lib/candidhealth/commons/types/street_address_optional_base.rb +99 -0
  7. data/lib/candidhealth/commons/types/street_address_short_zip_optional.rb +107 -0
  8. data/lib/candidhealth/encounter_attachments/v_1/client.rb +2 -2
  9. data/lib/candidhealth/encounter_attachments/v_1/types/encounter_attachment_type.rb +2 -0
  10. data/lib/candidhealth/encounter_providers/v_2/client.rb +16 -16
  11. data/lib/candidhealth/encounter_providers/v_2/types/billing_provider_update_with_optional_address.rb +160 -0
  12. data/lib/candidhealth/encounter_providers/v_2/types/initial_referring_provider_update_with_optional_address.rb +134 -0
  13. data/lib/candidhealth/encounter_providers/v_2/types/referring_provider_update_with_optional_address.rb +125 -0
  14. data/lib/candidhealth/encounter_providers/v_2/types/rendering_provider_update_with_optional_address.rb +125 -0
  15. data/lib/candidhealth/encounter_providers/v_2/types/supervising_provider_update_with_optional_address.rb +125 -0
  16. data/lib/candidhealth/encounters/v_4/client.rb +263 -233
  17. data/lib/candidhealth/encounters/v_4/types/encounter.rb +11 -1
  18. data/lib/candidhealth/encounters/v_4/types/encounter_optional.rb +12 -170
  19. data/lib/candidhealth/guarantor/v_1/client.rb +2 -2
  20. data/lib/candidhealth/individual/types/patient_update_with_optional_address.rb +179 -0
  21. data/lib/candidhealth/service_facility/types/encounter_service_facility_update_with_optional_address.rb +113 -0
  22. data/lib/candidhealth/service_lines/v_2/client.rb +2 -2
  23. data/lib/requests.rb +2 -2
  24. data/lib/types_export.rb +10 -1
  25. metadata +12 -3
  26. data/lib/candidhealth/billing_notes/v_2/types/billing_note_optional.rb +0 -112
@@ -0,0 +1,179 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "gender"
4
+ require "date"
5
+ require_relative "../../commons/types/street_address_short_zip_optional"
6
+ require_relative "../../commons/types/phone_number"
7
+ require_relative "patient_non_insurance_payer_info_create"
8
+ require "ostruct"
9
+ require "json"
10
+
11
+ module CandidApiClient
12
+ module Individual
13
+ module Types
14
+ class PatientUpdateWithOptionalAddress
15
+ # @return [String]
16
+ attr_reader :first_name
17
+ # @return [String]
18
+ attr_reader :last_name
19
+ # @return [CandidApiClient::Individual::Types::Gender]
20
+ attr_reader :gender
21
+ # @return [String] The ID used to identify this individual in your system. For example, your
22
+ # internal patient ID or an EHR patient ID.
23
+ attr_reader :external_id
24
+ # @return [Date] Box 3 on the CMS-1500 claim form. The date format should be in ISO 8601 date;
25
+ # formatted YYYY-MM-DD (i.e. 2012-02-01)
26
+ attr_reader :date_of_birth
27
+ # @return [CandidApiClient::Commons::Types::StreetAddressShortZipOptional] Box 5 on the CMS-1500 claim form.
28
+ attr_reader :address
29
+ # @return [Array<CandidApiClient::Commons::Types::PhoneNumber>]
30
+ attr_reader :phone_numbers
31
+ # @return [Boolean]
32
+ attr_reader :phone_consent
33
+ # @return [String]
34
+ attr_reader :email
35
+ # @return [Boolean]
36
+ attr_reader :email_consent
37
+ # @return [Array<String>] On update, we will replace the existing list of non-insurance payers with the
38
+ # new list if populated.
39
+ attr_reader :non_insurance_payers
40
+ # @return [Array<CandidApiClient::Individual::Types::PatientNonInsurancePayerInfoCreate>] On update, we will replace the existing list of non-insurance payers with the
41
+ # new list if populated.
42
+ attr_reader :non_insurance_payers_info
43
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
44
+ attr_reader :additional_properties
45
+ # @return [Object]
46
+ attr_reader :_field_set
47
+ protected :_field_set
48
+
49
+ OMIT = Object.new
50
+
51
+ # @param first_name [String]
52
+ # @param last_name [String]
53
+ # @param gender [CandidApiClient::Individual::Types::Gender]
54
+ # @param external_id [String] The ID used to identify this individual in your system. For example, your
55
+ # internal patient ID or an EHR patient ID.
56
+ # @param date_of_birth [Date] Box 3 on the CMS-1500 claim form. The date format should be in ISO 8601 date;
57
+ # formatted YYYY-MM-DD (i.e. 2012-02-01)
58
+ # @param address [CandidApiClient::Commons::Types::StreetAddressShortZipOptional] Box 5 on the CMS-1500 claim form.
59
+ # @param phone_numbers [Array<CandidApiClient::Commons::Types::PhoneNumber>]
60
+ # @param phone_consent [Boolean]
61
+ # @param email [String]
62
+ # @param email_consent [Boolean]
63
+ # @param non_insurance_payers [Array<String>] On update, we will replace the existing list of non-insurance payers with the
64
+ # new list if populated.
65
+ # @param non_insurance_payers_info [Array<CandidApiClient::Individual::Types::PatientNonInsurancePayerInfoCreate>] On update, we will replace the existing list of non-insurance payers with the
66
+ # new list if populated.
67
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
68
+ # @return [CandidApiClient::Individual::Types::PatientUpdateWithOptionalAddress]
69
+ def initialize(first_name: OMIT, last_name: OMIT, gender: OMIT, external_id: OMIT, date_of_birth: OMIT,
70
+ address: OMIT, phone_numbers: OMIT, phone_consent: OMIT, email: OMIT, email_consent: OMIT, non_insurance_payers: OMIT, non_insurance_payers_info: OMIT, additional_properties: nil)
71
+ @first_name = first_name if first_name != OMIT
72
+ @last_name = last_name if last_name != OMIT
73
+ @gender = gender if gender != OMIT
74
+ @external_id = external_id if external_id != OMIT
75
+ @date_of_birth = date_of_birth if date_of_birth != OMIT
76
+ @address = address if address != OMIT
77
+ @phone_numbers = phone_numbers if phone_numbers != OMIT
78
+ @phone_consent = phone_consent if phone_consent != OMIT
79
+ @email = email if email != OMIT
80
+ @email_consent = email_consent if email_consent != OMIT
81
+ @non_insurance_payers = non_insurance_payers if non_insurance_payers != OMIT
82
+ @non_insurance_payers_info = non_insurance_payers_info if non_insurance_payers_info != OMIT
83
+ @additional_properties = additional_properties
84
+ @_field_set = {
85
+ "first_name": first_name,
86
+ "last_name": last_name,
87
+ "gender": gender,
88
+ "external_id": external_id,
89
+ "date_of_birth": date_of_birth,
90
+ "address": address,
91
+ "phone_numbers": phone_numbers,
92
+ "phone_consent": phone_consent,
93
+ "email": email,
94
+ "email_consent": email_consent,
95
+ "non_insurance_payers": non_insurance_payers,
96
+ "non_insurance_payers_info": non_insurance_payers_info
97
+ }.reject do |_k, v|
98
+ v == OMIT
99
+ end
100
+ end
101
+
102
+ # Deserialize a JSON object to an instance of PatientUpdateWithOptionalAddress
103
+ #
104
+ # @param json_object [String]
105
+ # @return [CandidApiClient::Individual::Types::PatientUpdateWithOptionalAddress]
106
+ def self.from_json(json_object:)
107
+ struct = JSON.parse(json_object, object_class: OpenStruct)
108
+ parsed_json = JSON.parse(json_object)
109
+ first_name = struct["first_name"]
110
+ last_name = struct["last_name"]
111
+ gender = struct["gender"]
112
+ external_id = struct["external_id"]
113
+ date_of_birth = (Date.parse(parsed_json["date_of_birth"]) unless parsed_json["date_of_birth"].nil?)
114
+ if parsed_json["address"].nil?
115
+ address = nil
116
+ else
117
+ address = parsed_json["address"].to_json
118
+ address = CandidApiClient::Commons::Types::StreetAddressShortZipOptional.from_json(json_object: address)
119
+ end
120
+ phone_numbers = parsed_json["phone_numbers"]&.map do |item|
121
+ item = item.to_json
122
+ CandidApiClient::Commons::Types::PhoneNumber.from_json(json_object: item)
123
+ end
124
+ phone_consent = struct["phone_consent"]
125
+ email = struct["email"]
126
+ email_consent = struct["email_consent"]
127
+ non_insurance_payers = struct["non_insurance_payers"]
128
+ non_insurance_payers_info = parsed_json["non_insurance_payers_info"]&.map do |item|
129
+ item = item.to_json
130
+ CandidApiClient::Individual::Types::PatientNonInsurancePayerInfoCreate.from_json(json_object: item)
131
+ end
132
+ new(
133
+ first_name: first_name,
134
+ last_name: last_name,
135
+ gender: gender,
136
+ external_id: external_id,
137
+ date_of_birth: date_of_birth,
138
+ address: address,
139
+ phone_numbers: phone_numbers,
140
+ phone_consent: phone_consent,
141
+ email: email,
142
+ email_consent: email_consent,
143
+ non_insurance_payers: non_insurance_payers,
144
+ non_insurance_payers_info: non_insurance_payers_info,
145
+ additional_properties: struct
146
+ )
147
+ end
148
+
149
+ # Serialize an instance of PatientUpdateWithOptionalAddress to a JSON object
150
+ #
151
+ # @return [String]
152
+ def to_json(*_args)
153
+ @_field_set&.to_json
154
+ end
155
+
156
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
157
+ # hash and check each fields type against the current object's property
158
+ # definitions.
159
+ #
160
+ # @param obj [Object]
161
+ # @return [Void]
162
+ def self.validate_raw(obj:)
163
+ obj.first_name&.is_a?(String) != false || raise("Passed value for field obj.first_name is not the expected type, validation failed.")
164
+ obj.last_name&.is_a?(String) != false || raise("Passed value for field obj.last_name is not the expected type, validation failed.")
165
+ obj.gender&.is_a?(CandidApiClient::Individual::Types::Gender) != false || raise("Passed value for field obj.gender is not the expected type, validation failed.")
166
+ obj.external_id&.is_a?(String) != false || raise("Passed value for field obj.external_id is not the expected type, validation failed.")
167
+ obj.date_of_birth&.is_a?(Date) != false || raise("Passed value for field obj.date_of_birth is not the expected type, validation failed.")
168
+ obj.address.nil? || CandidApiClient::Commons::Types::StreetAddressShortZipOptional.validate_raw(obj: obj.address)
169
+ obj.phone_numbers&.is_a?(Array) != false || raise("Passed value for field obj.phone_numbers is not the expected type, validation failed.")
170
+ obj.phone_consent&.is_a?(Boolean) != false || raise("Passed value for field obj.phone_consent is not the expected type, validation failed.")
171
+ obj.email&.is_a?(String) != false || raise("Passed value for field obj.email is not the expected type, validation failed.")
172
+ obj.email_consent&.is_a?(Boolean) != false || raise("Passed value for field obj.email_consent is not the expected type, validation failed.")
173
+ obj.non_insurance_payers&.is_a?(Array) != false || raise("Passed value for field obj.non_insurance_payers is not the expected type, validation failed.")
174
+ obj.non_insurance_payers_info&.is_a?(Array) != false || raise("Passed value for field obj.non_insurance_payers_info is not the expected type, validation failed.")
175
+ end
176
+ end
177
+ end
178
+ end
179
+ end
@@ -0,0 +1,113 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../../commons/types/street_address_short_zip_optional"
4
+ require "ostruct"
5
+ require "json"
6
+
7
+ module CandidApiClient
8
+ module ServiceFacility
9
+ module Types
10
+ class EncounterServiceFacilityUpdateWithOptionalAddress
11
+ # @return [String]
12
+ attr_reader :organization_name
13
+ # @return [String] An NPI specific to the service facility if applicable, i.e. if it has one and is
14
+ # not under the billing provider's NPI.
15
+ # Box 32 section (a) of the CMS-1500 claim form.
16
+ attr_reader :npi
17
+ # @return [CandidApiClient::Commons::Types::StreetAddressShortZipOptional] zip_plus_four_code is required for service facility address. When the
18
+ # zip_plus_four_code is not available use "9998" as per CMS documentation.
19
+ attr_reader :address
20
+ # @return [String] An additional identifier for the service facility other than the facility's NPI.
21
+ # Some payers may require this field.
22
+ # Potential examples: state license number, provider commercial number, or
23
+ # location number.
24
+ # Box 32 section (b) of the CMS-1500 claim form.
25
+ attr_reader :secondary_identification
26
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
27
+ attr_reader :additional_properties
28
+ # @return [Object]
29
+ attr_reader :_field_set
30
+ protected :_field_set
31
+
32
+ OMIT = Object.new
33
+
34
+ # @param organization_name [String]
35
+ # @param npi [String] An NPI specific to the service facility if applicable, i.e. if it has one and is
36
+ # not under the billing provider's NPI.
37
+ # Box 32 section (a) of the CMS-1500 claim form.
38
+ # @param address [CandidApiClient::Commons::Types::StreetAddressShortZipOptional] zip_plus_four_code is required for service facility address. When the
39
+ # zip_plus_four_code is not available use "9998" as per CMS documentation.
40
+ # @param secondary_identification [String] An additional identifier for the service facility other than the facility's NPI.
41
+ # Some payers may require this field.
42
+ # Potential examples: state license number, provider commercial number, or
43
+ # location number.
44
+ # Box 32 section (b) of the CMS-1500 claim form.
45
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
46
+ # @return [CandidApiClient::ServiceFacility::Types::EncounterServiceFacilityUpdateWithOptionalAddress]
47
+ def initialize(organization_name: OMIT, npi: OMIT, address: OMIT, secondary_identification: OMIT,
48
+ additional_properties: nil)
49
+ @organization_name = organization_name if organization_name != OMIT
50
+ @npi = npi if npi != OMIT
51
+ @address = address if address != OMIT
52
+ @secondary_identification = secondary_identification if secondary_identification != OMIT
53
+ @additional_properties = additional_properties
54
+ @_field_set = {
55
+ "organization_name": organization_name,
56
+ "npi": npi,
57
+ "address": address,
58
+ "secondary_identification": secondary_identification
59
+ }.reject do |_k, v|
60
+ v == OMIT
61
+ end
62
+ end
63
+
64
+ # Deserialize a JSON object to an instance of
65
+ # EncounterServiceFacilityUpdateWithOptionalAddress
66
+ #
67
+ # @param json_object [String]
68
+ # @return [CandidApiClient::ServiceFacility::Types::EncounterServiceFacilityUpdateWithOptionalAddress]
69
+ def self.from_json(json_object:)
70
+ struct = JSON.parse(json_object, object_class: OpenStruct)
71
+ parsed_json = JSON.parse(json_object)
72
+ organization_name = struct["organization_name"]
73
+ npi = struct["npi"]
74
+ if parsed_json["address"].nil?
75
+ address = nil
76
+ else
77
+ address = parsed_json["address"].to_json
78
+ address = CandidApiClient::Commons::Types::StreetAddressShortZipOptional.from_json(json_object: address)
79
+ end
80
+ secondary_identification = struct["secondary_identification"]
81
+ new(
82
+ organization_name: organization_name,
83
+ npi: npi,
84
+ address: address,
85
+ secondary_identification: secondary_identification,
86
+ additional_properties: struct
87
+ )
88
+ end
89
+
90
+ # Serialize an instance of EncounterServiceFacilityUpdateWithOptionalAddress to a
91
+ # JSON object
92
+ #
93
+ # @return [String]
94
+ def to_json(*_args)
95
+ @_field_set&.to_json
96
+ end
97
+
98
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
99
+ # hash and check each fields type against the current object's property
100
+ # definitions.
101
+ #
102
+ # @param obj [Object]
103
+ # @return [Void]
104
+ def self.validate_raw(obj:)
105
+ obj.organization_name&.is_a?(String) != false || raise("Passed value for field obj.organization_name is not the expected type, validation failed.")
106
+ obj.npi&.is_a?(String) != false || raise("Passed value for field obj.npi is not the expected type, validation failed.")
107
+ obj.address.nil? || CandidApiClient::Commons::Types::StreetAddressShortZipOptional.validate_raw(obj: obj.address)
108
+ obj.secondary_identification&.is_a?(String) != false || raise("Passed value for field obj.secondary_identification is not the expected type, validation failed.")
109
+ end
110
+ end
111
+ end
112
+ end
113
+ end
@@ -65,7 +65,7 @@ module CandidApiClient
65
65
  # @return [CandidApiClient::ServiceLines::V2::Types::ServiceLine]
66
66
  # @example
67
67
  # api = CandidApiClient::Client.new(base_url: "https://api.example.com", environment: CandidApiClient::Environment::PRODUCTION)
68
- # api.service_lines.v_2.create(request: { modifiers: [AV], charge_amount_cents: 1, diagnosis_id_zero: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", diagnosis_id_one: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", diagnosis_id_two: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", diagnosis_id_three: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", denial_reason: { reason: AUTHORIZATION_REQUIRED }, place_of_service_code: PHARMACY, procedure_code: "string", quantity: "string", units: MJ, claim_id: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", description: "string", date_of_service: DateTime.parse(2023-01-15), end_date_of_service: DateTime.parse(2023-01-15), drug_identification: { service_id_qualifier: EAN_UCC_13, national_drug_code: "string", national_drug_unit_count: "string", measurement_unit_code: MILLILITERS, link_sequence_number: "string", pharmacy_prescription_number: "string", conversion_formula: "string", drug_description: "string" }, ordering_provider: { npi: "string", taxonomy_code: "string", address: { address_1: "123 Main St", address_2: "Apt 1", city: "New York", state: NY, zip_code: "10001", zip_plus_four_code: "1234" } }, test_results: [{ value: 1.1, result_type: HEMATOCRIT }], has_epsdt_indicator: true, has_family_planning_indicator: true })
68
+ # api.service_lines.v_2.create(request: { modifiers: [AV], charge_amount_cents: 1, diagnosis_id_zero: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", diagnosis_id_one: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", diagnosis_id_two: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", diagnosis_id_three: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", denial_reason: { reason: AUTHORIZATION_REQUIRED }, place_of_service_code: PHARMACY, procedure_code: "string", quantity: "string", units: MJ, claim_id: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", description: "string", date_of_service: DateTime.parse(2023-01-15), end_date_of_service: DateTime.parse(2023-01-15), drug_identification: { service_id_qualifier: EAN_UCC_13, national_drug_code: "string", national_drug_unit_count: "string", measurement_unit_code: MILLILITERS, link_sequence_number: "string", pharmacy_prescription_number: "string", conversion_formula: "string", drug_description: "string" }, ordering_provider: { npi: "string", taxonomy_code: "string", address: { address_1: "123 Main St", address_2: "Apt 1", city: "New York", state: NY, zip_code: "10001", zip_plus_four_code: "1234" }, first_name: "string", last_name: "string", organization_name: "string" }, test_results: [{ value: 1.1, result_type: HEMATOCRIT }], has_epsdt_indicator: true, has_family_planning_indicator: true })
69
69
  def create(request:, request_options: nil)
70
70
  response = @request_client.conn.post do |req|
71
71
  req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
@@ -210,7 +210,7 @@ module CandidApiClient
210
210
  # @return [CandidApiClient::ServiceLines::V2::Types::ServiceLine]
211
211
  # @example
212
212
  # api = CandidApiClient::Client.new(base_url: "https://api.example.com", environment: CandidApiClient::Environment::PRODUCTION)
213
- # api.service_lines.v_2.create(request: { modifiers: [AV], charge_amount_cents: 1, diagnosis_id_zero: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", diagnosis_id_one: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", diagnosis_id_two: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", diagnosis_id_three: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", denial_reason: { reason: AUTHORIZATION_REQUIRED }, place_of_service_code: PHARMACY, procedure_code: "string", quantity: "string", units: MJ, claim_id: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", description: "string", date_of_service: DateTime.parse(2023-01-15), end_date_of_service: DateTime.parse(2023-01-15), drug_identification: { service_id_qualifier: EAN_UCC_13, national_drug_code: "string", national_drug_unit_count: "string", measurement_unit_code: MILLILITERS, link_sequence_number: "string", pharmacy_prescription_number: "string", conversion_formula: "string", drug_description: "string" }, ordering_provider: { npi: "string", taxonomy_code: "string", address: { address_1: "123 Main St", address_2: "Apt 1", city: "New York", state: NY, zip_code: "10001", zip_plus_four_code: "1234" } }, test_results: [{ value: 1.1, result_type: HEMATOCRIT }], has_epsdt_indicator: true, has_family_planning_indicator: true })
213
+ # api.service_lines.v_2.create(request: { modifiers: [AV], charge_amount_cents: 1, diagnosis_id_zero: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", diagnosis_id_one: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", diagnosis_id_two: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", diagnosis_id_three: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", denial_reason: { reason: AUTHORIZATION_REQUIRED }, place_of_service_code: PHARMACY, procedure_code: "string", quantity: "string", units: MJ, claim_id: "d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32", description: "string", date_of_service: DateTime.parse(2023-01-15), end_date_of_service: DateTime.parse(2023-01-15), drug_identification: { service_id_qualifier: EAN_UCC_13, national_drug_code: "string", national_drug_unit_count: "string", measurement_unit_code: MILLILITERS, link_sequence_number: "string", pharmacy_prescription_number: "string", conversion_formula: "string", drug_description: "string" }, ordering_provider: { npi: "string", taxonomy_code: "string", address: { address_1: "123 Main St", address_2: "Apt 1", city: "New York", state: NY, zip_code: "10001", zip_plus_four_code: "1234" }, first_name: "string", last_name: "string", organization_name: "string" }, test_results: [{ value: 1.1, result_type: HEMATOCRIT }], has_epsdt_indicator: true, has_family_planning_indicator: true })
214
214
  def create(request:, request_options: nil)
215
215
  Async do
216
216
  response = @request_client.conn.post do |req|
data/lib/requests.rb CHANGED
@@ -45,7 +45,7 @@ module CandidApiClient
45
45
 
46
46
  # @return [Hash{String => String}]
47
47
  def get_headers
48
- headers = { "X-Fern-Language": "Ruby", "X-Fern-SDK-Name": "candidhealth", "X-Fern-SDK-Version": "0.43.0" }
48
+ headers = { "X-Fern-Language": "Ruby", "X-Fern-SDK-Name": "candidhealth", "X-Fern-SDK-Version": "0.45.0" }
49
49
  headers["Authorization"] = ((@token.is_a? Method) ? @token.call : @token) unless token.nil?
50
50
  headers
51
51
  end
@@ -90,7 +90,7 @@ module CandidApiClient
90
90
 
91
91
  # @return [Hash{String => String}]
92
92
  def get_headers
93
- headers = { "X-Fern-Language": "Ruby", "X-Fern-SDK-Name": "candidhealth", "X-Fern-SDK-Version": "0.43.0" }
93
+ headers = { "X-Fern-Language": "Ruby", "X-Fern-SDK-Name": "candidhealth", "X-Fern-SDK-Version": "0.45.0" }
94
94
  headers["Authorization"] = ((@token.is_a? Method) ? @token.call : @token) unless token.nil?
95
95
  headers
96
96
  end
data/lib/types_export.rb CHANGED
@@ -3,7 +3,6 @@
3
3
  require_relative "candidhealth/auth/v_2/types/auth_get_token_response"
4
4
  require_relative "candidhealth/auth/v_2/types/too_many_requests_error_type"
5
5
  require_relative "candidhealth/billing_notes/v_2/types/billing_note_base"
6
- require_relative "candidhealth/billing_notes/v_2/types/billing_note_optional"
7
6
  require_relative "candidhealth/billing_notes/v_2/types/billing_note"
8
7
  require_relative "candidhealth/charge_capture_bundles/v_1/types/charge_capture_claim_creation_page"
9
8
  require_relative "candidhealth/charge_capture_bundles/v_1/types/charge_capture_claim_creation"
@@ -17,6 +16,7 @@ require_relative "candidhealth/charge_capture/v_1/types/charge_capture_error"
17
16
  require_relative "candidhealth/charge_capture/v_1/types/charge_capture_sort_field"
18
17
  require_relative "candidhealth/charge_capture/v_1/types/charge_capture_status"
19
18
  require_relative "candidhealth/charge_capture/v_1/types/charge_capture_post_billed_change"
19
+ require_relative "candidhealth/charge_capture/v_1/types/charge_external_id_conflict_error_message"
20
20
  require_relative "candidhealth/claim_submission/v_1/types/claim_frequency_type_code"
21
21
  require_relative "candidhealth/claim_submission/v_1/types/external_claim_submission_create"
22
22
  require_relative "candidhealth/claim_submission/v_1/types/claim_submission_record_create"
@@ -62,6 +62,11 @@ require_relative "candidhealth/encounter_providers/v_2/types/ordering_provider"
62
62
  require_relative "candidhealth/encounter_providers/v_2/types/ordering_provider_update"
63
63
  require_relative "candidhealth/encounter_providers/v_2/types/billing_provider"
64
64
  require_relative "candidhealth/encounter_providers/v_2/types/billing_provider_update"
65
+ require_relative "candidhealth/encounter_providers/v_2/types/billing_provider_update_with_optional_address"
66
+ require_relative "candidhealth/encounter_providers/v_2/types/rendering_provider_update_with_optional_address"
67
+ require_relative "candidhealth/encounter_providers/v_2/types/initial_referring_provider_update_with_optional_address"
68
+ require_relative "candidhealth/encounter_providers/v_2/types/referring_provider_update_with_optional_address"
69
+ require_relative "candidhealth/encounter_providers/v_2/types/supervising_provider_update_with_optional_address"
65
70
  require_relative "candidhealth/encounter_providers/v_2/types/encounter_provider"
66
71
  require_relative "candidhealth/encounters/v_4/types/encounter_create_from_pre_encounter"
67
72
  require_relative "candidhealth/encounters/v_4/types/encounter_base"
@@ -392,6 +397,8 @@ require_relative "candidhealth/commons/types/date_range_optional_end"
392
397
  require_relative "candidhealth/commons/types/removable_date_range_optional_end"
393
398
  require_relative "candidhealth/commons/types/resource_page"
394
399
  require_relative "candidhealth/commons/types/street_address_base"
400
+ require_relative "candidhealth/commons/types/street_address_optional_base"
401
+ require_relative "candidhealth/commons/types/street_address_short_zip_optional"
395
402
  require_relative "candidhealth/commons/types/street_address_short_zip"
396
403
  require_relative "candidhealth/commons/types/street_address_long_zip"
397
404
  require_relative "candidhealth/commons/types/regions"
@@ -466,12 +473,14 @@ require_relative "candidhealth/individual/types/patient_non_insurance_payer_info
466
473
  require_relative "candidhealth/individual/types/patient_create"
467
474
  require_relative "candidhealth/individual/types/patient_update"
468
475
  require_relative "candidhealth/individual/types/patient_base"
476
+ require_relative "candidhealth/individual/types/patient_update_with_optional_address"
469
477
  require_relative "candidhealth/individual/types/patient"
470
478
  require_relative "candidhealth/individual/types/gender"
471
479
  require_relative "candidhealth/invoices/types/invoice"
472
480
  require_relative "candidhealth/invoices/types/invoice_item"
473
481
  require_relative "candidhealth/invoices/types/invoice_status"
474
482
  require_relative "candidhealth/service_facility/types/encounter_service_facility_base"
483
+ require_relative "candidhealth/service_facility/types/encounter_service_facility_update_with_optional_address"
475
484
  require_relative "candidhealth/service_facility/types/encounter_service_facility"
476
485
  require_relative "candidhealth/service_facility/types/encounter_service_facility_update"
477
486
  require_relative "candidhealth/tags/types/tag_create"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: candidhealth
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.43.0
4
+ version: 0.45.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - ''
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2025-05-08 00:00:00.000000000 Z
11
+ date: 2025-05-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: async-http-faraday
@@ -139,7 +139,6 @@ files:
139
139
  - lib/candidhealth/billing_notes/v_2/client.rb
140
140
  - lib/candidhealth/billing_notes/v_2/types/billing_note.rb
141
141
  - lib/candidhealth/billing_notes/v_2/types/billing_note_base.rb
142
- - lib/candidhealth/billing_notes/v_2/types/billing_note_optional.rb
143
142
  - lib/candidhealth/charge_capture/client.rb
144
143
  - lib/candidhealth/charge_capture/v_1/client.rb
145
144
  - lib/candidhealth/charge_capture/v_1/types/charge_capture.rb
@@ -149,6 +148,7 @@ files:
149
148
  - lib/candidhealth/charge_capture/v_1/types/charge_capture_post_billed_change.rb
150
149
  - lib/candidhealth/charge_capture/v_1/types/charge_capture_sort_field.rb
151
150
  - lib/candidhealth/charge_capture/v_1/types/charge_capture_status.rb
151
+ - lib/candidhealth/charge_capture/v_1/types/charge_external_id_conflict_error_message.rb
152
152
  - lib/candidhealth/charge_capture_bundles/client.rb
153
153
  - lib/candidhealth/charge_capture_bundles/v_1/client.rb
154
154
  - lib/candidhealth/charge_capture_bundles/v_1/types/charge_capture_claim_creation.rb
@@ -197,7 +197,9 @@ files:
197
197
  - lib/candidhealth/commons/types/state.rb
198
198
  - lib/candidhealth/commons/types/street_address_base.rb
199
199
  - lib/candidhealth/commons/types/street_address_long_zip.rb
200
+ - lib/candidhealth/commons/types/street_address_optional_base.rb
200
201
  - lib/candidhealth/commons/types/street_address_short_zip.rb
202
+ - lib/candidhealth/commons/types/street_address_short_zip_optional.rb
201
203
  - lib/candidhealth/commons/types/unauthorized_error_message.rb
202
204
  - lib/candidhealth/commons/types/unprocessable_entity_error_message.rb
203
205
  - lib/candidhealth/commons/types/updates_disabled_due_to_external_system_integration_error_message.rb
@@ -247,18 +249,23 @@ files:
247
249
  - lib/candidhealth/encounter_providers/v_2/client.rb
248
250
  - lib/candidhealth/encounter_providers/v_2/types/billing_provider.rb
249
251
  - lib/candidhealth/encounter_providers/v_2/types/billing_provider_update.rb
252
+ - lib/candidhealth/encounter_providers/v_2/types/billing_provider_update_with_optional_address.rb
250
253
  - lib/candidhealth/encounter_providers/v_2/types/encounter_provider.rb
251
254
  - lib/candidhealth/encounter_providers/v_2/types/encounter_provider_base.rb
252
255
  - lib/candidhealth/encounter_providers/v_2/types/initial_referring_provider.rb
253
256
  - lib/candidhealth/encounter_providers/v_2/types/initial_referring_provider_update.rb
257
+ - lib/candidhealth/encounter_providers/v_2/types/initial_referring_provider_update_with_optional_address.rb
254
258
  - lib/candidhealth/encounter_providers/v_2/types/ordering_provider.rb
255
259
  - lib/candidhealth/encounter_providers/v_2/types/ordering_provider_update.rb
256
260
  - lib/candidhealth/encounter_providers/v_2/types/referring_provider.rb
257
261
  - lib/candidhealth/encounter_providers/v_2/types/referring_provider_update.rb
262
+ - lib/candidhealth/encounter_providers/v_2/types/referring_provider_update_with_optional_address.rb
258
263
  - lib/candidhealth/encounter_providers/v_2/types/rendering_provider.rb
259
264
  - lib/candidhealth/encounter_providers/v_2/types/rendering_provider_update.rb
265
+ - lib/candidhealth/encounter_providers/v_2/types/rendering_provider_update_with_optional_address.rb
260
266
  - lib/candidhealth/encounter_providers/v_2/types/supervising_provider.rb
261
267
  - lib/candidhealth/encounter_providers/v_2/types/supervising_provider_update.rb
268
+ - lib/candidhealth/encounter_providers/v_2/types/supervising_provider_update_with_optional_address.rb
262
269
  - lib/candidhealth/encounters/client.rb
263
270
  - lib/candidhealth/encounters/v_4/client.rb
264
271
  - lib/candidhealth/encounters/v_4/types/billable_status_type.rb
@@ -421,6 +428,7 @@ files:
421
428
  - lib/candidhealth/individual/types/patient_non_insurance_payer_info.rb
422
429
  - lib/candidhealth/individual/types/patient_non_insurance_payer_info_create.rb
423
430
  - lib/candidhealth/individual/types/patient_update.rb
431
+ - lib/candidhealth/individual/types/patient_update_with_optional_address.rb
424
432
  - lib/candidhealth/individual/types/subscriber.rb
425
433
  - lib/candidhealth/individual/types/subscriber_base.rb
426
434
  - lib/candidhealth/individual/types/subscriber_create.rb
@@ -665,6 +673,7 @@ files:
665
673
  - lib/candidhealth/service_facility/types/encounter_service_facility.rb
666
674
  - lib/candidhealth/service_facility/types/encounter_service_facility_base.rb
667
675
  - lib/candidhealth/service_facility/types/encounter_service_facility_update.rb
676
+ - lib/candidhealth/service_facility/types/encounter_service_facility_update_with_optional_address.rb
668
677
  - lib/candidhealth/service_lines/client.rb
669
678
  - lib/candidhealth/service_lines/v_2/client.rb
670
679
  - lib/candidhealth/service_lines/v_2/types/denial_reason_content.rb
@@ -1,112 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "date"
4
- require "ostruct"
5
- require "json"
6
-
7
- module CandidApiClient
8
- module BillingNotes
9
- module V2
10
- module Types
11
- class BillingNoteOptional
12
- # @return [String]
13
- attr_reader :billing_note_id
14
- # @return [String]
15
- attr_reader :encounter_id
16
- # @return [DateTime] An [RFC 3339, section 5.6 datetime](https://ijmacd.github.io/rfc3339-iso8601/).
17
- # For example, 2017-07-21T17:32:28Z.
18
- attr_reader :created_at
19
- # @return [String]
20
- attr_reader :author_auth_0_id
21
- # @return [String]
22
- attr_reader :author_name
23
- # @return [String] Empty string not allowed.
24
- attr_reader :text
25
- # @return [OpenStruct] Additional properties unmapped to the current class definition
26
- attr_reader :additional_properties
27
- # @return [Object]
28
- attr_reader :_field_set
29
- protected :_field_set
30
-
31
- OMIT = Object.new
32
-
33
- # @param billing_note_id [String]
34
- # @param encounter_id [String]
35
- # @param created_at [DateTime] An [RFC 3339, section 5.6 datetime](https://ijmacd.github.io/rfc3339-iso8601/).
36
- # For example, 2017-07-21T17:32:28Z.
37
- # @param author_auth_0_id [String]
38
- # @param author_name [String]
39
- # @param text [String] Empty string not allowed.
40
- # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
41
- # @return [CandidApiClient::BillingNotes::V2::Types::BillingNoteOptional]
42
- def initialize(billing_note_id:, created_at:, text:, encounter_id: OMIT, author_auth_0_id: OMIT,
43
- author_name: OMIT, additional_properties: nil)
44
- @billing_note_id = billing_note_id
45
- @encounter_id = encounter_id if encounter_id != OMIT
46
- @created_at = created_at
47
- @author_auth_0_id = author_auth_0_id if author_auth_0_id != OMIT
48
- @author_name = author_name if author_name != OMIT
49
- @text = text
50
- @additional_properties = additional_properties
51
- @_field_set = {
52
- "billing_note_id": billing_note_id,
53
- "encounter_id": encounter_id,
54
- "created_at": created_at,
55
- "author_auth0_id": author_auth_0_id,
56
- "author_name": author_name,
57
- "text": text
58
- }.reject do |_k, v|
59
- v == OMIT
60
- end
61
- end
62
-
63
- # Deserialize a JSON object to an instance of BillingNoteOptional
64
- #
65
- # @param json_object [String]
66
- # @return [CandidApiClient::BillingNotes::V2::Types::BillingNoteOptional]
67
- def self.from_json(json_object:)
68
- struct = JSON.parse(json_object, object_class: OpenStruct)
69
- parsed_json = JSON.parse(json_object)
70
- billing_note_id = struct["billing_note_id"]
71
- encounter_id = struct["encounter_id"]
72
- created_at = (DateTime.parse(parsed_json["created_at"]) unless parsed_json["created_at"].nil?)
73
- author_auth_0_id = struct["author_auth0_id"]
74
- author_name = struct["author_name"]
75
- text = struct["text"]
76
- new(
77
- billing_note_id: billing_note_id,
78
- encounter_id: encounter_id,
79
- created_at: created_at,
80
- author_auth_0_id: author_auth_0_id,
81
- author_name: author_name,
82
- text: text,
83
- additional_properties: struct
84
- )
85
- end
86
-
87
- # Serialize an instance of BillingNoteOptional to a JSON object
88
- #
89
- # @return [String]
90
- def to_json(*_args)
91
- @_field_set&.to_json
92
- end
93
-
94
- # Leveraged for Union-type generation, validate_raw attempts to parse the given
95
- # hash and check each fields type against the current object's property
96
- # definitions.
97
- #
98
- # @param obj [Object]
99
- # @return [Void]
100
- def self.validate_raw(obj:)
101
- obj.billing_note_id.is_a?(String) != false || raise("Passed value for field obj.billing_note_id is not the expected type, validation failed.")
102
- obj.encounter_id&.is_a?(String) != false || raise("Passed value for field obj.encounter_id is not the expected type, validation failed.")
103
- obj.created_at.is_a?(DateTime) != false || raise("Passed value for field obj.created_at is not the expected type, validation failed.")
104
- obj.author_auth_0_id&.is_a?(String) != false || raise("Passed value for field obj.author_auth_0_id is not the expected type, validation failed.")
105
- obj.author_name&.is_a?(String) != false || raise("Passed value for field obj.author_name is not the expected type, validation failed.")
106
- obj.text.is_a?(String) != false || raise("Passed value for field obj.text is not the expected type, validation failed.")
107
- end
108
- end
109
- end
110
- end
111
- end
112
- end