merge_ats_client 3.0.0 → 3.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (188) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +186 -179
  3. data/docs/AccountIntegration.md +6 -2
  4. data/docs/ActivitiesApi.md +164 -8
  5. data/docs/Activity.md +12 -6
  6. data/docs/ActivityEndpointRequest.md +20 -0
  7. data/docs/ActivityRequest.md +32 -0
  8. data/docs/ActivityResponse.md +24 -0
  9. data/docs/Application.md +12 -10
  10. data/docs/ApplicationRequest.md +5 -9
  11. data/docs/ApplicationsApi.md +4 -4
  12. data/docs/Attachment.md +8 -4
  13. data/docs/AttachmentRequest.md +1 -3
  14. data/docs/AttachmentsApi.md +13 -9
  15. data/docs/Candidate.md +8 -6
  16. data/docs/CandidateRequest.md +1 -9
  17. data/docs/CandidatesApi.md +16 -13
  18. data/docs/CommonModelScopesBodyRequest.md +22 -0
  19. data/docs/ConditionSchema.md +1 -1
  20. data/docs/DataPassthroughRequest.md +1 -1
  21. data/docs/Department.md +7 -3
  22. data/docs/DepartmentsApi.md +4 -4
  23. data/docs/EEOC.md +12 -8
  24. data/docs/EeocsApi.md +13 -9
  25. data/docs/EmailAddress.md +4 -2
  26. data/docs/EmailAddressRequest.md +1 -1
  27. data/docs/EnabledActionsEnum.md +15 -0
  28. data/docs/EndUserDetailsRequest.md +3 -1
  29. data/docs/ForceResyncApi.md +1 -1
  30. data/docs/InterviewsApi.md +165 -9
  31. data/docs/Issue.md +10 -8
  32. data/docs/IssuesApi.md +6 -6
  33. data/docs/Job.md +8 -4
  34. data/docs/JobInterviewStage.md +10 -4
  35. data/docs/JobInterviewStagesApi.md +4 -4
  36. data/docs/JobsApi.md +16 -10
  37. data/docs/LinkToken.md +1 -1
  38. data/docs/LinkedAccountsApi.md +2 -2
  39. data/docs/MetaResponse.md +2 -0
  40. data/docs/MultipartFormFieldRequest.md +1 -1
  41. data/docs/Offer.md +10 -6
  42. data/docs/OffersApi.md +13 -9
  43. data/docs/Office.md +7 -3
  44. data/docs/OfficesApi.md +4 -4
  45. data/docs/PaginatedConditionSchemaList.md +2 -2
  46. data/docs/PhoneNumber.md +4 -2
  47. data/docs/PhoneNumberRequest.md +1 -1
  48. data/docs/RejectReason.md +7 -3
  49. data/docs/RejectReasonsApi.md +4 -4
  50. data/docs/RemoteUser.md +8 -4
  51. data/docs/ScheduledInterview.md +11 -7
  52. data/docs/ScheduledInterviewEndpointRequest.md +20 -0
  53. data/docs/ScheduledInterviewRequest.md +36 -0
  54. data/docs/ScheduledInterviewResponse.md +24 -0
  55. data/docs/Scorecard.md +11 -7
  56. data/docs/ScorecardsApi.md +13 -9
  57. data/docs/SelectiveSyncApi.md +2 -2
  58. data/docs/SelectiveSyncConfigurationsUsageEnum.md +15 -0
  59. data/docs/SyncStatus.md +3 -1
  60. data/docs/SyncStatusApi.md +1 -1
  61. data/docs/Tag.md +7 -3
  62. data/docs/TagsApi.md +4 -4
  63. data/docs/Url.md +4 -2
  64. data/docs/UrlRequest.md +1 -1
  65. data/docs/UsersApi.md +13 -9
  66. data/lib/merge_ats_client/api/activities_api.rb +160 -8
  67. data/lib/merge_ats_client/api/applications_api.rb +4 -4
  68. data/lib/merge_ats_client/api/attachments_api.rb +22 -8
  69. data/lib/merge_ats_client/api/candidates_api.rb +15 -11
  70. data/lib/merge_ats_client/api/departments_api.rb +4 -4
  71. data/lib/merge_ats_client/api/eeocs_api.rb +22 -8
  72. data/lib/merge_ats_client/api/force_resync_api.rb +2 -2
  73. data/lib/merge_ats_client/api/interviews_api.rb +160 -8
  74. data/lib/merge_ats_client/api/issues_api.rb +6 -6
  75. data/lib/merge_ats_client/api/job_interview_stages_api.rb +4 -4
  76. data/lib/merge_ats_client/api/jobs_api.rb +27 -10
  77. data/lib/merge_ats_client/api/linked_accounts_api.rb +3 -3
  78. data/lib/merge_ats_client/api/offers_api.rb +22 -8
  79. data/lib/merge_ats_client/api/offices_api.rb +4 -4
  80. data/lib/merge_ats_client/api/reject_reasons_api.rb +4 -4
  81. data/lib/merge_ats_client/api/scorecards_api.rb +22 -8
  82. data/lib/merge_ats_client/api/selective_sync_api.rb +2 -2
  83. data/lib/merge_ats_client/api/sync_status_api.rb +2 -2
  84. data/lib/merge_ats_client/api/tags_api.rb +4 -4
  85. data/lib/merge_ats_client/api/users_api.rb +22 -8
  86. data/lib/merge_ats_client/models/account_integration.rb +30 -8
  87. data/lib/merge_ats_client/models/activity.rb +50 -16
  88. data/lib/merge_ats_client/models/activity_endpoint_request.rb +237 -0
  89. data/lib/merge_ats_client/models/activity_request.rb +300 -0
  90. data/lib/merge_ats_client/models/activity_response.rb +266 -0
  91. data/lib/merge_ats_client/models/application.rb +40 -26
  92. data/lib/merge_ats_client/models/application_request.rb +7 -26
  93. data/lib/merge_ats_client/models/attachment.rb +38 -16
  94. data/lib/merge_ats_client/models/attachment_request.rb +3 -14
  95. data/lib/merge_ats_client/models/candidate.rb +36 -27
  96. data/lib/merge_ats_client/models/candidate_request.rb +3 -49
  97. data/lib/merge_ats_client/models/categories_enum.rb +3 -1
  98. data/lib/merge_ats_client/models/category_enum.rb +3 -1
  99. data/lib/merge_ats_client/models/common_model_scopes_body_request.rb +274 -0
  100. data/lib/merge_ats_client/models/condition_schema.rb +1 -0
  101. data/lib/merge_ats_client/models/data_passthrough_request.rb +1 -0
  102. data/lib/merge_ats_client/models/department.rb +36 -14
  103. data/lib/merge_ats_client/models/eeoc.rb +42 -19
  104. data/lib/merge_ats_client/models/email_address.rb +16 -6
  105. data/lib/merge_ats_client/models/email_address_request.rb +1 -1
  106. data/lib/merge_ats_client/models/enabled_actions_enum.rb +45 -0
  107. data/lib/merge_ats_client/models/end_user_details_request.rb +18 -5
  108. data/lib/merge_ats_client/models/issue.rb +16 -4
  109. data/lib/merge_ats_client/models/job.rb +38 -16
  110. data/lib/merge_ats_client/models/job_interview_stage.rb +72 -15
  111. data/lib/merge_ats_client/models/link_token.rb +0 -5
  112. data/lib/merge_ats_client/models/meta_response.rb +12 -1
  113. data/lib/merge_ats_client/models/multipart_form_field_request.rb +1 -1
  114. data/lib/merge_ats_client/models/offer.rb +40 -16
  115. data/lib/merge_ats_client/models/office.rb +37 -15
  116. data/lib/merge_ats_client/models/phone_number.rb +16 -6
  117. data/lib/merge_ats_client/models/phone_number_request.rb +1 -1
  118. data/lib/merge_ats_client/models/reject_reason.rb +37 -15
  119. data/lib/merge_ats_client/models/remote_user.rb +38 -16
  120. data/lib/merge_ats_client/models/scheduled_interview.rb +41 -16
  121. data/lib/merge_ats_client/models/scheduled_interview_endpoint_request.rb +237 -0
  122. data/lib/merge_ats_client/models/scheduled_interview_request.rb +323 -0
  123. data/lib/merge_ats_client/models/scheduled_interview_response.rb +266 -0
  124. data/lib/merge_ats_client/models/scorecard.rb +41 -16
  125. data/lib/merge_ats_client/models/selective_sync_configurations_usage_enum.rb +45 -0
  126. data/lib/merge_ats_client/models/sync_status.rb +13 -4
  127. data/lib/merge_ats_client/models/sync_status_status_enum.rb +2 -1
  128. data/lib/merge_ats_client/models/tag.rb +36 -14
  129. data/lib/merge_ats_client/models/url.rb +16 -6
  130. data/lib/merge_ats_client/models/url_request.rb +1 -1
  131. data/lib/merge_ats_client/version.rb +1 -1
  132. data/lib/merge_ats_client.rb +9 -1
  133. data/spec/api/activities_api_spec.rb +31 -4
  134. data/spec/api/applications_api_spec.rb +2 -2
  135. data/spec/api/attachments_api_spec.rb +6 -4
  136. data/spec/api/candidates_api_spec.rb +5 -3
  137. data/spec/api/departments_api_spec.rb +2 -2
  138. data/spec/api/eeocs_api_spec.rb +6 -4
  139. data/spec/api/force_resync_api_spec.rb +1 -1
  140. data/spec/api/interviews_api_spec.rb +31 -4
  141. data/spec/api/issues_api_spec.rb +3 -3
  142. data/spec/api/job_interview_stages_api_spec.rb +2 -2
  143. data/spec/api/jobs_api_spec.rb +8 -5
  144. data/spec/api/linked_accounts_api_spec.rb +1 -1
  145. data/spec/api/offers_api_spec.rb +6 -4
  146. data/spec/api/offices_api_spec.rb +2 -2
  147. data/spec/api/reject_reasons_api_spec.rb +2 -2
  148. data/spec/api/scorecards_api_spec.rb +6 -4
  149. data/spec/api/selective_sync_api_spec.rb +1 -1
  150. data/spec/api/sync_status_api_spec.rb +1 -1
  151. data/spec/api/tags_api_spec.rb +2 -2
  152. data/spec/api/users_api_spec.rb +6 -4
  153. data/spec/models/account_integration_spec.rb +12 -0
  154. data/spec/models/{ignore_common_model_spec.rb → activity_endpoint_request_spec.rb} +8 -8
  155. data/spec/models/activity_request_spec.rb +76 -0
  156. data/spec/models/activity_response_spec.rb +52 -0
  157. data/spec/models/activity_spec.rb +19 -1
  158. data/spec/models/application_request_spec.rb +0 -12
  159. data/spec/models/application_spec.rb +9 -3
  160. data/spec/models/attachment_request_spec.rb +0 -6
  161. data/spec/models/attachment_spec.rb +14 -2
  162. data/spec/models/candidate_request_spec.rb +0 -24
  163. data/spec/models/candidate_spec.rb +9 -3
  164. data/spec/models/common_model_scopes_body_request_spec.rb +46 -0
  165. data/spec/models/department_spec.rb +14 -2
  166. data/spec/models/eeoc_spec.rb +14 -2
  167. data/spec/models/email_address_spec.rb +6 -0
  168. data/spec/models/enabled_actions_enum_spec.rb +28 -0
  169. data/spec/models/end_user_details_request_spec.rb +6 -0
  170. data/spec/models/issue_spec.rb +6 -0
  171. data/spec/models/job_interview_stage_spec.rb +19 -1
  172. data/spec/models/job_spec.rb +14 -2
  173. data/spec/models/meta_response_spec.rb +6 -0
  174. data/spec/models/offer_spec.rb +14 -2
  175. data/spec/models/office_spec.rb +14 -2
  176. data/spec/models/phone_number_spec.rb +6 -0
  177. data/spec/models/reject_reason_spec.rb +14 -2
  178. data/spec/models/remote_user_spec.rb +14 -2
  179. data/spec/models/{remote_data_request_spec.rb → scheduled_interview_endpoint_request_spec.rb} +8 -8
  180. data/spec/models/scheduled_interview_request_spec.rb +88 -0
  181. data/spec/models/scheduled_interview_response_spec.rb +52 -0
  182. data/spec/models/scheduled_interview_spec.rb +14 -2
  183. data/spec/models/scorecard_spec.rb +14 -2
  184. data/spec/models/selective_sync_configurations_usage_enum_spec.rb +28 -0
  185. data/spec/models/sync_status_spec.rb +6 -0
  186. data/spec/models/tag_spec.rb +14 -2
  187. data/spec/models/url_spec.rb +6 -0
  188. metadata +156 -124
