merge_hris_client 3.2.1 → 3.2.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (226) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +49 -16
  3. data/docs/AccountDetails.md +3 -1
  4. data/docs/AccountDetailsAndActions.md +7 -3
  5. data/docs/AccountIntegration.md +8 -4
  6. data/docs/AdvancedMetadata.md +28 -0
  7. data/docs/AuditLogEvent.md +32 -0
  8. data/docs/AuditTrailApi.md +91 -0
  9. data/docs/BankInfo.md +6 -4
  10. data/docs/BankInfoApi.md +4 -4
  11. data/docs/Benefit.md +6 -4
  12. data/docs/CommonModelScopeAPI.md +18 -0
  13. data/docs/Company.md +6 -4
  14. data/docs/CreateFieldMappingRequest.md +28 -0
  15. data/docs/DataPassthroughRequest.md +4 -4
  16. data/docs/DebugModelLogSummary.md +1 -1
  17. data/docs/Deduction.md +6 -4
  18. data/docs/Dependent.md +6 -4
  19. data/docs/Earning.md +6 -4
  20. data/docs/Employee.md +7 -3
  21. data/docs/EmployeePayrollRun.md +6 -4
  22. data/docs/EmployeeRequest.md +2 -0
  23. data/docs/EmployeesApi.md +10 -4
  24. data/docs/EmployerBenefit.md +6 -4
  25. data/docs/Employment.md +6 -4
  26. data/docs/EmploymentsApi.md +4 -4
  27. data/docs/EndUserDetailsRequest.md +13 -7
  28. data/docs/EventTypeEnum.md +15 -0
  29. data/docs/ExternalTargetFieldAPI.md +22 -0
  30. data/docs/ExternalTargetFieldAPIResponse.md +48 -0
  31. data/docs/FieldMappingApi.md +455 -0
  32. data/docs/FieldMappingApiInstance.md +24 -0
  33. data/docs/FieldMappingApiInstanceRemoteField.md +22 -0
  34. data/docs/FieldMappingApiInstanceRemoteFieldRemoteEndpointInfo.md +22 -0
  35. data/docs/FieldMappingApiInstanceResponse.md +48 -0
  36. data/docs/FieldMappingApiInstanceTargetField.md +22 -0
  37. data/docs/FieldMappingInstanceResponse.md +24 -0
  38. data/docs/FieldPermissionDeserializer.md +20 -0
  39. data/docs/FieldPermissionDeserializerRequest.md +20 -0
  40. data/docs/ForceResyncApi.md +1 -1
  41. data/docs/GenerateRemoteKeyRequest.md +1 -1
  42. data/docs/Group.md +9 -5
  43. data/docs/GroupsApi.md +8 -4
  44. data/docs/IndividualCommonModelScopeDeserializer.md +22 -0
  45. data/docs/IndividualCommonModelScopeDeserializerRequest.md +22 -0
  46. data/docs/Issue.md +1 -1
  47. data/docs/IssuesApi.md +5 -3
  48. data/docs/LinkTokenApi.md +1 -1
  49. data/docs/LinkedAccountCommonModelScopeDeserializerRequest.md +18 -0
  50. data/docs/LinkedAccountsApi.md +2 -2
  51. data/docs/Location.md +6 -4
  52. data/docs/LocationsApi.md +6 -4
  53. data/docs/MetaResponse.md +1 -1
  54. data/docs/ModelPermissionDeserializer.md +18 -0
  55. data/docs/ModelPermissionDeserializerRequest.md +18 -0
  56. data/docs/PaginatedAuditLogEventList.md +22 -0
  57. data/docs/PaginatedTimesheetEntryList.md +22 -0
  58. data/docs/PatchedEditFieldMappingRequest.md +22 -0
  59. data/docs/PayGroup.md +6 -4
  60. data/docs/PayrollRun.md +6 -4
  61. data/docs/PayrollRunsApi.md +4 -4
  62. data/docs/RemoteEndpointInfo.md +22 -0
  63. data/docs/RemoteFieldAPI.md +28 -0
  64. data/docs/RemoteFieldAPIResponse.md +48 -0
  65. data/docs/RemoteKeyForRegenerationRequest.md +1 -1
  66. data/docs/RoleEnum.md +15 -0
  67. data/docs/ScopesApi.md +222 -0
  68. data/docs/SyncStatusApi.md +1 -1
  69. data/docs/Tax.md +6 -4
  70. data/docs/Team.md +6 -4
  71. data/docs/TimeOff.md +5 -3
  72. data/docs/TimeOffApi.md +12 -4
  73. data/docs/TimeOffBalance.md +6 -4
  74. data/docs/TimeOffBalancesApi.md +4 -4
  75. data/docs/TimesheetEntriesApi.md +341 -0
  76. data/docs/TimesheetEntry.md +38 -0
  77. data/docs/TimesheetEntryEndpointRequest.md +18 -0
  78. data/docs/TimesheetEntryRequest.md +28 -0
  79. data/docs/TimesheetEntryResponse.md +24 -0
  80. data/lib/merge_hris_client/api/audit_trail_api.rb +95 -0
  81. data/lib/merge_hris_client/api/bank_info_api.rb +4 -4
  82. data/lib/merge_hris_client/api/employees_api.rb +13 -4
  83. data/lib/merge_hris_client/api/employments_api.rb +4 -4
  84. data/lib/merge_hris_client/api/field_mapping_api.rb +424 -0
  85. data/lib/merge_hris_client/api/force_resync_api.rb +2 -2
  86. data/lib/merge_hris_client/api/groups_api.rb +10 -4
  87. data/lib/merge_hris_client/api/issues_api.rb +7 -4
  88. data/lib/merge_hris_client/api/linked_accounts_api.rb +3 -3
  89. data/lib/merge_hris_client/api/locations_api.rb +11 -4
  90. data/lib/merge_hris_client/api/payroll_runs_api.rb +4 -4
  91. data/lib/merge_hris_client/api/scopes_api.rb +209 -0
  92. data/lib/merge_hris_client/api/sync_status_api.rb +2 -2
  93. data/lib/merge_hris_client/api/time_off_api.rb +16 -4
  94. data/lib/merge_hris_client/api/time_off_balances_api.rb +4 -4
  95. data/lib/merge_hris_client/api/timesheet_entries_api.rb +342 -0
  96. data/lib/merge_hris_client/configuration.rb +4 -0
  97. data/lib/merge_hris_client/models/account_details.rb +14 -5
  98. data/lib/merge_hris_client/models/account_details_and_actions.rb +28 -4
  99. data/lib/merge_hris_client/models/account_integration.rb +36 -14
  100. data/lib/merge_hris_client/models/advanced_metadata.rb +270 -0
  101. data/lib/merge_hris_client/models/audit_log_event.rb +356 -0
  102. data/lib/merge_hris_client/models/bank_info.rb +24 -16
  103. data/lib/merge_hris_client/models/benefit.rb +24 -16
  104. data/lib/merge_hris_client/models/common_model_scope_api.rb +226 -0
  105. data/lib/merge_hris_client/models/company.rb +24 -16
  106. data/lib/merge_hris_client/models/create_field_mapping_request.rb +396 -0
  107. data/lib/merge_hris_client/models/data_passthrough_request.rb +3 -0
  108. data/lib/merge_hris_client/models/deduction.rb +24 -16
  109. data/lib/merge_hris_client/models/dependent.rb +24 -16
  110. data/lib/merge_hris_client/models/earning.rb +24 -16
  111. data/lib/merge_hris_client/models/employee.rb +34 -15
  112. data/lib/merge_hris_client/models/employee_payroll_run.rb +24 -16
  113. data/lib/merge_hris_client/models/employee_request.rb +12 -1
  114. data/lib/merge_hris_client/models/employer_benefit.rb +24 -16
  115. data/lib/merge_hris_client/models/employment.rb +24 -16
  116. data/lib/merge_hris_client/models/end_user_details_request.rb +67 -6
  117. data/lib/merge_hris_client/models/event_type_enum.rb +81 -0
  118. data/lib/merge_hris_client/models/external_target_field_api.rb +239 -0
  119. data/lib/merge_hris_client/models/external_target_field_api_response.rb +385 -0
  120. data/lib/merge_hris_client/models/field_mapping_api_instance.rb +247 -0
  121. data/lib/merge_hris_client/models/field_mapping_api_instance_remote_field.rb +253 -0
  122. data/lib/merge_hris_client/models/field_mapping_api_instance_remote_field_remote_endpoint_info.rb +241 -0
  123. data/lib/merge_hris_client/models/field_mapping_api_instance_response.rb +385 -0
  124. data/lib/merge_hris_client/models/field_mapping_api_instance_target_field.rb +251 -0
  125. data/lib/merge_hris_client/models/field_mapping_instance_response.rb +266 -0
  126. data/lib/merge_hris_client/models/field_permission_deserializer.rb +231 -0
  127. data/lib/merge_hris_client/models/field_permission_deserializer_request.rb +231 -0
  128. data/lib/merge_hris_client/models/generate_remote_key_request.rb +1 -0
  129. data/lib/merge_hris_client/models/group.rb +34 -15
  130. data/lib/merge_hris_client/models/individual_common_model_scope_deserializer.rb +243 -0
  131. data/lib/merge_hris_client/models/individual_common_model_scope_deserializer_request.rb +262 -0
  132. data/lib/merge_hris_client/models/linked_account_common_model_scope_deserializer_request.rb +226 -0
  133. data/lib/merge_hris_client/models/location.rb +24 -16
  134. data/lib/merge_hris_client/models/model_permission_deserializer.rb +218 -0
  135. data/lib/merge_hris_client/models/model_permission_deserializer_request.rb +218 -0
  136. data/lib/merge_hris_client/models/paginated_audit_log_event_list.rb +240 -0
  137. data/lib/merge_hris_client/models/paginated_timesheet_entry_list.rb +240 -0
  138. data/lib/merge_hris_client/models/patched_edit_field_mapping_request.rb +271 -0
  139. data/lib/merge_hris_client/models/pay_group.rb +24 -16
  140. data/lib/merge_hris_client/models/payroll_run.rb +24 -16
  141. data/lib/merge_hris_client/models/remote_endpoint_info.rb +253 -0
  142. data/lib/merge_hris_client/models/remote_field_api.rb +285 -0
  143. data/lib/merge_hris_client/models/remote_field_api_response.rb +385 -0
  144. data/lib/merge_hris_client/models/remote_key_for_regeneration_request.rb +1 -0
  145. data/lib/merge_hris_client/models/role_enum.rb +49 -0
  146. data/lib/merge_hris_client/models/tax.rb +24 -16
  147. data/lib/merge_hris_client/models/team.rb +24 -16
  148. data/lib/merge_hris_client/models/time_off.rb +23 -15
  149. data/lib/merge_hris_client/models/time_off_balance.rb +24 -16
  150. data/lib/merge_hris_client/models/timesheet_entry.rb +326 -0
  151. data/lib/merge_hris_client/models/timesheet_entry_endpoint_request.rb +223 -0
  152. data/lib/merge_hris_client/models/timesheet_entry_request.rb +278 -0
  153. data/lib/merge_hris_client/models/timesheet_entry_response.rb +266 -0
  154. data/lib/merge_hris_client/version.rb +1 -1
  155. data/lib/merge_hris_client.rb +35 -21
  156. data/spec/api/audit_trail_api_spec.rb +51 -0
  157. data/spec/api/bank_info_api_spec.rb +2 -2
  158. data/spec/api/employees_api_spec.rb +5 -2
  159. data/spec/api/employments_api_spec.rb +2 -2
  160. data/spec/api/field_mapping_api_spec.rb +107 -0
  161. data/spec/api/force_resync_api_spec.rb +1 -1
  162. data/spec/api/groups_api_spec.rb +4 -2
  163. data/spec/api/issues_api_spec.rb +3 -2
  164. data/spec/api/linked_accounts_api_spec.rb +1 -1
  165. data/spec/api/locations_api_spec.rb +3 -2
  166. data/spec/api/payroll_runs_api_spec.rb +2 -2
  167. data/spec/api/scopes_api_spec.rb +68 -0
  168. data/spec/api/sync_status_api_spec.rb +1 -1
  169. data/spec/api/time_off_api_spec.rb +6 -2
  170. data/spec/api/time_off_balances_api_spec.rb +2 -2
  171. data/spec/api/timesheet_entries_api_spec.rb +99 -0
  172. data/spec/models/account_details_and_actions_spec.rb +12 -0
  173. data/spec/models/account_details_spec.rb +6 -0
  174. data/spec/models/account_integration_spec.rb +14 -2
  175. data/spec/models/advanced_metadata_spec.rb +64 -0
  176. data/spec/models/audit_log_event_spec.rb +76 -0
  177. data/spec/models/bank_info_spec.rb +12 -6
  178. data/spec/models/benefit_spec.rb +12 -6
  179. data/spec/models/common_model_scope_api_spec.rb +34 -0
  180. data/spec/models/company_spec.rb +11 -5
  181. data/spec/models/create_field_mapping_request_spec.rb +64 -0
  182. data/spec/models/deduction_spec.rb +12 -6
  183. data/spec/models/dependent_spec.rb +12 -6
  184. data/spec/models/earning_spec.rb +11 -5
  185. data/spec/models/employee_payroll_run_spec.rb +12 -6
  186. data/spec/models/employee_request_spec.rb +6 -0
  187. data/spec/models/employee_spec.rb +18 -6
  188. data/spec/models/employer_benefit_spec.rb +12 -6
  189. data/spec/models/employment_spec.rb +12 -6
  190. data/spec/models/end_user_details_request_spec.rb +18 -0
  191. data/spec/models/event_type_enum_spec.rb +28 -0
  192. data/spec/models/external_target_field_api_response_spec.rb +124 -0
  193. data/spec/models/external_target_field_api_spec.rb +46 -0
  194. data/spec/models/field_mapping_api_instance_remote_field_remote_endpoint_info_spec.rb +46 -0
  195. data/spec/models/field_mapping_api_instance_remote_field_spec.rb +46 -0
  196. data/spec/models/field_mapping_api_instance_response_spec.rb +124 -0
  197. data/spec/models/field_mapping_api_instance_spec.rb +52 -0
  198. data/spec/models/field_mapping_api_instance_target_field_spec.rb +46 -0
  199. data/spec/models/field_mapping_instance_response_spec.rb +52 -0
  200. data/spec/models/field_permission_deserializer_request_spec.rb +40 -0
  201. data/spec/models/field_permission_deserializer_spec.rb +40 -0
  202. data/spec/models/group_spec.rb +13 -1
  203. data/spec/models/individual_common_model_scope_deserializer_request_spec.rb +46 -0
  204. data/spec/models/individual_common_model_scope_deserializer_spec.rb +46 -0
  205. data/spec/models/linked_account_common_model_scope_deserializer_request_spec.rb +34 -0
  206. data/spec/models/location_spec.rb +12 -6
  207. data/spec/models/model_permission_deserializer_request_spec.rb +34 -0
  208. data/spec/models/model_permission_deserializer_spec.rb +34 -0
  209. data/spec/models/paginated_audit_log_event_list_spec.rb +46 -0
  210. data/spec/models/paginated_timesheet_entry_list_spec.rb +46 -0
  211. data/spec/models/patched_edit_field_mapping_request_spec.rb +46 -0
  212. data/spec/models/pay_group_spec.rb +9 -3
  213. data/spec/models/payroll_run_spec.rb +12 -6
  214. data/spec/models/remote_endpoint_info_spec.rb +46 -0
  215. data/spec/models/remote_field_api_response_spec.rb +124 -0
  216. data/spec/models/remote_field_api_spec.rb +64 -0
  217. data/spec/models/role_enum_spec.rb +28 -0
  218. data/spec/models/tax_spec.rb +12 -6
  219. data/spec/models/team_spec.rb +10 -4
  220. data/spec/models/time_off_balance_spec.rb +12 -6
  221. data/spec/models/time_off_spec.rb +12 -6
  222. data/spec/models/timesheet_entry_endpoint_request_spec.rb +34 -0
  223. data/spec/models/timesheet_entry_request_spec.rb +64 -0
  224. data/spec/models/timesheet_entry_response_spec.rb +52 -0
  225. data/spec/models/timesheet_entry_spec.rb +94 -0
  226. metadata +266 -126
