candidhealth 0.28.0 → 0.29.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7050d2d13615c9d9359a7e99965bf683e999493aadf70fa3e5ca21f1b6391429
4
- data.tar.gz: 611a6f45a868541ed4ce357362d1de00e80a4874f2ad48a308e4b4085730e427
3
+ metadata.gz: 7e1976217c4d411194aa386a07af2c695c3331d42db1271de42bf0924a2621c5
4
+ data.tar.gz: 78b2f8ef9cde9340e9a817d4f514d0f635a3bad608bd47b6153fc8c11a564ab7
5
5
  SHA512:
6
- metadata.gz: ba37abbdb804ffd7677de1e6afab36a66da7189682e234fbb4c8fdc4978c95fe1ba5a485a48bc216aad7bdd10230fdc31c4e959f0d1483592b50034b55cb8aeb
7
- data.tar.gz: e0bd6410a9c80169d683d5d8409101b0107b0578527d2e2927b38a628ff9689eae7d51d580f65904bcfc61e3ef358031baf395c90dc8f0e0cc51f467578232e8
6
+ metadata.gz: 490000beb5c1830a75118814f1f530939d641e7cafc7613a31b98bac5d1bc4f995c513f457b2ba8e35bfe7aeb09146d16fc18e9dd6790c616892fce56b0545dd
7
+ data.tar.gz: a7eb60aaf0f7f135dc8812237c9d8f45bbe35581d0611708a75d509f4887ff6f1f3b792beb68e2bc5ca0c625defa6800390fdebd109a3ada68f77b52c6274780
@@ -44,13 +44,13 @@ module CandidApiClient
44
44
  # @param canonical_id [String]
45
45
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
46
46
  # @return [CandidApiClient::PreEncounter::Common::Types::ExternalProvider]
