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,164 @@
1
+ module VitableConnect
2
+ module Models
3
+ type enrollment =
4
+ {
5
+ id: String,
6
+ answered_at: Time?,
7
+ benefit: VitableConnect::Enrollment::Benefit,
8
+ coverage_end: Date?,
9
+ coverage_start: Date,
10
+ created_at: Time,
11
+ employee_deduction_in_cents: Integer?,
12
+ employee_id: String,
13
+ employer_contribution_in_cents: Integer?,
14
+ employer_id: String,
15
+ status: VitableConnect::Models::enrollment_status,
16
+ terminated_at: Time?,
17
+ updated_at: Time
18
+ }
19
+
20
+ class Enrollment < VitableConnect::Internal::Type::BaseModel
21
+ attr_accessor id: String
22
+
23
+ attr_accessor answered_at: Time?
24
+
25
+ attr_accessor benefit: VitableConnect::Enrollment::Benefit
26
+
27
+ attr_accessor coverage_end: Date?
28
+
29
+ attr_accessor coverage_start: Date
30
+
31
+ attr_accessor created_at: Time
32
+
33
+ attr_accessor employee_deduction_in_cents: Integer?
34
+
35
+ attr_accessor employee_id: String
36
+
37
+ attr_accessor employer_contribution_in_cents: Integer?
38
+
39
+ attr_accessor employer_id: String
40
+
41
+ attr_accessor status: VitableConnect::Models::enrollment_status
42
+
43
+ attr_accessor terminated_at: Time?
44
+
45
+ attr_accessor updated_at: Time
46
+
47
+ def initialize: (
48
+ id: String,
49
+ answered_at: Time?,
50
+ benefit: VitableConnect::Enrollment::Benefit,
51
+ coverage_end: Date?,
52
+ coverage_start: Date,
53
+ created_at: Time,
54
+ employee_deduction_in_cents: Integer?,
55
+ employee_id: String,
56
+ employer_contribution_in_cents: Integer?,
57
+ employer_id: String,
58
+ status: VitableConnect::Models::enrollment_status,
59
+ terminated_at: Time?,
60
+ updated_at: Time
61
+ ) -> void
62
+
63
+ def to_hash: -> {
64
+ id: String,
65
+ answered_at: Time?,
66
+ benefit: VitableConnect::Enrollment::Benefit,
67
+ coverage_end: Date?,
68
+ coverage_start: Date,
69
+ created_at: Time,
70
+ employee_deduction_in_cents: Integer?,
71
+ employee_id: String,
72
+ employer_contribution_in_cents: Integer?,
73
+ employer_id: String,
74
+ status: VitableConnect::Models::enrollment_status,
75
+ terminated_at: Time?,
76
+ updated_at: Time
77
+ }
78
+
79
+ type benefit =
80
+ {
81
+ id: String,
82
+ category: VitableConnect::Models::Enrollment::Benefit::category,
83
+ name: String,
84
+ product_code: VitableConnect::Models::Enrollment::Benefit::product_code
85
+ }
86
+
87
+ class Benefit < VitableConnect::Internal::Type::BaseModel
88
+ attr_accessor id: String
89
+
90
+ attr_accessor category: VitableConnect::Models::Enrollment::Benefit::category
91
+
92
+ attr_accessor name: String
93
+
94
+ attr_accessor product_code: VitableConnect::Models::Enrollment::Benefit::product_code
95
+
96
+ def initialize: (
97
+ id: String,
98
+ category: VitableConnect::Models::Enrollment::Benefit::category,
99
+ name: String,
100
+ product_code: VitableConnect::Models::Enrollment::Benefit::product_code
101
+ ) -> void
102
+
103
+ def to_hash: -> {
104
+ id: String,
105
+ category: VitableConnect::Models::Enrollment::Benefit::category,
106
+ name: String,
107
+ product_code: VitableConnect::Models::Enrollment::Benefit::product_code
108
+ }
109
+
110
+ type category = :Medical | :Dental | :Vision | :Hospital
111
+
112
+ module Category
113
+ extend VitableConnect::Internal::Type::Enum
114
+
115
+ MEDICAL: :Medical
116
+ DENTAL: :Dental
117
+ VISION: :Vision
118
+ HOSPITAL: :Hospital
119
+
120
+ def self?.values: -> ::Array[VitableConnect::Models::Enrollment::Benefit::category]
121
+ end
122
+
123
+ type product_code =
124
+ :EBA
125
+ | :VPC
126
+ | :VPC_CORE
127
+ | :MEC
128
+ | :MEC2
129
+ | :MEC_PLUS
130
+ | :MVP
131
+ | :MVP2
132
+ | :MVPSL
133
+ | :MVPSL2
134
+ | :VD
135
+ | :VV
136
+ | :ICHRA
137
+ | :ICHRA_PREMIUM_PLUS
138
+ | :ICHRA_REIMBURSEMENT_ONLY
139
+
140
+ module ProductCode
141
+ extend VitableConnect::Internal::Type::Enum
142
+
143
+ EBA: :EBA
144
+ VPC: :VPC
145
+ VPC_CORE: :VPC_CORE
146
+ MEC: :MEC
147
+ MEC2: :MEC2
148
+ MEC_PLUS: :MEC_PLUS
149
+ MVP: :MVP
150
+ MVP2: :MVP2
151
+ MVPSL: :MVPSL
152
+ MVPSL2: :MVPSL2
153
+ VD: :VD
154
+ VV: :VV
155
+ ICHRA: :ICHRA
156
+ ICHRA_PREMIUM_PLUS: :ICHRA_PREMIUM_PLUS
157
+ ICHRA_REIMBURSEMENT_ONLY: :ICHRA_REIMBURSEMENT_ONLY
158
+
159
+ def self?.values: -> ::Array[VitableConnect::Models::Enrollment::Benefit::product_code]
160
+ end
161
+ end
162
+ end
163
+ end
164
+ end
@@ -0,0 +1,24 @@
1
+ module VitableConnect
2
+ module Models
3
+ type enrollment_retrieve_params =
4
+ { enrollment_id: String }
5
+ & VitableConnect::Internal::Type::request_parameters
6
+
7
+ class EnrollmentRetrieveParams < VitableConnect::Internal::Type::BaseModel
8
+ extend VitableConnect::Internal::Type::RequestParameters::Converter
9
+ include VitableConnect::Internal::Type::RequestParameters
10
+
11
+ attr_accessor enrollment_id: String
12
+
13
+ def initialize: (
14
+ enrollment_id: String,
15
+ ?request_options: VitableConnect::request_opts
16
+ ) -> void
17
+
18
+ def to_hash: -> {
19
+ enrollment_id: String,
20
+ request_options: VitableConnect::RequestOptions
21
+ }
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,13 @@
1
+ module VitableConnect
2
+ module Models
3
+ type enrollment_retrieve_response = { data: VitableConnect::Enrollment }
4
+
5
+ class EnrollmentRetrieveResponse < VitableConnect::Internal::Type::BaseModel
6
+ attr_accessor data: VitableConnect::Enrollment
7
+
8
+ def initialize: (data: VitableConnect::Enrollment) -> void
9
+
10
+ def to_hash: -> { data: VitableConnect::Enrollment }
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,16 @@
1
+ module VitableConnect
2
+ module Models
3
+ type enrollment_status = :pending | :enrolled | :waived | :inactive
4
+
5
+ module EnrollmentStatus
6
+ extend VitableConnect::Internal::Type::Enum
7
+
8
+ PENDING: :pending
9
+ ENROLLED: :enrolled
10
+ WAIVED: :waived
11
+ INACTIVE: :inactive
12
+
13
+ def self?.values: -> ::Array[VitableConnect::Models::enrollment_status]
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,30 @@
1
+ module VitableConnect
2
+ module Models
3
+ type pagination =
4
+ { limit: Integer, page: Integer, total: Integer, total_pages: Integer }
5
+
6
+ class Pagination < VitableConnect::Internal::Type::BaseModel
7
+ attr_accessor limit: Integer
8
+
9
+ attr_accessor page: Integer
10
+
11
+ attr_accessor total: Integer
12
+
13
+ attr_accessor total_pages: Integer
14
+
15
+ def initialize: (
16
+ limit: Integer,
17
+ page: Integer,
18
+ total: Integer,
19
+ total_pages: Integer
20
+ ) -> void
21
+
22
+ def to_hash: -> {
23
+ limit: Integer,
24
+ page: Integer,
25
+ total: Integer,
26
+ total_pages: Integer
27
+ }
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,14 @@
1
+ module VitableConnect
2
+ module Models
3
+ type type_ = :employer | :employee
4
+
5
+ module Type
6
+ extend VitableConnect::Internal::Type::Enum
7
+
8
+ EMPLOYER: :employer
9
+ EMPLOYEE: :employee
10
+
11
+ def self?.values: -> ::Array[VitableConnect::Models::type_]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,45 @@
1
+ module VitableConnect
2
+ module Models
3
+ type webhook_event =
4
+ {
5
+ id: String,
6
+ created_at: Time,
7
+ event_name: String,
8
+ organization_id: String,
9
+ resource_id: String,
10
+ resource_type: String
11
+ }
12
+
13
+ class WebhookEvent < VitableConnect::Internal::Type::BaseModel
14
+ attr_accessor id: String
15
+
16
+ attr_accessor created_at: Time
17
+
18
+ attr_accessor event_name: String
19
+
20
+ attr_accessor organization_id: String
21
+
22
+ attr_accessor resource_id: String
23
+
24
+ attr_accessor resource_type: String
25
+
26
+ def initialize: (
27
+ id: String,
28
+ created_at: Time,
29
+ event_name: String,
30
+ organization_id: String,
31
+ resource_id: String,
32
+ resource_type: String
33
+ ) -> void
34
+
35
+ def to_hash: -> {
36
+ id: String,
37
+ created_at: Time,
38
+ event_name: String,
39
+ organization_id: String,
40
+ resource_id: String,
41
+ resource_type: String
42
+ }
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,23 @@
1
+ module VitableConnect
2
+ module Models
3
+ type webhook_event_list_deliveries_params =
4
+ { event_id: String } & VitableConnect::Internal::Type::request_parameters
5
+
6
+ class WebhookEventListDeliveriesParams < VitableConnect::Internal::Type::BaseModel
7
+ extend VitableConnect::Internal::Type::RequestParameters::Converter
8
+ include VitableConnect::Internal::Type::RequestParameters
9
+
10
+ attr_accessor event_id: String
11
+
12
+ def initialize: (
13
+ event_id: String,
14
+ ?request_options: VitableConnect::request_opts
15
+ ) -> void
16
+
17
+ def to_hash: -> {
18
+ event_id: String,
19
+ request_options: VitableConnect::RequestOptions
20
+ }
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,77 @@
1
+ module VitableConnect
2
+ module Models
3
+ type webhook_event_list_deliveries_response =
4
+ {
5
+ data: ::Array[VitableConnect::Models::WebhookEventListDeliveriesResponse::Data]
6
+ }
7
+
8
+ class WebhookEventListDeliveriesResponse < VitableConnect::Internal::Type::BaseModel
9
+ attr_accessor data: ::Array[VitableConnect::Models::WebhookEventListDeliveriesResponse::Data]
10
+
11
+ def initialize: (
12
+ data: ::Array[VitableConnect::Models::WebhookEventListDeliveriesResponse::Data]
13
+ ) -> void
14
+
15
+ def to_hash: -> {
16
+ data: ::Array[VitableConnect::Models::WebhookEventListDeliveriesResponse::Data]
17
+ }
18
+
19
+ type data =
20
+ {
21
+ id: String,
22
+ created_at: Time,
23
+ delivered_at: Time?,
24
+ failed_at: Time?,
25
+ failure_reason: String,
26
+ started_at: Time?,
27
+ status: String,
28
+ subscription_id: String,
29
+ webhook_event_id: String
30
+ }
31
+
32
+ class Data < VitableConnect::Internal::Type::BaseModel
33
+ attr_accessor id: String
34
+
35
+ attr_accessor created_at: Time
36
+
37
+ attr_accessor delivered_at: Time?
38
+
39
+ attr_accessor failed_at: Time?
40
+
41
+ attr_accessor failure_reason: String
42
+
43
+ attr_accessor started_at: Time?
44
+
45
+ attr_accessor status: String
46
+
47
+ attr_accessor subscription_id: String
48
+
49
+ attr_accessor webhook_event_id: String
50
+
51
+ def initialize: (
52
+ id: String,
53
+ created_at: Time,
54
+ delivered_at: Time?,
55
+ failed_at: Time?,
56
+ failure_reason: String,
57
+ started_at: Time?,
58
+ status: String,
59
+ subscription_id: String,
60
+ webhook_event_id: String
61
+ ) -> void
62
+
63
+ def to_hash: -> {
64
+ id: String,
65
+ created_at: Time,
66
+ delivered_at: Time?,
67
+ failed_at: Time?,
68
+ failure_reason: String,
69
+ started_at: Time?,
70
+ status: String,
71
+ subscription_id: String,
72
+ webhook_event_id: String
73
+ }
74
+ end
75
+ end
76
+ end
77
+ end
@@ -0,0 +1,126 @@
1
+ module VitableConnect
2
+ module Models
3
+ type webhook_event_list_params =
4
+ {
5
+ created_after: Time,
6
+ created_before: Time,
7
+ event_name: VitableConnect::Models::WebhookEventListParams::event_name,
8
+ limit: Integer,
9
+ page: Integer,
10
+ resource_id: String,
11
+ resource_type: VitableConnect::Models::WebhookEventListParams::resource_type
12
+ }
13
+ & VitableConnect::Internal::Type::request_parameters
14
+
15
+ class WebhookEventListParams < VitableConnect::Internal::Type::BaseModel
16
+ extend VitableConnect::Internal::Type::RequestParameters::Converter
17
+ include VitableConnect::Internal::Type::RequestParameters
18
+
19
+ attr_reader created_after: Time?
20
+
21
+ def created_after=: (Time) -> Time
22
+
23
+ attr_reader created_before: Time?
24
+
25
+ def created_before=: (Time) -> Time
26
+
27
+ attr_reader event_name: VitableConnect::Models::WebhookEventListParams::event_name?
28
+
29
+ def event_name=: (
30
+ VitableConnect::Models::WebhookEventListParams::event_name
31
+ ) -> VitableConnect::Models::WebhookEventListParams::event_name
32
+
33
+ attr_reader limit: Integer?
34
+
35
+ def limit=: (Integer) -> Integer
36
+
37
+ attr_reader page: Integer?
38
+
39
+ def page=: (Integer) -> Integer
40
+
41
+ attr_reader resource_id: String?
42
+
43
+ def resource_id=: (String) -> String
44
+
45
+ attr_reader resource_type: VitableConnect::Models::WebhookEventListParams::resource_type?
46
+
47
+ def resource_type=: (
48
+ VitableConnect::Models::WebhookEventListParams::resource_type
49
+ ) -> VitableConnect::Models::WebhookEventListParams::resource_type
50
+
51
+ def initialize: (
52
+ ?created_after: Time,
53
+ ?created_before: Time,
54
+ ?event_name: VitableConnect::Models::WebhookEventListParams::event_name,
55
+ ?limit: Integer,
56
+ ?page: Integer,
57
+ ?resource_id: String,
58
+ ?resource_type: VitableConnect::Models::WebhookEventListParams::resource_type,
59
+ ?request_options: VitableConnect::request_opts
60
+ ) -> void
61
+
62
+ def to_hash: -> {
63
+ created_after: Time,
64
+ created_before: Time,
65
+ event_name: VitableConnect::Models::WebhookEventListParams::event_name,
66
+ limit: Integer,
67
+ page: Integer,
68
+ resource_id: String,
69
+ resource_type: VitableConnect::Models::WebhookEventListParams::resource_type,
70
+ request_options: VitableConnect::RequestOptions
71
+ }
72
+
73
+ type event_name =
74
+ :"enrollment.accepted"
75
+ | :"enrollment.terminated"
76
+ | :"enrollment.elected"
77
+ | :"enrollment.granted"
78
+ | :"enrollment.waived"
79
+ | :"enrollment.started"
80
+ | :"employee.eligibility_granted"
81
+ | :"employee.eligibility_terminated"
82
+ | :"employee.deactivated"
83
+ | :"payroll_deduction.created"
84
+ | :"employer.eligibility_policy_created"
85
+
86
+ module EventName
87
+ extend VitableConnect::Internal::Type::Enum
88
+
89
+ ENROLLMENT_ACCEPTED: :"enrollment.accepted"
90
+ ENROLLMENT_TERMINATED: :"enrollment.terminated"
91
+ ENROLLMENT_ELECTED: :"enrollment.elected"
92
+ ENROLLMENT_GRANTED: :"enrollment.granted"
93
+ ENROLLMENT_WAIVED: :"enrollment.waived"
94
+ ENROLLMENT_STARTED: :"enrollment.started"
95
+ EMPLOYEE_ELIGIBILITY_GRANTED: :"employee.eligibility_granted"
96
+ EMPLOYEE_ELIGIBILITY_TERMINATED: :"employee.eligibility_terminated"
97
+ EMPLOYEE_DEACTIVATED: :"employee.deactivated"
98
+ PAYROLL_DEDUCTION_CREATED: :"payroll_deduction.created"
99
+ EMPLOYER_ELIGIBILITY_POLICY_CREATED: :"employer.eligibility_policy_created"
100
+
101
+ def self?.values: -> ::Array[VitableConnect::Models::WebhookEventListParams::event_name]
102
+ end
103
+
104
+ type resource_type =
105
+ :enrollment
106
+ | :employee
107
+ | :employer
108
+ | :dependent
109
+ | :plan_year
110
+ | :payroll_deduction
111
+
112
+ module ResourceType
113
+ extend VitableConnect::Internal::Type::Enum
114
+
115
+ ENROLLMENT: :enrollment
116
+ EMPLOYEE: :employee
117
+ EMPLOYER: :employer
118
+ DEPENDENT: :dependent
119
+ PLAN_YEAR: :plan_year
120
+ PAYROLL_DEDUCTION: :payroll_deduction
121
+
122
+ def self?.values: -> ::Array[VitableConnect::Models::WebhookEventListParams::resource_type]
123
+ end
124
+ end
125
+ end
126
+ end
@@ -0,0 +1,23 @@
1
+ module VitableConnect
2
+ module Models
3
+ type webhook_event_retrieve_params =
4
+ { event_id: String } & VitableConnect::Internal::Type::request_parameters
5
+
6
+ class WebhookEventRetrieveParams < VitableConnect::Internal::Type::BaseModel
7
+ extend VitableConnect::Internal::Type::RequestParameters::Converter
8
+ include VitableConnect::Internal::Type::RequestParameters
9
+
10
+ attr_accessor event_id: String
11
+
12
+ def initialize: (
13
+ event_id: String,
14
+ ?request_options: VitableConnect::request_opts
15
+ ) -> void
16
+
17
+ def to_hash: -> {
18
+ event_id: String,
19
+ request_options: VitableConnect::RequestOptions
20
+ }
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,14 @@
1
+ module VitableConnect
2
+ module Models
3
+ type webhook_event_retrieve_response =
4
+ { data: VitableConnect::WebhookEvent }
5
+
6
+ class WebhookEventRetrieveResponse < VitableConnect::Internal::Type::BaseModel
7
+ attr_accessor data: VitableConnect::WebhookEvent
8
+
9
+ def initialize: (data: VitableConnect::WebhookEvent) -> void
10
+
11
+ def to_hash: -> { data: VitableConnect::WebhookEvent }
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,51 @@
1
+ module VitableConnect
2
+ class AuthIssueAccessTokenParams = VitableConnect::Models::AuthIssueAccessTokenParams
3
+
4
+ class BenefitEligibilityPolicy = VitableConnect::Models::BenefitEligibilityPolicy
5
+
6
+ class BenefitEligibilityPolicyResponse = VitableConnect::Models::BenefitEligibilityPolicyResponse
7
+
8
+ class BenefitEligibilityPolicyRetrieveParams = VitableConnect::Models::BenefitEligibilityPolicyRetrieveParams
9
+
10
+ class Employee = VitableConnect::Models::Employee
11
+
12
+ module EmployeeClass = VitableConnect::Models::EmployeeClass
13
+
14
+ class EmployeeListEnrollmentsParams = VitableConnect::Models::EmployeeListEnrollmentsParams
15
+
16
+ class EmployeeRetrieveParams = VitableConnect::Models::EmployeeRetrieveParams
17
+
18
+ class Employer = VitableConnect::Models::Employer
19
+
20
+ class EmployerCreateBenefitEligibilityPolicyParams = VitableConnect::Models::EmployerCreateBenefitEligibilityPolicyParams
21
+
22
+ class EmployerCreateParams = VitableConnect::Models::EmployerCreateParams
23
+
24
+ class EmployerListEmployeesParams = VitableConnect::Models::EmployerListEmployeesParams
25
+
26
+ class EmployerListParams = VitableConnect::Models::EmployerListParams
27
+
28
+ class EmployerResponse = VitableConnect::Models::EmployerResponse
29
+
30
+ class EmployerRetrieveParams = VitableConnect::Models::EmployerRetrieveParams
31
+
32
+ class EmployerSubmitCensusSyncParams = VitableConnect::Models::EmployerSubmitCensusSyncParams
33
+
34
+ class Enrollment = VitableConnect::Models::Enrollment
35
+
36
+ class EnrollmentRetrieveParams = VitableConnect::Models::EnrollmentRetrieveParams
37
+
38
+ module EnrollmentStatus = VitableConnect::Models::EnrollmentStatus
39
+
40
+ class Pagination = VitableConnect::Models::Pagination
41
+
42
+ module Type = VitableConnect::Models::Type
43
+
44
+ class WebhookEvent = VitableConnect::Models::WebhookEvent
45
+
46
+ class WebhookEventListDeliveriesParams = VitableConnect::Models::WebhookEventListDeliveriesParams
47
+
48
+ class WebhookEventListParams = VitableConnect::Models::WebhookEventListParams
49
+
50
+ class WebhookEventRetrieveParams = VitableConnect::Models::WebhookEventRetrieveParams
51
+ end
@@ -0,0 +1,36 @@
1
+ module VitableConnect
2
+ type request_opts =
3
+ VitableConnect::RequestOptions
4
+ | VitableConnect::request_options
5
+ | ::Hash[Symbol, top]
6
+
7
+ type request_options =
8
+ {
9
+ idempotency_key: String?,
10
+ extra_query: ::Hash[String, (::Array[String] | String)?]?,
11
+ extra_headers: ::Hash[String, String?]?,
12
+ extra_body: top?,
13
+ max_retries: Integer?,
14
+ timeout: Float?
15
+ }
16
+
17
+ class RequestOptions < VitableConnect::Internal::Type::BaseModel
18
+ def self.validate!: (VitableConnect::request_opts opts) -> void
19
+
20
+ attr_accessor idempotency_key: String?
21
+
22
+ attr_accessor extra_query: ::Hash[String, (::Array[String] | String)?]?
23
+
24
+ attr_accessor extra_headers: ::Hash[String, String?]?
25
+
26
+ attr_accessor extra_body: top?
27
+
28
+ attr_accessor max_retries: Integer?
29
+
30
+ attr_accessor timeout: Float?
31
+
32
+ def initialize: (
33
+ ?VitableConnect::request_options | ::Hash[Symbol, top] values
34
+ ) -> void
35
+ end
36
+ end
@@ -0,0 +1,13 @@
1
+ module VitableConnect
2
+ module Resources
3
+ class Auth
4
+ def issue_access_token: (
5
+ grant_type: VitableConnect::Models::AuthIssueAccessTokenParams::grant_type,
6
+ ?bound_entity: VitableConnect::AuthIssueAccessTokenParams::BoundEntity?,
7
+ ?request_options: VitableConnect::request_opts
8
+ ) -> VitableConnect::Models::AuthIssueAccessTokenResponse
9
+
10
+ def initialize: (client: VitableConnect::Client) -> void
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,12 @@
1
+ module VitableConnect
2
+ module Resources
3
+ class BenefitEligibilityPolicies
4
+ def retrieve: (
5
+ String policy_id,
6
+ ?request_options: VitableConnect::request_opts
7
+ ) -> VitableConnect::BenefitEligibilityPolicyResponse
8
+
9
+ def initialize: (client: VitableConnect::Client) -> void
10
+ end
11
+ end
12
+ end