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.
Files changed (45) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -0
  3. data/README.md +1 -1
  4. data/lib/vitable_connect/client.rb +0 -1
  5. data/lib/vitable_connect/internal/transport/base_client.rb +4 -1
  6. data/lib/vitable_connect/models/employee.rb +9 -9
  7. data/lib/vitable_connect/models/employer.rb +1 -9
  8. data/lib/vitable_connect/models/group.rb +17 -6
  9. data/lib/vitable_connect/models/groups/members/sync_retrieve_response.rb +74 -3
  10. data/lib/vitable_connect/models/webhook_event_list_params.rb +0 -3
  11. data/lib/vitable_connect/models.rb +0 -9
  12. data/lib/vitable_connect/resources/benefit_eligibility_policies.rb +0 -21
  13. data/lib/vitable_connect/resources/employers.rb +0 -30
  14. data/lib/vitable_connect/version.rb +1 -1
  15. data/lib/vitable_connect.rb +0 -4
  16. data/rbi/vitable_connect/client.rbi +0 -1
  17. data/rbi/vitable_connect/models/employee.rbi +8 -8
  18. data/rbi/vitable_connect/models/employer.rbi +0 -8
  19. data/rbi/vitable_connect/models/group.rbi +12 -0
  20. data/rbi/vitable_connect/models/groups/members/sync_retrieve_response.rbi +174 -4
  21. data/rbi/vitable_connect/models/webhook_event_list_params.rbi +0 -8
  22. data/rbi/vitable_connect/models.rbi +0 -11
  23. data/rbi/vitable_connect/resources/benefit_eligibility_policies.rbi +0 -15
  24. data/rbi/vitable_connect/resources/employers.rbi +0 -21
  25. data/rbi/vitable_connect/resources/webhook_events.rbi +0 -1
  26. data/sig/vitable_connect/models/employee.rbs +5 -5
  27. data/sig/vitable_connect/models/employer.rbs +0 -5
  28. data/sig/vitable_connect/models/groups/members/sync_retrieve_response.rbs +69 -4
  29. data/sig/vitable_connect/models/webhook_event_list_params.rbs +0 -2
  30. data/sig/vitable_connect/models.rbs +0 -8
  31. data/sig/vitable_connect/resources/benefit_eligibility_policies.rbs +0 -5
  32. data/sig/vitable_connect/resources/employers.rbs +0 -7
  33. metadata +2 -14
  34. data/lib/vitable_connect/models/benefit_eligibility_policy.rb +0 -53
  35. data/lib/vitable_connect/models/benefit_eligibility_policy_response.rb +0 -18
  36. data/lib/vitable_connect/models/benefit_eligibility_policy_retrieve_params.rb +0 -22
  37. data/lib/vitable_connect/models/employer_create_benefit_eligibility_policy_params.rb +0 -43
  38. data/rbi/vitable_connect/models/benefit_eligibility_policy.rbi +0 -74
  39. data/rbi/vitable_connect/models/benefit_eligibility_policy_response.rbi +0 -38
  40. data/rbi/vitable_connect/models/benefit_eligibility_policy_retrieve_params.rbi +0 -43
  41. data/rbi/vitable_connect/models/employer_create_benefit_eligibility_policy_params.rbi +0 -64
  42. data/sig/vitable_connect/models/benefit_eligibility_policy.rbs +0 -50
  43. data/sig/vitable_connect/models/benefit_eligibility_policy_response.rbs +0 -14
  44. data/sig/vitable_connect/models/benefit_eligibility_policy_retrieve_params.rbs +0 -23
  45. 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: 5b7bde326a118d6bf7e828b5656d7a171347a8f56cd6462ebd9039513c111deb
4
- data.tar.gz: 81933369ea36e6cc106bfcf36f89a4730675a5fb213ae1ffb77dcb68b0f8c5cc
3
+ metadata.gz: f95073505c09fe79851a300e7809226f73aae321ed396dfaebd55c0a1ed443ba
4
+ data.tar.gz: dbdbfd8d843f86fcf1fbbc093113794f4d765f7f6c727b42759387741f2aa5f7
5
5
  SHA512:
6
- metadata.gz: d738d00b68acbf4f3d801da254c7aec0e490c36d36ffa3ca48ea52f9a69320e8ec7887c3365ac9706170a901642042dfd290d50c01206bf50c51e326fa033356
7
- data.tar.gz: 1d1f53004097675d631528b82e275558fa3f01bdb51bb65b2ef4d906a41a885dc3dff8e810acc8a28bffdf32faef58b19bc9b702d35fe337ae03314bf7571179
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
@@ -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 "vitable-connect", "~> 0.4.0"
20
+ gem "vitable-connect", "~> 0.5.0"
21
21
  ```
22
22
 
23
23
  <!-- x-release-please-end -->
@@ -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
- headers.delete("content-type") if body.nil?
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, phone: nil, reference_id: nil, suffix: nil, termination_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:, eligibility_policy_id:, legal_name:, name:, organization_id:, updated_at:, email: nil, phone_number: nil, reference_id: nil)
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
- # @param created_at [Time, nil]
40
- # @param external_reference_id [String]
41
- # @param name [String]
42
- # @param organization_id [String]
43
- # @param updated_at [Time, nil]
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 [Object]
44
- required :results, VitableConnect::Internal::Type::Unknown
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 [Object]
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
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module VitableConnect
4
- VERSION = "0.4.0"
4
+ VERSION = "0.5.0"
5
5
  end
@@ -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