47
- def initialize(name:, telecoms:, addresses:, type: OMIT, npi: OMIT, period: OMIT, canonical_id: OMIT,
47
+ def initialize(name:, telecoms:, type: OMIT, npi: OMIT, addresses: OMIT, period: OMIT, canonical_id: OMIT,
48
48
  additional_properties: nil)
49
49
  @name = name
50
50
  @type = type if type != OMIT
51
51
  @npi = npi if npi != OMIT
52
52
  @telecoms = telecoms
53
- @addresses = addresses
53
+ @addresses = addresses if addresses != OMIT
54
54
  @period = period if period != OMIT
55
55
  @canonical_id = canonical_id if canonical_id != OMIT
56
56
  @additional_properties = additional_properties
@@ -127,7 +127,7 @@ module CandidApiClient
127
127
  obj.type&.is_a?(CandidApiClient::PreEncounter::Common::Types::ExternalProviderType) != false || raise("Passed value for field obj.type is not the expected type, validation failed.")
128
128
  obj.npi&.is_a?(String) != false || raise("Passed value for field obj.npi is not the expected type, validation failed.")
129
129
  obj.telecoms.is_a?(Array) != false || raise("Passed value for field obj.telecoms is not the expected type, validation failed.")
130
- obj.addresses.is_a?(Array) != false || raise("Passed value for field obj.addresses is not the expected type, validation failed.")
130
+ obj.addresses&.is_a?(Array) != false || raise("Passed value for field obj.addresses is not the expected type, validation failed.")
131
131
  obj.period.nil? || CandidApiClient::PreEncounter::Common::Types::Period.validate_raw(obj: obj.period)
132
132
  obj.canonical_id&.is_a?(String) != false || raise("Passed value for field obj.canonical_id is not the expected type, validation failed.")
133
133
  end
@@ -62,31 +62,31 @@ module CandidApiClient
62
62
  # * :plan_coverage (Hash)
63
63
  # * :in_network (Hash)
64
64
  # * :deductible (Hash)
65
- # * :family (Integer)
66
- # * :individual (Integer)
65
+ # * :family (Float)
66
+ # * :individual (Float)
67
67
  # * :deductible_remaining (Hash)
68
- # * :family (Integer)
69
- # * :individual (Integer)
68
+ # * :family (Float)
69
+ # * :individual (Float)
70
70
  # * :oop_max (Hash)
71
- # * :family (Integer)
72
- # * :individual (Integer)
71
+ # * :family (Float)
72
+ # * :individual (Float)
73
73
  # * :oop_max_remaining (Hash)
74
- # * :family (Integer)
75
- # * :individual (Integer)
74
+ # * :family (Float)
75
+ # * :individual (Float)
76
76
  # * :additional_notes (String)
77
77
  # * :out_of_network (Hash)
78
78
  # * :deductible (Hash)
79
- # * :family (Integer)
80
- # * :individual (Integer)
79
+ # * :family (Float)
80
+ # * :individual (Float)
81
81
  # * :deductible_remaining (Hash)
82
- # * :family (Integer)
83
- # * :individual (Integer)
82
+ # * :family (Float)
83
+ # * :individual (Float)
84
84
  # * :oop_max (Hash)
85
- # * :family (Integer)
86
- # * :individual (Integer)
85
+ # * :family (Float)
86
+ # * :individual (Float)
87
87
  # * :oop_max_remaining (Hash)
88
- # * :family (Integer)
89
- # * :individual (Integer)
88
+ # * :family (Float)
89
+ # * :individual (Float)
90
90
  # * :additional_notes (String)
91
91
  # * :service_specific_coverage (Array<CandidApiClient::PreEncounter::Coverages::V1::Types::ServiceCoverage>)
92
92
  # @param request_options [CandidApiClient::RequestOptions]
@@ -147,31 +147,31 @@ module CandidApiClient
147
147
  # * :plan_coverage (Hash)
148
148
  # * :in_network (Hash)
149
149
  # * :deductible (Hash)
150
- # * :family (Integer)
151
- # * :individual (Integer)
150
+ # * :family (Float)
151
+ # * :individual (Float)
152
152
  # * :deductible_remaining (Hash)
153
- # * :family (Integer)
154
- # * :individual (Integer)
153
+ # * :family (Float)
154
+ # * :individual (Float)
155
155
  # * :oop_max (Hash)
156
- # * :family (Integer)
157
- # * :individual (Integer)
156
+ # * :family (Float)
157
+ # * :individual (Float)
158
158
  # * :oop_max_remaining (Hash)
159
- # * :family (Integer)
160
- # * :individual (Integer)
159
+ # * :family (Float)
160
+ # * :individual (Float)
161
161
  # * :additional_notes (String)
162
162
  # * :out_of_network (Hash)
163
163
  # * :deductible (Hash)
164
- # * :family (Integer)
165
- # * :individual (Integer)
164
+ # * :family (Float)
165
+ # * :individual (Float)
166
166
  # * :deductible_remaining (Hash)
167
- # * :family (Integer)
168
- # * :individual (Integer)
167
+ # * :family (Float)
168
+ # * :individual (Float)
169
169
  # * :oop_max (Hash)
170
- # * :family (Integer)
171
- # * :individual (Integer)
170
+ # * :family (Float)
171
+ # * :individual (Float)
172
172
  # * :oop_max_remaining (Hash)
173
- # * :family (Integer)
174
- # * :individual (Integer)
173
+ # * :family (Float)
174
+ # * :individual (Float)
175
175
  # * :additional_notes (String)
176
176
  # * :service_specific_coverage (Array<CandidApiClient::PreEncounter::Coverages::V1::Types::ServiceCoverage>)
177
177
  # @param request_options [CandidApiClient::RequestOptions]
@@ -279,7 +279,7 @@ module CandidApiClient
279
279
  end
280
280
 
281
281
  # Scans up to 100 coverage updates. The since query parameter is inclusive, and
282
- # the result list is ordered by updatedAt descending.
282
+ # the result list is ordered by updatedAt ascending.
283
283
  #
284
284
  # @param since [DateTime]
285
285
  # @param request_options [CandidApiClient::RequestOptions]
@@ -418,31 +418,31 @@ module CandidApiClient
418
418
  # * :plan_coverage (Hash)
419
419
  # * :in_network (Hash)
420
420
  # * :deductible (Hash)
421
- # * :family (Integer)
422
- # * :individual (Integer)
421
+ # * :family (Float)
422
+ # * :individual (Float)
423
423
  # * :deductible_remaining (Hash)
424
- # * :family (Integer)
425
- # * :individual (Integer)
424
+ # * :family (Float)
425
+ # * :individual (Float)
426
426
  # * :oop_max (Hash)
427
- # * :family (Integer)
428
- # * :individual (Integer)
427
+ # * :family (Float)
428
+ # * :individual (Float)
429
429
  # * :oop_max_remaining (Hash)
430
- # * :family (Integer)
431
- # * :individual (Integer)
430
+ # * :family (Float)
431
+ # * :individual (Float)
432
432
  # * :additional_notes (String)
433
433
  # * :out_of_network (Hash)
434
434
  # * :deductible (Hash)
435
- # * :family (Integer)
436
- # * :individual (Integer)
435
+ # * :family (Float)
436
+ # * :individual (Float)
437
437
  # * :deductible_remaining (Hash)
438
- # * :family (Integer)
439
- # * :individual (Integer)
438
+ # * :family (Float)
439
+ # * :individual (Float)
440
440
  # * :oop_max (Hash)
441
- # * :family (Integer)
442
- # * :individual (Integer)
441
+ # * :family (Float)
442
+ # * :individual (Float)
443
443
  # * :oop_max_remaining (Hash)
444
- # * :family (Integer)
445
- # * :individual (Integer)
444
+ # * :family (Float)
445
+ # * :individual (Float)
446
446
  # * :additional_notes (String)
447
447
  # * :service_specific_coverage (Array<CandidApiClient::PreEncounter::Coverages::V1::Types::ServiceCoverage>)
448
448
  # @param request_options [CandidApiClient::RequestOptions]
@@ -505,31 +505,31 @@ module CandidApiClient
505
505
  # * :plan_coverage (Hash)
506
506
  # * :in_network (Hash)
507
507
  # * :deductible (Hash)
508
- # * :family (Integer)
509
- # * :individual (Integer)
508
+ # * :family (Float)
509
+ # * :individual (Float)
510
510
  # * :deductible_remaining (Hash)
511
- # * :family (Integer)
512
- # * :individual (Integer)
511
+ # * :family (Float)
512
+ # * :individual (Float)
513
513
  # * :oop_max (Hash)
514
- # * :family (Integer)
515
- # * :individual (Integer)
514
+ # * :family (Float)
515
+ # * :individual (Float)
516
516
  # * :oop_max_remaining (Hash)
517
- # * :family (Integer)
518
- # * :individual (Integer)
517
+ # * :family (Float)
518
+ # * :individual (Float)
519
519
  # * :additional_notes (String)
520
520
  # * :out_of_network (Hash)
521
521
  # * :deductible (Hash)
522
- # * :family (Integer)
523
- # * :individual (Integer)
522
+ # * :family (Float)
523
+ # * :individual (Float)
524
524
  # * :deductible_remaining (Hash)
525
- # * :family (Integer)
526
- # * :individual (Integer)
525
+ # * :family (Float)
526
+ # * :individual (Float)
527
527
  # * :oop_max (Hash)
528
- # * :family (Integer)
529
- # * :individual (Integer)
528
+ # * :family (Float)
529
+ # * :individual (Float)
530
530
  # * :oop_max_remaining (Hash)
531
- # * :family (Integer)
532
- # * :individual (Integer)
531
+ # * :family (Float)
532
+ # * :individual (Float)
533
533
  # * :additional_notes (String)
534
534
  # * :service_specific_coverage (Array<CandidApiClient::PreEncounter::Coverages::V1::Types::ServiceCoverage>)
535
535
  # @param request_options [CandidApiClient::RequestOptions]
@@ -648,7 +648,7 @@ module CandidApiClient
648
648
  end
649
649
 
650
650
  # Scans up to 100 coverage updates. The since query parameter is inclusive, and
651
- # the result list is ordered by updatedAt descending.
651
+ # the result list is ordered by updatedAt ascending.
652
652
  #
653
653
  # @param since [DateTime]
654
654
  # @param request_options [CandidApiClient::RequestOptions]
@@ -13,8 +13,6 @@ module CandidApiClient
13
13
  class CoverageEligibilityCheckResponse
14
14
  # @return [CandidApiClient::PreEncounter::Coverages::V1::Types::EligibilityCheckMetadata]
15
15
  attr_reader :metadata
16
- # @return [String]
17
- attr_reader :error
18
16
  # @return [CandidApiClient::PreEncounter::Coverages::V1::Types::EligibilityCheck]
19
17
  attr_reader :check
20
18
  # @return [OpenStruct] Additional properties unmapped to the current class definition
@@ -26,16 +24,14 @@ module CandidApiClient
26
24
  OMIT = Object.new
27
25
 
28
26
  # @param metadata [CandidApiClient::PreEncounter::Coverages::V1::Types::EligibilityCheckMetadata]
29
- # @param error [String]
30
27
  # @param check [CandidApiClient::PreEncounter::Coverages::V1::Types::EligibilityCheck]
31
28
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
32
29
  # @return [CandidApiClient::PreEncounter::Coverages::V1::Types::CoverageEligibilityCheckResponse]
33
- def initialize(metadata:, error: OMIT, check: OMIT, additional_properties: nil)
30
+ def initialize(metadata:, check: OMIT, additional_properties: nil)
34
31
  @metadata = metadata
35
- @error = error if error != OMIT
36
32
  @check = check if check != OMIT
37
33
  @additional_properties = additional_properties
38
- @_field_set = { "metadata": metadata, "error": error, "check": check }.reject do |_k, v|
34
+ @_field_set = { "metadata": metadata, "check": check }.reject do |_k, v|
39
35
  v == OMIT
40
36
  end
41
37
  end
@@ -53,7 +49,6 @@ module CandidApiClient
53
49
  metadata = parsed_json["metadata"].to_json
54
50
  metadata = CandidApiClient::PreEncounter::Coverages::V1::Types::EligibilityCheckMetadata.from_json(json_object: metadata)
55
51
  end
56
- error = struct["error"]
57
52
  if parsed_json["check"].nil?
58
53
  check = nil
59
54
  else
@@ -62,7 +57,6 @@ module CandidApiClient
62
57
  end
63
58
  new(
64
59
  metadata: metadata,
65
- error: error,
66
60
  check: check,
67
61
  additional_properties: struct
68
62
  )
@@ -83,7 +77,6 @@ module CandidApiClient
83
77
  # @return [Void]
84
78
  def self.validate_raw(obj:)
85
79
  CandidApiClient::PreEncounter::Coverages::V1::Types::EligibilityCheckMetadata.validate_raw(obj: obj.metadata)
86
- obj.error&.is_a?(String) != false || raise("Passed value for field obj.error is not the expected type, validation failed.")
87
80
  obj.check.nil? || CandidApiClient::PreEncounter::Coverages::V1::Types::EligibilityCheck.validate_raw(obj: obj.check)
88
81
  end
89
82
  end
@@ -9,9 +9,9 @@ module CandidApiClient
9
9
  module V1
10
10
  module Types
11
11
  class CoverageValue
12
- # @return [Integer]
12
+ # @return [Float]
13
13
  attr_reader :family
14
- # @return [Integer]
14
+ # @return [Float]
15
15
  attr_reader :individual
16
16
  # @return [OpenStruct] Additional properties unmapped to the current class definition
17
17
  attr_reader :additional_properties
@@ -21,8 +21,8 @@ module CandidApiClient
21
21
 
22
22
  OMIT = Object.new
23
23
 
24
- # @param family [Integer]
25
- # @param individual [Integer]
24
+ # @param family [Float]
25
+ # @param individual [Float]
26
26
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
27
27
  # @return [CandidApiClient::PreEncounter::Coverages::V1::Types::CoverageValue]
28
28
  def initialize(family: OMIT, individual: OMIT, additional_properties: nil)
@@ -63,8 +63,8 @@ module CandidApiClient
63
63
  # @param obj [Object]
64
64
  # @return [Void]
65
65
  def self.validate_raw(obj:)
66
- obj.family&.is_a?(Integer) != false || raise("Passed value for field obj.family is not the expected type, validation failed.")
67
- obj.individual&.is_a?(Integer) != false || raise("Passed value for field obj.individual is not the expected type, validation failed.")
66
+ obj.family&.is_a?(Float) != false || raise("Passed value for field obj.family is not the expected type, validation failed.")
67
+ obj.individual&.is_a?(Float) != false || raise("Passed value for field obj.individual is not the expected type, validation failed.")
68
68
  end
69
69
  end
70
70
  end
@@ -1,5 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require_relative "eligibility_status"
4
+ require_relative "plan_metadata"
5
+ require_relative "coverage_benefits"
3
6
  require "ostruct"
4
7
  require "json"
5
8
 
@@ -11,6 +14,14 @@ module CandidApiClient
11
14
  class EligibilityCheck
12
15
  # @return [Object]
13
16
  attr_reader :raw_json
17
+ # @return [Object]
18
+ attr_reader :errors
19
+ # @return [CandidApiClient::PreEncounter::Coverages::V1::Types::EligibilityStatus]
20
+ attr_reader :eligibility_status
21
+ # @return [CandidApiClient::PreEncounter::Coverages::V1::Types::PlanMetadata]
22
+ attr_reader :plan_metadata
23
+ # @return [CandidApiClient::PreEncounter::Coverages::V1::Types::CoverageBenefits]
24
+ attr_reader :benefits
14
25
  # @return [OpenStruct] Additional properties unmapped to the current class definition
15
26
  attr_reader :additional_properties
16
27
  # @return [Object]
@@ -20,12 +31,29 @@ module CandidApiClient
20
31
  OMIT = Object.new
21
32
 
22
33
  # @param raw_json [Object]
34
+ # @param errors [Object]
35
+ # @param eligibility_status [CandidApiClient::PreEncounter::Coverages::V1::Types::EligibilityStatus]
36
+ # @param plan_metadata [CandidApiClient::PreEncounter::Coverages::V1::Types::PlanMetadata]
37
+ # @param benefits [CandidApiClient::PreEncounter::Coverages::V1::Types::CoverageBenefits]
23
38
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
24
39
  # @return [CandidApiClient::PreEncounter::Coverages::V1::Types::EligibilityCheck]
25
- def initialize(raw_json:, additional_properties: nil)
40
+ def initialize(raw_json:, eligibility_status:, errors: OMIT, plan_metadata: OMIT, benefits: OMIT,
41
+ additional_properties: nil)
26
42
  @raw_json = raw_json
43
+ @errors = errors if errors != OMIT
44
+ @eligibility_status = eligibility_status
45
+ @plan_metadata = plan_metadata if plan_metadata != OMIT
46
+ @benefits = benefits if benefits != OMIT
27
47
  @additional_properties = additional_properties
28
- @_field_set = { "raw_json": raw_json }
48
+ @_field_set = {
49
+ "raw_json": raw_json,
50
+ "errors": errors,
51
+ "eligibility_status": eligibility_status,
52
+ "plan_metadata": plan_metadata,
53
+ "benefits": benefits
54
+ }.reject do |_k, v|
55
+ v == OMIT
56
+ end
29
57
  end
30
58
 
31
59
  # Deserialize a JSON object to an instance of EligibilityCheck
@@ -34,8 +62,30 @@ module CandidApiClient
34
62
  # @return [CandidApiClient::PreEncounter::Coverages::V1::Types::EligibilityCheck]
35
63
  def self.from_json(json_object:)
36
64
  struct = JSON.parse(json_object, object_class: OpenStruct)
65
+ parsed_json = JSON.parse(json_object)
37
66
  raw_json = struct["raw_json"]
38
- new(raw_json: raw_json, additional_properties: struct)
67
+ errors = struct["errors"]
68
+ eligibility_status = struct["eligibility_status"]
69
+ if parsed_json["plan_metadata"].nil?
70
+ plan_metadata = nil
71
+ else
72
+ plan_metadata = parsed_json["plan_metadata"].to_json
73
+ plan_metadata = CandidApiClient::PreEncounter::Coverages::V1::Types::PlanMetadata.from_json(json_object: plan_metadata)
74
+ end
75
+ if parsed_json["benefits"].nil?
76
+ benefits = nil
77
+ else
78
+ benefits = parsed_json["benefits"].to_json
79
+ benefits = CandidApiClient::PreEncounter::Coverages::V1::Types::CoverageBenefits.from_json(json_object: benefits)
80
+ end
81
+ new(
82
+ raw_json: raw_json,
83
+ errors: errors,
84
+ eligibility_status: eligibility_status,
85
+ plan_metadata: plan_metadata,
86
+ benefits: benefits,
87
+ additional_properties: struct
88
+ )
39
89
  end
40
90
 
41
91
  # Serialize an instance of EligibilityCheck to a JSON object
@@ -53,6 +103,10 @@ module CandidApiClient
53
103
  # @return [Void]
54
104
  def self.validate_raw(obj:)
55
105
  obj.raw_json.is_a?(Object) != false || raise("Passed value for field obj.raw_json is not the expected type, validation failed.")
106
+ obj.errors&.is_a?(Object) != false || raise("Passed value for field obj.errors is not the expected type, validation failed.")
107
+ obj.eligibility_status.is_a?(CandidApiClient::PreEncounter::Coverages::V1::Types::EligibilityStatus) != false || raise("Passed value for field obj.eligibility_status is not the expected type, validation failed.")
108
+ obj.plan_metadata.nil? || CandidApiClient::PreEncounter::Coverages::V1::Types::PlanMetadata.validate_raw(obj: obj.plan_metadata)
109
+ obj.benefits.nil? || CandidApiClient::PreEncounter::Coverages::V1::Types::CoverageBenefits.validate_raw(obj: obj.benefits)
56
110
  end
57
111
  end
58
112
  end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CandidApiClient
4
+ module PreEncounter
5
+ module Coverages
6
+ module V1
7
+ module Types
8
+ class EligibilityStatus
9
+ ACTIVE = "ACTIVE"
10
+ INACTIVE = "INACTIVE"
11
+ UNKNOWN = "UNKNOWN"
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,129 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "date"
4
+ require_relative "eligibility_status"
5
+ require "ostruct"
6
+ require "json"
7
+
8
+ module CandidApiClient
9
+ module PreEncounter
10
+ module Coverages
11
+ module V1
12
+ module Types
13
+ class PlanMetadata
14
+ # @return [String]
15
+ attr_reader :insurance_type
16
+ # @return [String]
17
+ attr_reader :insurance_type_code
18
+ # @return [String]
19
+ attr_reader :plan_name
20
+ # @return [String]
21
+ attr_reader :member_id
22
+ # @return [String]
23
+ attr_reader :group_number
24
+ # @return [Date]
25
+ attr_reader :start_date
26
+ # @return [Date]
27
+ attr_reader :end_date
28
+ # @return [CandidApiClient::PreEncounter::Coverages::V1::Types::EligibilityStatus]
29
+ attr_reader :eligibility_status
30
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
31
+ attr_reader :additional_properties
32
+ # @return [Object]
33
+ attr_reader :_field_set
34
+ protected :_field_set
35
+
36
+ OMIT = Object.new
37
+
38
+ # @param insurance_type [String]
39
+ # @param insurance_type_code [String]
40
+ # @param plan_name [String]
41
+ # @param member_id [String]
42
+ # @param group_number [String]
43
+ # @param start_date [Date]
44
+ # @param end_date [Date]
45
+ # @param eligibility_status [CandidApiClient::PreEncounter::Coverages::V1::Types::EligibilityStatus]
46
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
47
+ # @return [CandidApiClient::PreEncounter::Coverages::V1::Types::PlanMetadata]
48
+ def initialize(insurance_type: OMIT, insurance_type_code: OMIT, plan_name: OMIT, member_id: OMIT,
49
+ group_number: OMIT, start_date: OMIT, end_date: OMIT, eligibility_status: OMIT, additional_properties: nil)
50
+ @insurance_type = insurance_type if insurance_type != OMIT
51
+ @insurance_type_code = insurance_type_code if insurance_type_code != OMIT
52
+ @plan_name = plan_name if plan_name != OMIT
53
+ @member_id = member_id if member_id != OMIT
54
+ @group_number = group_number if group_number != OMIT
55
+ @start_date = start_date if start_date != OMIT
56
+ @end_date = end_date if end_date != OMIT
57
+ @eligibility_status = eligibility_status if eligibility_status != OMIT
58
+ @additional_properties = additional_properties
59
+ @_field_set = {
60
+ "insurance_type": insurance_type,
61
+ "insurance_type_code": insurance_type_code,
62
+ "plan_name": plan_name,
63
+ "member_id": member_id,
64
+ "group_number": group_number,
65
+ "start_date": start_date,
66
+ "end_date": end_date,
67
+ "eligibility_status": eligibility_status
68
+ }.reject do |_k, v|
69
+ v == OMIT
70
+ end
71
+ end
72
+
73
+ # Deserialize a JSON object to an instance of PlanMetadata
74
+ #
75
+ # @param json_object [String]
76
+ # @return [CandidApiClient::PreEncounter::Coverages::V1::Types::PlanMetadata]
77
+ def self.from_json(json_object:)
78
+ struct = JSON.parse(json_object, object_class: OpenStruct)
79
+ parsed_json = JSON.parse(json_object)
80
+ insurance_type = struct["insurance_type"]
81
+ insurance_type_code = struct["insurance_type_code"]
82
+ plan_name = struct["plan_name"]
83
+ member_id = struct["member_id"]
84
+ group_number = struct["group_number"]
85
+ start_date = (Date.parse(parsed_json["start_date"]) unless parsed_json["start_date"].nil?)
86
+ end_date = (Date.parse(parsed_json["end_date"]) unless parsed_json["end_date"].nil?)
87
+ eligibility_status = struct["eligibility_status"]
88
+ new(
89
+ insurance_type: insurance_type,
90
+ insurance_type_code: insurance_type_code,
91
+ plan_name: plan_name,
92
+ member_id: member_id,
93
+ group_number: group_number,
94
+ start_date: start_date,
95
+ end_date: end_date,
96
+ eligibility_status: eligibility_status,
97
+ additional_properties: struct
98
+ )
99
+ end
100
+
101
+ # Serialize an instance of PlanMetadata to a JSON object
102
+ #
103
+ # @return [String]
104
+ def to_json(*_args)
105
+ @_field_set&.to_json
106
+ end
107
+
108
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
109
+ # hash and check each fields type against the current object's property
110
+ # definitions.
111
+ #
112
+ # @param obj [Object]
113
+ # @return [Void]
114
+ def self.validate_raw(obj:)
115
+ obj.insurance_type&.is_a?(String) != false || raise("Passed value for field obj.insurance_type is not the expected type, validation failed.")
116
+ obj.insurance_type_code&.is_a?(String) != false || raise("Passed value for field obj.insurance_type_code is not the expected type, validation failed.")
117
+ obj.plan_name&.is_a?(String) != false || raise("Passed value for field obj.plan_name is not the expected type, validation failed.")
118
+ obj.member_id&.is_a?(String) != false || raise("Passed value for field obj.member_id is not the expected type, validation failed.")
119
+ obj.group_number&.is_a?(String) != false || raise("Passed value for field obj.group_number is not the expected type, validation failed.")
120
+ obj.start_date&.is_a?(Date) != false || raise("Passed value for field obj.start_date is not the expected type, validation failed.")
121
+ obj.end_date&.is_a?(Date) != false || raise("Passed value for field obj.end_date is not the expected type, validation failed.")
122
+ obj.eligibility_status&.is_a?(CandidApiClient::PreEncounter::Coverages::V1::Types::EligibilityStatus) != false || raise("Passed value for field obj.eligibility_status is not the expected type, validation failed.")
123
+ end
124
+ end
125
+ end
126
+ end
127
+ end
128
+ end
129
+ end
@@ -96,10 +96,83 @@ module CandidApiClient
96
96
  CandidApiClient::PreEncounter::Patients::V1::Types::Patient.from_json(json_object: response.body)
97
97
  end
98
98
 
99
+ # Adds a patient without checking for duplicates.
100
+ #
101
+ # @param request [Hash] Request of type CandidApiClient::PreEncounter::Patients::V1::Types::MutablePatient, as a Hash
102
+ # * :name (Hash)
103
+ # * :family (String)
104
+ # * :given (Array<String>)
105
+ # * :use (CandidApiClient::PreEncounter::Common::Types::NameUse)
106
+ # * :period (Hash)
107
+ # * :start (Date)
108
+ # * :end_ (Date)
109
+ # * :other_names (Array<CandidApiClient::PreEncounter::Common::Types::HumanName>)
110
+ # * :gender (CandidApiClient::PreEncounter::Common::Types::Gender)
111
+ # * :birth_date (Date)
112
+ # * :social_security_number (String)
113
+ # * :biological_sex (CandidApiClient::PreEncounter::Common::Types::Sex)
114
+ # * :sexual_orientation (CandidApiClient::PreEncounter::Common::Types::SexualOrientation)
115
+ # * :race (CandidApiClient::PreEncounter::Common::Types::Race)
116
+ # * :ethnicity (CandidApiClient::PreEncounter::Common::Types::Ethnicity)
117
+ # * :disability_status (CandidApiClient::PreEncounter::Common::Types::DisabilityStatus)
118
+ # * :marital_status (CandidApiClient::PreEncounter::Patients::V1::Types::MaritalStatus)
119
+ # * :deceased (DateTime)
120
+ # * :multiple_birth (Integer)
121
+ # * :primary_address (Hash)
122
+ # * :use (CandidApiClient::PreEncounter::Common::Types::AddressUse)
123
+ # * :line (Array<String>)
124
+ # * :city (String)
125
+ # * :state (String)
126
+ # * :postal_code (String)
127
+ # * :country (String)
128
+ # * :period (Hash)
129
+ # * :start (Date)
130
+ # * :end_ (Date)
131
+ # * :other_addresses (Array<CandidApiClient::PreEncounter::Common::Types::Address>)
132
+ # * :primary_telecom (Hash)
133
+ # * :value (String)
134
+ # * :use (CandidApiClient::PreEncounter::Common::Types::ContactPointUse)
135
+ # * :period (Hash)
136
+ # * :start (Date)
137
+ # * :end_ (Date)
138
+ # * :other_telecoms (Array<CandidApiClient::PreEncounter::Common::Types::ContactPoint>)
139
+ # * :email (String)
140
+ # * :electronic_communication_opt_in (Boolean)
141
+ # * :photo (String)
142
+ # * :language (String)
143
+ # * :external_provenance (Hash)
144
+ # * :external_id (String)
145
+ # * :system_name (String)
146
+ # * :contacts (Array<CandidApiClient::PreEncounter::Patients::V1::Types::Contact>)
147
+ # * :general_practitioners (Array<CandidApiClient::PreEncounter::Common::Types::ExternalProvider>)
148
+ # * :filing_order (Hash)
149
+ # * :coverages (Array<String>)
150
+ # @param request_options [CandidApiClient::RequestOptions]
151
+ # @return [CandidApiClient::PreEncounter::Patients::V1::Types::Patient]
152
+ # @example
153
+ # api = CandidApiClient::Client.new(base_url: "https://api.example.com", environment: CandidApiClient::Environment::PRODUCTION)
154
+ # api.pre_encounter.patients.v_1.create_no_duplicate_check(request: { name: { }, other_names: [{ }], gender: MAN, birth_date: DateTime.parse(2023-01-15), social_security_number: "string", biological_sex: FEMALE, sexual_orientation: HETEROSEXUAL, race: AMERICAN_INDIAN_OR_ALASKA_NATIVE, ethnicity: HISPANIC_OR_LATINO, disability_status: DISABLED, marital_status: ANNULLED, deceased: DateTime.parse(2024-01-15T09:30:00.000Z), multiple_birth: 1, primary_address: { }, other_addresses: [{ }], primary_telecom: { }, other_telecoms: [{ }], email: "string", electronic_communication_opt_in: true, photo: "string", language: "string", external_provenance: { external_id: "string", system_name: "string" }, contacts: [{ relationship: [SELF], name: { }, telecoms: [{ }], addresses: [{ }], period: { }, hipaa_authorization: true }], general_practitioners: [{ }], filing_order: { coverages: ["d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32"] } })
155
+ def create_no_duplicate_check(request:, request_options: nil)
156
+ response = @request_client.conn.post do |req|
157
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
158
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
159
+ req.headers = {
160
+ **(req.headers || {}),
161
+ **@request_client.get_headers,
162
+ **(request_options&.additional_headers || {})
163
+ }.compact
164
+ req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
165
+ req.url "#{@request_client.get_url(environment: PreEncounter,
166
+ request_options: request_options)}/patients/v1"
167
+ end
168
+ CandidApiClient::PreEncounter::Patients::V1::Types::Patient.from_json(json_object: response.body)
169
+ end
170
+
99
171
  # Searches for patients that match the query parameters.
