Créer des transactions
Créer des transactions de tokens natifs
Section intitulée « Créer des transactions de tokens natifs »Introduction
Section intitulée « Introduction »Dans ce tutoriel, nous allons voir comment effectuer des transactions pour Ethereum (ETH), Binance Smart Chain (BNB), Polygon (MATIC), Tron (TRX) et Bitcoin (BTC) via l’API ChainGateway V2. Nous fournirons des exemples dans divers langages de programmation, notamment Shell (cURL), PHP, Python et JavaScript.
Dans ce tutoriel, nous allons créer des transactions pour les tokens natifs ETH BNB TRX MATIC. Pour envoyer des transactions TRC20, ERC20 et BEP20, consultez Créer des transactions de tokens
Pour obtenir une clé API et en savoir plus sur l’autorisation, consultez la section Démarrage rapide de la documentation Chaingateway.
Créer des transactions pour ETH, BNB et MATIC
Section intitulée « Créer des transactions pour ETH, BNB et MATIC »Pour effectuer une transaction sur Ethereum, Binance Smart Chain ou Polygon, vous devez envoyer une requête à l’API ChainGateway avec les paramètres appropriés.
Paramètres
Section intitulée « Paramètres »- from : L’adresse de l’émetteur.
- to : L’adresse du destinataire.
- amount : Le montant à envoyer.
- password : Le mot de passe utilisé pour chiffrer le fichier keystore de l’adresse de l’émetteur.
Exemple d’en-tête Authorization
Section intitulée « Exemple d’en-tête Authorization »Remplacez YOUR_API_TOKEN par votre token API réel.
Exemple de code
Section intitulée « Exemple de code »curl --request POST\ --url https://api.chaingateway.io/v2/ethereum/transactions\ --header 'Accept: application/json'\ --header 'content-type: application/json'\ --header 'Authorization: YOUR_API_TOKEN'\ --data '{ "from": "0xYourSenderAddress", "to": "0xRecipientAddress", "amount": "0.1", "password": "YourPassword"}'import requests
url = "https://api.chaingateway.io/v2/ethereum/transactions"payload = { "from": "0xYourSenderAddress", "to": "0xRecipientAddress", "amount": "0.1", "password": "YourPassword"}headers = { 'Accept': 'application/json', 'content-type': 'application/json', 'Authorization': 'YOUR_API_TOKEN'}
response = requests.post(url, json=payload, headers=headers)print(response.json())const axios = require('axios');
const url = 'https://api.chaingateway.io/v2/ethereum/transactions';const payload = { from: '0xYourSenderAddress', to: '0xRecipientAddress', amount: '0.1', password: 'YourPassword'};const headers = { 'Accept': 'application/json', 'content-type': 'application/json', 'Authorization': 'YOUR_API_TOKEN'};
axios.post(url, payload, { headers }) .then(response => { console.log(response.data); }) .catch(error => { console.error(error); });<?phprequire 'vendor/autoload.php';
use GuzzleHttp\Client;
$client = new Client();$response = $client->post('https://api.chaingateway.io/v2/ethereum/transactions', [ 'headers' => [ 'Accept' => 'application/json', 'content-type' => 'application/json', 'Authorization' => 'YOUR_API_TOKEN', ], 'json' => [ 'from' => '0xYourSenderAddress', 'to' => '0xRecipientAddress', 'amount' => '0.1', 'password' => 'YourPassword' ]]);
echo $response->getBody();?>Le code devrait retourner cette réponse :
{ "status": 201, "ok": true, "message": "Succesfully created transaction", "data": { "txid": "0x73344d178812d4919e9002c560781f288030edf72ece88823ef1c377dfb71f27" }}Créer des transactions pour TRX
Section intitulée « Créer des transactions pour TRX »Paramètres
Section intitulée « Paramètres »- from : L’adresse de l’émetteur.
- to : L’adresse du destinataire.
- amount : Le montant à envoyer.
- privateKey : La clé privée de l’adresse de l’émetteur.
Exemple d’en-tête Authorization
Section intitulée « Exemple d’en-tête Authorization »Remplacez YOUR_API_TOKEN par votre token API réel.
Exemple de code
Section intitulée « Exemple de code »curl --request POST\ --url https://api.chaingateway.io/v2/tron/transactions\ --header 'Accept: application/json'\ --header 'content-type: application/json'\ --header 'Authorization: YOUR_API_TOKEN'\ --data '{ "from": "YourSenderAddress", "to": "RecipientAddress", "amount": "0.001", "privateKey": "YourPrivateKey"}'import requests
url = "https://api.chaingateway.io/v2/tron/transactions"payload = { "from": "YourSenderAddress", "to": "RecipientAddress", "amount": "0.001", "privateKey": "YourPrivateKey"}headers = { 'Accept': 'application/json', 'content-type': 'application/json', 'Authorization': 'YOUR_API_TOKEN'}
response = requests.post(url, json=payload, headers=headers)print(response.json())const axios = require('axios');
const url = 'https://api.chaingateway.io/v2/tron/transactions';const payload = { from: 'YourSenderAddress', to: 'RecipientAddress', amount: '0.001', privateKey: 'YourPrivateKey'};const headers = { 'Accept': 'application/json', 'content-type': 'application/json', 'Authorization': 'YOUR_API_TOKEN'};
axios.post(url, payload, { headers }) .then(response => { console.log(response.data); }) .catch(error => { console.error(error); });<?phprequire 'vendor/autoload.php';
use GuzzleHttp\Client;
$client = new Client();$response = $client->post('https://api.chaingateway.io/v2/tron/transactions', [ 'headers' => [ 'Accept' => 'application/json', 'content-type' => 'application/json', 'Authorization' => 'YOUR_API_TOKEN', ], 'json' => [ 'from' => 'YourSenderAddress', 'to' => 'RecipientAddress', 'amount' => '0.001', 'privateKey' => 'YourPrivateKey' ]]);
echo $response->getBody(); ?>{ "status": 201, "ok": true, "message": "Succesfully created transaction", "data": { "txid": "0x73344d178812d4919e9002c560781f288030edf72ece88823ef1c377dfb71f27" }}Informations importantes
Section intitulée « Informations importantes »Pour créer des transactions, les utilisateurs doivent fournir le mot de passe de l’adresse (pour Ethereum, Binance Smart Chain, Polygon et Bitcoin) ou la clé privée (pour Tron). ChainGateway ne stocke pas ces informations sensibles. Les utilisateurs doivent donc les conserver dans un endroit sûr. Si elles sont perdues, ChainGateway ne peut pas aider à la récupération car nous n’y avons pas accès.
Pour obtenir une clé API et en savoir plus sur l’autorisation, consultez la section Prise en main de la documentation ChainGateway.