Class: Google::Cloud::Talent::V4beta1::ProfileService::Client

Inherits:
Object
  • Object
show all
Includes:
Paths
Defined in:
lib/google/cloud/talent/v4beta1/profile_service/client.rb

Overview

Client for the ProfileService service.

A service that handles profile management, including profile CRUD, enumeration and search.

Defined Under Namespace

Classes: Configuration

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Paths

#profile_path, #tenant_path

Constructor Details

#initialize {|config| ... } ⇒ Client

Create a new ProfileService client object.

Examples

To create a new ProfileService client with the default configuration:

client = ::Google::Cloud::Talent::V4beta1::ProfileService::Client.new

To create a new ProfileService client with a custom configuration:

client = ::Google::Cloud::Talent::V4beta1::ProfileService::Client.new do |config|
  config.timeout = 10.0
end

Yields:

  • (config)

    Configure the ProfileService client.

Yield Parameters:



145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
# File 'lib/google/cloud/talent/v4beta1/profile_service/client.rb', line 145

def initialize
  # These require statements are intentionally placed here to initialize
  # the gRPC module only when it's required.
  # See https://github.com/googleapis/toolkit/issues/446
  require "gapic/grpc"
  require "google/cloud/talent/v4beta1/profile_service_services_pb"

  # Create the configuration object
  @config = Configuration.new Client.configure

  # Yield the configuration if needed
  yield @config if block_given?

  # Create credentials
  credentials = @config.credentials
  credentials ||= Credentials.default scope: @config.scope
  if credentials.is_a?(String) || credentials.is_a?(Hash)
    credentials = Credentials.new credentials, scope: @config.scope
  end
  @quota_project_id = @config.quota_project
  @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id

  @profile_service_stub = ::Gapic::ServiceStub.new(
    ::Google::Cloud::Talent::V4beta1::ProfileService::Stub,
    credentials:  credentials,
    endpoint:     @config.endpoint,
    channel_args: @config.channel_args,
    interceptors: @config.interceptors
  )
end

Class Method Details

.configure {|config| ... } ⇒ Client::Configuration

Configure the ProfileService Client class.

See Configuration for a description of the configuration fields.

Example

To modify the configuration for all ProfileService clients:

::Google::Cloud::Talent::V4beta1::ProfileService::Client.configure do |config|
  config.timeout = 10.0
end

Yields:

  • (config)

    Configure the Client client.

Yield Parameters:

Returns:



58
59
60
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
99
100
101
102
103
# File 'lib/google/cloud/talent/v4beta1/profile_service/client.rb', line 58

def self.configure
  @configure ||= begin
    namespace = ["Google", "Cloud", "Talent", "V4beta1"]
    parent_config = while namespace.any?
                      parent_name = namespace.join "::"
                      parent_const = const_get parent_name
                      break parent_const.configure if parent_const&.respond_to? :configure
                      namespace.pop
                    end
    default_config = Client::Configuration.new parent_config

    default_config.rpcs.list_profiles.timeout = 30.0
    default_config.rpcs.list_profiles.retry_policy = {
      initial_delay: 0.1,
      max_delay:     60.0,
      multiplier:    1.3,
      retry_codes:   [4, 14]
    }

    default_config.rpcs.create_profile.timeout = 30.0

    default_config.rpcs.get_profile.timeout = 30.0
    default_config.rpcs.get_profile.retry_policy = {
      initial_delay: 0.1,
      max_delay:     60.0,
      multiplier:    1.3,
      retry_codes:   [4, 14]
    }

    default_config.rpcs.update_profile.timeout = 30.0

    default_config.rpcs.delete_profile.timeout = 30.0
    default_config.rpcs.delete_profile.retry_policy = {
      initial_delay: 0.1,
      max_delay:     60.0,
      multiplier:    1.3,
      retry_codes:   [4, 14]
    }

    default_config.rpcs.search_profiles.timeout = 30.0

    default_config
  end
  yield @configure if block_given?
  @configure
end

Instance Method Details

#configure {|config| ... } ⇒ Client::Configuration