100
172
  #
101
- # @param page_token [String]
102
173
  # @param limit [Integer]
174
+ # @param mrn [String]
175
+ # @param page_token [String]
103
176
  # @param sort_field [String]
104
177
  # @param sort_direction [CandidApiClient::PreEncounter::Common::Types::SortDirection] Defaults to ascending.
105
178
  # @param request_options [CandidApiClient::RequestOptions]
@@ -107,12 +180,14 @@ module CandidApiClient
107
180
  # @example
108
181
  # api = CandidApiClient::Client.new(base_url: "https://api.example.com", environment: CandidApiClient::Environment::PRODUCTION)
109
182
  # api.pre_encounter.patients.v_1.get_multi(
110
- # page_token: "string",
111
183
  # limit: 1,
184
+ # mrn: "string",
185
+ # page_token: "string",
112
186
  # sort_field: "string",
113
187
  # sort_direction: ASC
114
188
  # )
115
- def get_multi(page_token: nil, limit: nil, sort_field: nil, sort_direction: nil, request_options: nil)
189
+ def get_multi(limit: nil, mrn: nil, page_token: nil, sort_field: nil, sort_direction: nil,
190
+ request_options: nil)
116
191
  response = @request_client.conn.get do |req|
117
192
  req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
118
193
  req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
