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.
Files changed (185) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +39 -0
  4. data/README.md +267 -0
  5. data/SECURITY.md +27 -0
  6. data/lib/vitable_connect/client.rb +118 -0
  7. data/lib/vitable_connect/errors.rb +228 -0
  8. data/lib/vitable_connect/file_part.rb +58 -0
  9. data/lib/vitable_connect/internal/page_number_page.rb +113 -0
  10. data/lib/vitable_connect/internal/transport/base_client.rb +577 -0
  11. data/lib/vitable_connect/internal/transport/pooled_net_requester.rb +210 -0
  12. data/lib/vitable_connect/internal/type/array_of.rb +168 -0
  13. data/lib/vitable_connect/internal/type/base_model.rb +534 -0
  14. data/lib/vitable_connect/internal/type/base_page.rb +55 -0
  15. data/lib/vitable_connect/internal/type/boolean.rb +77 -0
  16. data/lib/vitable_connect/internal/type/converter.rb +327 -0
  17. data/lib/vitable_connect/internal/type/enum.rb +152 -0
  18. data/lib/vitable_connect/internal/type/file_input.rb +111 -0
  19. data/lib/vitable_connect/internal/type/hash_of.rb +188 -0
  20. data/lib/vitable_connect/internal/type/request_parameters.rb +42 -0
  21. data/lib/vitable_connect/internal/type/union.rb +245 -0
  22. data/lib/vitable_connect/internal/type/unknown.rb +81 -0
  23. data/lib/vitable_connect/internal/util.rb +951 -0
  24. data/lib/vitable_connect/internal.rb +20 -0
  25. data/lib/vitable_connect/models/auth_issue_access_token_params.rb +68 -0
  26. data/lib/vitable_connect/models/auth_issue_access_token_response.rb +70 -0
  27. data/lib/vitable_connect/models/benefit_eligibility_policy.rb +53 -0
  28. data/lib/vitable_connect/models/benefit_eligibility_policy_response.rb +18 -0
  29. data/lib/vitable_connect/models/benefit_eligibility_policy_retrieve_params.rb +22 -0
  30. data/lib/vitable_connect/models/employee.rb +244 -0
  31. data/lib/vitable_connect/models/employee_class.rb +25 -0
  32. data/lib/vitable_connect/models/employee_list_enrollments_params.rb +38 -0
  33. data/lib/vitable_connect/models/employee_retrieve_params.rb +22 -0
  34. data/lib/vitable_connect/models/employee_retrieve_response.rb +18 -0
  35. data/lib/vitable_connect/models/employer.rb +163 -0
  36. data/lib/vitable_connect/models/employer_create_benefit_eligibility_policy_params.rb +43 -0
  37. data/lib/vitable_connect/models/employer_create_params.rb +115 -0
  38. data/lib/vitable_connect/models/employer_list_employees_params.rb +38 -0
  39. data/lib/vitable_connect/models/employer_list_params.rb +30 -0
  40. data/lib/vitable_connect/models/employer_response.rb +19 -0
  41. data/lib/vitable_connect/models/employer_retrieve_params.rb +22 -0
  42. data/lib/vitable_connect/models/employer_submit_census_sync_params.rb +374 -0
  43. data/lib/vitable_connect/models/employer_submit_census_sync_response.rb +35 -0
  44. data/lib/vitable_connect/models/enrollment.rb +234 -0
  45. data/lib/vitable_connect/models/enrollment_retrieve_params.rb +22 -0
  46. data/lib/vitable_connect/models/enrollment_retrieve_response.rb +18 -0
  47. data/lib/vitable_connect/models/enrollment_status.rb +21 -0
  48. data/lib/vitable_connect/models/pagination.rb +42 -0
  49. data/lib/vitable_connect/models/type.rb +17 -0
  50. data/lib/vitable_connect/models/webhook_event.rb +62 -0
  51. data/lib/vitable_connect/models/webhook_event_list_deliveries_params.rb +20 -0
  52. data/lib/vitable_connect/models/webhook_event_list_deliveries_response.rb +92 -0
  53. data/lib/vitable_connect/models/webhook_event_list_params.rb +135 -0
  54. data/lib/vitable_connect/models/webhook_event_retrieve_params.rb +20 -0
  55. data/lib/vitable_connect/models/webhook_event_retrieve_response.rb +18 -0
  56. data/lib/vitable_connect/models.rb +95 -0
  57. data/lib/vitable_connect/request_options.rb +78 -0
  58. data/lib/vitable_connect/resources/auth.rb +41 -0
  59. data/lib/vitable_connect/resources/benefit_eligibility_policies.rb +35 -0
  60. data/lib/vitable_connect/resources/employees.rb +63 -0
  61. data/lib/vitable_connect/resources/employers.rb +184 -0
  62. data/lib/vitable_connect/resources/enrollments.rb +35 -0
  63. data/lib/vitable_connect/resources/webhook_events.rb +95 -0
  64. data/lib/vitable_connect/version.rb +5 -0
  65. data/lib/vitable_connect.rb +93 -0
  66. data/manifest.yaml +17 -0
  67. data/rbi/vitable_connect/client.rbi +88 -0
  68. data/rbi/vitable_connect/errors.rbi +205 -0
  69. data/rbi/vitable_connect/file_part.rbi +37 -0
  70. data/rbi/vitable_connect/internal/page_number_page.rbi +49 -0
  71. data/rbi/vitable_connect/internal/transport/base_client.rbi +307 -0
  72. data/rbi/vitable_connect/internal/transport/pooled_net_requester.rbi +84 -0
  73. data/rbi/vitable_connect/internal/type/array_of.rbi +108 -0
  74. data/rbi/vitable_connect/internal/type/base_model.rbi +314 -0
  75. data/rbi/vitable_connect/internal/type/base_page.rbi +43 -0
  76. data/rbi/vitable_connect/internal/type/boolean.rbi +58 -0
  77. data/rbi/vitable_connect/internal/type/converter.rbi +225 -0
  78. data/rbi/vitable_connect/internal/type/enum.rbi +82 -0
  79. data/rbi/vitable_connect/internal/type/file_input.rbi +59 -0
  80. data/rbi/vitable_connect/internal/type/hash_of.rbi +108 -0
  81. data/rbi/vitable_connect/internal/type/request_parameters.rbi +31 -0
  82. data/rbi/vitable_connect/internal/type/union.rbi +130 -0
  83. data/rbi/vitable_connect/internal/type/unknown.rbi +58 -0
  84. data/rbi/vitable_connect/internal/util.rbi +507 -0
  85. data/rbi/vitable_connect/internal.rbi +18 -0
  86. data/rbi/vitable_connect/models/auth_issue_access_token_params.rbi +147 -0
  87. data/rbi/vitable_connect/models/auth_issue_access_token_response.rbi +128 -0
  88. data/rbi/vitable_connect/models/benefit_eligibility_policy.rbi +74 -0
  89. data/rbi/vitable_connect/models/benefit_eligibility_policy_response.rbi +38 -0
  90. data/rbi/vitable_connect/models/benefit_eligibility_policy_retrieve_params.rbi +43 -0
  91. data/rbi/vitable_connect/models/employee.rbi +316 -0
  92. data/rbi/vitable_connect/models/employee_class.rbi +38 -0
  93. data/rbi/vitable_connect/models/employee_list_enrollments_params.rbi +68 -0
  94. data/rbi/vitable_connect/models/employee_retrieve_params.rbi +46 -0
  95. data/rbi/vitable_connect/models/employee_retrieve_response.rbi +32 -0
  96. data/rbi/vitable_connect/models/employer.rbi +205 -0
  97. data/rbi/vitable_connect/models/employer_create_benefit_eligibility_policy_params.rbi +64 -0
  98. data/rbi/vitable_connect/models/employer_create_params.rbi +169 -0
  99. data/rbi/vitable_connect/models/employer_list_employees_params.rbi +68 -0
  100. data/rbi/vitable_connect/models/employer_list_params.rbi +60 -0
  101. data/rbi/vitable_connect/models/employer_response.rbi +36 -0
  102. data/rbi/vitable_connect/models/employer_retrieve_params.rbi +46 -0
  103. data/rbi/vitable_connect/models/employer_submit_census_sync_params.rbi +819 -0
  104. data/rbi/vitable_connect/models/employer_submit_census_sync_response.rbi +76 -0
  105. data/rbi/vitable_connect/models/enrollment.rbi +401 -0
  106. data/rbi/vitable_connect/models/enrollment_retrieve_params.rbi +46 -0
  107. data/rbi/vitable_connect/models/enrollment_retrieve_response.rbi +34 -0
  108. data/rbi/vitable_connect/models/enrollment_status.rbi +32 -0
  109. data/rbi/vitable_connect/models/pagination.rbi +62 -0
  110. data/rbi/vitable_connect/models/type.rbi +21 -0
  111. data/rbi/vitable_connect/models/webhook_event.rbi +81 -0
  112. data/rbi/vitable_connect/models/webhook_event_list_deliveries_params.rbi +38 -0
  113. data/rbi/vitable_connect/models/webhook_event_list_deliveries_response.rbi +147 -0
  114. data/rbi/vitable_connect/models/webhook_event_list_params.rbi +307 -0
  115. data/rbi/vitable_connect/models/webhook_event_retrieve_params.rbi +38 -0
  116. data/rbi/vitable_connect/models/webhook_event_retrieve_response.rbi +34 -0
  117. data/rbi/vitable_connect/models.rbi +62 -0
  118. data/rbi/vitable_connect/request_options.rbi +61 -0
  119. data/rbi/vitable_connect/resources/auth.rbi +36 -0
  120. data/rbi/vitable_connect/resources/benefit_eligibility_policies.rbi +27 -0
  121. data/rbi/vitable_connect/resources/employees.rbi +49 -0
  122. data/rbi/vitable_connect/resources/employers.rbi +147 -0
  123. data/rbi/vitable_connect/resources/enrollments.rbi +27 -0
  124. data/rbi/vitable_connect/resources/webhook_events.rbi +84 -0
  125. data/rbi/vitable_connect/version.rbi +5 -0
  126. data/sig/vitable_connect/client.rbs +42 -0
  127. data/sig/vitable_connect/errors.rbs +117 -0
  128. data/sig/vitable_connect/file_part.rbs +21 -0
  129. data/sig/vitable_connect/internal/page_number_page.rbs +28 -0
  130. data/sig/vitable_connect/internal/transport/base_client.rbs +133 -0
  131. data/sig/vitable_connect/internal/transport/pooled_net_requester.rbs +48 -0
  132. data/sig/vitable_connect/internal/type/array_of.rbs +48 -0
  133. data/sig/vitable_connect/internal/type/base_model.rbs +104 -0
  134. data/sig/vitable_connect/internal/type/base_page.rbs +24 -0
  135. data/sig/vitable_connect/internal/type/boolean.rbs +26 -0
  136. data/sig/vitable_connect/internal/type/converter.rbs +79 -0
  137. data/sig/vitable_connect/internal/type/enum.rbs +32 -0
  138. data/sig/vitable_connect/internal/type/file_input.rbs +25 -0
  139. data/sig/vitable_connect/internal/type/hash_of.rbs +48 -0
  140. data/sig/vitable_connect/internal/type/request_parameters.rbs +20 -0
  141. data/sig/vitable_connect/internal/type/union.rbs +52 -0
  142. data/sig/vitable_connect/internal/type/unknown.rbs +26 -0
  143. data/sig/vitable_connect/internal/util.rbs +195 -0
  144. data/sig/vitable_connect/internal.rbs +10 -0
  145. data/sig/vitable_connect/models/auth_issue_access_token_params.rbs +56 -0
  146. data/sig/vitable_connect/models/auth_issue_access_token_response.rbs +50 -0
  147. data/sig/vitable_connect/models/benefit_eligibility_policy.rbs +50 -0
  148. data/sig/vitable_connect/models/benefit_eligibility_policy_response.rbs +14 -0
  149. data/sig/vitable_connect/models/benefit_eligibility_policy_retrieve_params.rbs +23 -0
  150. data/sig/vitable_connect/models/employee.rbs +169 -0
  151. data/sig/vitable_connect/models/employee_class.rbs +24 -0
  152. data/sig/vitable_connect/models/employee_list_enrollments_params.rbs +36 -0
  153. data/sig/vitable_connect/models/employee_retrieve_params.rbs +24 -0
  154. data/sig/vitable_connect/models/employee_retrieve_response.rbs +13 -0
  155. data/sig/vitable_connect/models/employer.rbs +117 -0
  156. data/sig/vitable_connect/models/employer_create_benefit_eligibility_policy_params.rbs +32 -0
  157. data/sig/vitable_connect/models/employer_create_params.rbs +93 -0
  158. data/sig/vitable_connect/models/employer_list_employees_params.rbs +36 -0
  159. data/sig/vitable_connect/models/employer_list_params.rbs +32 -0
  160. data/sig/vitable_connect/models/employer_response.rbs +13 -0
  161. data/sig/vitable_connect/models/employer_retrieve_params.rbs +24 -0
  162. data/sig/vitable_connect/models/employer_submit_census_sync_params.rbs +274 -0
  163. data/sig/vitable_connect/models/employer_submit_census_sync_response.rbs +30 -0
  164. data/sig/vitable_connect/models/enrollment.rbs +164 -0
  165. data/sig/vitable_connect/models/enrollment_retrieve_params.rbs +24 -0
  166. data/sig/vitable_connect/models/enrollment_retrieve_response.rbs +13 -0
  167. data/sig/vitable_connect/models/enrollment_status.rbs +16 -0
  168. data/sig/vitable_connect/models/pagination.rbs +30 -0
  169. data/sig/vitable_connect/models/type.rbs +14 -0
  170. data/sig/vitable_connect/models/webhook_event.rbs +45 -0
  171. data/sig/vitable_connect/models/webhook_event_list_deliveries_params.rbs +23 -0
  172. data/sig/vitable_connect/models/webhook_event_list_deliveries_response.rbs +77 -0
  173. data/sig/vitable_connect/models/webhook_event_list_params.rbs +126 -0
  174. data/sig/vitable_connect/models/webhook_event_retrieve_params.rbs +23 -0
  175. data/sig/vitable_connect/models/webhook_event_retrieve_response.rbs +14 -0
  176. data/sig/vitable_connect/models.rbs +51 -0
  177. data/sig/vitable_connect/request_options.rbs +36 -0
  178. data/sig/vitable_connect/resources/auth.rbs +13 -0
  179. data/sig/vitable_connect/resources/benefit_eligibility_policies.rbs +12 -0
  180. data/sig/vitable_connect/resources/employees.rbs +19 -0
  181. data/sig/vitable_connect/resources/employers.rbs +49 -0
  182. data/sig/vitable_connect/resources/enrollments.rbs +12 -0
  183. data/sig/vitable_connect/resources/webhook_events.rbs +28 -0
  184. data/sig/vitable_connect/version.rbs +3 -0
  185. metadata +256 -0
