Method: projects.tenants.jobs.search

Recherche des offres d'emploi à l'aide du SearchJobsRequest fourni.

Cet appel limite le visibility des offres d'emploi présentes dans la base de données et ne renvoie que celles que l'appelant est autorisé à rechercher.

Requête HTTP

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

L'URL utilise la syntaxe de transcodage gRPC.

Paramètres de chemin d'accès

Paramètres
parent

string

Obligatoire. Nom de ressource du locataire dans lequel effectuer la recherche.

Le format est "projects/{projectId}/tenants/{tenantId}". Par exemple, "projects/foo/tenant/bar". Si l'ID du locataire n'est pas spécifié, un locataire par défaut est créé. Par exemple, "projects/foo".

Corps de la requête

Le corps de la requête contient des données présentant la structure suivante :

Représentation 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
}
Champs
searchMode

enum (SearchMode)

Mode de recherche.

La valeur par défaut est SearchMode.JOB_SEARCH.

requestMetadata

object (RequestMetadata)

Obligatoire. Méta-informations recueillies auprès du chercheur d'emploi, qui permettent d'améliorer la qualité de recherche du service. Les identifiants (tels que userId) sont fournis par les utilisateurs et doivent être uniques et cohérents.

jobQuery

object (JobQuery)

Requête permettant de rechercher des offres d'emploi, incluant des mots clés, des filtres de lieux, etc.

enableBroadening

boolean

Détermine si la recherche doit être élargie lorsqu'elle produit peu de résultats. Les recherches élargies ajoutent leurs résultats à la fin de la liste des résultats obtenue initialement.

Valeur par défaut : "false".

requirePreciseResultSize
(deprecated)

boolean

Ce champ est obsolète.

histogramQueries[]

object (HistogramQuery)

Une expression spécifie une requête d'histogramme par rapport à des offres d'emploi correspondantes.

La syntaxe d'expression est un appel de fonction d'agrégation doté d'attributs d'histogramme et d'autres options.

Les appels de fonction d'agrégation disponibles sont les suivants: * count(string_histogram_facet): comptabilise le nombre d'entités correspondantes pour chaque valeur d'attribut distincte. * count(numeric_histogram_facet, list of buckets): comptabilise le nombre d'entités correspondantes dans chaque bucket.

Types de données :

  • Attribut d'histogramme : noms d'attribut au format [a-zA-Z][a-zA-Z0-9_]+.
  • Chaîne : chaîne du type "toute chaîne avec une barre oblique inverse comme caractère d'échappement pour les guillemets (")".
  • Nombre : nombre entier et nombre à virgule flottante tel que 10, -1 ou -0,01.
  • Liste : liste d'éléments avec une virgule (,) en guise de séparateur, placée entre crochets. Par exemple, [1, 2, 3] ou ["un", "deux", "trois"].

Constantes intégrées :

  • MIN (nombre minimal semblable à Double.MIN_VALUE Java)
  • MAX (nombre maximal semblable à Double.MAX_VALUE Java)

Fonctions intégrées :

  • La fonction de bucket intégrée bucket(start, end[, label]) crée un bucket avec une plage [début, fin). Notez que la fin est exclusive. Par exemple, bucket(1, MAX, "positive number") ou bucket(1, 10).

