123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783 |
- // 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
- //
- // http://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.
- syntax = "proto3";
- package google.cloud.talent.v4beta1;
- import "google/api/field_behavior.proto";
- import "google/api/resource.proto";
- import "google/cloud/talent/v4beta1/common.proto";
- import "google/protobuf/duration.proto";
- import "google/protobuf/timestamp.proto";
- import "google/protobuf/wrappers.proto";
- import "google/type/date.proto";
- import "google/type/postal_address.proto";
- import "google/api/annotations.proto";
- option go_package = "google.golang.org/genproto/googleapis/cloud/talent/v4beta1;talent";
- option java_multiple_files = true;
- option java_outer_classname = "ProfileResourceProto";
- option java_package = "com.google.cloud.talent.v4beta1";
- option objc_class_prefix = "CTS";
- // Cloud Profile Discovery API definition
- // A resource that represents the profile for a job candidate (also referred to
- // as a "single-source profile").
- message Profile {
- option (google.api.resource) = {
- type: "jobs.googleapis.com/Profile"
- pattern: "projects/{project}/tenants/{tenant}/profiles/{profile}"
- };
- // 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".
- string name = 1;
- // 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.
- string external_id = 2;
- // 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.
- string source = 3;
- // The URI set by clients that links to this profile's client-side copy.
- //
- // The maximum number of bytes allowed is 4000.
- string uri = 4;
- // 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.
- string group_id = 5;
- // Indicates the hirable status of the candidate.
- google.protobuf.BoolValue is_hirable = 6;
- // The timestamp when the profile was first created at this source.
- google.protobuf.Timestamp create_time = 7;
- // The timestamp when the profile was last updated at this source.
- google.protobuf.Timestamp update_time = 8;
- // 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.
- google.protobuf.Timestamp candidate_update_time = 67;
- // 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.
- google.protobuf.Timestamp resume_update_time = 68;
- // The resume representing this profile.
- Resume resume = 53;
- // The names of the candidate this profile references.
- //
- // Currently only one person name is supported.
- repeated PersonName person_names = 11;
- // 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:
- // 1. [Address.usage][google.cloud.talent.v4beta1.Address.usage] is PERSONAL and [Address.current][google.cloud.talent.v4beta1.Address.current] is true.
- // 2. [Address.usage][google.cloud.talent.v4beta1.Address.usage] is PERSONAL and [Address.current][google.cloud.talent.v4beta1.Address.current] is false or not
- // set.
- // 3. [Address.usage][google.cloud.talent.v4beta1.Address.usage] is CONTACT_INFO_USAGE_UNSPECIFIED and
- // [Address.current][google.cloud.talent.v4beta1.Address.current] is true.
- // 4. [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.
- repeated Address addresses = 12;
- // The candidate's email addresses.
- repeated Email email_addresses = 13;
- // The candidate's phone number(s).
- repeated Phone phone_numbers = 14;
- // The candidate's personal URIs.
- repeated PersonalUri personal_uris = 15;
- // 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.
- repeated AdditionalContactInfo additional_contact_info = 16;
- // 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.
- repeated EmploymentRecord employment_records = 17;
- // 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.
- repeated EducationRecord education_records = 18;
- // 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.
- repeated Skill skills = 19;
- // 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.
- repeated Activity activities = 20;
- // The publications published by the candidate.
- //
- // The limitation for max number of publications is 50.
- repeated Publication publications = 21;
- // The patents acquired by the candidate.
- repeated Patent patents = 22;
- // The certifications acquired by the candidate.
- repeated Certification certifications = 23;
- // Output only. The resource names of the candidate's applications.
- repeated string applications = 47 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The resource names of the candidate's assignments.
- repeated string assignments = 48 [(google.api.field_behavior) = OUTPUT_ONLY];
- // 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.
- map<string, CustomAttribute> custom_attributes = 26;
- // 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.
- bool processed = 27 [(google.api.field_behavior) = OUTPUT_ONLY];
- // 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].
- string keyword_snippet = 28 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. Candidate's availability signals.
- repeated AvailabilitySignal availability_signals = 70 [(google.api.field_behavior) = OUTPUT_ONLY];
- // 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.
- repeated Location derived_addresses = 64 [(google.api.field_behavior) = OUTPUT_ONLY];
- }
- // Candidate availability signal.
- message AvailabilitySignal {
- // Type of signal.
- AvailabilitySignalType type = 1;
- // Timestamp of when the given availability activity last happened.
- google.protobuf.Timestamp last_update_time = 2;
- // Indicates if the [last_update_time][google.cloud.talent.v4beta1.AvailabilitySignal.last_update_time] is within
- // [AvailabilityFilter.range][google.cloud.talent.v4beta1.AvailabilityFilter.range].
- //
- // Returned only in a search response when there is an [AvailabilityFilter][google.cloud.talent.v4beta1.AvailabilityFilter]
- // in [ProfileQuery.availability_filters][google.cloud.talent.v4beta1.ProfileQuery.availability_filters] where
- // [signal_type][google.cloud.talent.v4beta1.AvailabilityFilter.signal_type] matches [type][google.cloud.talent.v4beta1.AvailabilitySignal.type].
- google.protobuf.BoolValue filter_satisfied = 3;
- }
- // Resource that represents a resume.
- message Resume {
- // The format of a structured resume.
- enum ResumeType {
- // Default value.
- RESUME_TYPE_UNSPECIFIED = 0;
- // The profile contents in HR-XML format.
- // See https://schemas.liquid-technologies.com/hr-xml/2007-04-15/ for more
- // information about Human Resources XML.
- HRXML = 1;
- // Resume type not specified.
- OTHER_RESUME_TYPE = 2;
- }
- // Users can create a profile with only this field field, if [resume_type][google.cloud.talent.v4beta1.Resume.resume_type]
- // is [HRXML][google.cloud.talent.v4beta1.Resume.ResumeType.HRXML]. For example, the API parses this field and
- // creates a profile
- // with all structured fields populated. [EmploymentRecord][google.cloud.talent.v4beta1.EmploymentRecord],
- // [EducationRecord][google.cloud.talent.v4beta1.EducationRecord], and so on. An error is thrown if this field cannot be
- // parsed.
- //
- // Note that the use of the functionality offered by this field to extract
- // data from resumes is an Alpha feature and as such is not covered by any
- // SLA.
- string structured_resume = 1;
- // The format of [structured_resume][google.cloud.talent.v4beta1.Resume.structured_resume].
- ResumeType resume_type = 2;
- }
- // Resource that represents the name of a person.
- message PersonName {
- // Resource that represents a person's structured name.
- message PersonStructuredName {
- // Given/first name.
- //
- // It's derived from [formatted_name][google.cloud.talent.v4beta1.PersonName.formatted_name] if not provided.
- //
- // Number of characters allowed is 100.
- string given_name = 1;
- // Preferred given/first name or nickname.
- //
- // Number of characters allowed is 100.
- string preferred_name = 6;
- // Middle initial.
- //
- // It's derived from [formatted_name][google.cloud.talent.v4beta1.PersonName.formatted_name] if not provided.
- //
- // Number of characters allowed is 20.
- string middle_initial = 2;
- // Family/last name.
- //
- // It's derived from [formatted_name][google.cloud.talent.v4beta1.PersonName.formatted_name] if not provided.
- //
- // Number of characters allowed is 100.
- string family_name = 3;
- // Suffixes.
- //
- // Number of characters allowed is 20.
- repeated string suffixes = 4;
- // Prefixes.
- //
- // Number of characters allowed is 20.
- repeated string prefixes = 5;
- }
- // The name of a person. It can be one of
- // [formatted_name][google.cloud.talent.v4beta1.PersonName.formatted_name] or
- // [structured_name][google.cloud.talent.v4beta1.PersonName.structured_name].
- oneof person_name {
- // A string represents a person's full name. For example, "Dr. John Smith".
- //
- // Number of characters allowed is 100.
- string formatted_name = 1;
- // A person's name in a structured way (last name, first name, suffix, and
- // so on.)
- PersonStructuredName structured_name = 2;
- }
- // Preferred name for the person. This field is ignored if [structured_name][google.cloud.talent.v4beta1.PersonName.structured_name]
- // is provided.
- //
- // Number of characters allowed is 100.
- string preferred_name = 3;
- }
- // Resource that represents a address.
- message Address {
- // The usage of the address. For example, SCHOOL, WORK, PERSONAL.
- ContactInfoUsage usage = 1;
- // The address of a person. It can be one of
- // [unstructured_address][google.cloud.talent.v4beta1.Address.unstructured_address] or
- // [structured_address][google.cloud.talent.v4beta1.Address.structured_address].
- oneof address {
- // Unstructured address.
- //
- // For example, "1600 Amphitheatre Pkwy, Mountain View, CA 94043",
- // "Sunnyvale, California".
- //
- // Number of characters allowed is 100.
- string unstructured_address = 2;
- // Structured address that contains street address, city, state, country,
- // and so on.
- google.type.PostalAddress structured_address = 3;
- }
- // Indicates if it's the person's current address.
- google.protobuf.BoolValue current = 4;
- }
- // Resource that represents a person's email address.
- message Email {
- // The usage of the email address. For example, SCHOOL, WORK, PERSONAL.
- ContactInfoUsage usage = 1;
- // Email address.
- //
- // Number of characters allowed is 4,000.
- string email_address = 2;
- }
- // Resource that represents a person's telephone number.
- message Phone {
- // Enum that represents the type of the telephone.
- enum PhoneType {
- // Default value.
- PHONE_TYPE_UNSPECIFIED = 0;
- // A landline.
- LANDLINE = 1;
- // A mobile.
- MOBILE = 2;
- // A fax.
- FAX = 3;
- // A pager.
- PAGER = 4;
- // A TTY (test telephone) or TDD (telecommunication device for the deaf).
- TTY_OR_TDD = 5;
- // A voicemail.
- VOICEMAIL = 6;
- // A virtual telephone number is a number that can be routed to another
- // number and managed by the user via Web, SMS, IVR, and so on. It is
- // associated with a particular person, and may be routed to either a MOBILE
- // or LANDLINE number. The [phone usage][google.cloud.talent.v4beta1.ContactInfoUsage] should
- // be set to PERSONAL for these phone types. Some more information can be
- // found here: https://en.wikipedia.org/wiki/Personal_Numbers
- VIRTUAL = 7;
- // Voice over IP numbers. This includes TSoIP (Telephony Service over IP).
- VOIP = 8;
- // In some regions (e.g. the USA), it is impossible to distinguish between
- // fixed-line and mobile numbers by looking at the phone number itself.
- MOBILE_OR_LANDLINE = 9;
- }
- // The usage of the phone. For example, SCHOOL, WORK, PERSONAL.
- ContactInfoUsage usage = 1;
- // The phone type. For example, LANDLINE, MOBILE, FAX.
- PhoneType type = 2;
- // Phone number.
- //
- // Any phone formats are supported and only exact matches are performed on
- // searches. For example, if a phone number in profile is provided in the
- // format of "(xxx)xxx-xxxx", in profile searches the same phone format
- // has to be provided.
- //
- // Number of characters allowed is 20.
- string number = 3;
- // When this number is available. Any descriptive string is expected.
- //
- // Number of characters allowed is 100.
- string when_available = 4;
- }
- // Resource that represents a valid URI for a personal use.
- message PersonalUri {
- // The personal URI.
- //
- // Number of characters allowed is 4,000.
- string uri = 1;
- }
- // Resource that represents contact information other than phone, email,
- // URI and addresses.
- message AdditionalContactInfo {
- // The usage of this contact method. For example, SCHOOL, WORK, PERSONAL.
- ContactInfoUsage usage = 1;
- // The name of the contact method.
- //
- // For example, "hangout", "skype".
- //
- // Number of characters allowed is 100.
- string name = 2;
- // The contact id.
- //
- // Number of characters allowed is 100.
- string contact_id = 3;
- }
- // Resource that represents an employment record of a candidate.
- message EmploymentRecord {
- // Start date of the employment.
- google.type.Date start_date = 1;
- // End date of the employment.
- google.type.Date end_date = 2;
- // The name of the employer company/organization.
- //
- // For example, "Google", "Alphabet", and so on.
- //
- // Number of characters allowed is 250.
- string employer_name = 3;
- // The division name of the employment.
- //
- // For example, division, department, client, and so on.
- //
- // Number of characters allowed is 100.
- string division_name = 4;
- // The physical address of the employer.
- Address address = 5;
- // The job title of the employment.
- //
- // For example, "Software Engineer", "Data Scientist", and so on.
- //
- // Number of characters allowed is 250.
- string job_title = 6;
- // The description of job content.
- //
- // Number of characters allowed is 100,000.
- string job_description = 7;
- // If the jobs is a supervisor position.
- google.protobuf.BoolValue is_supervisor = 8;
- // If this employment is self-employed.
- google.protobuf.BoolValue is_self_employed = 9;
- // If this employment is current.
- google.protobuf.BoolValue is_current = 10;
- // Output only. The job title snippet shows how the [job_title][google.cloud.talent.v4beta1.EmploymentRecord.job_title] is related
- // to a search query. It's empty if the [job_title][google.cloud.talent.v4beta1.EmploymentRecord.job_title] isn't related to the
- // search query.
- string job_title_snippet = 11 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The job description snippet shows how the [job_description][google.cloud.talent.v4beta1.EmploymentRecord.job_description]
- // is related to a search query. It's empty if the [job_description][google.cloud.talent.v4beta1.EmploymentRecord.job_description] isn't
- // related to the search query.
- string job_description_snippet = 12 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The employer name snippet shows how the [employer_name][google.cloud.talent.v4beta1.EmploymentRecord.employer_name] is
- // related to a search query. It's empty if the [employer_name][google.cloud.talent.v4beta1.EmploymentRecord.employer_name] isn't
- // related to the search query.
- string employer_name_snippet = 13 [(google.api.field_behavior) = OUTPUT_ONLY];
- }
- // Resource that represents an education record of a candidate.
- message EducationRecord {
- // The start date of the education.
- google.type.Date start_date = 1;
- // The end date of the education.
- google.type.Date end_date = 2;
- // The expected graduation date if currently pursuing a degree.
- google.type.Date expected_graduation_date = 3;
- // The name of the school or institution.
- //
- // For example, "Stanford University", "UC Berkeley", and so on.
- //
- // Number of characters allowed is 250.
- string school_name = 4;
- // The physical address of the education institution.
- Address address = 5;
- // The degree information. It can be one of
- // [degree_description][google.cloud.talent.v4beta1.EducationRecord.degree_description] or
- // [structured_degree][google.cloud.talent.v4beta1.EducationRecord.structured_degree].
- oneof degree {
- // The full description of the degree.
- //
- // For example, "Master of Science in Computer Science", "B.S in Math".
- //
- // Number of characters allowed is 100.
- string degree_description = 6;
- // The structured notation of the degree.
- Degree structured_degree = 7;
- }
- // The description of the education.
- //
- // Number of characters allowed is 100,000.
- string description = 8;
- // If this education is current.
- google.protobuf.BoolValue is_current = 9;
- // Output only. The school name snippet shows how the [school_name][google.cloud.talent.v4beta1.EducationRecord.school_name] is related to a
- // search query in search result. It's empty if the [school_name][google.cloud.talent.v4beta1.EducationRecord.school_name] isn't
- // related to the search query.
- string school_name_snippet = 10 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. The job description snippet shows how the [Degree][google.cloud.talent.v4beta1.Degree] is related to a search
- // query in search result. It's empty if the [Degree][google.cloud.talent.v4beta1.Degree] isn't related to the
- // search query.
- string degree_snippet = 11 [(google.api.field_behavior) = OUTPUT_ONLY];
- }
- // Resource that represents a degree pursuing or acquired by a candidate.
- message Degree {
- // ISCED degree type.
- DegreeType degree_type = 1;
- // Full Degree name.
- //
- // For example, "B.S.", "Master of Arts", and so on.
- //
- // Number of characters allowed is 100.
- string degree_name = 2;
- // Fields of study for the degree.
- //
- // For example, "Computer science", "engineering".
- //
- // Number of characters allowed is 100.
- repeated string fields_of_study = 3;
- }
- // Resource that represents an individual or collaborative activity participated
- // in by a candidate, for example, an open-source project, a class assignment,
- // and so on.
- message Activity {
- // Activity display name.
- //
- // Number of characters allowed is 100.
- string display_name = 1;
- // Activity description.
- //
- // Number of characters allowed is 100,000.
- string description = 2;
- // Activity URI.
- //
- // Number of characters allowed is 4,000.
- string uri = 3;
- // The first creation date of the activity.
- google.type.Date create_date = 4;
- // The last update date of the activity.
- google.type.Date update_date = 5;
- // A list of team members involved in this activity.
- //
- // Number of characters allowed is 100.
- //
- // The limitation for max number of team members is 50.
- repeated string team_members = 6;
- // A list of skills used in this activity.
- //
- // The limitation for max number of skills used is 50.
- repeated Skill skills_used = 7;
- // Output only. Activity name snippet shows how the [display_name][google.cloud.talent.v4beta1.Activity.display_name] is related to a search
- // query. It's empty if the [display_name][google.cloud.talent.v4beta1.Activity.display_name] isn't related to the search
- // query.
- string activity_name_snippet = 8 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. Activity description snippet shows how the
- // [description][google.cloud.talent.v4beta1.Activity.description] is related to a search query. It's empty if the
- // [description][google.cloud.talent.v4beta1.Activity.description] isn't related to the search query.
- string activity_description_snippet = 9 [(google.api.field_behavior) = OUTPUT_ONLY];
- // Output only. Skill used snippet shows how the corresponding
- // [skills_used][google.cloud.talent.v4beta1.Activity.skills_used] are related to a search query. It's empty if the
- // corresponding [skills_used][google.cloud.talent.v4beta1.Activity.skills_used] are not related to the search query.
- repeated string skills_used_snippet = 10 [(google.api.field_behavior) = OUTPUT_ONLY];
- }
- // Resource that represents a publication resource of a candidate.
- message Publication {
- // A list of author names.
- //
- // Number of characters allowed is 100.
- repeated string authors = 1;
- // The title of the publication.
- //
- // Number of characters allowed is 100.
- string title = 2;
- // The description of the publication.
- //
- // Number of characters allowed is 100,000.
- string description = 3;
- // The journal name of the publication.
- //
- // Number of characters allowed is 100.
- string journal = 4;
- // Volume number.
- //
- // Number of characters allowed is 100.
- string volume = 5;
- // The publisher of the journal.
- //
- // Number of characters allowed is 100.
- string publisher = 6;
- // The publication date.
- google.type.Date publication_date = 7;
- // The publication type.
- //
- // Number of characters allowed is 100.
- string publication_type = 8;
- // ISBN number.
- //
- // Number of characters allowed is 100.
- string isbn = 9;
- }
- // Resource that represents the patent acquired by a candidate.
- message Patent {
- // Name of the patent.
- //
- // Number of characters allowed is 100.
- string display_name = 1;
- // A list of inventors' names.
- //
- // Number of characters allowed for each is 100.
- repeated string inventors = 2;
- // The status of the patent.
- //
- // Number of characters allowed is 100.
- string patent_status = 3;
- // The date the last time the status of the patent was checked.
- google.type.Date patent_status_date = 4;
- // The date that the patent was filed.
- google.type.Date patent_filing_date = 5;
- // The name of the patent office.
- //
- // Number of characters allowed is 100.
- string patent_office = 6;
- // The number of the patent.
- //
- // Number of characters allowed is 100.
- string patent_number = 7;
- // The description of the patent.
- //
- // Number of characters allowed is 100,000.
- string patent_description = 8;
- // The skills used in this patent.
- repeated Skill skills_used = 9;
- }
|