Batch create jobs (v3)

Create multiple jobs.

Code sample

Ruby

To learn how to install and use the client library for CTS, see CTS client libraries.

To authenticate to CTS, set up Application Default Credentials. For more information, see Set up authentication for a local development environment.

# project_id     = "Id of the project"
# company_name   = "The resource name of the company listing the job. The format is "projects/{project_id}/companies/{company_id}""

require "google/apis/jobs_v3"

jobs = Google::Apis::JobsV3
talent_solution_client = jobs::CloudTalentSolutionService.new
# @see https://developers.google.com/identity/protocols/application-default-credentials#callingruby
talent_solution_client.authorization = Google::Auth.get_application_default(
  "https://www.googleapis.com/auth/jobs"
)

jobs_created = []
job_generated1 = jobs::Job.new requisition_id:   "Job: #{company_name} 1",
                               title:            " Lab Technician",
                               company_name:     company_name,
                               employment_types: ["FULL_TIME"],
                               language_code:    "en-US",
                               application_info:
                                                 (jobs::ApplicationInfo.new uris: ["http://careers.google.com"]),
                               description:      "Design and improve software."
job_generated2 = jobs::Job.new requisition_id:   "Job: #{company_name} 2",
                               title:            "Systems Administrator",
                               company_name:     company_name,
                               employment_types: ["FULL_TIME"],
                               language_code:    "en-US",
                               application_info:
                                                 (jobs::ApplicationInfo.new uris: ["http://careers.google.com"]),
                               description:      "System Administrator for software."

create_job_request1 = jobs::CreateJobRequest.new job: job_generated1
create_job_request2 = jobs::CreateJobRequest.new job: job_generated2

talent_solution_client.batch do |client|
  client.create_job project_id, create_job_request1 do |job, err|
    if err.nil?
      jobs_created.push job
    else
      puts "Batch job create error message: #{err.message}"
    end
  end
  client.create_job project_id, create_job_request2 do |job, err|
    if err.nil?
      jobs_created.push job
    else
      puts "Batch job create error message: #{err.message}"
    end
  end
end
# jobCreated = batchCreate.create_job(project_id, create_job_request1)
puts "Batch job created: #{jobs_created.to_json}"
jobs_created

What's next

To search and filter code samples for other Google Cloud products, see the Google Cloud sample browser.