Cloud Talent Solution V4beta1 API - Class Google::Cloud::Talent::V4beta1::JobService::Client (v0.4.6)

Reference documentation and code samples for the Cloud Talent Solution V4beta1 API class Google::Cloud::Talent::V4beta1::JobService::Client.

Client for the JobService service.

A service handles job management, including job CRUD, enumeration and search.

Inherits

  • Object

Methods

.configure

def self.configure() { |config| ... } -> Client::Configuration

Configure the JobService Client class.

See Configuration for a description of the configuration fields.

Yields
  • (config) — Configure the Client client.
Yield Parameter
Example
# Modify the configuration for all JobService clients
::Google::Cloud::Talent::V4beta1::JobService::Client.configure do |config|
  config.timeout = 10.0
end

#batch_create_jobs

def batch_create_jobs(request, options = nil) -> ::Gapic::Operation
def batch_create_jobs(parent: nil, jobs: nil) -> ::Gapic::Operation

Begins executing a batch create jobs operation.

Overloads
def batch_create_jobs(request, options = nil) -> ::Gapic::Operation
Pass arguments to batch_create_jobs via a request object, either of type BatchCreateJobsRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Talent::V4beta1::BatchCreateJobsRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def batch_create_jobs(parent: nil, jobs: nil) -> ::Gapic::Operation
Pass arguments to batch_create_jobs via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • parent (::String) — Required. The resource name of the tenant under which the job is created.

    The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified, a default tenant is created. For example, "projects/foo".

  • jobs (::Array<::Google::Cloud::Talent::V4beta1::Job, ::Hash>) — Required. The jobs to be created.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
  • response (::Gapic::Operation)
  • operation (::GRPC::ActiveCall::Operation)
Returns
  • (::Gapic::Operation)
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/talent/v4beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Talent::V4beta1::JobService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Talent::V4beta1::BatchCreateJobsRequest.new

# Call the batch_create_jobs method.
result = client.batch_create_jobs request

# The returned object is of type Gapic::Operation. You can use this
# object to check the status of an operation, cancel it, or wait
# for results. Here is how to block until completion:
result.wait_until_done! timeout: 60
if result.response?
  p result.response
else
  puts "Error!"
end

#batch_delete_jobs

def batch_delete_jobs(request, options = nil) -> ::Google::Protobuf::Empty
def batch_delete_jobs(parent: nil, filter: nil) -> ::Google::Protobuf::Empty

Deletes a list of {::Google::Cloud::Talent::V4beta1::Job Job}s by filter.

Overloads
def batch_delete_jobs(request, options = nil) -> ::Google::Protobuf::Empty
Pass arguments to batch_delete_jobs via a request object, either of type BatchDeleteJobsRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Talent::V4beta1::BatchDeleteJobsRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def batch_delete_jobs(parent: nil, filter: nil) -> ::Google::Protobuf::Empty
Pass arguments to batch_delete_jobs via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • parent (::String) — Required. The resource name of the tenant under which the job is created.

    The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified, a default tenant is created. For example, "projects/foo".

  • filter (::String) — Required. The filter string specifies the jobs to be deleted.

    Supported operator: =, AND

    The fields eligible for filtering are:

    • companyName (Required)
    • requisitionId (Required)

    Sample Query: companyName = "projects/foo/companies/bar" AND requisitionId = "req-1"

Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/talent/v4beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Talent::V4beta1::JobService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Talent::V4beta1::BatchDeleteJobsRequest.new

# Call the batch_delete_jobs method.
result = client.batch_delete_jobs request

# The returned object is of type Google::Protobuf::Empty.
p result

#batch_update_jobs

def batch_update_jobs(request, options = nil) -> ::Gapic::Operation
def batch_update_jobs(parent: nil, jobs: nil, update_mask: nil) -> ::Gapic::Operation

Begins executing a batch update jobs operation.

Overloads
def batch_update_jobs(request, options = nil) -> ::Gapic::Operation
Pass arguments to batch_update_jobs via a request object, either of type BatchUpdateJobsRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Talent::V4beta1::BatchUpdateJobsRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def batch_update_jobs(parent: nil, jobs: nil, update_mask: nil) -> ::Gapic::Operation
Pass arguments to batch_update_jobs via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • parent (::String) — Required. The resource name of the tenant under which the job is created.

    The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified, a default tenant is created. For example, "projects/foo".

  • jobs (::Array<::Google::Cloud::Talent::V4beta1::Job, ::Hash>) — Required. The jobs to be updated.
  • update_mask (::Google::Protobuf::FieldMask, ::Hash) — Strongly recommended for the best service experience. Be aware that it will also increase latency when checking the status of a batch operation.

    If update_mask is provided, only the specified fields in Job are updated. Otherwise all the fields are updated.

    A field mask to restrict the fields that are updated. Only top level fields of Job are supported.

    If update_mask is provided, The Job inside JobResult will only contains fields that is updated, plus the Id of the Job. Otherwise, Job will include all fields, which can yield a very large response.

Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
  • response (::Gapic::Operation)
  • operation (::GRPC::ActiveCall::Operation)
