merge_ruby_client 0.0.5 → 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 (223) hide show
  1. checksums.yaml +4 -4
  2. data/lib/merge_ruby_client/accounting/audit_trail/client.rb +2 -4
  3. data/lib/merge_ruby_client/accounting/client.rb +7 -0
  4. data/lib/merge_ruby_client/accounting/link_token/client.rb +4 -8
  5. data/lib/merge_ruby_client/accounting/payments/client.rb +0 -4
  6. data/lib/merge_ruby_client/accounting/selective_sync/client.rb +218 -0
  7. data/lib/merge_ruby_client/accounting/types/account.rb +4 -4
  8. data/lib/merge_ruby_client/accounting/types/accounting_attachment.rb +4 -4
  9. data/lib/merge_ruby_client/accounting/types/accounting_period.rb +4 -4
  10. data/lib/merge_ruby_client/accounting/types/accounting_phone_number.rb +4 -4
  11. data/lib/merge_ruby_client/accounting/types/address.rb +4 -4
  12. data/lib/merge_ruby_client/accounting/types/audit_log_event.rb +0 -6
  13. data/lib/merge_ruby_client/accounting/types/balance_sheet.rb +4 -4
  14. data/lib/merge_ruby_client/accounting/types/cash_flow_statement.rb +4 -4
  15. data/lib/merge_ruby_client/accounting/types/company_info.rb +4 -4
  16. data/lib/merge_ruby_client/accounting/types/condition_schema.rb +136 -0
  17. data/lib/merge_ruby_client/accounting/types/condition_type_enum.rb +22 -0
  18. data/lib/merge_ruby_client/accounting/types/contact.rb +4 -4
  19. data/lib/merge_ruby_client/accounting/types/credit_note.rb +4 -4
  20. data/lib/merge_ruby_client/accounting/types/credit_note_line_item.rb +13 -5
  21. data/lib/merge_ruby_client/accounting/types/event_type_enum.rb +0 -6
  22. data/lib/merge_ruby_client/accounting/types/expense.rb +4 -4
  23. data/lib/merge_ruby_client/accounting/types/expense_line.rb +4 -4
  24. data/lib/merge_ruby_client/accounting/types/income_statement.rb +4 -4
  25. data/lib/merge_ruby_client/accounting/types/invoice.rb +4 -4
  26. data/lib/merge_ruby_client/accounting/types/invoice_line_item.rb +4 -4
  27. data/lib/merge_ruby_client/accounting/types/item.rb +4 -4
  28. data/lib/merge_ruby_client/accounting/types/journal_entry.rb +4 -4
  29. data/lib/merge_ruby_client/accounting/types/journal_line.rb +4 -4
  30. data/lib/merge_ruby_client/accounting/types/linked_account_condition.rb +104 -0
  31. data/lib/merge_ruby_client/accounting/types/linked_account_condition_request.rb +87 -0
  32. data/lib/merge_ruby_client/accounting/types/linked_account_selective_sync_configuration.rb +65 -0
  33. data/lib/merge_ruby_client/accounting/types/linked_account_selective_sync_configuration_request.rb +63 -0
  34. data/lib/merge_ruby_client/accounting/types/operator_schema.rb +68 -0
  35. data/lib/merge_ruby_client/accounting/types/paginated_condition_schema_list.rb +80 -0
  36. data/lib/merge_ruby_client/accounting/types/patched_payment_request.rb +1 -14
  37. data/lib/merge_ruby_client/accounting/types/payment.rb +5 -18
  38. data/lib/merge_ruby_client/accounting/types/payment_line_item.rb +4 -4
  39. data/lib/merge_ruby_client/accounting/types/payment_request.rb +1 -14
  40. data/lib/merge_ruby_client/accounting/types/purchase_order.rb +4 -4
  41. data/lib/merge_ruby_client/accounting/types/purchase_order_line_item.rb +4 -4
  42. data/lib/merge_ruby_client/accounting/types/remote_field_api.rb +2 -16
  43. data/lib/merge_ruby_client/accounting/types/report_item.rb +4 -4
  44. data/lib/merge_ruby_client/accounting/types/tax_rate.rb +10 -12
  45. data/lib/merge_ruby_client/accounting/types/tax_rate_company.rb +1 -2
  46. data/lib/merge_ruby_client/accounting/types/tracking_category.rb +4 -4
  47. data/lib/merge_ruby_client/accounting/types/transaction.rb +4 -4
  48. data/lib/merge_ruby_client/accounting/types/transaction_line_item.rb +6 -6
  49. data/lib/merge_ruby_client/accounting/types/vendor_credit.rb +4 -4
  50. data/lib/merge_ruby_client/accounting/types/vendor_credit_line.rb +4 -4
  51. data/lib/merge_ruby_client/ats/audit_trail/client.rb +2 -4
  52. data/lib/merge_ruby_client/ats/client.rb +7 -0
  53. data/lib/merge_ruby_client/ats/job_postings/client.rb +4 -16
  54. data/lib/merge_ruby_client/ats/link_token/client.rb +4 -8
  55. data/lib/merge_ruby_client/ats/selective_sync/client.rb +218 -0
  56. data/lib/merge_ruby_client/ats/types/activity.rb +4 -4
  57. data/lib/merge_ruby_client/ats/types/application.rb +4 -4
  58. data/lib/merge_ruby_client/ats/types/attachment.rb +4 -4
  59. data/lib/merge_ruby_client/ats/types/audit_log_event.rb +0 -6
  60. data/lib/merge_ruby_client/ats/types/candidate.rb +4 -4
  61. data/lib/merge_ruby_client/ats/types/condition_schema.rb +136 -0
  62. data/lib/merge_ruby_client/ats/types/condition_type_enum.rb +22 -0
  63. data/lib/merge_ruby_client/ats/types/department.rb +4 -4
  64. data/lib/merge_ruby_client/ats/types/eeoc.rb +4 -4
  65. data/lib/merge_ruby_client/ats/types/email_address.rb +4 -4
  66. data/lib/merge_ruby_client/ats/types/event_type_enum.rb +0 -6
  67. data/lib/merge_ruby_client/ats/types/job.rb +4 -4
  68. data/lib/merge_ruby_client/ats/types/job_interview_stage.rb +4 -4
  69. data/lib/merge_ruby_client/ats/types/job_posting.rb +4 -4
  70. data/lib/merge_ruby_client/ats/types/linked_account_condition.rb +104 -0
  71. data/lib/merge_ruby_client/ats/types/linked_account_condition_request.rb +87 -0
  72. data/lib/merge_ruby_client/ats/types/linked_account_selective_sync_configuration.rb +65 -0
  73. data/lib/merge_ruby_client/ats/types/linked_account_selective_sync_configuration_request.rb +63 -0
  74. data/lib/merge_ruby_client/ats/types/offer.rb +4 -4
  75. data/lib/merge_ruby_client/ats/types/office.rb +4 -4
  76. data/lib/merge_ruby_client/ats/types/operator_schema.rb +68 -0
  77. data/lib/merge_ruby_client/ats/types/paginated_condition_schema_list.rb +80 -0
  78. data/lib/merge_ruby_client/ats/types/phone_number.rb +4 -4
  79. data/lib/merge_ruby_client/ats/types/reject_reason.rb +4 -4
  80. data/lib/merge_ruby_client/ats/types/remote_field_api.rb +2 -16
  81. data/lib/merge_ruby_client/ats/types/remote_user.rb +4 -4
  82. data/lib/merge_ruby_client/ats/types/scheduled_interview.rb +4 -4
  83. data/lib/merge_ruby_client/ats/types/scorecard.rb +4 -4
  84. data/lib/merge_ruby_client/ats/types/screening_question.rb +4 -4
  85. data/lib/merge_ruby_client/ats/types/screening_question_option.rb +4 -4
  86. data/lib/merge_ruby_client/ats/types/tag.rb +4 -4
  87. data/lib/merge_ruby_client/ats/types/url.rb +4 -4
  88. data/lib/merge_ruby_client/crm/accounts/client.rb +0 -4
  89. data/lib/merge_ruby_client/crm/audit_trail/client.rb +2 -4
  90. data/lib/merge_ruby_client/crm/client.rb +7 -0
  91. data/lib/merge_ruby_client/crm/custom_objects/client.rb +2 -2
  92. data/lib/merge_ruby_client/crm/link_token/client.rb +4 -8
  93. data/lib/merge_ruby_client/crm/selective_sync/client.rb +218 -0
  94. data/lib/merge_ruby_client/crm/types/account.rb +4 -4
  95. data/lib/merge_ruby_client/crm/types/account_request.rb +1 -13
  96. data/lib/merge_ruby_client/crm/types/address.rb +4 -4
  97. data/lib/merge_ruby_client/crm/types/association.rb +6 -6
  98. data/lib/merge_ruby_client/crm/types/association_association_type.rb +0 -1
  99. data/lib/merge_ruby_client/crm/types/association_sub_type.rb +4 -4
  100. data/lib/merge_ruby_client/crm/types/association_type.rb +6 -8
  101. data/lib/merge_ruby_client/crm/types/audit_log_event.rb +0 -6
  102. data/lib/merge_ruby_client/crm/types/condition_schema.rb +136 -0
  103. data/lib/merge_ruby_client/crm/types/condition_type_enum.rb +22 -0
  104. data/lib/merge_ruby_client/crm/types/contact.rb +4 -4
  105. data/lib/merge_ruby_client/crm/types/custom_object.rb +8 -8
  106. data/lib/merge_ruby_client/crm/types/custom_object_class.rb +8 -10
  107. data/lib/merge_ruby_client/crm/types/email_address.rb +4 -4
  108. data/lib/merge_ruby_client/crm/types/engagement.rb +4 -4
  109. data/lib/merge_ruby_client/crm/types/engagement_type.rb +4 -4
  110. data/lib/merge_ruby_client/crm/types/event_type_enum.rb +0 -6
  111. data/lib/merge_ruby_client/crm/types/lead.rb +4 -4
  112. data/lib/merge_ruby_client/crm/types/linked_account_condition.rb +104 -0
  113. data/lib/merge_ruby_client/crm/types/linked_account_condition_request.rb +87 -0
  114. data/lib/merge_ruby_client/crm/types/linked_account_selective_sync_configuration.rb +65 -0
  115. data/lib/merge_ruby_client/crm/types/linked_account_selective_sync_configuration_request.rb +63 -0
  116. data/lib/merge_ruby_client/crm/types/note.rb +4 -4
  117. data/lib/merge_ruby_client/crm/types/operator_schema.rb +68 -0
  118. data/lib/merge_ruby_client/crm/types/opportunity.rb +4 -4
  119. data/lib/merge_ruby_client/crm/types/paginated_condition_schema_list.rb +80 -0
  120. data/lib/merge_ruby_client/crm/types/patched_account_request.rb +1 -13
  121. data/lib/merge_ruby_client/crm/types/phone_number.rb +4 -4
  122. data/lib/merge_ruby_client/crm/types/remote_field_api.rb +2 -16
  123. data/lib/merge_ruby_client/crm/types/remote_field_class_for_custom_object_class.rb +4 -4
  124. data/lib/merge_ruby_client/crm/types/stage.rb +4 -4
  125. data/lib/merge_ruby_client/crm/types/task.rb +4 -4
  126. data/lib/merge_ruby_client/crm/types/user.rb +4 -4
  127. data/lib/merge_ruby_client/filestorage/audit_trail/client.rb +2 -4
  128. data/lib/merge_ruby_client/filestorage/client.rb +7 -0
  129. data/lib/merge_ruby_client/filestorage/link_token/client.rb +4 -8
  130. data/lib/merge_ruby_client/filestorage/selective_sync/client.rb +218 -0
  131. data/lib/merge_ruby_client/filestorage/types/audit_log_event.rb +0 -6
  132. data/lib/merge_ruby_client/filestorage/types/condition_schema.rb +136 -0
  133. data/lib/merge_ruby_client/filestorage/types/condition_type_enum.rb +22 -0
  134. data/lib/merge_ruby_client/filestorage/types/drive.rb +4 -4
  135. data/lib/merge_ruby_client/filestorage/types/event_type_enum.rb +0 -6
  136. data/lib/merge_ruby_client/filestorage/types/file.rb +4 -4
  137. data/lib/merge_ruby_client/filestorage/types/folder.rb +4 -4
  138. data/lib/merge_ruby_client/filestorage/types/group.rb +4 -4
  139. data/lib/merge_ruby_client/filestorage/types/linked_account_condition.rb +104 -0
  140. data/lib/merge_ruby_client/filestorage/types/linked_account_condition_request.rb +87 -0
  141. data/lib/merge_ruby_client/filestorage/types/linked_account_selective_sync_configuration.rb +65 -0
  142. data/lib/merge_ruby_client/filestorage/types/linked_account_selective_sync_configuration_request.rb +63 -0
  143. data/lib/merge_ruby_client/filestorage/types/operator_schema.rb +68 -0
  144. data/lib/merge_ruby_client/filestorage/types/paginated_condition_schema_list.rb +80 -0
  145. data/lib/merge_ruby_client/filestorage/types/permission.rb +4 -4
  146. data/lib/merge_ruby_client/filestorage/types/remote_field_api.rb +2 -16
  147. data/lib/merge_ruby_client/filestorage/types/user.rb +4 -4
  148. data/lib/merge_ruby_client/hris/audit_trail/client.rb +2 -4
  149. data/lib/merge_ruby_client/hris/client.rb +7 -0
  150. data/lib/merge_ruby_client/hris/groups/client.rb +2 -10
  151. data/lib/merge_ruby_client/hris/link_token/client.rb +4 -8
  152. data/lib/merge_ruby_client/hris/selective_sync/client.rb +218 -0
  153. data/lib/merge_ruby_client/hris/types/audit_log_event.rb +0 -6
  154. data/lib/merge_ruby_client/hris/types/bank_info.rb +4 -4
  155. data/lib/merge_ruby_client/hris/types/benefit.rb +4 -4
  156. data/lib/merge_ruby_client/hris/types/company.rb +4 -4
  157. data/lib/merge_ruby_client/hris/types/condition_schema.rb +136 -0
  158. data/lib/merge_ruby_client/hris/types/condition_type_enum.rb +22 -0
  159. data/lib/merge_ruby_client/hris/types/deduction.rb +4 -4
  160. data/lib/merge_ruby_client/hris/types/dependent.rb +4 -4
  161. data/lib/merge_ruby_client/hris/types/earning.rb +4 -4
  162. data/lib/merge_ruby_client/hris/types/employee.rb +4 -4
  163. data/lib/merge_ruby_client/hris/types/employee_payroll_run.rb +4 -4
  164. data/lib/merge_ruby_client/hris/types/employer_benefit.rb +4 -4
  165. data/lib/merge_ruby_client/hris/types/employment.rb +4 -4
  166. data/lib/merge_ruby_client/hris/types/event_type_enum.rb +0 -6
  167. data/lib/merge_ruby_client/hris/types/group.rb +5 -19
  168. data/lib/merge_ruby_client/hris/types/linked_account_condition.rb +104 -0
  169. data/lib/merge_ruby_client/hris/types/linked_account_condition_request.rb +87 -0
  170. data/lib/merge_ruby_client/hris/types/linked_account_selective_sync_configuration.rb +65 -0
  171. data/lib/merge_ruby_client/hris/types/linked_account_selective_sync_configuration_request.rb +63 -0
  172. data/lib/merge_ruby_client/hris/types/location.rb +4 -4
  173. data/lib/merge_ruby_client/hris/types/operator_schema.rb +68 -0
  174. data/lib/merge_ruby_client/hris/types/paginated_condition_schema_list.rb +80 -0
  175. data/lib/merge_ruby_client/hris/types/pay_group.rb +4 -4
  176. data/lib/merge_ruby_client/hris/types/payroll_run.rb +4 -4
  177. data/lib/merge_ruby_client/hris/types/remote_field_api.rb +2 -16
  178. data/lib/merge_ruby_client/hris/types/tax.rb +4 -4
  179. data/lib/merge_ruby_client/hris/types/team.rb +4 -4
  180. data/lib/merge_ruby_client/hris/types/time_off.rb +4 -4
  181. data/lib/merge_ruby_client/hris/types/time_off_balance.rb +4 -4
  182. data/lib/merge_ruby_client/hris/types/timesheet_entry.rb +4 -4
  183. data/lib/merge_ruby_client/ticketing/audit_trail/client.rb +2 -4
  184. data/lib/merge_ruby_client/ticketing/client.rb +7 -0
  185. data/lib/merge_ruby_client/ticketing/contacts/client.rb +0 -127
  186. data/lib/merge_ruby_client/ticketing/link_token/client.rb +4 -8
  187. data/lib/merge_ruby_client/ticketing/selective_sync/client.rb +218 -0
  188. data/lib/merge_ruby_client/ticketing/types/account.rb +4 -4
  189. data/lib/merge_ruby_client/ticketing/types/attachment.rb +4 -4
  190. data/lib/merge_ruby_client/ticketing/types/audit_log_event.rb +0 -6
  191. data/lib/merge_ruby_client/ticketing/types/collection.rb +4 -4
  192. data/lib/merge_ruby_client/ticketing/types/comment.rb +4 -4
  193. data/lib/merge_ruby_client/ticketing/types/condition_schema.rb +136 -0
  194. data/lib/merge_ruby_client/ticketing/types/condition_type_enum.rb +22 -0
  195. data/lib/merge_ruby_client/ticketing/types/contact.rb +4 -4
  196. data/lib/merge_ruby_client/ticketing/types/event_type_enum.rb +0 -6
  197. data/lib/merge_ruby_client/ticketing/types/linked_account_condition.rb +104 -0
  198. data/lib/merge_ruby_client/ticketing/types/linked_account_condition_request.rb +87 -0
  199. data/lib/merge_ruby_client/ticketing/types/linked_account_selective_sync_configuration.rb +65 -0
  200. data/lib/merge_ruby_client/ticketing/types/linked_account_selective_sync_configuration_request.rb +63 -0
  201. data/lib/merge_ruby_client/ticketing/types/operator_schema.rb +68 -0
  202. data/lib/merge_ruby_client/ticketing/types/paginated_condition_schema_list.rb +80 -0
  203. data/lib/merge_ruby_client/ticketing/types/project.rb +4 -4
  204. data/lib/merge_ruby_client/ticketing/types/remote_field_api.rb +2 -16
  205. data/lib/merge_ruby_client/ticketing/types/role.rb +4 -4
  206. data/lib/merge_ruby_client/ticketing/types/tag.rb +4 -4
  207. data/lib/merge_ruby_client/ticketing/types/team.rb +4 -4
  208. data/lib/merge_ruby_client/ticketing/types/ticket.rb +4 -4
  209. data/lib/merge_ruby_client/ticketing/types/user.rb +4 -4
  210. data/lib/merge_ruby_client.rb +7 -7
  211. data/lib/requests.rb +2 -12
  212. data/lib/types_export.rb +153 -115
  213. metadata +56 -12
  214. data/lib/merge_ruby_client/accounting/types/payment_type_enum.rb +0 -12
  215. data/lib/merge_ruby_client/accounting/types/remote_field_api_coverage.rb +0 -54
  216. data/lib/merge_ruby_client/ats/types/remote_field_api_coverage.rb +0 -54
  217. data/lib/merge_ruby_client/crm/types/remote_field_api_coverage.rb +0 -54
  218. data/lib/merge_ruby_client/filestorage/types/remote_field_api_coverage.rb +0 -54
  219. data/lib/merge_ruby_client/hris/types/remote_field_api_coverage.rb +0 -54
  220. data/lib/merge_ruby_client/ticketing/types/contact_request.rb +0 -125
  221. data/lib/merge_ruby_client/ticketing/types/contact_request_account.rb +0 -56
  222. data/lib/merge_ruby_client/ticketing/types/remote_field_api_coverage.rb +0 -54
  223. data/lib/merge_ruby_client/ticketing/types/ticketing_contact_response.rb +0 -101
