# frozen_string_literal: true # Copyright 2020 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # https://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Auto-generated by gapic-generator-ruby. DO NOT EDIT! module Google module Cloud module Talent module V4beta1 # List profiles request. # @!attribute [rw] parent # @return [::String] # 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". # @!attribute [rw] filter # @return [::String] # 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" # @!attribute [rw] page_token # @return [::String] # The token that specifies the current offset (that is, starting result). # # Please set the value to {::Google::Cloud::Talent::V4beta1::ListProfilesResponse#next_page_token ListProfilesResponse.next_page_token} to # continue the list. # @!attribute [rw] page_size # @return [::Integer] # The maximum number of profiles to be returned, at most 100. # # Default is 100 unless a positive number smaller than 100 is specified. # @!attribute [rw] read_mask # @return [::Google::Protobuf::FieldMask] # 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 class ListProfilesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # The List profiles response object. # @!attribute [rw] profiles # @return [::Array<::Google::Cloud::Talent::V4beta1::Profile>] # Profiles for the specific tenant. # @!attribute [rw] next_page_token # @return [::String] # A token to retrieve the next page of results. This is empty if there are no # more results. class ListProfilesResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Create profile request. # @!attribute [rw] parent # @return [::String] # 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". # @!attribute [rw] profile # @return [::Google::Cloud::Talent::V4beta1::Profile] # Required. The profile to be created. class CreateProfileRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Get profile request. # @!attribute [rw] name # @return [::String] # 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". class GetProfileRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Update profile request # @!attribute [rw] profile # @return [::Google::Cloud::Talent::V4beta1::Profile] # Required. Profile to be updated. # @!attribute [rw] update_mask # @return [::Google::Protobuf::FieldMask] # A field mask to specify the profile fields to update. # # A full update is performed if it is unset. class UpdateProfileRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Delete profile request. # @!attribute [rw] name # @return [::String] # 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". class DeleteProfileRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # The request body of the `SearchProfiles` call. # @!attribute [rw] parent # @return [::String] # 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". # @!attribute [rw] request_metadata # @return [::Google::Cloud::Talent::V4beta1::RequestMetadata] # 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. # @!attribute [rw] profile_query # @return [::Google::Cloud::Talent::V4beta1::ProfileQuery] # Search query to execute. See {::Google::Cloud::Talent::V4beta1::ProfileQuery ProfileQuery} for more details. # @!attribute [rw] page_size # @return [::Integer] # 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. # @!attribute [rw] page_token # @return [::String] # 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 # {::Google::Cloud::Talent::V4beta1::SearchProfilesResponse#next_page_token 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. # @!attribute [rw] offset # @return [::Integer] # An integer that specifies the current offset (that is, starting result) in # search results. This field is only considered if {::Google::Cloud::Talent::V4beta1::SearchProfilesRequest#page_token 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. # @!attribute [rw] disable_spell_check # @return [::Boolean] # This flag controls the spell-check feature. If `false`, the # service attempts to correct a misspelled query. # # For example, "enginee" is corrected to "engineer". # @!attribute [rw] order_by # @return [::String] # The criteria that determines how search results are sorted. # Defaults is "relevance desc" if no value is specified. # # Supported options are: # # * "relevance desc": By descending relevance, as determined by the API # algorithms. # * "update_date desc": Sort by {::Google::Cloud::Talent::V4beta1::Profile#update_time Profile.update_time} in descending order # (recently updated profiles first). # * "create_date desc": Sort by {::Google::Cloud::Talent::V4beta1::Profile#create_time Profile.create_time} in descending order # (recently created profiles first). # * "first_name": Sort by {::Google::Cloud::Talent::V4beta1::PersonName::PersonStructuredName#given_name PersonName.PersonStructuredName.given_name} in # ascending order. # * "first_name desc": Sort by {::Google::Cloud::Talent::V4beta1::PersonName::PersonStructuredName#given_name PersonName.PersonStructuredName.given_name} # in descending order. # * "last_name": Sort by {::Google::Cloud::Talent::V4beta1::PersonName::PersonStructuredName#family_name PersonName.PersonStructuredName.family_name} in # ascending order. # * "last_name desc": Sort by {::Google::Cloud::Talent::V4beta1::PersonName::PersonStructuredName#family_name PersonName.PersonStructuredName.family_name} # in ascending order. # @!attribute [rw] case_sensitive_sort # @return [::Boolean] # 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). # @!attribute [rw] histogram_queries # @return [::Array<::Google::Cloud::Talent::V4beta1::HistogramQuery>] # A list of expressions specifies histogram requests against matching # profiles for {::Google::Cloud::Talent::V4beta1::SearchProfilesRequest 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 {::Google::Cloud::Talent::V4beta1::ApplicationDateFilter ApplicationDateFilter} for more details. # * application_outcome_notes: The application outcome reason specifies the # reasons behind the outcome of the job application. # See {::Google::Cloud::Talent::V4beta1::ApplicationOutcomeNotesFilter ApplicationOutcomeNotesFilter} for more details. # * application_job_title: The application job title specifies the job # applied for in the application. # See {::Google::Cloud::Talent::V4beta1::ApplicationJobFilter 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")]) # @!attribute [rw] result_set_id # @return [::String] # An id that uniquely identifies the result set of a # {::Google::Cloud::Talent::V4beta1::ProfileService::Client#search_profiles SearchProfiles} call. The id should be # retrieved from the # {::Google::Cloud::Talent::V4beta1::SearchProfilesResponse SearchProfilesResponse} message returned from a previous # invocation of {::Google::Cloud::Talent::V4beta1::ProfileService::Client#search_profiles 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 # {::Google::Cloud::Talent::V4beta1::SearchProfilesRequest#profile_query profile_query}. A new {::Google::Cloud::Talent::V4beta1::SearchProfilesRequest#result_set_id 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 # {::Google::Cloud::Talent::V4beta1::SearchProfilesRequest#profile_query profile_query} values, and simply retrieve a page of results from the # corresponding result set. In this case, one and only one of {::Google::Cloud::Talent::V4beta1::SearchProfilesRequest#page_token page_token} # or {::Google::Cloud::Talent::V4beta1::SearchProfilesRequest#offset offset} must be set. # # A typical use case is to invoke {::Google::Cloud::Talent::V4beta1::SearchProfilesRequest SearchProfilesRequest} without this # field, then use the resulting {::Google::Cloud::Talent::V4beta1::SearchProfilesRequest#result_set_id result_set_id} in # {::Google::Cloud::Talent::V4beta1::SearchProfilesResponse SearchProfilesResponse} to page through the results. # @!attribute [rw] strict_keywords_search # @return [::Boolean] # 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. class SearchProfilesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Response of SearchProfiles method. # @!attribute [rw] estimated_total_size # @return [::Integer] # An estimation of the number of profiles that match the specified query. # # This number isn't guaranteed to be accurate. # @!attribute [rw] spell_correction # @return [::Google::Cloud::Talent::V4beta1::SpellingCorrection] # The spell checking result, and correction. # @!attribute [rw] metadata # @return [::Google::Cloud::Talent::V4beta1::ResponseMetadata] # Additional information for the API invocation, such as the request # tracking id. # @!attribute [rw] next_page_token # @return [::String] # A token to retrieve the next page of results. This is empty if there are no # more results. # @!attribute [rw] histogram_query_results # @return [::Array<::Google::Cloud::Talent::V4beta1::HistogramQueryResult>] # The histogram results that match with specified # {::Google::Cloud::Talent::V4beta1::SearchProfilesRequest#histogram_queries SearchProfilesRequest.histogram_queries}. # @!attribute [rw] summarized_profiles # @return [::Array<::Google::Cloud::Talent::V4beta1::SummarizedProfile>] # The profile entities that match the specified {::Google::Cloud::Talent::V4beta1::SearchProfilesRequest SearchProfilesRequest}. # @!attribute [rw] result_set_id # @return [::String] # An id that uniquely identifies the result set of a # {::Google::Cloud::Talent::V4beta1::ProfileService::Client#search_profiles SearchProfiles} call for consistent # results. class SearchProfilesResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Profile entry with metadata inside {::Google::Cloud::Talent::V4beta1::SearchProfilesResponse SearchProfilesResponse}. # @!attribute [rw] profiles # @return [::Array<::Google::Cloud::Talent::V4beta1::Profile>] # A list of profiles that are linked by {::Google::Cloud::Talent::V4beta1::Profile#group_id Profile.group_id}. # @!attribute [rw] summary # @return [::Google::Cloud::Talent::V4beta1::Profile] # A profile summary shows the profile summary and how the profile matches the # search query. # # In profile summary, the profiles with the same {::Google::Cloud::Talent::V4beta1::Profile#group_id Profile.group_id} are # merged together. Among profiles, same education/employment records may be # slightly different but they are merged into one with best efforts. # # For example, in one profile the school name is "UC Berkeley" and the field # study is "Computer Science" and in another one the school name is # "University of California at Berkeley" and the field study is "CS". The API # merges these two inputs into one and selects one value for each field. For # example, the school name in summary is set to "University of California at # Berkeley" and the field of study is set to "Computer Science". class SummarizedProfile include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end end end end end