Documentation à l’adresse des développeurs pour l’utilisation de l’API de pilotage des données et des traitements pour le Fonds Réparations EEE.
Version =
État | ||||
---|---|---|---|---|
|
Sommaire | ||||
---|---|---|---|---|
|
Historique des versions
version initiale (à déployer)État colour RedGreen title version 1.0
Objectifs
Cette API permet l’intégration des étapes de traitements et l'échange des données entre les applications métiers de réparateur et le système d’information gérant les données de soutien pour le Fond Réparations EEE.
Basée sur les standards JSON Rest, elle s’adresse aux intégrateurs et développeurs.
Diagramme de séquence
Drawio | ||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Exemple de réponse
language | json |
---|
Spécifications de l’API
Authentification
Appeler l’API depuis une service nécessite de disposer d’une clé d’authentification à passer dans l'entête HTTP de chacune des requêtes.
Nom de la clé d’entête = api_key
Valeur de la clé = <votre_clé_api> (GUID ex : C8E88146-AF8D-4E95-9B76-8C8FFF5A2C9B)
<votre_clé_api> existe
soit en version de PreProduction à utiliser lors des développements et des tests
soit en version de Production et les appels à l’API déclencheront des actions concrètes et réelles auprès du Fond Réparation EEE.
Attention à ne pas la divulguer. Si jamais vous aviez un doute n’hésitez pas à prévenir le support =
Environnement de développement (Pre Production)
Lexique
Request = demande de soutien
Claim =demande de remboursement
Accéder à l’environnement de développement
Pré requis
Le développement n’a de sens que s’il s’adresse à un réparateur qui dispose d’un compte sur le service e-reparateur.eco (https://www.e-reparateur.eco )
Le développeur doit contacter le support afin de se faire identifier = support@e-reparateur.eco
Procédure
contacter le support support@e-reparateur.eco en demandant à avoir accès à un environnement de production
si votre demande est acceptée vous recevrez par email en réponse
une clé API de PreProduction pour réaliser votre développement
un compte d’accès au service web e-reparateur de Pre-Production sur lequel vous pourrez gérer, vérifier, mettre à jour les différents objets du service
vous pouvez contacter le support par email sur support@e-reparateur.eco
Récupération de votre clé d’authentification
Connectez vous à votre compte e-reparateur et allez dans les propriétés de votre compte.
Vous trouverez 2 clés associées à votre compte
une clé d’API de Pré Production
une clé d’API de Production
TODO = capture de l’interface e-reparateur
Référentiels des données
Les créations de dossier de demande de soutien et de remboursement nécessitent de s’appuyer sur des données de références utilisées par l’API.
Celle-ci permet par contre de récupérer ces référentiels mis à jour régulièrement (au moins 1 fois toutes les 24h)
Récupération de la liste des marques - /PrintBrandList
État | ||||
---|---|---|---|---|
|
URL Preprod = https://preprod-apiecologic.e-reparateur.eco/api/v3/ecosupport/printbrandlist
URL Prod = https://apiecologic.e-reparateur.eco/api/v3/ecosupport/printbrandlist
Fonctions
permet de récupérer la liste des marques supportées par Ecologic.
Appeler cette API vous permettra de disposer d'un code marque unique et de l'associer à votre référentiel.
Usage
entrée = pas de paramètre spécifique
Outils de tests
une fois que vous avez vos accès vous pouvez tester les premiers éléments (notamment votre clé API) avec les outils suivants
SwaggerUI
URL du site SwaggerUI = https://preprod-apiecologic.e-reparateur.eco/apidoc/ui/index#/
une fois votre clé entrée vous pourrez tester les méthodes de l’API
PostMan
Spécifications de l’API
Authentification
Appeler l’API depuis une service nécessite de disposer d’une clé d’authentification à passer dans l'entête HTTP de chacune des requêtes.
Nom de la clé d’entête = api_key
Valeur de la clé = <votre_clé_api> (GUID ex : C8E88146-AF8D-4E95-9B76-8C8FFF5A2C9B)
Info |
---|
<votre_clé_api> existe
Cette clé est unique pour chaque compte e-reparateur.co. |
Récupération de votre clé d’authentification
Connectez vous à votre compte e-reparateur et allez dans les propriétés de votre compte.
Vous trouverez 2 clés associées à votre compte
une clé d’API de Pré Production
une clé d’API de Production
TODO = capture de l’interface e-reparateur
Référentiels des données
Les créations de dossier de demande de soutien et de remboursement nécessitent de s’appuyer sur des données de références utilisées par l’API.
Celle-ci permet par contre de récupérer ces référentiels mis à jour régulièrement (au moins 1 fois toutes les 24h)
Récupération de la liste des marques - /PrintBrandList
État | ||||
---|---|---|---|---|
|
URL Preprod = https://preprod-apiecologic.e-reparateur.eco/api/v3/ecosupport/printbrandlist
URL Prod = https://apiecologic.e-reparateur.eco/api/v3/ecosupport/printbrandlist
Fonctions
permet de récupérer la liste des marques supportées par Ecologic.
Appeler cette API vous permettra de disposer d'un code marque unique et de l'associer à votre référentiel.
Usage
entrée = pas de paramètre spécifique
Exemple de réponse
Bloc de code | ||
---|---|---|
| ||
{
"ResponseData": [
{
"BrandName": "Acer",
"BrandId": "1689"
},
{
"BrandName": "ADVANCE",
"BrandId": "1922"
},
{
"BrandName": "AEG",
"BrandId": "1690"
},
...
],
"ResponseStatus": "S",
"IsValid": true,
"ResponseMessage": "",
"ResponseErrorMessage": ""
} |
Récupérer la liste des types de produit - /PrintProductTypeList
État | ||||
---|---|---|---|---|
|
URL Preprod = https://preprod-apiecologic.e-reparateur.eco/api/v3/ecosupport/printproducttypelist
URL Prod = https://apiecologic.e-reparateur.eco/api/v3/ecosupport/printproducttypelist
Fonctions
permet de récupérer la liste des types de produits supportés par Ecologic.
Appeler cette API vous permettra de disposer d'un code unique pour chaque type de produit afin de l'associer à votre référentiel. Cette API restitue également pour chaque type de produit les symptômes et les codes réparation éligibles au soutien.
Exemple usage
entrée = pas de paramètre spécifique
sortie =
ProductId = Identifiant produit
ProductName =Désignation du type de produit (ex: Four (hors micro-ondes et mini-four))
EligibilityStartDate = Date de début d'éligibilité
EligibilityEndDate = Date de fin d'éligibilité
RepairCodes = Tableau des codes pannes IRIS pouvant être utilisés dans la demande de remboursement (Claim)
IRISSymptoms[] = Liste des codes symptôme IRIS éligibles pour le type de produits et pour Ecologic à utiliser dans la demande de soutien (Request)
Info |
---|
vérifiez la date d'éligibilité afin de vous assurer de ne pas soumettre un dossier avec ce produit avant que celle-ci ne soit valide. |
Exemple de réponse
Bloc de code | ||
---|---|---|
| ||
{ "ResponseData": [ { "ProductId": "EEE.M1.010", "ProductName": "Cave à vin", "EligibilityStartDate": "2022-01-01T00:00:00", "EligibilityEndDate": "9999-12-31T00:00:00", "RepairCodes": [ "XXX", "PSP", "G12", "G13", "C05", "C01", "C10", "SFT" ], "IRISSymtoms": [ "004", "006", "BrandName": "Acer012", "013", "BrandId": "1689"001", "023" ] }, }, { ... ], "BrandNameResponseStatus": "ADVANCES", "IsValid": true, "ResponseMessage": "", "BrandIdResponseErrorMessage": "1922" }, { " } |
Demandes de soutien
Plusieurs méthodes sont disponibles pour gérer la construction et la soumission d’une demande de soutien, tout en s’assurant que les équipements concernés y seront éligibles.
Calculer le montant du soutien - /CalculateEcoSupport
État | ||||
---|---|---|---|---|
|
URL Preprod = https://preprod-apiecologic.e-reparateur.eco/api/v3/ecosupport/calculateccosupport
URL Prod = https://apiecologic.e-reparateur.eco/api/v3/ecosupport/calculateccosupport
Fonctions
permet de connaître l'éligibilité, l'éco-organisme et le montant du soutien pour un type de produit donné, en fonction du symptôme ou du code section fourni. Cette API n'a pour seul but que de simuler la demande de soutien.
Elle n'effectue aucune demande réelle auprès d'Ecologic.
Données à transmettre
exemple
Bloc de code | ||
---|---|---|
| ||
{ "BrandName": "AEG", "BrandId": "1690" }, ... ]"TotalAmountExclVAT": 120.00, "ResponseStatusTotalAmountExclVAT_Currency": "SEUR", "IsValidBrandId": true8055, "ResponseMessageProductId": ""3032, "ResponseErrorMessageIRISSymtom": "001" } |
Récupérer la liste des types de produit - /PrintProductTypeList
État | ||||
---|---|---|---|---|
|
URL Preprod = https://preprod-apiecologic.e-reparateur.eco/api/v3/ecosupport/printproducttypelist
URL Prod = https://apiecologic.e-reparateur.eco/api/v3/ecosupport/printproducttypelist
Fonctions
permet de récupérer la liste des types de produits supportés par Ecologic.
Appeler cette API vous permettra de disposer d'un code unique pour chaque type de produit afin de l'associer à votre référentiel. Cette API restitue également pour chaque type de produit les symptômes et les codes réparation éligibles au soutien.
Exemple usage
entrée = pas de paramètre spécifique
sortie =
ProductId = Identifiant produit
ProductName =Désignation du type de produit (ex: Four (hors micro-ondes et mini-four))
EligibilityStartDate = Date de début d'éligibilité
EligibilityEndDate = Date de fin d'éligibilité
RepairCodes = Tableau des codes pannes IRIS pouvant être utilisés dans la demande de remboursement (Claim)
IRISSymptoms[] = Liste des codes symptôme IRIS éligibles pour le type de produits et pour Ecologic à utiliser dans la demande de soutien (Request)
Info |
---|
vérifiez la date d'éligibilité afin de vous assurer de ne pas soumettre un dossier avec ce produit avant que celle-ci ne soit valide. |
Données en entrée
TotalAmountExclVAT : Montant total HT de la réparation
TotalAmountExclVAT_Currency : Devise
BrandId: Code de la marque (retourné préalablement par l'API /PrintBrandList)
ProductId : Code du type de produit (retourné préalablement par l'API /PrintProductTypeList)
IRISSymptom : Liste des codes symptôme IRIS éligibles pour le type de produits et pour Ecologic
Données en sortie
EcoOrganizationId: Identifiant e-Reparateur de l'éco-organisme (44=Ecologic, 45=Ecosystem)
SupportAmount: Montant TTC du soutien
Exemple de paramètre en entrée
Exemple de réponse
Bloc de code | ||
---|---|---|
| ||
{
"ResponseData": [
{
"EcoOrganizationId": 44,
"SupportAmount": 10.00
}
],
"ResponseStatus": "S",
"IsValid": true,
"ResponseMessage": "",
"ResponseErrorMessage": ""
} |
Gestion des erreurs
si le produit ou la marque n’est pas connu vous aurez une réponse similaire à
Bloc de code | ||
---|---|---|
| ||
{
"ResponseData": null,
"ResponseStatus": "W",
"IsValid": false,
"ResponseMessage": "Produit pas valide",
"ResponseErrorMessage": null
} |
Si le symptôme ne correspond pas au code IRIS du produit l’erreur sera
Bloc de code | ||
---|---|---|
| ||
{
"ResponseData": |
null, "ResponseStatus": "W", |
"IsValid": false, "ResponseMessage": "Symptôme pas valide", " |
ResponseErrorMessage": |
null
} |
Si la fiche de compétence (ou fiche métier) associée au produit soumis, issue de la labélisation, n’est pas associée au site faisant la demande un refus sera retourné
Bloc de code |
---|
{ "ResponseData": null, " |
ResponseStatus": " |
W", "IsValid": false, |
" |
ResponseMessage": " |
Votre compte n'est pas autorisé à effectuer une demande de soutien pour ce type de produit.", "ResponseErrorMessage": |
null
} |
Effectuer la demande de soutien - /CreateSupportRequest
État | ||||
---|---|---|---|---|
|
URL Preprod = https://preprod-apiecologic.e-reparateur.eco/api/v3/ecosupport/createsupportrequest
URL Prod = https://apiecologic.e-reparateur.eco/api/v3/ecosupport/createsupportrequest
Fonctions
Permet de soumettre la demande de soutien en vue d'obtenir la vérification du consommateur.
Remarque |
---|
Cette étape est obligatoire, car l'Id de la demande sera demandé lors de la création de la demande de remboursement. |
Données à transmettre
exemple
Bloc de code | ||
---|---|---|
| ||
{ "RepairCodesConsumer": [{ "Title": 1, "LastName": "XXX""Test Nom", "FirstName": "Test prénom", "PSP"StreetNumber": "15", "Address1": "Avenue du Centre", "G12"Address2": "", "Address3": "", "G13"Zip": "78280", "City": "GUYANCOURT", "C05"Country": "250", "Phone": "0600000000", "C01"Email": "test@egmail.com", "AutoValidation": true }, "Product": { "ProductId": "C10EEE.M5.024", "BrandId": "2194", "CommercialRef": "Repasse Plus"SFT", "SerialNumber": "ABCDE", ]"PurchaseDate": "2020-10-06", "IRISCondition": "", "IRISSymtomsIRISConditionEX": ["", "IRISSymptom": "013", "IRISSection": "", "004IRISDefault": "", "IRISRepair": "", "FailureDescription": "Symptome code IRIS 013"006", "DefectCode": "" }, "Quote": { "012LaborCost",: { "Amount": 20.00, "Currency": "013EUR", }, "SparePartsCost": { "001""Amount": 10.00, "Currency": "EUR" }, "023TravelCost": { "Amount": 0.00, ] "Currency": "EUR" }, "TotalAmountExclVAT": { ... ]"Amount": 100.00, "ResponseStatusCurrency": "S"EUR" }, "IsValidTotalAmountInclVAT": true,{ "ResponseMessageAmount": ""106.00, "ResponseErrorMessageCurrency": "EUR" } |
Demandes de soutien
Plusieurs méthodes sont disponibles pour gérer la construction et la soumission d’une demande de soutien, tout en s’assurant que les équipements concernés y seront éligibles.
Calculer le montant du soutien - /CalculateEcoSupport
État | ||||
---|---|---|---|---|
|
URL Preprod = https://preprod-apiecologic.e-reparateur.eco/api/v3/ecosupport/calculateccosupport
URL Prod = https://apiecologic.e-reparateur.eco/api/v3/ecosupport/calculateccosupport
Fonctions
permet de connaître l'éligibilité, l'éco-organisme et le montant du soutien pour un type de produit donné, en fonction du symptôme ou du code section fourni. Cette API n'a pour seul but que de simuler la demande de soutien.
Elle n'effectue aucune demande réelle auprès d'Ecologic.
Données à transmettre
exemple
Bloc de code | ||
---|---|---|
| ||
{ "TotalAmountExclVAT": 120.00, }, "SupportAmount": { "Amount": 10.00, "Currency": "EUR" } }, "SpareParts": [ { "TotalAmountExclVAT_CurrencyPartref": "EUR", "BrandIdQuantity": 80550, "ProductIdStatus": 3032,"" } ] "IRISSymtom": "001" } |
Données en entrée
TotalAmountExclVAT : Montant total HT de la réparation
TotalAmountExclVAT_Currency : Devise
BrandId: Code de la marque (retourné préalablement par l'API /PrintBrandList)
ProductId : Code du type de produit (retourné préalablement par l'API /PrintProductTypeList)
IRISSymptom : Liste des codes symptôme IRIS éligibles pour le type de produits et pour Ecologic
Données en sortie
EcoOrganizationId: Identifiant e-Reparateur de l'éco-organisme (44=Ecologic, 45=Ecosystem)
SupportAmount: Montant TTC du soutien
Exemple de paramètre en entrée
}
|
Données en entrée
Dans les paramètres
CallDate= date de référence de l’appel à l’API
RepairSiteId= ID de votre compte e-reparateur.eco
QuoteNumber= numéro du devis
Dans le body
il y a 3 sections importantes
Consumer : fourni
identité
Title -> 1 : Mrs. ; 2 : Ms. ; 3 : Mr. ; 4 : Société
adresse
Country: 250 pour la France (List of ISO 3166 country codes - Wikipedia )
téléphone = très important en cas de mode de vérification par SMS
email
Product : défini tous les paramètres du produit en réparation
ProductID = code du produit du référentiel
BrandID = code de la marque
SerialNumber = numéro de série
IRISSymptom = code IRIS de symptôme retenu associé au produit (doit correspondre à une entrée du référentiel retourné par PrintProductTypeList
FailureDescription = description des symptômes de la panne (ou de la panne)
Quote : défini les montants du devis associé à la demande
Données en sortie
RequestId: Identifiant de la demande de soutien
Cet ID unique sera à fournir pour toute référence à la demande de soutien qui vient d'être créée.
Exemple de réponse
Bloc de code | ||
---|---|---|
| ||
{ "ResponseData": [ { "EcoOrganizationId": 44, "SupportAmountRequestId": 10.00 } ], 5310857, "ResponseStatus": "S", "IsValid": true, "ResponseMessage": ""}, "ResponseErrorMessageResponseStatus": "" } |
Gestion des erreurs
si le produit ou la marque n’est pas connu vous aurez une réponse similaire à
language | json |
---|
"S", " |
IsValid": |
true, " |
ResponseMessage": " |
",
" |
ResponseErrorMessage": |
Si le symptôme ne correspond pas au code IRIS du produit l’erreur sera
language | json |
---|
""
} |
Gestion des modes SMS ou Offline
il est possible de déclencher une demande de soutien en utilisant 2 modes différents
mode SMS = le consommateur se verra envoyé un SMS avec un lien vers une page web lui permettant de valider la demande créée par le réparateur afin de s’assurer de la légitimité de la procédure en cours
mode Offline = le consommateur n’est pas sollicité par SMS. Cela permet de traiter les cas où ce dernier n’est pas en situation de traiter un SMS (téléphone en panne, manque de pratique…)
Le consommateur doit alors signer un document qui devra être transmis avec la demande de remboursement.
Info |
---|
si le mode Offline est utilisé, toute demande de remboursement à laquelle ne sera pas joint le document signé par le consommateur ne sera pas validable pour être traitée par Ecologic. |
le mode Offline est déclenché en ajoutant le paramètre "AutoValidation": true
dans la structure des informations pour "Consumer"
Bloc de code |
---|
{ "Consumer": { "ResponseDataTitle": null1, "ResponseStatusLastName": "W", "IsValid": falseTest Nom", "ResponseMessageFirstName": "SymptômeTest pas valideprénom", "ResponseErrorMessageStreetNumber": null } |
Si la fiche de compétence (ou fiche métier) associée au produit soumis, issue de la labélisation, n’est pas associée au site faisant la demande un refus sera retourné
Bloc de code |
---|
{"15", "Address1": "Avenue du Centre", "ResponseDataAddress2": null"", "ResponseStatusAddress3": "W", "IsValidZip": false"78280", "ResponseMessageCity": "Votre compte n'est pas autorisé à effectuer une demande de soutien pour ce type de produit.GUYANCOURT", "Country": "250", "Phone": "0600000000", "Email": "test@egmail.com", "ResponseErrorMessageAutoValidation": nulltrue } |
, |
💡 Ne rien mettre ou mettre "AutoValidation": false sont équivalents
Suivre le statut de la demande de soutien - /
CreateSupportRequestGetSupportRequestStatus
État | |
---|---|
|
|
|
URL Preprod = https://preprod-apiecologic.e-reparateur.eco/api/v3/ecosupport/createsupportrequestgetsupportrequestStatus
URL Prod = https://apiecologic.e-reparateur.eco/api/v3/ecosupport/createsupportrequestgetsupportrequestStatus
Fonctions
Permet de soumettre la permet de savoir si le consommateur a donné sa validation pour une demande de soutien en vue d'obtenir la vérification du consommateur.
Remarque |
---|
Cette étape est obligatoire, car l'Id de la demande sera demandé lors de la création de la demande de remboursement. |
Données à transmettre
exemple
language | json |
---|
donnée.
Données en entrée
Dans les paramètres
RequestId = Id de votre dossier issu de la réponse à CreateSupportRequest
Ex : /GetSupportRequestStatus?RequestId=1564
Données en sortie
LastStatus: Dernier statut de la demande de soutien
mode SMS non validé par le consommateur =
"En attente de validation consommateur"
mode SMS validé par le consommateur ou mode offline :
"Validé par le consommateur"
refusé
Exemple de réponse
Bloc de code | ||
---|---|---|
| ||
{ "ResponseData": [ { "RequestId": 5310857, "TitleLastStatus": 1,"Validé par le consommateur", "LastNameComment": "Test Nom",Symptome code IRIS 013", "FirstNameCreateDate": "Test prénom""2023-03-01T15:49:50.4" } ], "StreetNumberResponseStatus": "15S", "Address1IsValid": true, "Avenue du CentreResponseMessage": "", "Address2ResponseErrorMessage": "", "Address3": "", "Zip": "78280", "City": "GUYANCOURT", "Country": "250", "Phone": "0600000000", "Email": "test@egmail.com"," } |
Effectuer la demande de soutien - /UpdateSupportRequest
État | ||||
---|---|---|---|---|
|
URL Preprod = https://preprod-apiecologic.e-reparateur.eco/api/v3/ecosupport/updatesupportrequest
URL Prod = https://apiecologic.e-reparateur.eco/api/v3/ecosupport/updatesupportrequest
Fonctions
permet de mettre à jour, compléter une demande de soutien (Request) avec un jeu de données
Remarque |
---|
Une demande de soutien (Request) validée par le consommateur ne peut plus être modifiée Donc si en mode SMS le consommateur a validé ou si le processus est en mode Offline, la demande de modification retournera une erreur |
Données en entrée
Dans les paramètres
RequestId = Id de votre dossier issu de la réponse à CreateSupportRequest
Ex : /GetSupportRequestStatus?RequestId=1564
Données en sortie
RequestId : numéro du dossier de soutien (request)
IsValid : true si le dossier est prêt à être soumis
Exemple de réponse
Bloc de code | ||
---|---|---|
| ||
{ "AutoValidationResponseData": true },{ "Product": { "ProductIdEcoOrganizationId": "EEE.M5.024", 44, "BrandId": "2194", "CommercialRefRequestId": "Repasse Plus"5310864, "SerialNumber": "ABCDE", "PurchaseDateIsValid": "2020-10-06",true "IRISCondition": ""}, "IRISConditionEXResponseStatus": "S", "IRISSymptomIsValid": "013"true, "IRISSectionResponseMessage": "", "IRISDefaultResponseErrorMessage": "", "IRISRepair": "", "FailureDescription": "Symptome code IRIS 013", "DefectCode": "" }, "Quote": { "LaborCost": { "Amount": 20.00, "Currency": "EUR" }, "SparePartsCost": { "Amount": 10.00, "Currency": "EUR" } } |
Gestion des demandes de remboursement
Une fois le dossier de soutien accepté et validé par le consommateur, la demande de remboursement peut être créée et gérée.
Créer une demande de remboursement - /CreateClaim
État | ||||
---|---|---|---|---|
|
URL Preprod = https://preprod-apiecologic.e-reparateur.eco/api/v3/ecosupport/createclaim
URL Prod = https://apiecologic.e-reparateur.eco/api/v3/ecosupport/createclaim
Fonctions
permet d'effectuer la demande de remboursement (Claim) en convertissant une demande de soutien (Request)
En retour de cet appel, vous obtiendrez l'ID de votre demande de remboursement (ClaimId), qu'il vous faudra utiliser pour corriger les erreurs de validation, pour ajouter les pièces jointes requises et finalement soumettre votre demande.
Données à transmettre
exemple
Bloc de code | ||
---|---|---|
| ||
{ "Consumer": { "Title": 1, "LastName": "Test Nom", "TravelCostFirstName": {"Test prénom", "AmountStreetNumber": 0.00"15", "CurrencyAddress1": "EUR"Avenue }du Centre", "TotalAmountExclVATAddress2": { "Amount": 100.00, "CurrencyAddress3": "EUR" }, "TotalAmountInclVATZip": { "Amount78280": 106.00, "CurrencyCity": "EUR" }GUYANCOURT", "SupportAmountCountry": { "250", "AmountPhone": 10.00"0600000000", "CurrencyEmail": "EURtest@egmail.com", }"AutoValidation": false }, "SparePartsProduct": [{ { "ProductId": "EEE.M5.024", "PartrefBrandId": "2194", "QuantityCommercialRef": 0"Repasse Plus", "StatusSerialNumber": "ABCDE" , } ] } |
Données en entrée
Dans les paramètres
CallDate= date de référence de l’appel à l’API
RepairSiteId= ID de votre compte e-reparateur.eco
QuoteNumber= numéro du devis
Dans le body
il y a 3 sections importantes
Consumer : fourni
identité
Title -> 1 : Mrs. ; 2 : Ms. ; 3 : Mr. ; 4 : Société
adresse
Country: 250 pour la France (List of ISO 3166 country codes - Wikipedia )
téléphone = très important en cas de mode de vérification par SMS
email
Product : défini tous les paramètres du produit en réparation
ProductID = code du produit du référentiel
BrandID = code de la marque
SerialNumber = numéro de série
IRISSymptom = code IRIS de symptôme retenu associé au produit (doit correspondre à une entrée du référentiel retourné par PrintProductTypeList
FailureDescription = description des symptômes de la panne (ou de la panne)
Quote : défini les montants du devis associé à la demande
Données en sortie
RequestId: Identifiant de la demande de soutien
Cet ID unique sera à fournir pour toute référence à la demande de soutien qui vient d'être créée.
Exemple de réponse
Bloc de code | ||
---|---|---|
| ||
{ "PurchaseDate": "2020-10-06", "IRISCondition": "", "IRISConditionEX": "", "IRISSymptom": "", "ResponseDataIRISSection": {"G18", "IRISDefault": "", "EcoOrganizationIdIRISRepair": 44"", "FailureDescription": "Code IRIS Symptome 013", "RequestIdDefectCode": 5310857, "" }, "Quote": { "LaborCost": { "Amount": 20.00, "IsValidCurrency": true"EUR" }, "ResponseStatusSparePartsCost": "S", { "IsValidAmount": true10.00, "ResponseMessageCurrency": "EUR" }, "ResponseErrorMessageTravelCost": { "" } |
Gestion des modes SMS ou Offline
il est possible de déclencher une demande de soutien en utilisant 2 modes différents
mode SMS = le consommateur se verra envoyé un SMS avec un lien vers une page web lui permettant de valider la demande créée par le réparateur afin de s’assurer de la légitimité de la procédure en cours
mode Offline = le consommateur n’est pas sollicité par SMS. Cela permet de traiter les cas où ce dernier n’est pas en situation de traiter un SMS (téléphone en panne, manque de pratique…)
Le consommateur doit alors signer un document qui devra être transmis avec la demande de remboursement.
Info |
---|
si le mode Offline est utilisé, toute demande de remboursement à laquelle ne sera pas joint le document signé par le consommateur ne sera pas validable pour être traitée par Ecologic. |
le mode Offline est déclenché en ajoutant le paramètre "AutoValidation": true
dans la structure des informations pour "Consumer"
"Amount": 0.00, "Currency": "EUR" }, "TotalAmountExclVAT": { "Amount": 100.00, " |
Currency": |
"EUR" }, "TotalAmountInclVAT": { " |
Amount": 106.00, |
|
" |
Currency": " |
EUR" }, " |
SupportAmount": |
{ " |
Amount": |
10.00, " |
Currency": "EUR" |
|
} }, " |
SpareParts": [ |
{ |
|
" |
Partref": " |
", " |
Quantity": |
0, " |
Status": " |
" |
} |
|
] } |
💡 Ne rien mettre ou mettre "AutoValidation": false sont équivalents
Suivre le statut de la demande de soutien - /GetSupportRequestStatus
État | ||||
---|---|---|---|---|
|
URL Preprod = https://preprod-apiecologic.e-reparateur.eco/api/v3/ecosupport/getsupportrequestStatus
URL Prod = https://apiecologic.e-reparateur.eco/api/v3/ecosupport/getsupportrequestStatus
Fonctions
permet de savoir si le consommateur a donné sa validation pour une demande de soutien donnée.
Données en entrée
Dans les paramètres
RequestId = Id de votre dossier issu de la réponse à CreateSupportRequest
Ex : /GetSupportRequestStatus?RequestId=1564
Données en sortie
LastStatus: Dernier statut de la demande de soutien
Waiting: en attente,
Accepted: Acceptée,
Refused: Refusée
|
Données en entrée
Dans les paramètres
ex : /CreateClaim?RequestId=1564&RepairEndDate=2022-06-27T11:50:37.913Z&RepairSiteId=54654&ConsumerInvoiceNumber=132564
RequestId = date de référence du dossier de demande de soutien, issue de la réponse à CreateSupportRequest
RepairEndDate = Date de référence de la fin de réparation (ISO8601)
RepairSiteId = ID de votre compte e-reparateur.eco
ConsumerInvoiceNumber = numéro de référence de votre facture cliente
quoteNumber
= numéro de référence interne chez le réparateurÉtat colour Blue title optionnel
Dans le body
Remarque |
---|
Vérifiez bien la liste des champs obligatoires dans le Swagger et dans le fichier YAML ou JSON de l’API |
IRISSection = il faut intégrer le code panne IRIS parmi celles associées au produit dans le référentiel
Données en sortie
ClaimId : Identifiant du dossier de remboursement
IsValid : indique si le dossier de remboursement est valide (true ou false)
ValidationErrors : tableau des erreurs détectées si IsValid = false
Exemple de réponse
Bloc de code | ||
---|---|---|
| ||
{ "ResponseData": [ { "RequestId": 1564, "LastStatus": "Waiting", "CommentClaimId": ""5310865, "CreateDateIsValid": "2022-06-24T15:16:22.110Z" false, } ], "ResponseStatusValidationErrors": "string",[ "IsValid": true, "ResponseMessage": "string", { "ResponseErrorMessage": "string" } |
Gestion des demandes de remboursement
Une fois le dossier de soutien accepté et validé par le consommateur, la demande de remboursement peut être créée et gérée.
Créer une demande de remboursement - /CreateClaim
État | ||||
---|---|---|---|---|
|
URL Preprod = https://preprod-apiecologic.e-reparateur.eco/api/v3/ecosupport/createclaim
URL Prod = https://apiecologic.e-reparateur.eco/api/v3/ecosupport/createclaim
Fonctions
permet d'effectuer la demande de remboursement.
En retour de cet appel, vous obtiendrez l'ID de votre demande de remboursement (ClaimId), qu'il vous faudra utiliser pour corriger les erreurs de validation, pour ajouter les pièces jointes requises et finalement soumettre votre demande.
Données à transmettre
exemple
Bloc de code | ||
---|---|---|
| ||
{ "Consumer": { "Title": 1, "LastName": "Doe", "FirstName": "John", "StreetNumber": "121", "Address1": "Allée des roses" "Field": "Plaque signalétique", "ErrorMessage": "Des pièces jointes sont requises : Plaque signalétique", "MessageType": "E" }, { "Field": "Facture", "ErrorMessage": "Des pièces jointes sont requises : Facture", "MessageType": "E" } ], "ErrorMessage": "Validation Errors" }, "Address2ResponseStatus": "S", "Address3IsValid": ""true, "ZipResponseMessage": "75010", "City": "Paris", "Country": "250", "Phone": "", "Email": "john.doe@ecologic-france.com" }, "Product": { "ProductId": "3065", "BrandId": "5098", "CommercialRef": "AR8395C", "SerialNumber": "4546545445646", "PurchaseDate": "2016-04-13", "IRISCondition": "6", "IRISConditionEX": "X47", "IRISSymptom": "A53", "IRISSection": "W10", "IRISDefault": "Q", "IRISRepair": "AResponseErrorMessage": "" } |
Ajouter une pièce jointe à la demande de remboursement - /AttachFile
État | ||||
---|---|---|---|---|
|
URL Preprod = https://preprod-apiecologic.e-reparateur.eco/api/v3/ecosupport/AttachFile
URL Prod = https://apiecologic.e-reparateur.eco/api/v3/ecosupport/AttachFile
Fonctions
permet d'ajouter un document à une demande de remboursement.
Info |
---|
Formats supportés en entrée
|
Un dossier de remboursement peut contenir plusieurs types de fichiers
les types de fichiers qui peuvent être joints à une demande :
Info |
---|
|
Info |
---|
Les pièces jointes obligatoires sont :
Toute demande de remboursement qui ne disposerait pas de ces documents sera "non valide" et ne pourra être soumise.
|
Données à transmettre
exemple
Bloc de code | ||
---|---|---|
| ||
{
"FileContent": "KJQFKJSQKJDKJQSJDKLFDSGDGDG5F4D65HG46G4D5FSG456FD4G4SG64FSDG5FD5G46DS5G456FD4G56FDSG654FDS56G4F6DG54FDS6G5FD6SG45FS4D6G4F56D4SG654S6G4F5D4G6S45FD4G45SFD4G65FD4SG65DF46S4"
} |
Données en entrée
Dans les paramètres
ex : /AttachFile?ClaimId=16466&FileName=Facture797&FileExtension=pdf&DocumentType=Invoice
ClaimId = date de référence du dossier de demande de remboursement, issu de la réponse à CreateClaim
FileName = nom du fichier transmis (sans l’extension)
FileExtension = extension du fichier (voir ci contre)
permet de définir le type
extension sans le point “.”
DocumentType = type de document transmis à intégrer dans la demande (voir les codes identifiants ci contre)
Dans le body
FileContent = contenu du fichier en Base64
Astuce |
---|
pour test exemple d’encodeur Base64 en ligne |
Données en sortie
"Code 200 -> OK"
Le statut de sortie est géré par le statut de la réponse HTTP
Code 200 -> OK
Code 400 -> Bad request
Code 500 -> Internal Error
Mettre à jour, corriger et soumettre la demande de remboursement - /UpdateClaim
État | ||||
---|---|---|---|---|
|
URL Preprod = https://preprod-apiecologic.e-reparateur.eco/api/v3/ecosupport/updateclaim
URL Prod = https://apiecologic.e-reparateur.eco/api/v3/ecosupport/updateclaim
Fonctions
permet de mettre à jour, de corriger et de soumettre la demande de remboursement. La mise à jour n'est plus possible après la soumission de la demande.
Données à transmettre
Exemple (les données ci-dessous de l’exemple sont à mettre à jour; en effet des champs sont obsolètes)
Bloc de code | ||
---|---|---|
| ||
{ "Consumer": { "Title": 1, "LastName": "Test Nom", "FailureDescriptionFirstName": "formationTest de mousseprénom", "DefectCodeStreetNumber": "15", }, "QuoteAddress1": {"Avenue du "LaborCost": {Centre", "AmountAddress2": 70.00, "", "CurrencyAddress3": "EUR" }, "SparePartsCostZip": { "Amount": 180.00, "78280", "CurrencyCity": "EUR" }GUYANCOURT", "TravelCostCountry": { "Amount250": 0, "CurrencyPhone": "EUR" }0600000000", "TotalAmountExclVATEmail": { "Amount": 208.34test@egmail.com", "Currency": "EURAutoValidation": false }, "TotalAmountInclVATProduct": { "AmountProductId": 250"EEE.M5.024", "CurrencyBrandId": "EUR2194", }"CommercialRef": "Repasse Plus", "SupportAmountSerialNumber": {"ABCDE", "AmountPurchaseDate": 50.00, "2020-10-06", "CurrencyIRISCondition": "EUR", } "IRISConditionEX": "", }, "SparePartsIRISSymptom": ["", { "IRISSection": "G18", "PartrefIRISDefault": "407142415/6", "QuantityIRISRepair": 1"", "StatusFailureDescription": "New"Code IRIS Symptome 013", } ] } |
Données en entrée
Dans les paramètres
ex : /CreateClaim?RequestId=1564&RepairEndDate=2022-06-27T11:50:37.913Z&RepairSiteId=54654&ConsumerInvoiceNumber=132564
RequestId = date de référence du dossier de demande de soutien, issue de la réponse à CreateSupportRequest
RepairEndDate = Date de référence de la fin de réparation (ISO8601)
RepairSiteId = ID de votre compte e-reparateur.eco
ConsumerInvoiceNumber = numéro de référence de votre facture cliente
Dans le body
Remarque |
---|
Vérifiez bien la liste des champs obligatoires dans le Swagger et dans le fichier YAML ou JSON de l’API |
Données en sortie
ClaimId : Identifiant du dossier de remboursement
Exemple de réponse
Bloc de code | ||
---|---|---|
| ||
{ "ResponseData": { "DefectCode": "" }, "Quote": { "LaborCost": { "ClaimIdAmount": 1646620.00, "IsValidCurrency": false"EUR" }, "ValidationErrorsSparePartsCost": [{ { "Amount": 10.00, "FieldCurrency": "Consumer.LastNameEUR", }, "ErrorMessageTravelCost": { "MandatoryAmount": 0.00, "MessageTypeCurrency": "EEUR" }, { "TotalAmountExclVAT": { "FieldAmount": "Consumer100.Email"00, "ErrorMessageCurrency": "EUR"Bad email format"}, "TotalAmountInclVAT": { "MessageTypeAmount": "E"106.00, }"Currency": "EUR" ]}, "ErrorMessageSupportAmount": "Validation{ Errors" }, "ResponseStatusAmount": "S"10.00, "IsValid": true, "ResponseMessageCurrency": "EUR", "ResponseErrorMessage": "" } |
Ajouter une pièce jointe à la demande de remboursement - /AttachFile
État | ||||
---|---|---|---|---|
|
URL Preprod = https://preprod-apiecologic.e-reparateur.eco/api/v3/ecosupport/AttachFile
URL Prod = https://apiecologic.e-reparateur.eco/api/v3/ecosupport/AttachFile
Fonctions
permet d'ajouter un document à une demande de remboursement.
Un dossier de remboursement peut contenir plusieurs types de fichiers
Il existe 4 types de fichiers qui peuvent être joints à une demande :
Numéro de série: SerialNumber
Facture: Invoice
Photo: Picture
Bon de dépose: ClaimRequest
Info |
---|
Les pièces jointes obligatoires sont :
Toute demande de remboursement qui ne disposerait pas de ces documents sera "non valide" et ne pourra être soumise.
|
Données à transmettre
exemple
Bloc de code | ||
---|---|---|
| ||
{ "FileContent": "KJQFKJSQKJDKJQSJDKLFDSGDGDG5F4D65HG46G4D5FSG456FD4G4SG64FSDG5FD5G46DS5G456FD4G56FDSG654FDS56G4F6DG54FDS6G5FD6SG45FS4D6G4F56D4SG654S6G4F5D4G6S45FD4G45SFD4G65FD4SG65DF46S4" } }, "SpareParts": [ { "Partref": "", "Quantity": 0, "Status": "" } ] } |
Données en entrée
Dans les paramètres
ex : /AttachFileUpdateClaim?ClaimId=16466&FileName=Facture797&FileExtension=pdf&DocumentType=Invoice5310865&repairEndDate=2023-02-24T11:00:00Z&RepairSiteId=02c867c0-3cef-454d-9a04-3cf8de2dc1c8&consumerInvoiceNumber=FACT_20230301-1"eNumber=REF_INT_20230301-1&Submit=false
ClaimId = date de référence du dossier de demande de remboursementsoutien, issu de la réponse à CreateClaim CreateSupportRequest
FileName = nom du fichier transmis
FileExtension = extension du fichier
permet de définir le type
extension sans le point “.”
DocumentType = type de document transmis à intégrer dans la demande
Dans le body
FileContent = contenu du fichier en Base64
Données en sortie
aucune
Le statut de sortie est géré par le statut de la réponse HTTP
Code 200 -> OK
Code 400 -> Bad request
Code 500 -> Internal Error
RepairEndDate = Date de référence de la fin de réparation (ISO8601)
RepairSiteId = ID de votre compte e-reparateur.eco
ConsumerInvoiceNumber = numéro de référence de votre facture cliente
quoteNumber
État colour
Blue title
optionnel
URL Preprod = https://preprod-apiecologic.e-reparateur.eco/api/v3/ecosupport/updateclaim
URL Prod = https://apiecologic.e-reparateur.eco/api/v3/ecosupport/updateclaim
Fonctions
permet de mettre à jour, de corriger et de soumettre la demande de remboursement. La mise à jour n'est plus possible après la soumission de la demande.
Données à transmettre
Exemple (les données ci-dessous de l’exemple sont à mettre à jour; en effet des champs sont obsolètes)
language | json |
---|
= numéro de référence interne chez le réparateur
Submit = 💡 indique si la mise à jour déclenche ou non la soumission
false = la mise à jour n’est pas suivi d’une tentative de soumission
true = la mise à jour entraine une tentative de soumission
Dans le body
Remarque |
---|
Vérifiez bien la liste des champs obligatoires dans le Swagger et dans le fichier YAML ou JSON de l’API |
Données en sortie
Données en sortie
ClaimId : Identifiant du dossier de remboursement en cours
IsValid : indique si le dossier de remboursement est valide (true ou false)
ValidationErrors : tableau des erreurs détectées si IsValid = false
Exemple de réponse
Bloc de code | ||
---|---|---|
| ||
{ "ResponseData": { "ClaimId": 5275562, "IsValid": false, "ValidationErrors": [ { "Field": "Plaque signalétique", "ErrorMessage": "Des pièces jointes sont requises : Plaque signalétique", "MessageType": "E" }, { "Amount": 180.00, "CurrencyField": "EURFacture", }, "TravelCost": { "AmountErrorMessage": 0.00, "Currency": "EUR""Des pièces jointes sont requises : Facture", }, "TotalAmountExclVAT": { "AmountMessageType": 208.34,"E" "Currency": "EUR" }, "TotalAmountInclVAT": { "Amount": 250, "CurrencyField": "EUR"Panne ou code IRIS", }, "SupportAmount": { "AmountErrorMessage": 50.00, "Cette valeur est obligatoire", "Currency": "EUR" } }, "SparePartsMessageType": ["E" { "Partref": "407142415/6",} "Quantity": 1], "StatusErrorMessage": "NewValidation Errors" }, ] } |
Données en entrée
Dans les paramètres
ex : ClaimId=1564&RepairEndDate=2022-06-27T11:50:37.913Z&RepairSiteId=54654&Submit=false&ConsumerInvoiceNumber=132564
ClaimId = date de référence du dossier de demande de soutien, issu de la réponse à CreateSupportRequest
RepairEndDate = Date de référence de la fin de réparation (ISO8601)
RepairSiteId = ID de votre compte e-reparateur.eco
Submit = 💡 indique si la mise à jour déclenche ou non la soumission
ConsumerInvoiceNumber = numéro de référence de votre facture cliente
Dans le body
Remarque |
---|
Vérifiez bien la liste des champs obligatoires dans le Swagger et dans le fichier YAML ou JSON de l’API |
Données en sortie
ClaimId = Identifiant du dossier de remboursement
ErrorMessage = indique si des erreurs sont présentes dans la demande de remboursement empêchant la soumission
ValidationErrors = tableau des champs en erreur et information sur les erreurs
Field = code du champ concerné
ErrorMessage = erreur sur le champ concerné
Exemple de réponse
Bloc de code | ||
---|---|---|
| ||
{ "ResponseData": { "ResponseStatus": "S", "IsValid": true, "ResponseMessage": "", "ResponseErrorMessage": "" } |
Si la soumission est OK
Bloc de code |
---|
{ "ResponseData": { "ClaimId": 5310865, "IsValid": true }, "ClaimIdResponseStatus": 16466"S", "IsValid": true, "ResponseMessage": false"", "ValidationErrorsResponseErrorMessage": [ "" } |
Facture non conforme à la soumission
exemple de facture non liée à l’utilisateur
Bloc de code |
---|
{ "ResponseData": { " |
ClaimId": |
5310865, " |
IsValid": |
false, " |
ValidationErrors": |
[ |
|
{ "Field": " |
OCR facture", "ErrorMessage": "La facture n'est pas |
conforme (Nom du consommateur)", "MessageType": "E" } ], "ErrorMessage": "Validation Errors" }, "ResponseStatus": "S", "IsValid": true, "ResponseMessage": "", "ResponseErrorMessage": "" } |
Sou
Suivre le statut de la demande de remboursement - /GetClaimStatus
État | ||||
---|---|---|---|---|
|
URL Preprod = https://preprod-apiecologic.e-reparateur.eco/api/v3/ecosupport/getclaimstatus
URL Prod = https://apiecologic.e-reparateur.eco/api/v3/ecosupport/getclaimstatus
Fonctions
permet de connaitre le statut d'une demande de remboursement qui a été soumise.
Données à transmettre
Exemple
/GetClaimStatus?ClaimId=16466
Données en entrée
Dans les paramètres
ex : /GetClaimStatus?ClaimId=16466
ClaimId = date de référence du dossier de demande de soutien, issu de la réponse à CreateSupportRequest
Données en sortie
LastStatus : Dernier statut de la demande de soutien
Waiting: en attente,
Accepted: Acceptée,
Refused: Refusée,
NotConform: Non conforme
…
État colour Purple title TODO
“Dossier incomplet” : des pièces ou des informations doivent être ajoutées au dossier de demande de remboursement (Claim) avant de tenter de le soumettre
Info |
---|
Le statut "NotConform" indique qu'une action de correction est requise par Ecologic. |
Exemple de réponse
Bloc de code | ||
---|---|---|
| ||
{ "ResponseDataClaimId": null, [ "ResponseData": { "ClaimId": 164665310865, "LastStatus": "WaitingDossier incomplet", "Comment": "Code IRIS Symptome 013", "CreateDate": "20222023-0603-24T1501T16:1641:2206.110Z857" }, ], "ResponseStatus": "stringS", "IsValid": true, "ResponseMessage": "string", "ResponseErrorMessage": "string" } |
SwaggerUI (en rédaction)
Remarque |
---|
Les éléments présentés ci-dessous ne sont pas fonctionnels et en cours de déploiement. |
Swagger open api macro |
---|
swagger: '2.0' info: description: Ecologic e-reparateur API Portal version: 2.0.0 title: Ecologic e-reparateur API Portal contact: email: support@e-reparateur.eco host: preprod-apiecologic.e-reparateur.eco basePath: /v2 tags: - name: Ecologic e-reparateur Web APIs description: Ecologic e-reparateur Web APIs externalDocs: description: Find out more url: http://support.e-reparateur.eco schemes: - https - http paths: /api/v2/EcoSupport/CreateSupportRequest: post: tags: - EcoSupport summary: Request for an ECO Support description: '' operationId: CreateSupportRequest produces: - application/json - text/json - application/xml - text/xml parameters: - name: CallDate in: query description: Date the consumer contact the repair center took in charge the appliance required: true type: string format: date-time - name: RepairSiteId in: query description: Site ID of the repair required: true type: string - name: QuoteNumber in: query description: Number of the quote required: true type: string - in: body name: RepairDetails description: Details needed for the Eco support required: true schema: $ref: '#/definitions/AgoraWebServices.Models.EcoSupport.RepairDetails' responses: '200': description: successful operation schema: $ref: '#/definitions/AgoraWebServices.Models.Response.CreateSupportRequestResponse' '400': description: Bad request schema: $ref: '#/definitions/AgoraWebServices.Models.Response.ErrorResponse' '500': description: InternalServerError schema: $ref: '#/definitions/AgoraWebServices.Models.Response.ErrorResponse' /api/v2/EcoSupport/GetSupportRequestStatus: get: tags: - EcoSupport summary: Get support request status operationId: GetSupportRequestStatus consumes: [] produces: - application/json - text/json - application/xml - text/xml parameters: - name: RequestId in: query description: Identifier of the request in Agora required: false type: integer format: int32 responses: '200': description: OK schema: $ref: '#/definitions/AgoraWebServices.Models.Response.RequestStatusResponse' '500': description: InternalServerError schema: $ref: '#/definitions/AgoraWebServices.Models.Response.ErrorResponse' /api/v2/EcoSupport/CreateClaim: post: tags: - EcoSupport summary: Claim for reimbursment description: '' operationId: CreateClaim produces: - application/json - text/json - application/xml - text/xml parameters: - name: RequestId in: query description: Support request identifier, returned by e-reparateur (CreateSupportRequest) required: true type: integer format: int32 - name: RepairEndDate in: query description: Date of the end of the repair required: true type: string format: date-time - name: RepairSiteId in: query description: Qualirepar ID of the repair site required: true type: string - name: ConsumerInvoiceNumber in: query description: Invoice number required: true type: string - in: body name: RepairDetails description: Details needed for the Eco support required: true schema: $ref: '#/definitions/AgoraWebServices.Models.EcoSupport.RepairDetails' responses: '200': description: successful operation schema: $ref: '#/definitions/AgoraWebServices.Models.Response.ClaimResponse' '400': description: Bad request schema: $ref: '#/definitions/AgoraWebServices.Models.Response.ErrorResponse' '500': description: InternalServerError schema: $ref: '#/definitions/AgoraWebServices.Models.Response.ErrorResponse' /api/v2/EcoSupport/UpdateClaim: post: tags: - EcoSupport summary: Update the claim to fix issue raised by e-reparateur description: '' operationId: UpdateClaim produces: - application/json - text/json - application/xml - text/xml parameters: - name: ClaimId in: query description: Identifier of the claim provided by e-reparateur after the creation required: true type: integer format: int32 - name: RepairEndDate in: query description: Date of the end of the repair required: true type: string format: date-time - name: RepairSiteId in: query description: Site ID of the repair required: true type: string - name: ConsumerInvoiceNumber in: query description: Invoice number required: true type: string - name: Submit in: query description: Submit claim if valid required: false type: boolean - in: body name: Body description: Repair details required: true schema: $ref: '#/definitions/AgoraWebServices.Models.EcoSupport.RepairDetails' responses: '200': description: successful operation schema: $ref: '#/definitions/AgoraWebServices.Models.Response.ClaimResponse' '400': description: Bad request schema: $ref: '#/definitions/AgoraWebServices.Models.Response.ErrorResponse' '500': description: InternalServerError schema: $ref: '#/definitions/AgoraWebServices.Models.Response.ErrorResponse' /api/v2/EcoSupport/AttachFile: post: tags: - EcoSupport summary: Attach a file to the claim description: '' operationId: AttachedFile produces: - application/json - text/json - application/xml - text/xml parameters: - name: ClaimId in: query description: Identifier of the claim provided by e-reparateur after the creation required: true type: integer format: int32 - name: FileName in: query description: Date of the end of the repair required: true type: string - name: FileExtension in: query description: File extension required: true type: string - name: DocumentType in: query description: Document type. Possible values (Invoice, Nameplate) required: true type: string - name: FileContent in: body description: Document content in base 64. required: true schema: type: string responses: '200': description: OK '400': description: Bad request '500': description: InternalServerError /api/v2/EcoSupport/GetClaimStatus: get: tags: - EcoSupport summary: Get claim status operationId: GetClaimStatus consumes: [] produces: - application/json - text/json - application/xml - text/xml parameters: - name: Claimid in: query description: Identifier of the request in Agora required: false type: integer format: int32 responses: '200': description: OK schema: $ref: '#/definitions/AgoraWebServices.Models.Response.ClaimStatusResponse' '500': description: InternalServerError schema: $ref: '#/definitions/AgoraWebServices.Models.Response.ErrorResponse' /api/v2/EcoSupport/CalculateEcoSupport: get: tags: - EcoSupport summary: Check the eligibility and Calculate the suppport operationId: CalculateEcoSupport consumes: [] produces: - application/json - text/json - application/xml - text/xml parameters: - name: TotalAmountExclVAT in: query description: Identifier of the request in Agora type: number format: float - name: TotalAmountExclVAT_Currency in: query description: Identifier of the request in Agora type: string - name: BrandId in: query description: Identifier of the request in Agora required: false type: integer format: int32 - name: ProductId in: query description: Identifier of the request in Agora required: false type: integer format: int32 - name: IRISSymptom in: query description: Identifier of the request in Agora required: false type: string - name: RepairCode in: query description: Repair code or Iris Repair code required: false type: string responses: '200': description: OK schema: $ref: '#/definitions/AgoraWebServices.Models.Response.CalculateSupportResponse' '500': description: InternalServerError schema: $ref: '#/definitions/AgoraWebServices.Models.Response.ErrorResponse' /api/v2/EcoSupport/PrintBrandList: get: tags: - EcoSupport summary: Print the list of brands operationId: PrintBrandList consumes: [] produces: - application/json - text/json - application/xml - text/xml parameters: [] responses: '200': description: OK schema: $ref: '#/definitions/AgoraWebServices.Models.Response.PrintBrandListResponse' '500': description: InternalServerError schema: $ref: '#/definitions/AgoraWebServices.Models.Response.ErrorResponse' /api/v2/EcoSupport/PrintProductTypeList: get: tags: - EcoSupport summary: Print the list of product type with for each its related repair codes and symptom codes operationId: PrintProductTypeList consumes: [] produces: - application/json - text/json - application/xml - text/xml parameters: [] responses: '200': description: OK schema: $ref: '#/definitions/AgoraWebServices.Models.Response.PrintProductTypeListResponse' '500': description: InternalServerError schema: $ref: '#/definitions/AgoraWebServices.Models.Response.ErrorResponse' securityDefinitions: api_key: type: apiKey description: API Key Authentication name: api_key in: header definitions: AgoraWebServices.Models.EcoSupport.RepairDetails: type: object required: - Consumer - Product - Quote properties: Consumer: type: object $ref: '#/definitions/AgoraWebServices.Models.EcoSupport.Consumer' Product: type: object $ref: '#/definitions/AgoraWebServices.Models.EcoSupport.Product' Quote: type: object $ref: '#/definitions/AgoraWebServices.Models.EcoSupport.CostDetails' SpareParts: type: array items: $ref: '#/definitions/AgoraWebServices.Models.EcoSupport.Sparepart' xml: name: Request AgoraWebServices.Models.EcoSupport.Consumer: type: object required: - LastName - Address1 - Zip - City - Country - Email properties: Title: type: integer format: int32 LastName: type: string FirstName: type: string StreetNumber: type: string Address1: type: string Address2: type: string Address3: type: string Zip: type: string City: type: string Country: type: string Phone: type: string Email: type: string xml: name: Consumer AgoraWebServices.Models.EcoSupport.Product: type: object required: - ProductId - BrandId - SerialNumber - PurchaseDate - IRISSymptom properties: ProductId: type: string BrandId: type: string CommercialRef: type: string SerialNumber: type: string PurchaseDate: type: string format: date IRISCondition: type: string IRISConditionEX: type: string IRISSymptom: type: string IRISSection: type: string IRISDefault: type: string IRISRepair: type: string FailureDescription: type: string DefectCode: type: string xml: name: Product AgoraWebServices.Models.EcoSupport.CostDetails: type: object required: - LaborCost - SparePartsCost - TravelCost - TotalAmountExclVAT - TotalAmountInclVAT - SupportAmount properties: LaborCost: type: object properties: Amount: type: number format: float Currency: type: string SparePartsCost: type: object properties: Amount: type: number format: float Currency: type: string TravelCost: type: object properties: Amount: type: number format: float Currency: type: string TotalAmountExclVAT: type: object properties: Amount: type: number format: float Currency: type: string TotalAmountInclVAT: type: object properties: Amount: type: number format: float Currency: type: string SupportAmount: type: object properties: Amount: type: number format: float Currency: type: string xml: name: Quote AgoraWebServices.Models.EcoSupport.Sparepart: type: object required: - Partref - Quantity - Status properties: Partref: type: string Quantity: type: integer format: int64 Status: type: string xml: name: Sparepart Tag: type: object properties: id: type: integer format: int64 name: type: string xml: name: Tag AgoraWebServices.Models.Response.CreateSupportRequestResponse: description: Create complete repair method response values type: object properties: ResponseData: $ref: '#/definitions/AgoraWebServices.Models.Response.SupportRequestResponseData' description: Response data ResponseStatus: description: 'Response status ("S" : Sucess, "E": Error, "W":Warning)' type: string IsValid: description: Response validity type: boolean ResponseMessage: description: Response message type: string ResponseErrorMessage: description: Response Error Message type: string AgoraWebServices.Models.Response.SupportRequestResponseData: description: Response data from create complete repair method type: object properties: EcoOrganizationId: format: int32 description: Identifier of the Eco organization who will provide the suppot type: integer RequestId: format: int32 description: e-reparateur internal identifier of the request type: integer IsValid: description: Validity type: boolean ErrorMessage: description: Error message type: string AgoraWebServices.Models.Response.ClaimResponse: description: Create complete repair method response values type: object properties: ResponseData: $ref: '#/definitions/AgoraWebServices.Models.Response.ClaimResponseData' description: Response data ResponseStatus: description: 'Response status ("S" : Sucess, "E": Error, "W":Warning)' type: string IsValid: description: Response validity type: boolean ResponseMessage: description: Response message type: string ResponseErrorMessage: description: Response Error Message type: string AgoraWebServices.Models.Response.ClaimResponseData: description: Response data from create complete repair method type: object properties: ClaimId: format: int32 description: e-reparateur internal identifier of the request type: integer IsValid: description: Validity type: boolean ValidationErrors: description: Validation errors type: array items: $ref: '#/definitions/AgoraWebServices.Models.Return.ValidationResult' ErrorMessage: description: Error message type: string AgoraWebServices.Models.Return.ValidationResult: description: Validation error result values type: object properties: Field: description: Field assotiated to the error type: string ErrorMessage: description: Error message type: string MessageType: description: "Type of the error message : \r\n - E : Error\r\n - W : Warning" type: string AgoraWebServices.Models.Response.ErrorResponse: description: Error response object type: object properties: ResponseData: description: Response data type: object ResponseStatus: description: 'Response status ("S" : Sucess, "E": Error, "W":Warning)' type: string IsValid: description: Response validity type: boolean ResponseMessage: description: Response message type: string ResponseErrorMessage: description: Response Error Message type: string AgoraWebServices.Models.Response.RequestStatusResponse: description: Get request method response values type: object properties: ResponseData: description: Response data type: array items: $ref: '#/definitions/AgoraWebServices.Models.EcoSupport.RequestStatusResponseData' ResponseStatus: description: 'Response status ("S" : Sucess, "E": Error, "W":Warning)' type: string IsValid: description: Response validity type: boolean ResponseMessage: description: Response message type: string ResponseErrorMessage: description: Response Error Message type: string AgoraWebServices.Models.EcoSupport.RequestStatusResponseData: description: Warranty claim informations type: object properties: RequestId: format: int32 description: Identifier in Agora type: integer LastStatus: description: Last status type: string Comment: description: Comment type: string CreateDate: format: date-time description: Creation date type: string AgoraWebServices.Models.Response.ClaimStatusResponse: description: Get request method response values type: object properties: ResponseData: description: Response data type: array items: $ref: '#/definitions/AgoraWebServices.Models.EcoSupport.ClaimStatusResponseData' ResponseStatus: description: 'Response status ("S" : Sucess, "E": Error, "W":Warning)' type: string IsValid: description: Response validity type: boolean ResponseMessage: description: Response message type: string ResponseErrorMessage: description: Response Error Message type: string AgoraWebServices.Models.EcoSupport.ClaimStatusResponseData: description: Warranty claim informations type: object properties: ClaimId: format: int32 description: Identifier in Agora type: integer LastStatus: description: Last status type: string Comment: description: Comment type: string CreateDate: format: date-time description: Creation date type: string AgoraWebServices.Models.Response.CalculateSupportResponse: description: Get request method response values type: object properties: ResponseData: description: Response data type: array items: $ref: '#/definitions/AgoraWebServices.Models.EcoSupport.CalculateSupportResponseData' ResponseStatus: description: 'Response status ("S" : Sucess, "E": Error, "W":Warning)' type: string IsValid: description: Response validity type: boolean ResponseMessage: description: Response message type: string ResponseErrorMessage: description: Response Error Message type: string AgoraWebServices.Models.EcoSupport.CalculateSupportResponseData: description: Warranty claim informations type: object properties: EcoOrganizationId: format: int32 description: Identifier of the Eco organization who will provide the suppot type: integer SupportAmount: type: object properties: Amount: type: number format: float Currency: type: string AgoraWebServices.Models.Response.PrintBrandListResponse: description: Get request method response values type: object properties: ResponseData: description: Response data type: array items: $ref: '#/definitions/AgoraWebServices.Models.EcoSupport.PrintBrandListResponseData' ResponseStatus: description: 'Response status ("S" : Sucess, "E": Error, "W":Warning)' type: string IsValid: description: Response validity type: boolean ResponseMessage: description: Response message type: string ResponseErrorMessage: description: Response Error Message type: string AgoraWebServices.Models.EcoSupport.PrintBrandListResponseData: description: List of brands type: object properties: BrandName: description: Brand name type: string BrandId: description: Brand code type: string AgoraWebServices.Models.Response.PrintProductTypeListResponse: description: Get request method response values type: object properties: ResponseData: description: Response data type: array items: $ref: '#/definitions/AgoraWebServices.Models.EcoSupport.PrintProductTypeListResponseData' ResponseStatus: description: 'Response status ("S" : Sucess, "E": Error, "W":Warning)' type: string IsValid: description: Response validity type: boolean ResponseMessage: description: Response message type: string ResponseErrorMessage: description: Response Error Message type: string AgoraWebServices.Models.EcoSupport.PrintProductTypeListResponseData: description: List of brands type: object properties: ProductId: description: Identifier of the product type: string ProductName: description: Name of the product type type: string EligibilityStartDate: description: Name of the product type type: string format: date EligibilityEndDate: description: Name of the product type type: string format: date RepairCodes: type: array items: type: object properties: RepairCode: description: Repair Code type: string IRISSymtoms: type: array items: type: object properties: IRISSymtom: description: IRIS code of the symptom type: string externalDocs: description: Find out more about Swagger url: http://swagger.io |