public sealed class Profile : IMessage<Profile>, IEquatable<Profile>, IDeepCloneable<Profile>, IBufferMessage, IMessage
A resource that represents the profile for a job candidate (also referred to as a "single-source profile").
Implements
IMessage<Profile>, IEquatable<Profile>, IDeepCloneable<Profile>, IBufferMessage, IMessageNamespace
Google.Cloud.Talent.V4Beta1Assembly
Google.Cloud.Talent.V4Beta1.dll
Constructors
Profile()
public Profile()
Profile(Profile)
public Profile(Profile other)
Parameter | |
---|---|
Name | Description |
other | Profile |
Properties
Activities
public RepeatedField<Activity> Activities { get; }
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][google.cloud.talent.v4beta1.Profile.employment_records].
The limitation for max number of activities is 50.
Property Value | |
---|---|
Type | Description |
RepeatedField<Activity> |
AdditionalContactInfo
public RepeatedField<AdditionalContactInfo> AdditionalContactInfo { get; }
Available contact information besides [addresses][google.cloud.talent.v4beta1.Profile.addresses], [email_addresses][google.cloud.talent.v4beta1.Profile.email_addresses], [phone_numbers][google.cloud.talent.v4beta1.Profile.phone_numbers] and [personal_uris][google.cloud.talent.v4beta1.Profile.personal_uris]. For example, Hang-out, Skype.
Property Value | |
---|---|
Type | Description |
RepeatedField<AdditionalContactInfo> |
Addresses
public RepeatedField<Address> Addresses { get; }
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][google.cloud.talent.v4beta1.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][google.cloud.talent.v4beta1.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:
- [Address.usage][google.cloud.talent.v4beta1.Address.usage] is PERSONAL and [Address.current][google.cloud.talent.v4beta1.Address.current] is true.
- [Address.usage][google.cloud.talent.v4beta1.Address.usage] is PERSONAL and [Address.current][google.cloud.talent.v4beta1.Address.current] is false or not set.
- [Address.usage][google.cloud.talent.v4beta1.Address.usage] is CONTACT_INFO_USAGE_UNSPECIFIED and [Address.current][google.cloud.talent.v4beta1.Address.current] is true.
- [Address.usage][google.cloud.talent.v4beta1.Address.usage] is CONTACT_INFO_USAGE_UNSPECIFIED and [Address.current][google.cloud.talent.v4beta1.Address.current] is false or not set.
Property Value | |
---|---|
Type | Description |
RepeatedField<Address> |
Applications
public RepeatedField<string> Applications { get; }
Output only. The resource names of the candidate's applications.
Property Value | |
---|---|
Type | Description |
RepeatedField<String> |
Assignments
public RepeatedField<string> Assignments { get; }
Output only. The resource names of the candidate's assignments.
Property Value | |
---|---|
Type | Description |
RepeatedField<String> |
AvailabilitySignals
public RepeatedField<AvailabilitySignal> AvailabilitySignals { get; }
Output only. Candidate's availability signals.
Property Value | |
---|---|
Type | Description |
RepeatedField<AvailabilitySignal> |
CandidateUpdateTime
public Timestamp CandidateUpdateTime { get; set; }
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][google.cloud.talent.v4beta1.Profile.recruiting_notes] are specifically excluded from this action type.
Note: [candidate_update_time][google.cloud.talent.v4beta1.Profile.candidate_update_time] must be greater than or equal to [resume_update_time][google.cloud.talent.v4beta1.Profile.resume_update_time] or an error is thrown.
Property Value | |
---|---|
Type | Description |
Timestamp |
Certifications
public RepeatedField<Certification> Certifications { get; }
The certifications acquired by the candidate.
Property Value | |
---|---|
Type | Description |
RepeatedField<Certification> |
CreateTime
public Timestamp CreateTime { get; set; }
The timestamp when the profile was first created at this source.
Property Value | |
---|---|
Type | Description |
Timestamp |
CustomAttributes
public MapField<string, CustomAttribute> CustomAttributes { get; }
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][google.cloud.talent.v4beta1.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.
Property Value | |
---|---|
Type | Description |
MapField<String, CustomAttribute> |
DerivedAddresses
public RepeatedField<Location> DerivedAddresses { get; }
Output only. Derived locations of the profile, resolved from [Profile.addresses][google.cloud.talent.v4beta1.Profile.addresses].
[derived_addresses][google.cloud.talent.v4beta1.Profile.derived_addresses] are exactly matched to [Profile.addresses][google.cloud.talent.v4beta1.Profile.addresses] in the same order.
Property Value | |
---|---|
Type | Description |
RepeatedField<Location> |
EducationRecords
public RepeatedField<EducationRecord> EducationRecords { get; }
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][google.cloud.talent.v4beta1.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.
Property Value | |
---|---|
Type | Description |
RepeatedField<EducationRecord> |
EmailAddresses
public RepeatedField<Email> EmailAddresses { get; }
The candidate's email addresses.
Property Value | |
---|---|
Type | Description |
RepeatedField<Email> |
EmploymentRecords
public RepeatedField<EmploymentRecord> EmploymentRecords { get; }
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][google.cloud.talent.v4beta1.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.
Property Value | |
---|---|
Type | Description |
RepeatedField<EmploymentRecord> |
ExternalId
public string ExternalId { get; set; }
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.
Property Value | |
---|---|
Type | Description |
String |
GroupId
public string GroupId { get; set; }
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][google.cloud.talent.v4beta1.Profile.group_id], and assign it when the second profile is created, indicating these two profiles are referring to the same candidate.
Property Value | |
---|---|
Type | Description |
String |
IsHirable
public bool? IsHirable { get; set; }
Indicates the hirable status of the candidate.
Property Value | |
---|---|
Type | Description |
Nullable<Boolean> |
KeywordSnippet
public string KeywordSnippet { get; set; }
Output only. Keyword snippet shows how the search result is related to a search query. This is only returned in [SearchProfilesResponse][google.cloud.talent.v4beta1.SearchProfilesResponse].
Property Value | |
---|---|
Type | Description |
String |
Name
public string Name { get; set; }
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".
Property Value | |
---|---|
Type | Description |
String |
Patents
public RepeatedField<Patent> Patents { get; }
The patents acquired by the candidate.
Property Value | |
---|---|
Type | Description |
RepeatedField<Patent> |
PersonalUris
public RepeatedField<PersonalUri> PersonalUris { get; }
The candidate's personal URIs.
Property Value | |
---|---|
Type | Description |
RepeatedField<PersonalUri> |
PersonNames
public RepeatedField<PersonName> PersonNames { get; }
The names of the candidate this profile references.
Currently only one person name is supported.
Property Value | |
---|---|
Type | Description |
RepeatedField<PersonName> |
PhoneNumbers
public RepeatedField<Phone> PhoneNumbers { get; }
The candidate's phone number(s).
Property Value | |
---|---|
Type | Description |
RepeatedField<Phone> |
Processed
public bool Processed { get; set; }
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.
Property Value | |
---|---|
Type | Description |
Boolean |
ProfileName
public ProfileName ProfileName { get; set; }
ProfileName-typed view over the Name resource name property.
Property Value | |
---|---|
Type | Description |
ProfileName |
Publications
public RepeatedField<Publication> Publications { get; }
The publications published by the candidate.
The limitation for max number of publications is 50.
Property Value | |
---|---|
Type | Description |
RepeatedField<Publication> |
Resume
public Resume Resume { get; set; }
The resume representing this profile.
Property Value | |
---|---|
Type | Description |
Resume |
ResumeUpdateTime
public Timestamp ResumeUpdateTime { get; set; }
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][google.cloud.talent.v4beta1.Profile.resume] is provided in the create or update calls.
Property Value | |
---|---|
Type | Description |
Timestamp |
Skills
public RepeatedField<Skill> Skills { get; }
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.
Property Value | |
---|---|
Type | Description |
RepeatedField<Skill> |
Source
public string Source { get; set; }
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.
Property Value | |
---|---|
Type | Description |
String |
UpdateTime
public Timestamp UpdateTime { get; set; }
The timestamp when the profile was last updated at this source.
Property Value | |
---|---|
Type | Description |
Timestamp |
Uri
public string Uri { get; set; }
The URI set by clients that links to this profile's client-side copy.
The maximum number of bytes allowed is 4000.
Property Value | |
---|---|
Type | Description |
String |