@@ -0,0 +1,342 @@
1
+ =begin
2
+ #Merge HRIS API
3
+
4
+ #The unified API for building rich integrations with multiple HR Information System platforms.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: hello@merge.dev
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 5.1.1
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module MergeHRISClient
16
+ class TimesheetEntriesApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Creates a `TimesheetEntry` object with the given values.
23
+ # @param x_account_token [String] Token identifying the end user.
24
+ # @param timesheet_entry_endpoint_request [TimesheetEntryEndpointRequest]
25
+ # @param [Hash] opts the optional parameters
26
+ # @option opts [Boolean] :is_debug_mode Whether to include debug fields (such as log file links) in the response.
27
+ # @option opts [Boolean] :run_async Whether or not third-party updates should be run asynchronously.
28
+ # @return [TimesheetEntryResponse]
29
+ def timesheet_entries_create(x_account_token, timesheet_entry_endpoint_request, opts = {})
30
+ data, _status_code, _headers = timesheet_entries_create_with_http_info(x_account_token, timesheet_entry_endpoint_request, opts)
31
+ data
32
+ end
33
+
34
+ # Creates a `TimesheetEntry` object with the given values.
35
+ # @param x_account_token [String] Token identifying the end user.
36
+ # @param timesheet_entry_endpoint_request [TimesheetEntryEndpointRequest]
37
+ # @param [Hash] opts the optional parameters
38
+ # @option opts [Boolean] :is_debug_mode Whether to include debug fields (such as log file links) in the response.
39
+ # @option opts [Boolean] :run_async Whether or not third-party updates should be run asynchronously.
40
+ # @return [Array<(TimesheetEntryResponse, Integer, Hash)>] TimesheetEntryResponse data, response status code and response headers
41
+ def timesheet_entries_create_with_http_info(x_account_token, timesheet_entry_endpoint_request, opts = {})
42
+ if @api_client.config.debugging
43
+ @api_client.config.logger.debug 'Calling API: TimesheetEntriesApi.timesheet_entries_create ...'
44
+ end
45
+ # verify the required parameter 'x_account_token' is set
46
+ if @api_client.config.client_side_validation && x_account_token.nil?
47
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling TimesheetEntriesApi.timesheet_entries_create"
48
+ end
49
+ # verify the required parameter 'timesheet_entry_endpoint_request' is set
50
+ if @api_client.config.client_side_validation && timesheet_entry_endpoint_request.nil?
51
+ fail ArgumentError, "Missing the required parameter 'timesheet_entry_endpoint_request' when calling TimesheetEntriesApi.timesheet_entries_create"
52
+ end
53
+ # resource path
54
+ local_var_path = '/timesheet-entries'
55
+
56
+ # query parameters
57
+ query_params = opts[:query_params] || {}
58
+ query_params[:'is_debug_mode'] = opts[:'is_debug_mode'] if !opts[:'is_debug_mode'].nil?
59
+ query_params[:'run_async'] = opts[:'run_async'] if !opts[:'run_async'].nil?
60
+
61
+ # header parameters
62
+ header_params = opts[:header_params] || {}
63
+ # HTTP header 'Accept' (if needed)
64
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
65
+ # HTTP header 'Content-Type'
66
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json', 'application/x-www-form-urlencoded', 'multipart/form-data'])
67
+ header_params[:'X-Account-Token'] = x_account_token
68
+
69
+ # form parameters
70
+ form_params = opts[:form_params] || {}
71
+
72
+ # http body (model)
73
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(timesheet_entry_endpoint_request)
74
+
75
+ # return_type
76
+ return_type = opts[:debug_return_type] || 'TimesheetEntryResponse'
77
+
78
+ # auth_names
79
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
80
+
81
+ new_options = opts.merge(
82
+ :operation => :"TimesheetEntriesApi.timesheet_entries_create",
83
+ :header_params => header_params,
84
+ :query_params => query_params,
85
+ :form_params => form_params,
86
+ :body => post_body,
87
+ :auth_names => auth_names,
88
+ :return_type => return_type
89
+ )
90
+
91
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
92
+ if @api_client.config.debugging
93
+ @api_client.config.logger.debug "API called: TimesheetEntriesApi#timesheet_entries_create\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
94
+ end
95
+ return data, status_code, headers
96
+ end
97
+
98
+ # Returns a list of `TimesheetEntry` objects.
99
+ # @param x_account_token [String] Token identifying the end user.
100
+ # @param [Hash] opts the optional parameters
101
+ # @option opts [Time] :created_after If provided, will only return objects created after this datetime.
102
+ # @option opts [Time] :created_before If provided, will only return objects created before this datetime.
103
+ # @option opts [String] :cursor The pagination cursor value.
104
+ # @option opts [String] :employee_id If provided, will only return timesheet entries for this employee.
105
+ # @option opts [String] :ended_after If provided, will only return timesheet entries ended after this datetime.
106
+ # @option opts [String] :ended_before If provided, will only return timesheet entries ended before this datetime.
107
+ # @option opts [Boolean] :include_deleted_data Whether to include data that was marked as deleted by third party webhooks.
108
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
109
+ # @option opts [Time] :modified_after If provided, only objects synced by Merge after this date time will be returned.
110
+ # @option opts [Time] :modified_before If provided, only objects synced by Merge before this date time will be returned.
111
+ # @option opts [String] :order_by Overrides the default ordering for this endpoint. Possible values include: start_time, -start_time.
112
+ # @option opts [Integer] :page_size Number of results to return per page.
113
+ # @option opts [String] :remote_id The API provider&#39;s ID for the given object.
114
+ # @option opts [String] :started_after If provided, will only return timesheet entries started after this datetime.
115
+ # @option opts [String] :started_before If provided, will only return timesheet entries started before this datetime.
116
+ # @return [PaginatedTimesheetEntryList]
117
+ def timesheet_entries_list(x_account_token, opts = {})
118
+ data, _status_code, _headers = timesheet_entries_list_with_http_info(x_account_token, opts)
119
+ data
120
+ end
121
+
122
+ # Returns a list of &#x60;TimesheetEntry&#x60; objects.
123
+ # @param x_account_token [String] Token identifying the end user.
124
+ # @param [Hash] opts the optional parameters
125
+ # @option opts [Time] :created_after If provided, will only return objects created after this datetime.
126
+ # @option opts [Time] :created_before If provided, will only return objects created before this datetime.
127
+ # @option opts [String] :cursor The pagination cursor value.
128
+ # @option opts [String] :employee_id If provided, will only return timesheet entries for this employee.
129
+ # @option opts [String] :ended_after If provided, will only return timesheet entries ended after this datetime.
130
+ # @option opts [String] :ended_before If provided, will only return timesheet entries ended before this datetime.
131
+ # @option opts [Boolean] :include_deleted_data Whether to include data that was marked as deleted by third party webhooks.
132
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
133
+ # @option opts [Time] :modified_after If provided, only objects synced by Merge after this date time will be returned.
134
+ # @option opts [Time] :modified_before If provided, only objects synced by Merge before this date time will be returned.
135
+ # @option opts [String] :order_by Overrides the default ordering for this endpoint. Possible values include: start_time, -start_time.
136
+ # @option opts [Integer] :page_size Number of results to return per page.
137
+ # @option opts [String] :remote_id The API provider&#39;s ID for the given object.
138
+ # @option opts [String] :started_after If provided, will only return timesheet entries started after this datetime.
139
+ # @option opts [String] :started_before If provided, will only return timesheet entries started before this datetime.
140
+ # @return [Array<(PaginatedTimesheetEntryList, Integer, Hash)>] PaginatedTimesheetEntryList data, response status code and response headers
141
+ def timesheet_entries_list_with_http_info(x_account_token, opts = {})
142
+ if @api_client.config.debugging
143
+ @api_client.config.logger.debug 'Calling API: TimesheetEntriesApi.timesheet_entries_list ...'
144
+ end
145
+ # verify the required parameter 'x_account_token' is set
146
+ if @api_client.config.client_side_validation && x_account_token.nil?
147
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling TimesheetEntriesApi.timesheet_entries_list"
148
+ end
149
+ allowable_values = ["-start_time", "start_time"]
150
+ if @api_client.config.client_side_validation && opts[:'order_by'] && !allowable_values.include?(opts[:'order_by'])
151
+ fail ArgumentError, "invalid value for \"order_by\", must be one of #{allowable_values}"
152
+ end
153
+ # resource path
154
+ local_var_path = '/timesheet-entries'
155
+
156
+ # query parameters
157
+ query_params = opts[:query_params] || {}
158
+ query_params[:'created_after'] = opts[:'created_after'] if !opts[:'created_after'].nil?
159
+ query_params[:'created_before'] = opts[:'created_before'] if !opts[:'created_before'].nil?
160
+ query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil?
161
+ query_params[:'employee_id'] = opts[:'employee_id'] if !opts[:'employee_id'].nil?
162
+ query_params[:'ended_after'] = opts[:'ended_after'] if !opts[:'ended_after'].nil?
163
+ query_params[:'ended_before'] = opts[:'ended_before'] if !opts[:'ended_before'].nil?
164
+ query_params[:'include_deleted_data'] = opts[:'include_deleted_data'] if !opts[:'include_deleted_data'].nil?
165
+ query_params[:'include_remote_data'] = opts[:'include_remote_data'] if !opts[:'include_remote_data'].nil?
166
+ query_params[:'modified_after'] = opts[:'modified_after'] if !opts[:'modified_after'].nil?
167
+ query_params[:'modified_before'] = opts[:'modified_before'] if !opts[:'modified_before'].nil?
168
+ query_params[:'order_by'] = opts[:'order_by'] if !opts[:'order_by'].nil?
169
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
170
+ query_params[:'remote_id'] = opts[:'remote_id'] if !opts[:'remote_id'].nil?
171
+ query_params[:'started_after'] = opts[:'started_after'] if !opts[:'started_after'].nil?
172
+ query_params[:'started_before'] = opts[:'started_before'] if !opts[:'started_before'].nil?
173
+
174
+ # header parameters
175
+ header_params = opts[:header_params] || {}
176
+ # HTTP header 'Accept' (if needed)
177
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
178
+ header_params[:'X-Account-Token'] = x_account_token
179
+
180
+ # form parameters
181
+ form_params = opts[:form_params] || {}
182
+
183
+ # http body (model)
184
+ post_body = opts[:debug_body]
185
+
186
+ # return_type
187
+ return_type = opts[:debug_return_type] || 'PaginatedTimesheetEntryList'
188
+
189
+ # auth_names
190
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
191
+
192
+ new_options = opts.merge(
193
+ :operation => :"TimesheetEntriesApi.timesheet_entries_list",
194
+ :header_params => header_params,
195
+ :query_params => query_params,
196
+ :form_params => form_params,
197
+ :body => post_body,
198
+ :auth_names => auth_names,
199
+ :return_type => return_type
200
+ )
201
+
202
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
203
+ if @api_client.config.debugging
204
+ @api_client.config.logger.debug "API called: TimesheetEntriesApi#timesheet_entries_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
205
+ end
206
+ return data, status_code, headers
207
+ end
208
+
209
+ # Returns metadata for `TimesheetEntry` POSTs.
210
+ # @param x_account_token [String] Token identifying the end user.
211
+ # @param [Hash] opts the optional parameters
212
+ # @return [MetaResponse]
213
+ def timesheet_entries_meta_post_retrieve(x_account_token, opts = {})
214
+ data, _status_code, _headers = timesheet_entries_meta_post_retrieve_with_http_info(x_account_token, opts)
215
+ data
216
+ end
217
+
218
+ # Returns metadata for &#x60;TimesheetEntry&#x60; POSTs.
219
+ # @param x_account_token [String] Token identifying the end user.
220
+ # @param [Hash] opts the optional parameters
221
+ # @return [Array<(MetaResponse, Integer, Hash)>] MetaResponse data, response status code and response headers
222
+ def timesheet_entries_meta_post_retrieve_with_http_info(x_account_token, opts = {})
223
+ if @api_client.config.debugging
224
+ @api_client.config.logger.debug 'Calling API: TimesheetEntriesApi.timesheet_entries_meta_post_retrieve ...'
225
+ end
226
+ # verify the required parameter 'x_account_token' is set
227
+ if @api_client.config.client_side_validation && x_account_token.nil?
228
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling TimesheetEntriesApi.timesheet_entries_meta_post_retrieve"
229
+ end
230
+ # resource path
231
+ local_var_path = '/timesheet-entries/meta/post'
232
+
233
+ # query parameters
234
+ query_params = opts[:query_params] || {}
235
+
236
+ # header parameters
237
+ header_params = opts[:header_params] || {}
238
+ # HTTP header 'Accept' (if needed)
239
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
240
+ header_params[:'X-Account-Token'] = x_account_token
241
+
242
+ # form parameters
243
+ form_params = opts[:form_params] || {}
244
+
245
+ # http body (model)
246
+ post_body = opts[:debug_body]
247
+
248
+ # return_type
249
+ return_type = opts[:debug_return_type] || 'MetaResponse'
250
+
251
+ # auth_names
252
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
253
+
254
+ new_options = opts.merge(
255
+ :operation => :"TimesheetEntriesApi.timesheet_entries_meta_post_retrieve",
256
+ :header_params => header_params,
257
+ :query_params => query_params,
258
+ :form_params => form_params,
259
+ :body => post_body,
260
+ :auth_names => auth_names,
261
+ :return_type => return_type
262
+ )
263
+
264
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
265
+ if @api_client.config.debugging
266
+ @api_client.config.logger.debug "API called: TimesheetEntriesApi#timesheet_entries_meta_post_retrieve\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
267
+ end
268
+ return data, status_code, headers
269
+ end
270
+
271
+ # Returns a `TimesheetEntry` object with the given `id`.
272
+ # @param x_account_token [String] Token identifying the end user.
273
+ # @param id [String]
274
+ # @param [Hash] opts the optional parameters
275
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
276
+ # @return [TimesheetEntry]
277
+ def timesheet_entries_retrieve(x_account_token, id, opts = {})
278
+ data, _status_code, _headers = timesheet_entries_retrieve_with_http_info(x_account_token, id, opts)
279
+ data
280
+ end
281
+
282
+ # Returns a &#x60;TimesheetEntry&#x60; object with the given &#x60;id&#x60;.
283
+ # @param x_account_token [String] Token identifying the end user.
284
+ # @param id [String]
285
+ # @param [Hash] opts the optional parameters
286
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
287
+ # @return [Array<(TimesheetEntry, Integer, Hash)>] TimesheetEntry data, response status code and response headers
288
+ def timesheet_entries_retrieve_with_http_info(x_account_token, id, opts = {})
289
+ if @api_client.config.debugging
290
+ @api_client.config.logger.debug 'Calling API: TimesheetEntriesApi.timesheet_entries_retrieve ...'
291
+ end
292
+ # verify the required parameter 'x_account_token' is set
293
+ if @api_client.config.client_side_validation && x_account_token.nil?
294
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling TimesheetEntriesApi.timesheet_entries_retrieve"
295
+ end
296
+ # verify the required parameter 'id' is set
297
+ if @api_client.config.client_side_validation && id.nil?
298
+ fail ArgumentError, "Missing the required parameter 'id' when calling TimesheetEntriesApi.timesheet_entries_retrieve"
299
+ end
300
+ # resource path
301
+ local_var_path = '/timesheet-entries/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
302
+
303
+ # query parameters
304
+ query_params = opts[:query_params] || {}
305
+ query_params[:'include_remote_data'] = opts[:'include_remote_data'] if !opts[:'include_remote_data'].nil?
306
+
307
+ # header parameters
308
+ header_params = opts[:header_params] || {}
309
+ # HTTP header 'Accept' (if needed)
310
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
311
+ header_params[:'X-Account-Token'] = x_account_token
312
+
313
+ # form parameters
314
+ form_params = opts[:form_params] || {}
315
+
316
+ # http body (model)
317
+ post_body = opts[:debug_body]
318
+
319
+ # return_type
320
+ return_type = opts[:debug_return_type] || 'TimesheetEntry'
321
+
322
+ # auth_names
323
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
324
+
325
+ new_options = opts.merge(
326
+ :operation => :"TimesheetEntriesApi.timesheet_entries_retrieve",
327
+ :header_params => header_params,
328
+ :query_params => query_params,
329
+ :form_params => form_params,
330
+ :body => post_body,
331
+ :auth_names => auth_names,
332
+ :return_type => return_type
333
+ )
334
+
335
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
336
+ if @api_client.config.debugging
337
+ @api_client.config.logger.debug "API called: TimesheetEntriesApi#timesheet_entries_retrieve\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
338
+ end
339
+ return data, status_code, headers
340
+ end
341
+ end
342
+ end
@@ -235,6 +235,10 @@ module MergeHRISClient
235
235
  {
236
236
  url: "https://api-sandbox.merge.dev/api/hris/v1",
237
237
  description: "Sandbox",
238
+ },
239
+ {
240
+ url: "https://api-eu.merge.dev/api/hris/v1",
241
+ description: "Production EU",
238
242
  }
