Aller au contenu

Guide de démarrage rapide

Ce guide vous aide à faire vos premiers pas avec Chaingateway. Il vous explique comment lire la documentation de l’API, créer une clé API et vous autoriser à utiliser notre API.

L’API Chaingateway propose une interface simple permettant aux développeurs d’interagir avec plusieurs blockchains comme Tron, Binance Smart Chain (BNB Chain), Ethereum, Polygon et Bitcoin. Nos endpoints d’API vous offrent plusieurs fonctionnalités comme la création de transactions, l’envoi de tokens fongibles et non fongibles, et l’interrogation de données blockchain utiles telles que les soldes de comptes et les hauteurs de blocs.

L’API Chaingateway propose une interface simple permettant aux développeurs d’interagir avec plusieurs blockchains comme Tron, Binance Smart Chain (BNB Chain), Ethereum, Polygon et Bitcoin. Nos endpoints d’API offrent plusieurs fonctionnalités comme la création de transactions, l’envoi de tokens fongibles et non fongibles, et l’interrogation de données blockchain utiles telles que les soldes de comptes et les hauteurs de blocs.

  • Comment configurer votre compte
  • Comment créer votre clé API
  • Les concepts de base de notre API
  • Comment envoyer votre première requête API

Créez d’abord un compte Chaingateway ou connectez-vous. Rendez-vous ensuite sur la page des clés API pour créer un nouveau token. Saisissez un nom pour votre token et cliquez sur « + Create Token ». Votre nouveau token devrait maintenant être visible dans l’interface. Conservez-le en lieu sûr et ne le communiquez à personne !

Dans les sections suivantes, vous pourrez choisir votre langage de programmation parmi curl, PHP, Node.js et Python. Si vous avez besoin d’exemples de code pour d’autres langages, notre référence API prend en charge de nombreux autres langages.

Nous recommandons un stockage central pour votre clé API, qui pourrait être une variable d’environnement pour curl et Python, ou un fichier .env pour Node.js et PHP/Laravel.

L’API REST de Chaingateway suit les principes de REST, en utilisant des requêtes HTTP pour communiquer. Elle propose des endpoints représentant des ressources, comme /addresses, et prend en charge des méthodes standard comme GET, POST, PUT, DELETE pour des actions telles que récupérer, créer, mettre à jour et supprimer des ressources. Les réponses sont généralement au format JSON. L’authentification garantit un accès sécurisé aux ressources.

Prenons un exemple avec la ressource address :

  • GET : Récupérez des données d’adresse en envoyant une requête GET à /addresses pour une liste d’adresses ou à /addresses/{id} pour une adresse spécifique.

  • POST : Créez une nouvelle adresse en envoyant une requête POST à /addresses avec les détails de l’adresse dans le corps de la requête.

  • PUT : Mettez à jour une adresse existante en envoyant une requête PUT à /addresses/{id} avec l’ensemble des informations d’adresse mises à jour dans le corps de la requête. La mise à jour d’informations d’adresse n’étant pas autorisée sur les blockchains, cette méthode n’existe pas.

  • DELETE : Supprimez une adresse en envoyant une requête DELETE à /addresses/{id}.

  • PATCH : Effectuez des mises à jour partielles d’une adresse en envoyant une requête PATCH à /addresses/{id} avec uniquement les modifications spécifiques. La mise à jour d’informations d’adresse n’étant pas autorisée sur les blockchains, cette méthode n’existe pas.

Ces méthodes permettent aux clients d’effectuer des opérations CRUD sur diverses ressources de manière prévisible et cohérente, conformément aux principes REST. Vous devez vous assurer que la méthode correspond toujours à la fonctionnalité dont vous avez besoin.

Les en-têtes HTTP fournissent des informations supplémentaires sur la requête ou la réponse. Voici quelques en-têtes couramment utilisés :

  • En-tête Authorization : L’en-tête Authorization sert à envoyer des identifiants (comme un token ou un nom d’utilisateur/mot de passe) avec une requête pour accéder à des ressources protégées. Par exemple, Authorization: <token> indique que la requête est autorisée via un token.

  • En-tête Accept : L’en-tête Accept indique les types de médias que le client souhaite recevoir dans la réponse. Il aide le serveur à comprendre le type de contenu que le client préfère. Par exemple, Accept: application/json indique au serveur que le client préfère des réponses au format JSON. Plusieurs types de médias peuvent être spécifiés, séparés par des virgules, et le serveur choisira le plus approprié selon ses capacités et les préférences exprimées par le client.

  • En-tête Content-Type : L’en-tête Content-Type indique le type de média du corps de la requête envoyée au serveur. Il indique au serveur comment interpréter les données de la requête. Par exemple, Content-Type: application/json indique que le corps de la requête est au format JSON. Cet en-tête est particulièrement important pour les requêtes POST et PUT, où le client envoie des données au serveur.

Une fois votre client HTTP configuré et le fonctionnement de l’API compris, nous pouvons commencer à l’utiliser dans notre projet. Pour vous montrer comment notre API fonctionne, nous allons d’abord créer une adresse Ethereum.

Décomposons les différents composants de cet appel API :

Nous utilisons la méthode POST car nous voulons soumettre des données à l’API.

Les données que nous envoyons sont définies dans le corps de la requête {"password": "architecto"}. Il s’agit d’un objet JSON avec une paire clé-valeur où la clé est « password » et la valeur « architecto ». Ces données seront traitées par le serveur selon les spécifications de l’API.

L’en-tête Authorization ajoute un en-tête Authorization avec la valeur « YOUR_SECRET_TOKEN » (remplacez-le par votre propre token !). Content-Type et Accept sont tous deux définis sur application/json, garantissant que les deux systèmes souhaitent communiquer avec le type de fichier application/json.

Fenêtre de terminal
curl --request POST \
--url http://api.chaingateway.io/api/v2/ethereum/addresses \
--header 'Authorization: YOUR_SECRET_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"password": "architecto"
}'

La réponse sera :

{
"status": 201,
"ok": true,
"message": "Address created",
"data": {}
}

Pour récupérer des données, comme obtenir une liste d’adresses, vous pouvez utiliser la méthode GET. Cette méthode n’utilise généralement pas de corps de requête.

Fenêtre de terminal
curl --request GET \
--url https://api.chaingateway.io/api/v2/ethereum/addresses \
--header 'Authorization: YOUR_SECRET_TOKEN'

La réponse sera :

{
"ok": true
}