vitable-connect 0.3.0 → 0.4.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 (73) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +21 -0
  3. data/README.md +9 -9
  4. data/lib/vitable_connect/client.rb +23 -1
  5. data/lib/vitable_connect/internal/transport/base_client.rb +2 -0
  6. data/lib/vitable_connect/models/employee.rb +1 -45
  7. data/lib/vitable_connect/models/employer_update_settings_params.rb +52 -0
  8. data/lib/vitable_connect/models/employer_update_settings_response.rb +56 -0
  9. data/lib/vitable_connect/models/group.rb +46 -0
  10. data/lib/vitable_connect/models/group_create_params.rb +26 -0
  11. data/lib/vitable_connect/models/group_list_params.rb +30 -0
  12. data/lib/vitable_connect/models/group_response.rb +18 -0
  13. data/lib/vitable_connect/models/group_retrieve_params.rb +22 -0
  14. data/lib/vitable_connect/models/group_update_params.rb +36 -0
  15. data/lib/vitable_connect/models/groups/members/sync_retrieve_params.rb +33 -0
  16. data/lib/vitable_connect/models/groups/members/sync_retrieve_response.rb +57 -0
  17. data/lib/vitable_connect/models/groups/members/sync_submit_params.rb +121 -0
  18. data/lib/vitable_connect/models/groups/members/sync_submit_response.rb +45 -0
  19. data/lib/vitable_connect/models/plan_list_params.rb +30 -0
  20. data/lib/vitable_connect/models/plan_list_response.rb +22 -0
  21. data/lib/vitable_connect/models.rb +18 -0
  22. data/lib/vitable_connect/resources/employers.rb +28 -0
  23. data/lib/vitable_connect/resources/groups/members/sync.rb +74 -0
  24. data/lib/vitable_connect/resources/groups/members.rb +20 -0
  25. data/lib/vitable_connect/resources/groups.rb +114 -0
  26. data/lib/vitable_connect/resources/plans.rb +41 -0
  27. data/lib/vitable_connect/version.rb +1 -1
  28. data/lib/vitable_connect.rb +18 -0
  29. data/rbi/vitable_connect/client.rbi +6 -0
  30. data/rbi/vitable_connect/models/employee.rbi +0 -65
  31. data/rbi/vitable_connect/models/employer_update_settings_params.rbi +114 -0
  32. data/rbi/vitable_connect/models/employer_update_settings_response.rbi +147 -0
  33. data/rbi/vitable_connect/models/group.rbi +65 -0
  34. data/rbi/vitable_connect/models/group_create_params.rbi +46 -0
  35. data/rbi/vitable_connect/models/group_list_params.rbi +60 -0
  36. data/rbi/vitable_connect/models/group_response.rbi +32 -0
  37. data/rbi/vitable_connect/models/group_retrieve_params.rbi +43 -0
  38. data/rbi/vitable_connect/models/group_update_params.rbi +58 -0
  39. data/rbi/vitable_connect/models/groups/members/sync_retrieve_params.rbi +56 -0
  40. data/rbi/vitable_connect/models/groups/members/sync_retrieve_response.rbi +112 -0
  41. data/rbi/vitable_connect/models/groups/members/sync_submit_params.rbi +214 -0
  42. data/rbi/vitable_connect/models/groups/members/sync_submit_response.rbi +92 -0
  43. data/rbi/vitable_connect/models/plan_list_params.rbi +60 -0
  44. data/rbi/vitable_connect/models/plan_list_response.rbi +29 -0
  45. data/rbi/vitable_connect/models.rbi +19 -0
  46. data/rbi/vitable_connect/resources/employers.rbi +22 -0
  47. data/rbi/vitable_connect/resources/groups/members/sync.rbi +62 -0
  48. data/rbi/vitable_connect/resources/groups/members.rbi +17 -0
  49. data/rbi/vitable_connect/resources/groups.rbi +79 -0
  50. data/rbi/vitable_connect/resources/plans.rbi +34 -0
  51. data/sig/vitable_connect/client.rbs +4 -0
  52. data/sig/vitable_connect/models/employee.rbs +0 -32
  53. data/sig/vitable_connect/models/employer_update_settings_params.rbs +44 -0
  54. data/sig/vitable_connect/models/employer_update_settings_response.rbs +48 -0
  55. data/sig/vitable_connect/models/group.rbs +45 -0
  56. data/sig/vitable_connect/models/group_create_params.rbs +28 -0
  57. data/sig/vitable_connect/models/group_list_params.rbs +32 -0
  58. data/sig/vitable_connect/models/group_response.rbs +13 -0
  59. data/sig/vitable_connect/models/group_retrieve_params.rbs +23 -0
  60. data/sig/vitable_connect/models/group_update_params.rbs +32 -0
  61. data/sig/vitable_connect/models/groups/members/sync_retrieve_params.rbs +32 -0
  62. data/sig/vitable_connect/models/groups/members/sync_retrieve_response.rbs +61 -0
  63. data/sig/vitable_connect/models/groups/members/sync_submit_params.rbs +124 -0
  64. data/sig/vitable_connect/models/groups/members/sync_submit_response.rbs +47 -0
  65. data/sig/vitable_connect/models/plan_list_params.rbs +32 -0
  66. data/sig/vitable_connect/models/plan_list_response.rbs +15 -0
  67. data/sig/vitable_connect/models.rbs +18 -0
  68. data/sig/vitable_connect/resources/employers.rbs +6 -0
  69. data/sig/vitable_connect/resources/groups/members/sync.rbs +23 -0
  70. data/sig/vitable_connect/resources/groups/members.rbs +11 -0
  71. data/sig/vitable_connect/resources/groups.rbs +33 -0
  72. data/sig/vitable_connect/resources/plans.rbs +13 -0
  73. metadata +56 -2