239
243
  ]
240
244
  end
@@ -36,6 +36,8 @@ module MergeHRISClient
36
36
  # Whether a Production Linked Account's credentials match another existing Production Linked Account. This field is `null` for Test Linked Accounts, incomplete Production Linked Accounts, and ignored duplicate Production Linked Account sets.
37
37
  attr_accessor :is_duplicate
38
38
 
39
+ attr_accessor :account_type
40
+
39
41
  # Attribute mapping from ruby-style variable name to JSON key.
40
42
  def self.attribute_map
41
43
  {
@@ -48,7 +50,8 @@ module MergeHRISClient
48
50
  :'end_user_email_address' => :'end_user_email_address',
49
51
  :'status' => :'status',
50
52
  :'webhook_listener_url' => :'webhook_listener_url',
51
- :'is_duplicate' => :'is_duplicate'
53
+ :'is_duplicate' => :'is_duplicate',
54
+ :'account_type' => :'account_type'
52
55
  }
53
56
  end
54
57
 
@@ -69,7 +72,8 @@ module MergeHRISClient
69
72
  :'end_user_email_address' => :'String',
70
73
  :'status' => :'String',
71
74
  :'webhook_listener_url' => :'String',
72
- :'is_duplicate' => :'Boolean'
75
+ :'is_duplicate' => :'Boolean',
76
+ :'account_type' => :'String'
73
77
  }
