Method: projects.jobs.search

Cerca offerte di lavoro utilizzando il SearchJobsRequest fornito.

Questa chiamata limita il visibility dei job presenti nel database e restituisce solo i job in base ai quali il chiamante è autorizzato a eseguire ricerche.

Richiesta HTTP

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

L'URL utilizza la sintassi di transcodifica gRPC.

Parametri del percorso

Parametri
parent

string

Obbligatorio. Il nome della risorsa del tenant in cui eseguire la ricerca.

Il formato è "projects/{projectId}/tenants/{tenantId}". Ad esempio, "projects/foo/tenant/bar". Se l'ID tenant non è specificato, viene creato un tenant predefinito. Ad esempio, "projects/foo".

Corpo della richiesta

Il corpo della richiesta contiene dati con la seguente struttura:

Rappresentazione 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
}
Campi
searchMode

enum (SearchMode)

Modalità di ricerca.

Il valore predefinito è SearchMode.JOB_SEARCH.

requestMetadata

object (RequestMetadata)

Obbligatorio. Le meta informazioni raccolte sull'utente che ha cercato lavoro, utilizzate per migliorare la qualità della ricerca del servizio. Gli identificatori (ad esempio userId) sono forniti dagli utenti e devono essere univoci e coerenti.

jobQuery

object (JobQuery)

Query utilizzata per cercare offerte di lavoro, ad esempio parola chiave, filtri per località e così via.

enableBroadening

boolean

Consente di stabilire se ampliare la ricerca quando vengono restituiti risultati sparsi. Le query ampliate aggiungono i risultati alla fine dell'elenco dei risultati corrispondenti.

Il valore predefinito è false.

requirePreciseResultSize
(deprecated)

boolean

Questo campo è obsoleto.

histogramQueries[]

object (HistogramQuery)

Un'espressione specifica una richiesta a istogramma in base ai job corrispondenti.

La sintassi dell'espressione è una chiamata di funzione di aggregazione con facet a istogrammi e altre opzioni.

Le chiamate alle funzioni di aggregazione disponibili sono: * count(string_histogram_facet): conteggiano il numero di entità corrispondenti per ogni valore di attributo distinto. * count(numeric_histogram_facet, list of buckets): conteggia il numero di entità corrispondenti all'interno di ciascun bucket.

Tipi di dati:

  • Facet istogramma: nomi dei facet con formato [a-zA-Z][a-zA-Z0-9_]+.
  • Stringa: stringa come "qualsiasi stringa con escape barra rovesciata per virgolette(")."
  • Numero: numero intero e numero in virgola mobile come 10, -1 e -0,01.
  • Elenco: elenco di elementi con separatore virgola(,) racchiuso tra parentesi quadre, ad esempio [1, 2, 3] e ["one", "due", "tre"].

Costanti integrate:

  • MIN (numero minimo simile a java Double.MIN_VALUE)
  • MAX (numero massimo simile a Java DoubleClick.MAX_VALUE)

Funzioni integrate:

  • bucket(start, end[, label]): la funzione integrata di bucket crea un bucket con intervallo [start, end). Tieni presente che la fine è esclusiva, ad esempio bucket(1, MAX, "numero positivo") o bucket(1, 10).

