Cette approche d'interaction avec l'API Merchant consiste à envoyer des requêtes brutes directement aux points de terminaison de l'API, généralement via HTTP(S). Vous gérez manuellement des aspects tels que la formation du corps de la requête, la définition des en-têtes (y compris l'authentification) et l'analyse de la réponse.
Étape 1 : S'inscrire comme développeur
Pour utiliser Merchant API, vous devez enregistrer les coordonnées de votre développeur.
L'enregistrement permet d'effectuer les actions suivantes :
- Crée un contact technique pour votre compte Merchant Center en attribuant le rôle
API developer
à un utilisateur. Cela permet à Google d'envoyer des informations importantes concernant spécifiquement l'API et les fonctionnalités utilisées par le développeur, comme des annonces de service et des informations sur les nouvelles fonctionnalités, qui peuvent être moins intéressantes pour les non-développeurs. - Vous permet de travailler avec plusieurs comptes marchands sans avoir à vous inscrire plusieurs fois. Lorsque vous vous inscrivez, l'ID du projet Google Cloud utilisé pour l'authentification auprès de l'API Merchant est associé à votre compte Merchant Center, qui contient les contacts techniques (les
API developer
). Vous pourrez ainsi recevoir des informations importantes pour tous les comptes marchands que vous gérez, à condition que l'authentification soit effectuée avec le projet Google Cloud enregistré.
Lors de l'inscription, respectez les conditions requises et les restrictions détaillées dans la section Inscription.
Pour vous inscrire à l'aide de la méthode developerRegistration.registerGcp
, vous pouvez commencer par cet exemple, en remplaçant {DEVELOPER_EMAIL}
par l'adresse e-mail appropriée dans le corps de la 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"
]
}
Étape 2 : Gérer les contacts et les autorisations des développeurs
Lorsque vous vous inscrivez :
- Si l'adresse e-mail appartient à 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
.
Après l'inscription initiale, nous vous recommandons d'ajouter plusieurs développeurs et de leur accorder des droits d'accès supplémentaires.
Étape 2a : 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"
]
}
Étape 2b : 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 avec accounts.users.patch
.
Nous vous recommandons d'attribuer à cet utilisateur les rôles ADMIN
et API_DEVELOPER
.
Étape 3 : 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
{
"primaryProductDataSource": {
"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": {
"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" ?
Étape 4 : Insérer un produit
Une fois la source de données créée, essayez d'y insérer un produit. Exécutez la commande suivante en fournissant le bon ACCOUNT_ID
. Remplacez {DATASOURCE_NAME} par la valeur que vous avez copiée précédemment.
POST https://merchantapi.googleapis.com/products/v1/accounts/{ACCOUNT_ID}/productInputs:insert?dataSource={DATASOURCE_NAME}
{
"contentLanguage": "en",
"feedLabel": "US",
"name": "Red T-shirt",
"productAttributes": {
"gender": "MALE",
"brand": "New brand"
},
"offerId": "tshirt-123"
}
Une fois cette requête exécutée, la réponse suivante devrait s'afficher :
{
"name": "accounts/{ACCOUNT_ID}/productInputs/en~US~tshirt-123",
"product": "accounts/{ACCOUNT_ID}/products/en~US~tshirt-123",
"offerId": "tshirt-123",
"contentLanguage": "en",
"feedLabel": "US",
"productAttributes": {
"brand": "New brand",
"gender": "MALE"
}
}
L'ID du produit nouvellement créé est 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.