Suivre les transferts d'un Fan Token

Suivre les mouvements du Fan Token™ sur Chiliz Chain est un excellent moyen de surveiller l’activité de vos tokens préférés. En l’utilisant comme base pour un tableau de bord potentiel, vous pouvez rationaliser les données afin de fournir des informations sur ce qui est populaire ou non.

Comment le faire en utilisant The Graph ?

The Graph est particulièrement utile pour suivre les mouvements de Fan Token™ sur Chiliz Chain Mainnet ou Spicy Testnet, sans scanner manuellement la blockchain. Il fournit un moyen simple d’interroger les données des contrats intelligents via des API dédiées appelées sous-graphes.

Voyons par exemple comment nous pourrions utiliser The Graph pour suivre les transferts du Fan Token™ du PSG...

Indexer le Token PSG sur Chiliz

1. Initialiser un projet de sous-graphe

Créer un sous-graphe sur Subgraph Studio⁠

Allez sur la Subgraph Studio et connecter votre portefeuille. Une fois votre portefeuille connecté, vous pouvez commencer en cliquant sur « Create a Subgraph ».

Lors du choix d’un nom, il est recommandé d’utiliser la casse Title Case : « Subgraph Name Chain Name. »

Vous arriverez ensuite sur la page de votre sous-graphe. Toutes les commandes CLI dont vous avez besoin seront visibles sur le côté droit de la page (vous pourriez devoir faire défiler un peu) :

Installer le Graph CLI⁠

Sur votre machine locale, exécutez ce qui suit :

npm install -g @graphprotocol/graph-cli

Initialiser votre Sous-graphe⁠

Vous pouvez copier ceci directement depuis la page de votre sous-graphe pour inclure le slug spécifique de votre sous-graphe :

graph init --studio <SUBGRAPH_SLUG>

Le --studio le tag est optionnel. Dans cet exemple, nous avons exécuté :

graph init docs-psg-followup-chiliz-chain

Il vous sera demandé de fournir certaines informations sur votre sous-graphe, comme ceci :

Vous devez avoir votre contrat vérifié sur l’explorateur de blocs, et la CLI obtiendra automatiquement l’ABI et configurera votre sous-graphe. Les paramètres par défaut généreront une entité pour chaque événement.

2. Déployer et Publier

Déployer sur Subgraph Studio⁠

Commencez par exécuter ces commandes :

$ graph codegen
$ graph build

Ensuite, exécutez celles-ci pour vous authentifier et déployer votre sous-graphe. Vous pouvez copier ces commandes directement depuis la page de votre sous-graphe dans Studio pour inclure votre clé de déploiement et le slug du sous-graphe spécifiques :

$ graph auth --studio <DEPLOY_KEY>
$ graph deploy --studio <SUBGRAPH_SLUG>

Il vous sera demandé un libellé de version. Vous pouvez entrer quelque chose comme v0.0.1, mais vous êtes libre de choisir le format. Une fois cela fait, vous verrez le sous-graphe commencer à se synchroniser sur la page Studio.

Tester votre sous-graphe⁠

Vous pouvez tester votre sous-graphe en effectuant une requête d’exemple dans la section playground. L’onglet Détails vous montrera un endpoint API. Vous pouvez utiliser cet endpoint pour tester depuis votre dapp.

Publier votre sous-graphe sur le réseau décentralisé de The Graph

Une fois votre sous-graphe prêt à être mis en production, vous pouvez le publier sur le réseau décentralisé. Sur la page de votre sous-graphe dans Subgraph Studio, cliquez sur le bouton Publish.

Cela déclenchera une transaction via votre portefeuille pour publier votre sous-graphe en tant que NFT sur le réseau Arbitrum One.

Remarque : Les contrats intelligents de The Graph sont tous sur Arbitrum One, même si votre sous-graphe indexe des données depuis Chiliz, Ethereum ou toute autre chaîne prise en charge.

Ce sous-graphe peut être trouvé ici sur le réseau.

3. Interroger votre Sous-graphe

Félicitations ! Vous pouvez désormais interroger votre sous-graphe sur le réseau décentralisé !

Pour tout sous-graphe sur le réseau décentralisé, vous pouvez commencer à l’interroger en envoyant une requête GraphQL à l’URL de requête du sous-graphe qui se trouve en haut de sa page Explorer.

Le sous-graphe du Token PSG ci‑dessus a été publié ici.

L’URL de requête pour ce sous-graphe est :

https://gateway-arbitrum.network.thegraph.com/api/[api-key]/subgraphs/id/7x2xzF58Mr694MiAQxCK6fiXux1vaBQm5SdYhbv1LNGE

Vous devez maintenant simplement remplir votre propre clé API pour commencer à envoyer des requêtes GraphQL à cet endpoint.

Obtenir votre propre clé API

Dans Subgraph Studio, vous verrez le menu « API Keys » en haut de la page. Ici vous pouvez créer des clés API.

Annexes

Requête d’exemple

Cette requête montre toutes les transactions du Fan Token™ du PSG.

const axios = require('axios');

//la requête graphql
const graphqlQuery = `{
  transfers {
    depuis
    vers
    value
    transactionHash
  }
}`;
const queryUrl = 'https://gateway-arbitrum.network.thegraph.com/api/[api-key]/subgraphs/id/7x2xzF58Mr694MiAQxCK6fiXux1vaBQm5SdYhbv1LNGE'

const graphQLRequest = {
  method: 'post',
  url: queryUrl,
  data: {
    query: graphqlQuery,
  },
};

// Envoyer la requête GraphQL
axios(graphQLRequest)
  .then((response) => {
    // Traiter la réponse ici
    const data = response.data.data
    console.log(data)

  })
  .catch((error) => {
    // Gérer les erreurs éventuelles
    console.error(error);
  });

Exemple de code

{
  "data": {
    "transfers": [
      {
        "from": "0x26a3e78fa4d2cbebf6b59b2f84b8fb7c61b52d28",
        "to": "0xdca23d02923d01779fb22959bd2575d64eab4535",
        "value": "1500",
        "transactionHash": "0x000309e9cd3f550e8965381bbd83a35c5cee18f26c33a357f9dbb57450d594ea"
      },
//      ...
  }
}

En envoyant cela à l’URL de requête on obtient ce résultat :

{
  transfers {
    depuis
    vers
    value
    transactionHash
  }
}

Ressources supplémentaires :

  • Pour explorer toutes les façons d’optimiser et de personnaliser votre sous-graphe pour de meilleures performances, lisez davantage sur la création d’un sous-graphe ici.

  • Pour plus d’informations sur l’interrogation des données de votre sous-graphe, lisez la suite ici.

Mis à jour

Ce contenu vous a-t-il été utile ?