@@ -14,11 +14,8 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module MergeATSClient
17
- # # The Attachment Object ### Description The `Attachment` object is used to represent a attachment for a candidate. ### Usage Example Fetch from the `LIST Attachments` endpoint and view attachments accessible by a company.
17
+ # # The Attachment Object ### Description The `Attachment` object is used to represent a file attached to a candidate. ### Usage Example Fetch from the `LIST Attachments` endpoint and view attachments accessible by a company.
18
18
  class AttachmentRequest
19
- # The third-party API ID of the matching object.
20
- attr_accessor :remote_id
21
-
22
19
  # The attachment's name.
23
20
  attr_accessor :file_name
24
21
 
@@ -27,7 +24,7 @@ module MergeATSClient
27
24
 
28
25
  attr_accessor :candidate
29
26
 
30
- # The attachment's type.
27
+ # The attachment's type. * `RESUME` - RESUME * `COVER_LETTER` - COVER_LETTER * `OFFER_LETTER` - OFFER_LETTER * `OTHER` - OTHER
31
28
  attr_accessor :attachment_type
32
29
 
33
30
  attr_accessor :integration_params
@@ -37,7 +34,6 @@ module MergeATSClient
37
34
  # Attribute mapping from ruby-style variable name to JSON key.
38
35
  def self.attribute_map
