merge_ruby_client 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (234) hide show
  1. checksums.yaml +4 -4
  2. data/lib/merge_ruby_client/accounting/audit_trail/client.rb +4 -2
  3. data/lib/merge_ruby_client/accounting/client.rb +0 -7
  4. data/lib/merge_ruby_client/accounting/field_mapping/client.rb +2 -2
  5. data/lib/merge_ruby_client/accounting/link_token/client.rb +10 -6
  6. data/lib/merge_ruby_client/accounting/payments/client.rb +4 -0
  7. data/lib/merge_ruby_client/accounting/scopes/client.rb +2 -2
  8. data/lib/merge_ruby_client/accounting/types/account.rb +4 -4
  9. data/lib/merge_ruby_client/accounting/types/accounting_attachment.rb +4 -4
  10. data/lib/merge_ruby_client/accounting/types/accounting_period.rb +4 -4
  11. data/lib/merge_ruby_client/accounting/types/accounting_phone_number.rb +4 -4
  12. data/lib/merge_ruby_client/accounting/types/address.rb +4 -4
  13. data/lib/merge_ruby_client/accounting/types/audit_log_event.rb +6 -0
  14. data/lib/merge_ruby_client/accounting/types/balance_sheet.rb +4 -4
  15. data/lib/merge_ruby_client/accounting/types/cash_flow_statement.rb +4 -4
  16. data/lib/merge_ruby_client/accounting/types/company_info.rb +4 -4
  17. data/lib/merge_ruby_client/accounting/types/contact.rb +4 -4
  18. data/lib/merge_ruby_client/accounting/types/credit_note.rb +4 -4
  19. data/lib/merge_ruby_client/accounting/types/credit_note_line_item.rb +5 -13
  20. data/lib/merge_ruby_client/accounting/types/event_type_enum.rb +6 -0
  21. data/lib/merge_ruby_client/accounting/types/expense.rb +4 -4
  22. data/lib/merge_ruby_client/accounting/types/expense_line.rb +4 -4
  23. data/lib/merge_ruby_client/accounting/types/income_statement.rb +4 -4
  24. data/lib/merge_ruby_client/accounting/types/invoice.rb +4 -4
  25. data/lib/merge_ruby_client/accounting/types/invoice_line_item.rb +4 -4
  26. data/lib/merge_ruby_client/accounting/types/item.rb +4 -4
  27. data/lib/merge_ruby_client/accounting/types/journal_entry.rb +4 -4
  28. data/lib/merge_ruby_client/accounting/types/journal_line.rb +4 -4
  29. data/lib/merge_ruby_client/accounting/types/patched_payment_request.rb +14 -1
  30. data/lib/merge_ruby_client/accounting/types/payment.rb +18 -5
  31. data/lib/merge_ruby_client/accounting/types/payment_line_item.rb +4 -4
  32. data/lib/merge_ruby_client/accounting/types/payment_request.rb +14 -1
  33. data/lib/merge_ruby_client/accounting/types/payment_type_enum.rb +12 -0
  34. data/lib/merge_ruby_client/accounting/types/purchase_order.rb +4 -4
  35. data/lib/merge_ruby_client/accounting/types/purchase_order_line_item.rb +4 -4
  36. data/lib/merge_ruby_client/accounting/types/remote_field_api.rb +16 -2
  37. data/lib/merge_ruby_client/accounting/types/remote_field_api_coverage.rb +54 -0
  38. data/lib/merge_ruby_client/accounting/types/report_item.rb +4 -4
  39. data/lib/merge_ruby_client/accounting/types/tax_rate.rb +12 -10
  40. data/lib/merge_ruby_client/accounting/types/tax_rate_company.rb +2 -1
  41. data/lib/merge_ruby_client/accounting/types/tracking_category.rb +4 -4
  42. data/lib/merge_ruby_client/accounting/types/transaction.rb +4 -4
  43. data/lib/merge_ruby_client/accounting/types/transaction_line_item.rb +6 -6
  44. data/lib/merge_ruby_client/accounting/types/vendor_credit.rb +4 -4
  45. data/lib/merge_ruby_client/accounting/types/vendor_credit_line.rb +4 -4
  46. data/lib/merge_ruby_client/ats/audit_trail/client.rb +4 -2
  47. data/lib/merge_ruby_client/ats/client.rb +0 -7
  48. data/lib/merge_ruby_client/ats/field_mapping/client.rb +2 -2
  49. data/lib/merge_ruby_client/ats/job_postings/client.rb +16 -4
  50. data/lib/merge_ruby_client/ats/link_token/client.rb +10 -6
  51. data/lib/merge_ruby_client/ats/scopes/client.rb +2 -2
  52. data/lib/merge_ruby_client/ats/types/activity.rb +4 -4
  53. data/lib/merge_ruby_client/ats/types/application.rb +4 -4
  54. data/lib/merge_ruby_client/ats/types/attachment.rb +4 -4
  55. data/lib/merge_ruby_client/ats/types/audit_log_event.rb +6 -0
  56. data/lib/merge_ruby_client/ats/types/candidate.rb +4 -4
  57. data/lib/merge_ruby_client/ats/types/department.rb +4 -4
  58. data/lib/merge_ruby_client/ats/types/eeoc.rb +4 -4
  59. data/lib/merge_ruby_client/ats/types/email_address.rb +4 -4
  60. data/lib/merge_ruby_client/ats/types/event_type_enum.rb +6 -0
  61. data/lib/merge_ruby_client/ats/types/job.rb +4 -4
  62. data/lib/merge_ruby_client/ats/types/job_interview_stage.rb +4 -4
  63. data/lib/merge_ruby_client/ats/types/job_posting.rb +4 -4
  64. data/lib/merge_ruby_client/ats/types/offer.rb +4 -4
  65. data/lib/merge_ruby_client/ats/types/office.rb +4 -4
  66. data/lib/merge_ruby_client/ats/types/phone_number.rb +4 -4
  67. data/lib/merge_ruby_client/ats/types/reject_reason.rb +4 -4
  68. data/lib/merge_ruby_client/ats/types/remote_field_api.rb +16 -2
  69. data/lib/merge_ruby_client/ats/types/remote_field_api_coverage.rb +54 -0
  70. data/lib/merge_ruby_client/ats/types/remote_user.rb +4 -4
  71. data/lib/merge_ruby_client/ats/types/scheduled_interview.rb +4 -4
  72. data/lib/merge_ruby_client/ats/types/scorecard.rb +4 -4
  73. data/lib/merge_ruby_client/ats/types/screening_question.rb +4 -4
  74. data/lib/merge_ruby_client/ats/types/screening_question_option.rb +4 -4
  75. data/lib/merge_ruby_client/ats/types/tag.rb +4 -4
  76. data/lib/merge_ruby_client/ats/types/url.rb +4 -4
  77. data/lib/merge_ruby_client/crm/accounts/client.rb +4 -0
  78. data/lib/merge_ruby_client/crm/audit_trail/client.rb +4 -2
  79. data/lib/merge_ruby_client/crm/client.rb +0 -7
  80. data/lib/merge_ruby_client/crm/field_mapping/client.rb +2 -2
  81. data/lib/merge_ruby_client/crm/link_token/client.rb +10 -6
  82. data/lib/merge_ruby_client/crm/scopes/client.rb +2 -2
  83. data/lib/merge_ruby_client/crm/types/account.rb +4 -4
  84. data/lib/merge_ruby_client/crm/types/account_request.rb +13 -1
  85. data/lib/merge_ruby_client/crm/types/address.rb +4 -4
  86. data/lib/merge_ruby_client/crm/types/association.rb +6 -6
  87. data/lib/merge_ruby_client/crm/types/association_association_type.rb +1 -0
  88. data/lib/merge_ruby_client/crm/types/association_sub_type.rb +4 -4
  89. data/lib/merge_ruby_client/crm/types/association_type.rb +8 -6
  90. data/lib/merge_ruby_client/crm/types/audit_log_event.rb +6 -0
  91. data/lib/merge_ruby_client/crm/types/contact.rb +4 -4
  92. data/lib/merge_ruby_client/crm/types/custom_object.rb +8 -8
  93. data/lib/merge_ruby_client/crm/types/custom_object_class.rb +10 -8
  94. data/lib/merge_ruby_client/crm/types/email_address.rb +4 -4
  95. data/lib/merge_ruby_client/crm/types/engagement.rb +4 -4
  96. data/lib/merge_ruby_client/crm/types/engagement_type.rb +4 -4
  97. data/lib/merge_ruby_client/crm/types/event_type_enum.rb +6 -0
  98. data/lib/merge_ruby_client/crm/types/lead.rb +4 -4
  99. data/lib/merge_ruby_client/crm/types/note.rb +4 -4
  100. data/lib/merge_ruby_client/crm/types/opportunity.rb +4 -4
  101. data/lib/merge_ruby_client/crm/types/patched_account_request.rb +13 -1
  102. data/lib/merge_ruby_client/crm/types/phone_number.rb +4 -4
  103. data/lib/merge_ruby_client/crm/types/remote_field_api.rb +16 -2
  104. data/lib/merge_ruby_client/crm/types/remote_field_api_coverage.rb +54 -0
  105. data/lib/merge_ruby_client/crm/types/remote_field_class_for_custom_object_class.rb +4 -4
  106. data/lib/merge_ruby_client/crm/types/stage.rb +4 -4
  107. data/lib/merge_ruby_client/crm/types/task.rb +4 -4
  108. data/lib/merge_ruby_client/crm/types/user.rb +4 -4
  109. data/lib/merge_ruby_client/filestorage/audit_trail/client.rb +4 -2
  110. data/lib/merge_ruby_client/filestorage/client.rb +0 -7
  111. data/lib/merge_ruby_client/filestorage/field_mapping/client.rb +2 -2
  112. data/lib/merge_ruby_client/filestorage/link_token/client.rb +10 -6
  113. data/lib/merge_ruby_client/filestorage/scopes/client.rb +2 -2
  114. data/lib/merge_ruby_client/filestorage/types/audit_log_event.rb +6 -0
  115. data/lib/merge_ruby_client/filestorage/types/drive.rb +4 -4
  116. data/lib/merge_ruby_client/filestorage/types/event_type_enum.rb +6 -0
  117. data/lib/merge_ruby_client/filestorage/types/file.rb +4 -4
  118. data/lib/merge_ruby_client/filestorage/types/folder.rb +4 -4
  119. data/lib/merge_ruby_client/filestorage/types/group.rb +4 -4
  120. data/lib/merge_ruby_client/filestorage/types/permission.rb +4 -4
  121. data/lib/merge_ruby_client/filestorage/types/remote_field_api.rb +16 -2
  122. data/lib/merge_ruby_client/filestorage/types/remote_field_api_coverage.rb +54 -0
  123. data/lib/merge_ruby_client/filestorage/types/user.rb +4 -4
  124. data/lib/merge_ruby_client/hris/audit_trail/client.rb +4 -2
  125. data/lib/merge_ruby_client/hris/client.rb +0 -7
  126. data/lib/merge_ruby_client/hris/field_mapping/client.rb +2 -2
  127. data/lib/merge_ruby_client/hris/groups/client.rb +10 -2
  128. data/lib/merge_ruby_client/hris/link_token/client.rb +10 -6
  129. data/lib/merge_ruby_client/hris/scopes/client.rb +2 -2
  130. data/lib/merge_ruby_client/hris/types/audit_log_event.rb +6 -0
  131. data/lib/merge_ruby_client/hris/types/bank_info.rb +4 -4
  132. data/lib/merge_ruby_client/hris/types/benefit.rb +4 -4
  133. data/lib/merge_ruby_client/hris/types/company.rb +4 -4
  134. data/lib/merge_ruby_client/hris/types/deduction.rb +4 -4
  135. data/lib/merge_ruby_client/hris/types/dependent.rb +4 -4
  136. data/lib/merge_ruby_client/hris/types/earning.rb +4 -4
  137. data/lib/merge_ruby_client/hris/types/employee.rb +4 -4
  138. data/lib/merge_ruby_client/hris/types/employee_payroll_run.rb +4 -4
  139. data/lib/merge_ruby_client/hris/types/employer_benefit.rb +4 -4
  140. data/lib/merge_ruby_client/hris/types/employment.rb +4 -4
  141. data/lib/merge_ruby_client/hris/types/event_type_enum.rb +6 -0
  142. data/lib/merge_ruby_client/hris/types/group.rb +19 -5
  143. data/lib/merge_ruby_client/hris/types/location.rb +4 -4
  144. data/lib/merge_ruby_client/hris/types/pay_group.rb +4 -4
  145. data/lib/merge_ruby_client/hris/types/payroll_run.rb +4 -4
  146. data/lib/merge_ruby_client/hris/types/remote_field_api.rb +16 -2
  147. data/lib/merge_ruby_client/hris/types/remote_field_api_coverage.rb +54 -0
  148. data/lib/merge_ruby_client/hris/types/tax.rb +4 -4
  149. data/lib/merge_ruby_client/hris/types/team.rb +4 -4
  150. data/lib/merge_ruby_client/hris/types/time_off.rb +4 -4
  151. data/lib/merge_ruby_client/hris/types/time_off_balance.rb +4 -4
  152. data/lib/merge_ruby_client/hris/types/timesheet_entry.rb +4 -4
  153. data/lib/merge_ruby_client/ticketing/audit_trail/client.rb +4 -2
  154. data/lib/merge_ruby_client/ticketing/client.rb +0 -7
  155. data/lib/merge_ruby_client/ticketing/contacts/client.rb +127 -0
  156. data/lib/merge_ruby_client/ticketing/field_mapping/client.rb +2 -2
  157. data/lib/merge_ruby_client/ticketing/link_token/client.rb +10 -6
  158. data/lib/merge_ruby_client/ticketing/scopes/client.rb +2 -2
  159. data/lib/merge_ruby_client/ticketing/types/account.rb +4 -4
  160. data/lib/merge_ruby_client/ticketing/types/attachment.rb +4 -4
  161. data/lib/merge_ruby_client/ticketing/types/audit_log_event.rb +6 -0
  162. data/lib/merge_ruby_client/ticketing/types/collection.rb +4 -4
  163. data/lib/merge_ruby_client/ticketing/types/comment.rb +4 -4
  164. data/lib/merge_ruby_client/ticketing/types/contact.rb +4 -4
  165. data/lib/merge_ruby_client/ticketing/types/contact_request.rb +125 -0
  166. data/lib/merge_ruby_client/ticketing/types/contact_request_account.rb +56 -0
  167. data/lib/merge_ruby_client/ticketing/types/event_type_enum.rb +6 -0
  168. data/lib/merge_ruby_client/ticketing/types/project.rb +4 -4
  169. data/lib/merge_ruby_client/ticketing/types/remote_field_api.rb +16 -2
  170. data/lib/merge_ruby_client/ticketing/types/remote_field_api_coverage.rb +54 -0
  171. data/lib/merge_ruby_client/ticketing/types/role.rb +4 -4
  172. data/lib/merge_ruby_client/ticketing/types/tag.rb +4 -4
  173. data/lib/merge_ruby_client/ticketing/types/team.rb +4 -4
  174. data/lib/merge_ruby_client/ticketing/types/ticket.rb +4 -4
  175. data/lib/merge_ruby_client/ticketing/types/ticketing_contact_response.rb +101 -0
  176. data/lib/merge_ruby_client/ticketing/types/user.rb +4 -4
  177. data/lib/merge_ruby_client.rb +21 -21
  178. data/lib/requests.rb +12 -2
  179. data/lib/types_export.rb +516 -554
  180. metadata +12 -56
  181. data/lib/merge_ruby_client/accounting/selective_sync/client.rb +0 -218
  182. data/lib/merge_ruby_client/accounting/types/condition_schema.rb +0 -136
  183. data/lib/merge_ruby_client/accounting/types/condition_type_enum.rb +0 -22
  184. data/lib/merge_ruby_client/accounting/types/linked_account_condition.rb +0 -104
  185. data/lib/merge_ruby_client/accounting/types/linked_account_condition_request.rb +0 -87
  186. data/lib/merge_ruby_client/accounting/types/linked_account_selective_sync_configuration.rb +0 -65
  187. data/lib/merge_ruby_client/accounting/types/linked_account_selective_sync_configuration_request.rb +0 -63
  188. data/lib/merge_ruby_client/accounting/types/operator_schema.rb +0 -68
  189. data/lib/merge_ruby_client/accounting/types/paginated_condition_schema_list.rb +0 -80
  190. data/lib/merge_ruby_client/ats/selective_sync/client.rb +0 -218
  191. data/lib/merge_ruby_client/ats/types/condition_schema.rb +0 -136
  192. data/lib/merge_ruby_client/ats/types/condition_type_enum.rb +0 -22
  193. data/lib/merge_ruby_client/ats/types/linked_account_condition.rb +0 -104
  194. data/lib/merge_ruby_client/ats/types/linked_account_condition_request.rb +0 -87
  195. data/lib/merge_ruby_client/ats/types/linked_account_selective_sync_configuration.rb +0 -65
  196. data/lib/merge_ruby_client/ats/types/linked_account_selective_sync_configuration_request.rb +0 -63
  197. data/lib/merge_ruby_client/ats/types/operator_schema.rb +0 -68
  198. data/lib/merge_ruby_client/ats/types/paginated_condition_schema_list.rb +0 -80
  199. data/lib/merge_ruby_client/crm/selective_sync/client.rb +0 -218
  200. data/lib/merge_ruby_client/crm/types/condition_schema.rb +0 -136
  201. data/lib/merge_ruby_client/crm/types/condition_type_enum.rb +0 -22
  202. data/lib/merge_ruby_client/crm/types/linked_account_condition.rb +0 -104
  203. data/lib/merge_ruby_client/crm/types/linked_account_condition_request.rb +0 -87
  204. data/lib/merge_ruby_client/crm/types/linked_account_selective_sync_configuration.rb +0 -65
  205. data/lib/merge_ruby_client/crm/types/linked_account_selective_sync_configuration_request.rb +0 -63
  206. data/lib/merge_ruby_client/crm/types/operator_schema.rb +0 -68
  207. data/lib/merge_ruby_client/crm/types/paginated_condition_schema_list.rb +0 -80
  208. data/lib/merge_ruby_client/filestorage/selective_sync/client.rb +0 -218
  209. data/lib/merge_ruby_client/filestorage/types/condition_schema.rb +0 -136
  210. data/lib/merge_ruby_client/filestorage/types/condition_type_enum.rb +0 -22
  211. data/lib/merge_ruby_client/filestorage/types/linked_account_condition.rb +0 -104
  212. data/lib/merge_ruby_client/filestorage/types/linked_account_condition_request.rb +0 -87
  213. data/lib/merge_ruby_client/filestorage/types/linked_account_selective_sync_configuration.rb +0 -65
  214. data/lib/merge_ruby_client/filestorage/types/linked_account_selective_sync_configuration_request.rb +0 -63
  215. data/lib/merge_ruby_client/filestorage/types/operator_schema.rb +0 -68
  216. data/lib/merge_ruby_client/filestorage/types/paginated_condition_schema_list.rb +0 -80
  217. data/lib/merge_ruby_client/hris/selective_sync/client.rb +0 -218
  218. data/lib/merge_ruby_client/hris/types/condition_schema.rb +0 -136
  219. data/lib/merge_ruby_client/hris/types/condition_type_enum.rb +0 -22
  220. data/lib/merge_ruby_client/hris/types/linked_account_condition.rb +0 -104
  221. data/lib/merge_ruby_client/hris/types/linked_account_condition_request.rb +0 -87
  222. data/lib/merge_ruby_client/hris/types/linked_account_selective_sync_configuration.rb +0 -65
  223. data/lib/merge_ruby_client/hris/types/linked_account_selective_sync_configuration_request.rb +0 -63
  224. data/lib/merge_ruby_client/hris/types/operator_schema.rb +0 -68
  225. data/lib/merge_ruby_client/hris/types/paginated_condition_schema_list.rb +0 -80
  226. data/lib/merge_ruby_client/ticketing/selective_sync/client.rb +0 -218
  227. data/lib/merge_ruby_client/ticketing/types/condition_schema.rb +0 -136
  228. data/lib/merge_ruby_client/ticketing/types/condition_type_enum.rb +0 -22
  229. data/lib/merge_ruby_client/ticketing/types/linked_account_condition.rb +0 -104
  230. data/lib/merge_ruby_client/ticketing/types/linked_account_condition_request.rb +0 -87
  231. data/lib/merge_ruby_client/ticketing/types/linked_account_selective_sync_configuration.rb +0 -65
  232. data/lib/merge_ruby_client/ticketing/types/linked_account_selective_sync_configuration_request.rb +0 -63
  233. data/lib/merge_ruby_client/ticketing/types/operator_schema.rb +0 -68
  234. data/lib/merge_ruby_client/ticketing/types/paginated_condition_schema_list.rb +0 -80