@@ -26,9 +26,6 @@ module Merge
26
26
  # @param include_deleted_data [Boolean] Whether to include data that was marked as deleted by third party webhooks.
27
27
  # @param include_remote_data [Boolean] Whether to include the original data Merge fetched from the third-party to
28
28
  # produce these models.
29
- # @param is_commonly_used_as_team [String] If provided, specifies whether to return only Group objects which refer to a
30
- # team in the third party platform. Note that this is an opinionated view based on
31
- # how a team may be represented in the third party platform.
32
29
  # @param modified_after [DateTime] If provided, only objects synced by Merge after this date time will be returned.
33
30
  # @param modified_before [DateTime] If provided, only objects synced by Merge before this date time will be
34
31
  # returned.
@@ -52,7 +49,7 @@ module Merge
52
49
  # )
53
50
  # api.hris.list
54
51
  def list(created_after: nil, created_before: nil, cursor: nil, include_deleted_data: nil,
55
- include_remote_data: nil, is_commonly_used_as_team: nil, modified_after: nil, modified_before: nil, names: nil, page_size: nil, remote_fields: nil, remote_id: nil, show_enum_origins: nil, types: nil, request_options: nil)
52
+ include_remote_data: nil, modified_after: nil, modified_before: nil, names: nil, page_size: nil, remote_fields: nil, remote_id: nil, show_enum_origins: nil, types: nil, request_options: nil)
56
53
  response = @request_client.conn.get do |req|