@@ -123,8 +198,9 @@ module CandidApiClient
123
198
  }.compact
124
199
  req.params = {
125
200
  **(request_options&.additional_query_parameters || {}),
126
- "page_token": page_token,
127
201
  "limit": limit,
202
+ "mrn": mrn,
203
+ "page_token": page_token,
128
204
  "sort_field": sort_field,
129
205
  "sort_direction": sort_direction
130
206
  }.compact
@@ -324,7 +400,7 @@ module CandidApiClient
324
400
  end
325
401
 
326
402
  # Scans up to 100 patient updates. The since query parameter is inclusive, and the
327
- # result list is ordered by updatedAt descending.
403
+ # result list is ordered by updatedAt ascending.
328
404
  #
329
405
  # @param since [DateTime]
330
406
  # @param request_options [CandidApiClient::RequestOptions]
@@ -438,10 +514,85 @@ module CandidApiClient
438
514
  end
439
515
  end
440
516
 
517
+ # Adds a patient without checking for duplicates.
518
+ #
519
+ # @param request [Hash] Request of type CandidApiClient::PreEncounter::Patients::V1::Types::MutablePatient, as a Hash
520
+ # * :name (Hash)
521
+ # * :family (String)
522
+ # * :given (Array<String>)
523
+ # * :use (CandidApiClient::PreEncounter::Common::Types::NameUse)
524
+ # * :period (Hash)
525
+ # * :start (Date)
526
+ # * :end_ (Date)
527
+ # * :other_names (Array<CandidApiClient::PreEncounter::Common::Types::HumanName>)
528
+ # * :gender (CandidApiClient::PreEncounter::Common::Types::Gender)
529
+ # * :birth_date (Date)
530
+ # * :social_security_number (String)
531
+ # * :biological_sex (CandidApiClient::PreEncounter::Common::Types::Sex)
532
+ # * :sexual_orientation (CandidApiClient::PreEncounter::Common::Types::SexualOrientation)
533
+ # * :race (CandidApiClient::PreEncounter::Common::Types::Race)
534
+ # * :ethnicity (CandidApiClient::PreEncounter::Common::Types::Ethnicity)
535
+ # * :disability_status (CandidApiClient::PreEncounter::Common::Types::DisabilityStatus)
536
+ # * :marital_status (CandidApiClient::PreEncounter::Patients::V1::Types::MaritalStatus)
537
+ # * :deceased (DateTime)
538
+ # * :multiple_birth (Integer)
539
+ # * :primary_address (Hash)
540
+ # * :use (CandidApiClient::PreEncounter::Common::Types::AddressUse)
541
+ # * :line (Array<String>)
542
+ # * :city (String)
543
+ # * :state (String)
544
+ # * :postal_code (String)
545
+ # * :country (String)
546
+ # * :period (Hash)
547
+ # * :start (Date)
548
+ # * :end_ (Date)
549
+ # * :other_addresses (Array<CandidApiClient::PreEncounter::Common::Types::Address>)
550
+ # * :primary_telecom (Hash)
551
+ # * :value (String)
552
+ # * :use (CandidApiClient::PreEncounter::Common::Types::ContactPointUse)
553
+ # * :period (Hash)
554
+ # * :start (Date)
555
+ # * :end_ (Date)
556
+ # * :other_telecoms (Array<CandidApiClient::PreEncounter::Common::Types::ContactPoint>)
557
+ # * :email (String)
558
+ # * :electronic_communication_opt_in (Boolean)
559
+ # * :photo (String)
560
+ # * :language (String)
561
+ # * :external_provenance (Hash)
562
+ # * :external_id (String)
563
+ # * :system_name (String)
564
+ # * :contacts (Array<CandidApiClient::PreEncounter::Patients::V1::Types::Contact>)
565
+ # * :general_practitioners (Array<CandidApiClient::PreEncounter::Common::Types::ExternalProvider>)
566
+ # * :filing_order (Hash)
567
+ # * :coverages (Array<String>)
568
+ # @param request_options [CandidApiClient::RequestOptions]
569
+ # @return [CandidApiClient::PreEncounter::Patients::V1::Types::Patient]
570
+ # @example
571
+ # api = CandidApiClient::Client.new(base_url: "https://api.example.com", environment: CandidApiClient::Environment::PRODUCTION)
572
+ # api.pre_encounter.patients.v_1.create_no_duplicate_check(request: { name: { }, other_names: [{ }], gender: MAN, birth_date: DateTime.parse(2023-01-15), social_security_number: "string", biological_sex: FEMALE, sexual_orientation: HETEROSEXUAL, race: AMERICAN_INDIAN_OR_ALASKA_NATIVE, ethnicity: HISPANIC_OR_LATINO, disability_status: DISABLED, marital_status: ANNULLED, deceased: DateTime.parse(2024-01-15T09:30:00.000Z), multiple_birth: 1, primary_address: { }, other_addresses: [{ }], primary_telecom: { }, other_telecoms: [{ }], email: "string", electronic_communication_opt_in: true, photo: "string", language: "string", external_provenance: { external_id: "string", system_name: "string" }, contacts: [{ relationship: [SELF], name: { }, telecoms: [{ }], addresses: [{ }], period: { }, hipaa_authorization: true }], general_practitioners: [{ }], filing_order: { coverages: ["d5e9c84f-c2b2-4bf4-b4b0-7ffd7a9ffc32"] } })
573
+ def create_no_duplicate_check(request:, request_options: nil)
574
+ Async do
575
+ response = @request_client.conn.post do |req|
576
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
577
+ req.headers["Authorization"] = request_options.token unless request_options&.token.nil?
578
+ req.headers = {
579
+ **(req.headers || {}),
580
+ **@request_client.get_headers,
581
+ **(request_options&.additional_headers || {})
582
+ }.compact
583
+ req.body = { **(request || {}), **(request_options&.additional_body_parameters || {}) }.compact
584
+ req.url "#{@request_client.get_url(environment: PreEncounter,
585
+ request_options: request_options)}/patients/v1"
586
+ end
587
+ CandidApiClient::PreEncounter::Patients::V1::Types::Patient.from_json(json_object: response.body)
588
+ end
589
+ end
590
+
441
591
  # Searches for patients that match the query parameters.
