vitable-connect 0.4.0 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +16 -0
- data/README.md +1 -1
- data/lib/vitable_connect/client.rb +0 -1
- data/lib/vitable_connect/internal/transport/base_client.rb +4 -1
- data/lib/vitable_connect/models/employee.rb +9 -9
- data/lib/vitable_connect/models/employer.rb +1 -9
- data/lib/vitable_connect/models/group.rb +17 -6
- data/lib/vitable_connect/models/groups/members/sync_retrieve_response.rb +74 -3
- data/lib/vitable_connect/models/webhook_event_list_params.rb +0 -3
- data/lib/vitable_connect/models.rb +0 -9
- data/lib/vitable_connect/resources/benefit_eligibility_policies.rb +0 -21
- data/lib/vitable_connect/resources/employers.rb +0 -30
- data/lib/vitable_connect/version.rb +1 -1
- data/lib/vitable_connect.rb +0 -4
- data/rbi/vitable_connect/client.rbi +0 -1
- data/rbi/vitable_connect/models/employee.rbi +8 -8
- data/rbi/vitable_connect/models/employer.rbi +0 -8
- data/rbi/vitable_connect/models/group.rbi +12 -0
- data/rbi/vitable_connect/models/groups/members/sync_retrieve_response.rbi +174 -4
- data/rbi/vitable_connect/models/webhook_event_list_params.rbi +0 -8
- data/rbi/vitable_connect/models.rbi +0 -11
- data/rbi/vitable_connect/resources/benefit_eligibility_policies.rbi +0 -15
- data/rbi/vitable_connect/resources/employers.rbi +0 -21
- data/rbi/vitable_connect/resources/webhook_events.rbi +0 -1
- data/sig/vitable_connect/models/employee.rbs +5 -5
- data/sig/vitable_connect/models/employer.rbs +0 -5
- data/sig/vitable_connect/models/groups/members/sync_retrieve_response.rbs +69 -4
- data/sig/vitable_connect/models/webhook_event_list_params.rbs +0 -2
- data/sig/vitable_connect/models.rbs +0 -8
- data/sig/vitable_connect/resources/benefit_eligibility_policies.rbs +0 -5
- data/sig/vitable_connect/resources/employers.rbs +0 -7
- metadata +2 -14
- data/lib/vitable_connect/models/benefit_eligibility_policy.rb +0 -53
- data/lib/vitable_connect/models/benefit_eligibility_policy_response.rb +0 -18
- data/lib/vitable_connect/models/benefit_eligibility_policy_retrieve_params.rb +0 -22
- data/lib/vitable_connect/models/employer_create_benefit_eligibility_policy_params.rb +0 -43
- data/rbi/vitable_connect/models/benefit_eligibility_policy.rbi +0 -74
- data/rbi/vitable_connect/models/benefit_eligibility_policy_response.rbi +0 -38
- data/rbi/vitable_connect/models/benefit_eligibility_policy_retrieve_params.rbi +0 -43
- data/rbi/vitable_connect/models/employer_create_benefit_eligibility_policy_params.rbi +0 -64
- data/sig/vitable_connect/models/benefit_eligibility_policy.rbs +0 -50
- data/sig/vitable_connect/models/benefit_eligibility_policy_response.rbs +0 -14
- data/sig/vitable_connect/models/benefit_eligibility_policy_retrieve_params.rbs +0 -23
- data/sig/vitable_connect/models/employer_create_benefit_eligibility_policy_params.rbs +0 -32
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: f95073505c09fe79851a300e7809226f73aae321ed396dfaebd55c0a1ed443ba
|
|
4
|
+
data.tar.gz: dbdbfd8d843f86fcf1fbbc093113794f4d765f7f6c727b42759387741f2aa5f7
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9839910b5b1614f3b79e7be1e101a1016c8ea7b3faff6f3c346709182fa75a2aed5299fa7d0de6a46bae4c88f5c26460ba3da4d69e6cfd3bd4912b8b247c1164
|
|
7
|
+
data.tar.gz: 3763f2b619fbb8c838c2834f522be20721891f8b2674a792e4535eda2eb52476a51b36fa2210f4ee0d6957b620e541b148b726419caa73c962e6823dbbf32c20
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.5.0 (2026-06-18)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [v0.4.0...v0.5.0](https://github.com/Vitable-Inc/vitable-connect-ruby/compare/v0.4.0...v0.5.0)
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* **api:** api update ([a8bcdc8](https://github.com/Vitable-Inc/vitable-connect-ruby/commit/a8bcdc81db4619608b5119a9077ae3b56e441e5c))
|
|
10
|
+
* **api:** api update ([b94afbd](https://github.com/Vitable-Inc/vitable-connect-ruby/commit/b94afbd4992d43ed37036930d0697416b8698946))
|
|
11
|
+
* **api:** api update ([f3374eb](https://github.com/Vitable-Inc/vitable-connect-ruby/commit/f3374eb5c25f3da5c2511fa2b89b049b8fdffbba))
|
|
12
|
+
* **api:** api update ([4c48eb5](https://github.com/Vitable-Inc/vitable-connect-ruby/commit/4c48eb5ebb5f4d939c0604656806fbab0498fabe))
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
### Bug Fixes
|
|
16
|
+
|
|
17
|
+
* **client:** send content-type header for requests with an omitted optional body ([c2bffd5](https://github.com/Vitable-Inc/vitable-connect-ruby/commit/c2bffd51607ee207814ebca6d6774bfd276d2254))
|
|
18
|
+
|
|
3
19
|
## 0.4.0 (2026-05-15)
|
|
4
20
|
|
|
5
21
|
Full Changelog: [v0.3.0...v0.4.0](https://github.com/Vitable-Inc/vitable-connect-ruby/compare/v0.3.0...v0.4.0)
|
data/README.md
CHANGED
|
@@ -30,7 +30,6 @@ module VitableConnect
|
|
|
30
30
|
# @return [VitableConnect::Resources::Auth]
|
|
31
31
|
attr_reader :auth
|
|
32
32
|
|
|
33
|
-
# Define rules that determine which employees qualify for benefits
|
|
34
33
|
# @return [VitableConnect::Resources::BenefitEligibilityPolicies]
|
|
35
34
|
attr_reader :benefit_eligibility_policies
|
|
36
35
|
|
|
@@ -306,7 +306,10 @@ module VitableConnect
|
|
|
306
306
|
VitableConnect::Internal::Util.deep_merge(*[req[:body], opts[:extra_body]].compact)
|
|
307
307
|
end
|
|
308
308
|
|
|
309
|
-
|
|
309
|
+
# Generated methods always pass `req[:body]` for operations that define a
|
|
310
|
+
# request body, so only elide the content-type header when the operation
|
|
311
|
+
# has no body at all, not when an optional body param was omitted.
|
|
312
|
+
headers.delete("content-type") if body.nil? && !req.key?(:body)
|
|
310
313
|
|
|
311
314
|
url = VitableConnect::Internal::Util.join_parsed_uri(
|
|
312
315
|
@base_url_components,
|
|
@@ -75,12 +75,6 @@ module VitableConnect
|
|
|
75
75
|
# @return [Date, nil]
|
|
76
76
|
optional :hire_date, Date, nil?: true
|
|
77
77
|
|
|
78
|
-
# @!attribute phone
|
|
79
|
-
# Phone number (10-digit US domestic string)
|
|
80
|
-
#
|
|
81
|
-
# @return [String, nil]
|
|
82
|
-
optional :phone, String, nil?: true
|
|
83
|
-
|
|
84
78
|
# @!attribute reference_id
|
|
85
79
|
# Partner-assigned reference ID for the employee
|
|
86
80
|
#
|
|
@@ -112,6 +106,12 @@ module VitableConnect
|
|
|
112
106
|
# @return [String]
|
|
113
107
|
required :member_id, String
|
|
114
108
|
|
|
109
|
+
# @!attribute phone
|
|
110
|
+
# Phone number (10-digit US domestic string)
|
|
111
|
+
#
|
|
112
|
+
# @return [String, nil]
|
|
113
|
+
required :phone, String, nil?: true
|
|
114
|
+
|
|
115
115
|
# @!attribute status
|
|
116
116
|
# Employee status (active or terminated)
|
|
117
117
|
#
|
|
@@ -119,7 +119,7 @@ module VitableConnect
|
|
|
119
119
|
required :status, String
|
|
120
120
|
end
|
|
121
121
|
|
|
122
|
-
# @!method initialize(id:, created_at:, date_of_birth:, deductions:, email:, first_name:, last_name:, member_id:, status:, updated_at:, address: nil, employee_class: nil, gender: nil, hire_date: nil,
|
|
122
|
+
# @!method initialize(id:, created_at:, date_of_birth:, deductions:, email:, first_name:, last_name:, member_id:, phone:, status:, updated_at:, address: nil, employee_class: nil, gender: nil, hire_date: nil, reference_id: nil, suffix: nil, termination_date: nil)
|
|
123
123
|
# Some parameter documentations has been truncated, see
|
|
124
124
|
# {VitableConnect::Models::Employee} for more details.
|
|
125
125
|
#
|
|
@@ -139,6 +139,8 @@ module VitableConnect
|
|
|
139
139
|
#
|
|
140
140
|
# @param member_id [String] Unique member identifier with 'mbr\_' prefix
|
|
141
141
|
#
|
|
142
|
+
# @param phone [String, nil] Phone number (10-digit US domestic string)
|
|
143
|
+
#
|
|
142
144
|
# @param status [String] Employee status (active or terminated)
|
|
143
145
|
#
|
|
144
146
|
# @param updated_at [Time] Timestamp when the employee was last updated
|
|
@@ -151,8 +153,6 @@ module VitableConnect
|
|
|
151
153
|
#
|
|
152
154
|
# @param hire_date [Date, nil] Employee's hire date with the employer
|
|
153
155
|
#
|
|
154
|
-
# @param phone [String, nil] Phone number (10-digit US domestic string)
|
|
155
|
-
#
|
|
156
156
|
# @param reference_id [String, nil] Partner-assigned reference ID for the employee
|
|
157
157
|
#
|
|
158
158
|
# @param suffix [String, nil] Name suffix (e.g., Jr., Sr., III)
|
|
@@ -71,12 +71,6 @@ module VitableConnect
|
|
|
71
71
|
# @return [String, nil]
|
|
72
72
|
required :ein, String, nil?: true
|
|
73
73
|
|
|
74
|
-
# @!attribute eligibility_policy_id
|
|
75
|
-
# ID of the benefit eligibility policy (epol\_\*), if assigned
|
|
76
|
-
#
|
|
77
|
-
# @return [String, nil]
|
|
78
|
-
required :eligibility_policy_id, String, nil?: true
|
|
79
|
-
|
|
80
74
|
# @!attribute organization_id
|
|
81
75
|
# ID of the parent organization (org\_\*)
|
|
82
76
|
#
|
|
@@ -84,7 +78,7 @@ module VitableConnect
|
|
|
84
78
|
required :organization_id, String, nil?: true
|
|
85
79
|
end
|
|
86
80
|
|
|
87
|
-
# @!method initialize(id:, active:, address:, created_at:, ein:,
|
|
81
|
+
# @!method initialize(id:, active:, address:, created_at:, ein:, legal_name:, name:, organization_id:, updated_at:, email: nil, phone_number: nil, reference_id: nil)
|
|
88
82
|
# Serializer for Employer entity in public API responses.
|
|
89
83
|
#
|
|
90
84
|
# @param id [String] Unique employer identifier with 'empr\_' prefix
|
|
@@ -97,8 +91,6 @@ module VitableConnect
|
|
|
97
91
|
#
|
|
98
92
|
# @param ein [String, nil] Employer Identification Number (masked in responses)
|
|
99
93
|
#
|
|
100
|
-
# @param eligibility_policy_id [String, nil] ID of the benefit eligibility policy (epol\_\*), if assigned
|
|
101
|
-
#
|
|
102
94
|
# @param legal_name [String] Legal business name for compliance and tax purposes
|
|
103
95
|
#
|
|
104
96
|
# @param name [String] Display name of the employer
|
|
@@ -5,42 +5,53 @@ module VitableConnect
|
|
|
5
5
|
# @see VitableConnect::Resources::Groups#list
|
|
6
6
|
class Group < VitableConnect::Internal::Type::BaseModel
|
|
7
7
|
# @!attribute id
|
|
8
|
+
# Prefixed group identifier (`grp_<base64-encoded-uuid>`).
|
|
8
9
|
#
|
|
9
10
|
# @return [String]
|
|
10
11
|
required :id, String
|
|
11
12
|
|
|
12
13
|
# @!attribute created_at
|
|
14
|
+
# Group creation timestamp (ISO 8601, UTC).
|
|
13
15
|
#
|
|
14
16
|
# @return [Time, nil]
|
|
15
17
|
required :created_at, Time, nil?: true
|
|
16
18
|
|
|
17
19
|
# @!attribute external_reference_id
|
|
20
|
+
# Stable identifier for this group in the integrator's own system.
|
|
18
21
|
#
|
|
19
22
|
# @return [String]
|
|
20
23
|
required :external_reference_id, String
|
|
21
24
|
|
|
22
25
|
# @!attribute name
|
|
26
|
+
# Human-readable group name.
|
|
23
27
|
#
|
|
24
28
|
# @return [String]
|
|
25
29
|
required :name, String
|
|
26
30
|
|
|
27
31
|
# @!attribute organization_id
|
|
32
|
+
# Prefixed organization identifier (`org_<base64-encoded-uuid>`).
|
|
28
33
|
#
|
|
29
34
|
# @return [String]
|
|
30
35
|
required :organization_id, String
|
|
31
36
|
|
|
32
37
|
# @!attribute updated_at
|
|
38
|
+
# Last-update timestamp (ISO 8601, UTC).
|
|
33
39
|
#
|
|
34
40
|
# @return [Time, nil]
|
|
35
41
|
required :updated_at, Time, nil?: true
|
|
36
42
|
|
|
37
43
|
# @!method initialize(id:, created_at:, external_reference_id:, name:, organization_id:, updated_at:)
|
|
38
|
-
# @param id [String]
|
|
39
|
-
#
|
|
40
|
-
# @param
|
|
41
|
-
#
|
|
42
|
-
# @param
|
|
43
|
-
#
|
|
44
|
+
# @param id [String] Prefixed group identifier (`grp_<base64-encoded-uuid>`).
|
|
45
|
+
#
|
|
46
|
+
# @param created_at [Time, nil] Group creation timestamp (ISO 8601, UTC).
|
|
47
|
+
#
|
|
48
|
+
# @param external_reference_id [String] Stable identifier for this group in the integrator's own system.
|
|
49
|
+
#
|
|
50
|
+
# @param name [String] Human-readable group name.
|
|
51
|
+
#
|
|
52
|
+
# @param organization_id [String] Prefixed organization identifier (`org_<base64-encoded-uuid>`).
|
|
53
|
+
#
|
|
54
|
+
# @param updated_at [Time, nil] Last-update timestamp (ISO 8601, UTC).
|
|
44
55
|
end
|
|
45
56
|
end
|
|
46
57
|
end
|
|
@@ -40,15 +40,86 @@ module VitableConnect
|
|
|
40
40
|
|
|
41
41
|
# @!attribute results
|
|
42
42
|
#
|
|
43
|
-
# @return [
|
|
44
|
-
required :results,
|
|
43
|
+
# @return [VitableConnect::Models::Groups::Members::SyncRetrieveResponse::Data::Results, nil]
|
|
44
|
+
required :results,
|
|
45
|
+
-> { VitableConnect::Models::Groups::Members::SyncRetrieveResponse::Data::Results },
|
|
46
|
+
nil?: true
|
|
45
47
|
|
|
46
48
|
# @!method initialize(accepted_at:, completed_at:, group_id:, request_id:, results:)
|
|
47
49
|
# @param accepted_at [Time]
|
|
48
50
|
# @param completed_at [Time, nil]
|
|
49
51
|
# @param group_id [String]
|
|
50
52
|
# @param request_id [String]
|
|
51
|
-
# @param results [
|
|
53
|
+
# @param results [VitableConnect::Models::Groups::Members::SyncRetrieveResponse::Data::Results, nil]
|
|
54
|
+
|
|
55
|
+
# @see VitableConnect::Models::Groups::Members::SyncRetrieveResponse::Data#results
|
|
56
|
+
class Results < VitableConnect::Internal::Type::BaseModel
|
|
57
|
+
# @!attribute added_group_member_ids
|
|
58
|
+
#
|
|
59
|
+
# @return [Array<String>]
|
|
60
|
+
required :added_group_member_ids, VitableConnect::Internal::Type::ArrayOf[String]
|
|
61
|
+
|
|
62
|
+
# @!attribute failures
|
|
63
|
+
#
|
|
64
|
+
# @return [Array<VitableConnect::Models::Groups::Members::SyncRetrieveResponse::Data::Results::Failure>]
|
|
65
|
+
required :failures,
|
|
66
|
+
-> { VitableConnect::Internal::Type::ArrayOf[VitableConnect::Models::Groups::Members::SyncRetrieveResponse::Data::Results::Failure] }
|
|
67
|
+
|
|
68
|
+
# @!attribute removed_group_member_ids
|
|
69
|
+
#
|
|
70
|
+
# @return [Array<String>]
|
|
71
|
+
required :removed_group_member_ids, VitableConnect::Internal::Type::ArrayOf[String]
|
|
72
|
+
|
|
73
|
+
# @!method initialize(added_group_member_ids:, failures:, removed_group_member_ids:)
|
|
74
|
+
# @param added_group_member_ids [Array<String>]
|
|
75
|
+
# @param failures [Array<VitableConnect::Models::Groups::Members::SyncRetrieveResponse::Data::Results::Failure>]
|
|
76
|
+
# @param removed_group_member_ids [Array<String>]
|
|
77
|
+
|
|
78
|
+
class Failure < VitableConnect::Internal::Type::BaseModel
|
|
79
|
+
# @!attribute operation
|
|
80
|
+
# - `add` - add
|
|
81
|
+
# - `remove` - remove
|
|
82
|
+
#
|
|
83
|
+
# @return [Symbol, VitableConnect::Models::Groups::Members::SyncRetrieveResponse::Data::Results::Failure::Operation]
|
|
84
|
+
required :operation,
|
|
85
|
+
enum: -> { VitableConnect::Models::Groups::Members::SyncRetrieveResponse::Data::Results::Failure::Operation }
|
|
86
|
+
|
|
87
|
+
# @!attribute reason
|
|
88
|
+
#
|
|
89
|
+
# @return [String]
|
|
90
|
+
required :reason, String
|
|
91
|
+
|
|
92
|
+
# @!attribute reference_id
|
|
93
|
+
#
|
|
94
|
+
# @return [String]
|
|
95
|
+
required :reference_id, String
|
|
96
|
+
|
|
97
|
+
# @!method initialize(operation:, reason:, reference_id:)
|
|
98
|
+
# Some parameter documentations has been truncated, see
|
|
99
|
+
# {VitableConnect::Models::Groups::Members::SyncRetrieveResponse::Data::Results::Failure}
|
|
100
|
+
# for more details.
|
|
101
|
+
#
|
|
102
|
+
# @param operation [Symbol, VitableConnect::Models::Groups::Members::SyncRetrieveResponse::Data::Results::Failure::Operation] - `add` - add
|
|
103
|
+
#
|
|
104
|
+
# @param reason [String]
|
|
105
|
+
#
|
|
106
|
+
# @param reference_id [String]
|
|
107
|
+
|
|
108
|
+
# - `add` - add
|
|
109
|
+
# - `remove` - remove
|
|
110
|
+
#
|
|
111
|
+
# @see VitableConnect::Models::Groups::Members::SyncRetrieveResponse::Data::Results::Failure#operation
|
|
112
|
+
module Operation
|
|
113
|
+
extend VitableConnect::Internal::Type::Enum
|
|
114
|
+
|
|
115
|
+
ADD = :add
|
|
116
|
+
REMOVE = :remove
|
|
117
|
+
|
|
118
|
+
# @!method self.values
|
|
119
|
+
# @return [Array<Symbol>]
|
|
120
|
+
end
|
|
121
|
+
end
|
|
122
|
+
end
|
|
52
123
|
end
|
|
53
124
|
end
|
|
54
125
|
end
|
|
@@ -27,7 +27,6 @@ module VitableConnect
|
|
|
27
27
|
# - `employee.eligibility_granted` - Employee Eligibility Granted
|
|
28
28
|
# - `employee.eligibility_terminated` - Employee Eligibility Terminated
|
|
29
29
|
# - `employee.deactivated` - Employee Deactivated
|
|
30
|
-
# - `employer.eligibility_policy_created` - Employer Eligibility Policy Created
|
|
31
30
|
# - `employee.deduction_created` - Employee Deduction Created
|
|
32
31
|
#
|
|
33
32
|
# @return [Symbol, VitableConnect::Models::WebhookEventListParams::EventName, nil]
|
|
@@ -90,7 +89,6 @@ module VitableConnect
|
|
|
90
89
|
# - `employee.eligibility_granted` - Employee Eligibility Granted
|
|
91
90
|
# - `employee.eligibility_terminated` - Employee Eligibility Terminated
|
|
92
91
|
# - `employee.deactivated` - Employee Deactivated
|
|
93
|
-
# - `employer.eligibility_policy_created` - Employer Eligibility Policy Created
|
|
94
92
|
# - `employee.deduction_created` - Employee Deduction Created
|
|
95
93
|
module EventName
|
|
96
94
|
extend VitableConnect::Internal::Type::Enum
|
|
@@ -104,7 +102,6 @@ module VitableConnect
|
|
|
104
102
|
EMPLOYEE_ELIGIBILITY_GRANTED = :"employee.eligibility_granted"
|
|
105
103
|
EMPLOYEE_ELIGIBILITY_TERMINATED = :"employee.eligibility_terminated"
|
|
106
104
|
EMPLOYEE_DEACTIVATED = :"employee.deactivated"
|
|
107
|
-
EMPLOYER_ELIGIBILITY_POLICY_CREATED = :"employer.eligibility_policy_created"
|
|
108
105
|
EMPLOYEE_DEDUCTION_CREATED = :"employee.deduction_created"
|
|
109
106
|
|
|
110
107
|
# @!method self.values
|
|
@@ -44,12 +44,6 @@ module VitableConnect
|
|
|
44
44
|
|
|
45
45
|
AuthIssueAccessTokenParams = VitableConnect::Models::AuthIssueAccessTokenParams
|
|
46
46
|
|
|
47
|
-
BenefitEligibilityPolicy = VitableConnect::Models::BenefitEligibilityPolicy
|
|
48
|
-
|
|
49
|
-
BenefitEligibilityPolicyResponse = VitableConnect::Models::BenefitEligibilityPolicyResponse
|
|
50
|
-
|
|
51
|
-
BenefitEligibilityPolicyRetrieveParams = VitableConnect::Models::BenefitEligibilityPolicyRetrieveParams
|
|
52
|
-
|
|
53
47
|
Employee = VitableConnect::Models::Employee
|
|
54
48
|
|
|
55
49
|
EmployeeClass = VitableConnect::Models::EmployeeClass
|
|
@@ -60,9 +54,6 @@ module VitableConnect
|
|
|
60
54
|
|
|
61
55
|
Employer = VitableConnect::Models::Employer
|
|
62
56
|
|
|
63
|
-
EmployerCreateBenefitEligibilityPolicyParams =
|
|
64
|
-
VitableConnect::Models::EmployerCreateBenefitEligibilityPolicyParams
|
|
65
|
-
|
|
66
57
|
EmployerCreateParams = VitableConnect::Models::EmployerCreateParams
|
|
67
58
|
|
|
68
59
|
EmployerListEmployeesParams = VitableConnect::Models::EmployerListEmployeesParams
|
|
@@ -2,28 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
module VitableConnect
|
|
4
4
|
module Resources
|
|
5
|
-
# Define rules that determine which employees qualify for benefits
|
|
6
5
|
class BenefitEligibilityPolicies
|
|
7
|
-
# Retrieves a benefit eligibility policy by ID.
|
|
8
|
-
#
|
|
9
|
-
# @overload retrieve(policy_id, request_options: {})
|
|
10
|
-
#
|
|
11
|
-
# @param policy_id [String] Unique benefit eligibility policy identifier (epol\_\*)
|
|
12
|
-
#
|
|
13
|
-
# @param request_options [VitableConnect::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
14
|
-
#
|
|
15
|
-
# @return [VitableConnect::Models::BenefitEligibilityPolicyResponse]
|
|
16
|
-
#
|
|
17
|
-
# @see VitableConnect::Models::BenefitEligibilityPolicyRetrieveParams
|
|
18
|
-
def retrieve(policy_id, params = {})
|
|
19
|
-
@client.request(
|
|
20
|
-
method: :get,
|
|
21
|
-
path: ["v1/benefit-eligibility-policies/%1$s", policy_id],
|
|
22
|
-
model: VitableConnect::BenefitEligibilityPolicyResponse,
|
|
23
|
-
options: params[:request_options]
|
|
24
|
-
)
|
|
25
|
-
end
|
|
26
|
-
|
|
27
6
|
# @api private
|
|
28
7
|
#
|
|
29
8
|
# @param client [VitableConnect::Client]
|
|
@@ -88,36 +88,6 @@ module VitableConnect
|
|
|
88
88
|
)
|
|
89
89
|
end
|
|
90
90
|
|
|
91
|
-
# Some parameter documentations has been truncated, see
|
|
92
|
-
# {VitableConnect::Models::EmployerCreateBenefitEligibilityPolicyParams} for more
|
|
93
|
-
# details.
|
|
94
|
-
#
|
|
95
|
-
# Creates a benefit eligibility policy for the specified employer.
|
|
96
|
-
#
|
|
97
|
-
# @overload create_benefit_eligibility_policy(employer_id, classification:, waiting_period:, request_options: {})
|
|
98
|
-
#
|
|
99
|
-
# @param employer_id [String] Unique employer identifier (empr\_\*)
|
|
100
|
-
#
|
|
101
|
-
# @param classification [String] Which employee classifications are eligible. One of: full_time, part_time, all
|
|
102
|
-
#
|
|
103
|
-
# @param waiting_period [String] Waiting period before eligibility. One of: first_of_following_month, 30_days, 60
|
|
104
|
-
#
|
|
105
|
-
# @param request_options [VitableConnect::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
106
|
-
#
|
|
107
|
-
# @return [VitableConnect::Models::BenefitEligibilityPolicyResponse]
|
|
108
|
-
#
|
|
109
|
-
# @see VitableConnect::Models::EmployerCreateBenefitEligibilityPolicyParams
|
|
110
|
-
def create_benefit_eligibility_policy(employer_id, params)
|
|
111
|
-
parsed, options = VitableConnect::EmployerCreateBenefitEligibilityPolicyParams.dump_request(params)
|
|
112
|
-
@client.request(
|
|
113
|
-
method: :post,
|
|
114
|
-
path: ["v1/employers/%1$s/benefit-eligibility-policies", employer_id],
|
|
115
|
-
body: parsed,
|
|
116
|
-
model: VitableConnect::BenefitEligibilityPolicyResponse,
|
|
117
|
-
options: options
|
|
118
|
-
)
|
|
119
|
-
end
|
|
120
|
-
|
|
121
91
|
# Retrieves a paginated list of all employees for a specific employer. Results are
|
|
122
92
|
# paginated using page and limit parameters. Each employee includes payroll
|
|
123
93
|
# deductions from the most recent statement period. When a new deduction statement
|
data/lib/vitable_connect.rb
CHANGED
|
@@ -55,16 +55,12 @@ require_relative "vitable_connect/client"
|
|
|
55
55
|
require_relative "vitable_connect/internal/page_number_page"
|
|
56
56
|
require_relative "vitable_connect/models/auth_issue_access_token_params"
|
|
57
57
|
require_relative "vitable_connect/models/auth_issue_access_token_response"
|
|
58
|
-
require_relative "vitable_connect/models/benefit_eligibility_policy"
|
|
59
|
-
require_relative "vitable_connect/models/benefit_eligibility_policy_response"
|
|
60
|
-
require_relative "vitable_connect/models/benefit_eligibility_policy_retrieve_params"
|
|
61
58
|
require_relative "vitable_connect/models/employee"
|
|
62
59
|
require_relative "vitable_connect/models/employee_class"
|
|
63
60
|
require_relative "vitable_connect/models/employee_list_enrollments_params"
|
|
64
61
|
require_relative "vitable_connect/models/employee_retrieve_params"
|
|
65
62
|
require_relative "vitable_connect/models/employee_retrieve_response"
|
|
66
63
|
require_relative "vitable_connect/models/employer"
|
|
67
|
-
require_relative "vitable_connect/models/employer_create_benefit_eligibility_policy_params"
|
|
68
64
|
require_relative "vitable_connect/models/employer_create_params"
|
|
69
65
|
require_relative "vitable_connect/models/employer_list_employees_params"
|
|
70
66
|
require_relative "vitable_connect/models/employer_list_params"
|
|
@@ -28,7 +28,6 @@ module VitableConnect
|
|
|
28
28
|
sig { returns(VitableConnect::Resources::Auth) }
|
|
29
29
|
attr_reader :auth
|
|
30
30
|
|
|
31
|
-
# Define rules that determine which employees qualify for benefits
|
|
32
31
|
sig { returns(VitableConnect::Resources::BenefitEligibilityPolicies) }
|
|
33
32
|
attr_reader :benefit_eligibility_policies
|
|
34
33
|
|
|
@@ -65,10 +65,6 @@ module VitableConnect
|
|
|
65
65
|
sig { returns(T.nilable(Date)) }
|
|
66
66
|
attr_accessor :hire_date
|
|
67
67
|
|
|
68
|
-
# Phone number (10-digit US domestic string)
|
|
69
|
-
sig { returns(T.nilable(String)) }
|
|
70
|
-
attr_accessor :phone
|
|
71
|
-
|
|
72
68
|
# Partner-assigned reference ID for the employee
|
|
73
69
|
sig { returns(T.nilable(String)) }
|
|
74
70
|
attr_accessor :reference_id
|
|
@@ -89,6 +85,10 @@ module VitableConnect
|
|
|
89
85
|
sig { returns(String) }
|
|
90
86
|
attr_accessor :member_id
|
|
91
87
|
|
|
88
|
+
# Phone number (10-digit US domestic string)
|
|
89
|
+
sig { returns(T.nilable(String)) }
|
|
90
|
+
attr_accessor :phone
|
|
91
|
+
|
|
92
92
|
# Employee status (active or terminated)
|
|
93
93
|
sig { returns(String) }
|
|
94
94
|
attr_accessor :status
|
|
@@ -103,13 +103,13 @@ module VitableConnect
|
|
|
103
103
|
first_name: String,
|
|
104
104
|
last_name: String,
|
|
105
105
|
member_id: String,
|
|
106
|
+
phone: T.nilable(String),
|
|
106
107
|
status: String,
|
|
107
108
|
updated_at: Time,
|
|
108
109
|
address: T.nilable(VitableConnect::Employee::Address::OrHash),
|
|
109
110
|
employee_class: T.nilable(VitableConnect::EmployeeClass::OrSymbol),
|
|
110
111
|
gender: T.nilable(String),
|
|
111
112
|
hire_date: T.nilable(Date),
|
|
112
|
-
phone: T.nilable(String),
|
|
113
113
|
reference_id: T.nilable(String),
|
|
114
114
|
suffix: T.nilable(String),
|
|
115
115
|
termination_date: T.nilable(Date)
|
|
@@ -133,6 +133,8 @@ module VitableConnect
|
|
|
133
133
|
last_name:,
|
|
134
134
|
# Unique member identifier with 'mbr\_' prefix
|
|
135
135
|
member_id:,
|
|
136
|
+
# Phone number (10-digit US domestic string)
|
|
137
|
+
phone:,
|
|
136
138
|
# Employee status (active or terminated)
|
|
137
139
|
status:,
|
|
138
140
|
# Timestamp when the employee was last updated
|
|
@@ -150,8 +152,6 @@ module VitableConnect
|
|
|
150
152
|
gender: nil,
|
|
151
153
|
# Employee's hire date with the employer
|
|
152
154
|
hire_date: nil,
|
|
153
|
-
# Phone number (10-digit US domestic string)
|
|
154
|
-
phone: nil,
|
|
155
155
|
# Partner-assigned reference ID for the employee
|
|
156
156
|
reference_id: nil,
|
|
157
157
|
# Name suffix (e.g., Jr., Sr., III)
|
|
@@ -172,6 +172,7 @@ module VitableConnect
|
|
|
172
172
|
first_name: String,
|
|
173
173
|
last_name: String,
|
|
174
174
|
member_id: String,
|
|
175
|
+
phone: T.nilable(String),
|
|
175
176
|
status: String,
|
|
176
177
|
updated_at: Time,
|
|
177
178
|
address: T.nilable(VitableConnect::Employee::Address),
|
|
@@ -179,7 +180,6 @@ module VitableConnect
|
|
|
179
180
|
T.nilable(VitableConnect::EmployeeClass::TaggedSymbol),
|
|
180
181
|
gender: T.nilable(String),
|
|
181
182
|
hire_date: T.nilable(Date),
|
|
182
|
-
phone: T.nilable(String),
|
|
183
183
|
reference_id: T.nilable(String),
|
|
184
184
|
suffix: T.nilable(String),
|
|
185
185
|
termination_date: T.nilable(Date)
|
|
@@ -55,10 +55,6 @@ module VitableConnect
|
|
|
55
55
|
sig { returns(T.nilable(String)) }
|
|
56
56
|
attr_accessor :ein
|
|
57
57
|
|
|
58
|
-
# ID of the benefit eligibility policy (epol\_\*), if assigned
|
|
59
|
-
sig { returns(T.nilable(String)) }
|
|
60
|
-
attr_accessor :eligibility_policy_id
|
|
61
|
-
|
|
62
58
|
# ID of the parent organization (org\_\*)
|
|
63
59
|
sig { returns(T.nilable(String)) }
|
|
64
60
|
attr_accessor :organization_id
|
|
@@ -71,7 +67,6 @@ module VitableConnect
|
|
|
71
67
|
address: VitableConnect::Employer::Address::OrHash,
|
|
72
68
|
created_at: Time,
|
|
73
69
|
ein: T.nilable(String),
|
|
74
|
-
eligibility_policy_id: T.nilable(String),
|
|
75
70
|
legal_name: String,
|
|
76
71
|
name: String,
|
|
77
72
|
organization_id: T.nilable(String),
|
|
@@ -92,8 +87,6 @@ module VitableConnect
|
|
|
92
87
|
created_at:,
|
|
93
88
|
# Employer Identification Number (masked in responses)
|
|
94
89
|
ein:,
|
|
95
|
-
# ID of the benefit eligibility policy (epol\_\*), if assigned
|
|
96
|
-
eligibility_policy_id:,
|
|
97
90
|
# Legal business name for compliance and tax purposes
|
|
98
91
|
legal_name:,
|
|
99
92
|
# Display name of the employer
|
|
@@ -119,7 +112,6 @@ module VitableConnect
|
|
|
119
112
|
address: VitableConnect::Employer::Address,
|
|
120
113
|
created_at: Time,
|
|
121
114
|
ein: T.nilable(String),
|
|
122
|
-
eligibility_policy_id: T.nilable(String),
|
|
123
115
|
legal_name: String,
|
|
124
116
|
name: String,
|
|
125
117
|
organization_id: T.nilable(String),
|
|
@@ -8,21 +8,27 @@ module VitableConnect
|
|
|
8
8
|
T.any(VitableConnect::Group, VitableConnect::Internal::AnyHash)
|
|
9
9
|
end
|
|
10
10
|
|
|
11
|
+
# Prefixed group identifier (`grp_<base64-encoded-uuid>`).
|
|
11
12
|
sig { returns(String) }
|
|
12
13
|
attr_accessor :id
|
|
13
14
|
|
|
15
|
+
# Group creation timestamp (ISO 8601, UTC).
|
|
14
16
|
sig { returns(T.nilable(Time)) }
|
|
15
17
|
attr_accessor :created_at
|
|
16
18
|
|
|
19
|
+
# Stable identifier for this group in the integrator's own system.
|
|
17
20
|
sig { returns(String) }
|
|
18
21
|
attr_accessor :external_reference_id
|
|
19
22
|
|
|
23
|
+
# Human-readable group name.
|
|
20
24
|
sig { returns(String) }
|
|
21
25
|
attr_accessor :name
|
|
22
26
|
|
|
27
|
+
# Prefixed organization identifier (`org_<base64-encoded-uuid>`).
|
|
23
28
|
sig { returns(String) }
|
|
24
29
|
attr_accessor :organization_id
|
|
25
30
|
|
|
31
|
+
# Last-update timestamp (ISO 8601, UTC).
|
|
26
32
|
sig { returns(T.nilable(Time)) }
|
|
27
33
|
attr_accessor :updated_at
|
|
28
34
|
|
|
@@ -37,11 +43,17 @@ module VitableConnect
|
|
|
37
43
|
).returns(T.attached_class)
|
|
38
44
|
end
|
|
39
45
|
def self.new(
|
|
46
|
+
# Prefixed group identifier (`grp_<base64-encoded-uuid>`).
|
|
40
47
|
id:,
|
|
48
|
+
# Group creation timestamp (ISO 8601, UTC).
|
|
41
49
|
created_at:,
|
|
50
|
+
# Stable identifier for this group in the integrator's own system.
|
|
42
51
|
external_reference_id:,
|
|
52
|
+
# Human-readable group name.
|
|
43
53
|
name:,
|
|
54
|
+
# Prefixed organization identifier (`org_<base64-encoded-uuid>`).
|
|
44
55
|
organization_id:,
|
|
56
|
+
# Last-update timestamp (ISO 8601, UTC).
|
|
45
57
|
updated_at:
|
|
46
58
|
)
|
|
47
59
|
end
|