74
78
  end
75
79
 
@@ -77,7 +81,7 @@ module MergeHRISClient
77
81
  def self.openapi_nullable
78
82
  Set.new([
79
83
  :'category',
80
- :'is_duplicate'
84
+ :'is_duplicate',
81
85
  ])
82
86
  end
83
87
 
@@ -135,6 +139,10 @@ module MergeHRISClient
135
139
  if attributes.key?(:'is_duplicate')
136
140
  self.is_duplicate = attributes[:'is_duplicate']
137
141
  end
142
+
143
+ if attributes.key?(:'account_type')
144
+ self.account_type = attributes[:'account_type']
145
+ end
138
146
  end
139
147
 
140
148
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -164,7 +172,8 @@ module MergeHRISClient
164
172
  end_user_email_address == o.end_user_email_address &&
165
173
  status == o.status &&
166
174
  webhook_listener_url == o.webhook_listener_url &&
167
- is_duplicate == o.is_duplicate
175
+ is_duplicate == o.is_duplicate &&
176
+ account_type == o.account_type
168
177
  end
169
178
 
170
179
  # @see the `==` method
@@ -176,7 +185,7 @@ module MergeHRISClient
176
185
  # Calculates hash code according to all attributes.
177
186
  # @return [Integer] Hash code
178
187
  def hash