442
592
  #
443
- # @param page_token [String]
444
593
  # @param limit [Integer]
594
+ # @param mrn [String]
595
+ # @param page_token [String]
445
596
  # @param sort_field [String]
446
597
  # @param sort_direction [CandidApiClient::PreEncounter::Common::Types::SortDirection] Defaults to ascending.
447
598
  # @param request_options [CandidApiClient::RequestOptions]
@@ -449,12 +600,14 @@ module CandidApiClient
449
600
  # @example
450
601
  # api = CandidApiClient::Client.new(base_url: "https://api.example.com", environment: CandidApiClient::Environment::PRODUCTION)
451
602
  # api.pre_encounter.patients.v_1.get_multi(
452
- # page_token: "string",
453
603
  # limit: 1,
604
+ # mrn: "string",
605
+ # page_token: "string",
454
606
  # sort_field: "string",
455
607
  # sort_direction: ASC
456
608
  # )
457
- def get_multi(page_token: nil, limit: nil, sort_field: nil, sort_direction: nil, request_options: nil)
609
+ def get_multi(limit: nil, mrn: nil, page_token: nil, sort_field: nil, sort_direction: nil,
610
+ request_options: nil)
458
611
  Async do
459
612
  response = @request_client.conn.get do |req|
460
613
  req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