57
54
  req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
58
55
  req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
@@ -65,7 +62,6 @@ module Merge
65
62
  "cursor": cursor,
66
63
  "include_deleted_data": include_deleted_data,
67
64
  "include_remote_data": include_remote_data,
68
- "is_commonly_used_as_team": is_commonly_used_as_team,
69
65
  "modified_after": modified_after,
70
66
  "modified_before": modified_before,
71
67
  "names": names,
@@ -134,9 +130,6 @@ module Merge
134
130
  # @param include_deleted_data [Boolean] Whether to include data that was marked as deleted by third party webhooks.
135
131
  # @param include_remote_data [Boolean] Whether to include the original data Merge fetched from the third-party to
136
132
  # produce these models.
137
- # @param is_commonly_used_as_team [String] If provided, specifies whether to return only Group objects which refer to a
138
- # team in the third party platform. Note that this is an opinionated view based on
139
- # how a team may be represented in the third party platform.
140
133
  # @param modified_after [DateTime] If provided, only objects synced by Merge after this date time will be returned.
141
134
  # @param modified_before [DateTime] If provided, only objects synced by Merge before this date time will be
142
135
  # returned.
@@ -160,7 +153,7 @@ module Merge
160
153
  # )
161
154
  # api.hris.list
162
155
  def list(created_after: nil, created_before: nil, cursor: nil, include_deleted_data: nil,
163
- include_remote_data: nil, is_commonly_used_as_team: nil, modified_after: nil, modified_before: nil, names: nil, page_size: nil, remote_fields: nil, remote_id: nil, show_enum_origins: nil, types: nil, request_options: nil)
156
+ include_remote_data: nil, modified_after: nil, modified_before: nil, names: nil, page_size: nil, remote_fields: nil, remote_id: nil, show_enum_origins: nil, types: nil, request_options: nil)
164
157
  Async do