Configure the ProfileService 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 configure.

See Configuration for a description of the configuration fields.

Yields:

  • (config)

    Configure the Client client.

Yield Parameters:

Returns:



120
121
122
123
# File 'lib/google/cloud/talent/v4beta1/profile_service/client.rb', line 120

def configure
  yield @config if block_given?
  @config
end

#create_profile(request, options = nil) ⇒ ::Google::Cloud::Talent::V4beta1::Profile #create_profile(parent: nil, profile: nil) ⇒ ::Google::Cloud::Talent::V4beta1::Profile

Creates and returns a new profile.

Overloads:

  • #create_profile(request, options = nil) ⇒ ::Google::Cloud::Talent::V4beta1::Profile

    Pass arguments to create_profile via a request object, either of type CreateProfileRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Talent::V4beta1::CreateProfileRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #create_profile(parent: nil, profile: nil) ⇒ ::Google::Cloud::Talent::V4beta1::Profile

    Pass arguments to create_profile 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) (defaults to: nil)

      Required. The name of the tenant this profile belongs to.

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

    • profile (::Google::Cloud::Talent::V4beta1::Profile, ::Hash) (defaults to: nil)

      Required. The profile to be created.

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
# File 'lib/google/cloud/talent/v4beta1/profile_service/client.rb', line 316

def create_profile request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Talent::V4beta1::CreateProfileRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.create_profile..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Talent::V4beta1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {
    "parent" => request.parent
  }
  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.create_profile.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.create_profile.retry_policy
  options.apply_defaults metadata:     @config.,
                         retry_policy: @config.retry_policy

  @profile_service_stub.call_rpc :create_profile, request, options: options do |response, operation|
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#delete_profile(request, options = nil) ⇒ ::Google::Protobuf::Empty #delete_profile(name: nil) ⇒ ::Google::Protobuf::Empty

Deletes the specified profile. Prerequisite: The profile has no associated applications or assignments associated.

Overloads:

  • #delete_profile(request, options = nil) ⇒ ::Google::Protobuf::Empty

    Pass arguments to delete_profile via a request object, either of type DeleteProfileRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Talent::V4beta1::DeleteProfileRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #delete_profile(name: nil) ⇒ ::Google::Protobuf::Empty

    Pass arguments to delete_profile 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:

    • name (::String) (defaults to: nil)

      Required. Resource name of the profile to be deleted.

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

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
# File 'lib/google/cloud/talent/v4beta1/profile_service/client.rb', line 528

def delete_profile request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Talent::V4beta1::DeleteProfileRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.delete_profile..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Talent::V4beta1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {
    "name" => request.name
  }
  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.delete_profile.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.delete_profile.retry_policy
  options.apply_defaults metadata:     @config.,
                         retry_policy: @config.retry_policy

  @profile_service_stub.call_rpc :delete_profile, request, options: options do |response, operation|
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#get_profile(request, options = nil) ⇒ ::Google::Cloud::Talent::V4beta1::Profile #get_profile(name: nil) ⇒ ::Google::Cloud::Talent::V4beta1::Profile

Gets the specified profile.

Overloads:

  • #get_profile(request, options = nil) ⇒ ::Google::Cloud::Talent::V4beta1::Profile

    Pass arguments to get_profile via a request object, either of type GetProfileRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Talent::V4beta1::GetProfileRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #get_profile(name: nil) ⇒ ::Google::Cloud::Talent::V4beta1::Profile

    Pass arguments to get_profile 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:

    • name (::String) (defaults to: nil)

      Required. Resource name of the profile to get.

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

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
# File 'lib/google/cloud/talent/v4beta1/profile_service/client.rb', line 386

def get_profile request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Talent::V4beta1::GetProfileRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.get_profile..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Talent::V4beta1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {
    "name" => request.name
  }
  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.get_profile.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.get_profile.retry_policy
  options.apply_defaults metadata:     @config.,
                         retry_policy: @config.retry_policy

  @profile_service_stub.call_rpc :get_profile, request, options: options do |response, operation|
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#list_profiles(request, options = nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Talent::V4beta1::Profile> #list_profiles(parent: nil, filter: nil, page_token: nil, page_size: nil, read_mask: nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Talent::V4beta1::Profile>