@@ -0,0 +1,81 @@
1
+ # typed: strong
2
+
3
+ module VitableConnect
4
+ module Models
5
+ class WebhookEvent < VitableConnect::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(VitableConnect::WebhookEvent, VitableConnect::Internal::AnyHash)
9
+ end
10
+
11
+ # Prefixed unique identifier for this webhook event (e.g., `wevt_...`).
12
+ sig { returns(String) }
13
+ attr_accessor :id
14
+
15
+ # When the event occurred, in UTC.
16
+ sig { returns(Time) }
17
+ attr_accessor :created_at
18
+
19
+ # The event type, formatted as `{resource}.{action}` (e.g.,
20
+ # `enrollment.accepted`).
21
+ sig { returns(String) }
22
+ attr_accessor :event_name
23
+
24
+ # The organization this event belongs to.
25
+ sig { returns(String) }
26
+ attr_accessor :organization_id
27
+
28
+ # Prefixed ID of the affected resource. Use this to fetch the current state from
29
+ # the API.
30
+ sig { returns(String) }
31
+ attr_accessor :resource_id
32
+
33
+ # The type of resource affected (e.g., `enrollment`, `employee`).
34
+ sig { returns(String) }
35
+ attr_accessor :resource_type
36
+
37
+ sig do
38
+ params(
39
+ id: String,
40
+ created_at: Time,
41
+ event_name: String,
42
+ organization_id: String,
43
+ resource_id: String,
44
+ resource_type: String
45
+ ).returns(T.attached_class)
46
+ end
47
+ def self.new(
48
+ # Prefixed unique identifier for this webhook event (e.g., `wevt_...`).
49
+ id:,
50
+ # When the event occurred, in UTC.
51
+ created_at:,
52
+ # The event type, formatted as `{resource}.{action}` (e.g.,
53
+ # `enrollment.accepted`).
54
+ event_name:,
55
+ # The organization this event belongs to.
56
+ organization_id:,
57
+ # Prefixed ID of the affected resource. Use this to fetch the current state from
58
+ # the API.
59
+ resource_id:,
60
+ # The type of resource affected (e.g., `enrollment`, `employee`).
61
+ resource_type:
62
+ )
63
+ end
64
+
65
+ sig do
66
+ override.returns(
67
+ {
68
+ id: String,
69
+ created_at: Time,
70
+ event_name: String,
71
+ organization_id: String,
72
+ resource_id: String,
73
+ resource_type: String
74
+ }
75
+ )
76
+ end
77
+ def to_hash
78
+ end
79
+ end
80
+ end
81
+ end
@@ -0,0 +1,38 @@
1
+ # typed: strong
2
+
3
+ module VitableConnect
4
+ module Models
5
+ class WebhookEventListDeliveriesParams < 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::WebhookEventListDeliveriesParams,
13
+ VitableConnect::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ sig { returns(String) }
18
+ attr_accessor :event_id
19
+
20
+ sig do
21
+ params(
22
+ event_id: String,
23
+ request_options: VitableConnect::RequestOptions::OrHash
24
+ ).returns(T.attached_class)
25
+ end
26
+ def self.new(event_id:, request_options: {})
27
+ end
28
+
29
+ sig do
30
+ override.returns(
31
+ { event_id: String, request_options: VitableConnect::RequestOptions }
32
+ )
33
+ end
34
+ def to_hash
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,147 @@
1
+ # typed: strong
2
+
3
+ module VitableConnect
4
+ module Models
5
+ class WebhookEventListDeliveriesResponse < VitableConnect::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ VitableConnect::Models::WebhookEventListDeliveriesResponse,
10
+ VitableConnect::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ sig do
15
+ returns(
16
+ T::Array[
17
+ VitableConnect::Models::WebhookEventListDeliveriesResponse::Data
18
+ ]
19
+ )
20
+ end
21
+ attr_accessor :data
22
+
23
+ sig do
24
+ params(
25
+ data:
26
+ T::Array[
27
+ VitableConnect::Models::WebhookEventListDeliveriesResponse::Data::OrHash
28
+ ]
29
+ ).returns(T.attached_class)
30
+ end
31
+ def self.new(data:)
32
+ end
33
+
34
+ sig do
35
+ override.returns(
36
+ {
37
+ data:
38
+ T::Array[
39
+ VitableConnect::Models::WebhookEventListDeliveriesResponse::Data
40
+ ]
41
+ }
42
+ )
43
+ end
44
+ def to_hash
45
+ end
46
+
47
+ class Data < VitableConnect::Internal::Type::BaseModel
48
+ OrHash =
49
+ T.type_alias do
50
+ T.any(
51
+ VitableConnect::Models::WebhookEventListDeliveriesResponse::Data,
52
+ VitableConnect::Internal::AnyHash
53
+ )
54
+ end
55
+
56
+ # Prefixed unique identifier for this delivery (e.g., `wdlv_...`).
57
+ sig { returns(String) }
58
+ attr_accessor :id
59
+
60
+ # When this delivery record was created, in UTC.
61
+ sig { returns(Time) }
62
+ attr_accessor :created_at
63
+
64
+ # When the delivery was successfully received, in UTC.
65
+ sig { returns(T.nilable(Time)) }
66
+ attr_accessor :delivered_at
67
+
68
+ # When the delivery was marked as permanently failed, in UTC.
69
+ sig { returns(T.nilable(Time)) }
70
+ attr_accessor :failed_at
71
+
72
+ # Reason for failure, if applicable.
73
+ sig { returns(String) }
74
+ attr_accessor :failure_reason
75
+
76
+ # When the delivery attempt started, in UTC.
77
+ sig { returns(T.nilable(Time)) }
78
+ attr_accessor :started_at
79
+
80
+ # Current delivery status: Pending, In Progress, Delivered, or Failed.
81
+ sig { returns(String) }
82
+ attr_accessor :status
83
+
84
+ # The webhook subscription this delivery was sent to.
85
+ sig { returns(String) }
86
+ attr_accessor :subscription_id
87
+
88
+ # The webhook event this delivery belongs to.
89
+ sig { returns(String) }
90
+ attr_accessor :webhook_event_id
91
+
92
+ sig do
93
+ params(
94
+ id: String,
95
+ created_at: Time,
96
+ delivered_at: T.nilable(Time),
97
+ failed_at: T.nilable(Time),
98
+ failure_reason: String,
99
+ started_at: T.nilable(Time),
100
+ status: String,
101
+ subscription_id: String,
102
+ webhook_event_id: String
103
+ ).returns(T.attached_class)
104
+ end
105
+ def self.new(
106
+ # Prefixed unique identifier for this delivery (e.g., `wdlv_...`).
107
+ id:,
108
+ # When this delivery record was created, in UTC.
109
+ created_at:,
110
+ # When the delivery was successfully received, in UTC.
111
+ delivered_at:,
112
+ # When the delivery was marked as permanently failed, in UTC.
113
+ failed_at:,
114
+ # Reason for failure, if applicable.
115
+ failure_reason:,
116
+ # When the delivery attempt started, in UTC.
117
+ started_at:,
118
+ # Current delivery status: Pending, In Progress, Delivered, or Failed.
119
+ status:,
120
+ # The webhook subscription this delivery was sent to.
121
+ subscription_id:,
122
+ # The webhook event this delivery belongs to.
123
+ webhook_event_id:
124
+ )
125
+ end
126
+
127
+ sig do
128
+ override.returns(
129
+ {
130
+ id: String,
131
+ created_at: Time,
132
+ delivered_at: T.nilable(Time),
133
+ failed_at: T.nilable(Time),
134
+ failure_reason: String,
135
+ started_at: T.nilable(Time),
136
+ status: String,
137
+ subscription_id: String,
138
+ webhook_event_id: String
139
+ }
140
+ )
141
+ end
142
+ def to_hash
143
+ end
144
+ end
145
+ end
146
+ end
147
+ end
@@ -0,0 +1,307 @@
1
+ # typed: strong
2
+
3
+ module VitableConnect
4
+ module Models
5
+ class WebhookEventListParams < 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::WebhookEventListParams,
13
+ VitableConnect::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ sig { returns(T.nilable(Time)) }
18
+ attr_reader :created_after
19
+
20
+ sig { params(created_after: Time).void }
21
+ attr_writer :created_after
22
+
23
+ sig { returns(T.nilable(Time)) }
24
+ attr_reader :created_before
25
+
26
+ sig { params(created_before: Time).void }
27
+ attr_writer :created_before
28
+
29
+ # - `enrollment.accepted` - Enrollment Accepted
30
+ # - `enrollment.terminated` - Enrollment Terminated
31
+ # - `enrollment.elected` - Enrollment Elected
32
+ # - `enrollment.granted` - Enrollment Granted
33
+ # - `enrollment.waived` - Enrollment Waived
34
+ # - `enrollment.started` - Enrollment Started
35
+ # - `employee.eligibility_granted` - Employee Eligibility Granted
36
+ # - `employee.eligibility_terminated` - Employee Eligibility Terminated
37
+ # - `employee.deactivated` - Employee Deactivated
38
+ # - `payroll_deduction.created` - Payroll Deduction Created
39
+ # - `employer.eligibility_policy_created` - Employer Eligibility Policy Created
40
+ sig do
41
+ returns(
42
+ T.nilable(VitableConnect::WebhookEventListParams::EventName::OrSymbol)
43
+ )
44
+ end
45
+ attr_reader :event_name
46
+
47
+ sig do
48
+ params(
49
+ event_name:
50
+ VitableConnect::WebhookEventListParams::EventName::OrSymbol
51
+ ).void
52
+ end
53
+ attr_writer :event_name
54
+
55
+ # Items per page (default: 20, max: 100)
56
+ sig { returns(T.nilable(Integer)) }
57
+ attr_reader :limit
58
+
59
+ sig { params(limit: Integer).void }
60
+ attr_writer :limit
61
+
62
+ # Page number (default: 1)
63
+ sig { returns(T.nilable(Integer)) }
64
+ attr_reader :page
65
+
66
+ sig { params(page: Integer).void }
67
+ attr_writer :page
68
+
69
+ sig { returns(T.nilable(String)) }
70
+ attr_reader :resource_id
71
+
72
+ sig { params(resource_id: String).void }
73
+ attr_writer :resource_id
74
+
75
+ # - `enrollment` - Enrollment
76
+ # - `employee` - Employee
77
+ # - `employer` - Employer
78
+ # - `dependent` - Dependent
79
+ # - `plan_year` - Plan Year
80
+ # - `payroll_deduction` - Payroll Deduction
81
+ sig do
82
+ returns(
83
+ T.nilable(
84
+ VitableConnect::WebhookEventListParams::ResourceType::OrSymbol
85
+ )
86
+ )
87
+ end
88
+ attr_reader :resource_type
89
+
90
+ sig do
91
+ params(
92
+ resource_type:
93
+ VitableConnect::WebhookEventListParams::ResourceType::OrSymbol
94
+ ).void
95
+ end
96
+ attr_writer :resource_type
97
+
98
+ sig do
99
+ params(
100
+ created_after: Time,
101
+ created_before: Time,
102
+ event_name:
103
+ VitableConnect::WebhookEventListParams::EventName::OrSymbol,
104
+ limit: Integer,
105
+ page: Integer,
106
+ resource_id: String,
107
+ resource_type:
108
+ VitableConnect::WebhookEventListParams::ResourceType::OrSymbol,
109
+ request_options: VitableConnect::RequestOptions::OrHash
110
+ ).returns(T.attached_class)
111
+ end
112
+ def self.new(
113
+ created_after: nil,
114
+ created_before: nil,
115
+ # - `enrollment.accepted` - Enrollment Accepted
116
+ # - `enrollment.terminated` - Enrollment Terminated
117
+ # - `enrollment.elected` - Enrollment Elected
118
+ # - `enrollment.granted` - Enrollment Granted
119
+ # - `enrollment.waived` - Enrollment Waived
120
+ # - `enrollment.started` - Enrollment Started
121
+ # - `employee.eligibility_granted` - Employee Eligibility Granted
122
+ # - `employee.eligibility_terminated` - Employee Eligibility Terminated
123
+ # - `employee.deactivated` - Employee Deactivated
124
+ # - `payroll_deduction.created` - Payroll Deduction Created
125
+ # - `employer.eligibility_policy_created` - Employer Eligibility Policy Created
126
+ event_name: nil,
127
+ # Items per page (default: 20, max: 100)
128
+ limit: nil,
129
+ # Page number (default: 1)
130
+ page: nil,
131
+ resource_id: nil,
132
+ # - `enrollment` - Enrollment
133
+ # - `employee` - Employee
134
+ # - `employer` - Employer
135
+ # - `dependent` - Dependent
136
+ # - `plan_year` - Plan Year
137
+ # - `payroll_deduction` - Payroll Deduction
138
+ resource_type: nil,
139
+ request_options: {}
140
+ )
141
+ end
142
+
143
+ sig do
144
+ override.returns(
145
+ {
146
+ created_after: Time,
147
+ created_before: Time,
148
+ event_name:
149
+ VitableConnect::WebhookEventListParams::EventName::OrSymbol,
150
+ limit: Integer,
151
+ page: Integer,
152
+ resource_id: String,
153
+ resource_type:
154
+ VitableConnect::WebhookEventListParams::ResourceType::OrSymbol,
155
+ request_options: VitableConnect::RequestOptions
156
+ }
157
+ )
158
+ end
159
+ def to_hash
160
+ end
161
+
162
+ # - `enrollment.accepted` - Enrollment Accepted
163
+ # - `enrollment.terminated` - Enrollment Terminated
164
+ # - `enrollment.elected` - Enrollment Elected
165
+ # - `enrollment.granted` - Enrollment Granted
166
+ # - `enrollment.waived` - Enrollment Waived
167
+ # - `enrollment.started` - Enrollment Started
168
+ # - `employee.eligibility_granted` - Employee Eligibility Granted
169
+ # - `employee.eligibility_terminated` - Employee Eligibility Terminated
170
+ # - `employee.deactivated` - Employee Deactivated
171
+ # - `payroll_deduction.created` - Payroll Deduction Created
172
+ # - `employer.eligibility_policy_created` - Employer Eligibility Policy Created
173
+ module EventName
174
+ extend VitableConnect::Internal::Type::Enum
175
+
176
+ TaggedSymbol =
177
+ T.type_alias do
178
+ T.all(Symbol, VitableConnect::WebhookEventListParams::EventName)
179
+ end
180
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
181
+
182
+ ENROLLMENT_ACCEPTED =
183
+ T.let(
184
+ :"enrollment.accepted",
185
+ VitableConnect::WebhookEventListParams::EventName::TaggedSymbol
186
+ )
187
+ ENROLLMENT_TERMINATED =
188
+ T.let(
189
+ :"enrollment.terminated",
190
+ VitableConnect::WebhookEventListParams::EventName::TaggedSymbol
191
+ )
192
+ ENROLLMENT_ELECTED =
193
+ T.let(
194
+ :"enrollment.elected",
195
+ VitableConnect::WebhookEventListParams::EventName::TaggedSymbol
196
+ )
197
+ ENROLLMENT_GRANTED =
198
+ T.let(
199
+ :"enrollment.granted",
200
+ VitableConnect::WebhookEventListParams::EventName::TaggedSymbol
201
+ )
202
+ ENROLLMENT_WAIVED =
203
+ T.let(
204
+ :"enrollment.waived",
205
+ VitableConnect::WebhookEventListParams::EventName::TaggedSymbol
206
+ )
207
+ ENROLLMENT_STARTED =
208
+ T.let(
209
+ :"enrollment.started",
210
+ VitableConnect::WebhookEventListParams::EventName::TaggedSymbol
211
+ )
212
+ EMPLOYEE_ELIGIBILITY_GRANTED =
213
+ T.let(
214
+ :"employee.eligibility_granted",
215
+ VitableConnect::WebhookEventListParams::EventName::TaggedSymbol
216
+ )
217
+ EMPLOYEE_ELIGIBILITY_TERMINATED =
218
+ T.let(
219
+ :"employee.eligibility_terminated",
220
+ VitableConnect::WebhookEventListParams::EventName::TaggedSymbol
221
+ )
222
+ EMPLOYEE_DEACTIVATED =
223
+ T.let(
224
+ :"employee.deactivated",
225
+ VitableConnect::WebhookEventListParams::EventName::TaggedSymbol
226
+ )
227
+ PAYROLL_DEDUCTION_CREATED =
228
+ T.let(
229
+ :"payroll_deduction.created",
230
+ VitableConnect::WebhookEventListParams::EventName::TaggedSymbol
231
+ )
232
+ EMPLOYER_ELIGIBILITY_POLICY_CREATED =
233
+ T.let(
234
+ :"employer.eligibility_policy_created",
235
+ VitableConnect::WebhookEventListParams::EventName::TaggedSymbol
236
+ )
237
+
238
+ sig do
239
+ override.returns(
240
+ T::Array[
241
+ VitableConnect::WebhookEventListParams::EventName::TaggedSymbol
242
+ ]
243
+ )
244
+ end
245
+ def self.values
246
+ end
247
+ end
248
+
249
+ # - `enrollment` - Enrollment
250
+ # - `employee` - Employee
251
+ # - `employer` - Employer
252
+ # - `dependent` - Dependent
253
+ # - `plan_year` - Plan Year
254
+ # - `payroll_deduction` - Payroll Deduction
255
+ module ResourceType
256
+ extend VitableConnect::Internal::Type::Enum
257
+
258
+ TaggedSymbol =
259
+ T.type_alias do
260
+ T.all(Symbol, VitableConnect::WebhookEventListParams::ResourceType)
261
+ end
262
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
263
+
264
+ ENROLLMENT =
265
+ T.let(
266
+ :enrollment,
267
+ VitableConnect::WebhookEventListParams::ResourceType::TaggedSymbol
268
+ )
269
+ EMPLOYEE =
270
+ T.let(
271
+ :employee,
272
+ VitableConnect::WebhookEventListParams::ResourceType::TaggedSymbol
273
+ )
274
+ EMPLOYER =
275
+ T.let(
276
+ :employer,
277
+ VitableConnect::WebhookEventListParams::ResourceType::TaggedSymbol
278
+ )
279
+ DEPENDENT =
280
+ T.let(
281
+ :dependent,
282
+ VitableConnect::WebhookEventListParams::ResourceType::TaggedSymbol
283
+ )
284
+ PLAN_YEAR =
285
+ T.let(
286
+ :plan_year,
287
+ VitableConnect::WebhookEventListParams::ResourceType::TaggedSymbol
288
+ )
289
+ PAYROLL_DEDUCTION =
290
+ T.let(
291
+ :payroll_deduction,
292
+ VitableConnect::WebhookEventListParams::ResourceType::TaggedSymbol
293
+ )
294
+
295
+ sig do
296
+ override.returns(
297
+ T::Array[
298
+ VitableConnect::WebhookEventListParams::ResourceType::TaggedSymbol
299
+ ]
300
+ )
301
+ end
302
+ def self.values
303
+ end
304
+ end
305
+ end
306
+ end
307
+ end
@@ -0,0 +1,38 @@
1
+ # typed: strong
2
+
3
+ module VitableConnect
4
+ module Models
5
+ class WebhookEventRetrieveParams < 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::WebhookEventRetrieveParams,
13
+ VitableConnect::Internal::AnyHash
14
+ )
15
+ end
16
+
17
+ sig { returns(String) }
18
+ attr_accessor :event_id
19
+
20
+ sig do
21
+ params(
22
+ event_id: String,
23
+ request_options: VitableConnect::RequestOptions::OrHash
24
+ ).returns(T.attached_class)
25
+ end
26
+ def self.new(event_id:, request_options: {})
27
+ end
28
+
29
+ sig do
30
+ override.returns(
31
+ { event_id: String, request_options: VitableConnect::RequestOptions }
32
+ )
33
+ end
34
+ def to_hash
35
+ end
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,34 @@
1
+ # typed: strong
2
+
3
+ module VitableConnect
4
+ module Models
5
+ class WebhookEventRetrieveResponse < VitableConnect::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ VitableConnect::Models::WebhookEventRetrieveResponse,
10
+ VitableConnect::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ sig { returns(VitableConnect::WebhookEvent) }
15
+ attr_reader :data
16
+
17
+ sig { params(data: VitableConnect::WebhookEvent::OrHash).void }
18
+ attr_writer :data
19
+
20
+ # Response containing a single webhook event resource.
21
+ sig do
22
+ params(data: VitableConnect::WebhookEvent::OrHash).returns(
23
+ T.attached_class
24
+ )
25
+ end
26
+ def self.new(data:)
27
+ end
28
+
29
+ sig { override.returns({ data: VitableConnect::WebhookEvent }) }
30
+ def to_hash
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,62 @@
1
+ # typed: strong
2
+
3
+ module VitableConnect
4
+ AuthIssueAccessTokenParams =
5
+ VitableConnect::Models::AuthIssueAccessTokenParams
6
+
7
+ BenefitEligibilityPolicy = VitableConnect::Models::BenefitEligibilityPolicy
8
+
9
+ BenefitEligibilityPolicyResponse =
10
+ VitableConnect::Models::BenefitEligibilityPolicyResponse
11
+
12
+ BenefitEligibilityPolicyRetrieveParams =
13
+ VitableConnect::Models::BenefitEligibilityPolicyRetrieveParams
14
+
15
+ Employee = VitableConnect::Models::Employee
16
+
17
+ EmployeeClass = VitableConnect::Models::EmployeeClass
18
+
19
+ EmployeeListEnrollmentsParams =
20
+ VitableConnect::Models::EmployeeListEnrollmentsParams
21
+
22
+ EmployeeRetrieveParams = VitableConnect::Models::EmployeeRetrieveParams
23
+
24
+ Employer = VitableConnect::Models::Employer
25
+
26
+ EmployerCreateBenefitEligibilityPolicyParams =
27
+ VitableConnect::Models::EmployerCreateBenefitEligibilityPolicyParams
28
+
29
+ EmployerCreateParams = VitableConnect::Models::EmployerCreateParams
30
+
31
+ EmployerListEmployeesParams =
32
+ VitableConnect::Models::EmployerListEmployeesParams
33
+
34
+ EmployerListParams = VitableConnect::Models::EmployerListParams
35
+
36
+ EmployerResponse = VitableConnect::Models::EmployerResponse
37
+
38
+ EmployerRetrieveParams = VitableConnect::Models::EmployerRetrieveParams
39
+
40
+ EmployerSubmitCensusSyncParams =
41
+ VitableConnect::Models::EmployerSubmitCensusSyncParams
42
+
43
+ Enrollment = VitableConnect::Models::Enrollment
44
+
45
+ EnrollmentRetrieveParams = VitableConnect::Models::EnrollmentRetrieveParams
46
+
47
+ EnrollmentStatus = VitableConnect::Models::EnrollmentStatus
48
+
49
+ Pagination = VitableConnect::Models::Pagination
50
+
51
+ Type = VitableConnect::Models::Type
52
+
53
+ WebhookEvent = VitableConnect::Models::WebhookEvent
54
+
55
+ WebhookEventListDeliveriesParams =
56
+ VitableConnect::Models::WebhookEventListDeliveriesParams
57
+
58
+ WebhookEventListParams = VitableConnect::Models::WebhookEventListParams
59
+
60
+ WebhookEventRetrieveParams =
61
+ VitableConnect::Models::WebhookEventRetrieveParams
62
+ end