- Resource: Job
- ApplicationInfo
- JobBenefit
- CompensationInfo
- CompensationEntry
- CompensationType
- CompensationUnit
- CompensationRange
- DegreeType
- EmploymentType
- JobLevel
- PostingRegion
- Visibility
- DerivedInfo
- JobCategory
- ProcessingOptions
- HtmlSanitization
- Methods
Resource: Job
A Job resource represents a job posting (also referred to as a "job listing" or "job requisition"). A job belongs to a Company
, which is the hiring entity responsible for the job.
JSON representation | |
---|---|
{ "name": string, "companyName": string, "requisitionId": string, "title": string, "description": string, "addresses": [ string ], "applicationInfo": { object ( |
Fields | |
---|---|
name |
Required during job update. The resource name for the job. This is generated by the service when a job is created. The format is "projects/{projectId}/jobs/{job_id}", for example, "projects/api-test-project/jobs/1234". Use of this field in job queries and API calls is preferred over the use of |
companyName |
Required. The resource name of the company listing the job, such as "projects/api-test-project/companies/foo". |
requisitionId |
Required. The requisition ID, also referred to as the posting ID, assigned by the client to identify a job. This field is intended to be used by clients for client identification and tracking of postings. A job is not allowed to be created if there is another job with the same [companyName], The maximum number of allowed characters is 255. |
title |
Required. The title of the job, such as "Software Engineer" The maximum number of allowed characters is 500. |
description |
Required. The description of the job, which typically includes a multi-paragraph description of the company and related information. Separate fields are provided on the job object for This field accepts and sanitizes HTML input, and also accepts bold, italic, ordered list, and unordered list markup tags. The maximum number of allowed characters is 100,000. |
addresses[] |
Optional but strongly recommended for the best service experience. Location(s) where the employer is looking to hire for this job posting. Specifying the full street address(es) of the hiring location enables better API results, especially job searches by commute time. At most 50 locations are allowed for best search performance. If a job has more locations, it is suggested to split it into multiple jobs with unique The maximum number of allowed characters is 500. |
applicationInfo |
Required. At least one field within Job application information. |
jobBenefits[] |
Optional. The benefits included with the job. |
compensationInfo |
Optional. Job compensation information. |
customAttributes |
Optional. A map of fields to hold both filterable and non-filterable custom job attributes that are not covered by the provided structured fields. The keys of the map are strings up to 64 bytes and must match the pattern: [a-zA-Z][a-zA-Z0-9_]*. For example, key0LikeThis or KEY_1_LIKE_THIS. At most 100 filterable and at most 100 unfilterable keys are supported. For filterable An object containing a list of |
degreeTypes[] |
Optional. The desired education degrees for the job, such as Bachelors, Masters. |
department |
Optional. The department or functional area within the company with the open position. The maximum number of allowed characters is 255. |
employmentTypes[] |
Optional. The employment type(s) of a job, for example, |
incentives |
Optional. A description of bonus, commission, and other compensation incentives associated with the job not including salary or pay. The maximum number of allowed characters is 10,000. |
languageCode |
Optional. The language of the posting. This field is distinct from any requirements for fluency that are associated with the job. Language codes must be in BCP-47 format, such as "en-US" or "sr-Latn". For more information, see Tags for Identifying Languages{: class="external" target="_blank" }. If this field is unspecified and |
jobLevel |
Optional. The experience level associated with the job, such as "Entry Level". |
promotionValue |
Optional. A promotion value of the job, as determined by the client. The value determines the sort order of the jobs returned when searching for jobs using the featured jobs search call, with higher promotional values being returned first and ties being resolved by relevance sort. Only the jobs with a promotionValue >0 are returned in a FEATURED_JOB_SEARCH. Default value is 0, and negative values are treated as 0. |
qualifications |
Optional. A description of the qualifications required to perform the job. The use of this field is recommended as an alternative to using the more general This field accepts and sanitizes HTML input, and also accepts bold, italic, ordered list, and unordered list markup tags. The maximum number of allowed characters is 10,000. |
responsibilities |
Optional. A description of job responsibilities. The use of this field is recommended as an alternative to using the more general This field accepts and sanitizes HTML input, and also accepts bold, italic, ordered list, and unordered list markup tags. The maximum number of allowed characters is 10,000. |
postingRegion |
Optional. The job |
visibility |
Deprecated. The job is only visible to the owner. The visibility of the job. Defaults to |
jobStartTime |
Optional. The start timestamp of the job in UTC time zone. Typically this field is used for contracting engagements. Invalid timestamps are ignored. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
jobEndTime |
Optional. The end timestamp of the job. Typically this field is used for contracting engagements. Invalid timestamps are ignored. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
postingPublishTime |
Optional. The timestamp this job posting was most recently published. The default value is the time the request arrives at the server. Invalid timestamps are ignored. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
postingExpireTime |
Optional but strongly recommended for the best service experience. The expiration timestamp of the job. After this timestamp, the job is marked as expired, and it no longer appears in search results. The expired job can't be deleted or listed by the [jobs.delete][] and [jobs.list][] APIs, but it can be retrieved with the [jobs.get][] API or updated with the [jobs.patch][] API. An expired job can be updated and opened again by using a future expiration timestamp. Updating an expired job fails if there is another existing open job with same The expired jobs are retained in our system for 90 days. However, the overall expired job count cannot exceed 3 times the maximum of open jobs count over the past week, otherwise jobs with earlier expire time are cleaned first. Expired jobs are no longer accessible after they are cleaned out. Invalid timestamps are ignored, and treated as expire time not provided. Timestamp before the instant request is made is considered valid, the job will be treated as expired immediately. If this value is not provided at the time of job creation or is invalid, the job posting expires after 30 days from the job's creation time. For example, if the job was created on 2017/01/01 13:00AM UTC with an unspecified expiration date, the job expires after 2017/01/31 13:00AM UTC. If this value is not provided on job update, it depends on the field masks set by A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
postingCreateTime |
Output only. The timestamp when this job posting was created. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
postingUpdateTime |
Output only. The timestamp when this job posting was last updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
companyDisplayName |
Output only. Display name of the company listing the job. |
derivedInfo |
Output only. Derived details about the job posting. |
processingOptions |
Optional. Options for job processing. |
ApplicationInfo
Application related details of a job posting.
JSON representation | |
---|---|
{ "emails": [ string ], "instruction": string, "uris": [ string ] } |
Fields | |
---|---|
emails[] |
Optional but at least one of Use this field to specify email address(es) to which resumes or applications can be sent. The maximum number of allowed characters for each entry is 255. |
instruction |
Optional but at least one of Use this field to provide instructions, such as "Mail your application to ...", that a candidate can follow to apply for the job. This field accepts and sanitizes HTML input, and also accepts bold, italic, ordered list, and unordered list markup tags. The maximum number of allowed characters is 3,000. |
uris[] |
Optional but at least one of Use this URI field to direct an applicant to a website, for example to link to an online application form. The maximum number of allowed characters for each entry is 2,000. |
JobBenefit
An enum that represents employee benefits included with the job.
Enums | |
---|---|
JOB_BENEFIT_UNSPECIFIED |
Default value if the type is not specified. |
CHILD_CARE |
The job includes access to programs that support child care, such as daycare. |
DENTAL |
The job includes dental services covered by a dental insurance plan. |
DOMESTIC_PARTNER |
The job offers specific benefits to domestic partners. |
FLEXIBLE_HOURS |
The job allows for a flexible work schedule. |
MEDICAL |
The job includes health services covered by a medical insurance plan. |
LIFE_INSURANCE |
The job includes a life insurance plan provided by the employer or available for purchase by the employee. |
PARENTAL_LEAVE |
The job allows for a leave of absence to a parent to care for a newborn child. |
RETIREMENT_PLAN |
The job includes a workplace retirement plan provided by the employer or available for purchase by the employee. |
SICK_DAYS |
The job allows for paid time off due to illness. |
VACATION |
The job includes paid time off for vacation. |
VISION |
The job includes vision services covered by a vision insurance plan. |
CompensationInfo
Job compensation details.
JSON representation | |
---|---|
{ "entries": [ { object ( |
Fields | |
---|---|
entries[] |
Optional. Job compensation information. At most one entry can be of type |
annualizedBaseCompensationRange |
Output only. Annualized base compensation range. Computed as base compensation entry's [CompensationEntry.compensation][] times See |
annualizedTotalCompensationRange |
Output only. Annualized total compensation range. Computed as all compensation entries' [CompensationEntry.compensation][] times See |
CompensationEntry
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
or range
. - and its expectedUnitsPerYear
is set or can be derived. Its annualized range is determined as (amount
or range
) times expectedUnitsPerYear
.
JSON representation | |
---|---|
{ "type": enum ( |
Fields | ||
---|---|---|
type |
Optional. Compensation type. Default is [CompensationUnit.COMPENSATION_TYPE_UNSPECIFIED][]. |
|
unit |
Optional. Frequency of the specified amount. Default is |
|
description |
Optional. Compensation description. For example, could indicate equity terms or provide additional context to an estimated bonus. |
|
expectedUnitsPerYear |
Optional. Expected number of units paid each year. If not specified, when |
|
Union field Compensation amount. It could be a fixed amount or a floating range. |
||
amount |
Optional. Compensation amount. |
|
range |
Optional. Compensation range. |
CompensationType
The type of compensation.
For compensation amounts specified in non-monetary amounts, describe the compensation scheme in the CompensationEntry.description
.
For example, tipping format is described in CompensationEntry.description
(for example, "expect 15-20% tips based on customer bill.") and an estimate of the tips provided in CompensationEntry.amount
or CompensationEntry.range
($10 per hour).
For example, equity is described in CompensationEntry.description
(for example, "1% - 2% equity vesting over 4 years, 1 year cliff") and value estimated in CompensationEntry.amount
or CompensationEntry.range
. If no value estimate is possible, units are CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED
and then further clarified in CompensationEntry.description
field.
Enums | |
---|---|
COMPENSATION_TYPE_UNSPECIFIED |
Default value. |
BASE |
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. |
BONUS |
Bonus. |
SIGNING_BONUS |
Signing bonus. |
EQUITY |
Equity. |
PROFIT_SHARING |
Profit sharing. |
COMMISSIONS |
Commission. |
TIPS |
Tips. |
OTHER_COMPENSATION_TYPE |
Other compensation type. |
CompensationUnit
Pay frequency.
Enums | |
---|---|
COMPENSATION_UNIT_UNSPECIFIED |
Default value. |
HOURLY |
Hourly. |
DAILY |
Daily. |
WEEKLY |
Weekly |
MONTHLY |
Monthly. |
YEARLY |
Yearly. |
ONE_TIME |
One time. |
OTHER_COMPENSATION_UNIT |
Other compensation units. |
CompensationRange
Compensation range.
JSON representation | |
---|---|
{ "maxCompensation": { object ( |
Fields | |
---|---|
maxCompensation |
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 |
minCompensation |
Optional. The minimum amount of compensation. If left empty, the value is set to zero and the currency code is set to match the |
DegreeType
Educational degree level defined in International Standard Classification of Education (ISCED).
Enums | |
---|---|
DEGREE_TYPE_UNSPECIFIED |
Default value. Represents no degree, or early childhood education. Maps to ISCED code 0. Ex) Kindergarten |
PRIMARY_EDUCATION |
Primary education which is typically the first stage of compulsory education. ISCED code 1. Ex) Elementary school |
LOWER_SECONDARY_EDUCATION |
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 |
UPPER_SECONDARY_EDUCATION |
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 |
ADULT_REMEDIAL_EDUCATION |
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. |
ASSOCIATES_OR_EQUIVALENT |
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. |
BACHELORS_OR_EQUIVALENT |
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. |
MASTERS_OR_EQUIVALENT |
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. |
DOCTORAL_OR_EQUIVALENT |
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. |
EmploymentType
An enum that represents the employment type of a job.
Enums | |
---|---|
EMPLOYMENT_TYPE_UNSPECIFIED |
The default value if the employment type is not specified. |
FULL_TIME |
The job requires working a number of hours that constitute full time employment, typically 40 or more hours per week. |
PART_TIME |
The job entails working fewer hours than a full time job, typically less than 40 hours a week. |
CONTRACTOR |
The job is offered as a contracted, as opposed to a salaried employee, position. |
CONTRACT_TO_HIRE |
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 jobs. |
TEMPORARY |
The job is offered as a temporary employment opportunity, usually a short-term engagement. |
INTERN |
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. |
VOLUNTEER |
The is an opportunity for an individual to volunteer, where there's no expectation of compensation for the provided services. |
PER_DIEM |
The job requires an employee to work on an as-needed basis with a flexible schedule. |
FLY_IN_FLY_OUT |
The job involves employing people in remote areas and flying them temporarily to the work site instead of relocating employees and their families permanently. |
OTHER_EMPLOYMENT_TYPE |
The job does not fit any of the other listed types. |
JobLevel
An enum that represents the required experience level required for the job.
Enums | |
---|---|
JOB_LEVEL_UNSPECIFIED |
The default value if the level is not specified. |
ENTRY_LEVEL |
Entry-level individual contributors, typically with less than 2 years of experience in a similar role. Includes interns. |
EXPERIENCED |
Experienced individual contributors, typically with 2+ years of experience in a similar role. |
MANAGER |
Entry- to mid-level managers responsible for managing a team of people. |
DIRECTOR |
Senior-level managers responsible for managing teams of managers. |
EXECUTIVE |
Executive-level managers and above, including C-level positions. |
PostingRegion
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.
Enums | |
---|---|
POSTING_REGION_UNSPECIFIED |
If the region is unspecified, the job is only returned if it matches the LocationFilter . |
ADMINISTRATIVE_AREA |
In addition to exact location matching, job posting is returned when the Administrative area refers to top-level administrative subdivision of this country. For example, US state, IT region, UK constituent nation and JP prefecture. |
NATION |
In addition to exact location matching, job is returned when 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 has 'Mountain View'. |
TELECOMMUTE |
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. |
Visibility
Deprecated. All resources are only visible to the owner.
An enum that represents who has view access to the resource.
Enums | |
---|---|
VISIBILITY_UNSPECIFIED |
Default value. |
ACCOUNT_ONLY |
The resource is only visible to the GCP account who owns it. |
SHARED_WITH_GOOGLE |
The resource is visible to the owner and may be visible to other applications and processes at Google. |
SHARED_WITH_PUBLIC |
The resource is visible to the owner and may be visible to all other API clients. |
DerivedInfo
Output only.
Derived details about the job posting.
JSON representation | |
---|---|
{ "locations": [ { object ( |
Fields | |
---|---|
locations[] |
Structured locations of the job, resolved from
|
jobCategories[] |
Job categories derived from |
JobCategory
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.
Enums | |
---|---|
JOB_CATEGORY_UNSPECIFIED |
The default value if the category isn't specified. |
ACCOUNTING_AND_FINANCE |
An accounting and finance job, such as an Accountant. |
ADMINISTRATIVE_AND_OFFICE |
An administrative and office job, such as an Administrative Assistant. |
ADVERTISING_AND_MARKETING |
An advertising and marketing job, such as Marketing Manager. |
ANIMAL_CARE |
An animal care job, such as Veterinarian. |
ART_FASHION_AND_DESIGN |
An art, fashion, or design job, such as Designer. |
BUSINESS_OPERATIONS |
A business operations job, such as Business Operations Manager. |
CLEANING_AND_FACILITIES |
A cleaning and facilities job, such as Custodial Staff. |
COMPUTER_AND_IT |
A computer and IT job, such as Systems Administrator. |
CONSTRUCTION |
A construction job, such as General Laborer. |
CUSTOMER_SERVICE |
A customer service job, such s Cashier. |
EDUCATION |
An education job, such as School Teacher. |
ENTERTAINMENT_AND_TRAVEL |
An entertainment and travel job, such as Flight Attendant. |
FARMING_AND_OUTDOORS |
A farming or outdoor job, such as Park Ranger. |
HEALTHCARE |
A healthcare job, such as Registered Nurse. |
HUMAN_RESOURCES |
A human resources job, such as Human Resources Director. |
INSTALLATION_MAINTENANCE_AND_REPAIR |
An installation, maintenance, or repair job, such as Electrician. |
LEGAL |
A legal job, such as Law Clerk. |
MANAGEMENT |
A management job, often used in conjunction with another category, such as Store Manager. |
MANUFACTURING_AND_WAREHOUSE |
A manufacturing or warehouse job, such as Assembly Technician. |
MEDIA_COMMUNICATIONS_AND_WRITING |
A media, communications, or writing job, such as Media Relations. |
OIL_GAS_AND_MINING |
An oil, gas or mining job, such as Offshore Driller. |
PERSONAL_CARE_AND_SERVICES |
A personal care and services job, such as Hair Stylist. |
PROTECTIVE_SERVICES |
A protective services job, such as Security Guard. |
REAL_ESTATE |
A real estate job, such as Buyer's Agent. |
RESTAURANT_AND_HOSPITALITY |
A restaurant and hospitality job, such as Restaurant Server. |
SALES_AND_RETAIL |
A sales and/or retail job, such Sales Associate. |
SCIENCE_AND_ENGINEERING |
A science and engineering job, such as Lab Technician. |
SOCIAL_SERVICES_AND_NON_PROFIT |
A social services or non-profit job, such as Case Worker. |
SPORTS_FITNESS_AND_RECREATION |
A sports, fitness, or recreation job, such as Personal Trainer. |
TRANSPORTATION_AND_LOGISTICS |
A transportation or logistics job, such as Truck Driver. |
ProcessingOptions
Input only.
Options for job processing.
JSON representation | |
---|---|
{
"disableStreetAddressResolution": boolean,
"htmlSanitization": enum ( |
Fields | |
---|---|
disableStreetAddressResolution |
Optional. If set to |
htmlSanitization |
Optional. Option for job HTML content sanitization. Applied fields are:
HTML tags in these fields may be stripped if sanitiazation is not disabled. Defaults to |
HtmlSanitization
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.
Enums | |
---|---|
HTML_SANITIZATION_UNSPECIFIED |
Default value. |
HTML_SANITIZATION_DISABLED |
Disables sanitization on HTML input. |
SIMPLE_FORMATTING_ONLY |
Sanitizes HTML input, only accepts bold, italic, ordered list, and unordered list markup tags. |
Methods |
|
---|---|
|
Deletes a list of Job s by filter. |
|
Creates a new job. |
|
Deletes the specified job. |
|
Retrieves the specified job, whose status is OPEN or recently EXPIRED within the last 90 days. |
|
Lists jobs by filter. |
|
Updates specified job. |
|
Searches for jobs using the provided SearchJobsRequest . |
|
Searches for jobs using the provided SearchJobsRequest . |