Aperçu de l'installation


L'API de Revers.io est basée sur le principe REST, utilisant des corps codés en JSON et renvoyant des réponses codées en JSON.

 Nous utilisons des verbes et des codes de réponse HTTP standard. Elle est conçue pour des appels de serveur à serveur, et ne doit donc pas être utilisée directement par des applications clientes.

S'authentifier avec l'API
 

L'utilisation d'une API nécessite une clé d'abonnement et un jeton API.

Obtention d'une clé d'abonnement et d'un jeton d'API
 

Cette opération n'est nécessaire que la première fois que vous utilisez nos API ou lorsque vous devez modifier votre jeton API. Connectez-vous à la page de gestion des clés d'API et créez une nouvelle application dans le menu "Importation par API". Vous obtiendrez ainsi deux paires clé d'abonnement / jeton d'api (pour faciliter les rotations).

Picture

Obtention d'un jeton JWT
 

Pour utiliser une API, vous devez obtenir un jeton JWT à l'aide de votre clé d'abonnement et de votre jeton d'api. Notez que le jeton a une validité d'une heure et doit être régénéré en conséquence. Vous pouvez trouver la date d'expiration d'un jeton en décodant le jeton et en utilisant la revendication exp. 

Pour obtenir ce jeton, appelez l'API Get token avec les en-têtes appropriés.

Transmettez votre clé d'abonnement à l'aide de l'en-tête Ocp-Apim-Subscription-Key et votre secret à l'aide de l'en-tête Ocp-Apim-Secret-Value. Vous ne devez en aucun cas envoyer votre clé Api à une autre API.

curl https://customer-api.revers.io/api/v1/token

-H "Ocp-Apim-Subscription-Key: {subscription key}"

-H "Ocp-Apim-Secret-Value: {secret value}"

Utilisation d'un jeton JWT

 

Pour tout appel ultérieur à l'API, l'authentification est assurée par l'utilisation du jeton JWT comme jeton de support dans l'en-tête Authorization ainsi que de la clé d'abonnement.
 

Par souci de clarté, nous omettons ces deux en-têtes dans les prochains paragraphes de cet article.

curl https://customer-api.revers.io/api/v1/orders/{orderReference}/status

-H "Ocp-Apim-Subscription-Key: {subscription key}"

-H "Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxx"

Importer le catalogue et vos commandes

 

Pour déclencher la création d'un fichier après-vente, nous devons entrer les données de la commande dans la plateforme, en faisant référence au catalogue de produits.

Dans cette section, vous apprendrez comment créer un modèle dans le catalogue, représentant le produit vendu, et comment l'utiliser pour créer votre première commande. Créer un modèle

Créons notre premier modèle, représentant un produit.

Récupérer le type de modèle (ModelType)

 

GET https://customer-api.revers.io/api/v1/catalog/modelTypes

Lors de la configuration de la plateforme, vous définirez vos ModelTypes avec l'équipe de livraison. Vous devrez obtenir l'identifiant du type de modèle correspondant lors de la création d'un modèle. La liste des types de modèles peut être récupérée par le biais de cet appel.

{
    "value": [
        {
            "id": "00000000-9999-0000-0000-000000000001",
            "key": "0001",
            "cultureCode": "fr",
            "label": "Smartphone",
            "description": ""
        }
    ]
}

Le type de modèle permet de définir les bonnes règles pour votre scénario d'après-vente.

Créer une marque
 

Lors de la configuration de la plateforme, vous définirez vos ModelTypes avec notre équipe de livraison. Vous devrez obtenir l'identifiant du type de modèle correspondant lors de la création d'un modèle. La liste des ModelTypes peut être récupérée par cet appel.

POST https://customer-api.revers.io/api/v1/catalog/brands
{
    "name": "Fairphone"
}
{
    "value":
    {
       "id": "00000000-0000-0000-0000-000000000001"
    }
}

Créer un modèle 

 

Créons notre premier modèle, qui représente un produit.

Il doit y avoir : 

  • Un identifiant unique appelé SKU, et un label (visible par les utilisateurs)
  • Une association avec une marque via l'identifiant brandId
  • Une association avec un type de modèle (catégorie) par l'intermédiaire du modelTypeId
  • Des informations relatives à la dimension, au poids et à l'état du modèle.

 

POST https://customer-api.revers.io/api/v1/catalog/models
{
    "label": "Fairphone 3+ 64GB",
    "sKU": "123456",
    "brandId": "00000000-0000-0000-0000-000000000001",
    "modelTypeId": "00000000-9999-0000-0000-000000000001",
    "state": "New",
    "weight": 0.188,
    "dimension":
    {
        "lengthInCm": 16,
        "widthInCm": 7,
        "heightInCm": 1
    }
}
{
    "value":
    {
       "id": "10000000-5555-0000-0000-000000000001",
       [...]
    }
}