Gérer les informations du catalogue

Cette page explique comment gérer les informations sur vos produits après avoir importé un catalogue dans Vertex AI Search pour le commerce. Vous pouvez lire, écrire et supprimer des produits dans votre catalogue.

Pour que votre catalogue reste à jour à mesure que les informations sur les produits changent, importez votre catalogue de la même manière que la première fois. Pour obtenir de l'aide concernant l'importation de votre catalogue, consultez la page Importer des informations de catalogue.

Créer, obtenir, mettre à jour et supprimer un produit

Ce tutoriel vous explique comment utiliser les méthodes API, qui effectuent les actions suivantes:

  • Créer un produit
  • Obtenir un produit
  • Mettre à jour un produit
  • Supprimer un produit

Pour obtenir des instructions détaillées sur cette tâche directement dans l'éditeur Cloud Shell, cliquez sur Visite guidée :

Visite guidée


Créer un produit

Ce tutoriel vous montre comment créer un seul produit.


Pour obtenir des instructions détaillées sur cette tâche directement dans l'éditeur Cloud Shell, cliquez sur Visite guidée :

Visite guidée


Obtenir un produit

Ce tutoriel vous explique comment récupérer un article.


Pour obtenir des instructions détaillées sur cette tâche directement dans l'éditeur Cloud Shell, cliquez sur Visite guidée :

Visite guidée


Mettre à jour un produit - Tutoriel

Ce tutoriel vous explique comment mettre à jour un produit dans un catalogue.


Pour obtenir des instructions détaillées sur cette tâche directement dans l'éditeur Cloud Shell, cliquez sur Visite guidée :

Visite guidée


Supprimer un produit - Tutoriel

Ce tutoriel vous explique comment supprimer un produit d'un catalogue.


Pour obtenir des instructions détaillées sur cette tâche directement dans l'éditeur Cloud Shell, cliquez sur Visite guidée :

Visite guidée


Importer un produit

curl

Créez un produit unique en utilisant la méthode REST products.create.

curl -X POST \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
     -H "Content-Type: application/json; charset=utf-8" \
     --data '{
      "title": "PRODUCT_TITLE",
      "categories": "CATEGORY"
    }' \
    "https://retail.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/branches/0/products?productId=PRODUCT_ID"

Si la requête aboutit, l'objet produit est renvoyé, comme dans l'exemple suivant.

{
  "name": "projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/branches/0/products/PRODUCT_ID",
  "id": "PRODUCT_ID",
  "primaryProductId": "PRODUCT_ID",
  "type": "PRIMARY",
  "categories": [
    "CATEGORY"
  ],
  "title": "PRODUCT_TITLE",
  "availability": "IN_STOCK"
}

Java

public static Product createProduct(Product productToCreate, String productId)
    throws IOException {
  return getProductServiceClient().createProduct(
      DEFAULT_BRANCH_NAME, productToCreate, productId
  );
}

Mettre à jour les informations sur le produit

Lorsque votre catalogue de produits évolue, vous pouvez l'actualiser en important en temps réel les modifications (nouveaux produits, prix et état des stocks, par exemple). Vous pouvez n'importer que les produits été ajoutés ou modifiés. Il n'est pas nécessaire d'importer à nouveau l'intégralité de votre catalogue.

curl

Mettez à jour les informations produit en utilisant la méthode products.patch.

L'exemple suivant met à jour le titre d'un produit spécifique :

curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" \
    --data "{
       "title": "new-title-value"
    }" \
    "https://retail.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/branches/0/products/PRODUCT_ID?updateMask=title"

Si la requête aboutit, l'objet produit est renvoyé, comme dans l'exemple suivant.

{
  "name": "projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/branches/0/products/PRODUCT_ID",
  "id": "PRODUCT_ID",
  "primaryProductId": "PRODUCT_ID",
  "type": "PRIMARY",
  "categories": [
    "Parent category > Child category"
  ],
  "title": "new product title",
  "availability": "IN_STOCK"
}

Java

public static Product updateProduct(Product productToUpdate) throws IOException {
  return getProductServiceClient().updateProduct(productToUpdate, FieldMask.getDefaultInstance());
}

Supprimer les informations produit

Bien que l'API permette de supprimer des produits de votre catalogue, n'oubliez pas que si vous enregistrez un événement utilisateur lié à un article qui a été supprimé, l'API ne peut pas traiter l'événement utilisateur correctement et il peut être supprimé. En outre, l'inclusion des données de l'historique du catalogue améliore la qualité de votre modèle et est essentielle pour la qualité des recommandations et des résultats de recherche.