179
- [id, integration, integration_slug, category, end_user_origin_id, end_user_organization_name, end_user_email_address, status, webhook_listener_url, is_duplicate].hash
188
+ [id, integration, integration_slug, category, end_user_origin_id, end_user_organization_name, end_user_email_address, status, webhook_listener_url, is_duplicate, account_type].hash
180
189
  end
181
190
 
182
191
  # Builds the object from hash
@@ -30,6 +30,9 @@ module MergeHRISClient
30
30
 
31
31
  attr_accessor :end_user_email_address
32
32
 
33
+ # The tenant or domain the customer has provided access to.
34
+ attr_accessor :subdomain
35
+
33
36
  attr_accessor :webhook_listener_url
34
37
 
35
38
  # Whether a Production Linked Account's credentials match another existing Production Linked Account. This field is `null` for Test Linked Accounts, incomplete Production Linked Accounts, and ignored duplicate Production Linked Account sets.
@@ -37,6 +40,8 @@ module MergeHRISClient
37
40
 
38
41
  attr_accessor :integration
39
42
 
43
+ attr_accessor :account_type
44
+
40
45
  # Attribute mapping from ruby-style variable name to JSON key.
41
46
  def self.attribute_map
42
47
  {
@@ -47,9 +52,11 @@ module MergeHRISClient
47
52
  :'end_user_origin_id' => :'end_user_origin_id',
48
53
  :'end_user_organization_name' => :'end_user_organization_name',
49
54
  :'end_user_email_address' => :'end_user_email_address',
55
+ :'subdomain' => :'subdomain',
50
56
  :'webhook_listener_url' => :'webhook_listener_url',
51
57
  :'is_duplicate' => :'is_duplicate',
52
- :'integration' => :'integration'
58
+ :'integration' => :'integration',
59
+ :'account_type' => :'account_type'
53
60
  }
