merge_ats_client 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (297) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/README.md +208 -0
  4. data/Rakefile +10 -0
  5. data/config.json +2 -0
  6. data/docs/AccessRoleEnum.md +15 -0
  7. data/docs/AccountIntegration.md +28 -0
  8. data/docs/AccountToken.md +18 -0
  9. data/docs/AccountTokenApi.md +79 -0
  10. data/docs/ActivitiesApi.md +181 -0
  11. data/docs/Activity.md +34 -0
  12. data/docs/ActivityTypeEnum.md +15 -0
  13. data/docs/Application.md +38 -0
  14. data/docs/ApplicationRequest.md +34 -0
  15. data/docs/ApplicationsApi.md +351 -0
  16. data/docs/Attachment.md +28 -0
  17. data/docs/AttachmentsApi.md +177 -0
  18. data/docs/AvailableActions.md +22 -0
  19. data/docs/AvailableActionsApi.md +79 -0
  20. data/docs/Candidate.md +54 -0
  21. data/docs/CandidateRequest.md +46 -0
  22. data/docs/CandidatesApi.md +259 -0
  23. data/docs/DataPassthrough.md +24 -0
  24. data/docs/DataPassthroughRequest.md +26 -0
  25. data/docs/Department.md +24 -0
  26. data/docs/DepartmentsApi.md +175 -0
  27. data/docs/DisabilityStatusEnum.md +15 -0
  28. data/docs/EEOC.md +34 -0
  29. data/docs/EeocsApi.md +181 -0
  30. data/docs/EmailAddress.md +20 -0
  31. data/docs/EmailAddressRequest.md +20 -0
  32. data/docs/EmailAddressTypeEnum.md +15 -0
  33. data/docs/EndUserDetails.md +24 -0
  34. data/docs/EndUserDetailsRequest.md +26 -0
  35. data/docs/GenderEnum.md +15 -0
  36. data/docs/GenerateKeyApi.md +79 -0
  37. data/docs/GenerateRemoteKeyRequest.md +18 -0
  38. data/docs/InterviewsApi.md +185 -0
  39. data/docs/Job.md +40 -0
  40. data/docs/JobInterviewStage.md +26 -0
  41. data/docs/JobInterviewStagesApi.md +181 -0
  42. data/docs/JobStatusEnum.md +15 -0
  43. data/docs/JobsApi.md +179 -0
  44. data/docs/LinkToken.md +20 -0
  45. data/docs/LinkTokenApi.md +79 -0
  46. data/docs/MethodEnum.md +15 -0
  47. data/docs/ModelOperation.md +22 -0
  48. data/docs/Offer.md +36 -0
  49. data/docs/OfferStatusEnum.md +15 -0
  50. data/docs/OffersApi.md +183 -0
  51. data/docs/Office.md +26 -0
  52. data/docs/OfficesApi.md +175 -0
  53. data/docs/OverallRecommendationEnum.md +15 -0
  54. data/docs/PaginatedActivityList.md +22 -0
  55. data/docs/PaginatedApplicationList.md +22 -0
  56. data/docs/PaginatedAttachmentList.md +22 -0
  57. data/docs/PaginatedCandidateList.md +22 -0
  58. data/docs/PaginatedDepartmentList.md +22 -0
  59. data/docs/PaginatedEEOCList.md +22 -0
  60. data/docs/PaginatedJobInterviewStageList.md +22 -0
  61. data/docs/PaginatedJobList.md +22 -0
  62. data/docs/PaginatedOfferList.md +22 -0
  63. data/docs/PaginatedOfficeList.md +22 -0
  64. data/docs/PaginatedRejectReasonList.md +22 -0
  65. data/docs/PaginatedRemoteUserList.md +22 -0
  66. data/docs/PaginatedScheduledInterviewList.md +22 -0
  67. data/docs/PaginatedScorecardList.md +22 -0
  68. data/docs/PaginatedTagList.md +22 -0
  69. data/docs/PassthroughApi.md +81 -0
  70. data/docs/PatchedApplicationRequest.md +34 -0
  71. data/docs/PhoneNumber.md +20 -0
  72. data/docs/PhoneNumberRequest.md +20 -0
  73. data/docs/PhoneNumberTypeEnum.md +15 -0
  74. data/docs/RaceEnum.md +15 -0
  75. data/docs/RegenerateKeyApi.md +79 -0
  76. data/docs/RejectReason.md +24 -0
  77. data/docs/RejectReasonsApi.md +175 -0
  78. data/docs/RemoteData.md +20 -0
  79. data/docs/RemoteDataRequest.md +20 -0
  80. data/docs/RemoteKey.md +20 -0
  81. data/docs/RemoteKeyForRegeneration.md +18 -0
  82. data/docs/RemoteKeyForRegenerationRequest.md +18 -0
  83. data/docs/RemoteResponse.md +26 -0
  84. data/docs/RemoteUser.md +34 -0
  85. data/docs/ScheduledInterview.md +42 -0
  86. data/docs/ScheduledInterviewStatusEnum.md +15 -0
  87. data/docs/Scorecard.md +34 -0
  88. data/docs/ScorecardsApi.md +185 -0
  89. data/docs/SyncStatus.md +28 -0
  90. data/docs/SyncStatusApi.md +79 -0
  91. data/docs/Tag.md +22 -0
  92. data/docs/TagsApi.md +97 -0
  93. data/docs/Url.md +20 -0
  94. data/docs/UrlRequest.md +20 -0
  95. data/docs/UrlTypeEnum.md +15 -0
  96. data/docs/UsersApi.md +175 -0
  97. data/docs/VeteranStatusEnum.md +15 -0
  98. data/docs/VisibilityEnum.md +15 -0
  99. data/git_push.sh +58 -0
  100. data/lib/merge_ats_client.rb +131 -0
  101. data/lib/merge_ats_client/api/account_token_api.rb +83 -0
  102. data/lib/merge_ats_client/api/activities_api.rb +196 -0
  103. data/lib/merge_ats_client/api/applications_api.rb +366 -0
  104. data/lib/merge_ats_client/api/attachments_api.rb +182 -0
  105. data/lib/merge_ats_client/api/available_actions_api.rb +84 -0
  106. data/lib/merge_ats_client/api/candidates_api.rb +269 -0
  107. data/lib/merge_ats_client/api/departments_api.rb +179 -0
  108. data/lib/merge_ats_client/api/eeocs_api.rb +196 -0
  109. data/lib/merge_ats_client/api/generate_key_api.rb +85 -0
  110. data/lib/merge_ats_client/api/interviews_api.rb +202 -0
  111. data/lib/merge_ats_client/api/job_interview_stages_api.rb +196 -0
  112. data/lib/merge_ats_client/api/jobs_api.rb +193 -0
  113. data/lib/merge_ats_client/api/link_token_api.rb +85 -0
  114. data/lib/merge_ats_client/api/offers_api.rb +199 -0
  115. data/lib/merge_ats_client/api/offices_api.rb +179 -0
  116. data/lib/merge_ats_client/api/passthrough_api.rb +92 -0
  117. data/lib/merge_ats_client/api/regenerate_key_api.rb +85 -0
  118. data/lib/merge_ats_client/api/reject_reasons_api.rb +179 -0
  119. data/lib/merge_ats_client/api/scorecards_api.rb +202 -0
  120. data/lib/merge_ats_client/api/sync_status_api.rb +84 -0
  121. data/lib/merge_ats_client/api/tags_api.rb +108 -0
  122. data/lib/merge_ats_client/api/users_api.rb +179 -0
  123. data/lib/merge_ats_client/api_client.rb +390 -0
  124. data/lib/merge_ats_client/api_error.rb +57 -0
  125. data/lib/merge_ats_client/configuration.rb +279 -0
  126. data/lib/merge_ats_client/models/access_role_enum.rb +38 -0
  127. data/lib/merge_ats_client/models/account_integration.rb +325 -0
  128. data/lib/merge_ats_client/models/account_token.rb +223 -0
  129. data/lib/merge_ats_client/models/activity.rb +308 -0
  130. data/lib/merge_ats_client/models/activity_type_enum.rb +36 -0
  131. data/lib/merge_ats_client/models/application.rb +330 -0
  132. data/lib/merge_ats_client/models/application_request.rb +309 -0
  133. data/lib/merge_ats_client/models/attachment.rb +289 -0
  134. data/lib/merge_ats_client/models/available_actions.rb +249 -0
  135. data/lib/merge_ats_client/models/candidate.rb +420 -0
  136. data/lib/merge_ats_client/models/candidate_request.rb +377 -0
  137. data/lib/merge_ats_client/models/data_passthrough.rb +262 -0
  138. data/lib/merge_ats_client/models/data_passthrough_request.rb +271 -0
  139. data/lib/merge_ats_client/models/department.rb +253 -0
  140. data/lib/merge_ats_client/models/disability_status_enum.rb +36 -0
  141. data/lib/merge_ats_client/models/eeoc.rb +308 -0
  142. data/lib/merge_ats_client/models/email_address.rb +247 -0
  143. data/lib/merge_ats_client/models/email_address_request.rb +247 -0
  144. data/lib/merge_ats_client/models/email_address_type_enum.rb +36 -0
  145. data/lib/merge_ats_client/models/end_user_details.rb +289 -0
  146. data/lib/merge_ats_client/models/end_user_details_request.rb +298 -0
  147. data/lib/merge_ats_client/models/gender_enum.rb +38 -0
  148. data/lib/merge_ats_client/models/generate_remote_key_request.rb +224 -0
  149. data/lib/merge_ats_client/models/job.rb +341 -0
  150. data/lib/merge_ats_client/models/job_interview_stage.rb +264 -0
  151. data/lib/merge_ats_client/models/job_status_enum.rb +38 -0
  152. data/lib/merge_ats_client/models/link_token.rb +237 -0
  153. data/lib/merge_ats_client/models/method_enum.rb +40 -0
  154. data/lib/merge_ats_client/models/model_operation.rb +256 -0
  155. data/lib/merge_ats_client/models/offer.rb +319 -0
  156. data/lib/merge_ats_client/models/offer_status_enum.rb +42 -0
  157. data/lib/merge_ats_client/models/office.rb +264 -0
  158. data/lib/merge_ats_client/models/overall_recommendation_enum.rb +38 -0
  159. data/lib/merge_ats_client/models/paginated_activity_list.rb +240 -0
  160. data/lib/merge_ats_client/models/paginated_application_list.rb +240 -0
  161. data/lib/merge_ats_client/models/paginated_attachment_list.rb +240 -0
  162. data/lib/merge_ats_client/models/paginated_candidate_list.rb +240 -0
  163. data/lib/merge_ats_client/models/paginated_department_list.rb +240 -0
  164. data/lib/merge_ats_client/models/paginated_eeoc_list.rb +240 -0
  165. data/lib/merge_ats_client/models/paginated_job_interview_stage_list.rb +240 -0
  166. data/lib/merge_ats_client/models/paginated_job_list.rb +240 -0
  167. data/lib/merge_ats_client/models/paginated_offer_list.rb +240 -0
  168. data/lib/merge_ats_client/models/paginated_office_list.rb +240 -0
  169. data/lib/merge_ats_client/models/paginated_reject_reason_list.rb +240 -0
  170. data/lib/merge_ats_client/models/paginated_remote_user_list.rb +240 -0
  171. data/lib/merge_ats_client/models/paginated_scheduled_interview_list.rb +240 -0
  172. data/lib/merge_ats_client/models/paginated_scorecard_list.rb +240 -0
  173. data/lib/merge_ats_client/models/paginated_tag_list.rb +240 -0
  174. data/lib/merge_ats_client/models/patched_application_request.rb +309 -0
  175. data/lib/merge_ats_client/models/phone_number.rb +232 -0
  176. data/lib/merge_ats_client/models/phone_number_request.rb +232 -0
  177. data/lib/merge_ats_client/models/phone_number_type_enum.rb +38 -0
  178. data/lib/merge_ats_client/models/race_enum.rb +41 -0
  179. data/lib/merge_ats_client/models/reject_reason.rb +253 -0
  180. data/lib/merge_ats_client/models/remote_data.rb +234 -0
  181. data/lib/merge_ats_client/models/remote_data_request.rb +234 -0
  182. data/lib/merge_ats_client/models/remote_key.rb +238 -0
  183. data/lib/merge_ats_client/models/remote_key_for_regeneration.rb +224 -0
  184. data/lib/merge_ats_client/models/remote_key_for_regeneration_request.rb +224 -0
  185. data/lib/merge_ats_client/models/remote_response.rb +279 -0
  186. data/lib/merge_ats_client/models/remote_user.rb +323 -0
  187. data/lib/merge_ats_client/models/scheduled_interview.rb +352 -0
  188. data/lib/merge_ats_client/models/scheduled_interview_status_enum.rb +36 -0
  189. data/lib/merge_ats_client/models/scorecard.rb +308 -0
  190. data/lib/merge_ats_client/models/sync_status.rb +294 -0
  191. data/lib/merge_ats_client/models/tag.rb +244 -0
  192. data/lib/merge_ats_client/models/url.rb +247 -0
  193. data/lib/merge_ats_client/models/url_request.rb +247 -0
  194. data/lib/merge_ats_client/models/url_type_enum.rb +39 -0
  195. data/lib/merge_ats_client/models/veteran_status_enum.rb +36 -0
  196. data/lib/merge_ats_client/models/visibility_enum.rb +36 -0
  197. data/lib/merge_ats_client/version.rb +15 -0
  198. data/merge_ats_client-1.0.0.gem +0 -0
  199. data/merge_ats_client.gemspec +38 -0
  200. data/pull_request_template.md +22 -0
  201. data/spec/api/account_token_api_spec.rb +46 -0
  202. data/spec/api/activities_api_spec.rb +68 -0
  203. data/spec/api/applications_api_spec.rb +72 -0
  204. data/spec/api/attachments_api_spec.rb +66 -0
  205. data/spec/api/available_actions_api_spec.rb +46 -0
  206. data/spec/api/candidates_api_spec.rb +67 -0
  207. data/spec/api/departments_api_spec.rb +65 -0
  208. data/spec/api/eeocs_api_spec.rb +68 -0
  209. data/spec/api/interviews_api_spec.rb +70 -0
  210. data/spec/api/job_interview_stages_api_spec.rb +68 -0
  211. data/spec/api/jobs_api_spec.rb +67 -0
  212. data/spec/api/link_token_api_spec.rb +46 -0
  213. data/spec/api/offers_api_spec.rb +69 -0
  214. data/spec/api/offices_api_spec.rb +65 -0
  215. data/spec/api/passthrough_api_spec.rb +47 -0
  216. data/spec/api/regenerate_key_api_spec.rb +48 -0
  217. data/spec/api/reject_reasons_api_spec.rb +65 -0
  218. data/spec/api/scorecards_api_spec.rb +70 -0
  219. data/spec/api/sync_status_api_spec.rb +45 -0
  220. data/spec/api/tags_api_spec.rb +53 -0
  221. data/spec/api/users_api_spec.rb +65 -0
  222. data/spec/api_client_spec.rb +226 -0
  223. data/spec/configuration_spec.rb +42 -0
  224. data/spec/models/access_role_enum_spec.rb +28 -0
  225. data/spec/models/account_integration_spec.rb +58 -0
  226. data/spec/models/account_token_spec.rb +34 -0
  227. data/spec/models/activity_spec.rb +76 -0
  228. data/spec/models/activity_type_enum_spec.rb +28 -0
  229. data/spec/models/application_request_spec.rb +82 -0
  230. data/spec/models/application_spec.rb +94 -0
  231. data/spec/models/attachment_spec.rb +52 -0
  232. data/spec/models/available_actions_spec.rb +46 -0
  233. data/spec/models/candidate_request_spec.rb +118 -0
  234. data/spec/models/candidate_spec.rb +136 -0
  235. data/spec/models/data_passthrough_request_spec.rb +58 -0
  236. data/spec/models/data_passthrough_spec.rb +52 -0
  237. data/spec/models/department_spec.rb +46 -0
  238. data/spec/models/disability_status_enum_spec.rb +28 -0
  239. data/spec/models/eeoc_spec.rb +76 -0
  240. data/spec/models/email_address_request_spec.rb +40 -0
  241. data/spec/models/email_address_spec.rb +40 -0
  242. data/spec/models/email_address_type_enum_spec.rb +28 -0
  243. data/spec/models/end_user_details_request_spec.rb +56 -0
  244. data/spec/models/end_user_details_spec.rb +56 -0
  245. data/spec/models/gender_enum_spec.rb +28 -0
  246. data/spec/models/generate_remote_key_request_spec.rb +34 -0
  247. data/spec/models/job_interview_stage_spec.rb +52 -0
  248. data/spec/models/job_spec.rb +88 -0
  249. data/spec/models/job_status_enum_spec.rb +28 -0
  250. data/spec/models/link_token_spec.rb +40 -0
  251. data/spec/models/method_enum_spec.rb +28 -0
  252. data/spec/models/model_operation_spec.rb +40 -0
  253. data/spec/models/offer_spec.rb +82 -0
  254. data/spec/models/offer_status_enum_spec.rb +28 -0
  255. data/spec/models/office_spec.rb +52 -0
  256. data/spec/models/overall_recommendation_enum_spec.rb +28 -0
  257. data/spec/models/paginated_activity_list_spec.rb +46 -0
  258. data/spec/models/paginated_application_list_spec.rb +46 -0
  259. data/spec/models/paginated_attachment_list_spec.rb +46 -0
  260. data/spec/models/paginated_candidate_list_spec.rb +46 -0
  261. data/spec/models/paginated_department_list_spec.rb +46 -0
  262. data/spec/models/paginated_eeoc_list_spec.rb +46 -0
  263. data/spec/models/paginated_job_interview_stage_list_spec.rb +46 -0
  264. data/spec/models/paginated_job_list_spec.rb +46 -0
  265. data/spec/models/paginated_offer_list_spec.rb +46 -0
  266. data/spec/models/paginated_office_list_spec.rb +46 -0
  267. data/spec/models/paginated_reject_reason_list_spec.rb +46 -0
  268. data/spec/models/paginated_remote_user_list_spec.rb +46 -0
  269. data/spec/models/paginated_scheduled_interview_list_spec.rb +46 -0
  270. data/spec/models/paginated_scorecard_list_spec.rb +46 -0
  271. data/spec/models/paginated_tag_list_spec.rb +46 -0
  272. data/spec/models/patched_application_request_spec.rb +82 -0
  273. data/spec/models/phone_number_request_spec.rb +40 -0
  274. data/spec/models/phone_number_spec.rb +40 -0
  275. data/spec/models/phone_number_type_enum_spec.rb +28 -0
  276. data/spec/models/race_enum_spec.rb +28 -0
  277. data/spec/models/reject_reason_spec.rb +46 -0
  278. data/spec/models/remote_data_spec.rb +40 -0
  279. data/spec/models/remote_key_for_regeneration_request_spec.rb +34 -0
  280. data/spec/models/remote_key_for_regeneration_spec.rb +34 -0
  281. data/spec/models/remote_key_spec.rb +40 -0
  282. data/spec/models/remote_response_spec.rb +58 -0
  283. data/spec/models/remote_user_spec.rb +76 -0
  284. data/spec/models/scheduled_interview_spec.rb +100 -0
  285. data/spec/models/scheduled_interview_status_enum_spec.rb +28 -0
  286. data/spec/models/scorecard_spec.rb +76 -0
  287. data/spec/models/sync_status_spec.rb +64 -0
  288. data/spec/models/tag_spec.rb +40 -0
  289. data/spec/models/url_request_spec.rb +40 -0
  290. data/spec/models/url_spec.rb +40 -0
  291. data/spec/models/url_type_enum_spec.rb +28 -0
  292. data/spec/models/veteran_status_enum_spec.rb +28 -0
  293. data/spec/models/visibility_enum_spec.rb +28 -0
  294. data/spec/spec_helper.rb +111 -0
  295. data/test_ats.rb +22 -0
  296. data/test_signature.rb +32 -0
  297. metadata +473 -0
