REST Resource: projects.locations.collections.dataStores.controls

Ressource : Control

Définit un comportement conditionnel à utiliser lors de la diffusion. Pour être pris en compte au moment de la diffusion, ils doivent être associés à un ServingConfig. Actions autorisées en fonction de SolutionType.

Représentation JSON
{
  "name": string,
  "displayName": string,
  "associatedServingConfigIds": [
    string
  ],
  "solutionType": enum (SolutionType),
  "useCases": [
    enum (SearchUseCase)
  ],
  "conditions": [
    {
      object (Condition)
    }
  ],

  // Union field action can be only one of the following:
  "boostAction": {
    object (BoostAction)
  },
  "filterAction": {
    object (FilterAction)
  },
  "redirectAction": {
    object (RedirectAction)
  },
  "synonymsAction": {
    object (SynonymsAction)
  },
  "promoteAction": {
    object (PromoteAction)
  }
  // End of list of possible types for union field action.
}
Champs
name

string

Immuable. Nom complet projects/*/locations/global/dataStore/*/controls/*

displayName

string

Obligatoire. Nom lisible. Identifiant utilisé dans les vues de l'UI.

Doit être une chaîne encodée au format UTF-8. La limite de longueur est de 128 caractères. Dans le cas contraire, une erreur INVALID ARGUMENT est renvoyée.

associatedServingConfigIds[]

string

Uniquement en sortie. Liste de tous les ID ServingConfig auxquels cette commande est associée. La mise à jour peut prendre jusqu'à 10 minutes après les modifications.

solutionType

enum (SolutionType)

Obligatoire. Immuable. Solution à laquelle appartient le contrôle.

Doit être compatible avec le secteur de la ressource. Dans le cas contraire, une erreur INVALID ARGUMENT est renvoyée.

useCases[]

enum (SearchUseCase)

Spécifie le cas d'utilisation du contrôle. Affecte les champs de conditions qui peuvent être définis. S'applique uniquement à SOLUTION_TYPE_SEARCH. Actuellement, un seul cas d'utilisation est autorisé par commande. Doit être défini lorsque solutionType est SolutionType.SOLUTION_TYPE_SEARCH.

conditions[]

object (Condition)

Détermine quand l'action associée sera déclenchée.

Omettez-le pour toujours appliquer l'action. Actuellement, une seule condition peut être spécifiée. Dans le cas contraire, une erreur INVALID ARGUMENT est renvoyée.

Champ d'union action. Les actions sont limitées par secteur et par solution

Obligatoire. action ne peut être qu'un des éléments suivants :

boostAction

object (BoostAction)

Définit un contrôle de type boost

filterAction

object (FilterAction)

Définit un contrôle de type filtre. Non compatible actuellement avec les recommandations.

redirectAction

object (RedirectAction)

Définit un contrôle de type redirection.

synonymsAction

object (SynonymsAction)

Traite un groupe de termes comme des synonymes les uns des autres.

promoteAction

object (PromoteAction)

Mettez en avant certains liens en fonction de requêtes déclencheurs prédéfinies.

BoostAction

Ajuste l'ordre des produits dans la liste renvoyée.

Représentation JSON
{
  "boost": number,
  "filter": string,
  "dataStore": string,

  // Union field boost_spec can be only one of the following:
  "fixedBoost": number,
  "interpolationBoostSpec": {
    object (InterpolationBoostSpec)
  }
  // End of list of possible types for union field boost_spec.
}
Champs
boost
(deprecated)

number

Intensité du boost, qui doit être comprise entre -1 et 1. Un boosting négatif correspond à une rétrogradation. La valeur par défaut est 0.0 (No-op).

filter

string

Obligatoire. Spécifie les produits auxquels appliquer le boost.

Si aucun filtre n'est fourni, tous les produits seront mis en avant (No-op). Documentation sur la syntaxe : https://cloud.google.com/retail/docs/filter-and-order. La longueur maximale est de 5 000 caractères. Dans le cas contraire, une erreur INVALID ARGUMENT est renvoyée.

dataStore

string

Obligatoire. Indique les documents de quel data store peuvent être boostés par cette commande. Nom complet du data store, par exemple projects/123/locations/global/collections/default_collection/dataStores/default_data_store

Champ d'union boost_spec. Spécifications de boosting de valeur constante ou de boosting basé sur un classement personnalisé. boost_spec ne peut être qu'un des éléments suivants :
fixedBoost

number

Facultatif. Intensité du boost, qui doit être comprise entre -1 et 1. Un boosting négatif correspond à une rétrogradation. La valeur par défaut est 0.0 (No-op).

interpolationBoostSpec

object (InterpolationBoostSpec)

Facultatif. Spécification complexe pour le classement personnalisé basé sur la valeur d'un attribut défini par le client.

InterpolationBoostSpec

Spécification du classement personnalisé basé sur la valeur d'un attribut spécifié par le client. Il offre plus de contrôles pour un classement personnalisé que la simple combinaison (condition, boost) ci-dessus.

Représentation JSON
{
  "fieldName": string,
  "attributeType": enum (AttributeType),
  "interpolationType": enum (InterpolationType),
  "controlPoints": [
    {
      object (ControlPoint)
    }
  ]
}
Champs
fieldName

string

Facultatif. Nom du champ dont la valeur sera utilisée pour déterminer le montant du boost.

attributeType

enum (AttributeType)

Facultatif. Type d'attribut à utiliser pour déterminer le montant de l'augmentation. La valeur de l'attribut peut être dérivée de la valeur du champ spécifié dans fieldName. Dans le cas d'une valeur numérique, c'est simple : attributeValue = numerical_field_value. Dans le cas de la fraîcheur, attributeValue = (time.now() - datetime_field_value).

interpolationType

enum (InterpolationType)

Facultatif. Type d'interpolation à appliquer pour connecter les points de contrôle listés ci-dessous.

controlPoints[]

object (ControlPoint)

Facultatif. Points de contrôle utilisés pour définir la courbe. La fonction monotone (définie par interpolationType ci-dessus) passe par les points de contrôle listés ici.

AttributeType

Attribut(ou fonction) auquel le classement personnalisé doit être appliqué.

Enums
ATTRIBUTE_TYPE_UNSPECIFIED Type d'attribut non spécifié.
NUMERICAL La valeur du champ numérique sera utilisée pour mettre à jour dynamiquement le montant du boost. Dans ce cas, la valeur d'attribut (valeur x) du point de contrôle correspondra à la valeur réelle du champ numérique pour lequel boostAmount est spécifié.
FRESHNESS Dans le cas d'utilisation de la fraîcheur, la valeur de l'attribut correspond à la durée entre l'heure actuelle et la date spécifiée dans le champ "datetime". La valeur doit être au format XSD dayTimeDuration (sous-ensemble restreint d'une valeur de durée ISO 8601). Le format est le suivant : [nD][T[nH][nM][nS]]. Par exemple, 5D, 3DT12H30M, T24H.

InterpolationType

Type d'interpolation à appliquer. La valeur par défaut est "linéaire" (linéaire par morceaux).

Enums
INTERPOLATION_TYPE_UNSPECIFIED Le type d'interpolation n'est pas spécifié. Dans ce cas, la valeur par défaut est "Linéaire".
LINEAR Une interpolation linéaire par morceaux sera appliquée.

ControlPoint

Points de contrôle utilisés pour définir la courbe. La courbe définie par ces points de contrôle ne peut qu'augmenter ou diminuer de manière monotone(les valeurs constantes sont acceptables).

Représentation JSON
{
  "attributeValue": string,
  "boostAmount": number
}
Champs
attributeValue

string

Facultatif. Peut être l'une des valeurs suivantes : 1. Valeur numérique du champ. 2. Spécification de la durée de fraîcheur : la valeur doit être mise en forme en tant que valeur dayTimeDuration XSD (sous-ensemble restreint d'une valeur de durée ISO 8601). Le format est le suivant : [nD][T[nH][nM][nS]].

boostAmount

number

Facultatif. Valeur comprise entre -1 et 1 permettant d'augmenter le score si la valeur de l'attribut correspond à la valeur spécifiée ci-dessus.

FilterAction

Indique les produits qui peuvent être inclus dans les résultats. Utilise le même filtre que l'amplification.

Représentation JSON
{
  "filter": string,
  "dataStore": string
}
Champs
filter

string

Obligatoire. Filtre à appliquer aux résultats de la condition de correspondance.

Documentation sur la syntaxe requise : https://cloud.google.com/retail/docs/filter-and-order. La longueur maximale est de 5 000 caractères. Dans le cas contraire, une erreur INVALID ARGUMENT est renvoyée.

dataStore

string

Obligatoire. Indique les documents de data store pouvant être filtrés par cette commande. Nom complet du data store, par exemple projects/123/locations/global/collections/default_collection/dataStores/default_data_store

RedirectAction

Redirige un client vers l'URI fourni.

Représentation JSON
{
  "redirectUri": string
}
Champs
redirectUri

string

Obligatoire. URI vers lequel l'acheteur sera redirigé.

Obligatoire. L'URI ne doit pas comporter plus de 2 000 caractères. Dans le cas contraire, une erreur INVALID ARGUMENT est renvoyée.

SynonymsAction

Crée un ensemble de termes qui serviront de synonymes les uns pour les autres.

Par exemple, "heureux" sera également considéré comme "content", et "content" sera également considéré comme "heureux".

Représentation JSON
{
  "synonyms": [
    string
  ]
}
Champs
synonyms[]

string

Définit un ensemble de synonymes. Vous pouvez spécifier jusqu'à 100 synonymes. Vous devez spécifier au moins deux synonymes. Dans le cas contraire, une erreur INVALID ARGUMENT est renvoyée.

PromoteAction

Mettez en avant certains liens en fonction de requêtes déclencheurs.

Exemple : Promouvoir le lien vers un magasin de chaussures lorsque l'utilisateur recherche le mot clé shoe. Le lien peut se trouver en dehors du data store associé.

Représentation JSON
{
  "dataStore": string,
  "searchLinkPromotion": {
    object (SearchLinkPromotion)
  }
}
Champs
dataStore

string

Obligatoire. Datastore auquel cette promotion est associée.

SearchLinkPromotion

Le proto de promotion inclut l'URI et d'autres informations utiles pour afficher la promotion.

Représentation JSON
{
  "title": string,
  "uri": string,
  "document": string,
  "imageUri": string,
  "description": string,
  "enabled": boolean
}
Champs
title

string

Obligatoire. Titre de la promotion. La longueur maximale est fixée à 160 caractères.

uri

string

Facultatif. URL de la page que l'utilisateur souhaite promouvoir. Doit être défini pour la recherche sur site. Pour les autres secteurs, cette étape est facultative.

document

string

Facultatif. Le Document que l'utilisateur souhaite promouvoir. Pour la recherche sur le site, ne définissez pas ce champ et ne renseignez que l'URI. Peut être défini avec l'URI.

imageUri

string

Facultatif. URL de la vignette de la promotion.

description

string

Facultatif. Description de la promotion. La longueur maximale est fixée à 200 caractères.

enabled

boolean

Facultatif. La promotion activée sera renvoyée pour toutes les configurations de diffusion associées au parent du contrôle auquel cette promotion est associée.

Cette option n'est utilisée que pour la recherche de base sur le site.

SearchUseCase

Définit une autre subdivision de SolutionType. S'applique spécifiquement à SOLUTION_TYPE_SEARCH.

Enums
SEARCH_USE_CASE_UNSPECIFIED Valeur utilisée lorsqu'elle n'est pas définie. Ne se produit pas dans les CSS.
SEARCH_USE_CASE_BROWSE Parcourez les cas d'utilisation. S'attend à ce que le trafic ait un query vide.

Condition

Définit les circonstances à vérifier avant d'autoriser un comportement

Représentation JSON
{
  "queryTerms": [
    {
      object (QueryTerm)
    }
  ],
  "activeTimeRange": [
    {
      object (TimeRange)
    }
  ],
  "queryRegex": string
}
Champs
queryTerms[]

object (QueryTerm)

Rechercher uniquement une liste de termes correspondant à la requête. Ne peut pas être défini lorsque Condition.query_regex est défini.

10 termes de requête maximum.

activeTimeRange[]

object (TimeRange)

Plage(s) horaire(s) indiquant quand la condition est active.

10 périodes au maximum.

queryRegex

string

Facultatif. Expression régulière de la requête pour correspondre à l'intégralité de la requête de recherche. Ne peut pas être défini lorsque Condition.query_terms est défini. Uniquement disponible pour les paramètres de diffusion des promotions de la recherche de site de base.

QueryTerm

Outil de correspondance pour les requêtes de recherche

Représentation JSON
{
  "value": string,
  "fullMatch": boolean
}
Champs
value

string

Valeur de requête spécifique à comparer

Doit être en minuscules et au format UTF-8. Peut comporter au maximum trois termes séparés par des espaces si fullMatch est défini sur "true". Ne peut pas être une chaîne vide. Ne doit pas dépasser 5 000 caractères.

fullMatch

boolean

Indique si la requête de recherche doit correspondre exactement au terme de la requête.

TimeRange

Utilisé pour les conditions dépendantes du temps.

Représentation JSON
{
  "startTime": string,
  "endTime": string
}
Champs
startTime

string (Timestamp format)

Début de la période.

La plage est inclusive.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

endTime

string (Timestamp format)

Fin de la période.

La plage est inclusive. Il doit s'agir d'une date future.

Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

Méthodes

create

Crée un contrôle.

delete

Supprime un contrôle.

get

Permet d'obtenir un contrôle.

list

Liste tous les contrôles par DataStore parent.

patch

Met à jour un contrôle.