A service that handles profile management, including profile CRUD,
enumeration and search.
Constructor
new ProfileServiceClient(optionsopt)
Construct an instance of ProfileServiceClient.
Parameters:
Name
Type
Attributes
Description
options
object
<optional>
The configuration object. See the subsequent
parameters for more details.
Properties
Name
Type
Attributes
Description
credentials
object
<optional>
Credentials object.
Properties
Name
Type
Attributes
Description
client_email
string
<optional>
private_key
string
<optional>
email
string
<optional>
Account email address. Required when
using a .pem or .p12 keyFilename.
keyFilename
string
<optional>
Full path to the a .json, .pem, or
.p12 key downloaded from the Google Developers Console. If you provide
a path to a JSON file, the projectId option below is not necessary.
NOTE: .pem and .p12 require you to specify options.email as well.
port
number
<optional>
The port on which to connect to
the remote host.
projectId
string
<optional>
The project ID from the Google
Developer's Console, e.g. 'grape-spaceship-123'. We will also check
the environment variable GCLOUD_PROJECT for your project ID. If your
app is running in an environment which supports
Application Default Credentials,
your project ID will be detected automatically.
promise
function
<optional>
Custom promise module to use instead
of native Promises.
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
Object
Required. The profile to be created.
This object should have the same structure as Profile
options
Object
<optional>
Optional parameters. You can override the default settings for this call, e.g, timeout,
retries, paginations, etc. See gax.CallOptions for the details.
callback
function
<optional>
The function which will be called with the result of the API call.
The second parameter to the callback is an object representing Profile.
Deletes the specified profile.
Prerequisite: The profile has no associated applications or assignments
associated.
Parameters:
Name
Type
Attributes
Description
request
Object
The request object that will be sent.
Properties
Name
Type
Description
name
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".
options
Object
<optional>
Optional parameters. You can override the default settings for this call, e.g, timeout,
retries, paginations, etc. See gax.CallOptions for the details.
callback
function
<optional>
The function which will be called with the result of the API call.
The format is
"projects/{project_id}/tenants/{tenant_id}/profiles/{profile_id}". For
example, "projects/foo/tenants/bar/profiles/baz".
options
Object
<optional>
Optional parameters. You can override the default settings for this call, e.g, timeout,
retries, paginations, etc. See gax.CallOptions for the details.
callback
function
<optional>
The function which will be called with the result of the API call.
The second parameter to the callback is an object representing Profile.
Lists profiles by filter. The order is unspecified.
Parameters:
Name
Type
Attributes
Description
request
Object
The request object that will be sent.
Properties
Name
Type
Attributes
Description
parent
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".
filter
string
<optional>
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"
pageSize
number
<optional>
The maximum number of resources contained in the underlying API
response. If page streaming is performed per-resource, this
parameter does not affect the return value. If page streaming is
performed per-page, this determines the maximum number of
resources in a page.
readMask
Object
<optional>
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
This object should have the same structure as FieldMask
options
Object
<optional>
Optional parameters. You can override the default settings for this call, e.g, timeout,
retries, paginations, etc. See gax.CallOptions for the details.
callback
function
<optional>
The function which will be called with the result of the API call.
The second parameter to the callback is Array of Profile.
When autoPaginate: false is specified through options, it contains the result
in a single response. If the response indicates the next page exists, the third
parameter is set to be used for the next request object. The fourth parameter keeps
the raw response object of an object representing ListProfilesResponse.
Equivalent to listProfiles, but returns a NodeJS Stream object.
This fetches the paged responses for listProfiles continuously
and invokes the callback registered for 'data' event for each element in the
responses.
The returned object has 'end' method when no more elements are required.
autoPaginate option will be ignored.
Parameters:
Name
Type
Attributes
Description
request
Object
The request object that will be sent.
Properties
Name
Type
Attributes
Description
parent
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".
filter
string
<optional>
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"
pageSize
number
<optional>
The maximum number of resources contained in the underlying API
response. If page streaming is performed per-resource, this
parameter does not affect the return value. If page streaming is
performed per-page, this determines the maximum number of
resources in a page.
readMask
Object
<optional>
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
This object should have the same structure as FieldMask
options
Object
<optional>
Optional parameters. You can override the default settings for this call, e.g, timeout,
retries, paginations, etc. See gax.CallOptions for the details.
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.
Parameters:
Name
Type
Attributes
Description
request
Object
The request object that will be sent.
Properties
Name
Type
Attributes
Description
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/tenants/bar".
requestMetadata
Object
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.
This object should have the same structure as RequestMetadata
profileQuery
Object
<optional>
Search query to execute. See ProfileQuery for more details.
This object should have the same structure as ProfileQuery
pageSize
number
<optional>
The maximum number of resources contained in the underlying API
response. If page streaming is performed per-resource, this
parameter does not affect the return value. If page streaming is
performed per-page, this determines the maximum number of
resources in a page.
offset
number
<optional>
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.
disableSpellCheck
boolean
<optional>
This flag controls the spell-check feature. If false, the
service attempts to correct a misspelled query.
For example, "enginee" is corrected to "engineer".
orderBy
string
<optional>
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 Profile.update_time in descending order
(recently updated profiles first).
"create_date desc": Sort by Profile.create_time in descending order
(recently created profiles first).
"first_name": Sort by PersonName.PersonStructuredName.given_name in
ascending order.
"first_name desc": Sort by PersonName.PersonStructuredName.given_name
in descending order.
"last_name": Sort by PersonName.PersonStructuredName.family_name in
ascending order.
"last_name desc": Sort by PersonName.PersonStructuredName.family_name
in ascending order.
caseSensitiveSort
boolean
<optional>
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).
histogramQueries
Array.<Object>
<optional>
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"].
This object should have the same structure as HistogramQuery
resultSetId
string
<optional>
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.
strictKeywordsSearch
boolean
<optional>
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.
options
Object
<optional>
Optional parameters. You can override the default settings for this call, e.g, timeout,
retries, paginations, etc. See gax.CallOptions for the details.
callback
function
<optional>
The function which will be called with the result of the API call.
When autoPaginate: false is specified through options, it contains the result
in a single response. If the response indicates the next page exists, the third
parameter is set to be used for the next request object. The fourth parameter keeps
the raw response object of an object representing SearchProfilesResponse.
Equivalent to searchProfiles, but returns a NodeJS Stream object.
This fetches the paged responses for searchProfiles continuously
and invokes the callback registered for 'data' event for each element in the
responses.
The returned object has 'end' method when no more elements are required.
autoPaginate option will be ignored.
Parameters:
Name
Type
Attributes
Description
request
Object
The request object that will be sent.
Properties
Name
Type
Attributes
Description
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/tenants/bar".
requestMetadata
Object
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.
This object should have the same structure as RequestMetadata
profileQuery
Object
<optional>
Search query to execute. See ProfileQuery for more details.
This object should have the same structure as ProfileQuery
pageSize
number
<optional>
The maximum number of resources contained in the underlying API
response. If page streaming is performed per-resource, this
parameter does not affect the return value. If page streaming is
performed per-page, this determines the maximum number of
resources in a page.
offset
number
<optional>
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.
disableSpellCheck
boolean
<optional>
This flag controls the spell-check feature. If false, the
service attempts to correct a misspelled query.
For example, "enginee" is corrected to "engineer".
orderBy
string
<optional>
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 Profile.update_time in descending order
(recently updated profiles first).
"create_date desc": Sort by Profile.create_time in descending order
(recently created profiles first).
"first_name": Sort by PersonName.PersonStructuredName.given_name in
ascending order.
"first_name desc": Sort by PersonName.PersonStructuredName.given_name
in descending order.
"last_name": Sort by PersonName.PersonStructuredName.family_name in
ascending order.
"last_name desc": Sort by PersonName.PersonStructuredName.family_name
in ascending order.
caseSensitiveSort
boolean
<optional>
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).
histogramQueries
Array.<Object>
<optional>
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"].
This object should have the same structure as HistogramQuery
resultSetId
string
<optional>
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.
strictKeywordsSearch
boolean
<optional>
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.
options
Object
<optional>
Optional parameters. You can override the default settings for this call, e.g, timeout,
retries, paginations, etc. See gax.CallOptions for the details.
Updates the specified profile and returns the updated result.
Parameters:
Name
Type
Attributes
Description
request
Object
The request object that will be sent.
Properties
Name
Type
Attributes
Description
profile
Object
Required. Profile to be updated.
This object should have the same structure as Profile
updateMask
Object
<optional>
A field mask to specify the profile fields to update.
A full update is performed if it is unset.
Valid values are:
external_id
source
source_types
uri
is_hirable
create_time
update_time
candidate_update_time
resume_update_time
resume
person_names
addresses
email_addresses
phone_numbers
personal_uris
additional_contact_info
employment_records
education_records
skills
activities
publications
patents
certifications
recruiting_notes
custom_attributes
group_id
external_system
source_note
primary_responsibilities
citizenships
work_authorizations
employee_types
language_code
qualification_summary
allowed_contact_types
preferred_contact_types
contact_availability
language_fluencies
work_preference
industry_experiences
work_environment_experiences
work_availability
security_clearances
references
assessments
interviews
This object should have the same structure as FieldMask
options
Object
<optional>
Optional parameters. You can override the default settings for this call, e.g, timeout,
retries, paginations, etc. See gax.CallOptions for the details.
callback
function
<optional>
The function which will be called with the result of the API call.
The second parameter to the callback is an object representing Profile.