54
61
  end
55
62
 
@@ -68,9 +75,11 @@ module MergeHRISClient
68
75
  :'end_user_origin_id' => :'String',
69
76
  :'end_user_organization_name' => :'String',
70
77
  :'end_user_email_address' => :'String',
78
+ :'subdomain' => :'String',
71
79
  :'webhook_listener_url' => :'String',
72
80
  :'is_duplicate' => :'Boolean',
73
- :'integration' => :'AccountDetailsAndActionsIntegration'
81
+ :'integration' => :'AccountDetailsAndActionsIntegration',
82
+ :'account_type' => :'String'
74
83
  }
75
84
  end
76
85
 
@@ -124,6 +133,10 @@ module MergeHRISClient
124
133
  self.end_user_email_address = attributes[:'end_user_email_address']
125
134
  end
126
135
 
136
+ if attributes.key?(:'subdomain')
137
+ self.subdomain = attributes[:'subdomain']
138
+ end
139
+
127
140
  if attributes.key?(:'webhook_listener_url')
128
141
  self.webhook_listener_url = attributes[:'webhook_listener_url']
129
142
  end
@@ -135,6 +148,10 @@ module MergeHRISClient
135
148
  if attributes.key?(:'integration')
136
149
  self.integration = attributes[:'integration']