@@ -66,7 +66,7 @@ module Merge
66
66
  # api.ticketing.field_mappings_create(
67
67
  # target_field_name: "example_target_field_name",
68
68
  # target_field_description: "this is a example description of the target field",
69
- # remote_field_traversal_path: ,
69
+ # remote_field_traversal_path: ["example_remote_field"],
70
70
  # remote_method: "GET",
71
71
  # remote_url_path: "/example-url-path",
72
72
  # common_model_name: "ExampleCommonModel"
@@ -274,7 +274,7 @@ module Merge
274
274
  # api.ticketing.field_mappings_create(
275
275
  # target_field_name: "example_target_field_name",
276
276
  # target_field_description: "this is a example description of the target field",
277
- # remote_field_traversal_path: ,
277
+ # remote_field_traversal_path: ["example_remote_field"],
278
278
  # remote_method: "GET",
279
279
  # remote_url_path: "/example-url-path",
280
280
  # common_model_name: "ExampleCommonModel"
@@ -46,6 +46,7 @@ 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.
49
50
  # @param request_options [Merge::RequestOptions]
50
51
  # @return [Merge::Ticketing::LinkToken]
51
52
  # @example
@@ -58,10 +59,10 @@ module Merge
58
59
  # end_user_email_address: "example@gmail.com",