@@ -466,8 +619,9 @@ module CandidApiClient
466
619
  }.compact
467
620
  req.params = {
468
621
  **(request_options&.additional_query_parameters || {}),
469
- "page_token": page_token,
470
622
  "limit": limit,
623
+ "mrn": mrn,
624
+ "page_token": page_token,
471
625
  "sort_field": sort_field,
472
626
  "sort_direction": sort_direction
473
627
  }.compact
@@ -678,7 +832,7 @@ module CandidApiClient
678
832
  end
679
833
 
680
834
  # Scans up to 100 patient updates. The since query parameter is inclusive, and the
681
- # result list is ordered by updatedAt descending.
835
+ # result list is ordered by updatedAt ascending.
682
836
  #
683
837
  # @param since [DateTime]
684
838
  # @param request_options [CandidApiClient::RequestOptions]
data/lib/requests.rb CHANGED
@@ -43,7 +43,7 @@ module CandidApiClient
43
43
 
44
44
  # @return [Hash{String => String}]
45
45
  def get_headers
46
- headers = { "X-Fern-Language": "Ruby", "X-Fern-SDK-Name": "candidhealth", "X-Fern-SDK-Version": "0.28.0" }
46
+ headers = { "X-Fern-Language": "Ruby", "X-Fern-SDK-Name": "candidhealth", "X-Fern-SDK-Version": "0.29.0" }
47
47
  headers["Authorization"] = ((@token.is_a? Method) ? @token.call : @token) unless token.nil?