Lists profiles by filter. The order is unspecified.

Overloads:

  • #list_profiles(request, options = nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Talent::V4beta1::Profile>

    Pass arguments to list_profiles via a request object, either of type ListProfilesRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Talent::V4beta1::ListProfilesRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #list_profiles(parent: nil, filter: nil, page_token: nil, page_size: nil, read_mask: nil) ⇒ ::Gapic::PagedEnumerable<::Google::Cloud::Talent::V4beta1::Profile>

    Pass arguments to list_profiles 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) (defaults to: nil)

      Required. The resource name of the tenant under which the profile is created.

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

    • filter (::String) (defaults to: nil)

      The filter string specifies the profiles to be enumerated.

      Supported operator: =, AND

      The field(s) eligible for filtering are:

      • externalId
      • groupId

      externalId and groupId cannot be specified at the same time. If both externalId and groupId are provided, the API will return a bad request error.

      Sample Query:

      • externalId = "externalId-1"
      • groupId = "groupId-1"
    • page_token (::String) (defaults to: nil)

      The token that specifies the current offset (that is, starting result).

      Please set the value to ListProfilesResponse.next_page_token to continue the list.

    • page_size (::Integer) (defaults to: nil)

      The maximum number of profiles to be returned, at most 100.

      Default is 100 unless a positive number smaller than 100 is specified.

    • read_mask (::Google::Protobuf::FieldMask, ::Hash) (defaults to: nil)

      A field mask to specify the profile fields to be listed in response. All fields are listed if it is unset.

      Valid values are:

      • name

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
# File 'lib/google/cloud/talent/v4beta1/profile_service/client.rb', line 244

def list_profiles request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Talent::V4beta1::ListProfilesRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.list_profiles..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Talent::V4beta1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {
    "parent" => request.parent
  }
  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.list_profiles.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.list_profiles.retry_policy
  options.apply_defaults metadata:     @config.,
                         retry_policy: @config.retry_policy

  @profile_service_stub.call_rpc :list_profiles, request, options: options do |response, operation|
    response = ::Gapic::PagedEnumerable.new @profile_service_stub, :list_profiles, request, response, operation, options
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#search_profiles(request, options = nil) ⇒ ::Google::Cloud::Talent::V4beta1::SearchProfilesResponse #search_profiles(parent: nil, request_metadata: nil, profile_query: nil, page_size: nil, page_token: nil, offset: nil, disable_spell_check: nil, order_by: nil, case_sensitive_sort: nil, histogram_queries: nil, result_set_id: nil, strict_keywords_search: nil) ⇒ ::Google::Cloud::Talent::V4beta1::SearchProfilesResponse

Searches for profiles within a tenant.

For example, search by raw queries "software engineer in Mountain View" or search by structured filters (location filter, education filter, etc.).

See SearchProfilesRequest for more information.