Vous devez définir le availability des produits obsolètes sur OUT_OF_STOCK plutôt que de les supprimer.

curl

Supprimez un produit à l'aide de la méthode delete, en remplaçant PRODUCT_ID par l'ID du produit que vous souhaitez supprimer.

curl -X DELETE \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    "https://retail.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/branches/0/products/PRODUCT_ID"

Java

public static void deleteProduct(String productName) throws IOException {
  getProductServiceClient().deleteProduct(productName);
}

Récupérer un article

curl

Pour récupérer un produit, envoyez une requête GET au point de terminaison products, en remplaçant PRODUCT_ID par l'ID du produit que vous souhaitez récupérer :

curl -X GET \
     -H "Authorization: Bearer $(gcloud auth application-default print-access-token)"  \
    "https://retail.googleapis.com/v2/projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/branches/0/products/PRODUCT_ID"

Le résultat obtenu doit ressembler à ceci :

{
    "name": "projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/branches/0/products/PRODUCT_ID"
    "id": "PRODUCT_ID",
    "primaryProductId": "PRODUCT_ID",
    "type": "PRIMARY",
    "categories": [
      "Parent category > Child category"
    ],
    "title": "product title",
    "availability": "IN_STOCK"
}

Java

public static Product getProduct(String productName) throws IOException {
  return getProductServiceClient().getProduct(productName);
}

Afficher des informations agrégées sur votre catalogue

Vous pouvez afficher des informations agrégées sur votre catalogue et prévisualiser les produits importés dans l'onglet Catalogue de la page Données de la console Search for Retail.

Évaluer la qualité des données du catalogue

Pour évaluer la qualité des données de votre catalogue, procédez comme suit:

  1. Accédez à la page Qualité des données dans la console Search for Retail.

    Accéder à la page "Qualité des données"

    La page Qualité des données détermine si vous devez mettre à jour les données du catalogue pour améliorer la qualité des résultats de recherche et débloquer les niveaux de performances de recherche.

Pour savoir comment vérifier la qualité des données de recherche et afficher les niveaux de performances de recherche, consultez Déverrouiller les niveaux de performances de recherche.

Pour obtenir un résumé des métriques de catalogue disponibles, consultez Métriques de qualité du catalogue.

Modifier les types de produits

Lors de l'importation d'un produit, vous pouvez indiquer s'il s'agit d'un produit principal, d'une variante ou d'une collection. Si le type d'un produit change ou s'il est spécifié de manière incorrecte, vous devez supprimer le produit et le créer avec le type mis à jour spécifié.

Le type d'un produit peut être défini sur TYPE_UNSPECIFIED, PRIMARY, VARIANT ou COLLECTION. Pour en savoir plus, consultez la section product.Type dans la documentation de référence.

Modifier la configuration au niveau du produit

Lorsque vous importez un catalogue avec Merchant Center, vous devez indiquer si les produits sont des produits principaux ou variantes. Si ces niveaux de produits changent ou ne sont pas spécifiés correctement, suivez la procédure ci-dessous pour corriger leur configuration. Vous devez disposer du rôle IAM Administrateur Retail pour terminer cette procédure.

  1. Assurez-vous qu'aucune importation ne se produit pendant la reconfiguration des niveaux de produit. Cela garantit que les données ne seront pas importées au mauvais niveau.

  2. Supprimez tous les articles. Consultez products.delete. Le catalogue doit être entièrement vide avant de passer à l'étape suivante.

  3. Réimportez vos données pour modifier la configuration au niveau du produit.

    Cette procédure dépend de la manière dont vous importez les données. Suivez la procédure appropriée dans Importer les informations de catalogue pour définir les niveaux de produit avec leur nouvelle configuration.

  4. Terminez l'importation du nouveau catalogue avec la configuration de niveau modifiée en utilisant la procédure de votre choix dans Importer les informations du catalogue.

  5. Réglez tous les modèles existants.

    Pour régler un modèle, accédez à la page Modèles, cliquez sur le nom du modèle pour afficher ses informations, puis cliquez sur Régler manuellement dans la barre de boutons.

    Accéder à la page "Modèles"

    Pour en savoir plus sur les coûts de réglage, consultez la page Tarifs.