Method: projects.jobs.searchForAlert

使用提供的 SearchJobsRequest 搜索招聘信息。

此 API 调用主要用于针对被动求职者(例如,已注册并同意接收有关潜在工作机会的电子邮件提醒的求职者)的使用场景,并针对被动求职者进行不同的算法调整。

此调用会限制数据库中存在的招聘信息的 visibility,并仅返回调用者有权搜索的招聘信息。

HTTP 请求

POST https://jobs.googleapis.com/v4beta1/{parent=projects/*}/jobs:searchForAlert

网址采用 gRPC 转码语法。

路径参数

参数
parent

string

必需。要在其中进行搜索的租户的资源名称。

格式为“projects/{projectId}/tenants/{tenantId}”。例如“projects/foo/tenant/bar”。如果未指定租户 ID,则系统会创建默认租户。例如“projects/foo”。

请求正文

请求正文中包含结构如下的数据:

JSON 表示法
{
  "searchMode": enum (SearchMode),
  "requestMetadata": {
    object (RequestMetadata)
  },
  "jobQuery": {
    object (JobQuery)
  },
  "enableBroadening": boolean,
  "requirePreciseResultSize": boolean,
  "histogramQueries": [
    {
      object (HistogramQuery)
    }
  ],
  "jobView": enum (JobView),
  "offset": integer,
  "pageSize": integer,
  "pageToken": string,
  "orderBy": string,
  "diversificationLevel": enum (DiversificationLevel),
  "customRankingInfo": {
    object (CustomRankingInfo)
  },
  "disableKeywordMatch": boolean
}
字段
searchMode

enum (SearchMode)

搜索的模式。

默认值为 SearchMode.JOB_SEARCH

requestMetadata

object (RequestMetadata)

必需。收集到的关于求职者的元信息,用于提高服务的搜索质量。标识符(例如 userId)由用户提供,并且必须唯一且一致。

jobQuery

object (JobQuery)

用于搜索招聘信息的查询,例如关键字、地点过滤器等。

enableBroadening

boolean

控制在生成稀疏结果时是否扩大搜索范围。扩展查询会将结果附加到匹配结果列表的末尾。

默认值为 false。

requirePreciseResultSize
(deprecated)

boolean

此字段已弃用。

histogramQueries[]

object (HistogramQuery)

指定针对匹配招聘信息的直方图请求的表达式。

表达式语法采用包含直方图属性和其他选项的聚合函数调用。

可用的聚合函数调用如下:* count(string_histogram_facet):计算每个不同属性值的匹配实体的数量。* count(numeric_histogram_facet, list of buckets):计算每个存储分区内匹配实体的数量。