59
60
  # end_user_organization_name: "Test Organization",
60
61
  # end_user_origin_id: "12345",
61
- # categories: [HRIS]
62
+ # categories: [HRIS, ATS]
62
63
  # )
63
64
  def create(end_user_email_address:, end_user_organization_name:, end_user_origin_id:, categories:,
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)
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)
65
66
  response = @request_client.conn.post do |req|
66
67
  req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
67
68
  req.headers["Authorization"] = request_options.api_key unless request_options&.api_key.nil?
@@ -78,7 +79,8 @@ module Merge
78
79
  should_create_magic_link_url: should_create_magic_link_url,
79
80
  common_models: common_models,
80
81
  category_common_model_scopes: category_common_model_scopes,
81
- language: language
82
+ language: language,
83
+ integration_specific_config: integration_specific_config
82
84
  }.compact
83
85
  req.url "#{@request_client.get_url(request_options: request_options)}/ticketing/v1/link-token"
84
86
  end
@@ -124,6 +126,7 @@ module Merge
124
126
  # apply to the account that is going to be linked. Any model or field not
125
127
  # specified in link token payload will default to existing settings.
126
128
  # @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.
127
130
  # @param request_options [Merge::RequestOptions]
128
131
  # @return [Merge::Ticketing::LinkToken]