137
150
  end
151
+
152
+ if attributes.key?(:'account_type')
153
+ self.account_type = attributes[:'account_type']
154
+ end
138
155
  end
139
156
 
140
157
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -161,6 +178,10 @@ module MergeHRISClient
161
178
  invalid_properties.push('invalid value for "webhook_listener_url", webhook_listener_url cannot be nil.')
162
179
  end
163
180
 
181
+ if @account_type.nil?
182
+ invalid_properties.push('invalid value for "account_type", account_type cannot be nil.')
183
+ end
184
+
164
185
  invalid_properties
165
186
  end
166
187
 
@@ -172,6 +193,7 @@ module MergeHRISClient
172
193
  return false if @end_user_organization_name.nil?
173
194
  return false if @end_user_email_address.nil?
174
195
  return false if @webhook_listener_url.nil?
196
+ return false if @account_type.nil?
175
197
  true
176
198
  end
177
199
 
@@ -187,9 +209,11 @@ module MergeHRISClient
187
209
  end_user_origin_id == o.end_user_origin_id &&
188
210
  end_user_organization_name == o.end_user_organization_name &&
189
211
  end_user_email_address == o.end_user_email_address &&
212
+ subdomain == o.subdomain &&
190
213
  webhook_listener_url == o.webhook_listener_url &&
191
214
  is_duplicate == o.is_duplicate &&
192
- integration == o.integration
215
+ integration == o.integration &&
216
+ account_type == o.account_type
193
217
  end
194
218
 
195
219
  # @see the `==` method
@@ -201,7 +225,7 @@ module MergeHRISClient
201
225
  # Calculates hash code according to all attributes.
202
226
  # @return [Integer] Hash code
203
227
  def hash
204
- [id, category, status, status_detail, end_user_origin_id, end_user_organization_name, end_user_email_address, webhook_listener_url, is_duplicate, integration].hash
228
+ [id, category, status, status_detail, end_user_origin_id, end_user_organization_name, end_user_email_address, subdomain, webhook_listener_url, is_duplicate, integration, account_type].hash
205
229
  end
206
230
 
207
231
  # Builds the object from hash
@@ -18,6 +18,9 @@ module MergeHRISClient
18
18
  # Company name.
19
19
  attr_accessor :name
20
20
 
21
+ # Optional. This shortened name appears in places with limited space, usually in conjunction with the platform's logo (e.g., Merge Link menu).<br><br>Example: <i>Workforce Now (in lieu of ADP Workforce Now), SuccessFactors (in lieu of SAP SuccessFactors)</i>
22
+ attr_accessor :abbreviated_name
23
+
21
24
  # Category or categories this integration belongs to. Multiple categories should be comma separated, i.e. [ats, hris].