Overloads:

  • #search_profiles(request, options = nil) ⇒ ::Google::Cloud::Talent::V4beta1::SearchProfilesResponse

    Pass arguments to search_profiles via a request object, either of type SearchProfilesRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Talent::V4beta1::SearchProfilesRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #search_profiles(parent: nil, request_metadata: nil, profile_query: nil, page_size: nil, page_token: nil, offset: nil, disable_spell_check: nil, order_by: nil, case_sensitive_sort: nil, histogram_queries: nil, result_set_id: nil, strict_keywords_search: nil) ⇒ ::Google::Cloud::Talent::V4beta1::SearchProfilesResponse

    Pass arguments to search_profiles 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) (defaults to: nil)

      Required. The resource name of the tenant to search within.

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

    • request_metadata (::Google::Cloud::Talent::V4beta1::RequestMetadata, ::Hash) (defaults to: nil)

      Required. The meta information collected about the profile search user. This is used to improve the search quality of the service. These values are provided by users, and must be precise and consistent.

    • profile_query (::Google::Cloud::Talent::V4beta1::ProfileQuery, ::Hash) (defaults to: nil)

      Search query to execute. See ProfileQuery for more details.

    • page_size (::Integer) (defaults to: nil)

      A limit on the number of profiles returned in the search results. A value above the default value 10 can increase search response time.

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

    • page_token (::String) (defaults to: nil)

      The pageToken, similar to offset enables users of the API to paginate through the search results. To retrieve the first page of results, set the pageToken to empty. The search response includes a nextPageToken field that can be used to populate the pageToken field for the next page of results. Using pageToken instead of offset increases the performance of the API, especially compared to larger offset values.

    • offset (::Integer) (defaults to: nil)

      An integer that specifies the current offset (that is, starting result) 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 search from the first profile, and 10 means to search from the 11th profile. This can be used for pagination, for example pageSize = 10 and offset = 10 means to search from the second page.

    • disable_spell_check (::Boolean) (defaults to: nil)

      This flag controls the spell-check feature. If false, the service attempts to correct a misspelled query.

      For example, "enginee" is corrected to "engineer".

    • order_by (::String) (defaults to: nil)

      The criteria that determines how search results are sorted. Defaults is "relevance desc" if no value is specified.

      Supported options are:

    • case_sensitive_sort (::Boolean) (defaults to: nil)

      When sort by field is based on alphabetical order, sort values case sensitively (based on ASCII) when the value is set to true. Default value is case in-sensitive sort (false).

    • histogram_queries (::Array<::Google::Cloud::Talent::V4beta1::HistogramQuery, ::Hash>) (defaults to: nil)

      A list of expressions specifies histogram requests against matching profiles for SearchProfilesRequest.

      The expression syntax looks like a function definition with parameters.

      Function syntax: function_name(histogram_facet[, list of buckets])

      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 build-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).

      Histogram Facets:

      • admin1: Admin1 is a global placeholder for referring to state, province, or the particular term a country uses to define the geographic structure below the country level. Examples include states codes such as "CA", "IL", "NY", and provinces, such as "BC".
      • locality: Locality is a global placeholder for referring to city, town, or the particular term a country uses to define the geographic structure below the admin1 level. Examples include city names such as "Mountain View" and "New York".
      • extended_locality: Extended locality is concatenated version of admin1 and locality with comma separator. For example, "Mountain View, CA" and "New York, NY".
      • postal_code: Postal code of profile which follows locale code.
      • country: Country code (ISO-3166-1 alpha-2 code) of profile, such as US, JP, GB.
      • job_title: Normalized job titles specified in EmploymentHistory.
      • company_name: Normalized company name of profiles to match on.
      • institution: The school name. For example, "MIT", "University of California, Berkeley"
      • degree: Highest education degree in ISCED code. Each value in degree covers a specific level of education, without any expansion to upper nor lower levels of education degree.
      • experience_in_months: experience in months. 0 means 0 month to 1 month (exclusive).
      • application_date: The application date specifies application start dates. See ApplicationDateFilter for more details.
      • application_outcome_notes: The application outcome reason specifies the reasons behind the outcome of the job application. See ApplicationOutcomeNotesFilter for more details.
      • application_job_title: The application job title specifies the job applied for in the application. See ApplicationJobFilter for more details.
      • hirable_status: Hirable status specifies the profile's hirable status.
      • string_custom_attribute: String custom attributes. Values can be accessed via square bracket notation like string_custom_attribute["key1"].
      • numeric_custom_attribute: Numeric custom attributes. Values can be accessed via square bracket notation like numeric_custom_attribute["key1"].

      Example expressions:

      • count(admin1)
      • count(experience_in_months, [bucket(0, 12, "1 year"), bucket(12, 36, "1-3 years"), bucket(36, MAX, "3+ years")])
      • count(string_custom_attribute["assigned_recruiter"])
      • count(numeric_custom_attribute["favorite_number"], [bucket(MIN, 0, "negative"), bucket(0, MAX, "non-negative")])
    • result_set_id (::String) (defaults to: nil)

      An id that uniquely identifies the result set of a SearchProfiles call. The id should be retrieved from the SearchProfilesResponse message returned from a previous invocation of SearchProfiles.

      A result set is an ordered list of search results.

      If this field is not set, a new result set is computed based on the profile_query. A new result_set_id is returned as a handle to access this result set.

      If this field is set, the service will ignore the resource and profile_query values, and simply retrieve a page of results from the corresponding result set. In this case, one and only one of page_token or offset must be set.

      A typical use case is to invoke SearchProfilesRequest without this field, then use the resulting result_set_id in SearchProfilesResponse to page through the results.

    • strict_keywords_search (::Boolean) (defaults to: nil)

      This flag is used to indicate whether the service will attempt to understand synonyms and terms related to the search query or treat the query "as is" when it generates a set of results. By default this flag is set to false, thus allowing expanded results to also be returned. For example a search for "software engineer" might also return candidates who have experience in jobs similar to software engineer positions. By setting this flag to true, the service will only attempt to deliver candidates has software engineer in his/her global fields by treating "software engineer" as a keyword.

      It is recommended to provide a feature in the UI (such as a checkbox) to allow recruiters to set this flag to true if they intend to search for longer boolean strings.