129
132
  # @example
@@ -136,10 +139,10 @@ module Merge
136
139
  # end_user_email_address: "example@gmail.com",
137
140
  # end_user_organization_name: "Test Organization",
138
141
  # end_user_origin_id: "12345",
139
- # categories: [HRIS]
142
+ # categories: [HRIS, ATS]
140
143
  # )
141
144
  def create(end_user_email_address:, end_user_organization_name:, end_user_origin_id:, categories:,
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)
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)
143
146
  Async do
144
147
  response = @request_client.conn.post do |req|
145
148
  req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
@@ -157,7 +160,8 @@ module Merge
157
160
  should_create_magic_link_url: should_create_magic_link_url,
158
161
  common_models: common_models,
159
162
  category_common_model_scopes: category_common_model_scopes,
160
- language: language
163
+ language: language,
164
+ integration_specific_config: integration_specific_config
161
165
  }.compact
162
166
  req.url "#{@request_client.get_url(request_options: request_options)}/ticketing/v1/link-token"
163
167
  end
@@ -83,7 +83,7 @@ module Merge
83
83
  # base_url: "https://api.example.com",
84
84
  # api_key: "YOUR_AUTH_TOKEN"
85
85
  # )
86
- # api.ticketing.linked_account_scopes_create(common_models: [{ model_name: "model_name" }])
86
+ # api.ticketing.linked_account_scopes_create(common_models: [{ model_name: "Employee", model_permissions: { "READ": { is_enabled: true }, "WRITE": { is_enabled: false } } }, { model_name: "Benefit", model_permissions: { "WRITE": { is_enabled: false } } }])
87
87
  def linked_account_scopes_create(common_models:, request_options: nil)