165
158
  response = @request_client.conn.get do |req|
166
159
  req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
@@ -174,7 +167,6 @@ module Merge
174
167
  "cursor": cursor,
175
168
  "include_deleted_data": include_deleted_data,
176
169
  "include_remote_data": include_remote_data,
177
- "is_commonly_used_as_team": is_commonly_used_as_team,
178
170
  "modified_after": modified_after,
179
171
  "modified_before": modified_before,
180
172
  "names": names,
@@ -46,7 +46,6 @@ module Merge
46
46
  # apply to the account that is going to be linked. Any model or field not
47
47
  # specified in link token payload will default to existing settings.
48
48
  # @param language [String] The language code for the language to localize Merge Link to.
49
- # @param integration_specific_config [Hash{String => Object}] A JSON object containing integration-specific configuration options.
50
49
  # @param request_options [Merge::RequestOptions]
51
50
  # @return [Merge::Hris::LinkToken]
52
51
  # @example
@@ -62,7 +61,7 @@ module Merge
62
61
  # categories: [HRIS]
63
62
  # )
64
63
  def create(end_user_email_address:, end_user_organization_name:, end_user_origin_id:, categories:,
65
- integration: nil, link_expiry_mins: nil, should_create_magic_link_url: nil, common_models: nil, category_common_model_scopes: nil, language: nil, integration_specific_config: nil, request_options: nil)
64
+ integration: nil, link_expiry_mins: nil, should_create_magic_link_url: nil, common_models: nil, category_common_model_scopes: nil, language: nil, request_options: nil)
66
65
  response = @request_client.conn.post do |req|
67
66
  req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
68
67
  req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
@@ -79,8 +78,7 @@ module Merge
79
78
  should_create_magic_link_url: should_create_magic_link_url,
80
79
  common_models: common_models,
81
80
  category_common_model_scopes: category_common_model_scopes,
82
- language: language,
83
- integration_specific_config: integration_specific_config
81
+ language: language
84
82
  }.compact
85
83
  req.url "#{@request_client.get_url(request_options: request_options)}/hris/v1/link-token"
86
84
  end
@@ -126,7 +124,6 @@ module Merge
126
124
  # apply to the account that is going to be linked. Any model or field not
127
125
  # specified in link token payload will default to existing settings.
128
126
  # @param language [String] The language code for the language to localize Merge Link to.
129
- # @param integration_specific_config [Hash{String => Object}] A JSON object containing integration-specific configuration options.
130
127
  # @param request_options [Merge::RequestOptions]
131
128
  # @return [Merge::Hris::LinkToken]
132
129
  # @example
@@ -142,7 +139,7 @@ module Merge
142
139
  # categories: [HRIS]
143
140
  # )
144
141
  def create(end_user_email_address:, end_user_organization_name:, end_user_origin_id:, categories:,
145
- integration: nil, link_expiry_mins: nil, should_create_magic_link_url: nil, common_models: nil, category_common_model_scopes: nil, language: nil, integration_specific_config: nil, request_options: nil)
142
+ integration: nil, link_expiry_mins: nil, should_create_magic_link_url: nil, common_models: nil, category_common_model_scopes: nil, language: nil, request_options: nil)
146
143
  Async do
