Documentation de l'API

1. Introduction

Bienvenue dans la documentation de l'API ! Ce guide vous aidera à comprendre comment interagir de manière sécurisée avec l'API, y compris les étapes nécessaires pour authentifier et chiffrer vos requêtes, ainsi que des informations détaillées sur les points de terminaison disponibles.

Aperçu de la sécurité

Cette API utilise un protocole de sécurité robuste qui nécessite que chaque utilisateur possède les informations d'identification suivantes :

2. Protocole de sécurité

Guide étape par étape

2.1 Clés requises

2.2 Validation des données

Tous les points de terminaison valident strictement les données entrantes. Assurez-vous que votre requête correspond au schéma spécifié et ne contient aucun champ supplémentaire.

2.3 Réorganisation de l'objet de données

  • Préparez votre objet de données et réorganisez ses champs par ordre alphanumérique.
  • 
    Input: { "name": "  Test", "age": 25 }
    Ordered: { "age": 25, "name": "  Test" }
            

    2.4 Génération de la signature

    1. Concaténez les paires clé-valeur en une chaîne de caractères.
    2. Supprimez tous les espaces supplémentaires et convertissez la chaîne en minuscules.
    3. Ajoutez votre Clé de signature à la fin de la chaîne.
    4. Générez un hash MD5 de la chaîne résultante.
    5. Ajoutez la signature à l'objet de données.

    Exemple en utilisant la Clé de signature : 5x12 .

    
    Ordered: { "age": 25, "name": "  Test" }
    Ordered Concatenate String: "age25nametest"
    String with Signature Key: "age25nametestkey5x12"
    Signature (MD5): "b50569c3cfce2bd77ea5b2ad03481f9c"
    
    Result Object : { "age": 25, "name": "test", "signature": "b50569c3cfce2bd77ea5b2ad03481f9c" }
            

    2.5 Chiffrement des données

    Chiffrez l'objet de données final en utilisant la fonction CryptoJS.AES.encrypt, en n'oubliant pas d'ajouter la Clé de chiffrement comme clé de chiffrement.

    
    data = { "age": 25, "name": "test", "signature": "b50569c3cfce2bd77ea5b2ad03481f9c" }
    encryptedData = CryptoJS.AES.encrypt(JSON.stringify(data), Crypt_Key).toString();
            

    2.6 Envoi de la requête

    {
      "data": "encryptedData",
      "token": "token"
    }

    3. Documentation des points de terminaison

    Utilisez les liens suivants pour accéder à la documentation des points de terminaison et tester votre intégration :

    1. Tester le protocole de sécurité.
    2. Générer un ticket.
    3. Obtenir un ticket.
    4. Scanner un ticket.
    5. Transférer un ticket.