finch-api 0.1.0.pre.alpha.23 → 0.1.0.pre.alpha.24

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: ea31f257e8fd3eeab85352aac1e30a05a87e28a436695437f8a5519879846a68
4
- data.tar.gz: '080f0a5959c0163ede35811388380322f06af41163327213b2655d864200198a'
3
+ metadata.gz: 68924aafffb4beae3a435e75daeaaf72bd854593874f91774c9c482908a0e0df
4
+ data.tar.gz: de0cfd0589c9df6214e3e30680b11fe405bce5b5f1ca50312864451772a161d9
5
5
  SHA512:
6
- metadata.gz: 46f5efab2c22336f88935d4a18f6f1608f1393e73bef4a89ed8d9d749122227b05dcc8c268620d4908327a793b62bc96d43f523cc0e480a9c7e801000a443fa1
7
- data.tar.gz: d04c9c123ec10d6c5ebcdfa586a8194762beebcd9a1619bd9992636008ca67ed24a59624459013cb6e856494fcf4b1227f30421f34205c1a5720773f41d1d0a3
6
+ metadata.gz: fc44bb5eebf9f6832638e97c79b39cfa8e9c79b4f816eb1844a08a1651076130ee6cf2d0973bdbdc15a4ac3e188d2bd87115c159808c7872130555ceb275495b
7
+ data.tar.gz: 629faa02ee916ad364d7d2fff370e6981f1dbb3e557986982f10115b966b44215d27798fb512e0615bbe1ad6e577bd67542701e3b9756cc536e99c3e06da2f47
data/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.0-alpha.24 (2025-07-23)
4
+
5
+ Full Changelog: [v0.1.0-alpha.23...v0.1.0-alpha.24](https://github.com/Finch-API/finch-api-ruby/compare/v0.1.0-alpha.23...v0.1.0-alpha.24)
6
+
7
+ ### Features
8
+
9
+ * **api:** api update ([c07a9d2](https://github.com/Finch-API/finch-api-ruby/commit/c07a9d2fb3488ebec525699f3b81ba70ffc903a2))
10
+ * **api:** api update ([bd3b67a](https://github.com/Finch-API/finch-api-ruby/commit/bd3b67adfa1d4f9d507dcf6d604b0476955e38d7))
11
+
12
+
13
+ ### Chores
14
+
15
+ * **internal:** version bump ([5d0dfc8](https://github.com/Finch-API/finch-api-ruby/commit/5d0dfc87e18fe72623ce1ff8154b8614e228611e))
16
+
3
17
  ## 0.1.0-alpha.23 (2025-07-02)
4
18
 
5
19
  Full Changelog: [v0.1.0-alpha.22...v0.1.0-alpha.23](https://github.com/Finch-API/finch-api-ruby/compare/v0.1.0-alpha.22...v0.1.0-alpha.23)
data/README.md CHANGED
@@ -17,7 +17,7 @@ To use this gem, install via Bundler by adding the following to your application
17
17
  <!-- x-release-please-start-version -->
18
18
 
19
19
  ```ruby
20
- gem "finch-api", "~> 0.1.0.pre.alpha.23"
20
+ gem "finch-api", "~> 0.1.0.pre.alpha.24"
21
21
  ```
22
22
 
23
23
  <!-- x-release-please-end -->
@@ -222,11 +222,11 @@ finch.hris.directory.list(**params)
222
222
  Since this library does not depend on `sorbet-runtime`, it cannot provide [`T::Enum`](https://sorbet.org/docs/tenum) instances. Instead, we provide "tagged symbols" instead, which is always a primitive at runtime:
223
223
 
224
224
  ```ruby
225
- # :one_time
226
- puts(FinchAPI::HRIS::BenefitFrequency::ONE_TIME)
225
+ # :every_paycheck
226
+ puts(FinchAPI::HRIS::BenefitFrequency::EVERY_PAYCHECK)
227
227
 
228
228
  # Revealed type: `T.all(FinchAPI::HRIS::BenefitFrequency, Symbol)`
229
- T.reveal_type(FinchAPI::HRIS::BenefitFrequency::ONE_TIME)
229
+ T.reveal_type(FinchAPI::HRIS::BenefitFrequency::EVERY_PAYCHECK)
230
230
  ```
231
231
 
232
232
  Enum parameters have a "relaxed" type, so you can either pass in enum constants or their literal value:
@@ -234,13 +234,13 @@ Enum parameters have a "relaxed" type, so you can either pass in enum constants
234
234
  ```ruby
235
235
  # Using the enum constants preserves the tagged type information:
236
236
  finch.hris.benefits.create(
237
- frequency: FinchAPI::HRIS::BenefitFrequency::ONE_TIME,
237
+ frequency: FinchAPI::HRIS::BenefitFrequency::EVERY_PAYCHECK,
238
238
  # …
239
239
  )
240
240
 
241
241
  # Literal values are also permissible:
242
242
  finch.hris.benefits.create(
243
- frequency: :one_time,
243
+ frequency: :every_paycheck,
244
244
  # …
245
245
  )
246
246
  ```
@@ -8,15 +8,15 @@ module FinchAPI
8
8
  # Contribution amount in cents (if `fixed`) or basis points (if `percent`).
9
9
  #
10
10
  # @return [Integer, nil]
11
- optional :amount, Integer, nil?: true
11
+ required :amount, Integer, nil?: true
12
12
 
13
13
  # @!attribute type
14
14
  # Contribution type.
15
15
  #
16
16
  # @return [Symbol, FinchAPI::Models::HRIS::BenefitContribution::Type, nil]
17
- optional :type, enum: -> { FinchAPI::HRIS::BenefitContribution::Type }, nil?: true
17
+ required :type, enum: -> { FinchAPI::HRIS::BenefitContribution::Type }, nil?: true
18
18
 
19
- # @!method initialize(amount: nil, type: nil)
19
+ # @!method initialize(amount:, type:)
20
20
  # @param amount [Integer, nil] Contribution amount in cents (if `fixed`) or basis points (if `percent`).
21
21
  #
22
22
  # @param type [Symbol, FinchAPI::Models::HRIS::BenefitContribution::Type, nil] Contribution type.
@@ -53,18 +53,18 @@ module FinchAPI
53
53
  class CompanyContribution < FinchAPI::Internal::Type::BaseModel
54
54
  # @!attribute tiers
55
55
  #
56
- # @return [Array<FinchAPI::Models::HRIS::BenefitCreateParams::CompanyContribution::Tier>, nil]
57
- optional :tiers,
56
+ # @return [Array<FinchAPI::Models::HRIS::BenefitCreateParams::CompanyContribution::Tier>]
57
+ required :tiers,
58
58
  -> {
59
59
  FinchAPI::Internal::Type::ArrayOf[FinchAPI::HRIS::BenefitCreateParams::CompanyContribution::Tier]
60
60
  }
61
61
 
62
62
  # @!attribute type
63
63
  #
64
- # @return [Symbol, FinchAPI::Models::HRIS::BenefitCreateParams::CompanyContribution::Type, nil]
65
- optional :type, enum: -> { FinchAPI::HRIS::BenefitCreateParams::CompanyContribution::Type }
64
+ # @return [Symbol, FinchAPI::Models::HRIS::BenefitCreateParams::CompanyContribution::Type]
65
+ required :type, enum: -> { FinchAPI::HRIS::BenefitCreateParams::CompanyContribution::Type }
66
66
 
67
- # @!method initialize(tiers: nil, type: nil)
67
+ # @!method initialize(tiers:, type:)
68
68
  # The company match for this benefit.
69
69
  #
70
70
  # @param tiers [Array<FinchAPI::Models::HRIS::BenefitCreateParams::CompanyContribution::Tier>]
@@ -73,15 +73,15 @@ module FinchAPI
73
73
  class Tier < FinchAPI::Internal::Type::BaseModel
74
74
  # @!attribute match
75
75
  #
76
- # @return [Integer, nil]
77
- optional :match, Integer
76
+ # @return [Integer]
77
+ required :match, Integer
78
78
 
79
79
  # @!attribute threshold
80
80
  #
81
- # @return [Integer, nil]
82
- optional :threshold, Integer
81
+ # @return [Integer]
82
+ required :threshold, Integer
83
83
 
84
- # @!method initialize(match: nil, threshold: nil)
84
+ # @!method initialize(match:, threshold:)
85
85
  # @param match [Integer]
86
86
  # @param threshold [Integer]
87
87
  end
@@ -7,9 +7,9 @@ module FinchAPI
7
7
  module BenefitFrequency
8
8
  extend FinchAPI::Internal::Type::Enum
9
9
 
10
- ONE_TIME = :one_time
11
10
  EVERY_PAYCHECK = :every_paycheck
12
11
  MONTHLY = :monthly
12
+ ONE_TIME = :one_time
13
13
 
14
14
  # @!method self.values
15
15
  # @return [Array<Symbol>]
@@ -8,83 +8,125 @@ module FinchAPI
8
8
  class IndividualBenefit < FinchAPI::Internal::Type::BaseModel
9
9
  # @!attribute body
10
10
  #
11
- # @return [FinchAPI::Models::HRIS::Benefits::IndividualBenefit::Body, nil]
12
- optional :body, -> { FinchAPI::HRIS::Benefits::IndividualBenefit::Body }
11
+ # @return [FinchAPI::Models::HRIS::Benefits::IndividualBenefit::Body::UnionMember0, FinchAPI::Models::HRIS::Benefits::IndividualBenefit::Body::BatchError]
12
+ required :body, union: -> { FinchAPI::HRIS::Benefits::IndividualBenefit::Body }
13
13
 
14
14
  # @!attribute code
15
15
  #
16
- # @return [Integer, nil]
17
- optional :code, Integer
16
+ # @return [Integer]
17
+ required :code, Integer
18
18
 
19
19
  # @!attribute individual_id
20
20
  #
21
- # @return [String, nil]
22
- optional :individual_id, String
21
+ # @return [String]
22
+ required :individual_id, String
23
23
 
24
- # @!method initialize(body: nil, code: nil, individual_id: nil)
25
- # @param body [FinchAPI::Models::HRIS::Benefits::IndividualBenefit::Body]
24
+ # @!method initialize(body:, code:, individual_id:)
25
+ # @param body [FinchAPI::Models::HRIS::Benefits::IndividualBenefit::Body::UnionMember0, FinchAPI::Models::HRIS::Benefits::IndividualBenefit::Body::BatchError]
26
26
  # @param code [Integer]
27
27
  # @param individual_id [String]
28
28
 
29
29
  # @see FinchAPI::Models::HRIS::Benefits::IndividualBenefit#body
30
- class Body < FinchAPI::Internal::Type::BaseModel
31
- # @!attribute annual_maximum
32
- # If the benefit supports annual maximum, the amount in cents for this individual.
33
- #
34
- # @return [Integer, nil]
35
- optional :annual_maximum, Integer, nil?: true
36
-
37
- # @!attribute catch_up
38
- # If the benefit supports catch up (401k, 403b, etc.), whether catch up is enabled
39
- # for this individual.
40
- #
41
- # @return [Boolean, nil]
42
- optional :catch_up, FinchAPI::Internal::Type::Boolean, nil?: true
43
-
44
- # @!attribute company_contribution
45
- #
46
- # @return [FinchAPI::Models::HRIS::BenefitContribution, nil]
47
- optional :company_contribution, -> { FinchAPI::HRIS::BenefitContribution }, nil?: true
48
-
49
- # @!attribute employee_deduction
50
- #
51
- # @return [FinchAPI::Models::HRIS::BenefitContribution, nil]
52
- optional :employee_deduction, -> { FinchAPI::HRIS::BenefitContribution }, nil?: true
53
-
54
- # @!attribute hsa_contribution_limit
55
- # Type for HSA contribution limit if the benefit is a HSA.
56
- #
57
- # @return [Symbol, FinchAPI::Models::HRIS::Benefits::IndividualBenefit::Body::HsaContributionLimit, nil]
58
- optional :hsa_contribution_limit,
59
- enum: -> { FinchAPI::HRIS::Benefits::IndividualBenefit::Body::HsaContributionLimit },
60
- nil?: true
61
-
62
- # @!method initialize(annual_maximum: nil, catch_up: nil, company_contribution: nil, employee_deduction: nil, hsa_contribution_limit: nil)
63
- # Some parameter documentations has been truncated, see
64
- # {FinchAPI::Models::HRIS::Benefits::IndividualBenefit::Body} for more details.
65
- #
66
- # @param annual_maximum [Integer, nil] If the benefit supports annual maximum, the amount in cents for this individual.
67
- #
68
- # @param catch_up [Boolean, nil] If the benefit supports catch up (401k, 403b, etc.), whether catch up is enabled
69
- #
70
- # @param company_contribution [FinchAPI::Models::HRIS::BenefitContribution, nil]
71
- #
72
- # @param employee_deduction [FinchAPI::Models::HRIS::BenefitContribution, nil]
73
- #
74
- # @param hsa_contribution_limit [Symbol, FinchAPI::Models::HRIS::Benefits::IndividualBenefit::Body::HsaContributionLimit, nil] Type for HSA contribution limit if the benefit is a HSA.
75
-
76
- # Type for HSA contribution limit if the benefit is a HSA.
77
- #
78
- # @see FinchAPI::Models::HRIS::Benefits::IndividualBenefit::Body#hsa_contribution_limit
79
- module HsaContributionLimit
80
- extend FinchAPI::Internal::Type::Enum
81
-
82
- INDIVIDUAL = :individual
83
- FAMILY = :family
84
-
85
- # @!method self.values
86
- # @return [Array<Symbol>]
30
+ module Body
31
+ extend FinchAPI::Internal::Type::Union
32
+
33
+ variant -> { FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0 }
34
+
35
+ variant -> { FinchAPI::HRIS::Benefits::IndividualBenefit::Body::BatchError }
36
+
37
+ class UnionMember0 < FinchAPI::Internal::Type::BaseModel
38
+ # @!attribute annual_maximum
39
+ # If the benefit supports annual maximum, the amount in cents for this individual.
40
+ #
41
+ # @return [Integer, nil]
42
+ required :annual_maximum, Integer, nil?: true
43
+
44
+ # @!attribute catch_up
45
+ # If the benefit supports catch up (401k, 403b, etc.), whether catch up is enabled
46
+ # for this individual.
47
+ #
48
+ # @return [Boolean, nil]
49
+ required :catch_up, FinchAPI::Internal::Type::Boolean, nil?: true
50
+
51
+ # @!attribute company_contribution
52
+ #
53
+ # @return [FinchAPI::Models::HRIS::BenefitContribution, nil]
54
+ required :company_contribution, -> { FinchAPI::HRIS::BenefitContribution }, nil?: true
55
+
56
+ # @!attribute employee_deduction
57
+ #
58
+ # @return [FinchAPI::Models::HRIS::BenefitContribution, nil]
59
+ required :employee_deduction, -> { FinchAPI::HRIS::BenefitContribution }, nil?: true
60
+
61
+ # @!attribute hsa_contribution_limit
62
+ # Type for HSA contribution limit if the benefit is a HSA.
63
+ #
64
+ # @return [Symbol, FinchAPI::Models::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::HsaContributionLimit, nil]
65
+ optional :hsa_contribution_limit,
66
+ enum: -> {
67
+ FinchAPI::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::HsaContributionLimit
68
+ },
69
+ nil?: true
70
+
71
+ # @!method initialize(annual_maximum:, catch_up:, company_contribution:, employee_deduction:, hsa_contribution_limit: nil)
72
+ # Some parameter documentations has been truncated, see
73
+ # {FinchAPI::Models::HRIS::Benefits::IndividualBenefit::Body::UnionMember0} for
74
+ # more details.
75
+ #
76
+ # @param annual_maximum [Integer, nil] If the benefit supports annual maximum, the amount in cents for this individual.
77
+ #
78
+ # @param catch_up [Boolean, nil] If the benefit supports catch up (401k, 403b, etc.), whether catch up is enabled
79
+ #
80
+ # @param company_contribution [FinchAPI::Models::HRIS::BenefitContribution, nil]
81
+ #
82
+ # @param employee_deduction [FinchAPI::Models::HRIS::BenefitContribution, nil]
83
+ #
84
+ # @param hsa_contribution_limit [Symbol, FinchAPI::Models::HRIS::Benefits::IndividualBenefit::Body::UnionMember0::HsaContributionLimit, nil] Type for HSA contribution limit if the benefit is a HSA.
85
+
86
+ # Type for HSA contribution limit if the benefit is a HSA.
87
+ #
88
+ # @see FinchAPI::Models::HRIS::Benefits::IndividualBenefit::Body::UnionMember0#hsa_contribution_limit
89
+ module HsaContributionLimit
90
+ extend FinchAPI::Internal::Type::Enum
91
+
92
+ INDIVIDUAL = :individual
93
+ FAMILY = :family
94
+
95
+ # @!method self.values
96
+ # @return [Array<Symbol>]
97
+ end
87
98
  end
99
+
100
+ class BatchError < FinchAPI::Internal::Type::BaseModel
101
+ # @!attribute code
102
+ #
103
+ # @return [Float]
104
+ required :code, Float
105
+
106
+ # @!attribute message
107
+ #
108
+ # @return [String]
109
+ required :message, String
110
+
111
+ # @!attribute name
112
+ #
113
+ # @return [String]
114
+ required :name, String
115
+
116
+ # @!attribute finch_code
117
+ #
118
+ # @return [String, nil]
119
+ optional :finch_code, String
120
+
121
+ # @!method initialize(code:, message:, name:, finch_code: nil)
122
+ # @param code [Float]
123
+ # @param message [String]
124
+ # @param name [String]
125
+ # @param finch_code [String]
126
+ end
127
+
128
+ # @!method self.variants
129
+ # @return [Array(FinchAPI::Models::HRIS::Benefits::IndividualBenefit::Body::UnionMember0, FinchAPI::Models::HRIS::Benefits::IndividualBenefit::Body::BatchError)]
88
130
  end
89
131
  end
90
132
  end
@@ -11,12 +11,6 @@ module FinchAPI
11
11
  # @return [String]
12
12
  required :benefit_id, String
13
13
 
14
- # @!attribute company_contribution
15
- # The company match for this benefit.
16
- #
17
- # @return [FinchAPI::Models::HRIS::CompanyBenefit::CompanyContribution, nil]
18
- required :company_contribution, -> { FinchAPI::HRIS::CompanyBenefit::CompanyContribution }, nil?: true
19
-
20
14
  # @!attribute description
21
15
  #
22
16
  # @return [String, nil]
@@ -34,33 +28,39 @@ module FinchAPI
34
28
  # @return [Symbol, FinchAPI::Models::HRIS::BenefitType, nil]
35
29
  required :type, enum: -> { FinchAPI::HRIS::BenefitType }, nil?: true
36
30
 
37
- # @!method initialize(benefit_id:, company_contribution:, description:, frequency:, type:)
38
- # @param benefit_id [String] The id of the benefit.
31
+ # @!attribute company_contribution
32
+ # The company match for this benefit.
39
33
  #
40
- # @param company_contribution [FinchAPI::Models::HRIS::CompanyBenefit::CompanyContribution, nil] The company match for this benefit.
34
+ # @return [FinchAPI::Models::HRIS::CompanyBenefit::CompanyContribution, nil]
35
+ optional :company_contribution, -> { FinchAPI::HRIS::CompanyBenefit::CompanyContribution }, nil?: true
36
+
37
+ # @!method initialize(benefit_id:, description:, frequency:, type:, company_contribution: nil)
38
+ # @param benefit_id [String] The id of the benefit.
41
39
  #
42
40
  # @param description [String, nil]
43
41
  #
44
42
  # @param frequency [Symbol, FinchAPI::Models::HRIS::BenefitFrequency, nil] The frequency of the benefit deduction/contribution.
45
43
  #
46
44
  # @param type [Symbol, FinchAPI::Models::HRIS::BenefitType, nil] Type of benefit.
45
+ #
46
+ # @param company_contribution [FinchAPI::Models::HRIS::CompanyBenefit::CompanyContribution, nil] The company match for this benefit.
47
47
 
48
48
  # @see FinchAPI::Models::HRIS::CompanyBenefit#company_contribution
49
49
  class CompanyContribution < FinchAPI::Internal::Type::BaseModel
50
50
  # @!attribute tiers
51
51
  #
52
- # @return [Array<FinchAPI::Models::HRIS::CompanyBenefit::CompanyContribution::Tier>, nil]
53
- optional :tiers,
52
+ # @return [Array<FinchAPI::Models::HRIS::CompanyBenefit::CompanyContribution::Tier>]
53
+ required :tiers,
54
54
  -> {
55
55
  FinchAPI::Internal::Type::ArrayOf[FinchAPI::HRIS::CompanyBenefit::CompanyContribution::Tier]
56
56
  }
57
57
 
58
58
  # @!attribute type
59
59
  #
60
- # @return [Symbol, FinchAPI::Models::HRIS::CompanyBenefit::CompanyContribution::Type, nil]
61
- optional :type, enum: -> { FinchAPI::HRIS::CompanyBenefit::CompanyContribution::Type }
60
+ # @return [Symbol, FinchAPI::Models::HRIS::CompanyBenefit::CompanyContribution::Type]
61
+ required :type, enum: -> { FinchAPI::HRIS::CompanyBenefit::CompanyContribution::Type }
62
62
 
63
- # @!method initialize(tiers: nil, type: nil)
63
+ # @!method initialize(tiers:, type:)
64
64
  # The company match for this benefit.
65
65
  #
66
66
  # @param tiers [Array<FinchAPI::Models::HRIS::CompanyBenefit::CompanyContribution::Tier>]
@@ -69,15 +69,15 @@ module FinchAPI
69
69
  class Tier < FinchAPI::Internal::Type::BaseModel
70
70
  # @!attribute match
71
71
  #
72
- # @return [Integer, nil]
73
- optional :match, Integer
72
+ # @return [Integer]
73
+ required :match, Integer
74
74
 
75
75
  # @!attribute threshold
76
76
  #
77
- # @return [Integer, nil]
78
- optional :threshold, Integer
77
+ # @return [Integer]
78
+ required :threshold, Integer
79
79
 
80
- # @!method initialize(match: nil, threshold: nil)
80
+ # @!method initialize(match:, threshold:)
81
81
  # @param match [Integer]
82
82
  # @param threshold [Integer]
83
83
  end
@@ -9,21 +9,14 @@ module FinchAPI
9
9
  # Whether the provider supports an annual maximum for this benefit.
10
10
  #
11
11
  # @return [Boolean, nil]
12
- optional :annual_maximum, FinchAPI::Internal::Type::Boolean, nil?: true
13
-
14
- # @!attribute catch_up
15
- # Whether the provider supports catch up for this benefit. This field will only be
16
- # true for retirement benefits.
17
- #
18
- # @return [Boolean, nil]
19
- optional :catch_up, FinchAPI::Internal::Type::Boolean, nil?: true
12
+ required :annual_maximum, FinchAPI::Internal::Type::Boolean, nil?: true
20
13
 
21
14
  # @!attribute company_contribution
22
15
  # Supported contribution types. An empty array indicates contributions are not
23
16
  # supported.
24
17
  #
25
18
  # @return [Array<Symbol, FinchAPI::Models::HRIS::SupportedBenefit::CompanyContribution, nil>, nil]
26
- optional :company_contribution,
19
+ required :company_contribution,
27
20
  -> {
28
21
  FinchAPI::Internal::Type::ArrayOf[enum: FinchAPI::HRIS::SupportedBenefit::CompanyContribution,
29
22
  nil?: true]
@@ -33,14 +26,14 @@ module FinchAPI
33
26
  # @!attribute description
34
27
  #
35
28
  # @return [String, nil]
36
- optional :description, String, nil?: true
29
+ required :description, String, nil?: true
37
30
 
38
31
  # @!attribute employee_deduction
39
32
  # Supported deduction types. An empty array indicates deductions are not
40
33
  # supported.
41
34
  #
42
35
  # @return [Array<Symbol, FinchAPI::Models::HRIS::SupportedBenefit::EmployeeDeduction, nil>, nil]
43
- optional :employee_deduction,
36
+ required :employee_deduction,
44
37
  -> {
45
38
  FinchAPI::Internal::Type::ArrayOf[enum: FinchAPI::HRIS::SupportedBenefit::EmployeeDeduction,
46
39
  nil?: true]
@@ -50,10 +43,17 @@ module FinchAPI
50
43
  # @!attribute frequencies
51
44
  # The list of frequencies supported by the provider for this benefit
52
45
  #
53
- # @return [Array<Symbol, FinchAPI::Models::HRIS::BenefitFrequency, nil>, nil]
54
- optional :frequencies,
46
+ # @return [Array<Symbol, FinchAPI::Models::HRIS::BenefitFrequency, nil>]
47
+ required :frequencies,
55
48
  -> { FinchAPI::Internal::Type::ArrayOf[enum: FinchAPI::HRIS::BenefitFrequency, nil?: true] }
56
49
 
50
+ # @!attribute catch_up
51
+ # Whether the provider supports catch up for this benefit. This field will only be
52
+ # true for retirement benefits.
53
+ #
54
+ # @return [Boolean, nil]
55
+ optional :catch_up, FinchAPI::Internal::Type::Boolean, nil?: true
56
+
57
57
  # @!attribute hsa_contribution_limit
58
58
  # Whether the provider supports HSA contribution limits. Empty if this feature is
59
59
  # not supported for the benefit. This array only has values for HSA benefits.
@@ -66,14 +66,12 @@ module FinchAPI
66
66
  },
67
67
  nil?: true
68
68
 
69
- # @!method initialize(annual_maximum: nil, catch_up: nil, company_contribution: nil, description: nil, employee_deduction: nil, frequencies: nil, hsa_contribution_limit: nil)
69
+ # @!method initialize(annual_maximum:, company_contribution:, description:, employee_deduction:, frequencies:, catch_up: nil, hsa_contribution_limit: nil)
70
70
  # Some parameter documentations has been truncated, see
71
71
  # {FinchAPI::Models::HRIS::SupportedBenefit} for more details.
72
72
  #
73
73
  # @param annual_maximum [Boolean, nil] Whether the provider supports an annual maximum for this benefit.
74
74
  #
75
- # @param catch_up [Boolean, nil] Whether the provider supports catch up for this benefit. This field will only be
76
- #
77
75
  # @param company_contribution [Array<Symbol, FinchAPI::Models::HRIS::SupportedBenefit::CompanyContribution, nil>, nil] Supported contribution types. An empty array indicates contributions are not sup
78
76
  #
79
77
  # @param description [String, nil]
@@ -82,6 +80,8 @@ module FinchAPI
82
80
  #
83
81
  # @param frequencies [Array<Symbol, FinchAPI::Models::HRIS::BenefitFrequency, nil>] The list of frequencies supported by the provider for this benefit
84
82
  #
83
+ # @param catch_up [Boolean, nil] Whether the provider supports catch up for this benefit. This field will only be
84
+ #
85
85
  # @param hsa_contribution_limit [Array<Symbol, FinchAPI::Models::HRIS::SupportedBenefit::HsaContributionLimit, nil>, nil] Whether the provider supports HSA contribution limits. Empty if this feature is
86
86
 
87
87
  module CompanyContribution
@@ -107,8 +107,8 @@ module FinchAPI
107
107
  module HsaContributionLimit
108
108
  extend FinchAPI::Internal::Type::Enum
109
109
 
110
- INDIVIDUAL = :individual
111
110
  FAMILY = :family
111
+ INDIVIDUAL = :individual
112
112
 
113
113
  # @!method self.values
114
114
  # @return [Array<Symbol>]
@@ -11,32 +11,40 @@ module FinchAPI
11
11
  # @return [Integer]
12
12
  required :allowed_refreshes, Integer
13
13
 
14
+ # @!attribute remaining_refreshes
15
+ # The number of remaining refreshes available (per hour, fixed window)
16
+ #
17
+ # @return [Integer]
18
+ required :remaining_refreshes, Integer
19
+
14
20
  # @!attribute job_id
15
21
  # The id of the job that has been created.
16
22
  #
17
- # @return [String]
18
- required :job_id, String
23
+ # @return [String, nil]
24
+ optional :job_id, String
19
25
 
20
26
  # @!attribute job_url
21
27
  # The url that can be used to retrieve the job status
22
28
  #
23
- # @return [String]
24
- required :job_url, String
29
+ # @return [String, nil]
30
+ optional :job_url, String
25
31
 
26
- # @!attribute remaining_refreshes
27
- # The number of remaining refreshes available (per hour, fixed window)
32
+ # @!attribute retry_at
33
+ # ISO 8601 timestamp indicating when to retry the request
28
34
  #
29
- # @return [Integer]
30
- required :remaining_refreshes, Integer
35
+ # @return [String, nil]
36
+ optional :retry_at, String
31
37
 
32
- # @!method initialize(allowed_refreshes:, job_id:, job_url:, remaining_refreshes:)
38
+ # @!method initialize(allowed_refreshes:, remaining_refreshes:, job_id: nil, job_url: nil, retry_at: nil)
33
39
  # @param allowed_refreshes [Integer] The number of allowed refreshes per hour (per hour, fixed window)
34
40
  #
41
+ # @param remaining_refreshes [Integer] The number of remaining refreshes available (per hour, fixed window)
42
+ #
35
43
  # @param job_id [String] The id of the job that has been created.
36
44
  #
37
45
  # @param job_url [String] The url that can be used to retrieve the job status
38
46
  #
39
- # @param remaining_refreshes [Integer] The number of remaining refreshes available (per hour, fixed window)
47
+ # @param retry_at [String] ISO 8601 timestamp indicating when to retry the request
40
48
  end
41
49
  end
42
50
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module FinchAPI
4
- VERSION = "0.1.0.pre.alpha.23"
4
+ VERSION = "0.1.0.pre.alpha.24"
5
5
  end
@@ -32,9 +32,9 @@ module FinchAPI
32
32
  end
33
33
  def self.new(
34
34
  # Contribution amount in cents (if `fixed`) or basis points (if `percent`).
35
- amount: nil,
35
+ amount:,
36
36
  # Contribution type.
37
- type: nil
37
+ type:
38
38
  )
39
39
  end
40
40