Method: projects.jobs.search

Menelusuri lowongan menggunakan SearchJobsRequest yang disediakan.

Panggilan ini membatasi visibility tugas yang ada dalam database, dan hanya menampilkan tugas yang izin penelusurannya dimiliki pemanggil.

Permintaan HTTP

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

URL menggunakan sintaks gRPC Transcoding.

Parameter jalur

Parameter
parent

string

Wajib. Nama resource tenant yang akan ditelusuri.

Formatnya adalah "projects/{projectId}/tenants/{tenantId}". Misalnya, "projects/foo/tenant/bar". Jika ID tenant tidak ditentukan, tenant default akan dibuat. Misalnya, "projects/foo".

Isi permintaan

Isi permintaan memuat data dengan struktur berikut:

Representasi 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
}
Kolom
searchMode

enum (SearchMode)

Mode penelusuran.

Nilai defaultnya adalah SearchMode.JOB_SEARCH.

requestMetadata

object (RequestMetadata)

Wajib. Informasi meta yang dikumpulkan tentang pencari kerja, digunakan untuk meningkatkan kualitas pencarian layanan. ID (seperti userId) disediakan oleh pengguna, dan harus unik serta konsisten.

jobQuery

object (JobQuery)

Kueri yang digunakan untuk menelusuri tugas, seperti kata kunci, filter lokasi, dll.

enableBroadening

boolean

Mengontrol apakah akan memperluas penelusuran saat memberikan hasil yang jarang. Kueri yang diperluas akan menambahkan hasil ke bagian akhir daftar hasil yang cocok.

Nilai defaultnya adalah false (salah).

requirePreciseResultSize
(deprecated)

boolean

Kolom ini tidak digunakan lagi.

histogramQueries[]

object (HistogramQuery)

Ekspresi menentukan permintaan histogram terhadap tugas yang cocok.

Sintaksis ekspresi adalah panggilan fungsi agregasi dengan faset histogram dan opsi lainnya.

Panggilan fungsi agregasi yang tersedia adalah: * count(string_histogram_facet): Menghitung jumlah entity yang cocok, untuk setiap nilai atribut yang berbeda. * count(numeric_histogram_facet, list of buckets): Menghitung jumlah entity yang cocok dalam setiap bucket.

Tipe data ({i>Data types<i}):

  • Faset histogram: nama facet dengan format [a-zA-Z][a-zA-Z0-9_]+.
  • String: string seperti "string apa pun dengan escape untuk garis miring terbalik untuk tanda petik(")."
  • Bilangan: bilangan bulat dan bilangan floating point seperti 10, -1, dan -0,01.
  • Daftar: daftar elemen dengan pemisah koma(,) yang diapit tanda kurung siku, misalnya, [1, 2, 3] dan ["one", "two", "three"].

Konstanta bawaan:

  • MIN (jumlah minimum mirip dengan java Double.MIN_VALUE)
  • MAX (jumlah maksimum mirip dengan java Double.MAX_VALUE)

Fungsi bawaan:

  • bucket(start, end[, label]): fungsi bawaan bucket membuat bucket dengan rentang [start, end). Perhatikan bahwa bagian akhir bersifat eksklusif, misalnya, bucket(1, MAX, "angka positif") atau bucket(1, 10).