147
144
  response = @request_client.conn.post do |req|
148
145
  req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
@@ -160,8 +157,7 @@ module Merge
160
157
  should_create_magic_link_url: should_create_magic_link_url,
161
158
  common_models: common_models,
162
159
  category_common_model_scopes: category_common_model_scopes,
163
- language: language,
164
- integration_specific_config: integration_specific_config
160
+ language: language
165
161
  }.compact
166
162
  req.url "#{@request_client.get_url(request_options: request_options)}/hris/v1/link-token"
167
163
  end
@@ -0,0 +1,218 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../../../requests"
4
+ require_relative "../types/linked_account_selective_sync_configuration"
5
+ require "json"
6
+ require_relative "../types/linked_account_selective_sync_configuration_request"
7
+ require_relative "../types/paginated_condition_schema_list"
8
+ require "async"
9
+
10
+ module Merge
11
+ module Hris
12
+ class SelectiveSyncClient
13
+ # @return [Merge::RequestClient]
14
+ attr_reader :request_client
15
+
16
+ # @param request_client [Merge::RequestClient]
17
+ # @return [Merge::Hris::SelectiveSyncClient]
18
+ def initialize(request_client:)
19
+ @request_client = request_client
20
+ end
21
+
22
+ # Get a linked account's selective syncs.
23
+ #
24
+ # @param request_options [Merge::RequestOptions]
25
+ # @return [Array<Merge::Hris::LinkedAccountSelectiveSyncConfiguration>]
26
+ # @example
27
+ # api = Merge::Client.new(
28
+ # environment: Environment::PRODUCTION,
29
+ # base_url: "https://api.example.com",
30
+ # api_key: "YOUR_AUTH_TOKEN"
31
+ # )
32
+ # api.hris.configurations_list
33
+ def configurations_list(request_options: nil)
34
+ response = @request_client.conn.get do |req|
35
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
36
+ req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
37
+ req.headers["X-Account-Token"] = request_options.account_token unless request_options&.account_token.nil?
38
+ req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
39
+ req.url "#{@request_client.get_url(request_options: request_options)}/hris/v1/selective-sync/configurations"
40
+ end
41
+ parsed_json = JSON.parse(response.body)
42
+ parsed_json&.map do |v|
43
+ v = v.to_json
44
+ Merge::Hris::LinkedAccountSelectiveSyncConfiguration.from_json(json_object: v)
45
+ end
46
+ end
47
+
48
+ # Replace a linked account's selective syncs.
49
+ #
50
+ # @param sync_configurations [Array<Hash>] The selective syncs associated with a linked account.Request of type Array<Merge::Hris::LinkedAccountSelectiveSyncConfigurationRequest>, as a Hash
51
+ # * :linked_account_conditions (Array<Merge::Hris::LinkedAccountConditionRequest>)
52
+ # @param request_options [Merge::RequestOptions]
53
+ # @return [Array<Merge::Hris::LinkedAccountSelectiveSyncConfiguration>]
54
+ # @example
55
+ # api = Merge::Client.new(
56
+ # environment: Environment::PRODUCTION,
57
+ # base_url: "https://api.example.com",
58
+ # api_key: "YOUR_AUTH_TOKEN"
59
+ # )
60
+ # api.hris.configurations_update(sync_configurations: [{ linked_account_conditions: }])
61
+ def configurations_update(sync_configurations:, request_options: nil)
62
+ response = @request_client.conn.put do |req|
63
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
64
+ req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
65
+ req.headers["X-Account-Token"] = request_options.account_token unless request_options&.account_token.nil?
66
+ req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
67
+ req.body = {
68
+ **(request_options&.additional_body_parameters || {}),
69
+ sync_configurations: sync_configurations
70
+ }.compact
71
+ req.url "#{@request_client.get_url(request_options: request_options)}/hris/v1/selective-sync/configurations"
72
+ end
73
+ parsed_json = JSON.parse(response.body)
74
+ parsed_json&.map do |v|
75
+ v = v.to_json
76
+ Merge::Hris::LinkedAccountSelectiveSyncConfiguration.from_json(json_object: v)
77
+ end
78
+ end
79
+
80
+ # Get metadata for the conditions available to a linked account.
81
+ #
82
+ # @param common_model [String]
83
+ # @param cursor [String] The pagination cursor value.
84
+ # @param page_size [Integer] Number of results to return per page.
85
+ # @param request_options [Merge::RequestOptions]
86
+ # @return [Merge::Hris::PaginatedConditionSchemaList]
87
+ # @example
88
+ # api = Merge::Client.new(
89
+ # environment: Environment::PRODUCTION,
90
+ # base_url: "https://api.example.com",
91
+ # api_key: "YOUR_AUTH_TOKEN"
92
+ # )
93
+ # api.hris.meta_list
94
+ def meta_list(common_model: nil, cursor: nil, page_size: nil, request_options: nil)
95
+ response = @request_client.conn.get do |req|
96
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
97
+ req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
98
+ req.headers["X-Account-Token"] = request_options.account_token unless request_options&.account_token.nil?
99
+ req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
100
+ req.params = {
101
+ **(request_options&.additional_query_parameters || {}),
102
+ "common_model": common_model,
103
+ "cursor": cursor,
104
+ "page_size": page_size
105
+ }.compact
106
+ req.url "#{@request_client.get_url(request_options: request_options)}/hris/v1/selective-sync/meta"
107
+ end
108
+ Merge::Hris::PaginatedConditionSchemaList.from_json(json_object: response.body)
109
+ end
110
+ end
111
+
112
+ class AsyncSelectiveSyncClient
113
+ # @return [Merge::AsyncRequestClient]
114
+ attr_reader :request_client
115
+
116
+ # @param request_client [Merge::AsyncRequestClient]
117
+ # @return [Merge::Hris::AsyncSelectiveSyncClient]
118
+ def initialize(request_client:)
119
+ @request_client = request_client
120
+ end
121
+
122
+ # Get a linked account's selective syncs.
123
+ #
124
+ # @param request_options [Merge::RequestOptions]
125
+ # @return [Array<Merge::Hris::LinkedAccountSelectiveSyncConfiguration>]
126
+ # @example
127
+ # api = Merge::Client.new(
128
+ # environment: Environment::PRODUCTION,
129
+ # base_url: "https://api.example.com",
130
+ # api_key: "YOUR_AUTH_TOKEN"
131
+ # )
132
+ # api.hris.configurations_list
133
+ def configurations_list(request_options: nil)
134
+ Async do
135
+ response = @request_client.conn.get do |req|
136
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
137
+ req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
138
+ req.headers["X-Account-Token"] = request_options.account_token unless request_options&.account_token.nil?
139
+ req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
140
+ req.url "#{@request_client.get_url(request_options: request_options)}/hris/v1/selective-sync/configurations"
141
+ end
142
+ parsed_json = JSON.parse(response.body)
143
+ parsed_json&.map do |v|
144
+ v = v.to_json
145
+ Merge::Hris::LinkedAccountSelectiveSyncConfiguration.from_json(json_object: v)
146
+ end
147
+ end
148
+ end
149
+
150
+ # Replace a linked account's selective syncs.
151
+ #
152
+ # @param sync_configurations [Array<Hash>] The selective syncs associated with a linked account.Request of type Array<Merge::Hris::LinkedAccountSelectiveSyncConfigurationRequest>, as a Hash
153
+ # * :linked_account_conditions (Array<Merge::Hris::LinkedAccountConditionRequest>)
154
+ # @param request_options [Merge::RequestOptions]
155
+ # @return [Array<Merge::Hris::LinkedAccountSelectiveSyncConfiguration>]
156
+ # @example
157
+ # api = Merge::Client.new(
158
+ # environment: Environment::PRODUCTION,
159
+ # base_url: "https://api.example.com",
160
+ # api_key: "YOUR_AUTH_TOKEN"
161
+ # )
162
+ # api.hris.configurations_update(sync_configurations: [{ linked_account_conditions: }])
163
+ def configurations_update(sync_configurations:, request_options: nil)
164
+ Async do
165
+ response = @request_client.conn.put do |req|
166
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
167
+ req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
168
+ req.headers["X-Account-Token"] = request_options.account_token unless request_options&.account_token.nil?
169
+ req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
170
+ req.body = {
171
+ **(request_options&.additional_body_parameters || {}),
172
+ sync_configurations: sync_configurations
173
+ }.compact
174
+ req.url "#{@request_client.get_url(request_options: request_options)}/hris/v1/selective-sync/configurations"
175
+ end
176
+ parsed_json = JSON.parse(response.body)
177
+ parsed_json&.map do |v|
178
+ v = v.to_json
179
+ Merge::Hris::LinkedAccountSelectiveSyncConfiguration.from_json(json_object: v)
180
+ end
181
+ end
182
+ end
183
+
184
+ # Get metadata for the conditions available to a linked account.
185
+ #
186
+ # @param common_model [String]
187
+ # @param cursor [String] The pagination cursor value.
188
+ # @param page_size [Integer] Number of results to return per page.
189
+ # @param request_options [Merge::RequestOptions]
190
+ # @return [Merge::Hris::PaginatedConditionSchemaList]
191
+ # @example
192
+ # api = Merge::Client.new(
193
+ # environment: Environment::PRODUCTION,
194
+ # base_url: "https://api.example.com",
195
+ # api_key: "YOUR_AUTH_TOKEN"
196
+ # )
197
+ # api.hris.meta_list
198
+ def meta_list(common_model: nil, cursor: nil, page_size: nil, request_options: nil)
199
+ Async do
200
+ response = @request_client.conn.get do |req|
201
+ req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
202
+ req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
203
+ req.headers["X-Account-Token"] = request_options.account_token unless request_options&.account_token.nil?
204
+ req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact
205
+ req.params = {
206
+ **(request_options&.additional_query_parameters || {}),
207
+ "common_model": common_model,
208
+ "cursor": cursor,
209
+ "page_size": page_size
210
+ }.compact
211
+ req.url "#{@request_client.get_url(request_options: request_options)}/hris/v1/selective-sync/meta"
212
+ end
213
+ Merge::Hris::PaginatedConditionSchemaList.from_json(json_object: response.body)
214
+ end
215
+ end
216
+ end
217
+ end
218
+ end
@@ -68,9 +68,6 @@ module Merge
68
68
  # - `FORCED_LINKED_ACCOUNT_RESYNC` - FORCED_LINKED_ACCOUNT_RESYNC
