You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
997 lines
33 KiB
997 lines
33 KiB
// Copyright 2019 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/annotations.proto";
|
|
import "google/protobuf/timestamp.proto";
|
|
import "google/protobuf/wrappers.proto";
|
|
import "google/type/date.proto";
|
|
import "google/type/latlng.proto";
|
|
import "google/type/money.proto";
|
|
import "google/type/postal_address.proto";
|
|
import "google/type/timeofday.proto";
|
|
|
|
option go_package = "google.golang.org/genproto/googleapis/cloud/talent/v4beta1;talent";
|
|
option java_multiple_files = true;
|
|
option java_outer_classname = "CommonProto";
|
|
option java_package = "com.google.cloud.talent.v4beta1";
|
|
option objc_class_prefix = "CTS";
|
|
|
|
// Message representing a period of time between two timestamps.
|
|
message TimestampRange {
|
|
// Begin of the period (inclusive).
|
|
google.protobuf.Timestamp start_time = 1;
|
|
|
|
// End of the period (exclusive).
|
|
google.protobuf.Timestamp end_time = 2;
|
|
}
|
|
|
|
// Output only. A resource that represents a location with full geographic
|
|
// information.
|
|
message Location {
|
|
// An enum which represents the type of a location.
|
|
enum LocationType {
|
|
// Default value if the type isn't specified.
|
|
LOCATION_TYPE_UNSPECIFIED = 0;
|
|
|
|
// A country level location.
|
|
COUNTRY = 1;
|
|
|
|
// A state or equivalent level location.
|
|
ADMINISTRATIVE_AREA = 2;
|
|
|
|
// A county or equivalent level location.
|
|
SUB_ADMINISTRATIVE_AREA = 3;
|
|
|
|
// A city or equivalent level location.
|
|
LOCALITY = 4;
|
|
|
|
// A postal code level location.
|
|
POSTAL_CODE = 5;
|
|
|
|
// A sublocality is a subdivision of a locality, for example a city borough,
|
|
// ward, or arrondissement. Sublocalities are usually recognized by a local
|
|
// political authority. For example, Manhattan and Brooklyn are recognized
|
|
// as boroughs by the City of New York, and are therefore modeled as
|
|
// sublocalities.
|
|
SUB_LOCALITY = 6;
|
|
|
|
// A district or equivalent level location.
|
|
SUB_LOCALITY_1 = 7;
|
|
|
|
// A smaller district or equivalent level display.
|
|
SUB_LOCALITY_2 = 8;
|
|
|
|
// A neighborhood level location.
|
|
NEIGHBORHOOD = 9;
|
|
|
|
// A street address level location.
|
|
STREET_ADDRESS = 10;
|
|
}
|
|
|
|
// The type of a location, which corresponds to the address lines field of
|
|
// [PostalAddress][]. For example, "Downtown, Atlanta, GA, USA" has a type of
|
|
// [LocationType#NEIGHBORHOOD][], and "Kansas City, KS, USA" has a type of
|
|
// [LocationType#LOCALITY][].
|
|
LocationType location_type = 1;
|
|
|
|
// Postal address of the location that includes human readable information,
|
|
// such as postal delivery and payments addresses. Given a postal address,
|
|
// a postal service can deliver items to a premises, P.O. Box, or other
|
|
// delivery location.
|
|
google.type.PostalAddress postal_address = 2;
|
|
|
|
// An object representing a latitude/longitude pair.
|
|
google.type.LatLng lat_lng = 3;
|
|
|
|
// Radius in miles of the job location. This value is derived from the
|
|
// location bounding box in which a circle with the specified radius
|
|
// centered from [LatLng][] covers the area associated with the job location.
|
|
// For example, currently, "Mountain View, CA, USA" has a radius of
|
|
// 6.17 miles.
|
|
double radius_miles = 4;
|
|
}
|
|
|
|
// An enum that represents the size of the company.
|
|
enum CompanySize {
|
|
// Default value if the size isn't specified.
|
|
COMPANY_SIZE_UNSPECIFIED = 0;
|
|
|
|
// The company has less than 50 employees.
|
|
MINI = 1;
|
|
|
|
// The company has between 50 and 99 employees.
|
|
SMALL = 2;
|
|
|
|
// The company has between 100 and 499 employees.
|
|
SMEDIUM = 3;
|
|
|
|
// The company has between 500 and 999 employees.
|
|
MEDIUM = 4;
|
|
|
|
// The company has between 1,000 and 4,999 employees.
|
|
BIG = 5;
|
|
|
|
// The company has between 5,000 and 9,999 employees.
|
|
BIGGER = 6;
|
|
|
|
// The company has 10,000 or more employees.
|
|
GIANT = 7;
|
|
}
|
|
|
|
// An enum that represents employee benefits included with the job.
|
|
enum JobBenefit {
|
|
// Default value if the type isn't specified.
|
|
JOB_BENEFIT_UNSPECIFIED = 0;
|
|
|
|
// The job includes access to programs that support child care, such
|
|
// as daycare.
|
|
CHILD_CARE = 1;
|
|
|
|
// The job includes dental services covered by a dental
|
|
// insurance plan.
|
|
DENTAL = 2;
|
|
|
|
// The job offers specific benefits to domestic partners.
|
|
DOMESTIC_PARTNER = 3;
|
|
|
|
// The job allows for a flexible work schedule.
|
|
FLEXIBLE_HOURS = 4;
|
|
|
|
// The job includes health services covered by a medical insurance plan.
|
|
MEDICAL = 5;
|
|
|
|
// The job includes a life insurance plan provided by the employer or
|
|
// available for purchase by the employee.
|
|
LIFE_INSURANCE = 6;
|
|
|
|
// The job allows for a leave of absence to a parent to care for a newborn
|
|
// child.
|
|
PARENTAL_LEAVE = 7;
|
|
|
|
// The job includes a workplace retirement plan provided by the
|
|
// employer or available for purchase by the employee.
|
|
RETIREMENT_PLAN = 8;
|
|
|
|
// The job allows for paid time off due to illness.
|
|
SICK_DAYS = 9;
|
|
|
|
// The job includes paid time off for vacation.
|
|
VACATION = 10;
|
|
|
|
// The job includes vision services covered by a vision
|
|
// insurance plan.
|
|
VISION = 11;
|
|
}
|
|
|
|
// Educational degree level defined in International Standard Classification
|
|
// of Education (ISCED).
|
|
enum DegreeType {
|
|
// Default value. Represents no degree, or early childhood education.
|
|
// Maps to ISCED code 0.
|
|
// Ex) Kindergarten
|
|
DEGREE_TYPE_UNSPECIFIED = 0;
|
|
|
|
// Primary education which is typically the first stage of compulsory
|
|
// education. ISCED code 1.
|
|
// Ex) Elementary school
|
|
PRIMARY_EDUCATION = 1;
|
|
|
|
// Lower secondary education; First stage of secondary education building on
|
|
// primary education, typically with a more subject-oriented curriculum.
|
|
// ISCED code 2.
|
|
// Ex) Middle school
|
|
LOWER_SECONDARY_EDUCATION = 2;
|
|
|
|
// Middle education; Second/final stage of secondary education preparing for
|
|
// tertiary education and/or providing skills relevant to employment.
|
|
// Usually with an increased range of subject options and streams. ISCED
|
|
// code 3.
|
|
// Ex) High school
|
|
UPPER_SECONDARY_EDUCATION = 3;
|
|
|
|
// Adult Remedial Education; Programmes providing learning experiences that
|
|
// build on secondary education and prepare for labour market entry and/or
|
|
// tertiary education. The content is broader than secondary but not as
|
|
// complex as tertiary education. ISCED code 4.
|
|
ADULT_REMEDIAL_EDUCATION = 4;
|
|
|
|
// Associate's or equivalent; Short first tertiary programmes that are
|
|
// typically practically-based, occupationally-specific and prepare for
|
|
// labour market entry. These programmes may also provide a pathway to other
|
|
// tertiary programmes. ISCED code 5.
|
|
ASSOCIATES_OR_EQUIVALENT = 5;
|
|
|
|
// Bachelor's or equivalent; Programmes designed to provide intermediate
|
|
// academic and/or professional knowledge, skills and competencies leading
|
|
// to a first tertiary degree or equivalent qualification. ISCED code 6.
|
|
BACHELORS_OR_EQUIVALENT = 6;
|
|
|
|
// Master's or equivalent; Programmes designed to provide advanced academic
|
|
// and/or professional knowledge, skills and competencies leading to a
|
|
// second tertiary degree or equivalent qualification. ISCED code 7.
|
|
MASTERS_OR_EQUIVALENT = 7;
|
|
|
|
// Doctoral or equivalent; Programmes designed primarily to lead to an
|
|
// advanced research qualification, usually concluding with the submission
|
|
// and defense of a substantive dissertation of publishable quality based on
|
|
// original research. ISCED code 8.
|
|
DOCTORAL_OR_EQUIVALENT = 8;
|
|
}
|
|
|
|
// An enum that represents the employment type of a job.
|
|
enum EmploymentType {
|
|
// The default value if the employment type isn't specified.
|
|
EMPLOYMENT_TYPE_UNSPECIFIED = 0;
|
|
|
|
// The job requires working a number of hours that constitute full
|
|
// time employment, typically 40 or more hours per week.
|
|
FULL_TIME = 1;
|
|
|
|
// The job entails working fewer hours than a full time job,
|
|
// typically less than 40 hours a week.
|
|
PART_TIME = 2;
|
|
|
|
// The job is offered as a contracted, as opposed to a salaried employee,
|
|
// position.
|
|
CONTRACTOR = 3;
|
|
|
|
// The job is offered as a contracted position with the understanding
|
|
// that it's converted into a full-time position at the end of the
|
|
// contract. Jobs of this type are also returned by a search for
|
|
// [EmploymentType.CONTRACTOR][google.cloud.talent.v4beta1.EmploymentType.CONTRACTOR] jobs.
|
|
CONTRACT_TO_HIRE = 4;
|
|
|
|
// The job is offered as a temporary employment opportunity, usually
|
|
// a short-term engagement.
|
|
TEMPORARY = 5;
|
|
|
|
// The job is a fixed-term opportunity for students or entry-level job
|
|
// seekers to obtain on-the-job training, typically offered as a summer
|
|
// position.
|
|
INTERN = 6;
|
|
|
|
// The is an opportunity for an individual to volunteer, where there's no
|
|
// expectation of compensation for the provided services.
|
|
VOLUNTEER = 7;
|
|
|
|
// The job requires an employee to work on an as-needed basis with a
|
|
// flexible schedule.
|
|
PER_DIEM = 8;
|
|
|
|
// The job involves employing people in remote areas and flying them
|
|
// temporarily to the work site instead of relocating employees and their
|
|
// families permanently.
|
|
FLY_IN_FLY_OUT = 9;
|
|
|
|
// The job does not fit any of the other listed types.
|
|
OTHER_EMPLOYMENT_TYPE = 10;
|
|
}
|
|
|
|
// An enum that represents the required experience level required for the job.
|
|
enum JobLevel {
|
|
// The default value if the level isn't specified.
|
|
JOB_LEVEL_UNSPECIFIED = 0;
|
|
|
|
// Entry-level individual contributors, typically with less than 2 years of
|
|
// experience in a similar role. Includes interns.
|
|
ENTRY_LEVEL = 1;
|
|
|
|
// Experienced individual contributors, typically with 2+ years of
|
|
// experience in a similar role.
|
|
EXPERIENCED = 2;
|
|
|
|
// Entry- to mid-level managers responsible for managing a team of people.
|
|
MANAGER = 3;
|
|
|
|
// Senior-level managers responsible for managing teams of managers.
|
|
DIRECTOR = 4;
|
|
|
|
// Executive-level managers and above, including C-level positions.
|
|
EXECUTIVE = 5;
|
|
}
|
|
|
|
// An enum that represents the categorization or primary focus of specific
|
|
// role. This value is different than the "industry" associated with a role,
|
|
// which is related to the categorization of the company listing the job.
|
|
enum JobCategory {
|
|
// The default value if the category isn't specified.
|
|
JOB_CATEGORY_UNSPECIFIED = 0;
|
|
|
|
// An accounting and finance job, such as an Accountant.
|
|
ACCOUNTING_AND_FINANCE = 1;
|
|
|
|
// An administrative and office job, such as an Administrative Assistant.
|
|
ADMINISTRATIVE_AND_OFFICE = 2;
|
|
|
|
// An advertising and marketing job, such as Marketing Manager.
|
|
ADVERTISING_AND_MARKETING = 3;
|
|
|
|
// An animal care job, such as Veterinarian.
|
|
ANIMAL_CARE = 4;
|
|
|
|
// An art, fashion, or design job, such as Designer.
|
|
ART_FASHION_AND_DESIGN = 5;
|
|
|
|
// A business operations job, such as Business Operations Manager.
|
|
BUSINESS_OPERATIONS = 6;
|
|
|
|
// A cleaning and facilities job, such as Custodial Staff.
|
|
CLEANING_AND_FACILITIES = 7;
|
|
|
|
// A computer and IT job, such as Systems Administrator.
|
|
COMPUTER_AND_IT = 8;
|
|
|
|
// A construction job, such as General Laborer.
|
|
CONSTRUCTION = 9;
|
|
|
|
// A customer service job, such s Cashier.
|
|
CUSTOMER_SERVICE = 10;
|
|
|
|
// An education job, such as School Teacher.
|
|
EDUCATION = 11;
|
|
|
|
// An entertainment and travel job, such as Flight Attendant.
|
|
ENTERTAINMENT_AND_TRAVEL = 12;
|
|
|
|
// A farming or outdoor job, such as Park Ranger.
|
|
FARMING_AND_OUTDOORS = 13;
|
|
|
|
// A healthcare job, such as Registered Nurse.
|
|
HEALTHCARE = 14;
|
|
|
|
// A human resources job, such as Human Resources Director.
|
|
HUMAN_RESOURCES = 15;
|
|
|
|
// An installation, maintenance, or repair job, such as Electrician.
|
|
INSTALLATION_MAINTENANCE_AND_REPAIR = 16;
|
|
|
|
// A legal job, such as Law Clerk.
|
|
LEGAL = 17;
|
|
|
|
// A management job, often used in conjunction with another category,
|
|
// such as Store Manager.
|
|
MANAGEMENT = 18;
|
|
|
|
// A manufacturing or warehouse job, such as Assembly Technician.
|
|
MANUFACTURING_AND_WAREHOUSE = 19;
|
|
|
|
// A media, communications, or writing job, such as Media Relations.
|
|
MEDIA_COMMUNICATIONS_AND_WRITING = 20;
|
|
|
|
// An oil, gas or mining job, such as Offshore Driller.
|
|
OIL_GAS_AND_MINING = 21;
|
|
|
|
// A personal care and services job, such as Hair Stylist.
|
|
PERSONAL_CARE_AND_SERVICES = 22;
|
|
|
|
// A protective services job, such as Security Guard.
|
|
PROTECTIVE_SERVICES = 23;
|
|
|
|
// A real estate job, such as Buyer's Agent.
|
|
REAL_ESTATE = 24;
|
|
|
|
// A restaurant and hospitality job, such as Restaurant Server.
|
|
RESTAURANT_AND_HOSPITALITY = 25;
|
|
|
|
// A sales and/or retail job, such Sales Associate.
|
|
SALES_AND_RETAIL = 26;
|
|
|
|
// A science and engineering job, such as Lab Technician.
|
|
SCIENCE_AND_ENGINEERING = 27;
|
|
|
|
// A social services or non-profit job, such as Case Worker.
|
|
SOCIAL_SERVICES_AND_NON_PROFIT = 28;
|
|
|
|
// A sports, fitness, or recreation job, such as Personal Trainer.
|
|
SPORTS_FITNESS_AND_RECREATION = 29;
|
|
|
|
// A transportation or logistics job, such as Truck Driver.
|
|
TRANSPORTATION_AND_LOGISTICS = 30;
|
|
}
|
|
|
|
// An enum that represents the job posting region. In most cases, job postings
|
|
// don't need to specify a region. If a region is given, jobs are
|
|
// eligible for searches in the specified region.
|
|
enum PostingRegion {
|
|
// If the region is unspecified, the job is only returned if it
|
|
// matches the [LocationFilter][google.cloud.talent.v4beta1.LocationFilter].
|
|
POSTING_REGION_UNSPECIFIED = 0;
|
|
|
|
// In addition to exact location matching, job posting is returned when the
|
|
// [LocationFilter][google.cloud.talent.v4beta1.LocationFilter] in the search query is in the same administrative area
|
|
// as the returned job posting. For example, if a `ADMINISTRATIVE_AREA` job
|
|
// is posted in "CA, USA", it's returned if [LocationFilter][google.cloud.talent.v4beta1.LocationFilter] has
|
|
// "Mountain View".
|
|
//
|
|
// Administrative area refers to top-level administrative subdivision of this
|
|
// country. For example, US state, IT region, UK constituent nation and
|
|
// JP prefecture.
|
|
ADMINISTRATIVE_AREA = 1;
|
|
|
|
// In addition to exact location matching, job is returned when
|
|
// [LocationFilter][google.cloud.talent.v4beta1.LocationFilter] in search query is in the same country as this job.
|
|
// For example, if a `NATION_WIDE` job is posted in "USA", it's
|
|
// returned if [LocationFilter][google.cloud.talent.v4beta1.LocationFilter] has 'Mountain View'.
|
|
NATION = 2;
|
|
|
|
// Job allows employees to work remotely (telecommute).
|
|
// If [locations][] are provided with this value, the job is
|
|
// considered as having a location, but telecommuting is allowed.
|
|
TELECOMMUTE = 3;
|
|
}
|
|
|
|
// An enum that represents who has view access to the resource.
|
|
enum Visibility {
|
|
// Default value.
|
|
VISIBILITY_UNSPECIFIED = 0;
|
|
|
|
// The resource is only visible to the GCP account who owns it.
|
|
ACCOUNT_ONLY = 1;
|
|
|
|
// The resource is visible to the owner and may be visible to other
|
|
// applications and processes at Google.
|
|
SHARED_WITH_GOOGLE = 2;
|
|
|
|
// The resource is visible to the owner and may be visible to all other API
|
|
// clients.
|
|
SHARED_WITH_PUBLIC = 3;
|
|
}
|
|
|
|
// Enum that represents the usage of the contact information.
|
|
enum ContactInfoUsage {
|
|
// Default value.
|
|
CONTACT_INFO_USAGE_UNSPECIFIED = 0;
|
|
|
|
// Personal use.
|
|
PERSONAL = 1;
|
|
|
|
// Work use.
|
|
WORK = 2;
|
|
|
|
// School use.
|
|
SCHOOL = 3;
|
|
}
|
|
|
|
// Input only.
|
|
//
|
|
// Option for HTML content sanitization on user input fields, for example, job
|
|
// description. By setting this option, user can determine whether and how
|
|
// sanitization is performed on these fields.
|
|
enum HtmlSanitization {
|
|
// Default value.
|
|
HTML_SANITIZATION_UNSPECIFIED = 0;
|
|
|
|
// Disables sanitization on HTML input.
|
|
HTML_SANITIZATION_DISABLED = 1;
|
|
|
|
// Sanitizes HTML input, only accepts bold, italic, ordered list, and
|
|
// unordered list markup tags.
|
|
SIMPLE_FORMATTING_ONLY = 2;
|
|
}
|
|
|
|
// Method for commute.
|
|
enum CommuteMethod {
|
|
// Commute method isn't specified.
|
|
COMMUTE_METHOD_UNSPECIFIED = 0;
|
|
|
|
// Commute time is calculated based on driving time.
|
|
DRIVING = 1;
|
|
|
|
// Commute time is calculated based on public transit including bus, metro,
|
|
// subway, and so on.
|
|
TRANSIT = 2;
|
|
|
|
// Commute time is calculated based on walking time.
|
|
WALKING = 3;
|
|
|
|
// Commute time is calculated based on biking time.
|
|
CYCLING = 4;
|
|
}
|
|
|
|
// Input only.
|
|
//
|
|
// Meta information related to the job searcher or entity
|
|
// conducting the job search. This information is used to improve the
|
|
// performance of the service.
|
|
message RequestMetadata {
|
|
// Required if [allow_missing_ids][google.cloud.talent.v4beta1.RequestMetadata.allow_missing_ids] is unset or `false`.
|
|
//
|
|
// The client-defined scope or source of the service call, which typically
|
|
// is the domain on
|
|
// which the service has been implemented and is currently being run.
|
|
//
|
|
// For example, if the service is being run by client <em>Foo, Inc.</em>, on
|
|
// job board www.foo.com and career site www.bar.com, then this field is
|
|
// set to "foo.com" for use on the job board, and "bar.com" for use on the
|
|
// career site.
|
|
//
|
|
// Note that any improvements to the model for a particular tenant site rely
|
|
// on this field being set correctly to a unique domain.
|
|
//
|
|
// The maximum number of allowed characters is 255.
|
|
string domain = 1;
|
|
|
|
// Required if [allow_missing_ids][google.cloud.talent.v4beta1.RequestMetadata.allow_missing_ids] is unset or `false`.
|
|
//
|
|
// A unique session identification string. A session is defined as the
|
|
// duration of an end user's interaction with the service over a certain
|
|
// period.
|
|
// Obfuscate this field for privacy concerns before
|
|
// providing it to the service.
|
|
//
|
|
// Note that any improvements to the model for a particular tenant site rely
|
|
// on this field being set correctly to a unique session ID.
|
|
//
|
|
// The maximum number of allowed characters is 255.
|
|
string session_id = 2;
|
|
|
|
// Required if [allow_missing_ids][google.cloud.talent.v4beta1.RequestMetadata.allow_missing_ids] is unset or `false`.
|
|
//
|
|
// A unique user identification string, as determined by the client.
|
|
// To have the strongest positive impact on search quality
|
|
// make sure the client-level is unique.
|
|
// Obfuscate this field for privacy concerns before
|
|
// providing it to the service.
|
|
//
|
|
// Note that any improvements to the model for a particular tenant site rely
|
|
// on this field being set correctly to a unique user ID.
|
|
//
|
|
// The maximum number of allowed characters is 255.
|
|
string user_id = 3;
|
|
|
|
// Optional.
|
|
//
|
|
// If set to `true`, [domain][google.cloud.talent.v4beta1.RequestMetadata.domain], [session_id][google.cloud.talent.v4beta1.RequestMetadata.session_id] and [user_id][google.cloud.talent.v4beta1.RequestMetadata.user_id] are optional.
|
|
// Only set when any of these fields isn't available for some reason. It
|
|
// is highly recommended not to set this field and provide accurate
|
|
// [domain][google.cloud.talent.v4beta1.RequestMetadata.domain], [session_id][google.cloud.talent.v4beta1.RequestMetadata.session_id] and [user_id][google.cloud.talent.v4beta1.RequestMetadata.user_id] for the best service experience.
|
|
bool allow_missing_ids = 4;
|
|
|
|
// Optional.
|
|
//
|
|
// The type of device used by the job seeker at the time of the call to the
|
|
// service.
|
|
DeviceInfo device_info = 5;
|
|
}
|
|
|
|
// Output only. Additional information returned to client, such as debugging
|
|
// information.
|
|
message ResponseMetadata {
|
|
// A unique id associated with this call.
|
|
// This id is logged for tracking purposes.
|
|
string request_id = 1;
|
|
}
|
|
|
|
// Device information collected from the job seeker, candidate, or
|
|
// other entity conducting the job search. Providing this information improves
|
|
// the quality of the search results across devices.
|
|
message DeviceInfo {
|
|
// An enumeration describing an API access portal and exposure mechanism.
|
|
enum DeviceType {
|
|
// The device type isn't specified.
|
|
DEVICE_TYPE_UNSPECIFIED = 0;
|
|
|
|
// A desktop web browser, such as, Chrome, Firefox, Safari, or Internet
|
|
// Explorer)
|
|
WEB = 1;
|
|
|
|
// A mobile device web browser, such as a phone or tablet with a Chrome
|
|
// browser.
|
|
MOBILE_WEB = 2;
|
|
|
|
// An Android device native application.
|
|
ANDROID = 3;
|
|
|
|
// An iOS device native application.
|
|
IOS = 4;
|
|
|
|
// A bot, as opposed to a device operated by human beings, such as a web
|
|
// crawler.
|
|
BOT = 5;
|
|
|
|
// Other devices types.
|
|
OTHER = 6;
|
|
}
|
|
|
|
// Optional.
|
|
//
|
|
// Type of the device.
|
|
DeviceType device_type = 1;
|
|
|
|
// Optional.
|
|
//
|
|
// A device-specific ID. The ID must be a unique identifier that
|
|
// distinguishes the device from other devices.
|
|
string id = 2;
|
|
}
|
|
|
|
// Custom attribute values that are either filterable or non-filterable.
|
|
message CustomAttribute {
|
|
// Optional but exactly one of [string_values][google.cloud.talent.v4beta1.CustomAttribute.string_values] or [long_values][google.cloud.talent.v4beta1.CustomAttribute.long_values] must
|
|
// be specified.
|
|
//
|
|
// This field is used to perform a string match (`CASE_SENSITIVE_MATCH` or
|
|
// `CASE_INSENSITIVE_MATCH`) search.
|
|
// For filterable `string_value`s, a maximum total number of 200 values
|
|
// is allowed, with each `string_value` has a byte size of no more than
|
|
// 255B. For unfilterable `string_values`, the maximum total byte size of
|
|
// unfilterable `string_values` is 50KB.
|
|
//
|
|
// Empty string isn't allowed.
|
|
repeated string string_values = 1;
|
|
|
|
// Optional but exactly one of [string_values][google.cloud.talent.v4beta1.CustomAttribute.string_values] or [long_values][google.cloud.talent.v4beta1.CustomAttribute.long_values] must
|
|
// be specified.
|
|
//
|
|
// This field is used to perform number range search.
|
|
// (`EQ`, `GT`, `GE`, `LE`, `LT`) over filterable `long_value`.
|
|
//
|
|
// Currently at most 1 [long_values][google.cloud.talent.v4beta1.CustomAttribute.long_values] is supported.
|
|
repeated int64 long_values = 2;
|
|
|
|
// Optional.
|
|
//
|
|
// If the `filterable` flag is true, custom field values are searchable.
|
|
// If false, values are not searchable.
|
|
//
|
|
// Default is false.
|
|
bool filterable = 3;
|
|
}
|
|
|
|
// Output only. Spell check result.
|
|
message SpellingCorrection {
|
|
// Indicates if the query was corrected by the spell checker.
|
|
bool corrected = 1;
|
|
|
|
// Correction output consisting of the corrected keyword string.
|
|
string corrected_text = 2;
|
|
|
|
// Corrected output with html tags to highlight the corrected words.
|
|
// Corrected words are called out with the "<b><i>...</i></b>" html tags.
|
|
//
|
|
// For example, the user input query is "software enginear", where the second
|
|
// word, "enginear," is incorrect. It should be "engineer". When spelling
|
|
// correction is enabled, this value is
|
|
// "software <b><i>engineer</i></b>".
|
|
string corrected_html = 3;
|
|
}
|
|
|
|
// Job compensation details.
|
|
message CompensationInfo {
|
|
// A compensation entry that represents one component of compensation, such
|
|
// as base pay, bonus, or other compensation type.
|
|
//
|
|
// Annualization: One compensation entry can be annualized if
|
|
// - it contains valid [amount][google.cloud.talent.v4beta1.CompensationInfo.CompensationEntry.amount] or [range][google.cloud.talent.v4beta1.CompensationInfo.CompensationEntry.range].
|
|
// - and its [expected_units_per_year][google.cloud.talent.v4beta1.CompensationInfo.CompensationEntry.expected_units_per_year] is set or can be derived.
|
|
// Its annualized range is determined as ([amount][google.cloud.talent.v4beta1.CompensationInfo.CompensationEntry.amount] or [range][google.cloud.talent.v4beta1.CompensationInfo.CompensationEntry.range]) times
|
|
// [expected_units_per_year][google.cloud.talent.v4beta1.CompensationInfo.CompensationEntry.expected_units_per_year].
|
|
message CompensationEntry {
|
|
// Optional.
|
|
//
|
|
// Compensation type.
|
|
//
|
|
// Default is [CompensationUnit.OTHER_COMPENSATION_TYPE][].
|
|
CompensationType type = 1;
|
|
|
|
// Optional.
|
|
//
|
|
// Frequency of the specified amount.
|
|
//
|
|
// Default is [CompensationUnit.OTHER_COMPENSATION_UNIT][google.cloud.talent.v4beta1.CompensationInfo.CompensationUnit.OTHER_COMPENSATION_UNIT].
|
|
CompensationUnit unit = 2;
|
|
|
|
// Optional.
|
|
//
|
|
// Compensation amount. It could be a fixed amount or a floating range.
|
|
oneof compensation_amount {
|
|
// Optional.
|
|
//
|
|
// Compensation amount.
|
|
google.type.Money amount = 3;
|
|
|
|
// Optional.
|
|
//
|
|
// Compensation range.
|
|
CompensationRange range = 4;
|
|
}
|
|
|
|
// Optional.
|
|
//
|
|
// Compensation description. For example, could
|
|
// indicate equity terms or provide additional context to an estimated
|
|
// bonus.
|
|
string description = 5;
|
|
|
|
// Optional.
|
|
//
|
|
// Expected number of units paid each year. If not specified, when
|
|
// [Job.employment_types][google.cloud.talent.v4beta1.Job.employment_types] is FULLTIME, a default value is inferred
|
|
// based on [unit][google.cloud.talent.v4beta1.CompensationInfo.CompensationEntry.unit]. Default values:
|
|
// - HOURLY: 2080
|
|
// - DAILY: 260
|
|
// - WEEKLY: 52
|
|
// - MONTHLY: 12
|
|
// - ANNUAL: 1
|
|
google.protobuf.DoubleValue expected_units_per_year = 6;
|
|
}
|
|
|
|
// Compensation range.
|
|
message CompensationRange {
|
|
// Optional.
|
|
//
|
|
// The maximum amount of compensation. If left empty, the value is set
|
|
// to a maximal compensation value and the currency code is set to
|
|
// match the [currency code][google.type.Money.currency_code] of
|
|
// min_compensation.
|
|
google.type.Money max_compensation = 2;
|
|
|
|
// Optional.
|
|
//
|
|
// The minimum amount of compensation. If left empty, the value is set
|
|
// to zero and the currency code is set to match the
|
|
// [currency code][google.type.Money.currency_code] of max_compensation.
|
|
google.type.Money min_compensation = 1;
|
|
}
|
|
|
|
// The type of compensation.
|
|
//
|
|
// For compensation amounts specified in non-monetary amounts,
|
|
// describe the compensation scheme in the [CompensationEntry.description][google.cloud.talent.v4beta1.CompensationInfo.CompensationEntry.description].
|
|
//
|
|
// For example, tipping format is described in
|
|
// [CompensationEntry.description][google.cloud.talent.v4beta1.CompensationInfo.CompensationEntry.description] (for example, "expect 15-20% tips based
|
|
// on customer bill.") and an estimate of the tips provided in
|
|
// [CompensationEntry.amount][google.cloud.talent.v4beta1.CompensationInfo.CompensationEntry.amount] or [CompensationEntry.range][google.cloud.talent.v4beta1.CompensationInfo.CompensationEntry.range] ($10 per hour).
|
|
//
|
|
// For example, equity is described in [CompensationEntry.description][google.cloud.talent.v4beta1.CompensationInfo.CompensationEntry.description]
|
|
// (for example, "1% - 2% equity vesting over 4 years, 1 year cliff") and
|
|
// value estimated in [CompensationEntry.amount][google.cloud.talent.v4beta1.CompensationInfo.CompensationEntry.amount] or
|
|
// [CompensationEntry.range][google.cloud.talent.v4beta1.CompensationInfo.CompensationEntry.range]. If no value estimate is possible, units are
|
|
// [CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED][google.cloud.talent.v4beta1.CompensationInfo.CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED] and then further
|
|
// clarified in [CompensationEntry.description][google.cloud.talent.v4beta1.CompensationInfo.CompensationEntry.description] field.
|
|
enum CompensationType {
|
|
// Default value.
|
|
COMPENSATION_TYPE_UNSPECIFIED = 0;
|
|
|
|
// Base compensation: Refers to the fixed amount of money paid to an
|
|
// employee by an employer in return for work performed. Base compensation
|
|
// does not include benefits, bonuses or any other potential compensation
|
|
// from an employer.
|
|
BASE = 1;
|
|
|
|
// Bonus.
|
|
BONUS = 2;
|
|
|
|
// Signing bonus.
|
|
SIGNING_BONUS = 3;
|
|
|
|
// Equity.
|
|
EQUITY = 4;
|
|
|
|
// Profit sharing.
|
|
PROFIT_SHARING = 5;
|
|
|
|
// Commission.
|
|
COMMISSIONS = 6;
|
|
|
|
// Tips.
|
|
TIPS = 7;
|
|
|
|
// Other compensation type.
|
|
OTHER_COMPENSATION_TYPE = 8;
|
|
}
|
|
|
|
// Pay frequency.
|
|
enum CompensationUnit {
|
|
// Default value.
|
|
COMPENSATION_UNIT_UNSPECIFIED = 0;
|
|
|
|
// Hourly.
|
|
HOURLY = 1;
|
|
|
|
// Daily.
|
|
DAILY = 2;
|
|
|
|
// Weekly
|
|
WEEKLY = 3;
|
|
|
|
// Monthly.
|
|
MONTHLY = 4;
|
|
|
|
// Yearly.
|
|
YEARLY = 5;
|
|
|
|
// One time.
|
|
ONE_TIME = 6;
|
|
|
|
// Other compensation units.
|
|
OTHER_COMPENSATION_UNIT = 7;
|
|
}
|
|
|
|
// Optional.
|
|
//
|
|
// Job compensation information.
|
|
//
|
|
// At most one entry can be of type
|
|
// [CompensationInfo.CompensationType.BASE][google.cloud.talent.v4beta1.CompensationInfo.CompensationType.BASE], which is
|
|
// referred as ** base compensation entry ** for the job.
|
|
repeated CompensationEntry entries = 1;
|
|
|
|
// Output only. Annualized base compensation range. Computed as
|
|
// base compensation entry's [CompensationEntry.compensation][] times
|
|
// [CompensationEntry.expected_units_per_year][google.cloud.talent.v4beta1.CompensationInfo.CompensationEntry.expected_units_per_year].
|
|
//
|
|
// See [CompensationEntry][google.cloud.talent.v4beta1.CompensationInfo.CompensationEntry] for explanation on compensation annualization.
|
|
CompensationRange annualized_base_compensation_range = 2;
|
|
|
|
// Output only. Annualized total compensation range. Computed as
|
|
// all compensation entries' [CompensationEntry.compensation][] times
|
|
// [CompensationEntry.expected_units_per_year][google.cloud.talent.v4beta1.CompensationInfo.CompensationEntry.expected_units_per_year].
|
|
//
|
|
// See [CompensationEntry][google.cloud.talent.v4beta1.CompensationInfo.CompensationEntry] for explanation on compensation annualization.
|
|
CompensationRange annualized_total_compensation_range = 3;
|
|
}
|
|
|
|
// Resource that represents a license or certification.
|
|
message Certification {
|
|
// Optional.
|
|
//
|
|
// Name of license or certification.
|
|
//
|
|
// Number of characters allowed is 100.
|
|
string display_name = 1;
|
|
|
|
// Optional.
|
|
//
|
|
// Acquisition date or effective date of license or certification.
|
|
google.type.Date acquire_date = 2;
|
|
|
|
// Optional.
|
|
//
|
|
// Expiration date of license of certification.
|
|
google.type.Date expire_date = 3;
|
|
|
|
// Optional.
|
|
//
|
|
// Authority of license, such as government.
|
|
//
|
|
// Number of characters allowed is 100.
|
|
string authority = 4;
|
|
|
|
// Optional.
|
|
//
|
|
// Description of license or certification.
|
|
//
|
|
// Number of characters allowed is 100,000.
|
|
string description = 5;
|
|
}
|
|
|
|
// Resource that represents a skill of a candidate.
|
|
message Skill {
|
|
// Optional.
|
|
//
|
|
// Skill display name.
|
|
//
|
|
// For example, "Java", "Python".
|
|
//
|
|
// Number of characters allowed is 100.
|
|
string display_name = 1;
|
|
|
|
// Optional.
|
|
//
|
|
// The last time this skill was used.
|
|
google.type.Date last_used_date = 2;
|
|
|
|
// Optional.
|
|
//
|
|
// Skill proficiency level which indicates how proficient the candidate is at
|
|
// this skill.
|
|
SkillProficiencyLevel level = 3;
|
|
|
|
// Optional.
|
|
//
|
|
// A paragraph describes context of this skill.
|
|
//
|
|
// Number of characters allowed is 100,000.
|
|
string context = 4;
|
|
|
|
// Output only. Skill name snippet shows how the [display_name][google.cloud.talent.v4beta1.Skill.display_name] is related
|
|
// to a search query. It's empty if the [display_name][google.cloud.talent.v4beta1.Skill.display_name] isn't related to the
|
|
// search query.
|
|
string skill_name_snippet = 5;
|
|
}
|
|
|
|
// Details of an interview.
|
|
message Interview {
|
|
// Optional.
|
|
//
|
|
// The rating on this interview.
|
|
Rating rating = 6;
|
|
|
|
// Required.
|
|
//
|
|
// The overall decision resulting from this interview (positive, negative,
|
|
// nuetral).
|
|
Outcome outcome = 7;
|
|
}
|
|
|
|
// The details of the score received for an assessment or interview.
|
|
message Rating {
|
|
// Overall score.
|
|
double overall = 1;
|
|
|
|
// The minimum value for the score.
|
|
double min = 2;
|
|
|
|
// The maximum value for the score.
|
|
double max = 3;
|
|
|
|
// The steps within the score (for example, interval = 1 max = 5
|
|
// min = 1 indicates that the score can be 1, 2, 3, 4, or 5)
|
|
double interval = 4;
|
|
}
|
|
|
|
// Enum that represents the skill proficiency level.
|
|
enum SkillProficiencyLevel {
|
|
// Default value.
|
|
SKILL_PROFICIENCY_LEVEL_UNSPECIFIED = 0;
|
|
|
|
// Have a common knowledge or an understanding of basic techniques and
|
|
// concepts.
|
|
FUNDAMENTAL_AWARENESS = 1;
|
|
|
|
// Have the level of experience gained in a classroom and/or experimental
|
|
// scenarios or as a trainee on-the-job.
|
|
NOVICE = 2;
|
|
|
|
// Be able to successfully complete tasks in this skill as requested. Help
|
|
// from an expert may be required from time to time, but can usually perform
|
|
// skill independently.
|
|
INTERMEDIATE = 3;
|
|
|
|
// Can perform the actions associated with this skill without assistance.
|
|
ADVANCED = 4;
|
|
|
|
// Known as an expert in this area.
|
|
EXPERT = 5;
|
|
}
|
|
|
|
// The overall outcome /decision / result indicator.
|
|
enum Outcome {
|
|
// Default value.
|
|
OUTCOME_UNSPECIFIED = 0;
|
|
|
|
// A positive outcome / passing indicator (for example, candidate was
|
|
// recommended for hiring or to be moved forward in the hiring process,
|
|
// candidate passed a test).
|
|
POSITIVE = 1;
|
|
|
|
// A neutral outcome / no clear indicator (for example, no strong
|
|
// reccommendation either to move forward / not move forward, neutral score).
|
|
NEUTRAL = 2;
|
|
|
|
// A negative outcome / failing indicator (for example, candidate was
|
|
// recommended to NOT move forward in the hiring process, failed a test).
|
|
NEGATIVE = 3;
|
|
|
|
// The assessment outcome is not available or otherwise unknown (for example,
|
|
// candidate did not complete assessment).
|
|
OUTCOME_NOT_AVAILABLE = 4;
|
|
}
|
|
|