REST API Importation des produits

Utilisez cette ressource pour mettre à jour la base de données des produits dans Quant. Le format d'entrée et de sortie est actuellement le JSON.

L'importation n'est accessible qu'à un utilisateur Quant ayant le rôle Robot et disposant de cette importation activée dans les paramètres. Sinon, l'importation ne sera pas effectuée et l'attribut status de la réponse contiendra un message d'erreur :

HTTP 401 {"token":<TOKEN>,"status":"User is not authorized for this Resource."} 

  • Requête
Paramètre
Valeur
URL
/productDataImport/json
Debug
Ajoutez ?debug à l'URL pour afficher aussi les avertissements. Sinon, seules les messages d'erreurs sont affichés.
Header
Accept: application/json
Header
Content-type: application/json
Header

Authorization: Bearer  <TOKEN>

Le TOKEN s'obtient via /authenticate (voir la section Connexion).

Méthode
POST
Payload

[{id1:value1, id2:value2}, {id1:value3, id2:value4}]

Un tableau d'objets JSON, chacun décrivant un produit dans Quant.

  • Attributs

Les paramètres d'importation sont aussi définis dans l'utilisateur (voir Figure 1).

Attribut
Description
Type
Activé
Spécifie si la tâche automatique est active et peut recevoir des données.
oui/non
Titre
Nom personnalisé de la tâche automatique.
texte
Description
Description personnalisée du rôle de la tâche automatique.
texte formaté
Remarques
Notes.
texte long
Attribut de correspondance

Attribut produit dans Quant utilisé pour faire correspondre les éléments importés aux produits dans Quant. L'attribut sélectionné ici doit avoir une correspondance dans le Mappage des attributs produit, sinon l'importation échoue et renvoie une erreur :

HTTP 200 {"token":"<TOKEN>","status":"FAILURE","Errors":["Mapping not found for required attribute: Primary Product ID]}

selection
Créer de nouveaux produits 
Si activé, crée de nouveaux produits pour les ID inexistants.
Cette option est active uniquement si l'ID produit primaire est sélectionné dans l'attribut de correspondance.
oui/non
Définir les nouveaux produits pour planogrammes
Si activé, les nouveaux produits sont utilisés pour créer des planogrammes. Cette option est active uniquement si l'option Créer de nouveaux produits est activée.
oui/non
Ignorer les produits supprimés
Par défaut, lorsque l'importation ne trouve pas de produit actif pour un ID donné, la recherche s'effectue parmi les produits supprimés. Si un produit supprimé est trouvé, il est réactivé. L'activation de cette option permet d'ignorer les produits supprimés au lieu de les réactiver.
oui/non
Mappage des attributs produit

Un mappage contenant une entrée pour chaque attribut à importer. Cet élément définit la manière dont les valeurs de l'entrée sont interprétées (voir illustration ci-dessous). Pour plus de détails, consultez Mappage des attributs.

type complexe
Unité de mesure 
Unité comme cm, mm, etc.
sélection

Séparateur décimal

Caractère utilisé pour séparer les entiers des décimales. Si la virgule est sélectionnée, les valeurs numériques doivent également être placées entre guillemets, car la virgule sépare les attributs dans JSON.

symbole

Valeur chaîne pour VRAI

Texte qui sera considéré (quelle que soit la casse) comme « Oui » pour les attributs oui/non. Toutes les autres valeurs sont traduites par « Non ».
texte
Format de date
Format de date, par ex. 31.12.19
sélection


  • Mappage des attributs produits

  • Mappage des attributs
Attribut
Description
Type
Attribut Produit
Attribut mis à jour avec cette valeur.
sélection
Clé
Textes de clés au format JSON.
texte
Nécessite approbation
Les modifications sont immédiatement appliquées aux produits ou uniquement enregistrées dans l'onglet « Modifications en attente d'approbation » dans la section Produits de Quant, où elles peuvent ensuite être approuvées ou rejetées.
oui/non

Remplacement de valeur

Définit une liste de mappage dans laquelle la valeur textuelle de l'entrée est remplacée par une autre valeur avant la conversion vers un type d'attribut spécifique.
type complexe
  • Réponse
Paramètre
Valeur
Corps
{"token":<TOKEN>,"status":"<STATUS>,"Total Lines":<LINE_COUNT>,"Ignored Products":<IGNORED>, "Duplicated Products":<DUPLICATED>,"Errors":[ERRORS], "Warnings":[WARNINGS]"}


Attribut
Description
Type
Token
Jeton d'authentification de l'utilisateur.
texte
Status
SUCCES si tout a été importé correctement, PARTIAL_SUCCESS si l'importation a réussi, mais que certains enregistrements n'ont pas été importés, et FAILURE si une erreur inattendue a interrompu prématurément l'importation.
texte
Total Lines
Nombre d'enregistrements d'entrée.
numéro
Ignored Products

Nombre d'enregistrements non importés pour les raisons suivantes :

  • « Attribut de correspondance » manquant ou vide dans l'enregistrement
  • impossible de trouver un produit actif correspondant et le paramètre « Créer de nouveaux produits » est désactivé ou il existe un produit supprimé correspondant et le paramètre « Ignorer les produits supprimés » est activé
numéro
Duplicated Products

Nombre d'enregistrements contenant la valeur « Attribut correspondant » qui apparaissait précédemment dans les enregistrements. Ces enregistrements sont ignorés afin d'éviter que les modifications ne soient écrasées.

numéro
Errors
Tableau d'objets JSON décrivant les erreurs.
Tableau JSON
Warnings
Tableau d'objets JSON décrivant l'avertissement (uniquement si la requête contenait le paramètre debug = true).
Tableau JSON
  • Journal d'exécution

Dans Quant, en plus des paramètres d'importation sur le robot, vous pouvez consulter l'historique des importations individuelles, avec les statistiques, erreurs, avertissements et informations générales.

Journal d'exécution

Si vous sélectionnez un enregistrement spécifique, vous pouvez afficher ses détails en cliquant sur le bouton Afficher les éléments. Après avoir marqué les éléments sélectionnés, cliquez sur Télécharger les fichiers. Ces fichiers contiennent les données d'entrée pour l'importation donnée.

Télécharger les fichiers
  • Requête

curl -H "accept: application/json" -H "content-type: application/json" -H "Authorization: Bearer i37YKbgCnJSXe2nvIrHA1fE8bLIE4RqROu4l1A- OTzHZXSmZ3CX"
https://[YOUR_COMPANY].iquant.eu/productDataImport/json?debug=true -d
"[{\"productId\":\"500001\",\"Store_ID\":\"1\",\"Sales Price\":\"1.23\"},{\"productId\":\"500001\",\"Store_ID\":\"2\",\"Sales Price\":\"2.34\"}]"

Cet exemple illustre la mise à jour du prix d'un produit dans deux magasins après avoir obtenu le TOKEN en se connectant.

  • Réponse

{"token":"i37YKbgCnJSXe2nvIrHA1fE8bLIE4RqROu4l1AOTzHZXSmZ3CX","status":"SUCCESS","Total Lines":2,"Ignored Products":0, "Unknwon Store IDs":0,"Warnings":["There is a mapping with empty REST Element for attribute: Club Price"]}

Cette réponse indique que l'importation a été effectuée avec succès, avec un avertissement. Vous trouverez les détails et les statistiques dans Quant.