39
36
  {
40
- :'remote_id' => :'remote_id',
41
37
  :'file_name' => :'file_name',
42
38
  :'file_url' => :'file_url',
43
39
  :'candidate' => :'candidate',
@@ -55,7 +51,6 @@ module MergeATSClient
55
51
  # Attribute type mapping.
56
52
  def self.openapi_types
57
53
  {
58
- :'remote_id' => :'String',
59
54
  :'file_name' => :'String',
60
55
  :'file_url' => :'String',
61
56
  :'candidate' => :'String',
@@ -68,7 +63,6 @@ module MergeATSClient
68
63
  # List of attributes with nullable: true
69
64
  def self.openapi_nullable
70
65
  Set.new([
71
- :'remote_id',
72
66
  :'file_name',
73
67
  :'file_url',
74
68
  :'candidate',
@@ -93,10 +87,6 @@ module MergeATSClient
93
87
  h[k.to_sym] = v
94
88
  }
95
89
 
96
- if attributes.key?(:'remote_id')
97
- self.remote_id = attributes[:'remote_id']
98
- end
99
-
100
90
  if attributes.key?(:'file_name')
101
91
  self.file_name = attributes[:'file_name']
102
92
  end
@@ -159,7 +149,6 @@ module MergeATSClient
159
149
  def ==(o)
160
150
  return true if self.equal?(o)
161
151
  self.class == o.class &&
162
- remote_id == o.remote_id &&
163
152
  file_name == o.file_name &&
164
153
  file_url == o.file_url &&
165
154
  candidate == o.candidate &&
@@ -177,7 +166,7 @@ module MergeATSClient
177
166
  # Calculates hash code according to all attributes.
178
167
  # @return [Integer] Hash code
179
168
  def hash
180
- [remote_id, file_name, file_url, candidate, attachment_type, integration_params, linked_account_params].hash
169
+ [file_name, file_url, candidate, attachment_type, integration_params, linked_account_params].hash
181
170
  end
182
171
 
183
172
  # Builds the object from hash
@@ -14,7 +14,7 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module MergeATSClient
17
- # # The Candidate Object ### Description The `Candidate` object is used to represent a Candidate for various positions. ### Usage Example Fetch from the `LIST Candidates` endpoint and filter by `ID` to show all candidates.
17
+ # # The Candidate Object ### Description The `Candidate` object is used to represent profile information about a given Candidate. Because it is specific to a Candidate, this information stays constant across applications. ### Usage Example Fetch from the `LIST Candidates` endpoint and filter by `ID` to show all candidates.
18
18
  class Candidate
19
19
  attr_accessor :id
20
20
 
@@ -39,7 +39,7 @@ module MergeATSClient
39
39
  # When the third party's candidate was updated.
40
40
  attr_accessor :remote_updated_at
41
41
 
42
- # When the most recent candidate interaction occurred.
42
+ # When the most recent interaction with the candidate occurred.
43
43
  attr_accessor :last_interaction_at
44
44
 
45
45
  # Whether or not the candidate is private.
@@ -66,12 +66,14 @@ module MergeATSClient
66
66
  # Array of `Attachment` object IDs.
67
67
  attr_accessor :attachments
68
68
 
69
- attr_accessor :remote_data
69
+ attr_accessor :remote_was_deleted
70
70
 
71
- # Custom fields configured for a given model.
72
- attr_accessor :custom_fields
71
+ attr_accessor :field_mappings
73
72
 
74
- attr_accessor :remote_was_deleted
73
+ # This is the datetime that this object was last updated by Merge
74
+ attr_accessor :modified_at
75
+
76
+ attr_accessor :remote_data
75
77
 
76
78
  # Attribute mapping from ruby-style variable name to JSON key.
77
79
  def self.attribute_map
@@ -94,9 +96,10 @@ module MergeATSClient
94
96
  :'tags' => :'tags',
95
97
  :'applications' => :'applications',
96
98
  :'attachments' => :'attachments',
97
- :'remote_data' => :'remote_data',
98
- :'custom_fields' => :'custom_fields',
99
- :'remote_was_deleted' => :'remote_was_deleted'
99
+ :'remote_was_deleted' => :'remote_was_deleted',
100
+ :'field_mappings' => :'field_mappings',
101
+ :'modified_at' => :'modified_at',
102
+ :'remote_data' => :'remote_data'
100
103
  }
101
104
  end
102
105
 
@@ -126,9 +129,10 @@ module MergeATSClient
126
129
  :'tags' => :'Array<String>',
127
130
  :'applications' => :'Array<String>',
128
131
  :'attachments' => :'Array<String>',
129
- :'remote_data' => :'Array<RemoteData>',
130
- :'custom_fields' => :'Hash<String, Object>',
131
- :'remote_was_deleted' => :'Boolean'
132
+ :'remote_was_deleted' => :'Boolean',
133
+ :'field_mappings' => :'Hash<String, Object>',
134
+ :'modified_at' => :'Time',
135
+ :'remote_data' => :'Array<RemoteData>'
132
136
  }
133
137
  end
134
138
 
@@ -146,8 +150,8 @@ module MergeATSClient
146
150
  :'is_private',
147
151
  :'can_email',
148
152
  :'locations',
149
- :'remote_data',
150
- :'custom_fields',
153
+ :'field_mappings',
154
+ :'remote_data'
151
155
  ])