88
88
  response = @request_client.conn.post do |req|
89
89
  req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil?
@@ -177,7 +177,7 @@ module Merge
177
177
  # base_url: "https://api.example.com",
178
178
  # api_key: "YOUR_AUTH_TOKEN"
179
179
  # )
180
- # api.ticketing.linked_account_scopes_create(common_models: [{ model_name: "model_name" }])
180
+ # api.ticketing.linked_account_scopes_create(common_models: [{ model_name: "Employee", model_permissions: { "READ": { is_enabled: true }, "WRITE": { is_enabled: false } } }, { model_name: "Benefit", model_permissions: { "WRITE": { is_enabled: false } } }])
181
181
  def linked_account_scopes_create(common_models:, request_options: nil)
182
182
  Async do
183
183
  response = @request_client.conn.post do |req|
@@ -20,9 +20,9 @@ module Merge
20
20
  attr_reader :id
21
21
  # @return [String] The third-party API ID of the matching object.
22
22
  attr_reader :remote_id
23
- # @return [DateTime]
23
+ # @return [DateTime] The datetime that this object was created by Merge.
24
24
  attr_reader :created_at
25
- # @return [DateTime] This is the datetime that this object was last updated by Merge
25
+ # @return [DateTime] The datetime that this object was modified by Merge.
26
26
  attr_reader :modified_at
27
27
  # @return [String] The account's name.
28
28
  attr_reader :name
@@ -45,8 +45,8 @@ module Merge
45
45
 
46
46
  # @param id [String]
47
47
  # @param remote_id [String] The third-party API ID of the matching object.
48
- # @param created_at [DateTime]
49
- # @param modified_at [DateTime] This is the datetime that this object was last updated by Merge
48
+ # @param created_at [DateTime] The datetime that this object was created by Merge.
49
+ # @param modified_at [DateTime] The datetime that this object was modified by Merge.
50
50
  # @param name [String] The account's name.
51
51
  # @param domains [Array<String>] The account's domain names.
52
52
  # @param remote_was_deleted [Boolean] Indicates whether or not this object has been deleted in the third party
@@ -18,9 +18,9 @@ module Merge
18
18
  attr_reader :id
19
19
  # @return [String] The third-party API ID of the matching object.
20
20
  attr_reader :remote_id
21
- # @return [DateTime]
21
+ # @return [DateTime] The datetime that this object was created by Merge.
22
22
  attr_reader :created_at
23
- # @return [DateTime] This is the datetime that this object was last updated by Merge
23
+ # @return [DateTime] The datetime that this object was modified by Merge.
24
24
  attr_reader :modified_at
25
25
  # @return [String] The attachment's name. It is required to include the file extension in the
26
26
  # attachment's name.
@@ -52,8 +52,8 @@ module Merge
52
52
 
53
53
  # @param id [String]
54
54
  # @param remote_id [String] The third-party API ID of the matching object.
55
- # @param created_at [DateTime]
56
- # @param modified_at [DateTime] This is the datetime that this object was last updated by Merge
55
+ # @param created_at [DateTime] The datetime that this object was created by Merge.
56
+ # @param modified_at [DateTime] The datetime that this object was modified by Merge.
57
57
  # @param file_name [String] The attachment's name. It is required to include the file extension in the
58
58
  # attachment's name.
59
59
  # @param ticket [Merge::Ticketing::AttachmentTicket] The ticket associated with the attachment.
@@ -68,6 +68,9 @@ 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
71
74
  attr_reader :event_type
72
75
  # @return [String]
73
76
  attr_reader :event_description
@@ -135,6 +138,9 @@ module Merge
135
138
  # - `FORCED_LINKED_ACCOUNT_RESYNC` - FORCED_LINKED_ACCOUNT_RESYNC
136
139
  # - `MUTED_ISSUE` - MUTED_ISSUE
137
140
  # - `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
138
144
  # @param event_description [String]
139
145
  # @param created_at [DateTime]
140
146
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
@@ -22,9 +22,9 @@ module Merge
22
22
  attr_reader :id
23
23
  # @return [String] The third-party API ID of the matching object.
24
24
  attr_reader :remote_id
25
- # @return [DateTime]
25
+ # @return [DateTime] The datetime that this object was created by Merge.
26
26
  attr_reader :created_at
27
- # @return [DateTime] This is the datetime that this object was last updated by Merge
27
+ # @return [DateTime] The datetime that this object was modified by Merge.
28
28
  attr_reader :modified_at
29
29
  # @return [String] The collection's name.
30
30
  attr_reader :name
@@ -58,8 +58,8 @@ module Merge
58
58
 
59
59
  # @param id [String]
60
60
  # @param remote_id [String] The third-party API ID of the matching object.
61
- # @param created_at [DateTime]
62
- # @param modified_at [DateTime] This is the datetime that this object was last updated by Merge
61
+ # @param created_at [DateTime] The datetime that this object was created by Merge.
62
+ # @param modified_at [DateTime] The datetime that this object was modified by Merge.
63
63
  # @param name [String] The collection's name.
64
64
  # @param description [String] The collection's description.
65
65
  # @param collection_type [Merge::Ticketing::CollectionTypeEnum] The collection's type.
@@ -20,9 +20,9 @@ module Merge
20
20
  attr_reader :id
21
21
  # @return [String] The third-party API ID of the matching object.
22
22
  attr_reader :remote_id
23
- # @return [DateTime]
23
+ # @return [DateTime] The datetime that this object was created by Merge.
24
24
  attr_reader :created_at
25
- # @return [DateTime] This is the datetime that this object was last updated by Merge
25
+ # @return [DateTime] The datetime that this object was modified by Merge.
26
26
  attr_reader :modified_at
27
27
  # @return [Merge::Ticketing::CommentUser] The author of the Comment, if the author is a User.
28
28
  attr_reader :user
@@ -54,8 +54,8 @@ module Merge
54
54
 
55
55
  # @param id [String]
56
56
  # @param remote_id [String] The third-party API ID of the matching object.
57
- # @param created_at [DateTime]
58
- # @param modified_at [DateTime] This is the datetime that this object was last updated by Merge
57
+ # @param created_at [DateTime] The datetime that this object was created by Merge.
58
+ # @param modified_at [DateTime] The datetime that this object was modified by Merge.
59
59
  # @param user [Merge::Ticketing::CommentUser] The author of the Comment, if the author is a User.