@@ -0,0 +1,202 @@
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.0.0
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module MergeATSClient
16
+ class InterviewsApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Returns a list of `ScheduledInterview` objects.
23
+ # @param x_account_token [String] Token identifying the end user.
24
+ # @param [Hash] opts the optional parameters
25
+ # @option opts [String] :application_id If provided, will only return interviews for this application.
26
+ # @option opts [Time] :created_after If provided, will only return objects created after this datetime.
27
+ # @option opts [Time] :created_before If provided, will only return objects created before this datetime.
28
+ # @option opts [String] :cursor The pagination cursor value.
29
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
30
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
31
+ # @option opts [String] :job_interview_stage_id If provided, will only return interviews at this stage.
32
+ # @option opts [Time] :modified_after If provided, will only return objects modified after this datetime.
33
+ # @option opts [Time] :modified_before If provided, will only return objects modified before this datetime.
34
+ # @option opts [String] :organizer_id If provided, will only return interviews organized by this user.
35
+ # @option opts [Integer] :page_size Number of results to return per page.
36
+ # @option opts [String] :remote_id The API provider's ID for the given object.
37
+ # @return [PaginatedScheduledInterviewList]
38
+ def interviews_list(x_account_token, opts = {})
39
+ data, _status_code, _headers = interviews_list_with_http_info(x_account_token, opts)
40
+ data
41
+ end
42
+
43
+ # Returns a list of `ScheduledInterview` objects.
44
+ # @param x_account_token [String] Token identifying the end user.
45
+ # @param [Hash] opts the optional parameters
46
+ # @option opts [String] :application_id If provided, will only return interviews for this application.
47
+ # @option opts [Time] :created_after If provided, will only return objects created after this datetime.
48
+ # @option opts [Time] :created_before If provided, will only return objects created before this datetime.
49
+ # @option opts [String] :cursor The pagination cursor value.
50
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
51
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
52
+ # @option opts [String] :job_interview_stage_id If provided, will only return interviews at this stage.
53
+ # @option opts [Time] :modified_after If provided, will only return objects modified after this datetime.
54
+ # @option opts [Time] :modified_before If provided, will only return objects modified before this datetime.
55
+ # @option opts [String] :organizer_id If provided, will only return interviews organized by this user.
56
+ # @option opts [Integer] :page_size Number of results to return per page.
57
+ # @option opts [String] :remote_id The API provider's ID for the given object.
58
+ # @return [Array<(PaginatedScheduledInterviewList, Integer, Hash)>] PaginatedScheduledInterviewList data, response status code and response headers
59
+ def interviews_list_with_http_info(x_account_token, opts = {})
60
+ if @api_client.config.debugging
61
+ @api_client.config.logger.debug 'Calling API: InterviewsApi.interviews_list ...'
62
+ end
63
+ # verify the required parameter 'x_account_token' is set
64
+ if @api_client.config.client_side_validation && x_account_token.nil?
65
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling InterviewsApi.interviews_list"
66
+ end
67
+ allowable_values = ["application", "application,job_interview_stage", "interviewers", "interviewers,application", "interviewers,application,job_interview_stage", "interviewers,job_interview_stage", "interviewers,organizer", "interviewers,organizer,application", "interviewers,organizer,application,job_interview_stage", "interviewers,organizer,job_interview_stage", "job_interview_stage", "organizer", "organizer,application", "organizer,application,job_interview_stage", "organizer,job_interview_stage"]
68
+ if @api_client.config.client_side_validation && opts[:'expand'] && !allowable_values.include?(opts[:'expand'])
69
+ fail ArgumentError, "invalid value for \"expand\", must be one of #{allowable_values}"
70
+ end
71
+ # resource path
72
+ local_var_path = '/interviews'
73
+
74
+ # query parameters
75
+ query_params = opts[:query_params] || {}
76
+ query_params[:'application_id'] = opts[:'application_id'] if !opts[:'application_id'].nil?
77
+ query_params[:'created_after'] = opts[:'created_after'] if !opts[:'created_after'].nil?
78
+ query_params[:'created_before'] = opts[:'created_before'] if !opts[:'created_before'].nil?
79
+ query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil?
80
+ query_params[:'expand'] = opts[:'expand'] if !opts[:'expand'].nil?
81
+ query_params[:'include_remote_data'] = opts[:'include_remote_data'] if !opts[:'include_remote_data'].nil?
82
+ query_params[:'job_interview_stage_id'] = opts[:'job_interview_stage_id'] if !opts[:'job_interview_stage_id'].nil?
83
+ query_params[:'modified_after'] = opts[:'modified_after'] if !opts[:'modified_after'].nil?
84
+ query_params[:'modified_before'] = opts[:'modified_before'] if !opts[:'modified_before'].nil?
85
+ query_params[:'organizer_id'] = opts[:'organizer_id'] if !opts[:'organizer_id'].nil?
86
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
87
+ query_params[:'remote_id'] = opts[:'remote_id'] if !opts[:'remote_id'].nil?
88
+
89
+ # header parameters
90
+ header_params = opts[:header_params] || {}
91
+ # HTTP header 'Accept' (if needed)
92
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
93
+ header_params[:'X-Account-Token'] = x_account_token
94
+
95
+ # form parameters
96
+ form_params = opts[:form_params] || {}
97
+
98
+ # http body (model)
99
+ post_body = opts[:debug_body]
100
+
101
+ # return_type
102
+ return_type = opts[:debug_return_type] || 'PaginatedScheduledInterviewList'
103
+
104
+ # auth_names
105
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
106
+
107
+ new_options = opts.merge(
108
+ :operation => :"InterviewsApi.interviews_list",
109
+ :header_params => header_params,
110
+ :query_params => query_params,
111
+ :form_params => form_params,
112
+ :body => post_body,
113
+ :auth_names => auth_names,
114
+ :return_type => return_type
115
+ )
116
+
117
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
118
+ if @api_client.config.debugging
119
+ @api_client.config.logger.debug "API called: InterviewsApi#interviews_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
120
+ end
121
+ return data, status_code, headers
122
+ end
123
+
124
+ # Returns a `ScheduledInterview` object with the given `id`.
125
+ # @param x_account_token [String] Token identifying the end user.
126
+ # @param id [String]
127
+ # @param [Hash] opts the optional parameters
128
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
129
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
130
+ # @return [ScheduledInterview]
131
+ def interviews_retrieve(x_account_token, id, opts = {})
132
+ data, _status_code, _headers = interviews_retrieve_with_http_info(x_account_token, id, opts)
133
+ data
134
+ end
135
+
136
+ # Returns a &#x60;ScheduledInterview&#x60; object with the given &#x60;id&#x60;.
137
+ # @param x_account_token [String] Token identifying the end user.
138
+ # @param id [String]
139
+ # @param [Hash] opts the optional parameters
140
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
141
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
142
+ # @return [Array<(ScheduledInterview, Integer, Hash)>] ScheduledInterview data, response status code and response headers
143
+ def interviews_retrieve_with_http_info(x_account_token, id, opts = {})
144
+ if @api_client.config.debugging
145
+ @api_client.config.logger.debug 'Calling API: InterviewsApi.interviews_retrieve ...'
146
+ end
147
+ # verify the required parameter 'x_account_token' is set
148
+ if @api_client.config.client_side_validation && x_account_token.nil?
149
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling InterviewsApi.interviews_retrieve"
150
+ end
151
+ # verify the required parameter 'id' is set
152
+ if @api_client.config.client_side_validation && id.nil?
153
+ fail ArgumentError, "Missing the required parameter 'id' when calling InterviewsApi.interviews_retrieve"
154
+ end
155
+ allowable_values = ["application", "application,job_interview_stage", "interviewers", "interviewers,application", "interviewers,application,job_interview_stage", "interviewers,job_interview_stage", "interviewers,organizer", "interviewers,organizer,application", "interviewers,organizer,application,job_interview_stage", "interviewers,organizer,job_interview_stage", "job_interview_stage", "organizer", "organizer,application", "organizer,application,job_interview_stage", "organizer,job_interview_stage"]
156
+ if @api_client.config.client_side_validation && opts[:'expand'] && !allowable_values.include?(opts[:'expand'])
157
+ fail ArgumentError, "invalid value for \"expand\", must be one of #{allowable_values}"
158
+ end
159
+ # resource path
160
+ local_var_path = '/interviews/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
161
+
162
+ # query parameters
163
+ query_params = opts[:query_params] || {}
164
+ query_params[:'expand'] = opts[:'expand'] if !opts[:'expand'].nil?
165
+ query_params[:'include_remote_data'] = opts[:'include_remote_data'] if !opts[:'include_remote_data'].nil?
166
+
167
+ # header parameters
168
+ header_params = opts[:header_params] || {}
169
+ # HTTP header 'Accept' (if needed)
170
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
171
+ header_params[:'X-Account-Token'] = x_account_token
172
+
173
+ # form parameters
174
+ form_params = opts[:form_params] || {}
175
+
176
+ # http body (model)
177
+ post_body = opts[:debug_body]
178
+
179
+ # return_type
180
+ return_type = opts[:debug_return_type] || 'ScheduledInterview'
181
+
182
+ # auth_names
183
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
184
+
185
+ new_options = opts.merge(
186
+ :operation => :"InterviewsApi.interviews_retrieve",
187
+ :header_params => header_params,
188
+ :query_params => query_params,
189
+ :form_params => form_params,
190
+ :body => post_body,
191
+ :auth_names => auth_names,
192
+ :return_type => return_type
193
+ )
194
+
195
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
196
+ if @api_client.config.debugging
197
+ @api_client.config.logger.debug "API called: InterviewsApi#interviews_retrieve\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
198
+ end
199
+ return data, status_code, headers
200
+ end
201
+ end
202
+ end
@@ -0,0 +1,196 @@
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.0.0
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module MergeATSClient
16
+ class JobInterviewStagesApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Returns a list of `JobInterviewStage` objects.
23
+ # @param x_account_token [String] Token identifying the end user.
24
+ # @param [Hash] opts the optional parameters
25
+ # @option opts [Time] :created_after If provided, will only return objects created after this datetime.
26
+ # @option opts [Time] :created_before If provided, will only return objects created before this datetime.
27
+ # @option opts [String] :cursor The pagination cursor value.
28
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
29
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
30
+ # @option opts [String] :job_id If provided, will only return interview stages for this job.
31
+ # @option opts [Time] :modified_after If provided, will only return objects modified after this datetime.
32
+ # @option opts [Time] :modified_before If provided, will only return objects modified before this datetime.
33
+ # @option opts [Integer] :page_size Number of results to return per page.
34
+ # @option opts [String] :remote_id The API provider&#39;s ID for the given object.
35
+ # @return [PaginatedJobInterviewStageList]
36
+ def job_interview_stages_list(x_account_token, opts = {})
37
+ data, _status_code, _headers = job_interview_stages_list_with_http_info(x_account_token, opts)
38
+ data
39
+ end
40
+
41
+ # Returns a list of &#x60;JobInterviewStage&#x60; objects.
42
+ # @param x_account_token [String] Token identifying the end user.
43
+ # @param [Hash] opts the optional parameters
44
+ # @option opts [Time] :created_after If provided, will only return objects created after this datetime.
45
+ # @option opts [Time] :created_before If provided, will only return objects created before this datetime.
46
+ # @option opts [String] :cursor The pagination cursor value.
47
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
48
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
49
+ # @option opts [String] :job_id If provided, will only return interview stages for this job.
50
+ # @option opts [Time] :modified_after If provided, will only return objects modified after this datetime.
51
+ # @option opts [Time] :modified_before If provided, will only return objects modified before this datetime.
52
+ # @option opts [Integer] :page_size Number of results to return per page.
53
+ # @option opts [String] :remote_id The API provider&#39;s ID for the given object.
54
+ # @return [Array<(PaginatedJobInterviewStageList, Integer, Hash)>] PaginatedJobInterviewStageList data, response status code and response headers
55
+ def job_interview_stages_list_with_http_info(x_account_token, opts = {})
56
+ if @api_client.config.debugging
57
+ @api_client.config.logger.debug 'Calling API: JobInterviewStagesApi.job_interview_stages_list ...'
58
+ end
59
+ # verify the required parameter 'x_account_token' is set
60
+ if @api_client.config.client_side_validation && x_account_token.nil?
61
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling JobInterviewStagesApi.job_interview_stages_list"
62
+ end
63
+ allowable_values = ["departments", "departments,job", "departments,offices", "departments,offices,job", "job", "offices", "offices,job"]
64
+ if @api_client.config.client_side_validation && opts[:'expand'] && !allowable_values.include?(opts[:'expand'])
65
+ fail ArgumentError, "invalid value for \"expand\", must be one of #{allowable_values}"
66
+ end
67
+ # resource path
68
+ local_var_path = '/job-interview-stages'
69
+
70
+ # query parameters
71
+ query_params = opts[:query_params] || {}
72
+ query_params[:'created_after'] = opts[:'created_after'] if !opts[:'created_after'].nil?
73
+ query_params[:'created_before'] = opts[:'created_before'] if !opts[:'created_before'].nil?
74
+ query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil?
75
+ query_params[:'expand'] = opts[:'expand'] if !opts[:'expand'].nil?
76
+ query_params[:'include_remote_data'] = opts[:'include_remote_data'] if !opts[:'include_remote_data'].nil?
77
+ query_params[:'job_id'] = opts[:'job_id'] if !opts[:'job_id'].nil?
78
+ query_params[:'modified_after'] = opts[:'modified_after'] if !opts[:'modified_after'].nil?
79
+ query_params[:'modified_before'] = opts[:'modified_before'] if !opts[:'modified_before'].nil?
80
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
81
+ query_params[:'remote_id'] = opts[:'remote_id'] if !opts[:'remote_id'].nil?
82
+
83
+ # header parameters
84
+ header_params = opts[:header_params] || {}
85
+ # HTTP header 'Accept' (if needed)
86
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
87
+ header_params[:'X-Account-Token'] = x_account_token
88
+
89
+ # form parameters
90
+ form_params = opts[:form_params] || {}
91
+
92
+ # http body (model)
93
+ post_body = opts[:debug_body]
94
+
95
+ # return_type
96
+ return_type = opts[:debug_return_type] || 'PaginatedJobInterviewStageList'
97
+
98
+ # auth_names
99
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
100
+
101
+ new_options = opts.merge(
102
+ :operation => :"JobInterviewStagesApi.job_interview_stages_list",
103
+ :header_params => header_params,
104
+ :query_params => query_params,
105
+ :form_params => form_params,
106
+ :body => post_body,
107
+ :auth_names => auth_names,
108
+ :return_type => return_type
109
+ )
110
+
111
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
112
+ if @api_client.config.debugging
113
+ @api_client.config.logger.debug "API called: JobInterviewStagesApi#job_interview_stages_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
114
+ end
115
+ return data, status_code, headers
116
+ end
117
+
118
+ # Returns a `JobInterviewStage` object with the given `id`.
119
+ # @param x_account_token [String] Token identifying the end user.
120
+ # @param id [String]
121
+ # @param [Hash] opts the optional parameters
122
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
123
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
124
+ # @return [JobInterviewStage]
125
+ def job_interview_stages_retrieve(x_account_token, id, opts = {})
126
+ data, _status_code, _headers = job_interview_stages_retrieve_with_http_info(x_account_token, id, opts)
127
+ data
128
+ end
129
+
130
+ # Returns a &#x60;JobInterviewStage&#x60; object with the given &#x60;id&#x60;.
131
+ # @param x_account_token [String] Token identifying the end user.
132
+ # @param id [String]
133
+ # @param [Hash] opts the optional parameters
134
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
135
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
136
+ # @return [Array<(JobInterviewStage, Integer, Hash)>] JobInterviewStage data, response status code and response headers
137
+ def job_interview_stages_retrieve_with_http_info(x_account_token, id, opts = {})
138
+ if @api_client.config.debugging
139
+ @api_client.config.logger.debug 'Calling API: JobInterviewStagesApi.job_interview_stages_retrieve ...'
140
+ end
141
+ # verify the required parameter 'x_account_token' is set
142
+ if @api_client.config.client_side_validation && x_account_token.nil?
143
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling JobInterviewStagesApi.job_interview_stages_retrieve"
144
+ end
145
+ # verify the required parameter 'id' is set
146
+ if @api_client.config.client_side_validation && id.nil?
147
+ fail ArgumentError, "Missing the required parameter 'id' when calling JobInterviewStagesApi.job_interview_stages_retrieve"
148
+ end
149
+ allowable_values = ["departments", "departments,job", "departments,offices", "departments,offices,job", "job", "offices", "offices,job"]
150
+ if @api_client.config.client_side_validation && opts[:'expand'] && !allowable_values.include?(opts[:'expand'])
151
+ fail ArgumentError, "invalid value for \"expand\", must be one of #{allowable_values}"
152
+ end
153
+ # resource path
154
+ local_var_path = '/job-interview-stages/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
155
+
156
+ # query parameters
157
+ query_params = opts[:query_params] || {}
158
+ query_params[:'expand'] = opts[:'expand'] if !opts[:'expand'].nil?
159
+ query_params[:'include_remote_data'] = opts[:'include_remote_data'] if !opts[:'include_remote_data'].nil?
160
+
161
+ # header parameters
162
+ header_params = opts[:header_params] || {}
163
+ # HTTP header 'Accept' (if needed)
164
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
165
+ header_params[:'X-Account-Token'] = x_account_token
166
+
167
+ # form parameters
168
+ form_params = opts[:form_params] || {}
169
+
170
+ # http body (model)
171
+ post_body = opts[:debug_body]
172
+
173
+ # return_type
174
+ return_type = opts[:debug_return_type] || 'JobInterviewStage'
175
+
176
+ # auth_names
177
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
178
+
179
+ new_options = opts.merge(
180
+ :operation => :"JobInterviewStagesApi.job_interview_stages_retrieve",
181
+ :header_params => header_params,
182
+ :query_params => query_params,
183
+ :form_params => form_params,
184
+ :body => post_body,
185
+ :auth_names => auth_names,
186
+ :return_type => return_type
187
+ )
188
+
189
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
190
+ if @api_client.config.debugging
191
+ @api_client.config.logger.debug "API called: JobInterviewStagesApi#job_interview_stages_retrieve\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
192
+ end
193
+ return data, status_code, headers
194
+ end
195
+ end
196
+ end
@@ -0,0 +1,193 @@
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.0.0
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module MergeATSClient
16
+ class JobsApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Returns a list of `Job` objects.
23
+ # @param x_account_token [String] Token identifying the end user.
24
+ # @param [Hash] opts the optional parameters
25
+ # @option opts [Time] :created_after If provided, will only return objects created after this datetime.
26
+ # @option opts [Time] :created_before If provided, will only return objects created before this datetime.
27
+ # @option opts [String] :cursor The pagination cursor value.
28
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
29
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
30
+ # @option opts [Time] :modified_after If provided, will only return objects modified after this datetime.
31
+ # @option opts [Time] :modified_before If provided, will only return objects modified before this datetime.
32
+ # @option opts [Integer] :page_size Number of results to return per page.
33
+ # @option opts [String] :remote_id The API provider&#39;s ID for the given object.
34
+ # @return [PaginatedJobList]
35
+ def jobs_list(x_account_token, opts = {})
36
+ data, _status_code, _headers = jobs_list_with_http_info(x_account_token, opts)
37
+ data
38
+ end
39
+
40
+ # Returns a list of &#x60;Job&#x60; objects.
41
+ # @param x_account_token [String] Token identifying the end user.
42
+ # @param [Hash] opts the optional parameters
43
+ # @option opts [Time] :created_after If provided, will only return objects created after this datetime.
44
+ # @option opts [Time] :created_before If provided, will only return objects created before this datetime.
45
+ # @option opts [String] :cursor The pagination cursor value.
46
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
47
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
48
+ # @option opts [Time] :modified_after If provided, will only return objects modified after this datetime.
49
+ # @option opts [Time] :modified_before If provided, will only return objects modified before this datetime.
50
+ # @option opts [Integer] :page_size Number of results to return per page.
51
+ # @option opts [String] :remote_id The API provider&#39;s ID for the given object.
52
+ # @return [Array<(PaginatedJobList, Integer, Hash)>] PaginatedJobList data, response status code and response headers
53
+ def jobs_list_with_http_info(x_account_token, opts = {})
54
+ if @api_client.config.debugging
55
+ @api_client.config.logger.debug 'Calling API: JobsApi.jobs_list ...'
56
+ end
57
+ # verify the required parameter 'x_account_token' is set
58
+ if @api_client.config.client_side_validation && x_account_token.nil?
59
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling JobsApi.jobs_list"
60
+ end
61
+ allowable_values = ["departments", "departments,hiring_managers", "departments,offices", "departments,offices,hiring_managers", "hiring_managers", "offices", "offices,hiring_managers"]
62
+ if @api_client.config.client_side_validation && opts[:'expand'] && !allowable_values.include?(opts[:'expand'])
63
+ fail ArgumentError, "invalid value for \"expand\", must be one of #{allowable_values}"
64
+ end
65
+ # resource path
66
+ local_var_path = '/jobs'
67
+
68
+ # query parameters
69
+ query_params = opts[:query_params] || {}
70
+ query_params[:'created_after'] = opts[:'created_after'] if !opts[:'created_after'].nil?
71
+ query_params[:'created_before'] = opts[:'created_before'] if !opts[:'created_before'].nil?
72
+ query_params[:'cursor'] = opts[:'cursor'] if !opts[:'cursor'].nil?
73
+ query_params[:'expand'] = opts[:'expand'] if !opts[:'expand'].nil?
74
+ query_params[:'include_remote_data'] = opts[:'include_remote_data'] if !opts[:'include_remote_data'].nil?
75
+ query_params[:'modified_after'] = opts[:'modified_after'] if !opts[:'modified_after'].nil?
76
+ query_params[:'modified_before'] = opts[:'modified_before'] if !opts[:'modified_before'].nil?
77
+ query_params[:'page_size'] = opts[:'page_size'] if !opts[:'page_size'].nil?
78
+ query_params[:'remote_id'] = opts[:'remote_id'] if !opts[:'remote_id'].nil?
79
+
80
+ # header parameters
81
+ header_params = opts[:header_params] || {}
82
+ # HTTP header 'Accept' (if needed)
83
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
84
+ header_params[:'X-Account-Token'] = x_account_token
85
+
86
+ # form parameters
87
+ form_params = opts[:form_params] || {}
88
+
89
+ # http body (model)
90
+ post_body = opts[:debug_body]
91
+
92
+ # return_type
93
+ return_type = opts[:debug_return_type] || 'PaginatedJobList'
94
+
95
+ # auth_names
96
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
97
+
98
+ new_options = opts.merge(
99
+ :operation => :"JobsApi.jobs_list",
100
+ :header_params => header_params,
101
+ :query_params => query_params,
102
+ :form_params => form_params,
103
+ :body => post_body,
104
+ :auth_names => auth_names,
105
+ :return_type => return_type
106
+ )
107
+
108
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
109
+ if @api_client.config.debugging
110
+ @api_client.config.logger.debug "API called: JobsApi#jobs_list\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
111
+ end
112
+ return data, status_code, headers
113
+ end
114
+
115
+ # Returns a `Job` object with the given `id`.
116
+ # @param x_account_token [String] Token identifying the end user.
117
+ # @param id [String]
118
+ # @param [Hash] opts the optional parameters
119
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
120
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
121
+ # @return [Job]
122
+ def jobs_retrieve(x_account_token, id, opts = {})
123
+ data, _status_code, _headers = jobs_retrieve_with_http_info(x_account_token, id, opts)
124
+ data
125
+ end
126
+
127
+ # Returns a &#x60;Job&#x60; object with the given &#x60;id&#x60;.
128
+ # @param x_account_token [String] Token identifying the end user.
129
+ # @param id [String]
130
+ # @param [Hash] opts the optional parameters
131
+ # @option opts [String] :expand Which relations should be returned in expanded form. Multiple relation names should be comma separated without spaces.
132
+ # @option opts [Boolean] :include_remote_data Whether to include the original data Merge fetched from the third-party to produce these models.
133
+ # @return [Array<(Job, Integer, Hash)>] Job data, response status code and response headers
134
+ def jobs_retrieve_with_http_info(x_account_token, id, opts = {})
135
+ if @api_client.config.debugging
136
+ @api_client.config.logger.debug 'Calling API: JobsApi.jobs_retrieve ...'
137
+ end
138
+ # verify the required parameter 'x_account_token' is set
139
+ if @api_client.config.client_side_validation && x_account_token.nil?
140
+ fail ArgumentError, "Missing the required parameter 'x_account_token' when calling JobsApi.jobs_retrieve"
141
+ end
142
+ # verify the required parameter 'id' is set
143
+ if @api_client.config.client_side_validation && id.nil?
144
+ fail ArgumentError, "Missing the required parameter 'id' when calling JobsApi.jobs_retrieve"
145
+ end
146
+ allowable_values = ["departments", "departments,hiring_managers", "departments,offices", "departments,offices,hiring_managers", "hiring_managers", "offices", "offices,hiring_managers"]
147
+ if @api_client.config.client_side_validation && opts[:'expand'] && !allowable_values.include?(opts[:'expand'])
148
+ fail ArgumentError, "invalid value for \"expand\", must be one of #{allowable_values}"
149
+ end
150
+ # resource path
151
+ local_var_path = '/jobs/{id}'.sub('{' + 'id' + '}', CGI.escape(id.to_s))
152
+
153
+ # query parameters
154
+ query_params = opts[:query_params] || {}
155
+ query_params[:'expand'] = opts[:'expand'] if !opts[:'expand'].nil?
156
+ query_params[:'include_remote_data'] = opts[:'include_remote_data'] if !opts[:'include_remote_data'].nil?
157
+
158
+ # header parameters
159
+ header_params = opts[:header_params] || {}
160
+ # HTTP header 'Accept' (if needed)
161
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
162
+ header_params[:'X-Account-Token'] = x_account_token
163
+
164
+ # form parameters
165
+ form_params = opts[:form_params] || {}
166
+
167
+ # http body (model)
168
+ post_body = opts[:debug_body]
169
+
170
+ # return_type
171
+ return_type = opts[:debug_return_type] || 'Job'
172
+
173
+ # auth_names
174
+ auth_names = opts[:debug_auth_names] || ['tokenAuth']
175
+
176
+ new_options = opts.merge(
177
+ :operation => :"JobsApi.jobs_retrieve",
178
+ :header_params => header_params,
179
+ :query_params => query_params,
180
+ :form_params => form_params,
181
+ :body => post_body,
182
+ :auth_names => auth_names,
183
+ :return_type => return_type
184
+ )
185
+
186
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
187
+ if @api_client.config.debugging
188
+ @api_client.config.logger.debug "API called: JobsApi#jobs_retrieve\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
189
+ end
190
+ return data, status_code, headers
191
+ end
192
+ end
193
+ end