Cette section répond aux questions fréquentes concernant l'enregistrement des développeurs pour l'API Merchant.
Inscription générale
Questions fréquentes sur la procédure d'inscription :
L'inscription des développeurs est-elle obligatoire pour utiliser l'API Merchant ?
Oui. Vous devez enregistrer vos coordonnées de développeur pour que Google puisse vous envoyer des informations importantes sur l'API, comme des annonces de service et des informations sur les nouvelles fonctionnalités.
Si vous souhaitez simplement explorer et tester l'API Merchant, vous pouvez utiliser des outils tels que Google OAuth Playground et APIs Explorer, qui ne nécessitent pas d'enregistrement.
À quelle fréquence dois-je m'inscrire ?
L'enregistrement est une configuration unique pour chaque projet Google Cloud. Que vous travailliez ou non avec plusieurs comptes de marchand, vous n'effectuez l'opération d'enregistrement qu'une seule fois. Elle s'applique à tous les utilisateurs et comptes de service du projet Google Cloud associé.
Une fois un projet Google Cloud enregistré, le lien reste actif, sauf s'il est explicitement supprimé en appelant la méthode unregisterGcp. Vous ne pouvez pas enregistrer les projets partagés appartenant à Google, tels que l'explorateur d'API ou OAuth Playground.
Quelle adresse e-mail dois-je fournir comme contact du développeur ?
Nous vous recommandons d'utiliser l'adresse e-mail professionnelle d'une personne. Vous pouvez également utiliser des alias de groupe généraux. Vous ne pouvez pas utiliser d'adresses e-mail de compte de service, car les communications sont destinées à des personnes. Google envoie des informations importantes spécifiques à l'API, comme des annonces de service et des informations sur les nouvelles fonctionnalités.
Si l'adresse e-mail appartient à un utilisateur existant du compte Merchant Center, le rôle API_DEVELOPER lui est automatiquement attribué. Si ce n'est pas le cas, une invitation est envoyée à cette adresse.
Le champ de l'adresse e-mail de contact du développeur est facultatif dans la méthode registerGcp. Si vous ne fournissez pas de valeur pour ce champ lors de l'enregistrement, vous devez créer un utilisateur disposant du rôle API_DEVELOPER dans l'UI Merchant Center ou en appelant la méthode accounts.users.create.
L'adresse e-mail de contact du développeur doit-elle être un compte Google ?
Oui. Pour utiliser une adresse e-mail existante autre que Google, vous pouvez l'associer à un compte Google en sélectionnant l'option Utiliser votre adresse e-mail existante dans la procédure d'inscription Créer un compte Google. Vous ne pouvez pas utiliser d'adresses e-mail de compte de service, car les comptes de service ne peuvent pas recevoir d'e-mails.
Comment effectuer l'authentification et l'autorisation pour l'appel d'enregistrement ?
Deux scénarios d'authentification distincts sont disponibles pour l'authentification et l'autorisation de l'appel d'enregistrement, selon votre cas d'utilisation :
- OAuth 2.0 : pour les fournisseurs ou agences tiers qui gèrent plusieurs comptes marchands
- Comptes de service : pour accéder à votre propre compte Merchant Center
Le schéma précédent montre les deux flux d'authentification et d'autorisation pour l'appel d'enregistrement. Vous avez le choix entre plusieurs options :
- Utiliser OAuth avec une adresse e-mail telle que account@email.com associée à un compte Google
- Utiliser un compte de service tel que sa@project.iam.gserviceaccount.com
Si vous décidez d'utiliser OAuth :
- Créez des identifiants OAuth dans votre projet Google Cloud pour votre adresse e-mail.
- Assurez-vous que l'adresse e-mail d'autorisation existe dans votre compte Merchant Center et qu'elle dispose du type d'accès
ADMIN.
Si vous décidez d'utiliser un compte de service :
- Assurez-vous que le compte de service existe dans votre projet Google Cloud.
- Assurez-vous que l'adresse e-mail associée au compte de service existe dans votre compte Merchant Center et qu'elle dispose du type d'accès
ADMIN.
Effectuez l'appel d'enregistrement dans le contexte de sécurité de l'identité d'authentification, à l'aide d'appels d'API directs ou de bibliothèques clientes. Indiquez une adresse e-mail pour contacter le développeur, par exemple developer@email.com.
Si l'appel d'enregistrement réussit, un utilisateur existe dans votre compte Merchant Center avec l'adresse e-mail du développeur fournie et le rôle API_DEVELOPER. Vous obtenez une ressource DeveloperRegistration en réponse.
Quelle est la différence entre l'adresse e-mail d'authentification et l'adresse e-mail de contact du développeur ?
Les deux adresses e-mail ont des objectifs distincts dans l'écosystème de l'API Merchant :
- Adresse e-mail d'authentification : vous utilisez généralement une adresse e-mail associée à votre compte Google ou à un compte de service comme identité pour autoriser les requêtes envoyées à l'API Merchant, à condition que :
- Il existe dans votre compte Merchant Center et dispose du rôle
ADMIN. - Un projet Google Cloud pour lequel l'API Merchant est activée héberge le client OAuth ou le compte de service associé à l'adresse e-mail qui autorise les appels d'API.
- Il existe dans votre compte Merchant Center et dispose du rôle
- Adresse e-mail de contact du développeur : l'adresse e-mail de contact du développeur doit également être associée à un compte Google, mais elle sert de contact principal pour les annonces de service critiques et les mises à jour de l'API de Google. Il peut appartenir à un utilisateur ou à un groupe d'utilisateurs. Par défaut, il obtient le rôle
API developerdans Merchant Center.
Dois-je accepter l'invitation reçue à l'adresse e-mail de contact du développeur ?
Oui. Le destinataire de l'adresse e-mail de contact du développeur que vous fournissez dispose de 14 jours pour accepter l'invitation. L'inscription n'est terminée qu'une fois qu'ils ont accepté l'invitation. Toutefois, vous pouvez effectuer des appels d'API pendant cette période.
Si l'invitation n'est pas acceptée dans le délai spécifié, le lien d'invitation expire. Vous ne pouvez plus effectuer d'appels d'API Merchant et vous devez recommencer le processus d'enregistrement.
Gestion des comptes et des projets
Questions fréquentes sur la gestion des comptes et des projets :
Je travaille avec plusieurs comptes Merchant Center. Dois-je enregistrer tous les comptes Merchant Center que je souhaite utiliser avec l'API Merchant ?
Non. Si vous êtes un développeur tiers ou une agence qui gère plusieurs comptes de marchands, enregistrez votre projet Google Cloud avec votre propre compte Merchant Center principal, et non avec chacun des comptes de vos marchands. Vous représentez ainsi le développeur pour tous les travaux d'API que vous effectuez pour vos marchands.
Je travaille avec plusieurs comptes Merchant Center. Comment choisir mon compte Merchant Center principal ?
Le choix du compte principal à utiliser dépend de votre type d'entreprise :
- Places de marché disposant d'un compte avancé existant : si votre entreprise fonctionne comme une place de marché et dispose déjà d'un compte avancé représentant l'ensemble de la plate-forme, utilisez l'ID de ce compte existant comme compte Merchant Center principal.
- Services de comparateur de prix (CSS) : si vous êtes un CSS, utilisez votre ID de compte CSS unique ou votre ID de compte de groupe CSS.
- Agences, développeurs et autres tiers : si vous êtes une entreprise tierce (agence ou développeur tiers, par exemple) qui gère plusieurs comptes marchands et ne dispose pas d'un seul ID Merchant Center représentant votre entreprise, vous devez créer un compte Merchant Center principal et demander à le convertir en compte avancé.
Une fois votre projet Google Cloud enregistré dans votre compte Merchant Center principal, vous pouvez utiliser ce même projet pour gérer tous les autres comptes Merchant Center auxquels vous avez accès, sans avoir à enregistrer ces comptes individuellement.
J'utilise plusieurs projets Google Cloud. Dois-je enregistrer chacun d'eux ?
Oui. Étant donné que le processus d'enregistrement associe le projet Google Cloud appelant, vous devez effectuer l'appel registerGcp à partir de chaque projet Google Cloud que vous utilisez pour effectuer des appels d'API.
Un projet Google Cloud ne peut être enregistré qu'avec un seul compte Merchant Center à la fois. Toutefois, un même compte Merchant Center peut être associé à plusieurs projets Google Cloud. De même, vous pouvez utiliser la même adresse e-mail de développeur pour effectuer plusieurs enregistrements, dans plusieurs projets Google Cloud ou plusieurs comptes Merchant Center.
Que se passe-t-il si j'enregistre un projet Google Cloud avec plusieurs comptes Merchant Center ?
Si vous essayez d'enregistrer un projet Google Cloud déjà enregistré auprès d'un autre compte Merchant Center, l'erreur ALREADY_REGISTERED s'affichera.
Comment authentifier l'appel d'API d'enregistrement du développeur ?
Pour authentifier l'appel d'API d'enregistrement du développeur pour l'API Merchant, vous utilisez des identifiants gérés via un projet Google Cloud. Deux options principales s'offrent à vous pour l'identité qui effectue l'authentification :
- Compte Google (Gmail, par exemple) utilisant OAuth 2.0 : cette méthode utilise les identifiants client OAuth 2.0 générés dans votre projet Google Cloud. L'appel d'API est autorisé au nom d'un compte Google spécifique auquel l'utilisateur se connecte.
- Compte de service : cette méthode utilise un compte de service Google Cloud, qui est un type spécial de compte Google destiné aux applications. Les identifiants du compte de service sont également gérés dans votre projet Google Cloud.
Pour que l'enregistrement d'un développeur soit validé, l'identité d'authentification (compte Google ou compte de service) doit répondre aux critères suivants dans Merchant Center :
- L'adresse e-mail existe en tant qu'utilisateur dans Merchant Center : l'adresse e-mail associée au compte Google ou au compte de service utilisé pour l'authentification doit être ajoutée en tant qu'utilisateur dans le compte Merchant Center que vous enregistrez.
- Rôle d'administrateur requis : ce rôle
ADMINdoit être attribué à l'utilisateur dans le compte Merchant Center concerné.
Lorsque vous effectuez les appels d'API :
- Si vous utilisez des appels d'API directs, vous devez obtenir et fournir un jeton d'accès valide dans l'en-tête
Authorization. Ce jeton est généré par le flux OAuth 2.0 pour un compte Google ou par le flux d'authentification de serveur à serveur pour un compte de service. - Les bibliothèques clientes fournies par Google gèrent généralement la complexité de l'obtention et de l'actualisation des jetons d'accès pour vous dans le cadre de leur configuration.
Il est possible que l'utilisateur qui s'authentifie ne soit pas le même que l'utilisateur de contact du développeur. Pour en savoir plus, consultez Quelle est la différence entre l'adresse e-mail d'authentification et l'adresse e-mail de contact du développeur ?
À quelle fréquence dois-je actualiser les jetons d'accès ?
Les jetons d'accès pour les comptes de service et OAuth 2.0 expirent généralement au bout d'une heure. Toutefois, le mécanisme permettant d'en obtenir un nouveau dépend de la méthode d'authentification que vous utilisez :
- Les comptes de service utilisent une clé privée ou des identifiants d'environnement pour créer un jeton d'accès chaque fois que nécessaire.
- Les flux OAuth 2.0 utilisent un refresh_token pour appeler le point de terminaison du jeton Google OAuth2 afin de recevoir un nouveau jeton d'accès d'une heure.
Nous vous recommandons vivement d'utiliser les bibliothèques Google Auth officielles, qui gèrent cette rotation automatiquement afin que votre application ne subisse jamais de temps d'arrêt.
Utilisateurs et rôles
Questions fréquentes sur les utilisateurs et les rôles :
Le compte de messagerie du développeur doit-il déjà exister dans Merchant Center ?
Non. Si l'adresse e-mail d'inscription n'existe pas déjà dans Merchant Center, l'API Merchant crée le compte dans Merchant Center avec l'adresse e-mail spécifiée, à l'état "En attente". Si l'adresse e-mail du développeur appartient à un utilisateur existant du compte Merchant Center, le rôle API_DEVELOPER lui est automatiquement attribué.
L'adresse e-mail de contact du développeur doit-elle disposer de droits d'administrateur dans Merchant Center ?
Non. L'utilisateur Merchant Center associé à l'adresse e-mail de contact du développeur reçoit par défaut le rôle API_DEVELOPER, qui est requis pour recevoir les notifications importantes. Toutefois, il dispose d'autorisations minimales dans Merchant Center. Pour permettre à cet utilisateur d'effectuer d'autres appels d'API ou de 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 sur les rôles Merchant Center, consultez "Types d'accès".
Quelles sont les autorisations associées au rôle "Développeur d'API" ?
Le rôle API Developer est un rôle avec des droits minimaux dans Merchant Center. Si vous prévoyez d'utiliser l'adresse e-mail de contact du développeur pour autoriser les appels à l'API Merchant, nous vous recommandons d'ajouter les autorisations ADMIN ou STANDARD pour permettre à l'utilisateur d'effectuer des appels d'API.
Dois-je enregistrer chaque compte de service ou utilisateur développeur qui appelle l'API ?
Non. L'enregistrement du développeur est lié au projet Google Cloud utilisé pour effectuer les appels d'API, et non aux utilisateurs individuels ni aux comptes de service. Une fois qu'un projet Google Cloud a été correctement enregistré dans votre compte Merchant Center principal, vous pouvez utiliser n'importe quelle identité gérée par le projet Google Cloud associé à l'aide d'identifiants OAuth ou de comptes de service pour autoriser les appels à l'API Merchant, à condition qu'ils existent dans votre compte Merchant Center et qu'ils disposent du rôle ADMIN.
Comment modifier l'adresse e-mail du contact du développeur après l'inscription initiale ?
Pour gérer ou modifier des contacts, utilisez le service accounts.users standard ou la page "Accès et services" de l'interface utilisateur Merchant Center pour ajouter ou supprimer des utilisateurs disposant du rôle API Developer.
Que se passe-t-il si le dernier utilisateur "Développeur d'API" est supprimé du compte Merchant Center ?
Un délai de grâce de 30 jours est déclenché pour éviter toute interruption immédiate du service. Pendant ce temps :
- Les administrateurs recevront trois annonces obligatoires sur le service par e-mail (généralement environ 30, 17 et 4 jours avant le blocage).
- Les appels d'API continueront de fonctionner normalement.
- Si aucun
API Developern'est ajouté avant l'expiration du délai de grâce, les appels d'API des projets Google Cloud associés seront bloqués et une erreurAUTH_GCP_NOT_REGISTEREDsera renvoyée.
Une fois le délai de grâce de 30 jours écoulé, les appels d'API provenant des projets Google Cloud associés sont bloqués et génèrent une erreur AUTH_GCP_NOT_REGISTERED jusqu'à ce qu'un contact de développeur valide soit rétabli.
Que se passe-t-il si l'ID Merchant Center utilisé pour l'enregistrement du développeur est supprimé ?
Ne supprimez pas le compte Merchant Center utilisé pour l'enregistrement du développeur tant que votre intégration est active. La suppression de ce compte interrompt immédiatement votre intégration et vous ne pourrez plus effectuer d'appels d'API à partir du projet Google Cloud associé.
Si vous devez supprimer ce compte Merchant Center, vous devez d'abord appeler la méthode unregisterGcp pour supprimer le lien en toute sécurité, puis procéder à la suppression de l'identifiant Merchant Center. Si vous souhaitez continuer à utiliser l'API Merchant, vous devez vous inscrire avec un autre ID Merchant Center juste après avoir annulé l'inscription à l'ID actuel. Ensuite, supprimez l'ID Merchant Center.
Cas d'utilisation particuliers
Questions fréquentes sur les cas d'utilisation particuliers :
Je suis une agence ou un développeur tiers qui gère plusieurs comptes de marchands. Quelle est la meilleure façon de configurer cette fonctionnalité ?
Les agences et les développeurs tiers doivent conserver leur propre compte Merchant Center principal et enregistrer tous leurs projets Google Cloud dans ce compte unique et centralisé. N'enregistrez pas votre projet Google Cloud avec le compte de chaque marchand.
Comment fonctionne l'enregistrement pour Google Apps Scripts ?
Les scripts d'application s'exécutent généralement sur un projet Google Cloud par défaut. Vous devez enregistrer cet ID Google Cloud par défaut dans votre compte Merchant Center. L'ID Google Cloud est obtenu automatiquement par l'API. Vous n'avez donc pas besoin de le fournir en tant que paramètre.
Puis-je vérifier si un ID Merchant Center est enregistré dans un ID de projet Google Cloud spécifique ?
Oui. Vous pouvez vérifier quel ID Merchant Center est enregistré pour un projet Google Cloud spécifique à l'aide de la méthode getAccountForGcpRegistration. Pour supprimer l'association d'un projet Google Cloud à votre compte Merchant Center, utilisez la méthode unregisterGcp.