60
60
  # @param contact [Merge::Ticketing::CommentContact] The author of the Comment, if the author is a Contact.
61
61
  # @param body [String] The comment's text body.
@@ -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]
22
+ # @return [DateTime] The datetime that this object was created by Merge.
23
23
  attr_reader :created_at
24
- # @return [DateTime] This is the datetime that this object was last updated by Merge
24
+ # @return [DateTime] The datetime that this object was modified by Merge.
25
25
  attr_reader :modified_at
26
26
  # @return [String] The contact's name.
27
27
  attr_reader :name
@@ -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]
54
- # @param modified_at [DateTime] This is the datetime that this object was last updated by Merge
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.
55
55
  # @param name [String] The contact's name.
56
56
  # @param email_address [String] The contact's email address.
57
57
  # @param phone_number [String] The contact's phone number.
@@ -0,0 +1,125 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "contact_request_account"
4
+ require "ostruct"
5
+ require "json"
6
+
7
+ module Merge
8
+ module Ticketing
9
+ # # The Contact Object
10
+ # ### Description
11
+ # The `Contact` object is used to represent the customer, lead, or external user
12
+ # that a ticket is associated with.
13
+ # ### Usage Example
14
+ # TODO
15
+ class ContactRequest
16
+ # @return [String] The contact's name.
17
+ attr_reader :name
18
+ # @return [String] The contact's email address.
19
+ attr_reader :email_address
20
+ # @return [String] The contact's phone number.
21
+ attr_reader :phone_number
22
+ # @return [String] The contact's details.
23
+ attr_reader :details
24
+ # @return [Merge::Ticketing::ContactRequestAccount] The contact's account.
25
+ attr_reader :account
26
+ # @return [Hash{String => Object}]
27
+ attr_reader :integration_params
28
+ # @return [Hash{String => Object}]
29
+ attr_reader :linked_account_params
30
+ # @return [OpenStruct] Additional properties unmapped to the current class definition
31
+ attr_reader :additional_properties
32
+ # @return [Object]
33
+ attr_reader :_field_set
34
+ protected :_field_set
35
+
36
+ OMIT = Object.new
37
+
38
+ # @param name [String] The contact's name.
39
+ # @param email_address [String] The contact's email address.
40
+ # @param phone_number [String] The contact's phone number.
41
+ # @param details [String] The contact's details.
42
+ # @param account [Merge::Ticketing::ContactRequestAccount] The contact's account.
43
+ # @param integration_params [Hash{String => Object}]
44
+ # @param linked_account_params [Hash{String => Object}]
45
+ # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
46
+ # @return [Merge::Ticketing::ContactRequest]
47
+ def initialize(name: OMIT, email_address: OMIT, phone_number: OMIT, details: OMIT, account: OMIT,
48
+ integration_params: OMIT, linked_account_params: OMIT, additional_properties: nil)
49
+ @name = name if name != OMIT
50
+ @email_address = email_address if email_address != OMIT
51
+ @phone_number = phone_number if phone_number != OMIT
52
+ @details = details if details != OMIT
53
+ @account = account if account != OMIT
54
+ @integration_params = integration_params if integration_params != OMIT
55
+ @linked_account_params = linked_account_params if linked_account_params != OMIT
56
+ @additional_properties = additional_properties
57
+ @_field_set = {
58
+ "name": name,
59
+ "email_address": email_address,
60
+ "phone_number": phone_number,
61
+ "details": details,
62
+ "account": account,
63
+ "integration_params": integration_params,
64
+ "linked_account_params": linked_account_params
65
+ }.reject do |_k, v|
66
+ v == OMIT
67
+ end
68
+ end
69
+
70
+ # Deserialize a JSON object to an instance of ContactRequest
71
+ #
72
+ # @param json_object [String]
73
+ # @return [Merge::Ticketing::ContactRequest]
74
+ def self.from_json(json_object:)
75
+ struct = JSON.parse(json_object, object_class: OpenStruct)
76
+ parsed_json = JSON.parse(json_object)
77
+ name = struct["name"]
78
+ email_address = struct["email_address"]
79
+ phone_number = struct["phone_number"]
80
+ details = struct["details"]
81
+ if parsed_json["account"].nil?
82
+ account = nil
83
+ else
84
+ account = parsed_json["account"].to_json
85
+ account = Merge::Ticketing::ContactRequestAccount.from_json(json_object: account)
86
+ end
87
+ integration_params = struct["integration_params"]
88
+ linked_account_params = struct["linked_account_params"]
89
+ new(
90
+ name: name,
91
+ email_address: email_address,
92
+ phone_number: phone_number,
93
+ details: details,
94
+ account: account,
95
+ integration_params: integration_params,
96
+ linked_account_params: linked_account_params,
97
+ additional_properties: struct
98
+ )
99
+ end
100
+
101
+ # Serialize an instance of ContactRequest to a JSON object
102
+ #
103
+ # @return [String]
104
+ def to_json(*_args)
105
+ @_field_set&.to_json
106
+ end
107
+
108
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
109
+ # hash and check each fields type against the current object's property
110
+ # definitions.
111
+ #
112
+ # @param obj [Object]
113
+ # @return [Void]
114
+ def self.validate_raw(obj:)
115
+ obj.name&.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
116
+ obj.email_address&.is_a?(String) != false || raise("Passed value for field obj.email_address is not the expected type, validation failed.")
117
+ obj.phone_number&.is_a?(String) != false || raise("Passed value for field obj.phone_number is not the expected type, validation failed.")
118
+ obj.details&.is_a?(String) != false || raise("Passed value for field obj.details is not the expected type, validation failed.")
119
+ obj.account.nil? || Merge::Ticketing::ContactRequestAccount.validate_raw(obj: obj.account)
120
+ obj.integration_params&.is_a?(Hash) != false || raise("Passed value for field obj.integration_params is not the expected type, validation failed.")
121
+ obj.linked_account_params&.is_a?(Hash) != false || raise("Passed value for field obj.linked_account_params is not the expected type, validation failed.")
122
+ end
123
+ end
124
+ end
125
+ end
@@ -0,0 +1,56 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+ require_relative "account"
5
+
6
+ module Merge
7
+ module Ticketing
8
+ # The contact's account.
9
+ class ContactRequestAccount
10
+ # Deserialize a JSON object to an instance of ContactRequestAccount
11
+ #
12
+ # @param json_object [String]
13
+ # @return [Merge::Ticketing::ContactRequestAccount]
14
+ def self.from_json(json_object:)
15
+ struct = JSON.parse(json_object, object_class: OpenStruct)
16
+ begin
17
+ struct.is_a?(String) != false || raise("Passed value for field struct is not the expected type, validation failed.")
18
+ return json_object unless json_object.nil?
19
+
20
+ return nil
21
+ rescue StandardError
22
+ # noop
23
+ end
24
+ begin
25
+ Merge::Ticketing::Account.validate_raw(obj: struct)
26
+ return Merge::Ticketing::Account.from_json(json_object: json_object) unless json_object.nil?
27
+
28
+ return nil
29
+ rescue StandardError
30
+ # noop
31
+ end
32
+ struct
33
+ end
34
+
35
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
36
+ # hash and check each fields type against the current object's property
37
+ # definitions.
38
+ #
39
+ # @param obj [Object]
40
+ # @return [Void]
41
+ def self.validate_raw(obj:)
42
+ begin
43
+ return obj.is_a?(String) != false || raise("Passed value for field obj is not the expected type, validation failed.")
44
+ rescue StandardError
45
+ # noop
46
+ end
47
+ begin
48
+ return Merge::Ticketing::Account.validate_raw(obj: obj)
49
+ rescue StandardError
50
+ # noop
51
+ end
52
+ raise("Passed value matched no type within the union, validation failed.")
53
+ end
54
+ end
55
+ end
56
+ end
@@ -43,6 +43,9 @@ module Merge
43
43
  # - `FORCED_LINKED_ACCOUNT_RESYNC` - FORCED_LINKED_ACCOUNT_RESYNC