152
156
  end
153
157
 
@@ -252,20 +256,24 @@ module MergeATSClient
252
256
  end
253
257
  end
254
258
 
255
- if attributes.key?(:'remote_data')
256
- if (value = attributes[:'remote_data']).is_a?(Array)
257
- self.remote_data = value
258
- end
259
+ if attributes.key?(:'remote_was_deleted')
260
+ self.remote_was_deleted = attributes[:'remote_was_deleted']
259
261
  end
260
262
 
261
- if attributes.key?(:'custom_fields')
262
- if (value = attributes[:'custom_fields']).is_a?(Hash)
263
- self.custom_fields = value
263
+ if attributes.key?(:'field_mappings')
264
+ if (value = attributes[:'field_mappings']).is_a?(Hash)
265
+ self.field_mappings = value
264
266
  end
265
267
  end
266
268
 
267
- if attributes.key?(:'remote_was_deleted')
268
- self.remote_was_deleted = attributes[:'remote_was_deleted']
269
+ if attributes.key?(:'modified_at')
270
+ self.modified_at = attributes[:'modified_at']
271
+ end
272
+
273
+ if attributes.key?(:'remote_data')
274
+ if (value = attributes[:'remote_data']).is_a?(Array)
275
+ self.remote_data = value
276
+ end
269
277
  end
