Class ProfileQuery (2.4.0)

ProfileQuery(mapping=None, *, ignore_unknown_fields=False, **kwargs)

Filters to apply when performing the search query.

Attributes

NameDescription
query str
Keywords to match any text fields of profiles. For example, "software engineer in Palo Alto".
location_filters Sequence[google.cloud.talent_v4beta1.types.LocationFilter]
The location filter specifies geo-regions containing the profiles to search against. One of LocationFilter.address or LocationFilter.lat_lng must be provided or an error is thrown. If both LocationFilter.address and LocationFilter.lat_lng are provided, an error is thrown. The following logic is used to determine which locations in the profile to filter against: 1. All of the profile's geocoded Profile.addresses where Address.usage is PERSONAL and Address.current is true. 2. If the above set of locations is empty, all of the profile's geocoded Profile.addresses where Address.usage is CONTACT_INFO_USAGE_UNSPECIFIED and Address.current is true. 3. If the above set of locations is empty, all of the profile's geocoded Profile.addresses where Address.usage is PERSONAL or CONTACT_INFO_USAGE_UNSPECIFIED and Address.current is not set. This means that any profiles without any Profile.addresses that match any of the above criteria will not be included in a search with location filter. Furthermore, any Profile.addresses where Address.usage is WORK or SCHOOL or where Address.current is false are not considered for location filter. If a location filter isn't specified, profiles fitting the other search criteria are retrieved regardless of where they're located. If LocationFilter.negated is specified, the result doesn't contain profiles from that location. If LocationFilter.address is provided, the LocationType, center point (latitude and longitude), and radius are automatically detected by the Google Maps Geocoding API and included as well. If LocationFilter.address cannot be geocoded, the filter falls back to keyword search. If the detected LocationType is LocationType.SUB_ADMINISTRATIVE_AREA, LocationType.ADMINISTRATIVE_AREA, or LocationType.COUNTRY, the filter is performed against the detected location name (using exact text matching). Otherwise, the filter is performed against the detected center point and a radius of detected location radius + LocationFilter.distance_in_miles. If LocationFilter.address is provided, LocationFilter.distance_in_miles is the additional radius on top of the radius of the location geocoded from LocationFilter.address. If LocationFilter.lat_lng is provided, LocationFilter.distance_in_miles is the only radius that is used. LocationFilter.distance_in_miles is 10 by default. Note that the value of LocationFilter.distance_in_miles is 0 if it is unset, so the server does not differentiate LocationFilter.distance_in_miles that is explicitly set to 0 and LocationFilter.distance_in_miles that is not set. Which means that if LocationFilter.distance_in_miles is explicitly set to 0, the server will use the default value of LocationFilter.distance_in_miles which is 10. To work around this and effectively set LocationFilter.distance_in_miles to 0, we recommend setting LocationFilter.distance_in_miles to a very small decimal number (such as 0.00001). If LocationFilter.distance_in_miles is negative, an error is thrown.
job_title_filters Sequence[google.cloud.talent_v4beta1.types.JobTitleFilter]
Job title filter specifies job titles of profiles to match on. If a job title isn't specified, profiles with any titles are retrieved. If multiple values are specified, profiles are retrieved with any of the specified job titles. If JobTitleFilter.negated is specified, the result won't contain profiles with the job titles. For example, search for profiles with a job title "Product Manager".
employer_filters Sequence[google.cloud.talent_v4beta1.types.EmployerFilter]
Employer filter specifies employers of profiles to match on. If an employer filter isn't specified, profiles with any employers are retrieved. If multiple employer filters are specified, profiles with any matching employers are retrieved. If EmployerFilter.negated is specified, the result won't contain profiles that match the employers. For example, search for profiles that have working experience at "Google LLC".
education_filters Sequence[google.cloud.talent_v4beta1.types.EducationFilter]
Education filter specifies education of profiles to match on. If an education filter isn't specified, profiles with any education are retrieved. If multiple education filters are specified, profiles that match any education filters are retrieved. If EducationFilter.negated is specified, the result won't contain profiles that match the educations. For example, search for profiles with a master degree.
skill_filters Sequence[google.cloud.talent_v4beta1.types.SkillFilter]
Skill filter specifies skill of profiles to match on. If a skill filter isn't specified, profiles with any skills are retrieved. If multiple skill filters are specified, profiles that match any skill filters are retrieved. If SkillFilter.negated is specified, the result won't contain profiles that match the skills. For example, search for profiles that have "Java" and "Python" in skill list.
work_experience_filter Sequence[google.cloud.talent_v4beta1.types.WorkExperienceFilter]
Work experience filter specifies the total working experience of profiles to match on. If a work experience filter isn't specified, profiles with any professional experience are retrieved. If multiple work experience filters are specified, profiles that match any work experience filters are retrieved. For example, search for profiles with 10 years of work experience.
time_filters Sequence[google.cloud.talent_v4beta1.types.TimeFilter]
Time filter specifies the create/update timestamp of the profiles to match on. For example, search for profiles created since "2018-1-1".
hirable_filter google.protobuf.wrappers_pb2.BoolValue
The hirable filter specifies the profile's hirable status to match on.
application_date_filters Sequence[google.cloud.talent_v4beta1.types.ApplicationDateFilter]
The application date filters specify application date ranges to match on.
application_outcome_notes_filters Sequence[google.cloud.talent_v4beta1.types.ApplicationOutcomeNotesFilter]
The application outcome notes filters specify the notes for the outcome of the job application.
application_job_filters Sequence[google.cloud.talent_v4beta1.types.ApplicationJobFilter]
The application job filters specify the job applied for in the application.
custom_attribute_filter str
This filter specifies a structured syntax to match against the Profile.custom_attributes that are marked as filterable. The syntax for this expression is a subset of Google SQL syntax. String custom attributes: supported operators are =, != where the left of the operator is a custom field key and the right of the operator is a string (surrounded by quotes) value. Numeric custom attributes: Supported operators are '>', '<' or="" '=' operators where the left of the operator is a custom field key and the right of the operator is a numeric value. Supported functions are LOWER(
candidate_availability_filter
Deprecated. Use availability_filters instead. The candidate availability filter which filters based on availability signals. Signal 1: Number of days since most recent job application. See for the details of this signal. Signal 2: Number of days since last profile update. See for the details of this signal. The candidate availability filter helps a recruiter understand if a specific candidate is likely to be actively seeking new job opportunities based on an aggregated set of signals. Specifically, the intent is NOT to indicate the candidate' s="" potential="" qualification="" interest="" close="" ability="" for="" a="" specific="" job.="">
availability_filters Sequence[google.cloud.talent_v4beta1.types.AvailabilityFilter]
The availability filter which filters based on Profile.availability_signals. The availability filter helps a recruiter understand if a specific candidate is likely to be actively seeking new job opportunities based on an aggregated set of signals. Specifically, the intent is NOT to indicate the candidate's potential qualification / interest / close ability for a specific job. There can be at most one AvailabilityFilter per signal_type. If there are multiple AvailabilityFilter for a signal_type, an error is thrown.
person_name_filters Sequence[google.cloud.talent_v4beta1.types.PersonNameFilter]
Person name filter specifies person name of profiles to match on. If multiple person name filters are specified, profiles that match any person name filters are retrieved. For example, search for profiles of candidates with name "John Smith".