69
69
  # - `MUTED_ISSUE` - MUTED_ISSUE
70
70
  # - `GENERATED_MAGIC_LINK` - GENERATED_MAGIC_LINK
71
- # - `ENABLED_MERGE_WEBHOOK` - ENABLED_MERGE_WEBHOOK
72
- # - `DISABLED_MERGE_WEBHOOK` - DISABLED_MERGE_WEBHOOK
73
- # - `MERGE_WEBHOOK_TARGET_CHANGED` - MERGE_WEBHOOK_TARGET_CHANGED
74
71
  attr_reader :event_type
75
72
  # @return [String]
76
73
  attr_reader :event_description
@@ -138,9 +135,6 @@ module Merge
138
135
  # - `FORCED_LINKED_ACCOUNT_RESYNC` - FORCED_LINKED_ACCOUNT_RESYNC
139
136
  # - `MUTED_ISSUE` - MUTED_ISSUE
140
137
  # - `GENERATED_MAGIC_LINK` - GENERATED_MAGIC_LINK
141
- # - `ENABLED_MERGE_WEBHOOK` - ENABLED_MERGE_WEBHOOK
142
- # - `DISABLED_MERGE_WEBHOOK` - DISABLED_MERGE_WEBHOOK
143
- # - `MERGE_WEBHOOK_TARGET_CHANGED` - MERGE_WEBHOOK_TARGET_CHANGED
144
138
  # @param event_description [String]
145
139
  # @param created_at [DateTime]
146
140
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
@@ -21,9 +21,9 @@ module Merge
21
21
  attr_reader :id
22
22
  # @return [String] The third-party API ID of the matching object.
23
23
  attr_reader :remote_id
24
- # @return [DateTime] The datetime that this object was created by Merge.
24
+ # @return [DateTime]
25
25
  attr_reader :created_at
26
- # @return [DateTime] The datetime that this object was modified by Merge.
26
+ # @return [DateTime] This is the datetime that this object was last updated by Merge
27
27
  attr_reader :modified_at
28
28
  # @return [Merge::Hris::BankInfoEmployee] The employee with this bank account.
29
29
  attr_reader :employee
@@ -56,8 +56,8 @@ module Merge
56
56
 
57
57
  # @param id [String]
58
58
  # @param remote_id [String] The third-party API ID of the matching object.
59
- # @param created_at [DateTime] The datetime that this object was created by Merge.
60
- # @param modified_at [DateTime] The datetime that this object was modified by Merge.
59
+ # @param created_at [DateTime]
60
+ # @param modified_at [DateTime] This is the datetime that this object was last updated by Merge
61
61
  # @param employee [Merge::Hris::BankInfoEmployee] The employee with this bank account.