44
44
  # - `MUTED_ISSUE` - MUTED_ISSUE
45
45
  # - `GENERATED_MAGIC_LINK` - GENERATED_MAGIC_LINK
46
+ # - `ENABLED_MERGE_WEBHOOK` - ENABLED_MERGE_WEBHOOK
47
+ # - `DISABLED_MERGE_WEBHOOK` - DISABLED_MERGE_WEBHOOK
48
+ # - `MERGE_WEBHOOK_TARGET_CHANGED` - MERGE_WEBHOOK_TARGET_CHANGED
46
49
  class EventTypeEnum
47
50
  CREATED_REMOTE_PRODUCTION_API_KEY = "CREATED_REMOTE_PRODUCTION_API_KEY"
48
51
  DELETED_REMOTE_PRODUCTION_API_KEY = "DELETED_REMOTE_PRODUCTION_API_KEY"
@@ -78,6 +81,9 @@ module Merge
78
81
  FORCED_LINKED_ACCOUNT_RESYNC = "FORCED_LINKED_ACCOUNT_RESYNC"
79
82
  MUTED_ISSUE = "MUTED_ISSUE"
80
83
  GENERATED_MAGIC_LINK = "GENERATED_MAGIC_LINK"
84
+ ENABLED_MERGE_WEBHOOK = "ENABLED_MERGE_WEBHOOK"
85
+ DISABLED_MERGE_WEBHOOK = "DISABLED_MERGE_WEBHOOK"
86
+ MERGE_WEBHOOK_TARGET_CHANGED = "MERGE_WEBHOOK_TARGET_CHANGED"
81
87
  end
82
88
  end
83
89
  end
@@ -18,9 +18,9 @@ module Merge
18
18
  attr_reader :id
19
19
  # @return [String] The third-party API ID of the matching object.
20
20
  attr_reader :remote_id
21
- # @return [DateTime]
21
+ # @return [DateTime] The datetime that this object was created by Merge.
22
22
  attr_reader :created_at
23
- # @return [DateTime] This is the datetime that this object was last updated by Merge
23
+ # @return [DateTime] The datetime that this object was modified by Merge.
24
24
  attr_reader :modified_at
25
25
  # @return [String] The project's name.
26
26
  attr_reader :name
@@ -43,8 +43,8 @@ module Merge
43
43
 
44
44
  # @param id [String]
45
45
  # @param remote_id [String] The third-party API ID of the matching object.
46
- # @param created_at [DateTime]
47
- # @param modified_at [DateTime] This is the datetime that this object was last updated by Merge
46
+ # @param created_at [DateTime] The datetime that this object was created by Merge.
47
+ # @param modified_at [DateTime] The datetime that this object was modified by Merge.
48
48
  # @param name [String] The project's name.
49
49
  # @param description [String] The project's description.
50
50
  # @param remote_was_deleted [Boolean] Indicates whether or not this object has been deleted in the third party
@@ -2,6 +2,7 @@
2
2
 
3
3
  require_relative "remote_endpoint_info"
4
4
  require_relative "advanced_metadata"
5
+ require_relative "remote_field_api_coverage"
5
6
  require "ostruct"
6
7
  require "json"
7
8
 
@@ -18,6 +19,8 @@ module Merge
18
19
  attr_reader :example_values
19
20
  # @return [Merge::Ticketing::AdvancedMetadata]
20
21
  attr_reader :advanced_metadata
22
+ # @return [Merge::Ticketing::RemoteFieldApiCoverage]
23
+ attr_reader :coverage
21
24
  # @return [OpenStruct] Additional properties unmapped to the current class definition
22
25
  attr_reader :additional_properties
23
26
  # @return [Object]
@@ -31,22 +34,25 @@ module Merge
31
34
  # @param remote_endpoint_info [Merge::Ticketing::RemoteEndpointInfo]
32
35
  # @param example_values [Array<Object>]
33
36
  # @param advanced_metadata [Merge::Ticketing::AdvancedMetadata]
37
+ # @param coverage [Merge::Ticketing::RemoteFieldApiCoverage]
34
38
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
35
39
  # @return [Merge::Ticketing::RemoteFieldApi]
36
40
  def initialize(schema:, remote_key_name:, remote_endpoint_info:, example_values:, advanced_metadata: OMIT,
37
- additional_properties: nil)
41
+ coverage: OMIT, additional_properties: nil)
38
42
  @schema = schema
39
43
  @remote_key_name = remote_key_name
40
44
  @remote_endpoint_info = remote_endpoint_info
41
45
  @example_values = example_values
42
46
  @advanced_metadata = advanced_metadata if advanced_metadata != OMIT
47
+ @coverage = coverage if coverage != OMIT
43
48
  @additional_properties = additional_properties