48
48
  headers
49
49
  end
@@ -87,7 +87,7 @@ module CandidApiClient
87
87
 
88
88
  # @return [Hash{String => String}]
89
89
  def get_headers
90
- headers = { "X-Fern-Language": "Ruby", "X-Fern-SDK-Name": "candidhealth", "X-Fern-SDK-Version": "0.28.0" }
90
+ headers = { "X-Fern-Language": "Ruby", "X-Fern-SDK-Name": "candidhealth", "X-Fern-SDK-Version": "0.29.0" }
91
91
  headers["Authorization"] = ((@token.is_a? Method) ? @token.call : @token) unless token.nil?
92
92
  headers
93
93
  end
data/lib/types_export.rb CHANGED
@@ -270,6 +270,8 @@ require_relative "candidhealth/pre_encounter/coverages/v_1/types/plan_coverage"
270
270
  require_relative "candidhealth/pre_encounter/coverages/v_1/types/plan_coverage_details"
271
271
  require_relative "candidhealth/pre_encounter/coverages/v_1/types/service_coverage"
272
272
  require_relative "candidhealth/pre_encounter/coverages/v_1/types/service_coverage_details"
273
+ require_relative "candidhealth/pre_encounter/coverages/v_1/types/plan_metadata"
274
+ require_relative "candidhealth/pre_encounter/coverages/v_1/types/eligibility_status"
273
275
  require_relative "candidhealth/pre_encounter/coverages/v_1/types/subscriber"