Facet istogrammi delle offerte di lavoro:

  • companyDisplayName: istogramma per Job.company_display_name.
  • Employ_type: istogramma per Job.employment_types, ad esempio "FULL_TIME", "PART_TIME".
  • aziendaSize: istogramma per CompanySize, ad esempio "Small", "MEDIUM", "BIG".
  • publish_time_in_month: istogramma per Job.posting_publish_time in mesi. Devi specificare l'elenco di bucket numerici nelle specifiche.
  • publish_time_in_year: istogramma per Job.posting_publish_time in anni. Devi specificare l'elenco di bucket numerici nelle specifiche.
  • gradTypes: istogramma del Job.degree_types, ad esempio "Bachelors", "Masters".
  • jobLevel: istogramma per Job.job_level, ad esempio "Livello base".
  • country: istogramma in base al codice paese dei lavori, ad esempio "US", "FR".
  • admin1: istogramma per il codice admin1 dei job, ovvero un segnaposto globale che fa riferimento allo stato, alla provincia o al termine specifico utilizzato da un paese per definire la struttura geografica sotto il livello paese, ad esempio "CA", "IL".
  • city: istogramma in base a una combinazione di "nome città, codice admin1". Ad esempio, "Mountain View, CA", "New York, NY".
  • admin1_country: istogramma in base a una combinazione di "codice admin1, paese", ad esempio "CA, US", "IL, US".
  • city_coordinate: istogramma in base alle coordinate GPS del centro città (latitudine e longitudine), ad esempio 37.4038522,-122.0987765. Poiché le coordinate di un centro città possono cambiare, i clienti potrebbero dover aggiornare periodicamente.
  • locale: istogramma del Job.language_code, ad esempio "en-US", "fr-FR".
  • language: istogramma in base al sottotag della lingua di Job.language_code, ad esempio "en", "fr".
  • categoria: istogramma in base a JobCategory, ad esempio "COMPUTER_AND_IT", "HEALTHCARE".
  • base_compensation_unit: istogramma in base al CompensationInfo.CompensationUnit della retribuzione base, ad esempio "WEEKLY", "MONTH".
  • base_compensation: istogramma per retribuzione base. Devi specificare un elenco di bucket numerici in base a cui raggruppare i risultati.
  • annualized_base_compensation: istogramma per lo stipendio annuale di base. Devi specificare un elenco di bucket numerici in base a cui raggruppare i risultati.
  • annualized_total_compensation: istogramma per lo stipendio annuo totale. Devi specificare un elenco di bucket numerici in base a cui raggruppare i risultati.
  • string_custom_attribute: istogramma per stringa Job.custom_attributes. È possibile accedere ai valori tramite parentesi quadre, ad esempio string_custom_attribute["key1"].
  • numeric_custom_attribute: istogramma per valore numerico Job.custom_attributes. È possibile accedere ai valori mediante parentesi quadre, ad esempio numeric_custom_attribute["key1"]. Devi specificare un elenco di bucket numerici in base a cui raggruppare i risultati.

Espressioni di esempio:

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

Gli attributi del job desiderati restituiti per i job nella risposta della ricerca. Se non viene specificato alcun valore, il valore predefinito è JobView.JOB_VIEW_SMALL.

offset

integer

Un numero intero che specifica l'offset corrente (ovvero la posizione iniziale del risultato tra i job ritenuti pertinenti dall'API) nei risultati di ricerca. Questo campo viene preso in considerazione solo se il criterio pageToken non è impostato.

Il valore massimo consentito è 5000. In caso contrario, viene visualizzato un errore.

Ad esempio, 0 significa restituire i risultati a partire dal primo job corrispondente e 10 significa restituire i risultati dall'11° job. Questa funzione può essere usata per l'impaginazione (ad esempio, pageSize = 10 e offset = 10 significa ritorno dalla seconda pagina).

pageSize

integer

Un limite al numero di job restituiti nei risultati di ricerca. Aumenta questo valore oltre il valore predefinito di 10 per aumentare il tempo di risposta della ricerca. Il valore può essere compreso tra 1 e 100.

pageToken

string

Il token che specifica l'offset attuale all'interno dei risultati di ricerca. Consulta SearchJobsResponse.next_page_token per una spiegazione di come ottenere il successivo insieme di risultati della query.

orderBy

string

I criteri che determinano l'ordinamento dei risultati di ricerca. Il valore predefinito è "relevance desc".