Yields:

  • (response, operation)

    Access the result along with the RPC operation

Yield Parameters:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
# File 'lib/google/cloud/talent/v4beta1/profile_service/client.rb', line 769

def search_profiles request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Talent::V4beta1::SearchProfilesRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.search_profiles..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Talent::V4beta1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {
    "parent" => request.parent
  }
  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.search_profiles.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.search_profiles.retry_policy
  options.apply_defaults metadata:     @config.,
                         retry_policy: @config.retry_policy

  @profile_service_stub.call_rpc :search_profiles, request, options: options do |response, operation|
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end

#update_profile(request, options = nil) ⇒ ::Google::Cloud::Talent::V4beta1::Profile #update_profile(profile: nil, update_mask: nil) ⇒ ::Google::Cloud::Talent::V4beta1::Profile

Updates the specified profile and returns the updated result.

Overloads:

  • #update_profile(request, options = nil) ⇒ ::Google::Cloud::Talent::V4beta1::Profile

    Pass arguments to update_profile via a request object, either of type UpdateProfileRequest or an equivalent Hash.

    Parameters:

    • request (::Google::Cloud::Talent::V4beta1::UpdateProfileRequest, ::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) (defaults to: nil)

      Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.

  • #update_profile(profile: nil, update_mask: nil) ⇒ ::Google::Cloud::Talent::V4beta1::Profile

    Pass arguments to update_profile 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:

Returns:

Raises:

  • (::Google::Cloud::Error)

    if the RPC is aborted.



456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
# File 'lib/google/cloud/talent/v4beta1/profile_service/client.rb', line 456

def update_profile request, options = nil
  raise ::ArgumentError, "request must be provided" if request.nil?

  request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Talent::V4beta1::UpdateProfileRequest

  # Converts hash and nil to an options object
  options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h

  # Customize the options with defaults
   = @config.rpcs.update_profile..to_h

  # Set x-goog-api-client and x-goog-user-project headers
  [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
    lib_name: @config.lib_name, lib_version: @config.lib_version,
    gapic_version: ::Google::Cloud::Talent::V4beta1::VERSION
  [:"x-goog-user-project"] = @quota_project_id if @quota_project_id

  header_params = {
    "profile.name" => request.profile.name
  }
  request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
  [:"x-goog-request-params"] ||= request_params_header

  options.apply_defaults timeout:      @config.rpcs.update_profile.timeout,
                         metadata:     ,
                         retry_policy: @config.rpcs.update_profile.retry_policy
  options.apply_defaults metadata:     @config.,
                         retry_policy: @config.retry_policy

  @profile_service_stub.call_rpc :update_profile, request, options: options do |response, operation|
    yield response, operation if block_given?
    return response
  end
rescue ::GRPC::BadStatus => e
  raise ::Google::Cloud::Error.from_error(e)
end