Class: Merge::Ats::ApplicationsClient
- Inherits:
-
Object
- Object
- Merge::Ats::ApplicationsClient
- Defined in:
- lib/merge_ruby_client/ats/applications/client.rb
Instance Attribute Summary collapse
Instance Method Summary collapse
-
#change_stage_create(id:, is_debug_mode: nil, run_async: nil, job_interview_stage: nil, remote_user_id: nil, request_options: nil) ⇒ Merge::Ats::ApplicationResponse
Updates the ‘current_stage` field of an `Application` object.
-
#create(model:, remote_user_id:, is_debug_mode: nil, run_async: nil, request_options: nil) ⇒ Merge::Ats::ApplicationResponse
Creates an ‘Application` object with the given values.
- #initialize(request_client:) ⇒ Merge::Ats::ApplicationsClient constructor
-
#list(candidate_id: nil, created_after: nil, created_before: nil, credited_to_id: nil, current_stage_id: nil, cursor: nil, expand: nil, include_deleted_data: nil, include_remote_data: nil, include_shell_data: nil, job_id: nil, modified_after: nil, modified_before: nil, page_size: nil, reject_reason_id: nil, remote_id: nil, source: nil, request_options: nil) ⇒ Merge::Ats::PaginatedApplicationList
Returns a list of ‘Application` objects.
-
#meta_post_retrieve(application_remote_template_id: nil, request_options: nil) ⇒ Merge::Ats::MetaResponse
Returns metadata for ‘Application` POSTs.
-
#retrieve(id:, expand: nil, include_remote_data: nil, include_shell_data: nil, request_options: nil) ⇒ Merge::Ats::Application
Returns an ‘Application` object with the given `id`.
Constructor Details
#initialize(request_client:) ⇒ Merge::Ats::ApplicationsClient
22 23 24 |
# File 'lib/merge_ruby_client/ats/applications/client.rb', line 22 def initialize(request_client:) @request_client = request_client end |
Instance Attribute Details
#request_client ⇒ Merge::RequestClient (readonly)
18 19 20 |
# File 'lib/merge_ruby_client/ats/applications/client.rb', line 18 def request_client @request_client end |
Instance Method Details
#change_stage_create(id:, is_debug_mode: nil, run_async: nil, job_interview_stage: nil, remote_user_id: nil, request_options: nil) ⇒ Merge::Ats::ApplicationResponse
Updates the ‘current_stage` field of an `Application` object
217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 |
# File 'lib/merge_ruby_client/ats/applications/client.rb', line 217 def change_stage_create(id:, is_debug_mode: nil, run_async: nil, job_interview_stage: nil, remote_user_id: nil, request_options: nil) response = @request_client.conn.post do |req| req..timeout = .timeout_in_seconds unless &.timeout_in_seconds.nil? req.headers["Authorization"] = .api_key unless &.api_key.nil? req.headers["X-Account-Token"] = .account_token unless &.account_token.nil? req.headers = { **(req.headers || {}), **@request_client.get_headers, **(&.additional_headers || {}) }.compact req.params = { **(&.additional_query_parameters || {}), "is_debug_mode": is_debug_mode, "run_async": run_async }.compact req.body = { **(&.additional_body_parameters || {}), job_interview_stage: job_interview_stage, remote_user_id: remote_user_id }.compact req.url "#{@request_client.get_url(request_options: )}/ats/v1/applications/#{id}/change-stage" end Merge::Ats::ApplicationResponse.from_json(json_object: response.body) end |
#create(model:, remote_user_id:, is_debug_mode: nil, run_async: nil, request_options: nil) ⇒ Merge::Ats::ApplicationResponse
Creates an ‘Application` object with the given values.
For certain integrations, but not all, our API detects duplicate candidates and
will associate applications with existing records in the third-party. New
candidates are created and automatically linked to the application.
See our [Help Center
tps://help.merge.dev/en/articles/10012366-updates-to-post-applications-oct-2024)
for detailed support per integration.
134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 |
# File 'lib/merge_ruby_client/ats/applications/client.rb', line 134 def create(model:, remote_user_id:, is_debug_mode: nil, run_async: nil, request_options: nil) response = @request_client.conn.post do |req| req..timeout = .timeout_in_seconds unless &.timeout_in_seconds.nil? req.headers["Authorization"] = .api_key unless &.api_key.nil? req.headers["X-Account-Token"] = .account_token unless &.account_token.nil? req.headers = { **(req.headers || {}), **@request_client.get_headers, **(&.additional_headers || {}) }.compact req.params = { **(&.additional_query_parameters || {}), "is_debug_mode": is_debug_mode, "run_async": run_async }.compact req.body = { **(&.additional_body_parameters || {}), model: model, remote_user_id: remote_user_id }.compact req.url "#{@request_client.get_url(request_options: )}/ats/v1/applications" end Merge::Ats::ApplicationResponse.from_json(json_object: response.body) end |
#list(candidate_id: nil, created_after: nil, created_before: nil, credited_to_id: nil, current_stage_id: nil, cursor: nil, expand: nil, include_deleted_data: nil, include_remote_data: nil, include_shell_data: nil, job_id: nil, modified_after: nil, modified_before: nil, page_size: nil, reject_reason_id: nil, remote_id: nil, source: nil, request_options: nil) ⇒ Merge::Ats::PaginatedApplicationList
Returns a list of ‘Application` objects.
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/merge_ruby_client/ats/applications/client.rb', line 61 def list(candidate_id: nil, created_after: nil, created_before: nil, credited_to_id: nil, current_stage_id: nil, cursor: nil, expand: nil, include_deleted_data: nil, include_remote_data: nil, include_shell_data: nil, job_id: nil, modified_after: nil, modified_before: nil, page_size: nil, reject_reason_id: nil, remote_id: nil, source: nil, request_options: nil) response = @request_client.conn.get do |req| req..timeout = .timeout_in_seconds unless &.timeout_in_seconds.nil? req.headers["Authorization"] = .api_key unless &.api_key.nil? req.headers["X-Account-Token"] = .account_token unless &.account_token.nil? req.headers = { **(req.headers || {}), **@request_client.get_headers, **(&.additional_headers || {}) }.compact req.params = { **(&.additional_query_parameters || {}), "candidate_id": candidate_id, "created_after": created_after, "created_before": created_before, "credited_to_id": credited_to_id, "current_stage_id": current_stage_id, "cursor": cursor, "expand": , "include_deleted_data": include_deleted_data, "include_remote_data": include_remote_data, "include_shell_data": include_shell_data, "job_id": job_id, "modified_after": modified_after, "modified_before": modified_before, "page_size": page_size, "reject_reason_id": reject_reason_id, "remote_id": remote_id, "source": source }.compact unless .nil? || &.additional_body_parameters.nil? req.body = { **(&.additional_body_parameters || {}) }.compact end req.url "#{@request_client.get_url(request_options: )}/ats/v1/applications" end Merge::Ats::PaginatedApplicationList.from_json(json_object: response.body) end |
#meta_post_retrieve(application_remote_template_id: nil, request_options: nil) ⇒ Merge::Ats::MetaResponse
Returns metadata for ‘Application` POSTs.
255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 |
# File 'lib/merge_ruby_client/ats/applications/client.rb', line 255 def (application_remote_template_id: nil, request_options: nil) response = @request_client.conn.get do |req| req..timeout = .timeout_in_seconds unless &.timeout_in_seconds.nil? req.headers["Authorization"] = .api_key unless &.api_key.nil? req.headers["X-Account-Token"] = .account_token unless &.account_token.nil? req.headers = { **(req.headers || {}), **@request_client.get_headers, **(&.additional_headers || {}) }.compact req.params = { **(&.additional_query_parameters || {}), "application_remote_template_id": application_remote_template_id }.compact unless .nil? || &.additional_body_parameters.nil? req.body = { **(&.additional_body_parameters || {}) }.compact end req.url "#{@request_client.get_url(request_options: )}/ats/v1/applications/meta/post" end Merge::Ats::MetaResponse.from_json(json_object: response.body) end |
#retrieve(id:, expand: nil, include_remote_data: nil, include_shell_data: nil, request_options: nil) ⇒ Merge::Ats::Application
Returns an ‘Application` object with the given `id`.
177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 |
# File 'lib/merge_ruby_client/ats/applications/client.rb', line 177 def retrieve(id:, expand: nil, include_remote_data: nil, include_shell_data: nil, request_options: nil) response = @request_client.conn.get do |req| req..timeout = .timeout_in_seconds unless &.timeout_in_seconds.nil? req.headers["Authorization"] = .api_key unless &.api_key.nil? req.headers["X-Account-Token"] = .account_token unless &.account_token.nil? req.headers = { **(req.headers || {}), **@request_client.get_headers, **(&.additional_headers || {}) }.compact req.params = { **(&.additional_query_parameters || {}), "expand": , "include_remote_data": include_remote_data, "include_shell_data": include_shell_data }.compact unless .nil? || &.additional_body_parameters.nil? req.body = { **(&.additional_body_parameters || {}) }.compact end req.url "#{@request_client.get_url(request_options: )}/ats/v1/applications/#{id}" end Merge::Ats::Application.from_json(json_object: response.body) end |