@@ -0,0 +1,79 @@
1
+ # typed: strong
2
+
3
+ module VitableConnect
4
+ module Resources
5
+ class Groups
6
+ sig { returns(VitableConnect::Resources::Groups::Members) }
7
+ attr_reader :members
8
+
9
+ # Creates a new group scoped to the authenticated organization.
10
+ sig do
11
+ params(
12
+ external_reference_id: String,
13
+ name: String,
14
+ request_options: VitableConnect::RequestOptions::OrHash
15
+ ).returns(VitableConnect::GroupResponse)
16
+ end
17
+ def create(external_reference_id:, name:, request_options: {})
18
+ end
19
+
20
+ # Retrieves a single group by its prefixed ID. Returns 404 if the group does not
21
+ # belong to the authenticated organization.
22
+ sig do
23
+ params(
24
+ group_id: String,
25
+ request_options: VitableConnect::RequestOptions::OrHash
26
+ ).returns(VitableConnect::GroupResponse)
27
+ end
28
+ def retrieve(
29
+ # Unique group identifier (grp\_\*)
30
+ group_id,
31
+ request_options: {}
32
+ )
33
+ end
34
+
35
+ # Partially updates a group's name or external reference ID. Returns 404 if the
36
+ # group does not belong to the authenticated organization.
37
+ sig do
38
+ params(
39
+ group_id: String,
40
+ external_reference_id: T.nilable(String),
41
+ name: T.nilable(String),
42
+ request_options: VitableConnect::RequestOptions::OrHash
43
+ ).returns(VitableConnect::GroupResponse)
44
+ end
45
+ def update(
46
+ # Unique group identifier (grp\_\*)
47
+ group_id,
48
+ external_reference_id: nil,
49
+ name: nil,
50
+ request_options: {}
51
+ )
52
+ end
53
+
54
+ # Returns a paginated list of groups belonging to the authenticated organization.
55
+ sig do
56
+ params(
57
+ limit: Integer,
58
+ page: Integer,
59
+ request_options: VitableConnect::RequestOptions::OrHash
60
+ ).returns(
61
+ VitableConnect::Internal::PageNumberPage[VitableConnect::Group]
62
+ )
63
+ end
64
+ def list(
65
+ # Items per page (default: 20, max: 100)
66
+ limit: nil,
67
+ # Page number (default: 1)
68
+ page: nil,
69
+ request_options: {}
70
+ )
71
+ end
72
+
73
+ # @api private
74
+ sig { params(client: VitableConnect::Client).returns(T.attached_class) }
75
+ def self.new(client:)
76
+ end
77
+ end
78
+ end
79
+ end
@@ -0,0 +1,34 @@
1
+ # typed: strong
2
+
3
+ module VitableConnect
4
+ module Resources
5
+ class Plans
6
+ # Returns a paginated list of benefit plans linked to the authenticated
7
+ # organization.
8
+ sig do
9
+ params(
10
+ limit: Integer,
11
+ page: Integer,
12
+ request_options: VitableConnect::RequestOptions::OrHash
13
+ ).returns(
14
+ VitableConnect::Internal::PageNumberPage[
15
+ VitableConnect::Models::PlanListResponse
16
+ ]
17
+ )
18
+ end
19
+ def list(
20
+ # Items per page (default: 20, max: 100)
21
+ limit: nil,
22
+ # Page number (default: 1)
23
+ page: nil,
24
+ request_options: {}
25
+ )
26
+ end
27
+
28
+ # @api private
29
+ sig { params(client: VitableConnect::Client).returns(T.attached_class) }
30
+ def self.new(client:)
31
+ end
32
+ end
33
+ end
34
+ end
@@ -27,6 +27,10 @@ module VitableConnect
27
27
 