Returns
  • (::Gapic::Operation)
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/talent/v4beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Talent::V4beta1::JobService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Talent::V4beta1::BatchUpdateJobsRequest.new

# Call the batch_update_jobs method.
result = client.batch_update_jobs request

# The returned object is of type Gapic::Operation. You can use this
# object to check the status of an operation, cancel it, or wait
# for results. Here is how to block until completion:
result.wait_until_done! timeout: 60
if result.response?
  p result.response
else
  puts "Error!"
end

#configure

def configure() { |config| ... } -> Client::Configuration

Configure the JobService Client instance.

The configuration is set to the derived mode, meaning that values can be changed, but structural changes (adding new fields, etc.) are not allowed. Structural changes should be made on Client.configure.

See Configuration for a description of the configuration fields.

Yields
  • (config) — Configure the Client client.
Yield Parameter

#create_job

def create_job(request, options = nil) -> ::Google::Cloud::Talent::V4beta1::Job
def create_job(parent: nil, job: nil) -> ::Google::Cloud::Talent::V4beta1::Job

Creates a new job.

Typically, the job becomes searchable within 10 seconds, but it may take up to 5 minutes.

Overloads
def create_job(request, options = nil) -> ::Google::Cloud::Talent::V4beta1::Job
Pass arguments to create_job via a request object, either of type CreateJobRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Talent::V4beta1::CreateJobRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def create_job(parent: nil, job: nil) -> ::Google::Cloud::Talent::V4beta1::Job
Pass arguments to create_job via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • parent (::String) — Required. The resource name of the tenant under which the job is created.

    The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified a default tenant is created. For example, "projects/foo".

  • job (::Google::Cloud::Talent::V4beta1::Job, ::Hash) — Required. The Job to be created.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/talent/v4beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Talent::V4beta1::JobService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Talent::V4beta1::CreateJobRequest.new

# Call the create_job method.
result = client.create_job request

# The returned object is of type Google::Cloud::Talent::V4beta1::Job.
p result

#delete_job

def delete_job(request, options = nil) -> ::Google::Protobuf::Empty
def delete_job(name: nil) -> ::Google::Protobuf::Empty

Deletes the specified job.

Typically, the job becomes unsearchable within 10 seconds, but it may take up to 5 minutes.

Overloads
def delete_job(request, options = nil) -> ::Google::Protobuf::Empty
Pass arguments to delete_job via a request object, either of type DeleteJobRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Talent::V4beta1::DeleteJobRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def delete_job(name: nil) -> ::Google::Protobuf::Empty
Pass arguments to delete_job via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameter
  • name (::String) — Required. The resource name of the job to be deleted.

    The format is "projects/{project_id}/tenants/{tenant_id}/jobs/{job_id}". For example, "projects/foo/tenants/bar/jobs/baz".

    If tenant id is unspecified, the default tenant is used. For example, "projects/foo/jobs/bar".

Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/talent/v4beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Talent::V4beta1::JobService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Talent::V4beta1::DeleteJobRequest.new

# Call the delete_job method.
result = client.delete_job request

# The returned object is of type Google::Protobuf::Empty.
p result

#get_job

def get_job(request, options = nil) -> ::Google::Cloud::Talent::V4beta1::Job
def get_job(name: nil) -> ::Google::Cloud::Talent::V4beta1::Job

Retrieves the specified job, whose status is OPEN or recently EXPIRED within the last 90 days.

Overloads
def get_job(request, options = nil) -> ::Google::Cloud::Talent::V4beta1::Job
Pass arguments to get_job via a request object, either of type GetJobRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Talent::V4beta1::GetJobRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def get_job(name: nil) -> ::Google::Cloud::Talent::V4beta1::Job
Pass arguments to get_job via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameter
  • name (::String) — Required. The resource name of the job to retrieve.

    The format is "projects/{project_id}/tenants/{tenant_id}/jobs/{job_id}". For example, "projects/foo/tenants/bar/jobs/baz".

    If tenant id is unspecified, the default tenant is used. For example, "projects/foo/jobs/bar".

Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/talent/v4beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Talent::V4beta1::JobService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Talent::V4beta1::GetJobRequest.new

# Call the get_job method.
result = client.get_job request