62
62
  # @param account_number [String] The account number.
63
63
  # @param routing_number [String] The routing number.
@@ -19,9 +19,9 @@ module Merge
19
19
  attr_reader :id
20
20
  # @return [String] The third-party API ID of the matching object.
21
21
  attr_reader :remote_id
22
- # @return [DateTime] The datetime that this object was created by Merge.
22
+ # @return [DateTime]
23
23
  attr_reader :created_at
24
- # @return [DateTime] The datetime that this object was modified by Merge.
24
+ # @return [DateTime] This is the datetime that this object was last updated by Merge
25
25
  attr_reader :modified_at
26
26
  # @return [Merge::Hris::BenefitEmployee] The employee on the plan.
27
27
  attr_reader :employee
@@ -56,8 +56,8 @@ module Merge
56
56
 
57
57
  # @param id [String]
58
58
  # @param remote_id [String] The third-party API ID of the matching object.
59
- # @param created_at [DateTime] The datetime that this object was created by Merge.
60
- # @param modified_at [DateTime] The datetime that this object was modified by Merge.
59
+ # @param created_at [DateTime]
60
+ # @param modified_at [DateTime] This is the datetime that this object was last updated by Merge
61
61
  # @param employee [Merge::Hris::BenefitEmployee] The employee on the plan.
62
62
  # @param provider_name [String] The name of the benefit provider.
63
63
  # @param benefit_plan_type [String] The type of benefit plan
@@ -19,9 +19,9 @@ module Merge
19
19
  attr_reader :id
20
20
  # @return [String] The third-party API ID of the matching object.
21
21
  attr_reader :remote_id
22
- # @return [DateTime] The datetime that this object was created by Merge.
22
+ # @return [DateTime]
23
23
  attr_reader :created_at
24
- # @return [DateTime] The datetime that this object was modified by Merge.
24
+ # @return [DateTime] This is the datetime that this object was last updated by Merge
25
25
  attr_reader :modified_at
26
26
  # @return [String] The company's legal name.
27
27
  attr_reader :legal_name
@@ -46,8 +46,8 @@ module Merge
46
46
 
47
47
  # @param id [String]
48
48
  # @param remote_id [String] The third-party API ID of the matching object.
49
- # @param created_at [DateTime] The datetime that this object was created by Merge.
50
- # @param modified_at [DateTime] The datetime that this object was modified by Merge.
49
+ # @param created_at [DateTime]
50
+ # @param modified_at [DateTime] This is the datetime that this object was last updated by Merge
51
51
  # @param legal_name [String] The company's legal name.
52
52
  # @param display_name [String] The company's display name.
53
53
  # @param eins [Array<String>] The company's Employer Identification Numbers.
@@ -0,0 +1,136 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "condition_type_enum"
4
+ require_relative "operator_schema"
5
+ require "ostruct"
6
+ require "json"
7
+
8
+ module Merge
9
+ module Hris
10
+ class ConditionSchema
11
+ # @return [String] The ID of the condition schema. This ID is used when updating selective syncs
12
+ # for a linked account.
13
+ attr_reader :id
14
+ # @return [String] The common model for which a condition schema is defined.
15
+ attr_reader :common_model
16
+ # @return [String]
17
+ attr_reader :native_name
18
+ # @return [String]
19
+ attr_reader :field_name
20
+ # @return [Boolean] Whether this condition can only be applied once. If false, the condition can be
21
+ # AND'd together multiple times.
22
+ attr_reader :is_unique
23
+ # @return [Merge::Hris::ConditionTypeEnum] The type of value(s) that can be set for this condition.
24
+ # - `BOOLEAN` - BOOLEAN
25
+ # - `DATE` - DATE
26
+ # - `DATE_TIME` - DATE_TIME
27
+ # - `INTEGER` - INTEGER
28
+ # - `FLOAT` - FLOAT
29
+ # - `STRING` - STRING
30
+ # - `LIST_OF_STRINGS` - LIST_OF_STRINGS
31
+ attr_reader :condition_type
32
+ # @return [Array<Merge::Hris::OperatorSchema>] The schemas for the operators that can be used on a condition.
33
+ attr_reader :operators
34
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
35
+ attr_reader :additional_properties
36
+ # @return [Object]
37
+ attr_reader :_field_set
38
+ protected :_field_set
39
+
40
+ OMIT = Object.new
41
+
42
+ # @param id [String] The ID of the condition schema. This ID is used when updating selective syncs
43
+ # for a linked account.
44
+ # @param common_model [String] The common model for which a condition schema is defined.
45
+ # @param native_name [String]
46
+ # @param field_name [String]
47
+ # @param is_unique [Boolean] Whether this condition can only be applied once. If false, the condition can be
48
+ # AND'd together multiple times.
49
+ # @param condition_type [Merge::Hris::ConditionTypeEnum] The type of value(s) that can be set for this condition.
50
+ # - `BOOLEAN` - BOOLEAN
51
+ # - `DATE` - DATE
52
+ # - `DATE_TIME` - DATE_TIME
53
+ # - `INTEGER` - INTEGER
54
+ # - `FLOAT` - FLOAT
55
+ # - `STRING` - STRING
56
+ # - `LIST_OF_STRINGS` - LIST_OF_STRINGS
57
+ # @param operators [Array<Merge::Hris::OperatorSchema>] The schemas for the operators that can be used on a condition.
58
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
59
+ # @return [Merge::Hris::ConditionSchema]
60
+ def initialize(id:, condition_type:, operators:, common_model: OMIT, native_name: OMIT, field_name: OMIT,
61
+ is_unique: OMIT, additional_properties: nil)
62
+ @id = id
63
+ @common_model = common_model if common_model != OMIT
64
+ @native_name = native_name if native_name != OMIT
65
+ @field_name = field_name if field_name != OMIT
66
+ @is_unique = is_unique if is_unique != OMIT
67
+ @condition_type = condition_type
68
+ @operators = operators
69
+ @additional_properties = additional_properties
70
+ @_field_set = {
71
+ "id": id,
72
+ "common_model": common_model,
73
+ "native_name": native_name,
74
+ "field_name": field_name,
75
+ "is_unique": is_unique,
76
+ "condition_type": condition_type,
77
+ "operators": operators
78
+ }.reject do |_k, v|
79
+ v == OMIT
80
+ end
81
+ end
82
+
83
+ # Deserialize a JSON object to an instance of ConditionSchema
84
+ #
85
+ # @param json_object [String]
86
+ # @return [Merge::Hris::ConditionSchema]
87
+ def self.from_json(json_object:)
88
+ struct = JSON.parse(json_object, object_class: OpenStruct)
89
+ parsed_json = JSON.parse(json_object)
90
+ id = struct["id"]
91
+ common_model = struct["common_model"]
92
+ native_name = struct["native_name"]
93
+ field_name = struct["field_name"]
94
+ is_unique = struct["is_unique"]
95
+ condition_type = struct["condition_type"]
96
+ operators = parsed_json["operators"]&.map do |v|
97
+ v = v.to_json
98
+ Merge::Hris::OperatorSchema.from_json(json_object: v)
99
+ end
100
+ new(
101
+ id: id,
102
+ common_model: common_model,
103
+ native_name: native_name,
104
+ field_name: field_name,
105
+ is_unique: is_unique,
106
+ condition_type: condition_type,
107
+ operators: operators,
108
+ additional_properties: struct
109
+ )
110
+ end
111
+
112
+ # Serialize an instance of ConditionSchema to a JSON object
113
+ #
114
+ # @return [String]
115
+ def to_json(*_args)
116
+ @_field_set&.to_json
117
+ end
118
+
119
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
120
+ # hash and check each fields type against the current object's property
121
+ # definitions.
122
+ #
123
+ # @param obj [Object]
124
+ # @return [Void]
125
+ def self.validate_raw(obj:)
126
+ obj.id.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
127
+ obj.common_model&.is_a?(String) != false || raise("Passed value for field obj.common_model is not the expected type, validation failed.")
128
+ obj.native_name&.is_a?(String) != false || raise("Passed value for field obj.native_name is not the expected type, validation failed.")
129
+ obj.field_name&.is_a?(String) != false || raise("Passed value for field obj.field_name is not the expected type, validation failed.")
130
+ obj.is_unique&.is_a?(Boolean) != false || raise("Passed value for field obj.is_unique is not the expected type, validation failed.")
131
+ obj.condition_type.is_a?(Merge::Hris::ConditionTypeEnum) != false || raise("Passed value for field obj.condition_type is not the expected type, validation failed.")
132
+ obj.operators.is_a?(Array) != false || raise("Passed value for field obj.operators is not the expected type, validation failed.")
133
+ end
134
+ end
135
+ end
136
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Merge
4
+ module Hris
5
+ # - `BOOLEAN` - BOOLEAN
6
+ # - `DATE` - DATE
7
+ # - `DATE_TIME` - DATE_TIME
8
+ # - `INTEGER` - INTEGER
9
+ # - `FLOAT` - FLOAT
10
+ # - `STRING` - STRING
11
+ # - `LIST_OF_STRINGS` - LIST_OF_STRINGS
12
+ class ConditionTypeEnum
13
+ BOOLEAN = "BOOLEAN"
14
+ DATE = "DATE"
15
+ DATE_TIME = "DATE_TIME"
16
+ INTEGER = "INTEGER"
17
+ FLOAT = "FLOAT"
18
+ STRING = "STRING"
19
+ LIST_OF_STRINGS = "LIST_OF_STRINGS"
20
+ end
21
+ end
22
+ end
@@ -19,9 +19,9 @@ module Merge
19
19
  attr_reader :id