274
276
  require_relative "candidhealth/pre_encounter/coverages/v_1/types/coverage_status"
275
277
  require_relative "candidhealth/pre_encounter/coverages/v_1/types/network_type"
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.28.0
4
+ version: 0.29.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - ''
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-08-23 00:00:00.000000000 Z
11
+ date: 2024-09-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: async-http-faraday
@@ -454,12 +454,14 @@ files:
454
454
  - lib/candidhealth/pre_encounter/coverages/v_1/types/eligibility_check.rb
455
455
  - lib/candidhealth/pre_encounter/coverages/v_1/types/eligibility_check_metadata.rb
456
456
  - lib/candidhealth/pre_encounter/coverages/v_1/types/eligibility_check_status.rb
457
+ - lib/candidhealth/pre_encounter/coverages/v_1/types/eligibility_status.rb
457
458
  - lib/candidhealth/pre_encounter/coverages/v_1/types/insurance_plan.rb
458
459
  - lib/candidhealth/pre_encounter/coverages/v_1/types/insurance_type_code.rb
459
460
  - lib/candidhealth/pre_encounter/coverages/v_1/types/mutable_coverage.rb
460
461
  - lib/candidhealth/pre_encounter/coverages/v_1/types/network_type.rb
461
462
  - lib/candidhealth/pre_encounter/coverages/v_1/types/plan_coverage.rb
462
463
  - lib/candidhealth/pre_encounter/coverages/v_1/types/plan_coverage_details.rb
464
+ - lib/candidhealth/pre_encounter/coverages/v_1/types/plan_metadata.rb
463
465
  - lib/candidhealth/pre_encounter/coverages/v_1/types/service_coverage.rb
464
466
  - lib/candidhealth/pre_encounter/coverages/v_1/types/service_coverage_details.rb
465
467
  - lib/candidhealth/pre_encounter/coverages/v_1/types/service_type_code.rb