Faset histogram pekerjaan:

  • perusahaanDisplayName: histogram oleh Job.company_display_name.
  • Job_type: histogram menurut Job.employment_types, misalnya, "FULL_TIME", "PART_TIME".
  • companySize: histogram dengan CompanySize, misalnya, "Small", "MEDIUM", "BIG".
  • publish_time_in_month: histogram sebesar Job.posting_publish_time dalam bulan. Harus menentukan daftar bucket numerik dalam spesifikasi.
  • publish_time_in_year: histogram dengan Job.posting_publish_time dalam tahun. Harus menentukan daftar bucket numerik dalam spesifikasi.
  • gelarTypes: histogram menurut Job.degree_types, misalnya, "Sarjana", "Masters".
  • jobLevel: histogram oleh Job.job_level, misalnya, "Entry Level".
  • country: histogram menurut kode negara tempat bekerja, misalnya, "US", "FR".
  • admin1: histogram oleh kode pekerjaan admin1, yang merupakan placeholder global yang mengacu pada negara bagian, provinsi, atau istilah tertentu yang digunakan suatu negara untuk menentukan struktur geografis di bawah tingkat negara, misalnya, "CA", "IL".
  • city: histogram dengan kombinasi "nama kota, kode admin1". Misalnya, "Gunung View, CA", "New York, NY".
  • admin1_country: histogram dengan kombinasi "kode admin1, negara", misalnya, "CA, US", "IL, US".
  • city_Coordinate: histogram menurut koordinat GPS pusat kota (lintang dan bujur), misalnya, 37.4038522,-122.0987765. Karena koordinat pusat kota dapat berubah, pelanggan mungkin perlu memperbaruinya secara berkala.
  • lokalitas: histogram menurut Job.language_code, misalnya, "en-US", "fr-FR".
  • language: histogram menurut subtag bahasa Job.language_code, misalnya, "en", "fr".
  • kategori: histogram dengan JobCategory, misalnya, "COMPUTER_AND_IT", "HEALTHCARE".
  • base_compensation_unit: histogram berdasarkan CompensationInfo.CompensationUnit gaji pokok, misalnya, "WEEKLY", "BULANAN".
  • base_compensation: histogram berdasarkan gaji pokok. Harus menentukan daftar bucket numerik sebagai dasar pengelompokan hasil.
  • tahunan_base_compensation: histogram berdasarkan gaji pokok tahunan. Harus menentukan daftar bucket numerik sebagai dasar pengelompokan hasil.
  • tahunan_total_compensation: histogram dengan total gaji tahunan. Harus menentukan daftar bucket numerik sebagai dasar pengelompokan hasil.
  • string_custom_attribute: histogram menurut string Job.custom_attributes. Nilai dapat diakses melalui notasi tanda kurung siku seperti string_custom_attribute["key1"].
  • numerik_custom_attribute: histogram dengan Job.custom_attributes numerik. Nilai dapat diakses melalui notasi tanda kurung siku seperti numerik_custom_attribute["key1"]. Harus menentukan daftar bucket numerik sebagai dasar pengelompokan hasil.

Contoh ekspresi:

  • 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)

Atribut pekerjaan yang diinginkan yang ditampilkan untuk pekerjaan dalam respons penelusuran. Secara default ke JobView.JOB_VIEW_SMALL jika tidak ada nilai yang ditentukan.

offset

integer

Bilangan bulat yang menentukan offset saat ini (yaitu, lokasi hasil awal, di antara tugas yang dianggap relevan oleh API) di hasil penelusuran. Kolom ini hanya dipertimbangkan jika pageToken tidak disetel.

Nilai maksimum yang diizinkan adalah 5.000. Jika tidak, error akan ditampilkan.

Misalnya, 0 berarti mengembalikan hasil yang dimulai dari pekerjaan pertama yang cocok, dan 10 berarti kembali dari pekerjaan ke-11. Ini dapat digunakan untuk penomoran halaman, (misalnya, pageSize = 10 dan offset = 10 berarti kembali dari halaman kedua).

pageSize

integer

Batasan jumlah tugas yang ditampilkan dalam hasil penelusuran. Meningkatkan nilai ini di atas nilai default 10 dapat memperpanjang waktu respons penelusuran. Nilainya dapat antara 1 dan 100.

pageToken

string

Token yang menentukan offset saat ini dalam hasil penelusuran. Lihat SearchJobsResponse.next_page_token untuk penjelasan tentang cara mendapatkan kumpulan hasil kueri berikutnya.

orderBy

string

Kriteria yang menentukan bagaimana hasil penelusuran diurutkan. Default-nya adalah "relevance desc".