22
25
  attr_accessor :categories
23
26
 
@@ -32,23 +35,28 @@ module MergeHRISClient
32
35
 
33
36
  attr_accessor :slug
34
37
 
35
- # If checked, this integration will not appear in the linking flow, and will appear elsewhere with a Beta tag.
36
- attr_accessor :is_in_beta
37
-
38
38
  # Mapping of API endpoints to documentation urls for support. Example: {'GET': [['/common-model-scopes', 'https://docs.merge.dev/accounting/common-model-scopes/#common_model_scopes_retrieve'],['/common-model-actions', 'https://docs.merge.dev/accounting/common-model-actions/#common_model_actions_retrieve']], 'POST': []}
39
39
  attr_accessor :api_endpoints_to_documentation_urls
40
40
 
41
+ # Setup guide URL for third party webhook creation. Exposed in Merge Docs.
42
+ attr_accessor :webhook_setup_guide_url
43
+
44
+ # Category or categories this integration is in beta status for.
45
+ attr_accessor :category_beta_status
46
+
41
47
  # Attribute mapping from ruby-style variable name to JSON key.
42
48
  def self.attribute_map
43
49
  {
44
50
  :'name' => :'name',
51
+ :'abbreviated_name' => :'abbreviated_name',
45
52
  :'categories' => :'categories',
46
53
  :'image' => :'image',
47
54
  :'square_image' => :'square_image',
48
55
  :'color' => :'color',
49
56
  :'slug' => :'slug',
50
- :'is_in_beta' => :'is_in_beta',
51
- :'api_endpoints_to_documentation_urls' => :'api_endpoints_to_documentation_urls'
57
+ :'api_endpoints_to_documentation_urls' => :'api_endpoints_to_documentation_urls',
58
+ :'webhook_setup_guide_url' => :'webhook_setup_guide_url',
59
+ :'category_beta_status' => :'category_beta_status'
52
60
  }
53
61
  end
54
62
 
@@ -61,21 +69,25 @@ module MergeHRISClient
61
69
  def self.openapi_types
62
70
  {
63
71
  :'name' => :'String',
72
+ :'abbreviated_name' => :'String',
64
73
  :'categories' => :'Array<CategoriesEnum>',
65
74
  :'image' => :'String',
66
75
  :'square_image' => :'String',
67
76
  :'color' => :'String',
68
77
  :'slug' => :'String',
69
- :'is_in_beta' => :'Boolean',
70
- :'api_endpoints_to_documentation_urls' => :'Hash<String, Object>'
78
+ :'api_endpoints_to_documentation_urls' => :'Hash<String, Object>',
79
+ :'webhook_setup_guide_url' => :'String',
80
+ :'category_beta_status' => :'Object'
71
81
  }
72
82
  end
73
83
 
74
84
  # List of attributes with nullable: true
75
85
  def self.openapi_nullable
76
86
  Set.new([
87
+ :'abbreviated_name',
77
88
  :'image',
78
89
  :'square_image',
90
+ :'webhook_setup_guide_url',
79
91
  ])
80
92
  end
81
93
 
@@ -98,6 +110,10 @@ module MergeHRISClient
98
110
  self.name = attributes[:'name']
99
111
  end
100
112
 
113
+ if attributes.key?(:'abbreviated_name')
114
+ self.abbreviated_name = attributes[:'abbreviated_name']
115
+ end
116
+
101
117
  if attributes.key?(:'categories')
102
118
  if (value = attributes[:'categories']).is_a?(Array)
103
119
  self.categories = value
@@ -120,15 +136,19 @@ module MergeHRISClient
120
136
  self.slug = attributes[:'slug']
121
137
  end
122
138
 
123
- if attributes.key?(:'is_in_beta')
124
- self.is_in_beta = attributes[:'is_in_beta']
125
- end
126
-
127
139
  if attributes.key?(:'api_endpoints_to_documentation_urls')
128
140
  if (value = attributes[:'api_endpoints_to_documentation_urls']).is_a?(Hash)
129
141
  self.api_endpoints_to_documentation_urls = value
130
142
  end
131
143
  end
144
+
145
+ if attributes.key?(:'webhook_setup_guide_url')
146
+ self.webhook_setup_guide_url = attributes[:'webhook_setup_guide_url']
147
+ end
148
+
149
+ if attributes.key?(:'category_beta_status')
150
+ self.category_beta_status = attributes[:'category_beta_status']
151
+ end
132
152
  end
133
153
 
134
154
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -181,13 +201,15 @@ module MergeHRISClient
181
201
  return true if self.equal?(o)
182
202
  self.class == o.class &&
183
203
  name == o.name &&
204
+ abbreviated_name == o.abbreviated_name &&
184
205
  categories == o.categories &&
185
206
  image == o.image &&
186
207
  square_image == o.square_image &&
187
208
  color == o.color &&
188
209
  slug == o.slug &&
189
- is_in_beta == o.is_in_beta &&
190
- api_endpoints_to_documentation_urls == o.api_endpoints_to_documentation_urls
210
+ api_endpoints_to_documentation_urls == o.api_endpoints_to_documentation_urls &&
211
+ webhook_setup_guide_url == o.webhook_setup_guide_url &&
212
+ category_beta_status == o.category_beta_status
191
213
  end
192
214
 
193
215
  # @see the `==` method
@@ -199,7 +221,7 @@ module MergeHRISClient
199
221
  # Calculates hash code according to all attributes.
200
222
  # @return [Integer] Hash code
201
223
  def hash
202
- [name, categories, image, square_image, color, slug, is_in_beta, api_endpoints_to_documentation_urls].hash
224
+ [name, abbreviated_name, categories, image, square_image, color, slug, api_endpoints_to_documentation_urls, webhook_setup_guide_url, category_beta_status].hash
203
225
  end
204
226
 
205
227
  # Builds the object from hash