Attributs d'histogramme des offres d'emploi :

  • companyDisplayName: histogramme par Job.company_display_name.
  • employment_type: histogramme par Job.employment_types. Par exemple, "FULL_TIME" ou "PART_TIME".
  • companySize: histogramme par CompanySize. Par exemple, "PETITE", "MOYENNE" ou "BIG".
  • publish_time_in_month: histogramme par mois de Job.posting_publish_time. Doit indiquer la liste des buckets numériques dans la spécification.
  • publish_time_in_year: histogramme par Job.posting_publish_time, en années. Doit indiquer la liste des buckets numériques dans la spécification.
  • degrésTypes: histogramme par Job.degree_types. Par exemple, "Licence" ou "Master".
  • jobLevel: histogramme par valeur de Job.job_level, par exemple, "Entry Level".
  • country : histogramme par code de pays des offres d'emploi. Par exemple, "US" ou "FR".
  • admin1: histogramme par code admin1 des offres d'emploi, qui est un espace réservé global faisant référence à l'État, à la province ou au terme particulier utilisé par un pays pour définir la structure géographique en dessous du niveau du pays (par exemple, "CA" ou "IL").
  • city : histogramme par combinaison du nom de la ville et du code admin1. Par exemple, "Mountain View, CA" ou "New York, NY".
  • admin1_country: histogramme par combinaison du code admin1 et du pays. Par exemple, "CA, US", "IL, US".
  • city_Coordinate: histogramme par coordonnées GPS du centre-ville (latitude et longitude), par exemple, 37.4038522,-122.0987765. Étant donné que les coordonnées d'un centre-ville peuvent changer, les clients peuvent avoir besoin de les actualiser régulièrement.
  • locale: histogramme par valeur de Job.language_code. Par exemple, "en-US" ou "fr-FR".
  • language: histogramme par sous-tag de langue de Job.language_code. Par exemple, "en" ou "fr".
  • catégorie: histogramme par JobCategory. Par exemple, "COMPUTER_AND_IT" ou "HEALTHCARE".
  • base_compensation_unit: histogramme par CompensationInfo.CompensationUnit du salaire de base. Par exemple, "WEEKLY" ou "Monthly".
  • base_compensation : histogramme par salaire de base. Vous devez spécifier la liste des buckets numériques selon lesquels regrouper les résultats.
  • annualized_base_compensation : histogramme par salaire de base annualisé. Doit spécifier la liste des buckets numériques utilisés pour regrouper les résultats.
  • annualized_total_compensation : histogramme par salaire total annualisé. Doit spécifier la liste des buckets numériques utilisés pour regrouper les résultats.
  • string_custom_attribute: histogramme par chaîne Job.custom_attributes. Les valeurs sont accessibles via des notations entre crochets, telles que string_custom_attribute["key1"].
  • number_custom_attribute: histogramme par valeur numérique de Job.custom_attributes. Les valeurs sont accessibles via des notations entre crochets, telles quenumeric_custom_attribute["key1"]. Vous devez spécifier la liste des buckets numériques selon lesquels regrouper les résultats.

Exemples d'expressions :

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

Attributs d'offre d'emploi souhaités renvoyés dans la réponse de recherche. Si aucune valeur n'est spécifiée, la valeur par défaut est JobView.JOB_VIEW_SMALL.

offset

integer

Valeur entière qui spécifie le décalage de la recherche, c'est-à-dire le point de départ choisi parmi les offres d'emploi jugées pertinentes par l'API dans les résultats de recherche. Ce champ n'est pris en compte que si pageToken n'est pas défini.

La valeur maximale autorisée est de 5 000. Dans le cas contraire, une erreur est renvoyée.

Par exemple, la valeur 0 renvoie les résultats à partir de l'offre la plus pertinente. La valeur 10, quant à elle, renvoie les résultats à partir de la 11e offre d'emploi pertinente. Ce champ peut être utilisé pour la pagination (par exemple, pageSize = 10 et offset = 10 signifie que la requête renvoie les résultats de la deuxième page).

pageSize

integer

Limite du nombre d'offres d'emploi renvoyées dans les résultats de recherche. Augmenter cette valeur au-dessus de 10 (la valeur par défaut) peut prolonger le temps de réponse de la recherche. Cette valeur peut être comprise entre 1 et 100.

pageToken

string

Jeton spécifiant le décalage actuel dans les résultats de recherche. Consultez SearchJobsResponse.next_page_token pour découvrir comment obtenir l'ensemble de résultats de requête suivant.

orderBy

string

Critères déterminant le mode de tri des résultats de recherche. La valeur par défaut est "relevance desc".

