vitable-connect 0.1.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 +7 -0
- data/.ignore +2 -0
- data/CHANGELOG.md +39 -0
- data/README.md +267 -0
- data/SECURITY.md +27 -0
- data/lib/vitable_connect/client.rb +118 -0
- data/lib/vitable_connect/errors.rb +228 -0
- data/lib/vitable_connect/file_part.rb +58 -0
- data/lib/vitable_connect/internal/page_number_page.rb +113 -0
- data/lib/vitable_connect/internal/transport/base_client.rb +577 -0
- data/lib/vitable_connect/internal/transport/pooled_net_requester.rb +210 -0
- data/lib/vitable_connect/internal/type/array_of.rb +168 -0
- data/lib/vitable_connect/internal/type/base_model.rb +534 -0
- data/lib/vitable_connect/internal/type/base_page.rb +55 -0
- data/lib/vitable_connect/internal/type/boolean.rb +77 -0
- data/lib/vitable_connect/internal/type/converter.rb +327 -0
- data/lib/vitable_connect/internal/type/enum.rb +152 -0
- data/lib/vitable_connect/internal/type/file_input.rb +111 -0
- data/lib/vitable_connect/internal/type/hash_of.rb +188 -0
- data/lib/vitable_connect/internal/type/request_parameters.rb +42 -0
- data/lib/vitable_connect/internal/type/union.rb +245 -0
- data/lib/vitable_connect/internal/type/unknown.rb +81 -0
- data/lib/vitable_connect/internal/util.rb +951 -0
- data/lib/vitable_connect/internal.rb +20 -0
- data/lib/vitable_connect/models/auth_issue_access_token_params.rb +68 -0
- data/lib/vitable_connect/models/auth_issue_access_token_response.rb +70 -0
- data/lib/vitable_connect/models/benefit_eligibility_policy.rb +53 -0
- data/lib/vitable_connect/models/benefit_eligibility_policy_response.rb +18 -0
- data/lib/vitable_connect/models/benefit_eligibility_policy_retrieve_params.rb +22 -0
- data/lib/vitable_connect/models/employee.rb +244 -0
- data/lib/vitable_connect/models/employee_class.rb +25 -0
- data/lib/vitable_connect/models/employee_list_enrollments_params.rb +38 -0
- data/lib/vitable_connect/models/employee_retrieve_params.rb +22 -0
- data/lib/vitable_connect/models/employee_retrieve_response.rb +18 -0
- data/lib/vitable_connect/models/employer.rb +163 -0
- data/lib/vitable_connect/models/employer_create_benefit_eligibility_policy_params.rb +43 -0
- data/lib/vitable_connect/models/employer_create_params.rb +115 -0
- data/lib/vitable_connect/models/employer_list_employees_params.rb +38 -0
- data/lib/vitable_connect/models/employer_list_params.rb +30 -0
- data/lib/vitable_connect/models/employer_response.rb +19 -0
- data/lib/vitable_connect/models/employer_retrieve_params.rb +22 -0
- data/lib/vitable_connect/models/employer_submit_census_sync_params.rb +374 -0
- data/lib/vitable_connect/models/employer_submit_census_sync_response.rb +35 -0
- data/lib/vitable_connect/models/enrollment.rb +234 -0
- data/lib/vitable_connect/models/enrollment_retrieve_params.rb +22 -0
- data/lib/vitable_connect/models/enrollment_retrieve_response.rb +18 -0
- data/lib/vitable_connect/models/enrollment_status.rb +21 -0
- data/lib/vitable_connect/models/pagination.rb +42 -0
- data/lib/vitable_connect/models/type.rb +17 -0
- data/lib/vitable_connect/models/webhook_event.rb +62 -0
- data/lib/vitable_connect/models/webhook_event_list_deliveries_params.rb +20 -0
- data/lib/vitable_connect/models/webhook_event_list_deliveries_response.rb +92 -0
- data/lib/vitable_connect/models/webhook_event_list_params.rb +135 -0
- data/lib/vitable_connect/models/webhook_event_retrieve_params.rb +20 -0
- data/lib/vitable_connect/models/webhook_event_retrieve_response.rb +18 -0
- data/lib/vitable_connect/models.rb +95 -0
- data/lib/vitable_connect/request_options.rb +78 -0
- data/lib/vitable_connect/resources/auth.rb +41 -0
- data/lib/vitable_connect/resources/benefit_eligibility_policies.rb +35 -0
- data/lib/vitable_connect/resources/employees.rb +63 -0
- data/lib/vitable_connect/resources/employers.rb +184 -0
- data/lib/vitable_connect/resources/enrollments.rb +35 -0
- data/lib/vitable_connect/resources/webhook_events.rb +95 -0
- data/lib/vitable_connect/version.rb +5 -0
- data/lib/vitable_connect.rb +93 -0
- data/manifest.yaml +17 -0
- data/rbi/vitable_connect/client.rbi +88 -0
- data/rbi/vitable_connect/errors.rbi +205 -0
- data/rbi/vitable_connect/file_part.rbi +37 -0
- data/rbi/vitable_connect/internal/page_number_page.rbi +49 -0
- data/rbi/vitable_connect/internal/transport/base_client.rbi +307 -0
- data/rbi/vitable_connect/internal/transport/pooled_net_requester.rbi +84 -0
- data/rbi/vitable_connect/internal/type/array_of.rbi +108 -0
- data/rbi/vitable_connect/internal/type/base_model.rbi +314 -0
- data/rbi/vitable_connect/internal/type/base_page.rbi +43 -0
- data/rbi/vitable_connect/internal/type/boolean.rbi +58 -0
- data/rbi/vitable_connect/internal/type/converter.rbi +225 -0
- data/rbi/vitable_connect/internal/type/enum.rbi +82 -0
- data/rbi/vitable_connect/internal/type/file_input.rbi +59 -0
- data/rbi/vitable_connect/internal/type/hash_of.rbi +108 -0
- data/rbi/vitable_connect/internal/type/request_parameters.rbi +31 -0
- data/rbi/vitable_connect/internal/type/union.rbi +130 -0
- data/rbi/vitable_connect/internal/type/unknown.rbi +58 -0
- data/rbi/vitable_connect/internal/util.rbi +507 -0
- data/rbi/vitable_connect/internal.rbi +18 -0
- data/rbi/vitable_connect/models/auth_issue_access_token_params.rbi +147 -0
- data/rbi/vitable_connect/models/auth_issue_access_token_response.rbi +128 -0
- data/rbi/vitable_connect/models/benefit_eligibility_policy.rbi +74 -0
- data/rbi/vitable_connect/models/benefit_eligibility_policy_response.rbi +38 -0
- data/rbi/vitable_connect/models/benefit_eligibility_policy_retrieve_params.rbi +43 -0
- data/rbi/vitable_connect/models/employee.rbi +316 -0
- data/rbi/vitable_connect/models/employee_class.rbi +38 -0
- data/rbi/vitable_connect/models/employee_list_enrollments_params.rbi +68 -0
- data/rbi/vitable_connect/models/employee_retrieve_params.rbi +46 -0
- data/rbi/vitable_connect/models/employee_retrieve_response.rbi +32 -0
- data/rbi/vitable_connect/models/employer.rbi +205 -0
- data/rbi/vitable_connect/models/employer_create_benefit_eligibility_policy_params.rbi +64 -0
- data/rbi/vitable_connect/models/employer_create_params.rbi +169 -0
- data/rbi/vitable_connect/models/employer_list_employees_params.rbi +68 -0
- data/rbi/vitable_connect/models/employer_list_params.rbi +60 -0
- data/rbi/vitable_connect/models/employer_response.rbi +36 -0
- data/rbi/vitable_connect/models/employer_retrieve_params.rbi +46 -0
- data/rbi/vitable_connect/models/employer_submit_census_sync_params.rbi +819 -0
- data/rbi/vitable_connect/models/employer_submit_census_sync_response.rbi +76 -0
- data/rbi/vitable_connect/models/enrollment.rbi +401 -0
- data/rbi/vitable_connect/models/enrollment_retrieve_params.rbi +46 -0
- data/rbi/vitable_connect/models/enrollment_retrieve_response.rbi +34 -0
- data/rbi/vitable_connect/models/enrollment_status.rbi +32 -0
- data/rbi/vitable_connect/models/pagination.rbi +62 -0
- data/rbi/vitable_connect/models/type.rbi +21 -0
- data/rbi/vitable_connect/models/webhook_event.rbi +81 -0
- data/rbi/vitable_connect/models/webhook_event_list_deliveries_params.rbi +38 -0
- data/rbi/vitable_connect/models/webhook_event_list_deliveries_response.rbi +147 -0
- data/rbi/vitable_connect/models/webhook_event_list_params.rbi +307 -0
- data/rbi/vitable_connect/models/webhook_event_retrieve_params.rbi +38 -0
- data/rbi/vitable_connect/models/webhook_event_retrieve_response.rbi +34 -0
- data/rbi/vitable_connect/models.rbi +62 -0
- data/rbi/vitable_connect/request_options.rbi +61 -0
- data/rbi/vitable_connect/resources/auth.rbi +36 -0
- data/rbi/vitable_connect/resources/benefit_eligibility_policies.rbi +27 -0
- data/rbi/vitable_connect/resources/employees.rbi +49 -0
- data/rbi/vitable_connect/resources/employers.rbi +147 -0
- data/rbi/vitable_connect/resources/enrollments.rbi +27 -0
- data/rbi/vitable_connect/resources/webhook_events.rbi +84 -0
- data/rbi/vitable_connect/version.rbi +5 -0
- data/sig/vitable_connect/client.rbs +42 -0
- data/sig/vitable_connect/errors.rbs +117 -0
- data/sig/vitable_connect/file_part.rbs +21 -0
- data/sig/vitable_connect/internal/page_number_page.rbs +28 -0
- data/sig/vitable_connect/internal/transport/base_client.rbs +133 -0
- data/sig/vitable_connect/internal/transport/pooled_net_requester.rbs +48 -0
- data/sig/vitable_connect/internal/type/array_of.rbs +48 -0
- data/sig/vitable_connect/internal/type/base_model.rbs +104 -0
- data/sig/vitable_connect/internal/type/base_page.rbs +24 -0
- data/sig/vitable_connect/internal/type/boolean.rbs +26 -0
- data/sig/vitable_connect/internal/type/converter.rbs +79 -0
- data/sig/vitable_connect/internal/type/enum.rbs +32 -0
- data/sig/vitable_connect/internal/type/file_input.rbs +25 -0
- data/sig/vitable_connect/internal/type/hash_of.rbs +48 -0
- data/sig/vitable_connect/internal/type/request_parameters.rbs +20 -0
- data/sig/vitable_connect/internal/type/union.rbs +52 -0
- data/sig/vitable_connect/internal/type/unknown.rbs +26 -0
- data/sig/vitable_connect/internal/util.rbs +195 -0
- data/sig/vitable_connect/internal.rbs +10 -0
- data/sig/vitable_connect/models/auth_issue_access_token_params.rbs +56 -0
- data/sig/vitable_connect/models/auth_issue_access_token_response.rbs +50 -0
- data/sig/vitable_connect/models/benefit_eligibility_policy.rbs +50 -0
- data/sig/vitable_connect/models/benefit_eligibility_policy_response.rbs +14 -0
- data/sig/vitable_connect/models/benefit_eligibility_policy_retrieve_params.rbs +23 -0
- data/sig/vitable_connect/models/employee.rbs +169 -0
- data/sig/vitable_connect/models/employee_class.rbs +24 -0
- data/sig/vitable_connect/models/employee_list_enrollments_params.rbs +36 -0
- data/sig/vitable_connect/models/employee_retrieve_params.rbs +24 -0
- data/sig/vitable_connect/models/employee_retrieve_response.rbs +13 -0
- data/sig/vitable_connect/models/employer.rbs +117 -0
- data/sig/vitable_connect/models/employer_create_benefit_eligibility_policy_params.rbs +32 -0
- data/sig/vitable_connect/models/employer_create_params.rbs +93 -0
- data/sig/vitable_connect/models/employer_list_employees_params.rbs +36 -0
- data/sig/vitable_connect/models/employer_list_params.rbs +32 -0
- data/sig/vitable_connect/models/employer_response.rbs +13 -0
- data/sig/vitable_connect/models/employer_retrieve_params.rbs +24 -0
- data/sig/vitable_connect/models/employer_submit_census_sync_params.rbs +274 -0
- data/sig/vitable_connect/models/employer_submit_census_sync_response.rbs +30 -0
- data/sig/vitable_connect/models/enrollment.rbs +164 -0
- data/sig/vitable_connect/models/enrollment_retrieve_params.rbs +24 -0
- data/sig/vitable_connect/models/enrollment_retrieve_response.rbs +13 -0
- data/sig/vitable_connect/models/enrollment_status.rbs +16 -0
- data/sig/vitable_connect/models/pagination.rbs +30 -0
- data/sig/vitable_connect/models/type.rbs +14 -0
- data/sig/vitable_connect/models/webhook_event.rbs +45 -0
- data/sig/vitable_connect/models/webhook_event_list_deliveries_params.rbs +23 -0
- data/sig/vitable_connect/models/webhook_event_list_deliveries_response.rbs +77 -0
- data/sig/vitable_connect/models/webhook_event_list_params.rbs +126 -0
- data/sig/vitable_connect/models/webhook_event_retrieve_params.rbs +23 -0
- data/sig/vitable_connect/models/webhook_event_retrieve_response.rbs +14 -0
- data/sig/vitable_connect/models.rbs +51 -0
- data/sig/vitable_connect/request_options.rbs +36 -0
- data/sig/vitable_connect/resources/auth.rbs +13 -0
- data/sig/vitable_connect/resources/benefit_eligibility_policies.rbs +12 -0
- data/sig/vitable_connect/resources/employees.rbs +19 -0
- data/sig/vitable_connect/resources/employers.rbs +49 -0
- data/sig/vitable_connect/resources/enrollments.rbs +12 -0
- data/sig/vitable_connect/resources/webhook_events.rbs +28 -0
- data/sig/vitable_connect/version.rbs +3 -0
- metadata +256 -0
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module VitableConnect
|
|
4
|
+
module Models
|
|
5
|
+
class AuthIssueAccessTokenResponse < VitableConnect::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(
|
|
9
|
+
VitableConnect::Models::AuthIssueAccessTokenResponse,
|
|
10
|
+
VitableConnect::Internal::AnyHash
|
|
11
|
+
)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# The issued access token (vit*at*\*)
|
|
15
|
+
sig { returns(String) }
|
|
16
|
+
attr_accessor :access_token
|
|
17
|
+
|
|
18
|
+
# Token lifetime in seconds
|
|
19
|
+
sig { returns(Integer) }
|
|
20
|
+
attr_accessor :expires_in
|
|
21
|
+
|
|
22
|
+
# Token type, always 'Bearer'
|
|
23
|
+
sig { returns(String) }
|
|
24
|
+
attr_accessor :token_type
|
|
25
|
+
|
|
26
|
+
# Entity the token is bound to, if any
|
|
27
|
+
sig do
|
|
28
|
+
returns(
|
|
29
|
+
T.nilable(
|
|
30
|
+
VitableConnect::Models::AuthIssueAccessTokenResponse::BoundEntity
|
|
31
|
+
)
|
|
32
|
+
)
|
|
33
|
+
end
|
|
34
|
+
attr_reader :bound_entity
|
|
35
|
+
|
|
36
|
+
sig do
|
|
37
|
+
params(
|
|
38
|
+
bound_entity:
|
|
39
|
+
T.nilable(
|
|
40
|
+
VitableConnect::Models::AuthIssueAccessTokenResponse::BoundEntity::OrHash
|
|
41
|
+
)
|
|
42
|
+
).void
|
|
43
|
+
end
|
|
44
|
+
attr_writer :bound_entity
|
|
45
|
+
|
|
46
|
+
sig do
|
|
47
|
+
params(
|
|
48
|
+
access_token: String,
|
|
49
|
+
expires_in: Integer,
|
|
50
|
+
token_type: String,
|
|
51
|
+
bound_entity:
|
|
52
|
+
T.nilable(
|
|
53
|
+
VitableConnect::Models::AuthIssueAccessTokenResponse::BoundEntity::OrHash
|
|
54
|
+
)
|
|
55
|
+
).returns(T.attached_class)
|
|
56
|
+
end
|
|
57
|
+
def self.new(
|
|
58
|
+
# The issued access token (vit*at*\*)
|
|
59
|
+
access_token:,
|
|
60
|
+
# Token lifetime in seconds
|
|
61
|
+
expires_in:,
|
|
62
|
+
# Token type, always 'Bearer'
|
|
63
|
+
token_type:,
|
|
64
|
+
# Entity the token is bound to, if any
|
|
65
|
+
bound_entity: nil
|
|
66
|
+
)
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
sig do
|
|
70
|
+
override.returns(
|
|
71
|
+
{
|
|
72
|
+
access_token: String,
|
|
73
|
+
expires_in: Integer,
|
|
74
|
+
token_type: String,
|
|
75
|
+
bound_entity:
|
|
76
|
+
T.nilable(
|
|
77
|
+
VitableConnect::Models::AuthIssueAccessTokenResponse::BoundEntity
|
|
78
|
+
)
|
|
79
|
+
}
|
|
80
|
+
)
|
|
81
|
+
end
|
|
82
|
+
def to_hash
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
class BoundEntity < VitableConnect::Internal::Type::BaseModel
|
|
86
|
+
OrHash =
|
|
87
|
+
T.type_alias do
|
|
88
|
+
T.any(
|
|
89
|
+
VitableConnect::Models::AuthIssueAccessTokenResponse::BoundEntity,
|
|
90
|
+
VitableConnect::Internal::AnyHash
|
|
91
|
+
)
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
# Prefixed entity ID the token is bound to (empr*\* or empl*\*)
|
|
95
|
+
sig { returns(String) }
|
|
96
|
+
attr_accessor :id
|
|
97
|
+
|
|
98
|
+
# - `employer` - employer
|
|
99
|
+
# - `employee` - employee
|
|
100
|
+
sig { returns(VitableConnect::Type::TaggedSymbol) }
|
|
101
|
+
attr_accessor :type
|
|
102
|
+
|
|
103
|
+
# Entity the token is bound to, if any
|
|
104
|
+
sig do
|
|
105
|
+
params(id: String, type: VitableConnect::Type::OrSymbol).returns(
|
|
106
|
+
T.attached_class
|
|
107
|
+
)
|
|
108
|
+
end
|
|
109
|
+
def self.new(
|
|
110
|
+
# Prefixed entity ID the token is bound to (empr*\* or empl*\*)
|
|
111
|
+
id:,
|
|
112
|
+
# - `employer` - employer
|
|
113
|
+
# - `employee` - employee
|
|
114
|
+
type:
|
|
115
|
+
)
|
|
116
|
+
end
|
|
117
|
+
|
|
118
|
+
sig do
|
|
119
|
+
override.returns(
|
|
120
|
+
{ id: String, type: VitableConnect::Type::TaggedSymbol }
|
|
121
|
+
)
|
|
122
|
+
end
|
|
123
|
+
def to_hash
|
|
124
|
+
end
|
|
125
|
+
end
|
|
126
|
+
end
|
|
127
|
+
end
|
|
128
|
+
end
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module VitableConnect
|
|
4
|
+
module Models
|
|
5
|
+
class BenefitEligibilityPolicy < VitableConnect::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(
|
|
9
|
+
VitableConnect::BenefitEligibilityPolicy,
|
|
10
|
+
VitableConnect::Internal::AnyHash
|
|
11
|
+
)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
sig { returns(T::Boolean) }
|
|
15
|
+
attr_accessor :active
|
|
16
|
+
|
|
17
|
+
sig { returns(Time) }
|
|
18
|
+
attr_accessor :created_at
|
|
19
|
+
|
|
20
|
+
sig { returns(Time) }
|
|
21
|
+
attr_accessor :updated_at
|
|
22
|
+
|
|
23
|
+
sig { returns(String) }
|
|
24
|
+
attr_accessor :id
|
|
25
|
+
|
|
26
|
+
sig { returns(String) }
|
|
27
|
+
attr_accessor :classification
|
|
28
|
+
|
|
29
|
+
sig { returns(String) }
|
|
30
|
+
attr_accessor :employer_id
|
|
31
|
+
|
|
32
|
+
sig { returns(String) }
|
|
33
|
+
attr_accessor :waiting_period
|
|
34
|
+
|
|
35
|
+
sig do
|
|
36
|
+
params(
|
|
37
|
+
id: String,
|
|
38
|
+
active: T::Boolean,
|
|
39
|
+
classification: String,
|
|
40
|
+
created_at: Time,
|
|
41
|
+
employer_id: String,
|
|
42
|
+
updated_at: Time,
|
|
43
|
+
waiting_period: String
|
|
44
|
+
).returns(T.attached_class)
|
|
45
|
+
end
|
|
46
|
+
def self.new(
|
|
47
|
+
id:,
|
|
48
|
+
active:,
|
|
49
|
+
classification:,
|
|
50
|
+
created_at:,
|
|
51
|
+
employer_id:,
|
|
52
|
+
updated_at:,
|
|
53
|
+
waiting_period:
|
|
54
|
+
)
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
sig do
|
|
58
|
+
override.returns(
|
|
59
|
+
{
|
|
60
|
+
id: String,
|
|
61
|
+
active: T::Boolean,
|
|
62
|
+
classification: String,
|
|
63
|
+
created_at: Time,
|
|
64
|
+
employer_id: String,
|
|
65
|
+
updated_at: Time,
|
|
66
|
+
waiting_period: String
|
|
67
|
+
}
|
|
68
|
+
)
|
|
69
|
+
end
|
|
70
|
+
def to_hash
|
|
71
|
+
end
|
|
72
|
+
end
|
|
73
|
+
end
|
|
74
|
+
end
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module VitableConnect
|
|
4
|
+
module Models
|
|
5
|
+
class BenefitEligibilityPolicyResponse < VitableConnect::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(
|
|
9
|
+
VitableConnect::BenefitEligibilityPolicyResponse,
|
|
10
|
+
VitableConnect::Internal::AnyHash
|
|
11
|
+
)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
sig { returns(VitableConnect::BenefitEligibilityPolicy) }
|
|
15
|
+
attr_reader :data
|
|
16
|
+
|
|
17
|
+
sig do
|
|
18
|
+
params(data: VitableConnect::BenefitEligibilityPolicy::OrHash).void
|
|
19
|
+
end
|
|
20
|
+
attr_writer :data
|
|
21
|
+
|
|
22
|
+
# Response containing a single benefit eligibility policy resource.
|
|
23
|
+
sig do
|
|
24
|
+
params(data: VitableConnect::BenefitEligibilityPolicy::OrHash).returns(
|
|
25
|
+
T.attached_class
|
|
26
|
+
)
|
|
27
|
+
end
|
|
28
|
+
def self.new(data:)
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
sig do
|
|
32
|
+
override.returns({ data: VitableConnect::BenefitEligibilityPolicy })
|
|
33
|
+
end
|
|
34
|
+
def to_hash
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module VitableConnect
|
|
4
|
+
module Models
|
|
5
|
+
class BenefitEligibilityPolicyRetrieveParams < 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::BenefitEligibilityPolicyRetrieveParams,
|
|
13
|
+
VitableConnect::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# Unique benefit eligibility policy identifier (epol\_\*)
|
|
18
|
+
sig { returns(String) }
|
|
19
|
+
attr_accessor :policy_id
|
|
20
|
+
|
|
21
|
+
sig do
|
|
22
|
+
params(
|
|
23
|
+
policy_id: String,
|
|
24
|
+
request_options: VitableConnect::RequestOptions::OrHash
|
|
25
|
+
).returns(T.attached_class)
|
|
26
|
+
end
|
|
27
|
+
def self.new(
|
|
28
|
+
# Unique benefit eligibility policy identifier (epol\_\*)
|
|
29
|
+
policy_id:,
|
|
30
|
+
request_options: {}
|
|
31
|
+
)
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
sig do
|
|
35
|
+
override.returns(
|
|
36
|
+
{ policy_id: String, request_options: VitableConnect::RequestOptions }
|
|
37
|
+
)
|
|
38
|
+
end
|
|
39
|
+
def to_hash
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
end
|
|
@@ -0,0 +1,316 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module VitableConnect
|
|
4
|
+
module Models
|
|
5
|
+
class Employee < VitableConnect::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(VitableConnect::Employee, VitableConnect::Internal::AnyHash)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
# Timestamp when the employee was created
|
|
12
|
+
sig { returns(Time) }
|
|
13
|
+
attr_accessor :created_at
|
|
14
|
+
|
|
15
|
+
# Date of birth (YYYY-MM-DD)
|
|
16
|
+
sig { returns(Date) }
|
|
17
|
+
attr_accessor :date_of_birth
|
|
18
|
+
|
|
19
|
+
# Email address
|
|
20
|
+
sig { returns(String) }
|
|
21
|
+
attr_accessor :email
|
|
22
|
+
|
|
23
|
+
# Benefit enrollments for this employee
|
|
24
|
+
sig { returns(T::Array[VitableConnect::Employee::Enrollment]) }
|
|
25
|
+
attr_accessor :enrollments
|
|
26
|
+
|
|
27
|
+
# Employee's legal first name
|
|
28
|
+
sig { returns(String) }
|
|
29
|
+
attr_accessor :first_name
|
|
30
|
+
|
|
31
|
+
# Employee's legal last name
|
|
32
|
+
sig { returns(String) }
|
|
33
|
+
attr_accessor :last_name
|
|
34
|
+
|
|
35
|
+
# Timestamp when the employee was last updated
|
|
36
|
+
sig { returns(Time) }
|
|
37
|
+
attr_accessor :updated_at
|
|
38
|
+
|
|
39
|
+
# Employee's residential address
|
|
40
|
+
sig { returns(T.nilable(VitableConnect::Employee::Address)) }
|
|
41
|
+
attr_reader :address
|
|
42
|
+
|
|
43
|
+
sig do
|
|
44
|
+
params(
|
|
45
|
+
address: T.nilable(VitableConnect::Employee::Address::OrHash)
|
|
46
|
+
).void
|
|
47
|
+
end
|
|
48
|
+
attr_writer :address
|
|
49
|
+
|
|
50
|
+
# - `Full Time` - Full Time
|
|
51
|
+
# - `Part Time` - Part Time
|
|
52
|
+
# - `Temporary` - Temporary
|
|
53
|
+
# - `Intern` - Intern
|
|
54
|
+
# - `Seasonal` - Seasonal
|
|
55
|
+
# - `Individual Contractor` - Individual Contractor
|
|
56
|
+
sig { returns(T.nilable(VitableConnect::EmployeeClass::TaggedSymbol)) }
|
|
57
|
+
attr_accessor :employee_class
|
|
58
|
+
|
|
59
|
+
# Gender identity, if provided
|
|
60
|
+
sig { returns(T.nilable(String)) }
|
|
61
|
+
attr_accessor :gender
|
|
62
|
+
|
|
63
|
+
# Employee's hire date with the employer
|
|
64
|
+
sig { returns(T.nilable(Date)) }
|
|
65
|
+
attr_accessor :hire_date
|
|
66
|
+
|
|
67
|
+
# Phone number (10-digit US domestic string)
|
|
68
|
+
sig { returns(T.nilable(String)) }
|
|
69
|
+
attr_accessor :phone
|
|
70
|
+
|
|
71
|
+
# Partner-assigned reference ID for the employee
|
|
72
|
+
sig { returns(T.nilable(String)) }
|
|
73
|
+
attr_accessor :reference_id
|
|
74
|
+
|
|
75
|
+
# Name suffix (e.g., Jr., Sr., III)
|
|
76
|
+
sig { returns(T.nilable(String)) }
|
|
77
|
+
attr_accessor :suffix
|
|
78
|
+
|
|
79
|
+
# Employee's termination date, if terminated
|
|
80
|
+
sig { returns(T.nilable(Date)) }
|
|
81
|
+
attr_accessor :termination_date
|
|
82
|
+
|
|
83
|
+
# Unique employee identifier with 'empl\_' prefix
|
|
84
|
+
sig { returns(String) }
|
|
85
|
+
attr_accessor :id
|
|
86
|
+
|
|
87
|
+
# Unique member identifier with 'mbr\_' prefix
|
|
88
|
+
sig { returns(String) }
|
|
89
|
+
attr_accessor :member_id
|
|
90
|
+
|
|
91
|
+
# Employee status (active or terminated)
|
|
92
|
+
sig { returns(String) }
|
|
93
|
+
attr_accessor :status
|
|
94
|
+
|
|
95
|
+
sig do
|
|
96
|
+
params(
|
|
97
|
+
id: String,
|
|
98
|
+
created_at: Time,
|
|
99
|
+
date_of_birth: Date,
|
|
100
|
+
email: String,
|
|
101
|
+
enrollments: T::Array[VitableConnect::Employee::Enrollment::OrHash],
|
|
102
|
+
first_name: String,
|
|
103
|
+
last_name: String,
|
|
104
|
+
member_id: String,
|
|
105
|
+
status: String,
|
|
106
|
+
updated_at: Time,
|
|
107
|
+
address: T.nilable(VitableConnect::Employee::Address::OrHash),
|
|
108
|
+
employee_class: T.nilable(VitableConnect::EmployeeClass::OrSymbol),
|
|
109
|
+
gender: T.nilable(String),
|
|
110
|
+
hire_date: T.nilable(Date),
|
|
111
|
+
phone: T.nilable(String),
|
|
112
|
+
reference_id: T.nilable(String),
|
|
113
|
+
suffix: T.nilable(String),
|
|
114
|
+
termination_date: T.nilable(Date)
|
|
115
|
+
).returns(T.attached_class)
|
|
116
|
+
end
|
|
117
|
+
def self.new(
|
|
118
|
+
# Unique employee identifier with 'empl\_' prefix
|
|
119
|
+
id:,
|
|
120
|
+
# Timestamp when the employee was created
|
|
121
|
+
created_at:,
|
|
122
|
+
# Date of birth (YYYY-MM-DD)
|
|
123
|
+
date_of_birth:,
|
|
124
|
+
# Email address
|
|
125
|
+
email:,
|
|
126
|
+
# Benefit enrollments for this employee
|
|
127
|
+
enrollments:,
|
|
128
|
+
# Employee's legal first name
|
|
129
|
+
first_name:,
|
|
130
|
+
# Employee's legal last name
|
|
131
|
+
last_name:,
|
|
132
|
+
# Unique member identifier with 'mbr\_' prefix
|
|
133
|
+
member_id:,
|
|
134
|
+
# Employee status (active or terminated)
|
|
135
|
+
status:,
|
|
136
|
+
# Timestamp when the employee was last updated
|
|
137
|
+
updated_at:,
|
|
138
|
+
# Employee's residential address
|
|
139
|
+
address: nil,
|
|
140
|
+
# - `Full Time` - Full Time
|
|
141
|
+
# - `Part Time` - Part Time
|
|
142
|
+
# - `Temporary` - Temporary
|
|
143
|
+
# - `Intern` - Intern
|
|
144
|
+
# - `Seasonal` - Seasonal
|
|
145
|
+
# - `Individual Contractor` - Individual Contractor
|
|
146
|
+
employee_class: nil,
|
|
147
|
+
# Gender identity, if provided
|
|
148
|
+
gender: nil,
|
|
149
|
+
# Employee's hire date with the employer
|
|
150
|
+
hire_date: nil,
|
|
151
|
+
# Phone number (10-digit US domestic string)
|
|
152
|
+
phone: nil,
|
|
153
|
+
# Partner-assigned reference ID for the employee
|
|
154
|
+
reference_id: nil,
|
|
155
|
+
# Name suffix (e.g., Jr., Sr., III)
|
|
156
|
+
suffix: nil,
|
|
157
|
+
# Employee's termination date, if terminated
|
|
158
|
+
termination_date: nil
|
|
159
|
+
)
|
|
160
|
+
end
|
|
161
|
+
|
|
162
|
+
sig do
|
|
163
|
+
override.returns(
|
|
164
|
+
{
|
|
165
|
+
id: String,
|
|
166
|
+
created_at: Time,
|
|
167
|
+
date_of_birth: Date,
|
|
168
|
+
email: String,
|
|
169
|
+
enrollments: T::Array[VitableConnect::Employee::Enrollment],
|
|
170
|
+
first_name: String,
|
|
171
|
+
last_name: String,
|
|
172
|
+
member_id: String,
|
|
173
|
+
status: String,
|
|
174
|
+
updated_at: Time,
|
|
175
|
+
address: T.nilable(VitableConnect::Employee::Address),
|
|
176
|
+
employee_class:
|
|
177
|
+
T.nilable(VitableConnect::EmployeeClass::TaggedSymbol),
|
|
178
|
+
gender: T.nilable(String),
|
|
179
|
+
hire_date: T.nilable(Date),
|
|
180
|
+
phone: T.nilable(String),
|
|
181
|
+
reference_id: T.nilable(String),
|
|
182
|
+
suffix: T.nilable(String),
|
|
183
|
+
termination_date: T.nilable(Date)
|
|
184
|
+
}
|
|
185
|
+
)
|
|
186
|
+
end
|
|
187
|
+
def to_hash
|
|
188
|
+
end
|
|
189
|
+
|
|
190
|
+
class Enrollment < VitableConnect::Internal::Type::BaseModel
|
|
191
|
+
OrHash =
|
|
192
|
+
T.type_alias do
|
|
193
|
+
T.any(
|
|
194
|
+
VitableConnect::Employee::Enrollment,
|
|
195
|
+
VitableConnect::Internal::AnyHash
|
|
196
|
+
)
|
|
197
|
+
end
|
|
198
|
+
|
|
199
|
+
# - `pending` - Pending
|
|
200
|
+
# - `enrolled` - Enrolled
|
|
201
|
+
# - `waived` - Waived
|
|
202
|
+
# - `inactive` - Inactive
|
|
203
|
+
sig { returns(VitableConnect::EnrollmentStatus::TaggedSymbol) }
|
|
204
|
+
attr_accessor :status
|
|
205
|
+
|
|
206
|
+
# Timestamp when the enrollment decision was made
|
|
207
|
+
sig { returns(T.nilable(Time)) }
|
|
208
|
+
attr_accessor :answered_at
|
|
209
|
+
|
|
210
|
+
# Unique enrollment identifier with 'enrl\_' prefix
|
|
211
|
+
sig { returns(String) }
|
|
212
|
+
attr_accessor :id
|
|
213
|
+
|
|
214
|
+
sig do
|
|
215
|
+
params(
|
|
216
|
+
id: String,
|
|
217
|
+
status: VitableConnect::EnrollmentStatus::OrSymbol,
|
|
218
|
+
answered_at: T.nilable(Time)
|
|
219
|
+
).returns(T.attached_class)
|
|
220
|
+
end
|
|
221
|
+
def self.new(
|
|
222
|
+
# Unique enrollment identifier with 'enrl\_' prefix
|
|
223
|
+
id:,
|
|
224
|
+
# - `pending` - Pending
|
|
225
|
+
# - `enrolled` - Enrolled
|
|
226
|
+
# - `waived` - Waived
|
|
227
|
+
# - `inactive` - Inactive
|
|
228
|
+
status:,
|
|
229
|
+
# Timestamp when the enrollment decision was made
|
|
230
|
+
answered_at: nil
|
|
231
|
+
)
|
|
232
|
+
end
|
|
233
|
+
|
|
234
|
+
sig do
|
|
235
|
+
override.returns(
|
|
236
|
+
{
|
|
237
|
+
id: String,
|
|
238
|
+
status: VitableConnect::EnrollmentStatus::TaggedSymbol,
|
|
239
|
+
answered_at: T.nilable(Time)
|
|
240
|
+
}
|
|
241
|
+
)
|
|
242
|
+
end
|
|
243
|
+
def to_hash
|
|
244
|
+
end
|
|
245
|
+
end
|
|
246
|
+
|
|
247
|
+
class Address < VitableConnect::Internal::Type::BaseModel
|
|
248
|
+
OrHash =
|
|
249
|
+
T.type_alias do
|
|
250
|
+
T.any(
|
|
251
|
+
VitableConnect::Employee::Address,
|
|
252
|
+
VitableConnect::Internal::AnyHash
|
|
253
|
+
)
|
|
254
|
+
end
|
|
255
|
+
|
|
256
|
+
# Primary street address
|
|
257
|
+
sig { returns(String) }
|
|
258
|
+
attr_accessor :address_line_1
|
|
259
|
+
|
|
260
|
+
# City name
|
|
261
|
+
sig { returns(String) }
|
|
262
|
+
attr_accessor :city
|
|
263
|
+
|
|
264
|
+
# Two-letter state code (e.g., CA, NY)
|
|
265
|
+
sig { returns(String) }
|
|
266
|
+
attr_accessor :state
|
|
267
|
+
|
|
268
|
+
# ZIP code (5 or 9 digit)
|
|
269
|
+
sig { returns(String) }
|
|
270
|
+
attr_accessor :zipcode
|
|
271
|
+
|
|
272
|
+
# Secondary street address (apt, suite, etc.)
|
|
273
|
+
sig { returns(T.nilable(String)) }
|
|
274
|
+
attr_accessor :address_line_2
|
|
275
|
+
|
|
276
|
+
# Employee's residential address
|
|
277
|
+
sig do
|
|
278
|
+
params(
|
|
279
|
+
address_line_1: String,
|
|
280
|
+
city: String,
|
|
281
|
+
state: String,
|
|
282
|
+
zipcode: String,
|
|
283
|
+
address_line_2: T.nilable(String)
|
|
284
|
+
).returns(T.attached_class)
|
|
285
|
+
end
|
|
286
|
+
def self.new(
|
|
287
|
+
# Primary street address
|
|
288
|
+
address_line_1:,
|
|
289
|
+
# City name
|
|
290
|
+
city:,
|
|
291
|
+
# Two-letter state code (e.g., CA, NY)
|
|
292
|
+
state:,
|
|
293
|
+
# ZIP code (5 or 9 digit)
|
|
294
|
+
zipcode:,
|
|
295
|
+
# Secondary street address (apt, suite, etc.)
|
|
296
|
+
address_line_2: nil
|
|
297
|
+
)
|
|
298
|
+
end
|
|
299
|
+
|
|
300
|
+
sig do
|
|
301
|
+
override.returns(
|
|
302
|
+
{
|
|
303
|
+
address_line_1: String,
|
|
304
|
+
city: String,
|
|
305
|
+
state: String,
|
|
306
|
+
zipcode: String,
|
|
307
|
+
address_line_2: T.nilable(String)
|
|
308
|
+
}
|
|
309
|
+
)
|
|
310
|
+
end
|
|
311
|
+
def to_hash
|
|
312
|
+
end
|
|
313
|
+
end
|
|
314
|
+
end
|
|
315
|
+
end
|
|
316
|
+
end
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module VitableConnect
|
|
4
|
+
module Models
|
|
5
|
+
# - `Full Time` - Full Time
|
|
6
|
+
# - `Part Time` - Part Time
|
|
7
|
+
# - `Temporary` - Temporary
|
|
8
|
+
# - `Intern` - Intern
|
|
9
|
+
# - `Seasonal` - Seasonal
|
|
10
|
+
# - `Individual Contractor` - Individual Contractor
|
|
11
|
+
module EmployeeClass
|
|
12
|
+
extend VitableConnect::Internal::Type::Enum
|
|
13
|
+
|
|
14
|
+
TaggedSymbol =
|
|
15
|
+
T.type_alias { T.all(Symbol, VitableConnect::EmployeeClass) }
|
|
16
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
17
|
+
|
|
18
|
+
FULL_TIME =
|
|
19
|
+
T.let(:"Full Time", VitableConnect::EmployeeClass::TaggedSymbol)
|
|
20
|
+
PART_TIME =
|
|
21
|
+
T.let(:"Part Time", VitableConnect::EmployeeClass::TaggedSymbol)
|
|
22
|
+
TEMPORARY = T.let(:Temporary, VitableConnect::EmployeeClass::TaggedSymbol)
|
|
23
|
+
INTERN = T.let(:Intern, VitableConnect::EmployeeClass::TaggedSymbol)
|
|
24
|
+
SEASONAL = T.let(:Seasonal, VitableConnect::EmployeeClass::TaggedSymbol)
|
|
25
|
+
INDIVIDUAL_CONTRACTOR =
|
|
26
|
+
T.let(
|
|
27
|
+
:"Individual Contractor",
|
|
28
|
+
VitableConnect::EmployeeClass::TaggedSymbol
|
|
29
|
+
)
|
|
30
|
+
|
|
31
|
+
sig do
|
|
32
|
+
override.returns(T::Array[VitableConnect::EmployeeClass::TaggedSymbol])
|
|
33
|
+
end
|
|
34
|
+
def self.values
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module VitableConnect
|
|
4
|
+
module Models
|
|
5
|
+
class EmployeeListEnrollmentsParams < 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::EmployeeListEnrollmentsParams,
|
|
13
|
+
VitableConnect::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# Unique employee identifier (empl\_\*)
|
|
18
|
+
sig { returns(String) }
|
|
19
|
+
attr_accessor :employee_id
|
|
20
|
+
|
|
21
|
+
# Items per page (default: 20, max: 100)
|
|
22
|
+
sig { returns(T.nilable(Integer)) }
|
|
23
|
+
attr_reader :limit
|
|
24
|
+
|
|
25
|
+
sig { params(limit: Integer).void }
|
|
26
|
+
attr_writer :limit
|
|
27
|
+
|
|
28
|
+
# Page number (default: 1)
|
|
29
|
+
sig { returns(T.nilable(Integer)) }
|
|
30
|
+
attr_reader :page
|
|
31
|
+
|
|
32
|
+
sig { params(page: Integer).void }
|
|
33
|
+
attr_writer :page
|
|
34
|
+
|
|
35
|
+
sig do
|
|
36
|
+
params(
|
|
37
|
+
employee_id: String,
|
|
38
|
+
limit: Integer,
|
|
39
|
+
page: Integer,
|
|
40
|
+
request_options: VitableConnect::RequestOptions::OrHash
|
|
41
|
+
).returns(T.attached_class)
|
|
42
|
+
end
|
|
43
|
+
def self.new(
|
|
44
|
+
# Unique employee identifier (empl\_\*)
|
|
45
|
+
employee_id:,
|
|
46
|
+
# Items per page (default: 20, max: 100)
|
|
47
|
+
limit: nil,
|
|
48
|
+
# Page number (default: 1)
|
|
49
|
+
page: nil,
|
|
50
|
+
request_options: {}
|
|
51
|
+
)
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
sig do
|
|
55
|
+
override.returns(
|
|
56
|
+
{
|
|
57
|
+
employee_id: String,
|
|
58
|
+
limit: Integer,
|
|
59
|
+
page: Integer,
|
|
60
|
+
request_options: VitableConnect::RequestOptions
|
|
61
|
+
}
|
|
62
|
+
)
|
|
63
|
+
end
|
|
64
|
+
def to_hash
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
end
|