数据类型:

  • 直方图 Facet:采用 [a-zA-Z][a-zA-Z0-9_]+ 格式的 Facet 名称。
  • 字符串:诸如“any string with backslash escape for quote(")”之类的字符串。
  • 数字:整数和浮点数,如 10、-1 和 -0.01。
  • 列表:用方括号括起并以 (,) 分隔的元素列表,例如 [1, 2, 3] 和 ["one", "two", "three"]。

内置常量:

  • MIN(最小数字,类似于 java Double.MIN_VALUE)
  • MAX(最大数字,类似于 java Double.MAX_VALUE)

内置函数:

  • bucket(start, end[, label]):bucket 内置函数会创建一个范围为 [start, end) 的集合。请注意,end 不包括在内,例如,bucket(1, MAX, "positive number") 或 bucket(1, 10)。

招聘信息直方图 Facet:

  • companyDisplayName:按 Job.company_display_name 生成直方图。
  • employment_type:按 Job.employment_types 生成直方图,例如“FULL_TIME”“PART_TIME”。
  • companySize:按 CompanySize 生成直方图,例如“SMALL”“MEDIUM”“BIG”。
  • publish_time_in_month:按 Job.posting_publish_time 生成直方图(以月为单位)。必须在 spec 中指定数值集列表。
  • publish_time_in_year:按 Job.posting_publish_time(以年为单位)生成直方图。必须在 spec 中指定数值集列表。
  • 学位类型:按 Job.degree_types 生成直方图,例如“学士”“硕士”。
  • jobLevel:按 Job.job_level 生成直方图,例如“初级”。
  • country:按招聘信息所属的国家/地区代码生成直方图,例如“US”、“FR”。
  • admin1:按职位的 admin1 代码生成直方图,这是一个全局占位符,表示州、省,或国家用于定义国家/地区级别以下的地理结构的特定字词,例如“CA”、“IL”。
  • city:按“城市名, admin1 代码”组合生成直方图。例如,“Mountain View, CA”“New York, NY”。
  • admin1_country:按“admin1 代码, 国家/地区”的组合生成直方图,例如“CA, US”“IL, US”。
  • City_coordinate:按市中心的 GPS 坐标(纬度和经度)生成直方图,例如,37.4038522,-122.0987765。由于市中心的坐标可能会发生变化,因此客户可能需要定期刷新。
  • locale:按 Job.language_code 生成直方图,例如“en-US”、“fr-FR”。
  • language:按 Job.language_code 的语言子标记生成直方图,例如“en”“fr”。
  • 类别:按 JobCategory 生成直方图,例如“COMPUTER_AND_IT”“HEALTHCARE”。
  • base_ charge_unit:按基本工资的 CompensationInfo.CompensationUnit 生成直方图,例如 "WEEKLY"、"MONTHLY"。
  • base_compensation:按基本薪资生成直方图。必须指定对结果进行分组所依据的数字存储分区列表。
  • 年度化_base_补贴:按基本年薪生成直方图。必须指定对结果进行分组所依据的数值集列表。
  • 年度化_总薪酬:按年度总工资生成直方图。必须指定对结果进行分组所依据的数值集列表。
  • string_custom_attribute:按字符串 Job.custom_attributes 生成直方图。可以通过方括号表示法访问值,例如 string_custom_attribute["key1"]。
  • Digital_custom_attribute:按数字 Job.custom_attributes 生成直方图。可以通过方括号表示法访问值,例如 number_custom_attribute["key1"]。必须指定对结果进行分组所依据的数字存储分区列表。

表达式示例:

  • count(admin1)
  • count(base_compensation, [bucket(1000, 10000), bucket(10000, 100000), bucket(100000, MAX)])
  • count(string_custom_attribute["some-string-custom-attribute"])
  • count(numeric_custom_attribute["some-numeric-custom-attribute"], [bucket(MIN, 0, "negative"), bucket(0, MAX, "non-negative"])
jobView

enum (JobView)

为搜索响应中的招聘信息返回所需的职位属性。如果未指定任何值,则默认为 JobView.JOB_VIEW_SMALL

offset

integer

指定搜索结果中当前偏移量(即 API 视为相关的职位的起始结果位置)的整数。仅在 pageToken 未设置时才会考虑此字段。

允许的最大值为 5000。否则会抛出错误。

例如,0 表示从第一个匹配职位开始返回结果,10 表示从第 11 个职位开始返回。此字段可用于分页(例如,pageSize = 10 且 offset = 10 表示从第二页返回)。

pageSize

integer

对搜索结果中返回的职位数量的限制。将此值设为超过默认值 10 可能会增加搜索响应时间。此值介于 1 到 100 之间。

pageToken

string

指定搜索结果中当前偏移量的令牌。如需了解如何获取下一组查询结果,请参阅 SearchJobsResponse.next_page_token

orderBy

string

确定搜索结果排序方式的条件。默认值为 "relevance desc"

支持的选项包括:

  • "relevance desc":由 API 算法确定,按相关性降序排序。查询结果的相关性阈值仅适用于此排序。
  • "postingPublishTime desc":按 Job.posting_publish_time 降序排序。
  • "postingUpdateTime desc":按 Job.posting_update_time 降序排序。
  • "title":按 Job.title(升序)。
  • "title desc":按 Job.title 降序排序。
  • "annualized_base_compensation":按作业的 CompensationInfo.annualized_base_compensation_range 升序。如果未指定职位的年度基本薪酬,则将其放在搜索结果的末尾。
  • "annualized_base_compensation desc":按作业的 CompensationInfo.annualized_base_compensation_range(降序)。如果未指定职位的年度基本薪酬,则将其放在搜索结果的末尾。
  • "annualized_total_compensation":按作业的 CompensationInfo.annualized_total_compensation_range 升序。如果未指定职位的年度基本薪酬,则将其放在搜索结果的末尾。
  • "annualized_total_compensation desc":按作业的 CompensationInfo.annualized_total_compensation_range(降序)。如果未指定职位的年度基本薪酬,则将其放在搜索结果的末尾。
  • "custom_ranking desc":按相关性得分调整为 SearchJobsRequest.CustomRankingInfo.ranking_expression,权重因子按 SearchJobsRequest.CustomRankingInfo.importance_level 降序排列。
  • 地点排序:使用特殊语法按距离对招聘信息进行排序:
    "distance_from('Hawaii')":按与夏威夷的距离排序。
    "distance_from(19.89, 155.5)":按与坐标的距离排序。
    "distance_from('Hawaii'), distance_from('Puerto Rico')":按多个营业地点排序。详情请参见下文。
    "distance_from('Hawaii'), distance_from(19.89, 155.5)":按多个营业地点排序。详情请参见下文。
    :该字符串最多可包含 256 个字符。如果提供了多个距离中心,则靠近任何距离中心的作业将具有较高的排名。如果任务涉及多个地点,系统会使用距离其中一个距离中心最近的工作地点。没有营业地点的职位将排在底部。距离的计算精确度为 11.3 米(37.4 英尺)。除非在 diversificationLevel 中明确停用,否则仍会应用多样化策略。
diversificationLevel

enum (DiversificationLevel)

控制是否在搜索结果中以彼此相邻的方式返回高度相似的职位。职位会根据职称、职位类别和地点被标识为高度相似。高度相似的结果会聚类在一起,以便仅将聚类中的一个代表性职位显示给求职者并排在结果的较高位置,而将其他职位排在结果的较低位置。

如果未指定任何值,则默认为 DiversificationLevel.SIMPLE

customRankingInfo

object (CustomRankingInfo)

控制职位文档如何基于现有相关性得分(由 API 算法确定)进行排名。

disableKeywordMatch

boolean

控制是否针对 Job.titleJob.descriptionJob.company_display_nameJob.addressesJob.qualifications 停用完全匹配关键字。停用关键字匹配时,关键字匹配会在出现匹配的关键字时返回与给定的类别过滤条件不匹配的职位。例如,针对“项目经理”执行查询时,即使职位发布的职称为“软件开发者”,也会返回一个结果;虽然这个职称并不属于“项目经理”本体,但确实其描述中确实出现了“项目经理”字眼。

如果查询中不包含特定职称或地点本体(例如“cloud”查询),那么无论此标志的值如何,都会返回与“cloud”关键字匹配的职位。

如果需要公司特定的全局匹配的自定义字段/属性字符串值,请使用 Company.keyword_searchable_job_custom_attributes。启用关键字匹配可以改善对后续搜索请求的调用。

默认值为 false。

响应正文

如果成功,则响应正文包含一个 SearchJobsResponse 实例。

授权范围

需要以下 OAuth 范围之一:

  • https://www.googleapis.com/auth/jobs
  • https://www.googleapis.com/auth/cloud-platform

如需了解详情,请参阅身份验证概览