Le opzioni supportate sono:

  • "relevance desc": per pertinenza (ordine decrescente), come determinato dagli algoritmi dell'API. La soglia di pertinenza dei risultati delle query è disponibile solo con questo ordine.
  • "postingPublishTime desc": per Job.posting_publish_time (ordine decrescente).
  • "postingUpdateTime desc": per Job.posting_update_time (ordine decrescente).
  • "title": di Job.title (ordine crescente).
  • "title desc": per Job.title (ordine decrescente).
  • "annualized_base_compensation": in base al valore CompensationInfo.annualized_base_compensation_range (ordine crescente) del job. Le offerte di lavoro per cui non è specificato un compenso base annuale vengono posizionati alla fine dei risultati di ricerca.
  • "annualized_base_compensation desc": per CompensationInfo.annualized_base_compensation_range (ordine decrescente) del job. Le offerte di lavoro per cui non è specificato un compenso base annuale vengono posizionati alla fine dei risultati di ricerca.
  • "annualized_total_compensation": in base al valore CompensationInfo.annualized_total_compensation_range (ordine crescente) del job. Le offerte di lavoro per cui non è specificato un compenso base annuale vengono posizionati alla fine dei risultati di ricerca.
  • "annualized_total_compensation desc": per CompensationInfo.annualized_total_compensation_range (ordine decrescente) del job. Le offerte di lavoro per cui non è specificato un compenso base annuale vengono posizionati alla fine dei risultati di ricerca.
  • "custom_ranking desc": con il punteggio di pertinenza modificato in SearchJobsRequest.CustomRankingInfo.ranking_expression con un fattore di ponderazione assegnato da SearchJobsRequest.CustomRankingInfo.importance_level in ordine decrescente.
  • Ordinamento delle località: utilizza la sintassi speciale per ordinare i lavori per distanza:
    "distance_from('Hawaii')": ordina i lavori in base alla distanza dalle Hawaii.
    "distance_from(19.89, 155.5)": ordina in base alla distanza da una coordinata.
    "distance_from('Hawaii'), distance_from('Puerto Rico')": ordina in base a più sedi. Vedi i dettagli più avanti.
    "distance_from('Hawaii'), distance_from(19.89, 155.5)": ordina in base a più sedi. Vedi i dettagli più avanti.
    La stringa può contenere un massimo di 256 caratteri. Quando vengono forniti più centri di distanza, un lavoro nelle vicinanze di uno qualsiasi dei centri di distanza avrà un ranking elevato. Quando un lavoro ha più sedi, verrà utilizzata la località del lavoro più vicina a uno dei centri di distanza. Le offerte di lavoro senza località verranno classificate in basso. La distanza viene calcolata con una precisione di 11,3 metri (37,4 piedi). La strategia di diversificazione viene comunque applicata, a meno che non venga disattivata esplicitamente in diversificationLevel.
diversificationLevel

enum (DiversificationLevel)

Controlla se vengono restituiti lavori molto simili uno accanto all'altro nei risultati di ricerca. Le offerte di lavoro sono identificate come molto simili in base a titoli, categorie di lavoro e località. I risultati molto simili vengono raggruppati in modo tale che a chi cerca l'impiego venga mostrato un solo job rappresentativo del cluster più in alto nei risultati, mentre gli altri job vengono visualizzati più in basso nei risultati.

Se non viene specificato alcun valore, il valore predefinito è DiversificationLevel.SIMPLE.

customRankingInfo

object (CustomRankingInfo)

Controlli su come vengono classificati i documenti dell'offerta di lavoro in base al punteggio di pertinenza esistente (determinato dall'algoritmo dell'API).

disableKeywordMatch

boolean

Consente di stabilire se disattivare la corrispondenza esatta delle parole chiave per Job.title, Job.description, Job.company_display_name, Job.addresses e Job.qualifications. Quando disattivi la corrispondenza delle parole chiave è disattivata, una corrispondenza della parola chiave restituisce le offerte di lavoro che non corrispondono a determinati filtri di categoria quando sono presenti parole chiave corrispondenti. Ad esempio, per la query "program manager", viene restituito un risultato anche se l'offerta di lavoro ha il titolo "sviluppatore software", che non rientra nell'ontologia "program manager", ma include "program manager" nella descrizione.

Per query come "cloud" che non contengono un'ontologia specifica per titolo o località, le offerte di lavoro con corrispondenze con la parola chiave "cloud" vengono restituite indipendentemente dal valore di questo flag.

Utilizza Company.keyword_searchable_job_custom_attributes se sono necessari valori stringa di attributi/campi personalizzati specifici dell'azienda a livello globale. L'attivazione della corrispondenza delle parole chiave migliora il richiamo delle successive richieste di ricerca.

Il valore predefinito è false.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di SearchJobsResponse.

Ambiti di autorizzazione

Richiede uno dei seguenti ambiti OAuth:

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

Per ulteriori informazioni, consulta la Panoramica dell'autenticazione.