vitable-connect 0.3.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 +37 -0
- data/README.md +9 -9
- data/lib/vitable_connect/client.rb +23 -2
- data/lib/vitable_connect/internal/transport/base_client.rb +5 -0
- data/lib/vitable_connect/models/employee.rb +9 -53
- data/lib/vitable_connect/models/employer.rb +1 -9
- data/lib/vitable_connect/models/employer_update_settings_params.rb +52 -0
- data/lib/vitable_connect/models/employer_update_settings_response.rb +56 -0
- data/lib/vitable_connect/models/group.rb +57 -0
- data/lib/vitable_connect/models/group_create_params.rb +26 -0
- data/lib/vitable_connect/models/group_list_params.rb +30 -0
- data/lib/vitable_connect/models/group_response.rb +18 -0
- data/lib/vitable_connect/models/group_retrieve_params.rb +22 -0
- data/lib/vitable_connect/models/group_update_params.rb +36 -0
- data/lib/vitable_connect/models/groups/members/sync_retrieve_params.rb +33 -0
- data/lib/vitable_connect/models/groups/members/sync_retrieve_response.rb +128 -0
- data/lib/vitable_connect/models/groups/members/sync_submit_params.rb +121 -0
- data/lib/vitable_connect/models/groups/members/sync_submit_response.rb +45 -0
- data/lib/vitable_connect/models/plan_list_params.rb +30 -0
- data/lib/vitable_connect/models/plan_list_response.rb +22 -0
- data/lib/vitable_connect/models/webhook_event_list_params.rb +0 -3
- data/lib/vitable_connect/models.rb +18 -9
- data/lib/vitable_connect/resources/benefit_eligibility_policies.rb +0 -21
- data/lib/vitable_connect/resources/employers.rb +28 -30
- data/lib/vitable_connect/resources/groups/members/sync.rb +74 -0
- data/lib/vitable_connect/resources/groups/members.rb +20 -0
- data/lib/vitable_connect/resources/groups.rb +114 -0
- data/lib/vitable_connect/resources/plans.rb +41 -0
- data/lib/vitable_connect/version.rb +1 -1
- data/lib/vitable_connect.rb +18 -4
- data/rbi/vitable_connect/client.rbi +6 -1
- data/rbi/vitable_connect/models/employee.rbi +8 -73
- data/rbi/vitable_connect/models/employer.rbi +0 -8
- data/rbi/vitable_connect/models/employer_update_settings_params.rbi +114 -0
- data/rbi/vitable_connect/models/employer_update_settings_response.rbi +147 -0
- data/rbi/vitable_connect/models/group.rbi +77 -0
- data/rbi/vitable_connect/models/group_create_params.rbi +46 -0
- data/rbi/vitable_connect/models/group_list_params.rbi +60 -0
- data/rbi/vitable_connect/models/group_response.rbi +32 -0
- data/rbi/vitable_connect/models/{benefit_eligibility_policy_retrieve_params.rbi → group_retrieve_params.rbi} +8 -8
- data/rbi/vitable_connect/models/group_update_params.rbi +58 -0
- data/rbi/vitable_connect/models/groups/members/sync_retrieve_params.rbi +56 -0
- data/rbi/vitable_connect/models/groups/members/sync_retrieve_response.rbi +282 -0
- data/rbi/vitable_connect/models/groups/members/sync_submit_params.rbi +214 -0
- data/rbi/vitable_connect/models/groups/members/sync_submit_response.rbi +92 -0
- data/rbi/vitable_connect/models/plan_list_params.rbi +60 -0
- data/rbi/vitable_connect/models/plan_list_response.rbi +29 -0
- data/rbi/vitable_connect/models/webhook_event_list_params.rbi +0 -8
- data/rbi/vitable_connect/models.rbi +19 -11
- data/rbi/vitable_connect/resources/benefit_eligibility_policies.rbi +0 -15
- data/rbi/vitable_connect/resources/employers.rbi +22 -21
- data/rbi/vitable_connect/resources/groups/members/sync.rbi +62 -0
- data/rbi/vitable_connect/resources/groups/members.rbi +17 -0
- data/rbi/vitable_connect/resources/groups.rbi +79 -0
- data/rbi/vitable_connect/resources/plans.rbi +34 -0
- data/rbi/vitable_connect/resources/webhook_events.rbi +0 -1
- data/sig/vitable_connect/client.rbs +4 -0
- data/sig/vitable_connect/models/employee.rbs +5 -37
- data/sig/vitable_connect/models/employer.rbs +0 -5
- data/sig/vitable_connect/models/employer_update_settings_params.rbs +44 -0
- data/sig/vitable_connect/models/employer_update_settings_response.rbs +48 -0
- data/sig/vitable_connect/models/group.rbs +45 -0
- data/sig/vitable_connect/models/group_create_params.rbs +28 -0
- data/sig/vitable_connect/models/group_list_params.rbs +32 -0
- data/sig/vitable_connect/models/group_response.rbs +13 -0
- data/sig/vitable_connect/models/{benefit_eligibility_policy_retrieve_params.rbs → group_retrieve_params.rbs} +6 -6
- data/sig/vitable_connect/models/group_update_params.rbs +32 -0
- data/sig/vitable_connect/models/groups/members/sync_retrieve_params.rbs +32 -0
- data/sig/vitable_connect/models/groups/members/sync_retrieve_response.rbs +126 -0
- data/sig/vitable_connect/models/groups/members/sync_submit_params.rbs +124 -0
- data/sig/vitable_connect/models/groups/members/sync_submit_response.rbs +47 -0
- data/sig/vitable_connect/models/plan_list_params.rbs +32 -0
- data/sig/vitable_connect/models/plan_list_response.rbs +15 -0
- data/sig/vitable_connect/models/webhook_event_list_params.rbs +0 -2
- data/sig/vitable_connect/models.rbs +18 -8
- data/sig/vitable_connect/resources/benefit_eligibility_policies.rbs +0 -5
- data/sig/vitable_connect/resources/employers.rbs +6 -7
- data/sig/vitable_connect/resources/groups/members/sync.rbs +23 -0
- data/sig/vitable_connect/resources/groups/members.rbs +11 -0
- data/sig/vitable_connect/resources/groups.rbs +33 -0
- data/sig/vitable_connect/resources/plans.rbs +13 -0
- metadata +56 -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/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/employer_create_benefit_eligibility_policy_params.rbs +0 -32
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module VitableConnect
|
|
4
|
+
module Models
|
|
5
|
+
module Groups
|
|
6
|
+
module Members
|
|
7
|
+
class SyncSubmitParams < VitableConnect::Internal::Type::BaseModel
|
|
8
|
+
extend VitableConnect::Internal::Type::RequestParameters::Converter
|
|
9
|
+
include VitableConnect::Internal::Type::RequestParameters
|
|
10
|
+
|
|
11
|
+
OrHash =
|
|
12
|
+
T.type_alias do
|
|
13
|
+
T.any(
|
|
14
|
+
VitableConnect::Groups::Members::SyncSubmitParams,
|
|
15
|
+
VitableConnect::Internal::AnyHash
|
|
16
|
+
)
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
# Unique group identifier (grp\_\*)
|
|
20
|
+
sig { returns(String) }
|
|
21
|
+
attr_accessor :group_id
|
|
22
|
+
|
|
23
|
+
sig do
|
|
24
|
+
returns(
|
|
25
|
+
T::Array[
|
|
26
|
+
VitableConnect::Groups::Members::SyncSubmitParams::Member
|
|
27
|
+
]
|
|
28
|
+
)
|
|
29
|
+
end
|
|
30
|
+
attr_accessor :members
|
|
31
|
+
|
|
32
|
+
sig do
|
|
33
|
+
params(
|
|
34
|
+
group_id: String,
|
|
35
|
+
members:
|
|
36
|
+
T::Array[
|
|
37
|
+
VitableConnect::Groups::Members::SyncSubmitParams::Member::OrHash
|
|
38
|
+
],
|
|
39
|
+
request_options: VitableConnect::RequestOptions::OrHash
|
|
40
|
+
).returns(T.attached_class)
|
|
41
|
+
end
|
|
42
|
+
def self.new(
|
|
43
|
+
# Unique group identifier (grp\_\*)
|
|
44
|
+
group_id:,
|
|
45
|
+
members:,
|
|
46
|
+
request_options: {}
|
|
47
|
+
)
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
sig do
|
|
51
|
+
override.returns(
|
|
52
|
+
{
|
|
53
|
+
group_id: String,
|
|
54
|
+
members:
|
|
55
|
+
T::Array[
|
|
56
|
+
VitableConnect::Groups::Members::SyncSubmitParams::Member
|
|
57
|
+
],
|
|
58
|
+
request_options: VitableConnect::RequestOptions
|
|
59
|
+
}
|
|
60
|
+
)
|
|
61
|
+
end
|
|
62
|
+
def to_hash
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
class Member < VitableConnect::Internal::Type::BaseModel
|
|
66
|
+
OrHash =
|
|
67
|
+
T.type_alias do
|
|
68
|
+
T.any(
|
|
69
|
+
VitableConnect::Groups::Members::SyncSubmitParams::Member,
|
|
70
|
+
VitableConnect::Internal::AnyHash
|
|
71
|
+
)
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
sig do
|
|
75
|
+
returns(
|
|
76
|
+
VitableConnect::Groups::Members::SyncSubmitParams::Member::Address
|
|
77
|
+
)
|
|
78
|
+
end
|
|
79
|
+
attr_reader :address
|
|
80
|
+
|
|
81
|
+
sig do
|
|
82
|
+
params(
|
|
83
|
+
address:
|
|
84
|
+
VitableConnect::Groups::Members::SyncSubmitParams::Member::Address::OrHash
|
|
85
|
+
).void
|
|
86
|
+
end
|
|
87
|
+
attr_writer :address
|
|
88
|
+
|
|
89
|
+
sig { returns(Date) }
|
|
90
|
+
attr_accessor :date_of_birth
|
|
91
|
+
|
|
92
|
+
sig { returns(String) }
|
|
93
|
+
attr_accessor :first_name
|
|
94
|
+
|
|
95
|
+
sig { returns(String) }
|
|
96
|
+
attr_accessor :last_name
|
|
97
|
+
|
|
98
|
+
sig { returns(String) }
|
|
99
|
+
attr_accessor :phone
|
|
100
|
+
|
|
101
|
+
sig { returns(String) }
|
|
102
|
+
attr_accessor :plan_id
|
|
103
|
+
|
|
104
|
+
sig { returns(String) }
|
|
105
|
+
attr_accessor :reference_id
|
|
106
|
+
|
|
107
|
+
sig { returns(T.nilable(String)) }
|
|
108
|
+
attr_accessor :email
|
|
109
|
+
|
|
110
|
+
sig do
|
|
111
|
+
params(
|
|
112
|
+
address:
|
|
113
|
+
VitableConnect::Groups::Members::SyncSubmitParams::Member::Address::OrHash,
|
|
114
|
+
date_of_birth: Date,
|
|
115
|
+
first_name: String,
|
|
116
|
+
last_name: String,
|
|
117
|
+
phone: String,
|
|
118
|
+
plan_id: String,
|
|
119
|
+
reference_id: String,
|
|
120
|
+
email: T.nilable(String)
|
|
121
|
+
).returns(T.attached_class)
|
|
122
|
+
end
|
|
123
|
+
def self.new(
|
|
124
|
+
address:,
|
|
125
|
+
date_of_birth:,
|
|
126
|
+
first_name:,
|
|
127
|
+
last_name:,
|
|
128
|
+
phone:,
|
|
129
|
+
plan_id:,
|
|
130
|
+
reference_id:,
|
|
131
|
+
email: nil
|
|
132
|
+
)
|
|
133
|
+
end
|
|
134
|
+
|
|
135
|
+
sig do
|
|
136
|
+
override.returns(
|
|
137
|
+
{
|
|
138
|
+
address:
|
|
139
|
+
VitableConnect::Groups::Members::SyncSubmitParams::Member::Address,
|
|
140
|
+
date_of_birth: Date,
|
|
141
|
+
first_name: String,
|
|
142
|
+
last_name: String,
|
|
143
|
+
phone: String,
|
|
144
|
+
plan_id: String,
|
|
145
|
+
reference_id: String,
|
|
146
|
+
email: T.nilable(String)
|
|
147
|
+
}
|
|
148
|
+
)
|
|
149
|
+
end
|
|
150
|
+
def to_hash
|
|
151
|
+
end
|
|
152
|
+
|
|
153
|
+
class Address < VitableConnect::Internal::Type::BaseModel
|
|
154
|
+
OrHash =
|
|
155
|
+
T.type_alias do
|
|
156
|
+
T.any(
|
|
157
|
+
VitableConnect::Groups::Members::SyncSubmitParams::Member::Address,
|
|
158
|
+
VitableConnect::Internal::AnyHash
|
|
159
|
+
)
|
|
160
|
+
end
|
|
161
|
+
|
|
162
|
+
sig { returns(String) }
|
|
163
|
+
attr_accessor :address_line_1
|
|
164
|
+
|
|
165
|
+
sig { returns(String) }
|
|
166
|
+
attr_accessor :city
|
|
167
|
+
|
|
168
|
+
sig { returns(String) }
|
|
169
|
+
attr_accessor :state
|
|
170
|
+
|
|
171
|
+
sig { returns(String) }
|
|
172
|
+
attr_accessor :zipcode
|
|
173
|
+
|
|
174
|
+
sig { returns(T.nilable(String)) }
|
|
175
|
+
attr_accessor :address_line_2
|
|
176
|
+
|
|
177
|
+
sig do
|
|
178
|
+
params(
|
|
179
|
+
address_line_1: String,
|
|
180
|
+
city: String,
|
|
181
|
+
state: String,
|
|
182
|
+
zipcode: String,
|
|
183
|
+
address_line_2: T.nilable(String)
|
|
184
|
+
).returns(T.attached_class)
|
|
185
|
+
end
|
|
186
|
+
def self.new(
|
|
187
|
+
address_line_1:,
|
|
188
|
+
city:,
|
|
189
|
+
state:,
|
|
190
|
+
zipcode:,
|
|
191
|
+
address_line_2: nil
|
|
192
|
+
)
|
|
193
|
+
end
|
|
194
|
+
|
|
195
|
+
sig do
|
|
196
|
+
override.returns(
|
|
197
|
+
{
|
|
198
|
+
address_line_1: String,
|
|
199
|
+
city: String,
|
|
200
|
+
state: String,
|
|
201
|
+
zipcode: String,
|
|
202
|
+
address_line_2: T.nilable(String)
|
|
203
|
+
}
|
|
204
|
+
)
|
|
205
|
+
end
|
|
206
|
+
def to_hash
|
|
207
|
+
end
|
|
208
|
+
end
|
|
209
|
+
end
|
|
210
|
+
end
|
|
211
|
+
end
|
|
212
|
+
end
|
|
213
|
+
end
|
|
214
|
+
end
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module VitableConnect
|
|
4
|
+
module Models
|
|
5
|
+
module Groups
|
|
6
|
+
module Members
|
|
7
|
+
class SyncSubmitResponse < VitableConnect::Internal::Type::BaseModel
|
|
8
|
+
OrHash =
|
|
9
|
+
T.type_alias do
|
|
10
|
+
T.any(
|
|
11
|
+
VitableConnect::Models::Groups::Members::SyncSubmitResponse,
|
|
12
|
+
VitableConnect::Internal::AnyHash
|
|
13
|
+
)
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
sig do
|
|
17
|
+
returns(
|
|
18
|
+
VitableConnect::Models::Groups::Members::SyncSubmitResponse::Data
|
|
19
|
+
)
|
|
20
|
+
end
|
|
21
|
+
attr_reader :data
|
|
22
|
+
|
|
23
|
+
sig do
|
|
24
|
+
params(
|
|
25
|
+
data:
|
|
26
|
+
VitableConnect::Models::Groups::Members::SyncSubmitResponse::Data::OrHash
|
|
27
|
+
).void
|
|
28
|
+
end
|
|
29
|
+
attr_writer :data
|
|
30
|
+
|
|
31
|
+
# Response containing a single group member sync detail resource.
|
|
32
|
+
sig do
|
|
33
|
+
params(
|
|
34
|
+
data:
|
|
35
|
+
VitableConnect::Models::Groups::Members::SyncSubmitResponse::Data::OrHash
|
|
36
|
+
).returns(T.attached_class)
|
|
37
|
+
end
|
|
38
|
+
def self.new(data:)
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
sig do
|
|
42
|
+
override.returns(
|
|
43
|
+
{
|
|
44
|
+
data:
|
|
45
|
+
VitableConnect::Models::Groups::Members::SyncSubmitResponse::Data
|
|
46
|
+
}
|
|
47
|
+
)
|
|
48
|
+
end
|
|
49
|
+
def to_hash
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
class Data < VitableConnect::Internal::Type::BaseModel
|
|
53
|
+
OrHash =
|
|
54
|
+
T.type_alias do
|
|
55
|
+
T.any(
|
|
56
|
+
VitableConnect::Models::Groups::Members::SyncSubmitResponse::Data,
|
|
57
|
+
VitableConnect::Internal::AnyHash
|
|
58
|
+
)
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
sig { returns(Time) }
|
|
62
|
+
attr_accessor :accepted_at
|
|
63
|
+
|
|
64
|
+
sig { returns(String) }
|
|
65
|
+
attr_accessor :group_id
|
|
66
|
+
|
|
67
|
+
sig { returns(String) }
|
|
68
|
+
attr_accessor :request_id
|
|
69
|
+
|
|
70
|
+
sig do
|
|
71
|
+
params(
|
|
72
|
+
accepted_at: Time,
|
|
73
|
+
group_id: String,
|
|
74
|
+
request_id: String
|
|
75
|
+
).returns(T.attached_class)
|
|
76
|
+
end
|
|
77
|
+
def self.new(accepted_at:, group_id:, request_id:)
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
sig do
|
|
81
|
+
override.returns(
|
|
82
|
+
{ accepted_at: Time, group_id: String, request_id: String }
|
|
83
|
+
)
|
|
84
|
+
end
|
|
85
|
+
def to_hash
|
|
86
|
+
end
|
|
87
|
+
end
|
|
88
|
+
end
|
|
89
|
+
end
|
|
90
|
+
end
|
|
91
|
+
end
|
|
92
|
+
end
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module VitableConnect
|
|
4
|
+
module Models
|
|
5
|
+
class PlanListParams < VitableConnect::Internal::Type::BaseModel
|
|
6
|
+
extend VitableConnect::Internal::Type::RequestParameters::Converter
|
|
7
|
+
include VitableConnect::Internal::Type::RequestParameters
|
|
8
|
+
|
|
9
|
+
OrHash =
|
|
10
|
+
T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
VitableConnect::PlanListParams,
|
|
13
|
+
VitableConnect::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# Items per page (default: 20, max: 100)
|
|
18
|
+
sig { returns(T.nilable(Integer)) }
|
|
19
|
+
attr_reader :limit
|
|
20
|
+
|
|
21
|
+
sig { params(limit: Integer).void }
|
|
22
|
+
attr_writer :limit
|
|
23
|
+
|
|
24
|
+
# Page number (default: 1)
|
|
25
|
+
sig { returns(T.nilable(Integer)) }
|
|
26
|
+
attr_reader :page
|
|
27
|
+
|
|
28
|
+
sig { params(page: Integer).void }
|
|
29
|
+
attr_writer :page
|
|
30
|
+
|
|
31
|
+
sig do
|
|
32
|
+
params(
|
|
33
|
+
limit: Integer,
|
|
34
|
+
page: Integer,
|
|
35
|
+
request_options: VitableConnect::RequestOptions::OrHash
|
|
36
|
+
).returns(T.attached_class)
|
|
37
|
+
end
|
|
38
|
+
def self.new(
|
|
39
|
+
# Items per page (default: 20, max: 100)
|
|
40
|
+
limit: nil,
|
|
41
|
+
# Page number (default: 1)
|
|
42
|
+
page: nil,
|
|
43
|
+
request_options: {}
|
|
44
|
+
)
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
sig do
|
|
48
|
+
override.returns(
|
|
49
|
+
{
|
|
50
|
+
limit: Integer,
|
|
51
|
+
page: Integer,
|
|
52
|
+
request_options: VitableConnect::RequestOptions
|
|
53
|
+
}
|
|
54
|
+
)
|
|
55
|
+
end
|
|
56
|
+
def to_hash
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
end
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module VitableConnect
|
|
4
|
+
module Models
|
|
5
|
+
class PlanListResponse < VitableConnect::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(
|
|
9
|
+
VitableConnect::Models::PlanListResponse,
|
|
10
|
+
VitableConnect::Internal::AnyHash
|
|
11
|
+
)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
sig { returns(String) }
|
|
15
|
+
attr_accessor :id
|
|
16
|
+
|
|
17
|
+
sig { returns(String) }
|
|
18
|
+
attr_accessor :name
|
|
19
|
+
|
|
20
|
+
sig { params(id: String, name: String).returns(T.attached_class) }
|
|
21
|
+
def self.new(id:, name:)
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
sig { override.returns({ id: String, name: String }) }
|
|
25
|
+
def to_hash
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
@@ -35,7 +35,6 @@ module VitableConnect
|
|
|
35
35
|
# - `employee.eligibility_granted` - Employee Eligibility Granted
|
|
36
36
|
# - `employee.eligibility_terminated` - Employee Eligibility Terminated
|
|
37
37
|
# - `employee.deactivated` - Employee Deactivated
|
|
38
|
-
# - `employer.eligibility_policy_created` - Employer Eligibility Policy Created
|
|
39
38
|
# - `employee.deduction_created` - Employee Deduction Created
|
|
40
39
|
sig do
|
|
41
40
|
returns(
|
|
@@ -121,7 +120,6 @@ module VitableConnect
|
|
|
121
120
|
# - `employee.eligibility_granted` - Employee Eligibility Granted
|
|
122
121
|
# - `employee.eligibility_terminated` - Employee Eligibility Terminated
|
|
123
122
|
# - `employee.deactivated` - Employee Deactivated
|
|
124
|
-
# - `employer.eligibility_policy_created` - Employer Eligibility Policy Created
|
|
125
123
|
# - `employee.deduction_created` - Employee Deduction Created
|
|
126
124
|
event_name: nil,
|
|
127
125
|
# Items per page (default: 20, max: 100)
|
|
@@ -168,7 +166,6 @@ module VitableConnect
|
|
|
168
166
|
# - `employee.eligibility_granted` - Employee Eligibility Granted
|
|
169
167
|
# - `employee.eligibility_terminated` - Employee Eligibility Terminated
|
|
170
168
|
# - `employee.deactivated` - Employee Deactivated
|
|
171
|
-
# - `employer.eligibility_policy_created` - Employer Eligibility Policy Created
|
|
172
169
|
# - `employee.deduction_created` - Employee Deduction Created
|
|
173
170
|
module EventName
|
|
174
171
|
extend VitableConnect::Internal::Type::Enum
|
|
@@ -224,11 +221,6 @@ module VitableConnect
|
|
|
224
221
|
:"employee.deactivated",
|
|
225
222
|
VitableConnect::WebhookEventListParams::EventName::TaggedSymbol
|
|
226
223
|
)
|
|
227
|
-
EMPLOYER_ELIGIBILITY_POLICY_CREATED =
|
|
228
|
-
T.let(
|
|
229
|
-
:"employer.eligibility_policy_created",
|
|
230
|
-
VitableConnect::WebhookEventListParams::EventName::TaggedSymbol
|
|
231
|
-
)
|
|
232
224
|
EMPLOYEE_DEDUCTION_CREATED =
|
|
233
225
|
T.let(
|
|
234
226
|
:"employee.deduction_created",
|
|
@@ -4,14 +4,6 @@ module VitableConnect
|
|
|
4
4
|
AuthIssueAccessTokenParams =
|
|
5
5
|
VitableConnect::Models::AuthIssueAccessTokenParams
|
|
6
6
|
|
|
7
|
-
BenefitEligibilityPolicy = VitableConnect::Models::BenefitEligibilityPolicy
|
|
8
|
-
|
|
9
|
-
BenefitEligibilityPolicyResponse =
|
|
10
|
-
VitableConnect::Models::BenefitEligibilityPolicyResponse
|
|
11
|
-
|
|
12
|
-
BenefitEligibilityPolicyRetrieveParams =
|
|
13
|
-
VitableConnect::Models::BenefitEligibilityPolicyRetrieveParams
|
|
14
|
-
|
|
15
7
|
Employee = VitableConnect::Models::Employee
|
|
16
8
|
|
|
17
9
|
EmployeeClass = VitableConnect::Models::EmployeeClass
|
|
@@ -23,9 +15,6 @@ module VitableConnect
|
|
|
23
15
|
|
|
24
16
|
Employer = VitableConnect::Models::Employer
|
|
25
17
|
|
|
26
|
-
EmployerCreateBenefitEligibilityPolicyParams =
|
|
27
|
-
VitableConnect::Models::EmployerCreateBenefitEligibilityPolicyParams
|
|
28
|
-
|
|
29
18
|
EmployerCreateParams = VitableConnect::Models::EmployerCreateParams
|
|
30
19
|
|
|
31
20
|
EmployerListEmployeesParams =
|
|
@@ -40,14 +29,33 @@ module VitableConnect
|
|
|
40
29
|
EmployerSubmitCensusSyncParams =
|
|
41
30
|
VitableConnect::Models::EmployerSubmitCensusSyncParams
|
|
42
31
|
|
|
32
|
+
EmployerUpdateSettingsParams =
|
|
33
|
+
VitableConnect::Models::EmployerUpdateSettingsParams
|
|
34
|
+
|
|
43
35
|
Enrollment = VitableConnect::Models::Enrollment
|
|
44
36
|
|
|
45
37
|
EnrollmentRetrieveParams = VitableConnect::Models::EnrollmentRetrieveParams
|
|
46
38
|
|
|
47
39
|
EnrollmentStatus = VitableConnect::Models::EnrollmentStatus
|
|
48
40
|
|
|
41
|
+
Group = VitableConnect::Models::Group
|
|
42
|
+
|
|
43
|
+
GroupCreateParams = VitableConnect::Models::GroupCreateParams
|
|
44
|
+
|
|
45
|
+
GroupListParams = VitableConnect::Models::GroupListParams
|
|
46
|
+
|
|
47
|
+
GroupResponse = VitableConnect::Models::GroupResponse
|
|
48
|
+
|
|
49
|
+
GroupRetrieveParams = VitableConnect::Models::GroupRetrieveParams
|
|
50
|
+
|
|
51
|
+
Groups = VitableConnect::Models::Groups
|
|
52
|
+
|
|
53
|
+
GroupUpdateParams = VitableConnect::Models::GroupUpdateParams
|
|
54
|
+
|
|
49
55
|
Pagination = VitableConnect::Models::Pagination
|
|
50
56
|
|
|
57
|
+
PlanListParams = VitableConnect::Models::PlanListParams
|
|
58
|
+
|
|
51
59
|
Type = VitableConnect::Models::Type
|
|
52
60
|
|
|
53
61
|
WebhookEvent = VitableConnect::Models::WebhookEvent
|
|
@@ -2,22 +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
|
-
sig do
|
|
9
|
-
params(
|
|
10
|
-
policy_id: String,
|
|
11
|
-
request_options: VitableConnect::RequestOptions::OrHash
|
|
12
|
-
).returns(VitableConnect::BenefitEligibilityPolicyResponse)
|
|
13
|
-
end
|
|
14
|
-
def retrieve(
|
|
15
|
-
# Unique benefit eligibility policy identifier (epol\_\*)
|
|
16
|
-
policy_id,
|
|
17
|
-
request_options: {}
|
|
18
|
-
)
|
|
19
|
-
end
|
|
20
|
-
|
|
21
6
|
# @api private
|
|
22
7
|
sig { params(client: VitableConnect::Client).returns(T.attached_class) }
|
|
23
8
|
def self.new(client:)
|
|
@@ -73,27 +73,6 @@ module VitableConnect
|
|
|
73
73
|
)
|
|
74
74
|
end
|
|
75
75
|
|
|
76
|
-
# Creates a benefit eligibility policy for the specified employer.
|
|
77
|
-
sig do
|
|
78
|
-
params(
|
|
79
|
-
employer_id: String,
|
|
80
|
-
classification: String,
|
|
81
|
-
waiting_period: String,
|
|
82
|
-
request_options: VitableConnect::RequestOptions::OrHash
|
|
83
|
-
).returns(VitableConnect::BenefitEligibilityPolicyResponse)
|
|
84
|
-
end
|
|
85
|
-
def create_benefit_eligibility_policy(
|
|
86
|
-
# Unique employer identifier (empr\_\*)
|
|
87
|
-
employer_id,
|
|
88
|
-
# Which employee classifications are eligible. One of: full_time, part_time, all
|
|
89
|
-
classification:,
|
|
90
|
-
# Waiting period before eligibility. One of: first_of_following_month, 30_days,
|
|
91
|
-
# 60_days, none
|
|
92
|
-
waiting_period:,
|
|
93
|
-
request_options: {}
|
|
94
|
-
)
|
|
95
|
-
end
|
|
96
|
-
|
|
97
76
|
# Retrieves a paginated list of all employees for a specific employer. Results are
|
|
98
77
|
# paginated using page and limit parameters. Each employee includes payroll
|
|
99
78
|
# deductions from the most recent statement period. When a new deduction statement
|
|
@@ -140,6 +119,28 @@ module VitableConnect
|
|
|
140
119
|
)
|
|
141
120
|
end
|
|
142
121
|
|
|
122
|
+
# Updates configuration settings for a specific employer. The employer must belong
|
|
123
|
+
# to the authenticated organization.
|
|
124
|
+
sig do
|
|
125
|
+
params(
|
|
126
|
+
employer_id: String,
|
|
127
|
+
pay_frequency:
|
|
128
|
+
VitableConnect::EmployerUpdateSettingsParams::PayFrequency::OrSymbol,
|
|
129
|
+
request_options: VitableConnect::RequestOptions::OrHash
|
|
130
|
+
).returns(VitableConnect::Models::EmployerUpdateSettingsResponse)
|
|
131
|
+
end
|
|
132
|
+
def update_settings(
|
|
133
|
+
# Unique employer identifier (empr\_\*)
|
|
134
|
+
employer_id,
|
|
135
|
+
# - `weekly` - weekly
|
|
136
|
+
# - `bi_weekly` - bi_weekly
|
|
137
|
+
# - `semi_monthly` - semi_monthly
|
|
138
|
+
# - `monthly` - monthly
|
|
139
|
+
pay_frequency:,
|
|
140
|
+
request_options: {}
|
|
141
|
+
)
|
|
142
|
+
end
|
|
143
|
+
|
|
143
144
|
# @api private
|
|
144
145
|
sig { params(client: VitableConnect::Client).returns(T.attached_class) }
|
|
145
146
|
def self.new(client:)
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module VitableConnect
|
|
4
|
+
module Resources
|
|
5
|
+
class Groups
|
|
6
|
+
class Members
|
|
7
|
+
class Sync
|
|
8
|
+
# Retrieves a previously-submitted group member sync request by its `grpmsr_` ID.
|
|
9
|
+
# Returns the acceptance timestamp, completion timestamp (if processing has
|
|
10
|
+
# finished), and the per-member `results` once available. While processing is in
|
|
11
|
+
# flight, `completed_at` and `results` are `null`.
|
|
12
|
+
sig do
|
|
13
|
+
params(
|
|
14
|
+
request_id: String,
|
|
15
|
+
group_id: String,
|
|
16
|
+
request_options: VitableConnect::RequestOptions::OrHash
|
|
17
|
+
).returns(
|
|
18
|
+
VitableConnect::Models::Groups::Members::SyncRetrieveResponse
|
|
19
|
+
)
|
|
20
|
+
end
|
|
21
|
+
def retrieve(
|
|
22
|
+
request_id,
|
|
23
|
+
# Unique group identifier (grp\_\*)
|
|
24
|
+
group_id:,
|
|
25
|
+
request_options: {}
|
|
26
|
+
)
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
# Submits a member sync payload for the specified group. Members in the payload
|
|
30
|
+
# will be queued for processing asynchronously. Returns HTTP 202 with the batch ID
|
|
31
|
+
# and acceptance timestamp.
|
|
32
|
+
sig do
|
|
33
|
+
params(
|
|
34
|
+
group_id: String,
|
|
35
|
+
members:
|
|
36
|
+
T::Array[
|
|
37
|
+
VitableConnect::Groups::Members::SyncSubmitParams::Member::OrHash
|
|
38
|
+
],
|
|
39
|
+
request_options: VitableConnect::RequestOptions::OrHash
|
|
40
|
+
).returns(
|
|
41
|
+
VitableConnect::Models::Groups::Members::SyncSubmitResponse
|
|
42
|
+
)
|
|
43
|
+
end
|
|
44
|
+
def submit(
|
|
45
|
+
# Unique group identifier (grp\_\*)
|
|
46
|
+
group_id,
|
|
47
|
+
members:,
|
|
48
|
+
request_options: {}
|
|
49
|
+
)
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
# @api private
|
|
53
|
+
sig do
|
|
54
|
+
params(client: VitableConnect::Client).returns(T.attached_class)
|
|
55
|
+
end
|
|
56
|
+
def self.new(client:)
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
end
|
|
62
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module VitableConnect
|
|
4
|
+
module Resources
|
|
5
|
+
class Groups
|
|
6
|
+
class Members
|
|
7
|
+
sig { returns(VitableConnect::Resources::Groups::Members::Sync) }
|
|
8
|
+
attr_reader :sync
|
|
9
|
+
|
|
10
|
+
# @api private
|
|
11
|
+
sig { params(client: VitableConnect::Client).returns(T.attached_class) }
|
|
12
|
+
def self.new(client:)
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|