Class Profile (2.1.0)

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

A resource that represents the profile for a job candidate (also referred to as a "single-source profile").

Attributes

NameDescription
name str
Required during profile update. Resource name assigned to a profile by the API. The format is "projects/{project_id}/tenants/{tenant_id}/profiles/{profile_id}", for example, "projects/foo/tenants/bar/profiles/baz".
external_id str
Profile's id in client system, if available. This value is unique for each profile inside a tenant. An error is thrown if another profile with the same external_id is created. The maximum number of bytes allowed is 100.
source str
The source description indicating where the profile is acquired. For example, if a candidate profile is acquired from a resume, the user can input "resume" here to indicate the source. The maximum number of bytes allowed is 100.
uri str
The URI set by clients that links to this profile's client-side copy. The maximum number of bytes allowed is 4000.
group_id str
The cluster id of the profile to associate with other profile(s) for the same candidate. This field should be generated by the customer. If a value is not provided, a random UUID is assigned to this field of the profile. This is used to link multiple profiles to the same candidate. For example, a client has a candidate with two profiles, where one was created recently and the other one was created 5 years ago. These two profiles may be very different. The clients can create the first profile and get a generated group_id, and assign it when the second profile is created, indicating these two profiles are referring to the same candidate.
is_hirable .wrappers.BoolValue
Indicates the hirable status of the candidate.
create_time .timestamp.Timestamp
The timestamp when the profile was first created at this source.
update_time .timestamp.Timestamp
The timestamp when the profile was last updated at this source.
candidate_update_time .timestamp.Timestamp
The timestamp when the profile was last updated as a result of a direct or indirect action by a candidate. These actions include: - Direct actions such as the candidate submitting a new resume as part of a job application to the agency, using a self-service tool such as a website to update their profile, and so on. - Indirect actions by the candidate such as uploading a resume to a job board that is collected by the agency through a feed, providing a resume to a recruiter who then uploads it into the ATS, and so on. - Updates made to the candidate's profile by the recruiter as a result of interacting with the candidate (for example adding a skill or work preference, and so on). Changes to recruiting_notes are specifically excluded from this action type. Note: candidate_update_time must be greater than or equal to resume_update_time or an error is thrown.
resume_update_time .timestamp.Timestamp
The timestamp when the candidate's resume was added or updated on the candidate's profile. Whether that resume was directly uploaded by a candidate, pulled from a 3rd party job board feed, added by a recruiter, and so on. If this field is updated, it's expected that resume is provided in the create or update calls.
resume .profile.Resume
The resume representing this profile.
person_names Sequence[.profile.PersonName]
The names of the candidate this profile references. Currently only one person name is supported.
addresses Sequence[.profile.Address]
The candidate's postal addresses. It's highly recommended to input this information as accurately as possible to help improve search quality. Here are some recommendations: - Provide Address.usage if possible, especially if the address is PERSONAL. During a search only personal addresses are considered. If there is no such address, all addresses with unspecified usage are assumed to be personal. - Provide Address.current for the current address if possible. During a search, only current addresses are considered. If there is no such address, all addresses are assumed to be current. When displaying a candidate's addresses, it is sometimes desirable to limit the number of addresses shown. In these cases we recommend that you display the addresses in the following order of priority: 1. Address.usage is PERSONAL and Address.current is true. 2. Address.usage is PERSONAL and Address.current is false or not set. 3. Address.usage is CONTACT_INFO_USAGE_UNSPECIFIED and Address.current is true. 4. Address.usage is CONTACT_INFO_USAGE_UNSPECIFIED and Address.current is false or not set.
email_addresses Sequence[.profile.Email]
The candidate's email addresses.
phone_numbers Sequence[.profile.Phone]
The candidate's phone number(s).
personal_uris Sequence[.profile.PersonalUri]
The candidate's personal URIs.
additional_contact_info Sequence[.profile.AdditionalContactInfo]
Available contact information besides addresses, email_addresses, phone_numbers and personal_uris. For example, Hang-out, Skype.
employment_records Sequence[.profile.EmploymentRecord]
The employment history records of the candidate. It's highly recommended to input this information as accurately as possible to help improve search quality. Here are some recommendations: - Specify the start and end dates of the employment records. - List different employment types separately, no matter how minor the change is. For example, only job title is changed from "software engineer" to "senior software engineer". - Provide EmploymentRecord.is_current for the current employment if possible. If not, it's inferred from user inputs. The limitation for max number of employment records is 100.
education_records Sequence[.profile.EducationRecord]
The education history record of the candidate. It's highly recommended to input this information as accurately as possible to help improve search quality. Here are some recommendations: - Specify the start and end dates of the education records. - List each education type separately, no matter how minor the change is. For example, the profile contains the education experience from the same school but different degrees. - Provide EducationRecord.is_current for the current education if possible. If not, it's inferred from user inputs. The limitation for max number of education records is 100.
skills Sequence[.common.Skill]
The skill set of the candidate. It's highly recommended to provide as much information as possible to help improve the search quality. The limitation for max number of skills is 500.
activities Sequence[.profile.Activity]
The individual or collaborative activities which the candidate has participated in, for example, open-source projects, class assignments that aren't listed in employment_records. The limitation for max number of activities is 50.
publications Sequence[.profile.Publication]
The publications published by the candidate. The limitation for max number of publications is 50.
patents Sequence[.profile.Patent]
The patents acquired by the candidate.
certifications Sequence[.common.Certification]
The certifications acquired by the candidate.
applications Sequence[str]
Output only. The resource names of the candidate's applications.
assignments Sequence[str]
Output only. The resource names of the candidate's assignments.
custom_attributes Sequence[.profile.Profile.CustomAttributesEntry]
A map of fields to hold both filterable and non-filterable custom profile attributes that aren't covered by the provided structured fields. See CustomAttribute for more details. At most 100 filterable and at most 100 unfilterable keys are supported. If limit is exceeded, an error is thrown. Custom attributes are unfilterable by default. These are filterable when the filterable flag is set to true. Numeric custom attributes: each key can only map to one numeric value, otherwise an error is thrown. Client can also filter on numeric custom attributes using '>', '<' or="" '=' operators. String custom attributes: each key can map up to 50 string values. For filterable string value, each value has a byte size of no more than 256B. For unfilterable string values, the maximum byte size of a single key is 64B. An error is thrown for any request exceeding the limit. The maximum total byte size is 10KB.
processed bool
Output only. Indicates if a summarized profile was created as part of the profile creation API call. This flag does not indicate whether a profile is searchable or not.
keyword_snippet str
Output only. Keyword snippet shows how the search result is related to a search query. This is only returned in .
availability_signals Sequence[.profile.AvailabilitySignal]
Output only. Candidate' s="" availability="" signals.="">
derived_addresses Sequence[.common.Location]
Output only. Derived locations of the profile, resolved from Profile.addresses. derived_addresses are exactly matched to Profile.addresses in the same order.

Classes

CustomAttributesEntry

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

The abstract base class for a message.

Parameters
NameDescription
kwargs dict

Keys and values corresponding to the fields of the message.

mapping Union[dict, .Message]

A dictionary or message to be used to determine the values for this message.

ignore_unknown_fields Optional(bool)

If True, do not raise errors for unknown fields. Only applied if mapping is a mapping type or there are keyword parameters.