20
20
  # @return [String] The third-party API ID of the matching object.
21
21
  attr_reader :remote_id
22
- # @return [DateTime] The datetime that this object was created by Merge.
22
+ # @return [DateTime]
23
23
  attr_reader :created_at
24
- # @return [DateTime] The datetime that this object was modified by Merge.
24
+ # @return [DateTime] This is the datetime that this object was last updated by Merge
25
25
  attr_reader :modified_at
26
26
  # @return [String]
27
27
  attr_reader :employee_payroll_run
@@ -49,8 +49,8 @@ module Merge
49
49
 
50
50
  # @param id [String]
51
51
  # @param remote_id [String] The third-party API ID of the matching object.
52
- # @param created_at [DateTime] The datetime that this object was created by Merge.
53
- # @param modified_at [DateTime] The datetime that this object was modified by Merge.
52
+ # @param created_at [DateTime]
53
+ # @param modified_at [DateTime] This is the datetime that this object was last updated by Merge
54
54
  # @param employee_payroll_run [String]
55
55
  # @param name [String] The deduction's name.
56
56
  # @param employee_deduction [Float] The amount of money that is withheld from an employee's gross pay by the
@@ -21,9 +21,9 @@ module Merge
21
21
  attr_reader :id
22
22
  # @return [String] The third-party API ID of the matching object.
23
23
  attr_reader :remote_id
24
- # @return [DateTime] The datetime that this object was created by Merge.
24
+ # @return [DateTime]
25
25
  attr_reader :created_at
26
- # @return [DateTime] The datetime that this object was modified by Merge.
26
+ # @return [DateTime] This is the datetime that this object was last updated by Merge
27
27
  attr_reader :modified_at
28
28
  # @return [String] The dependents's first name.
29
29
  attr_reader :first_name
@@ -72,8 +72,8 @@ module Merge
72
72
 
73
73
  # @param id [String]
74
74
  # @param remote_id [String] The third-party API ID of the matching object.
75
- # @param created_at [DateTime] The datetime that this object was created by Merge.
76
- # @param modified_at [DateTime] The datetime that this object was modified by Merge.
75
+ # @param created_at [DateTime]
76
+ # @param modified_at [DateTime] This is the datetime that this object was last updated by Merge
77
77
  # @param first_name [String] The dependents's first name.
78
78
  # @param middle_name [String] The dependents's middle name.
79
79
  # @param last_name [String] The dependents's last name.
@@ -19,9 +19,9 @@ module Merge
19
19
  attr_reader :id
20
20
  # @return [String] The third-party API ID of the matching object.
21
21
  attr_reader :remote_id
22
- # @return [DateTime] The datetime that this object was created by Merge.
22
+ # @return [DateTime]
23
23
  attr_reader :created_at
24
- # @return [DateTime] The datetime that this object was modified by Merge.
24
+ # @return [DateTime] This is the datetime that this object was last updated by Merge
25
25
  attr_reader :modified_at
26
26
  # @return [String]
27
27
  attr_reader :employee_payroll_run
@@ -50,8 +50,8 @@ module Merge
50
50
 
51
51
  # @param id [String]
52
52
  # @param remote_id [String] The third-party API ID of the matching object.
53
- # @param created_at [DateTime] The datetime that this object was created by Merge.
54
- # @param modified_at [DateTime] The datetime that this object was modified by Merge.
53
+ # @param created_at [DateTime]
54
+ # @param modified_at [DateTime] This is the datetime that this object was last updated by Merge
55
55
  # @param employee_payroll_run [String]
56
56
  # @param amount [Float] The amount earned.
57
57
  # @param type [Merge::Hris::EarningTypeEnum] The type of earning.