270
278
  end
271
279
 
@@ -305,9 +313,10 @@ module MergeATSClient
305
313
  tags == o.tags &&
306
314
  applications == o.applications &&
307
315
  attachments == o.attachments &&
308
- remote_data == o.remote_data &&
309
- custom_fields == o.custom_fields &&
310
- remote_was_deleted == o.remote_was_deleted
316
+ remote_was_deleted == o.remote_was_deleted &&
317
+ field_mappings == o.field_mappings &&
318
+ modified_at == o.modified_at &&
319
+ remote_data == o.remote_data
311
320
  end
312
321
 
313
322
  # @see the `==` method
@@ -319,7 +328,7 @@ module MergeATSClient
319
328
  # Calculates hash code according to all attributes.
320
329
  # @return [Integer] Hash code
321
330
  def hash
322
- [id, remote_id, first_name, last_name, company, title, remote_created_at, remote_updated_at, last_interaction_at, is_private, can_email, locations, phone_numbers, email_addresses, urls, tags, applications, attachments, remote_data, custom_fields, remote_was_deleted].hash
331
+ [id, remote_id, first_name, last_name, company, title, remote_created_at, remote_updated_at, last_interaction_at, is_private, can_email, locations, phone_numbers, email_addresses, urls, tags, applications, attachments, remote_was_deleted, field_mappings, modified_at, remote_data].hash
323
332
  end
324
333
 
325
334
  # Builds the object from hash
@@ -14,11 +14,8 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module MergeATSClient
17
- # # The Candidate Object ### Description The `Candidate` object is used to represent a Candidate for various positions. ### Usage Example Fetch from the `LIST Candidates` endpoint and filter by `ID` to show all candidates.
17
+ # # The Candidate Object ### Description The `Candidate` object is used to represent profile information about a given Candidate. Because it is specific to a Candidate, this information stays constant across applications. ### Usage Example Fetch from the `LIST Candidates` endpoint and filter by `ID` to show all candidates.
18
18
  class CandidateRequest
19
- # The third-party API ID of the matching object.
20
- attr_accessor :remote_id
21
-
22
19
  # The candidate's first name.
23
20
  attr_accessor :first_name
24
21
 
@@ -31,13 +28,7 @@ module MergeATSClient
31
28
  # The candidate's current title.
32
29
  attr_accessor :title
33
30
 
34
- # When the third party's candidate was created.
35
- attr_accessor :remote_created_at
36
-
37
- # When the third party's candidate was updated.
38
- attr_accessor :remote_updated_at
39
-
40
- # When the most recent candidate interaction occurred.
31
+ # When the most recent interaction with the candidate occurred.
41
32
  attr_accessor :last_interaction_at
42
33
 
43
34
  # Whether or not the candidate is private.
@@ -64,9 +55,6 @@ module MergeATSClient
64
55
  # Array of `Attachment` object IDs.
65
56
  attr_accessor :attachments
66
57
 
67
- # Custom fields configured for a given model.
68
- attr_accessor :custom_fields
69
-
70
58
  attr_accessor :remote_template_id
71
59
 
72
60
  attr_accessor :integration_params
@@ -76,13 +64,10 @@ module MergeATSClient
76
64
  # Attribute mapping from ruby-style variable name to JSON key.
77
65
  def self.attribute_map