44
49
  @_field_set = {
45
50
  "schema": schema,
46
51
  "remote_key_name": remote_key_name,
47
52
  "remote_endpoint_info": remote_endpoint_info,
48
53
  "example_values": example_values,
49
- "advanced_metadata": advanced_metadata
54
+ "advanced_metadata": advanced_metadata,
55
+ "coverage": coverage
50
56
  }.reject do |_k, v|
51
57
  v == OMIT
52
58
  end
@@ -74,12 +80,19 @@ module Merge
74
80
  advanced_metadata = parsed_json["advanced_metadata"].to_json
75
81
  advanced_metadata = Merge::Ticketing::AdvancedMetadata.from_json(json_object: advanced_metadata)
76
82
  end
83
+ if parsed_json["coverage"].nil?
84
+ coverage = nil
85
+ else
86
+ coverage = parsed_json["coverage"].to_json
87
+ coverage = Merge::Ticketing::RemoteFieldApiCoverage.from_json(json_object: coverage)
88
+ end
77
89
  new(
78
90
  schema: schema,
79
91
  remote_key_name: remote_key_name,
80
92
  remote_endpoint_info: remote_endpoint_info,
81
93
  example_values: example_values,
82
94
  advanced_metadata: advanced_metadata,
95
+ coverage: coverage,
83
96
  additional_properties: struct
84
97
  )
85
98
  end
@@ -103,6 +116,7 @@ module Merge
103
116
  Merge::Ticketing::RemoteEndpointInfo.validate_raw(obj: obj.remote_endpoint_info)
104
117
  obj.example_values.is_a?(Array) != false || raise("Passed value for field obj.example_values is not the expected type, validation failed.")
105
118
  obj.advanced_metadata.nil? || Merge::Ticketing::AdvancedMetadata.validate_raw(obj: obj.advanced_metadata)
119
+ obj.coverage.nil? || Merge::Ticketing::RemoteFieldApiCoverage.validate_raw(obj: obj.coverage)
106
120
  end
107
121
  end
108
122
  end
@@ -0,0 +1,54 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+
5
+ module Merge
6
+ module Ticketing
7
+ class RemoteFieldApiCoverage
8
+ # Deserialize a JSON object to an instance of RemoteFieldApiCoverage
9
+ #
10
+ # @param json_object [String]
11
+ # @return [Merge::Ticketing::RemoteFieldApiCoverage]
12
+ def self.from_json(json_object:)
13
+ struct = JSON.parse(json_object, object_class: OpenStruct)
14
+ begin
15
+ struct.is_a?(Integer) != false || raise("Passed value for field struct is not the expected type, validation failed.")
16
+ return json_object unless json_object.nil?
17
+
18
+ return nil
19
+ rescue StandardError
20
+ # noop
21
+ end
22
+ begin
23
+ struct.is_a?(Float) != false || raise("Passed value for field struct is not the expected type, validation failed.")
24
+ return json_object unless json_object.nil?
25
+
26
+ return nil
27
+ rescue StandardError
28
+ # noop
29
+ end
30
+ struct
31
+ end
32
+
33
+ # Leveraged for Union-type generation, validate_raw attempts to parse the given
34
+ # hash and check each fields type against the current object's property
35
+ # definitions.
36
+ #
37
+ # @param obj [Object]
38
+ # @return [Void]
39
+ def self.validate_raw(obj:)
40
+ begin
41
+ return obj.is_a?(Integer) != false || raise("Passed value for field obj is not the expected type, validation failed.")
42
+ rescue StandardError
43
+ # noop
44
+ end
45
+ begin
46
+ return obj.is_a?(Float) != false || raise("Passed value for field obj is not the expected type, validation failed.")
47
+ rescue StandardError
48
+ # noop
49
+ end
50
+ raise("Passed value matched no type within the union, validation failed.")
51
+ end
52
+ end
53
+ end
54
+ end
@@ -20,9 +20,9 @@ module Merge
20
20
  attr_reader :id
21
21
  # @return [String] The third-party API ID of the matching object.
22
22
  attr_reader :remote_id
23
- # @return [DateTime]
23
+ # @return [DateTime] The datetime that this object was created by Merge.
24
24
  attr_reader :created_at
25
- # @return [DateTime] This is the datetime that this object was last updated by Merge
25
+ # @return [DateTime] The datetime that this object was modified by Merge.
26
26
  attr_reader :modified_at
27
27
  # @return [String] The name of the Role.
28
28
  attr_reader :name
@@ -51,8 +51,8 @@ module Merge
51
51
 
52
52
  # @param id [String]
53
53
  # @param remote_id [String] The third-party API ID of the matching object.
54
- # @param created_at [DateTime]
55
- # @param modified_at [DateTime] This is the datetime that this object was last updated by Merge
54
+ # @param created_at [DateTime] The datetime that this object was created by Merge.
55
+ # @param modified_at [DateTime] The datetime that this object was modified by Merge.
56
56
  # @param name [String] The name of the Role.
57
57
  # @param ticket_actions [Array<Merge::Ticketing::TicketActionsEnum>] The set of actions that a User with this Role can perform. Possible enum values
58
58
  # include: `VIEW`, `CREATE`, `EDIT`, `DELETE`, `CLOSE`, and `ASSIGN`.
@@ -15,9 +15,9 @@ module Merge
15
15
  class Tag
16
16
  # @return [String] The third-party API ID of the matching object.
17
17
  attr_reader :remote_id
18
- # @return [DateTime]
18
+ # @return [DateTime] The datetime that this object was created by Merge.
19
19
  attr_reader :created_at
20
- # @return [DateTime] This is the datetime that this object was last updated by Merge
20
+ # @return [DateTime] The datetime that this object was modified by Merge.
21
21
  attr_reader :modified_at
22
22
  # @return [String] The tag's name.
23
23
  attr_reader :name
@@ -37,8 +37,8 @@ module Merge
37
37
  OMIT = Object.new
38
38
 
39
39
  # @param remote_id [String] The third-party API ID of the matching object.
40
- # @param created_at [DateTime]
41
- # @param modified_at [DateTime] This is the datetime that this object was last updated by Merge
40
+ # @param created_at [DateTime] The datetime that this object was created by Merge.
41
+ # @param modified_at [DateTime] The datetime that this object was modified by Merge.
42
42
  # @param name [String] The tag's name.
43
43
  # @param remote_was_deleted [Boolean] Indicates whether or not this object has been deleted in the third party
44
44
  # platform.