Les options suivantes sont acceptées :

  • "relevance desc": par pertinence décroissante, comme déterminé par les algorithmes de l'API. Le seuil de pertinence des résultats de la requête n'est disponible qu'avec cet ordre.
  • "postingPublishTime desc": par Job.posting_publish_time dans l'ordre décroissant.
  • "postingUpdateTime desc": par Job.posting_update_time dans l'ordre décroissant.
  • "title": par Job.title dans l'ordre croissant.
  • "title desc": par Job.title dans l'ordre décroissant.
  • "annualized_base_compensation": par valeur CompensationInfo.annualized_base_compensation_range du job dans l'ordre croissant. Les offres d'emploi dont la rémunération de base annualisée n'est pas spécifiée sont placées à la fin des résultats de recherche.
  • "annualized_base_compensation desc": par CompensationInfo.annualized_base_compensation_range du job dans l'ordre décroissant. Les offres d'emploi dont la rémunération de base annualisée n'est pas spécifiée sont placées à la fin des résultats de recherche.
  • "annualized_total_compensation": par valeur CompensationInfo.annualized_total_compensation_range du job dans l'ordre croissant. Les offres d'emploi dont la rémunération de base annualisée n'est pas spécifiée sont placées à la fin des résultats de recherche.
  • "annualized_total_compensation desc": par CompensationInfo.annualized_total_compensation_range du job dans l'ordre décroissant. Les offres d'emploi dont la rémunération de base annualisée n'est pas spécifiée sont placées à la fin des résultats de recherche.
  • "custom_ranking desc": par le score de pertinence ajusté à la valeur SearchJobsRequest.CustomRankingInfo.ranking_expression avec un facteur de pondération attribué par SearchJobsRequest.CustomRankingInfo.importance_level dans l'ordre décroissant.
  • Tri par lieu : utilisez la syntaxe spéciale pour classer les missions en fonction de la distance.
    "distance_from('Hawaii')" : triez les missions selon la distance depuis Hawaï.
    "distance_from(19.89, 155.5)": triez par distance à partir d'une coordonnée.
    "distance_from('Hawaii'), distance_from('Puerto Rico')": commandez selon plusieurs établissements. Consultez les détails ci-dessous.
    "distance_from('Hawaii'), distance_from(19.89, 155.5)": commandez selon plusieurs établissements. Consultez les détails ci-dessous.
    La chaîne ne doit pas comporter plus de 256 caractères. Lorsque plusieurs centres de distance sont fournis, un emploi proche de n'importe lequel des centres de distance obtiendra un rang élevé. Lorsqu'un poste est réparti sur plusieurs sites, le lieu le plus proche de l'un des centres de distance sera utilisé. Les offres d'emploi qui ne sont associées à aucun lieu sont classées en bas. La distance est calculée avec une précision de 11,3 mètres. La stratégie de diversification s'applique toujours, sauf si elle est explicitement désactivée dans diversificationLevel.
diversificationLevel

enum (DiversificationLevel)

Détermine si les offres d'emploi très similaires sont renvoyées côte à côte dans les résultats de recherche. Les offres d'emploi sont identifiées comme très similaires en fonction de leur intitulé, de leur catégorie et du lieu. Les résultats très similaires sont regroupés pour ne proposer au demandeur d'emploi qu'une offre représentative en haut des résultats. Les autres postes à pourvoir sont affichés plus bas dans les résultats.

Si aucune valeur n'est spécifiée, la valeur par défaut est DiversificationLevel.SIMPLE.

customRankingInfo

object (CustomRankingInfo)

Définit la façon dont les documents d'offre d'emploi sont classés par rapport au score de pertinence existant (déterminé par un algorithme d'API).

disableKeywordMatch

boolean

Détermine s'il faut désactiver le mot clé exact pour Job.title, Job.description, Job.company_display_name, Job.addresses et Job.qualifications. Lorsque cette fonctionnalité est désactivée, la correspondance d'un mot clé renvoie des offres d'emploi qui ne correspondent pas aux filtres de catégorie fournis lorsque des mots clés concordent. Par exemple, pour la requête "chef de projet", un résultat est renvoyé même si l'offre d'emploi est intitulée "développeur logiciel". Cela ne correspond pas à l'ontologie de "chef de projet", mais l'offre contient l'expression "chef de projet" dans sa description.

Pour des requêtes telles que "cloud" qui ne contiennent pas d'ontologie propre à l'intitulé ou au lieu, les offres d'emploi avec des correspondances du mot clé "cloud" sont renvoyées, quelle que soit la valeur de cet indicateur.

Utilisez Company.keyword_searchable_job_custom_attributes si des valeurs de chaîne d'attribut/champ personnalisé spécifiques à l'entreprise et à l'échelle mondiale sont nécessaires. L'activation de la correspondance de mots clés améliore le rappel des requêtes de recherche ultérieures.

Valeur par défaut : "false".

Corps de la réponse

Si la requête aboutit, le corps de la réponse contient une instance de SearchJobsResponse.

Champs d'application des autorisations

Nécessite l'un des champs d'application OAuth suivants :

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

Pour en savoir plus, consultez la page Présentation de l'authentification.