78
66
  {
79
- :'remote_id' => :'remote_id',
80
67
  :'first_name' => :'first_name',
81
68
  :'last_name' => :'last_name',
82
69
  :'company' => :'company',
83
70
  :'title' => :'title',
84
- :'remote_created_at' => :'remote_created_at',
85
- :'remote_updated_at' => :'remote_updated_at',
86
71
  :'last_interaction_at' => :'last_interaction_at',
87
72
  :'is_private' => :'is_private',
88
73
  :'can_email' => :'can_email',
@@ -93,7 +78,6 @@ module MergeATSClient
93
78
  :'tags' => :'tags',
94
79
  :'applications' => :'applications',
95
80
  :'attachments' => :'attachments',
96
- :'custom_fields' => :'custom_fields',
97
81
  :'remote_template_id' => :'remote_template_id',
98
82
  :'integration_params' => :'integration_params',
99
83
  :'linked_account_params' => :'linked_account_params'
@@ -108,13 +92,10 @@ module MergeATSClient
108
92
  # Attribute type mapping.
109
93
  def self.openapi_types
110
94
  {
111
- :'remote_id' => :'String',
112
95
  :'first_name' => :'String',
113
96
  :'last_name' => :'String',
114
97
  :'company' => :'String',
115
98
  :'title' => :'String',
116
- :'remote_created_at' => :'Time',
117
- :'remote_updated_at' => :'Time',
118
99
  :'last_interaction_at' => :'Time',
119
100
  :'is_private' => :'Boolean',
120
101
  :'can_email' => :'Boolean',
@@ -125,7 +106,6 @@ module MergeATSClient
125
106
  :'tags' => :'Array<String>',
126
107
  :'applications' => :'Array<String>',
127
108
  :'attachments' => :'Array<String>',
128
- :'custom_fields' => :'Hash<String, Object>',
129
109
  :'remote_template_id' => :'String',
130
110
  :'integration_params' => :'Hash<String, Object>',
131
111
  :'linked_account_params' => :'Hash<String, Object>'
@@ -135,18 +115,14 @@ module MergeATSClient
135
115
  # List of attributes with nullable: true
136
116
  def self.openapi_nullable
137
117
  Set.new([
138
- :'remote_id',
139
118
  :'first_name',
140
119
  :'last_name',
141
120
  :'company',
142
121
  :'title',
143
- :'remote_created_at',
144
- :'remote_updated_at',
145
122
  :'last_interaction_at',
146
123
  :'is_private',
147
124
  :'can_email',
148
125
  :'locations',
149
- :'custom_fields',
150
126
  :'remote_template_id',
151
127
  :'integration_params',
152
128
  :'linked_account_params'
@@ -168,10 +144,6 @@ module MergeATSClient
168
144
  h[k.to_sym] = v
169
145
  }
170
146
 
171
- if attributes.key?(:'remote_id')
172
- self.remote_id = attributes[:'remote_id']
173
- end
174
-
175
147
  if attributes.key?(:'first_name')
176
148
  self.first_name = attributes[:'first_name']
177
149
  end
@@ -188,14 +160,6 @@ module MergeATSClient
188
160
  self.title = attributes[:'title']
189
161
  end
190
162
 
191
- if attributes.key?(:'remote_created_at')
192
- self.remote_created_at = attributes[:'remote_created_at']
193
- end
194
-
195
- if attributes.key?(:'remote_updated_at')
196
- self.remote_updated_at = attributes[:'remote_updated_at']
197
- end
198
-
199
163
  if attributes.key?(:'last_interaction_at')
200
164
  self.last_interaction_at = attributes[:'last_interaction_at']
201
165
  end
@@ -250,12 +214,6 @@ module MergeATSClient
250
214
  end
251
215
  end
252
216
 
253
- if attributes.key?(:'custom_fields')
254
- if (value = attributes[:'custom_fields']).is_a?(Hash)
255
- self.custom_fields = value
256
- end
257
- end
258
-
259
217
  if attributes.key?(:'remote_template_id')
260
218
  self.remote_template_id = attributes[:'remote_template_id']
261
219
  end
@@ -306,13 +264,10 @@ module MergeATSClient
306
264
  def ==(o)
307
265
  return true if self.equal?(o)
308
266
  self.class == o.class &&
309
- remote_id == o.remote_id &&
310
267
  first_name == o.first_name &&
311
268
  last_name == o.last_name &&
312
269
  company == o.company &&
313
270
  title == o.title &&
314
- remote_created_at == o.remote_created_at &&
315
- remote_updated_at == o.remote_updated_at &&
316
271
  last_interaction_at == o.last_interaction_at &&
317
272
  is_private == o.is_private &&
318
273
  can_email == o.can_email &&
@@ -323,7 +278,6 @@ module MergeATSClient
323
278
  tags == o.tags &&
324
279
  applications == o.applications &&
325
280
  attachments == o.attachments &&
326
- custom_fields == o.custom_fields &&
327
281
  remote_template_id == o.remote_template_id &&
328
282
  integration_params == o.integration_params &&
329
283
  linked_account_params == o.linked_account_params
@@ -338,7 +292,7 @@ module MergeATSClient
338
292
  # Calculates hash code according to all attributes.
339
293
  # @return [Integer] Hash code
340
294
  def hash
341
- [remote_id, first_name, last_name, company, title, remote_created_at, remote_updated_at, last_interaction_at, is_private, can_email, locations, phone_numbers, email_addresses, urls, tags, applications, attachments, custom_fields, remote_template_id, integration_params, linked_account_params].hash
295
+ [first_name, last_name, company, title, last_interaction_at, is_private, can_email, locations, phone_numbers, email_addresses, urls, tags, applications, attachments, remote_template_id, integration_params, linked_account_params].hash
342
296
  end
343
297
 
344
298
  # Builds the object from hash
@@ -20,6 +20,8 @@ module MergeATSClient
20
20
  ACCOUNTING = "accounting".freeze
21
21
  TICKETING = "ticketing".freeze
22
22
  CRM = "crm".freeze
23
+ MKTG = "mktg".freeze
24
+ FILESTORAGE = "filestorage".freeze
23
25
 
24
26
  MERGE_NONSTANDARD_VALUE = "MERGE_NONSTANDARD_VALUE".freeze
25
27
 
@@ -31,7 +33,7 @@ module MergeATSClient
31
33
  # @return [String] The enum value
32
34
  def build_from_hash(value)
33
35
  @raw_value = value
34
- if ["hris", "ats", "accounting", "ticketing", "crm", ].include? value
36
+ if ["hris", "ats", "accounting", "ticketing", "crm", "mktg", "filestorage", ].include? value
35
37
  @value = value
36
38
  else
37
39
  @value = MERGE_NONSTANDARD_VALUE
@@ -20,6 +20,8 @@ module MergeATSClient
20
20
  ACCOUNTING = "accounting".freeze
21
21
  TICKETING = "ticketing".freeze
22
22
  CRM = "crm".freeze
23
+ MKTG = "mktg".freeze
24
+ FILESTORAGE = "filestorage".freeze
23
25
 
24
26
  MERGE_NONSTANDARD_VALUE = "MERGE_NONSTANDARD_VALUE".freeze
25
27
 
@@ -31,7 +33,7 @@ module MergeATSClient
31
33
  # @return [String] The enum value
32
34
  def build_from_hash(value)
33
35
  @raw_value = value
34
- if ["hris", "ats", "accounting", "ticketing", "crm", ].include? value
36
+ if ["hris", "ats", "accounting", "ticketing", "crm", "mktg", "filestorage", ].include? value
35
37
  @value = value
36
38
  else
37
39
  @value = MERGE_NONSTANDARD_VALUE
@@ -0,0 +1,274 @@
1
+ =begin
2
+ #Merge ATS API
3
+
4
+ #The unified API for building rich integrations with multiple Applicant Tracking 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 'date'
14
+ require 'time'
15
+
16
+ module MergeATSClient
17
+ class CommonModelScopesBodyRequest
18
+ attr_accessor :model_id
19
+
20
+ attr_accessor :enabled_actions
21
+
22
+ attr_accessor :disabled_fields
23
+
24
+ # Attribute mapping from ruby-style variable name to JSON key.
25
+ def self.attribute_map
26
+ {
27
+ :'model_id' => :'model_id',
28
+ :'enabled_actions' => :'enabled_actions',
29
+ :'disabled_fields' => :'disabled_fields'
30
+ }
31
+ end
32
+
33
+ # Returns all the JSON keys this model knows about
34
+ def self.acceptable_attributes
35
+ attribute_map.values
36
+ end
37
+
38
+ # Attribute type mapping.
39
+ def self.openapi_types
40
+ {
41
+ :'model_id' => :'String',
42
+ :'enabled_actions' => :'Array<EnabledActionsEnum>',
43
+ :'disabled_fields' => :'Array<String>'
44
+ }
45
+ end
46
+
47
+ # List of attributes with nullable: true
48
+ def self.openapi_nullable
49
+ Set.new([
50
+ ])
51
+ end
52
+
53
+ # Initializes the object
54
+ # @param [Hash] attributes Model attributes in the form of hash
55
+ def initialize(attributes = {})
56
+ if (!attributes.is_a?(Hash))
57
+ fail ArgumentError, "The input argument (attributes) must be a hash in `MergeATSClient::CommonModelScopesBodyRequest` initialize method"
58
+ end
59
+
60
+ # check to see if the attribute exists and convert string to symbol for hash key
61
+ attributes = attributes.each_with_object({}) { |(k, v), h|
62
+ if (!self.class.attribute_map.key?(k.to_sym))
63
+ fail ArgumentError, "`#{k}` is not a valid attribute in `MergeATSClient::CommonModelScopesBodyRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
64
+ end
65
+ h[k.to_sym] = v
66
+ }
67
+
68
+ if attributes.key?(:'model_id')
69
+ self.model_id = attributes[:'model_id']
70
+ end
71
+
72
+ if attributes.key?(:'enabled_actions')
73
+ if (value = attributes[:'enabled_actions']).is_a?(Array)
74
+ self.enabled_actions = value
75
+ end
76
+ end
77
+
78
+ if attributes.key?(:'disabled_fields')
79
+ if (value = attributes[:'disabled_fields']).is_a?(Array)
80
+ self.disabled_fields = value
81
+ end
82
+ end
83
+ end
84
+
85
+ # Show invalid properties with the reasons. Usually used together with valid?
86
+ # @return Array for valid properties with the reasons
87
+ def list_invalid_properties
88
+ invalid_properties = Array.new
89
+ if @model_id.nil?
90
+ invalid_properties.push('invalid value for "model_id", model_id cannot be nil.')
91
+ end
92
+
93
+ if @model_id.to_s.length < 1
94
+ invalid_properties.push('invalid value for "model_id", the character length must be great than or equal to 1.')
95
+ end
96
+
97
+ if @enabled_actions.nil?
98
+ invalid_properties.push('invalid value for "enabled_actions", enabled_actions cannot be nil.')
99
+ end
100
+
101
+ if @disabled_fields.nil?
102
+ invalid_properties.push('invalid value for "disabled_fields", disabled_fields cannot be nil.')
103
+ end
104
+
105
+ invalid_properties
106
+ end
107
+
108
+ # Check to see if the all the properties in the model are valid
109
+ # @return true if the model is valid
110
+ def valid?
111
+ return false if @model_id.nil?
112
+ return false if @model_id.to_s.length < 1
113
+ return false if @enabled_actions.nil?
114
+ return false if @disabled_fields.nil?
115
+ true
116
+ end
117
+
118
+ # Custom attribute writer method with validation
119
+ # @param [Object] model_id Value to be assigned
120
+ def model_id=(model_id)
121
+ if model_id.nil?
122
+ fail ArgumentError, 'model_id cannot be nil'
123
+ end
124
+
125
+ if model_id.to_s.length < 1
126
+ fail ArgumentError, 'invalid value for "model_id", the character length must be great than or equal to 1.'
127
+ end
128
+
129
+ @model_id = model_id
130
+ end
131
+
132
+ # Checks equality by comparing each attribute.
133
+ # @param [Object] Object to be compared
134
+ def ==(o)
135
+ return true if self.equal?(o)
136
+ self.class == o.class &&
137
+ model_id == o.model_id &&
138
+ enabled_actions == o.enabled_actions &&
139
+ disabled_fields == o.disabled_fields
140
+ end
141
+
142
+ # @see the `==` method
143
+ # @param [Object] Object to be compared
144
+ def eql?(o)
145
+ self == o
146
+ end
147
+
148
+ # Calculates hash code according to all attributes.
149
+ # @return [Integer] Hash code
150
+ def hash
151
+ [model_id, enabled_actions, disabled_fields].hash
152
+ end
153
+
154
+ # Builds the object from hash
155
+ # @param [Hash] attributes Model attributes in the form of hash
156
+ # @return [Object] Returns the model itself
157
+ def self.build_from_hash(attributes)
158
+ new.build_from_hash(attributes)
159
+ end
160
+
161
+ # Builds the object from hash
162
+ # @param [Hash] attributes Model attributes in the form of hash
163
+ # @return [Object] Returns the model itself
164
+ def build_from_hash(attributes)
165
+ return nil unless attributes.is_a?(Hash)
166
+ self.class.openapi_types.each_pair do |key, type|
167
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
168
+ self.send("#{key}=", nil)
169
+ elsif type =~ /\AArray<(.*)>/i
170
+ # check to ensure the input is an array given that the attribute
171
+ # is documented as an array but the input is not
172
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
173
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
174
+ end
175
+ elsif !attributes[self.class.attribute_map[key]].nil?
176
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
177
+ end
178
+ end
179
+
180
+ self
181
+ end
182
+
183
+ # Deserializes the data based on type
184
+ # @param string type Data type
185
+ # @param string value Value to be deserialized
186
+ # @return [Object] Deserialized data
187
+ def _deserialize(type, value)
188
+ case type.to_sym
189
+ when :Time
190
+ Time.parse(value)
191
+ when :Date
192
+ Date.parse(value)
193
+ when :String
194
+ value
195
+ when :Integer
196
+ value.to_i
197
+ when :Float
198
+ value.to_f
199
+ when :Boolean
200
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
201
+ true
202
+ else
203
+ false
204
+ end
205
+ when :Object
206
+ # generic object (usually a Hash), return directly
207
+ value
208
+ when /\AArray<(?<inner_type>.+)>\z/
209
+ inner_type = Regexp.last_match[:inner_type]
210
+ value.map { |v| _deserialize(inner_type, v) }
211
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
212
+ k_type = Regexp.last_match[:k_type]
213
+ v_type = Regexp.last_match[:v_type]
214
+ {}.tap do |hash|
215
+ value.each do |k, v|
216
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
217
+ end
218
+ end
219
+ else # model
220
+ # models (e.g. Pet) or oneOf
221
+ klass = MergeATSClient.const_get(type)
222
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
223
+ end
224
+ end
225
+
226
+ # Returns the string representation of the object
227
+ # @return [String] String presentation of the object
228
+ def to_s
229
+ to_hash.to_s
230
+ end
231
+
232
+ # to_body is an alias to to_hash (backward compatibility)
233
+ # @return [Hash] Returns the object in the form of hash
234
+ def to_body
235
+ to_hash
236
+ end
237
+
238
+ # Returns the object in the form of hash
239
+ # @return [Hash] Returns the object in the form of hash
240
+ def to_hash
241
+ hash = {}
242
+ self.class.attribute_map.each_pair do |attr, param|
243
+ value = self.send(attr)
244
+ if value.nil?
245
+ is_nullable = self.class.openapi_nullable.include?(attr)
246
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
247
+ end
248
+
249
+ hash[param] = _to_hash(value)
250
+ end
251
+ hash
252
+ end
253
+
254
+ # Outputs non-array value in the form of hash
255
+ # For object, use to_hash. Otherwise, just return the value
256
+ # @param [Object] value Any valid value
257
+ # @return [Hash] Returns the value in the form of hash
258
+ def _to_hash(value)
259
+ if value.is_a?(Array)
260
+ value.compact.map { |v| _to_hash(v) }
261
+ elsif value.is_a?(Hash)
262
+ {}.tap do |hash|
263
+ value.each { |k, v| hash[k] = _to_hash(v) }
264
+ end
265
+ elsif value.respond_to? :to_hash
266
+ value.to_hash
267
+ else
268
+ value
269
+ end
270
+ end
271
+
272
+ end
273
+
274
+ end
@@ -30,6 +30,7 @@ module MergeATSClient
30
30
  # Whether this condition can only be applied once. If false, the condition can be AND'd together multiple times.
31
31
  attr_accessor :is_unique
32
32
 
33
+ # The type of value(s) that can be set for this condition. * `BOOLEAN` - BOOLEAN * `DATE` - DATE * `DATE_TIME` - DATE_TIME * `INTEGER` - INTEGER * `FLOAT` - FLOAT * `STRING` - STRING * `LIST_OF_STRINGS` - LIST_OF_STRINGS
33
34
  attr_accessor :condition_type
34
35
 
35
36
  # The schemas for the operators that can be used on a condition.