Premiers pas avec l'API Merchant

Cette page explique comment créer un compte Merchant Center et importer un exemple de produit à l'aide de l'API Merchant.

Avant de commencer

Activez l'API Merchant dans votre projet Google Cloud.

Si vous utilisez l'intégration de l'API dans AppScript à l'aide du service de contenu Shopping, un projet Google Cloud par défaut est créé et le service Merchant API est activé automatiquement. Toutefois, vous devez toujours effectuer un enregistrement unique en tant que développeur avant d'utiliser l'API Merchant. Pour en savoir plus, consultez Utiliser le service Merchant API dans Apps Script.

Accéder à Google Cloud

Créer un compte

Pour utiliser l'API Merchant, vous devez disposer d'un compte Merchant Center. Pour en créer un, consultez Premiers pas avec Merchant Center.

Accéder à Merchant Center

S'inscrire comme développeur

Pour utiliser l'API Merchant, vous devez créer un lien entre votre projet Google Cloud et votre compte Merchant Center principal. Cette inscription unique est obligatoire pour chaque projet Google Cloud que vous utilisez avec l'API Merchant.

L'inscription en tant que développeur permet deux choses :

  • Il associe votre projet Google Cloud à votre compte Merchant Center principal, établissant ainsi une connexion formelle.
  • Il crée un contact technique en attribuant le rôle API_DEVELOPER à un utilisateur de votre compte Merchant Center. Cela permet à Google de vous envoyer des informations importantes sur l'API, comme des annonces de service et des informations sur les nouvelles fonctionnalités.

Enregistrer votre projet Google Cloud

Pour vous inscrire, appelez la méthode developerRegistration.registerGcp. Cet appel associe le projet Google Cloud que vous utilisez pour effectuer l'appel au compte Merchant Center que vous spécifiez dans la requête.

Dans le corps de la requête, vous devez fournir une adresse e-mail de développeur à utiliser comme contact technique. Cette adresse doit être associée à un compte Google (compte Google Workspace ou Gmail), par exemple sampleuser@gmail.com.

  • Si l'adresse e-mail appartient déjà à un utilisateur du compte Merchant Center, ce dernier se voit attribuer le rôle API_DEVELOPER.
  • Si l'adresse e-mail n'appartient pas à un utilisateur existant, une invitation est envoyée à cette adresse. Le destinataire doit accepter l'invitation pour être ajouté en tant que nouvel utilisateur avec le rôle API_DEVELOPER.

Voici un exemple de requête :

POST https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/developerRegistration:registerGcp

{
  "developerEmail": "{DEVELOPER_EMAIL}"
}

Un appel réussi renvoie une ressource DeveloperRegistration, qui confirme l'association entre votre projet et votre compte.

{
  "name": "accounts/{ACCOUNT_ID}/developerRegistration",
  "gcpIds": [
    "123456789012345"
  ]
}

Gérer les contacts et les autorisations des développeurs

Après votre inscription, nous vous recommandons d'ajouter plusieurs développeurs et de leur accorder des droits d'accès supplémentaires.

Accorder des autorisations supplémentaires

Le rôle API_DEVELOPER est nécessaire pour recevoir les notifications importantes, mais il dispose d'autorisations minimales dans Merchant Center. Pour autoriser cet utilisateur à effectuer d'autres appels d'API ou à gérer les paramètres dans l'UI Merchant Center, vous devez lui accorder des rôles supplémentaires, tels que STANDARD ou ADMIN. Pour en savoir plus, consultez Types d'accès.

Vous pouvez mettre à jour les droits d'accès d'un utilisateur à l'aide de la méthode accounts.users.patch.

L'exemple suivant montre comment mettre à jour un utilisateur pour lui attribuer les rôles ADMIN et API_DEVELOPER. Il pourra ainsi gérer entièrement le compte et recevra également les communications liées aux API.

PATCH https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/users/{DEVELOPER_EMAIL}?update_mask=access_rights
{
  "access_rights": [
    "ADMIN",
    "API_DEVELOPER"
  ]
}

Ajouter des développeurs de secours

Pour éviter que votre accès à l'API ne soit interrompu si votre contact principal pour les développeurs quitte votre organisation, vous devez ajouter au moins un développeur de secours.

Vous pouvez ajouter un utilisateur avec la méthode accounts.users.create ou en mettre à jour un existant avec la méthode accounts.users.patch. Nous vous recommandons d'attribuer à cet utilisateur les rôles ADMIN et API_DEVELOPER.

Créer une source de données produit principale

Pour insérer un produit, vous avez besoin d'une source de données produit principale. La requête suivante montre comment créer une source de données que vous pouvez utiliser pour insérer un produit dans votre compte :

POST https://merchantapi.googleapis.com/datasources/v1/accounts/{ACCOUNT_ID}/dataSources HTTP/1.1

{
  "primaryProductDataSource": {
    "channel": "ONLINE_PRODUCTS",
    "contentLanguage": "en",
    "countries": [
      "US"
    ],
    "feedLabel": "US"
  },
  "name": "primary-data-source",
  "displayName": "Primary Products Data Source"
}

Remplacez {ACCOUNT_ID} par l'ID du compte Merchant Center que vous avez créé.

Une fois cette requête exécutée, la réponse suivante devrait s'afficher :

{
  "name": "accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}",
  "dataSourceId": "{DATASOURCE_ID}",
  "displayName": "Primary Products Data Source",
  "primaryProductDataSource": {
    "channel": "ONLINE_PRODUCTS",
    "feedLabel": "US",
    "contentLanguage": "en",
    "countries": [
      "US"
    ],
    "defaultRule": {
      "takeFromDataSources": [
        {
          "self": true
        }
      ]
    }
  },
  "input": "API"
}

Copiez la valeur du champ name. Vous en aurez besoin pour insérer un produit.

Vous pouvez consulter cette source de données dans l'UI Merchant Center. Pour en savoir plus, consultez Comment trouver l'onglet "Sources de données" ?

Insérer un produit

Pour insérer un exemple de produit dans votre compte, exécutez la requête suivante :

POST https://merchantapi.googleapis.com/products/v1/accounts/{ACCOUNT_ID}/productInputs:insert?dataSource={DATASOURCE_NAME} HTTP/1.1

{
  "channel": "ONLINE",
  "contentLanguage": "en",
  "feedLabel": "US",
  "name": "Red T-shirt",
  "attributes": {
    "gender": "Male",
    "brand": "New brand"
  },
  "offerId": "tshirt-123"
}

Remplacez {DATASOURCE_NAME} par la valeur que vous avez copiée précédemment.

Une fois cette requête exécutée, la réponse suivante devrait s'afficher :

{
  "name": "accounts/{ACCOUNT_ID}/productInputs/online~en~US~tshirt-123",
  "product": "accounts/{ACCOUNT_ID}/products/online~en~US~tshirt-123",
  "channel": "ONLINE",
  "offerId": "tshirt-123",
  "contentLanguage": "en",
  "feedLabel": "US",
  "attributes": {
    "brand": "New brand",
    "gender": "Male"
  }
}

L'ID produit du produit nouvellement créé est online~en~US~tshirt-123. Vous pouvez utiliser la méthode accounts.products.get pour récupérer des informations sur ce produit. Vous pouvez également utiliser l'UI Merchant Center pour afficher ce produit. Consultez Afficher vos données produit.