# The returned object is of type Google::Cloud::Talent::V4beta1::Job.
p result

#initialize

def initialize() { |config| ... } -> Client

Create a new JobService client object.

Yields
  • (config) — Configure the JobService client.
Yield Parameter
Returns
  • (Client) — a new instance of Client
Example
# Create a client using the default configuration
client = ::Google::Cloud::Talent::V4beta1::JobService::Client.new

# Create a client using a custom configuration
client = ::Google::Cloud::Talent::V4beta1::JobService::Client.new do |config|
  config.timeout = 10.0
end

#list_jobs

def list_jobs(request, options = nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::Talent::V4beta1::Job>
def list_jobs(parent: nil, filter: nil, page_token: nil, page_size: nil, job_view: nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::Talent::V4beta1::Job>

Lists jobs by filter.

Overloads
def list_jobs(request, options = nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::Talent::V4beta1::Job>
Pass arguments to list_jobs via a request object, either of type ListJobsRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Talent::V4beta1::ListJobsRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def list_jobs(parent: nil, filter: nil, page_token: nil, page_size: nil, job_view: nil) -> ::Gapic::PagedEnumerable<::Google::Cloud::Talent::V4beta1::Job>
Pass arguments to list_jobs via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • parent (::String) — Required. The resource name of the tenant under which the job is created.

    The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified, a default tenant is created. For example, "projects/foo".

  • filter (::String) —

    Required. The filter string specifies the jobs to be enumerated.

    Supported operator: =, AND

    The fields eligible for filtering are:

    • companyName (Required)
    • requisitionId
    • status Available values: OPEN, EXPIRED, ALL. Defaults to OPEN if no value is specified.

    Sample Query:

    • companyName = "projects/foo/tenants/bar/companies/baz"
    • companyName = "projects/foo/tenants/bar/companies/baz" AND requisitionId = "req-1"
    • companyName = "projects/foo/tenants/bar/companies/baz" AND status = "EXPIRED"
  • page_token (::String) — The starting point of a query result.
  • page_size (::Integer) — The maximum number of jobs to be returned per page of results.

    If job_view is set to JobView.JOB_VIEW_ID_ONLY, the maximum allowed page size is 1000. Otherwise, the maximum allowed page size is 100.

    Default is 100 if empty or a number < 1 is specified.

  • job_view (::Google::Cloud::Talent::V4beta1::JobView) — The desired job attributes returned for jobs in the search response. Defaults to JobView.JOB_VIEW_FULL if no value is specified.
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Returns
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/talent/v4beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Talent::V4beta1::JobService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Talent::V4beta1::ListJobsRequest.new

# Call the list_jobs method.
result = client.list_jobs request

# The returned object is of type Gapic::PagedEnumerable. You can
# iterate over all elements by calling #each, and the enumerable
# will lazily make API calls to fetch subsequent pages. Other
# methods are also available for managing paging directly.
result.each do |response|
  # Each element is of type ::Google::Cloud::Talent::V4beta1::Job.
  p response
end

#operations_client

def operations_client() -> ::Google::Cloud::Talent::V4beta1::JobService::Operations

Get the associated client for long-running operations.

#search_jobs

def search_jobs(request, options = nil) -> ::Google::Cloud::Talent::V4beta1::SearchJobsResponse
def search_jobs(parent: nil, search_mode: nil, request_metadata: nil, job_query: nil, enable_broadening: nil, require_precise_result_size: nil, histogram_queries: nil, job_view: nil, offset: nil, page_size: nil, page_token: nil, order_by: nil, diversification_level: nil, custom_ranking_info: nil, disable_keyword_match: nil) -> ::Google::Cloud::Talent::V4beta1::SearchJobsResponse

Searches for jobs using the provided SearchJobsRequest.

This call constrains the visibility of jobs present in the database, and only returns jobs that the caller has permission to search against.

Overloads
def search_jobs(request, options = nil) -> ::Google::Cloud::Talent::V4beta1::SearchJobsResponse
Pass arguments to search_jobs via a request object, either of type SearchJobsRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Talent::V4beta1::SearchJobsRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def search_jobs(parent: nil, search_mode: nil, request_metadata: nil, job_query: nil, enable_broadening: nil, require_precise_result_size: nil, histogram_queries: nil, job_view: nil, offset: nil, page_size: nil, page_token: nil, order_by: nil, diversification_level: nil, custom_ranking_info: nil, disable_keyword_match: nil) -> ::Google::Cloud::Talent::V4beta1::SearchJobsResponse
Pass arguments to search_jobs via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • parent (::String) — Required. The resource name of the tenant to search within.

    The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified, a default tenant is created. For example, "projects/foo".

  • search_mode (::Google::Cloud::Talent::V4beta1::SearchJobsRequest::SearchMode) — Mode of a search.

    Defaults to SearchMode.JOB_SEARCH.

  • request_metadata (::Google::Cloud::Talent::V4beta1::RequestMetadata, ::Hash) — Required. The meta information collected about the job searcher, used to improve the search quality of the service. The identifiers (such as user_id) are provided by users, and must be unique and consistent.
  • job_query (::Google::Cloud::Talent::V4beta1::JobQuery, ::Hash) — Query used to search against jobs, such as keyword, location filters, etc.
  • enable_broadening (::Boolean) — Controls whether to broaden the search when it produces sparse results. Broadened queries append results to the end of the matching results list.

    Defaults to false.

  • require_precise_result_size (::Boolean) — Controls if the search job request requires the return of a precise count of the first 300 results. Setting this to true ensures consistency in the number of results per page. Best practice is to set this value to true if a client allows users to jump directly to a non-sequential search results page.

    Enabling this flag may adversely impact performance.

    Defaults to false.

  • histogram_queries (::Array<::Google::Cloud::Talent::V4beta1::HistogramQuery, ::Hash>) —

    An expression specifies a histogram request against matching jobs.

    Expression syntax is an aggregation function call with histogram facets and other options.

    Available aggregation function calls are:

    • count(string_histogram_facet): Count the number of matching entities, for each distinct attribute value.
    • count(numeric_histogram_facet, list of buckets): Count the number of matching entities within each bucket.

    Data types:

    • Histogram facet: facet names with format [a-zA-Z][a-zA-Z0-9_]+.
    • String: string like "any string with backslash escape for quote(\")."
    • Number: whole number and floating point number like 10, -1 and -0.01.
    • List: list of elements with comma(,) separator surrounded by square brackets, for example, [1, 2, 3] and ["one", "two", "three"].

    Built-in constants:

    • MIN (minimum number similar to java Double.MIN_VALUE)
    • MAX (maximum number similar to java Double.MAX_VALUE)

    Built-in functions:

    • bucket(start, end[, label]): bucket built-in function creates a bucket with range of [start, end). Note that the end is exclusive, for example, bucket(1, MAX, "positive number") or bucket(1, 10).

    Job histogram facets:

    • company_display_name: histogram by Job.company_display_name.
    • employment_type: histogram by Job.employment_types, for example, "FULL_TIME", "PART_TIME".
    • company_size: histogram by CompanySize, for example, "SMALL", "MEDIUM", "BIG".
    • publish_time_in_month: histogram by the Job.posting_publish_time in months. Must specify list of numeric buckets in spec.
    • publish_time_in_year: histogram by the Job.posting_publish_time in years. Must specify list of numeric buckets in spec.
    • degree_types: histogram by the Job.degree_types, for example, "Bachelors", "Masters".
    • job_level: histogram by the Job.job_level, for example, "Entry Level".
    • country: histogram by the country code of jobs, for example, "US", "FR".
    • admin1: histogram by the admin1 code of jobs, which is a global placeholder referring to the state, province, or the particular term a country uses to define the geographic structure below the country level, for example, "CA", "IL".
    • city: histogram by a combination of the "city name, admin1 code". For example, "Mountain View, CA", "New York, NY".
    • admin1_country: histogram by a combination of the "admin1 code, country", for example, "CA, US", "IL, US".
    • city_coordinate: histogram by the city center's GPS coordinates (latitude and longitude), for example, 37.4038522,-122.0987765. Since the coordinates of a city center can change, customers may need to refresh them periodically.
    • locale: histogram by the Job.language_code, for example, "en-US", "fr-FR".
    • language: histogram by the language subtag of the Job.language_code, for example, "en", "fr".
    • category: histogram by the JobCategory, for example, "COMPUTER_AND_IT", "HEALTHCARE".
    • base_compensation_unit: histogram by the CompensationInfo.CompensationUnit of base salary, for example, "WEEKLY", "MONTHLY".
    • base_compensation: histogram by the base salary. Must specify list of numeric buckets to group results by.
    • annualized_base_compensation: histogram by the base annualized salary. Must specify list of numeric buckets to group results by.
    • annualized_total_compensation: histogram by the total annualized salary. Must specify list of numeric buckets to group results by.
    • string_custom_attribute: histogram by string Job.custom_attributes. Values can be accessed via square bracket notations like string_custom_attribute["key1"].
    • numeric_custom_attribute: histogram by numeric Job.custom_attributes. Values can be accessed via square bracket notations like numeric_custom_attribute["key1"]. Must specify list of numeric buckets to group results by.

    Example expressions:

    • count(admin1)
    • count(base_compensation, [bucket(1000, 10000), bucket(10000, 100000), bucket(100000, MAX)])
    • count(string_custom_attribute["some-string-custom-attribute"])
    • count(numeric_custom_attribute["some-numeric-custom-attribute"], [bucket(MIN, 0, "negative"), bucket(0, MAX, "non-negative"])
  • job_view (::Google::Cloud::Talent::V4beta1::JobView) — The desired job attributes returned for jobs in the search response. Defaults to JobView.JOB_VIEW_SMALL if no value is specified.
  • offset (::Integer) — An integer that specifies the current offset (that is, starting result location, amongst the jobs deemed by the API as relevant) in search results. This field is only considered if page_token is unset.

    The maximum allowed value is 5000. Otherwise an error is thrown.

    For example, 0 means to return results starting from the first matching job, and 10 means to return from the 11th job. This can be used for pagination, (for example, pageSize = 10 and offset = 10 means to return from the second page).

  • page_size (::Integer) — A limit on the number of jobs returned in the search results. Increasing this value above the default value of 10 can increase search response time. The value can be between 1 and 100.
  • page_token (::String) — The token specifying the current offset within search results. See SearchJobsResponse.next_page_token for an explanation of how to obtain the next set of query results.
  • order_by (::String) —

    The criteria determining how search results are sorted. Default is "relevance desc".

    Supported options are:

    • "relevance desc": By relevance descending, as determined by the API algorithms. Relevance thresholding of query results is only available with this ordering.
    • "posting_publish_time desc": By Job.posting_publish_time descending.
    • "posting_update_time desc": By Job.posting_update_time descending.
    • "title": By Job.title ascending.
    • "title desc": By Job.title descending.
    • "annualized_base_compensation": By job's CompensationInfo.annualized_base_compensation_range ascending. Jobs whose annualized base compensation is unspecified are put at the end of search results.
    • "annualized_base_compensation desc": By job's CompensationInfo.annualized_base_compensation_range descending. Jobs whose annualized base compensation is unspecified are put at the end of search results.
    • "annualized_total_compensation": By job's CompensationInfo.annualized_total_compensation_range ascending. Jobs whose annualized base compensation is unspecified are put at the end of search results.
    • "annualized_total_compensation desc": By job's CompensationInfo.annualized_total_compensation_range descending. Jobs whose annualized base compensation is unspecified are put at the end of search results.
    • "custom_ranking desc": By the relevance score adjusted to the SearchJobsRequest.CustomRankingInfo.ranking_expression with weight factor assigned by SearchJobsRequest.CustomRankingInfo.importance_level in descending order.
    • Location sorting: Use the special syntax to order jobs by distance:
      "distance_from('Hawaii')": Order by distance from Hawaii.
      "distance_from(19.89, 155.5)": Order by distance from a coordinate.
      "distance_from('Hawaii'), distance_from('Puerto Rico')": Order by multiple locations. See details below.
      "distance_from('Hawaii'), distance_from(19.89, 155.5)": Order by multiple locations. See details below.
      The string can have a maximum of 256 characters. When multiple distance centers are provided, a job that is close to any of the distance centers would have a high rank. When a job has multiple locations, the job location closest to one of the distance centers will be used. Jobs that don't have locations will be ranked at the bottom. Distance is calculated with a precision of 11.3 meters (37.4 feet). Diversification strategy is still applied unless explicitly disabled in diversification_level.
  • diversification_level (::Google::Cloud::Talent::V4beta1::SearchJobsRequest::DiversificationLevel) — Controls whether highly similar jobs are returned next to each other in the search results. Jobs are identified as highly similar based on their titles, job categories, and locations. Highly similar results are clustered so that only one representative job of the cluster is displayed to the job seeker higher up in the results, with the other jobs being displayed lower down in the results.

    Defaults to DiversificationLevel.SIMPLE if no value is specified.

  • custom_ranking_info (::Google::Cloud::Talent::V4beta1::SearchJobsRequest::CustomRankingInfo, ::Hash) — Controls over how job documents get ranked on top of existing relevance score (determined by API algorithm).
  • disable_keyword_match (::Boolean) — Controls whether to disable exact keyword match on Job.title, Job.description, Job.company_display_name, Job.addresses, Job.qualifications. When disable keyword match is turned off, a keyword match returns jobs that do not match given category filters when there are matching keywords. For example, for the query "program manager," a result is returned even if the job posting has the title "software developer," which doesn't fall into "program manager" ontology, but does have "program manager" appearing in its description.

    For queries like "cloud" that don't contain title or location specific ontology, jobs with "cloud" keyword matches are returned regardless of this flag's value.

    Use Company.keyword_searchable_job_custom_attributes if company-specific globally matched custom field/attribute string values are needed. Enabling keyword match improves recall of subsequent search requests.

    Defaults to false.

Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/talent/v4beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Talent::V4beta1::JobService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Talent::V4beta1::SearchJobsRequest.new

# Call the search_jobs method.
result = client.search_jobs request

# The returned object is of type Google::Cloud::Talent::V4beta1::SearchJobsResponse.
p result

#search_jobs_for_alert

def search_jobs_for_alert(request, options = nil) -> ::Google::Cloud::Talent::V4beta1::SearchJobsResponse
def search_jobs_for_alert(parent: nil, search_mode: nil, request_metadata: nil, job_query: nil, enable_broadening: nil, require_precise_result_size: nil, histogram_queries: nil, job_view: nil, offset: nil, page_size: nil, page_token: nil, order_by: nil, diversification_level: nil, custom_ranking_info: nil, disable_keyword_match: nil) -> ::Google::Cloud::Talent::V4beta1::SearchJobsResponse

Searches for jobs using the provided SearchJobsRequest.

This API call is intended for the use case of targeting passive job seekers (for example, job seekers who have signed up to receive email alerts about potential job opportunities), and has different algorithmic adjustments that are targeted to passive job seekers.

This call constrains the visibility of jobs present in the database, and only returns jobs the caller has permission to search against.

Overloads
def search_jobs_for_alert(request, options = nil) -> ::Google::Cloud::Talent::V4beta1::SearchJobsResponse
Pass arguments to search_jobs_for_alert via a request object, either of type SearchJobsRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Talent::V4beta1::SearchJobsRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def search_jobs_for_alert(parent: nil, search_mode: nil, request_metadata: nil, job_query: nil, enable_broadening: nil, require_precise_result_size: nil, histogram_queries: nil, job_view: nil, offset: nil, page_size: nil, page_token: nil, order_by: nil, diversification_level: nil, custom_ranking_info: nil, disable_keyword_match: nil) -> ::Google::Cloud::Talent::V4beta1::SearchJobsResponse
Pass arguments to search_jobs_for_alert via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
  • parent (::String) — Required. The resource name of the tenant to search within.

    The format is "projects/{project_id}/tenants/{tenant_id}". For example, "projects/foo/tenant/bar". If tenant id is unspecified, a default tenant is created. For example, "projects/foo".

  • search_mode (::Google::Cloud::Talent::V4beta1::SearchJobsRequest::SearchMode) — Mode of a search.

    Defaults to SearchMode.JOB_SEARCH.

  • request_metadata (::Google::Cloud::Talent::V4beta1::RequestMetadata, ::Hash) — Required. The meta information collected about the job searcher, used to improve the search quality of the service. The identifiers (such as user_id) are provided by users, and must be unique and consistent.
  • job_query (::Google::Cloud::Talent::V4beta1::JobQuery, ::Hash) — Query used to search against jobs, such as keyword, location filters, etc.
  • enable_broadening (::Boolean) — Controls whether to broaden the search when it produces sparse results. Broadened queries append results to the end of the matching results list.

    Defaults to false.

  • require_precise_result_size (::Boolean) — Controls if the search job request requires the return of a precise count of the first 300 results. Setting this to true ensures consistency in the number of results per page. Best practice is to set this value to true if a client allows users to jump directly to a non-sequential search results page.

    Enabling this flag may adversely impact performance.

    Defaults to false.

  • histogram_queries (::Array<::Google::Cloud::Talent::V4beta1::HistogramQuery, ::Hash>) —

    An expression specifies a histogram request against matching jobs.

    Expression syntax is an aggregation function call with histogram facets and other options.

    Available aggregation function calls are:

    • count(string_histogram_facet): Count the number of matching entities, for each distinct attribute value.
    • count(numeric_histogram_facet, list of buckets): Count the number of matching entities within each bucket.

    Data types:

    • Histogram facet: facet names with format [a-zA-Z][a-zA-Z0-9_]+.
    • String: string like "any string with backslash escape for quote(\")."
    • Number: whole number and floating point number like 10, -1 and -0.01.
    • List: list of elements with comma(,) separator surrounded by square brackets, for example, [1, 2, 3] and ["one", "two", "three"].

    Built-in constants:

    • MIN (minimum number similar to java Double.MIN_VALUE)
    • MAX (maximum number similar to java Double.MAX_VALUE)

    Built-in functions:

    • bucket(start, end[, label]): bucket built-in function creates a bucket with range of [start, end). Note that the end is exclusive, for example, bucket(1, MAX, "positive number") or bucket(1, 10).

    Job histogram facets:

    • company_display_name: histogram by Job.company_display_name.
    • employment_type: histogram by Job.employment_types, for example, "FULL_TIME", "PART_TIME".
    • company_size: histogram by CompanySize, for example, "SMALL", "MEDIUM", "BIG".
    • publish_time_in_month: histogram by the Job.posting_publish_time in months. Must specify list of numeric buckets in spec.
    • publish_time_in_year: histogram by the Job.posting_publish_time in years. Must specify list of numeric buckets in spec.
    • degree_types: histogram by the Job.degree_types, for example, "Bachelors", "Masters".
    • job_level: histogram by the Job.job_level, for example, "Entry Level".
    • country: histogram by the country code of jobs, for example, "US", "FR".
    • admin1: histogram by the admin1 code of jobs, which is a global placeholder referring to the state, province, or the particular term a country uses to define the geographic structure below the country level, for example, "CA", "IL".
    • city: histogram by a combination of the "city name, admin1 code". For example, "Mountain View, CA", "New York, NY".
    • admin1_country: histogram by a combination of the "admin1 code, country", for example, "CA, US", "IL, US".
    • city_coordinate: histogram by the city center's GPS coordinates (latitude and longitude), for example, 37.4038522,-122.0987765. Since the coordinates of a city center can change, customers may need to refresh them periodically.
    • locale: histogram by the Job.language_code, for example, "en-US", "fr-FR".
    • language: histogram by the language subtag of the Job.language_code, for example, "en", "fr".
    • category: histogram by the JobCategory, for example, "COMPUTER_AND_IT", "HEALTHCARE".
    • base_compensation_unit: histogram by the CompensationInfo.CompensationUnit of base salary, for example, "WEEKLY", "MONTHLY".
    • base_compensation: histogram by the base salary. Must specify list of numeric buckets to group results by.
    • annualized_base_compensation: histogram by the base annualized salary. Must specify list of numeric buckets to group results by.
    • annualized_total_compensation: histogram by the total annualized salary. Must specify list of numeric buckets to group results by.
    • string_custom_attribute: histogram by string Job.custom_attributes. Values can be accessed via square bracket notations like string_custom_attribute["key1"].
    • numeric_custom_attribute: histogram by numeric Job.custom_attributes. Values can be accessed via square bracket notations like numeric_custom_attribute["key1"]. Must specify list of numeric buckets to group results by.

    Example expressions:

    • count(admin1)
    • count(base_compensation, [bucket(1000, 10000), bucket(10000, 100000), bucket(100000, MAX)])
    • count(string_custom_attribute["some-string-custom-attribute"])
    • count(numeric_custom_attribute["some-numeric-custom-attribute"], [bucket(MIN, 0, "negative"), bucket(0, MAX, "non-negative"])
  • job_view (::Google::Cloud::Talent::V4beta1::JobView) — The desired job attributes returned for jobs in the search response. Defaults to JobView.JOB_VIEW_SMALL if no value is specified.
  • offset (::Integer) — An integer that specifies the current offset (that is, starting result location, amongst the jobs deemed by the API as relevant) in search results. This field is only considered if page_token is unset.

    The maximum allowed value is 5000. Otherwise an error is thrown.

    For example, 0 means to return results starting from the first matching job, and 10 means to return from the 11th job. This can be used for pagination, (for example, pageSize = 10 and offset = 10 means to return from the second page).

  • page_size (::Integer) — A limit on the number of jobs returned in the search results. Increasing this value above the default value of 10 can increase search response time. The value can be between 1 and 100.
  • page_token (::String) — The token specifying the current offset within search results. See SearchJobsResponse.next_page_token for an explanation of how to obtain the next set of query results.
  • order_by (::String) —

    The criteria determining how search results are sorted. Default is "relevance desc".

    Supported options are:

    • "relevance desc": By relevance descending, as determined by the API algorithms. Relevance thresholding of query results is only available with this ordering.
    • "posting_publish_time desc": By Job.posting_publish_time descending.
    • "posting_update_time desc": By Job.posting_update_time descending.
    • "title": By Job.title ascending.
    • "title desc": By Job.title descending.
    • "annualized_base_compensation": By job's CompensationInfo.annualized_base_compensation_range ascending. Jobs whose annualized base compensation is unspecified are put at the end of search results.
    • "annualized_base_compensation desc": By job's CompensationInfo.annualized_base_compensation_range descending. Jobs whose annualized base compensation is unspecified are put at the end of search results.
    • "annualized_total_compensation": By job's CompensationInfo.annualized_total_compensation_range ascending. Jobs whose annualized base compensation is unspecified are put at the end of search results.
    • "annualized_total_compensation desc": By job's CompensationInfo.annualized_total_compensation_range descending. Jobs whose annualized base compensation is unspecified are put at the end of search results.
    • "custom_ranking desc": By the relevance score adjusted to the SearchJobsRequest.CustomRankingInfo.ranking_expression with weight factor assigned by SearchJobsRequest.CustomRankingInfo.importance_level in descending order.
    • Location sorting: Use the special syntax to order jobs by distance:
      "distance_from('Hawaii')": Order by distance from Hawaii.
      "distance_from(19.89, 155.5)": Order by distance from a coordinate.
      "distance_from('Hawaii'), distance_from('Puerto Rico')": Order by multiple locations. See details below.
      "distance_from('Hawaii'), distance_from(19.89, 155.5)": Order by multiple locations. See details below.
      The string can have a maximum of 256 characters. When multiple distance centers are provided, a job that is close to any of the distance centers would have a high rank. When a job has multiple locations, the job location closest to one of the distance centers will be used. Jobs that don't have locations will be ranked at the bottom. Distance is calculated with a precision of 11.3 meters (37.4 feet). Diversification strategy is still applied unless explicitly disabled in diversification_level.
  • diversification_level (::Google::Cloud::Talent::V4beta1::SearchJobsRequest::DiversificationLevel) — Controls whether highly similar jobs are returned next to each other in the search results. Jobs are identified as highly similar based on their titles, job categories, and locations. Highly similar results are clustered so that only one representative job of the cluster is displayed to the job seeker higher up in the results, with the other jobs being displayed lower down in the results.

    Defaults to DiversificationLevel.SIMPLE if no value is specified.

  • custom_ranking_info (::Google::Cloud::Talent::V4beta1::SearchJobsRequest::CustomRankingInfo, ::Hash) — Controls over how job documents get ranked on top of existing relevance score (determined by API algorithm).
  • disable_keyword_match (::Boolean) — Controls whether to disable exact keyword match on Job.title, Job.description, Job.company_display_name, Job.addresses, Job.qualifications. When disable keyword match is turned off, a keyword match returns jobs that do not match given category filters when there are matching keywords. For example, for the query "program manager," a result is returned even if the job posting has the title "software developer," which doesn't fall into "program manager" ontology, but does have "program manager" appearing in its description.

    For queries like "cloud" that don't contain title or location specific ontology, jobs with "cloud" keyword matches are returned regardless of this flag's value.

    Use Company.keyword_searchable_job_custom_attributes if company-specific globally matched custom field/attribute string values are needed. Enabling keyword match improves recall of subsequent search requests.

    Defaults to false.

Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/talent/v4beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Talent::V4beta1::JobService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Talent::V4beta1::SearchJobsRequest.new

# Call the search_jobs_for_alert method.
result = client.search_jobs_for_alert request

# The returned object is of type Google::Cloud::Talent::V4beta1::SearchJobsResponse.
p result

#update_job

def update_job(request, options = nil) -> ::Google::Cloud::Talent::V4beta1::Job
def update_job(job: nil, update_mask: nil) -> ::Google::Cloud::Talent::V4beta1::Job

Updates specified job.

Typically, updated contents become visible in search results within 10 seconds, but it may take up to 5 minutes.

Overloads
def update_job(request, options = nil) -> ::Google::Cloud::Talent::V4beta1::Job
Pass arguments to update_job via a request object, either of type UpdateJobRequest or an equivalent Hash.
Parameters
  • request (::Google::Cloud::Talent::V4beta1::UpdateJobRequest, ::Hash) — A request object representing the call parameters. Required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash.
  • options (::Gapic::CallOptions, ::Hash) — Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
def update_job(job: nil, update_mask: nil) -> ::Google::Cloud::Talent::V4beta1::Job
Pass arguments to update_job via keyword arguments. Note that at least one keyword argument is required. To specify no parameters, or to keep all the default parameter values, pass an empty Hash as a request object (see above).
Parameters
Yields
  • (response, operation) — Access the result along with the RPC operation
Yield Parameters
Raises
  • (::Google::Cloud::Error) — if the RPC is aborted.
Example

Basic example

require "google/cloud/talent/v4beta1"

# Create a client object. The client can be reused for multiple calls.
client = Google::Cloud::Talent::V4beta1::JobService::Client.new

# Create a request. To set request fields, pass in keyword arguments.
request = Google::Cloud::Talent::V4beta1::UpdateJobRequest.new

# Call the update_job method.
result = client.update_job request

# The returned object is of type Google::Cloud::Talent::V4beta1::Job.
p result