Cette section répond aux questions fréquentes concernant l'enregistrement des développeurs pour l'API Merchant.
Enregistrement général
Questions fréquentes sur le processus d'enregistrement :
L'enregistrement des développeurs est-il obligatoire pour utiliser l'API Merchant ?
Oui. Vous devez enregistrer vos coordonnées de développeur pour que Google puisse vous envoyer des mises à jour importantes spécifiques à l'API, telles que 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 API 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 marchand, vous n'effectuez l'opération d'enregistrement qu'une seule fois, et elle s'applique à tous les utilisateurs et comptes de service du projet Google Cloud associé.
Une fois qu'un projet Google Cloud est enregistré, le lien reste actif, sauf s'il est explicitement supprimé en appelant la unregisterGcp méthode. Vous ne pouvez pas enregistrer de projets partagés appartenant à Google, tels qu'APIs Explorer ou OAuth Playground.
Quelle adresse e-mail dois-je fournir en tant que contact 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 mises à jour importantes spécifiques à l'API, telles que des annonces de service et des informations sur les nouvelles fonctionnalités.
Si l'adresse e-mail appartient à un utilisateur existant dans le compte Merchant Center, le rôle API_DEVELOPER lui est automatiquement attribué. Sinon, une invitation est envoyée à cette adresse.
Le champ d'adresse e-mail du contact développeur est facultatif dans la méthode registerGcp. Si vous ne fournissez pas de valeur pour ce champ lors de votre inscription, vous devez
créer un utilisateur disposant du rôle API_DEVELOPER dans l'interface utilisateur de Merchant Center
ou en appelant la méthode accounts.users.create.
L'adresse e-mail du contact développeur doit-elle être un compte Google ?
Oui. Pour utiliser une adresse e-mail existante qui n'est pas un compte Google, vous pouvez l'associer à un compte Google en sélectionnant l'option Utiliser votre adresse e-mail existante lors de la création d'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, en fonction de votre cas d'utilisation :
- OAuth 2.0 : pour les fournisseurs ou agences tiers qui gèrent plusieurs comptes marchand
- Comptes de service : pour accéder à votre propre compte Merchant Center
Le schéma précédent illustre 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 choisissez 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 choisissez 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. Fournissez une adresse e-mail pour le contact 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 de développeur fournie et le rôle API_DEVELOPER. Vous recevez une ressource DeveloperRegistration
en réponse.
Quelle est la différence entre l'adresse e-mail d'authentification et celle du contact développeur ?
Les deux adresses e-mail ont des usages différents 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 adressées à l'API Merchant, à condition que :
- elle 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.
- elle existe dans votre compte Merchant Center et dispose du rôle
- Adresse e-mail du contact développeur : l'adresse e-mail du contact 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 d'API de Google. Elle peut appartenir à un utilisateur ou à un groupe d'utilisateurs. Par défaut, elle reçoit le rôle
API developerdans le compte Merchant Center.
Dois-je accepter l'invitation reçue par l'adresse e-mail du contact développeur ?
Oui. Le destinataire de l'adresse e-mail du contact développeur que vous fournissez dispose de 14 jours pour accepter l'invitation. L'enregistrement n'est terminé qu'une fois l'invitation acceptée. Vous pouvez toutefois effectuer des appels d'API pendant ce délai.
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 redémarrer 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 chaque compte Merchant Center que je souhaite utiliser avec l'API Merchant ?
Non. Si vous êtes un développeur tiers ou une agence qui gère les comptes de plusieurs marchands, vous enregistrez votre projet Google Cloud avec votre propre compte Merchant Center principal, et non avec chacun des comptes de vos marchands. De cette façon, vous représentez le développeur pour tout le travail 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é avec 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 cet ID de compte existant comme compte Merchant Center principal.
- Services de comparaison de prix (SCP) : si vous êtes un SCP, utilisez votre ID de compte SCP unique ou votre ID de compte de groupe SCP.
- Agences, développeurs et autres tiers : si vous êtes une entreprise tierce, telle qu'une agence ou un développeur tiers, qui gère plusieurs comptes marchand 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 n'importe quel autre compte Merchant Center auquel 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 seul projet Google Cloud ne peut être enregistré que dans un seul compte Merchant Center à la fois. Toutefois, un seul compte Merchant Center peut avoir plusieurs projets Google Cloud enregistrés. De même, vous pouvez utiliser la même adresse e-mail de développeur pour effectuer plusieurs enregistrements, sur 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 tentez d'enregistrer un projet Google Cloud déjà enregistré dans un autre compte Merchant Center, une erreur ALREADY_REGISTERED se produit.
Comment authentifier l'appel d'API d'enregistrement des développeurs ?
Pour authentifier l'appel d'API d'enregistrement des développeurs pour l'API Merchant, vous utilisez des identifiants gérés via un projet Google Cloud. Vous disposez de deux options principales pour l'identité qui effectue l'authentification :
- Compte Google tel que Gmail 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 réussisse, l'identité d'authentification (compte Google ou compte de service) doit répondre aux critères suivants dans le compte Merchant Center :
- Existe en tant qu'utilisateur dans le compte Merchant Center : l'adresse e-mail associée au compte Google d'authentification ou au compte de service doit être ajoutée en tant qu' utilisateur dans le compte Merchant Center que vous enregistrez.
- Rôle d'administrateur requis : ce rôle doit être attribué à cet utilisateur
ADMINdans le compte Merchant Center spécifique.
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.
L'utilisateur d'authentification n'est pas forcément le même que l'utilisateur du contact développeur. Pour en savoir plus, consultez Quelle est la différence entre l'adresse e-mail d'authentification et celle du contact 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 cela est nécessaire.
- Les flux OAuth 2.0 utilisent un refresh_token pour appeler le point de terminaison de jeton Google OAuth2 afin de recevoir un nouveau jeton d'accès d'une heure.
Nous vous recommandons vivement d'utiliser les bibliothèques d'authentification Google 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 le compte Merchant Center ?
Non. Si le compte de messagerie d'enregistrement n'existe pas déjà dans le compte Merchant Center, l'API Merchant crée le compte dans le compte Merchant Center avec l'adresse e-mail spécifiée, et l'état "En attente". Si l'adresse e-mail du développeur appartient à un utilisateur existant dans le compte Merchant Center, le rôle API_DEVELOPER lui est automatiquement attribué.
L'adresse e-mail du contact développeur doit-elle disposer de droits d'administrateur dans le compte Merchant Center ?
Non. L'utilisateur Merchant Center associé à l'adresse e-mail du contact développeur reçoit par défaut le rôle API_DEVELOPER, qui est requis pour recevoir des notifications importantes. Toutefois, il dispose d'autorisations minimales dans le compte Merchant Center. Pour autoriser cet utilisateur à effectuer d'autres appels d'API ou à gérer les paramètres dans l'interface utilisateur de 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 qui dispose de droits minimaux dans le
compte Merchant Center. Si vous prévoyez d'utiliser l'adresse e-mail du contact développeur pour autoriser les appels adressés à 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 utilisateur développeur ou compte de service qui appelle l'API ?
Non. L'enregistrement des développeurs 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 est enregistré dans votre compte Merchant Center principal, vous pouvez utiliser n'importe quelle identité gérée via le projet Google Cloud associé à l'aide d'identifiants OAuth ou de comptes de service pour autoriser les appels d'API Merchant, à condition qu'ils existent dans votre compte Merchant Center et que le rôle ADMIN leur soit attribué.
Comment modifier l'adresse e-mail du contact développeur après l'enregistrement initial ?
Pour gérer ou modifier les contacts, utilisez le service standard accounts.users ou
la page "Accès et services" de l'interface utilisateur de 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 ?
Une période de grâce de 30 jours est déclenchée pour éviter une interruption immédiate du service. Pendant ce délai :
- Les administrateurs recevront trois annonces de service obligatoires 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 nouveau
API Developern'est ajouté avant l'expiration de la période de grâce, les appels d'API provenant des projets Google Cloud associés seront bloqués avec uneAUTH_GCP_NOT_REGISTEREDerreur.
À la fin de la période de grâce de 30 jours, les appels d'API provenant des projets Google Cloud associés sont bloqués et reçoivent une erreur AUTH_GCP_NOT_REGISTERED jusqu'à ce qu'un contact développeur valide soit rétabli.
Que se passe-t-il si l'ID Merchant Center dans lequel l'enregistrement du développeur est effectué 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 unregisterGcp pour supprimer le lien en toute sécurité, puis procéder à la suppression de l'ID Merchant Center. Si vous souhaitez continuer à utiliser l'API Merchant, vous devez vous enregistrer avec un autre ID Merchant Center juste après avoir annulé l'enregistrement de 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 marchand. Quelle est la meilleure façon de configurer cela ?
Les développeurs et agences 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 dans le compte de chaque marchand.
Comment fonctionne l'enregistrement pour Google Apps Script ?
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é dans un projet Google Cloud spécifique à l'aide de la getAccountForGcpRegistration. Pour supprimer un lien de projet Google Cloud vers votre compte Merchant Center, utilisez la unregisterGcp unregisterGcp.