Opsi yang didukung adalah:

  • "relevance desc": Dengan relevansi menurun, seperti yang ditentukan oleh algoritma API. Nilai minimum relevansi hasil kueri hanya tersedia dengan pengurutan ini.
  • "postingPublishTime desc": Dengan Job.posting_publish_time menurun.
  • "postingUpdateTime desc": Dengan Job.posting_update_time menurun.
  • "title": Dengan Job.title menaik.
  • "title desc": Dengan Job.title menurun.
  • "annualized_base_compensation": Dengan CompensationInfo.annualized_base_compensation_range tugas yang diurutkan naik. Tugas yang kompensasi dasar tahunannya tidak ditentukan akan ditempatkan di akhir hasil penelusuran.
  • "annualized_base_compensation desc": Dengan nilai CompensationInfo.annualized_base_compensation_range tugas yang menurun. Tugas yang kompensasi dasar tahunannya tidak ditentukan akan ditempatkan di akhir hasil penelusuran.
  • "annualized_total_compensation": Dengan CompensationInfo.annualized_total_compensation_range tugas yang diurutkan naik. Tugas yang kompensasi dasar tahunannya tidak ditentukan akan ditempatkan di akhir hasil penelusuran.
  • "annualized_total_compensation desc": Dengan nilai CompensationInfo.annualized_total_compensation_range tugas yang menurun. Tugas yang kompensasi dasar tahunannya tidak ditentukan akan ditempatkan di akhir hasil penelusuran.
  • "custom_ranking desc": Berdasarkan skor relevansi yang disesuaikan dengan SearchJobsRequest.CustomRankingInfo.ranking_expression dengan faktor bobot yang ditetapkan oleh SearchJobsRequest.CustomRankingInfo.importance_level dalam urutan menurun.
  • Pengurutan lokasi: Gunakan sintaksis khusus untuk mengurutkan tugas berdasarkan jarak:
    "distance_from('Hawaii')": Mengurutkan berdasarkan jarak dari Hawaii.
    "distance_from(19.89, 155.5)": Mengurutkan berdasarkan jarak dari koordinat.
    "distance_from('Hawaii'), distance_from('Puerto Rico')": Memesan menurut beberapa lokasi. Lihat detail di bawah.
    "distance_from('Hawaii'), distance_from(19.89, 155.5)": Memesan menurut beberapa lokasi. Lihat detail di bawah.
    String dapat memiliki maksimum 256 karakter. Jika ada beberapa pusat jarak jauh, pekerjaan yang dekat dengan pusat jarak mana pun akan memiliki peringkat yang tinggi. Jika pekerjaan memiliki beberapa lokasi, lokasi pekerjaan yang paling dekat dengan salah satu pusat jarak akan digunakan. Pekerjaan yang tidak memiliki lokasi akan diberi peringkat di bagian bawah. Jarak dihitung dengan presisi 11,3 meter (37,4 kaki). Strategi diversifikasi masih diterapkan kecuali jika dinonaktifkan secara eksplisit di diversificationLevel.
diversificationLevel

enum (DiversificationLevel)

Mengontrol apakah pekerjaan yang sangat mirip ditampilkan berdampingan dalam hasil penelusuran. Pekerjaan diidentifikasi sebagai sangat mirip berdasarkan jabatan, kategori pekerjaan, dan lokasi mereka. Hasil yang sangat mirip dikelompokkan sehingga hanya satu tugas representatif dari cluster yang ditampilkan kepada pencari kerja yang lebih tinggi dalam hasil tersebut, sedangkan tugas lainnya ditampilkan lebih rendah dalam hasil tersebut.

Secara default ke DiversificationLevel.SIMPLE jika tidak ada nilai yang ditentukan.

customRankingInfo

object (CustomRankingInfo)

Mengontrol peringkat dokumen tugas berdasarkan skor relevansi yang ada (ditentukan oleh algoritma API).

disableKeywordMatch

boolean

Mengontrol apakah akan menonaktifkan pencocokan kata kunci persis pada Job.title, Job.description, Job.company_display_name, Job.addresses, Job.qualifications. Jika penonaktifan pencocokan kata kunci dinonaktifkan, pencocokan kata kunci akan menampilkan lowongan yang tidak cocok dengan filter kategori tertentu saat ada kata kunci yang cocok. Misalnya, untuk kueri “manajer program”, hasil akan ditampilkan meskipun postingan lowongan diberi judul “developer software", yang tidak termasuk dalam ontologi “manajer program”, tetapi justru mencantumkan “manajer program” di deskripsinya.

Untuk kueri seperti "cloud" yang tidak berisi ontologi khusus judul atau lokasi, tugas dengan kecocokan kata kunci "cloud" akan ditampilkan, terlepas dari nilai tanda ini.

Gunakan Company.keyword_searchable_job_custom_attributes jika nilai kolom kustom/string atribut khusus perusahaan yang cocok secara global diperlukan. Mengaktifkan pencocokan kata kunci akan meningkatkan ingatan permintaan penelusuran berikutnya.

Nilai defaultnya adalah false (salah).

Isi respons

Jika berhasil, isi respons akan berisi instance SearchJobsResponse.

Cakupan Otorisasi

Memerlukan salah satu cakupan OAuth berikut:

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

Untuk informasi selengkapnya, lihat Ringkasan Autentikasi.