28
28
  attr_reader webhook_events: VitableConnect::Resources::WebhookEvents
29
29
 
30
+ attr_reader groups: VitableConnect::Resources::Groups
31
+
32
+ attr_reader plans: VitableConnect::Resources::Plans
33
+
30
34
  private def auth_headers: -> ::Hash[String, String]
31
35
 
32
36
  def initialize: (
@@ -7,7 +7,6 @@ module VitableConnect
7
7
  date_of_birth: Date,
8
8
  deductions: ::Array[VitableConnect::Employee::Deduction],
9
9
  email: String,
10
- enrollments: ::Array[VitableConnect::Employee::Enrollment],
11
10
  first_name: String,
12
11
  last_name: String,
13
12
  member_id: String,
@@ -32,8 +31,6 @@ module VitableConnect
32
31
 
33
32
  attr_accessor email: String
34
33
 
35
- attr_accessor enrollments: ::Array[VitableConnect::Employee::Enrollment]
36
-
37
34
  attr_accessor first_name: String
38
35
 
39
36
  attr_accessor last_name: String
@@ -68,7 +65,6 @@ module VitableConnect
68
65
  date_of_birth: Date,
69
66
  deductions: ::Array[VitableConnect::Employee::Deduction],
70
67
  email: String,
71
- enrollments: ::Array[VitableConnect::Employee::Enrollment],
72
68
  first_name: String,
73
69
  last_name: String,
74
70
  member_id: String,
@@ -90,7 +86,6 @@ module VitableConnect
90
86
  date_of_birth: Date,
91
87
  deductions: ::Array[VitableConnect::Employee::Deduction],
92
88
  email: String,
93
- enrollments: ::Array[VitableConnect::Employee::Enrollment],
94
89
  first_name: String,
95
90
  last_name: String,
96
91
  member_id: String,
@@ -178,33 +173,6 @@ module VitableConnect
178
173
  end
179
174
  end
180
175
 
181
- type enrollment =
182
- {
183
- id: String,
184
- status: VitableConnect::Models::enrollment_status,
185
- answered_at: Time?
186
- }
187
-
188
- class Enrollment < VitableConnect::Internal::Type::BaseModel
189
- attr_accessor status: VitableConnect::Models::enrollment_status
190
-
191
- attr_accessor answered_at: Time?
192
-
193
- attr_accessor id: String
194
-
195
- def initialize: (
196
- id: String,
197
- status: VitableConnect::Models::enrollment_status,
198
- ?answered_at: Time?
199
- ) -> void
200
-
201
- def to_hash: -> {
202
- id: String,
203
- status: VitableConnect::Models::enrollment_status,
204
- answered_at: Time?
205
- }
206
- end
207
-
208
176
  type address =
209
177
  {
210
178
  :address_line_1 => String,
@@ -0,0 +1,44 @@
1
+ module VitableConnect
2
+ module Models
3
+ type employer_update_settings_params =
4
+ {
5
+ employer_id: String,
6
+ pay_frequency: VitableConnect::Models::EmployerUpdateSettingsParams::pay_frequency
7
+ }
8
+ & VitableConnect::Internal::Type::request_parameters
9
+
10
+ class EmployerUpdateSettingsParams < VitableConnect::Internal::Type::BaseModel
11
+ extend VitableConnect::Internal::Type::RequestParameters::Converter
12
+ include VitableConnect::Internal::Type::RequestParameters
13
+
14
+ attr_accessor employer_id: String
15
+
16
+ attr_accessor pay_frequency: VitableConnect::Models::EmployerUpdateSettingsParams::pay_frequency
17
+
18
+ def initialize: (
19
+ employer_id: String,
20
+ pay_frequency: VitableConnect::Models::EmployerUpdateSettingsParams::pay_frequency,
21
+ ?request_options: VitableConnect::request_opts
22
+ ) -> void
23
+
24
+ def to_hash: -> {
25
+ employer_id: String,
26
+ pay_frequency: VitableConnect::Models::EmployerUpdateSettingsParams::pay_frequency,
27
+ request_options: VitableConnect::RequestOptions
28
+ }
29
+
30
+ type pay_frequency = :weekly | :bi_weekly | :semi_monthly | :monthly
31
+
32
+ module PayFrequency
33
+ extend VitableConnect::Internal::Type::Enum
34
+
35
+ WEEKLY: :weekly
36
+ BI_WEEKLY: :bi_weekly
37
+ SEMI_MONTHLY: :semi_monthly
38
+ MONTHLY: :monthly
39
+
40
+ def self?.values: -> ::Array[VitableConnect::Models::EmployerUpdateSettingsParams::pay_frequency]
41
+ end
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,48 @@
1
+ module VitableConnect
2
+ module Models
3
+ type employer_update_settings_response =
4
+ { data: VitableConnect::Models::EmployerUpdateSettingsResponse::Data }
5
+
6
+ class EmployerUpdateSettingsResponse < VitableConnect::Internal::Type::BaseModel
7
+ attr_accessor data: VitableConnect::Models::EmployerUpdateSettingsResponse::Data
8
+
9
+ def initialize: (
10
+ data: VitableConnect::Models::EmployerUpdateSettingsResponse::Data
11
+ ) -> void
12
+
13
+ def to_hash: -> {
14
+ data: VitableConnect::Models::EmployerUpdateSettingsResponse::Data
15
+ }
16
+
17
+ type data =
18
+ {
19
+ pay_frequency: VitableConnect::Models::EmployerUpdateSettingsResponse::Data::pay_frequency?
20
+ }
21
+
22
+ class Data < VitableConnect::Internal::Type::BaseModel
23
+ attr_accessor pay_frequency: VitableConnect::Models::EmployerUpdateSettingsResponse::Data::pay_frequency?
24
+
25
+ def initialize: (
26
+ pay_frequency: VitableConnect::Models::EmployerUpdateSettingsResponse::Data::pay_frequency?
27
+ ) -> void
28
+
29
+ def to_hash: -> {
30
+ pay_frequency: VitableConnect::Models::EmployerUpdateSettingsResponse::Data::pay_frequency?
31
+ }
32
+
33
+ type pay_frequency = :weekly | :bi_weekly | :semi_monthly | :monthly
34
+
35
+ module PayFrequency
36
+ extend VitableConnect::Internal::Type::Enum
37
+
38
+ WEEKLY: :weekly
39
+ BI_WEEKLY: :bi_weekly
40
+ SEMI_MONTHLY: :semi_monthly
41
+ MONTHLY: :monthly
42
+
43
+ def self?.values: -> ::Array[VitableConnect::Models::EmployerUpdateSettingsResponse::Data::pay_frequency]
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,45 @@
1
+ module VitableConnect
2
+ module Models
3
+ type group =
4
+ {
5
+ id: String,
6
+ created_at: Time?,
7
+ external_reference_id: String,
8
+ name: String,
9
+ organization_id: String,
10
+ updated_at: Time?
11
+ }
12
+
13
+ class Group < VitableConnect::Internal::Type::BaseModel
14
+ attr_accessor id: String
15
+
16
+ attr_accessor created_at: Time?
17
+
18
+ attr_accessor external_reference_id: String
19
+
20
+ attr_accessor name: String
21
+
22
+ attr_accessor organization_id: String
23
+
24
+ attr_accessor updated_at: Time?
25
+
26
+ def initialize: (
27
+ id: String,
28
+ created_at: Time?,
29
+ external_reference_id: String,
30
+ name: String,
31
+ organization_id: String,
32
+ updated_at: Time?
33
+ ) -> void
34
+
35
+ def to_hash: -> {
36
+ id: String,
37
+ created_at: Time?,
38
+ external_reference_id: String,
39
+ name: String,
40
+ organization_id: String,
41
+ updated_at: Time?
42
+ }
43
+ end
44
+ end
45
+ end
@@ -0,0 +1,28 @@
1
+ module VitableConnect
2
+ module Models
3
+ type group_create_params =
4
+ { external_reference_id: String, name: String }
5
+ & VitableConnect::Internal::Type::request_parameters
6
+
7
+ class GroupCreateParams < VitableConnect::Internal::Type::BaseModel
8
+ extend VitableConnect::Internal::Type::RequestParameters::Converter
9
+ include VitableConnect::Internal::Type::RequestParameters
10
+
11
+ attr_accessor external_reference_id: String
12
+
13
+ attr_accessor name: String
14
+
15
+ def initialize: (
16
+ external_reference_id: String,
17
+ name: String,
18
+ ?request_options: VitableConnect::request_opts
19
+ ) -> void
20
+
21
+ def to_hash: -> {
22
+ external_reference_id: String,
23
+ name: String,
24
+ request_options: VitableConnect::RequestOptions
25
+ }
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,32 @@
1
+ module VitableConnect
2
+ module Models
3
+ type group_list_params =
4
+ { limit: Integer, page: Integer }
5
+ & VitableConnect::Internal::Type::request_parameters
6
+
7
+ class GroupListParams < VitableConnect::Internal::Type::BaseModel
8
+ extend VitableConnect::Internal::Type::RequestParameters::Converter
9
+ include VitableConnect::Internal::Type::RequestParameters
10
+
11
+ attr_reader limit: Integer?
12
+
13
+ def limit=: (Integer) -> Integer
14
+
15
+ attr_reader page: Integer?
16
+
17
+ def page=: (Integer) -> Integer
18
+
19
+ def initialize: (
20
+ ?limit: Integer,
21
+ ?page: Integer,
22
+ ?request_options: VitableConnect::request_opts
23
+ ) -> void
24
+
25
+ def to_hash: -> {
26
+ limit: Integer,
27
+ page: Integer,
28
+ request_options: VitableConnect::RequestOptions
29
+ }
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,13 @@
1
+ module VitableConnect
2
+ module Models
3
+ type group_response = { data: VitableConnect::Group }
4
+
5
+ class GroupResponse < VitableConnect::Internal::Type::BaseModel
6
+ attr_accessor data: VitableConnect::Group
7
+
8
+ def initialize: (data: VitableConnect::Group) -> void
9
+
10
+ def to_hash: -> { data: VitableConnect::Group }
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,23 @@
1
+ module VitableConnect
2
+ module Models
3
+ type group_retrieve_params =
4
+ { group_id: String } & VitableConnect::Internal::Type::request_parameters
5
+
6
+ class GroupRetrieveParams < VitableConnect::Internal::Type::BaseModel
7
+ extend VitableConnect::Internal::Type::RequestParameters::Converter
8
+ include VitableConnect::Internal::Type::RequestParameters
9
+
10
+ attr_accessor group_id: String
11
+
12
+ def initialize: (
13
+ group_id: String,
14
+ ?request_options: VitableConnect::request_opts
15
+ ) -> void
16
+
17
+ def to_hash: -> {
18
+ group_id: String,
19
+ request_options: VitableConnect::RequestOptions
20
+ }
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,32 @@
1
+ module VitableConnect
2
+ module Models
3
+ type group_update_params =
4
+ { group_id: String, external_reference_id: String?, name: String? }
5
+ & VitableConnect::Internal::Type::request_parameters
6
+
7
+ class GroupUpdateParams < VitableConnect::Internal::Type::BaseModel
8
+ extend VitableConnect::Internal::Type::RequestParameters::Converter
9
+ include VitableConnect::Internal::Type::RequestParameters
10
+
11
+ attr_accessor group_id: String
12
+
13
+ attr_accessor external_reference_id: String?
14
+
15
+ attr_accessor name: String?
16
+
17
+ def initialize: (
18
+ group_id: String,
19
+ ?external_reference_id: String?,
20
+ ?name: String?,
21
+ ?request_options: VitableConnect::request_opts
22
+ ) -> void
23
+
24
+ def to_hash: -> {
25
+ group_id: String,
26
+ external_reference_id: String?,
27
+ name: String?,
28
+ request_options: VitableConnect::RequestOptions
29
+ }
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,32 @@
1
+ module VitableConnect
2
+ module Models
3
+ module Groups
4
+ module Members
5
+ type sync_retrieve_params =
6
+ { group_id: String, request_id: String }
7
+ & VitableConnect::Internal::Type::request_parameters
8
+
9
+ class SyncRetrieveParams < VitableConnect::Internal::Type::BaseModel
10
+ extend VitableConnect::Internal::Type::RequestParameters::Converter
11
+ include VitableConnect::Internal::Type::RequestParameters
12
+
13
+ attr_accessor group_id: String
14
+
15
+ attr_accessor request_id: String
16
+
17
+ def initialize: (
18
+ group_id: String,
19
+ request_id: String,
20
+ ?request_options: VitableConnect::request_opts
21
+ ) -> void
22
+
23
+ def to_hash: -> {
24
+ group_id: String,
25
+ request_id: String,
26
+ request_options: VitableConnect::RequestOptions
27
+ }
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,61 @@
1
+ module VitableConnect
2
+ module Models
3
+ module Groups
4
+ module Members
5
+ type sync_retrieve_response =
6
+ {
7
+ data: VitableConnect::Models::Groups::Members::SyncRetrieveResponse::Data
8
+ }
9
+
10
+ class SyncRetrieveResponse < VitableConnect::Internal::Type::BaseModel
11
+ attr_accessor data: VitableConnect::Models::Groups::Members::SyncRetrieveResponse::Data
12
+
13
+ def initialize: (
14
+ data: VitableConnect::Models::Groups::Members::SyncRetrieveResponse::Data
15
+ ) -> void
16
+
17
+ def to_hash: -> {
18
+ data: VitableConnect::Models::Groups::Members::SyncRetrieveResponse::Data
19
+ }
20
+
21
+ type data =
22
+ {
23
+ accepted_at: Time,
24
+ completed_at: Time?,
25
+ group_id: String,
26
+ request_id: String,
27
+ results: top
28
+ }
29
+
30
+ class Data < VitableConnect::Internal::Type::BaseModel
31
+ attr_accessor accepted_at: Time
32
+
33
+ attr_accessor completed_at: Time?
34
+
35
+ attr_accessor group_id: String
36
+
37
+ attr_accessor request_id: String
38
+
39
+ attr_accessor results: top
40
+
41
+ def initialize: (
42
+ accepted_at: Time,
43
+ completed_at: Time?,
44
+ group_id: String,
45
+ request_id: String,
46
+ results: top
47
+ ) -> void
48
+
49
+ def to_hash: -> {
50
+ accepted_at: Time,
51
+ completed_at: Time?,
52
+ group_id: String,
53
+ request_id: String,
54
+ results: top
55
+ }
56
+ end
57
+ end
58
+ end
59
+ end
60
+ end
61
+ end
@@ -0,0 +1,124 @@
1
+ module VitableConnect
2
+ module Models
3
+ module Groups
4
+ module Members
5
+ type sync_submit_params =
6
+ {
7
+ group_id: String,
8
+ members: ::Array[VitableConnect::Groups::Members::SyncSubmitParams::Member]
9
+ }
10
+ & VitableConnect::Internal::Type::request_parameters
11
+
12
+ class SyncSubmitParams < VitableConnect::Internal::Type::BaseModel
13
+ extend VitableConnect::Internal::Type::RequestParameters::Converter
14
+ include VitableConnect::Internal::Type::RequestParameters
15
+
16
+ attr_accessor group_id: String
17
+
18
+ attr_accessor members: ::Array[VitableConnect::Groups::Members::SyncSubmitParams::Member]
19
+
20
+ def initialize: (
21
+ group_id: String,
22
+ members: ::Array[VitableConnect::Groups::Members::SyncSubmitParams::Member],
23
+ ?request_options: VitableConnect::request_opts
24
+ ) -> void
25
+
26
+ def to_hash: -> {
27
+ group_id: String,
28
+ members: ::Array[VitableConnect::Groups::Members::SyncSubmitParams::Member],
29
+ request_options: VitableConnect::RequestOptions
30
+ }
31
+
32
+ type member =
33
+ {
34
+ address: VitableConnect::Groups::Members::SyncSubmitParams::Member::Address,
35
+ date_of_birth: Date,
36
+ first_name: String,
37
+ last_name: String,
38
+ phone: String,
39
+ plan_id: String,
40
+ reference_id: String,
41
+ email: String?
42
+ }
43
+
44
+ class Member < VitableConnect::Internal::Type::BaseModel
45
+ attr_accessor address: VitableConnect::Groups::Members::SyncSubmitParams::Member::Address
46
+
47
+ attr_accessor date_of_birth: Date
48
+
49
+ attr_accessor first_name: String
50
+
51
+ attr_accessor last_name: String
52
+
53
+ attr_accessor phone: String
54
+
55
+ attr_accessor plan_id: String
56
+
57
+ attr_accessor reference_id: String
58
+
59
+ attr_accessor email: String?
60
+
61
+ def initialize: (
62
+ address: VitableConnect::Groups::Members::SyncSubmitParams::Member::Address,
63
+ date_of_birth: Date,
64
+ first_name: String,
65
+ last_name: String,
66
+ phone: String,
67
+ plan_id: String,
68
+ reference_id: String,
69
+ ?email: String?
70
+ ) -> void
71
+
72
+ def to_hash: -> {
73
+ address: VitableConnect::Groups::Members::SyncSubmitParams::Member::Address,
74
+ date_of_birth: Date,
75
+ first_name: String,
76
+ last_name: String,
77
+ phone: String,
78
+ plan_id: String,
79
+ reference_id: String,
80
+ email: String?
81
+ }
82
+
83
+ type address =
84
+ {
85
+ :address_line_1 => String,
86
+ city: String,
87
+ state: String,
88
+ zipcode: String,
89
+ :address_line_2 => String?
90
+ }
91
+
92
+ class Address < VitableConnect::Internal::Type::BaseModel
93
+ attr_accessor address_line_1: String
94
+
95
+ attr_accessor city: String
96
+
97
+ attr_accessor state: String
98
+
99
+ attr_accessor zipcode: String
100
+
101
+ attr_accessor address_line_2: String?
102
+
103
+ def initialize: (
104
+ address_line_1: String,
105
+ city: String,
106
+ state: String,
107
+ zipcode: String,
108
+ ?address_line_2: String?
109
+ ) -> void
110
+
111
+ def to_hash: -> {
112
+ :address_line_1 => String,
113
+ city: String,
114
+ state: String,
115
+ zipcode: String,
116
+ :address_line_2 => String?
117
+ }
118
+ end
119
+ end
120
+ end
121
+ end
122
+ end
123
+ end
124
+ end