Métriques quotidiennes on-chain des actions tokenisées avec la Data API
Intégrez l'activité des actions tokenisées sur Robinhood Chain avec une API key : GET /v1/data/robinhood_mainnet/stocks renvoie un classement quotidien, et /stocks/{token} renvoie les métriques quotidiennes récentes ; le classement ne comporte pas de pagination par curseur. Ce sont des métriques d'activité on-chain, non des cours d'actions.
Les données proviennent des registres publics on-chain et sont fournies à titre informatif uniquement. Elles ne constituent pas un conseil en investissement.
Pour le déploiement de contrats et l'écoute d'événements sur Robinhood Chain, suivez le guide RPC et WebSocket.
- Première étape : Lire le dernier bloc sans API key à l'aide de la commande curl ci-dessous.
- Terminé quand : La requête authentifiée sur les actions renvoie
dataetmeta; les enregistrements disponibles incluentday,token,transfersetholder_count, tandis quedata: []signifie qu'aucun enregistrement d'activité n'est disponible.
Paramètres du mainnet et jeux de données.
Tâche en trois étapes : interroger l'activité des actions sur Robinhood Chain
Trouvez les actions tokenisées les plus actives lors du dernier jour UTC enregistré, puis lisez leur nombre de transferts et leur nombre de détenteurs.
Utilisez une seule API key pour interroger l'activité des tokens d'actions et les détenteurs sur le mainnet pour un tableau de bord d'activité. Ce sont des métriques d'activité on-chain, non des cours d'actions.
1. Lire le dernier bloc sans API key
curl -sS "https://api.blockvectra.com/v1/robinhood_mainnet/public" \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}'Le result JSON-RPC est le dernier numéro de bloc en hexadécimal. Cet appel RPC public ne nécessite aucune clé ; la requête Data API de l'étape 3 en requiert une.
2. Créer une clé pour la même chaîne
Connectez-vous à la console et ouvrez Clés API. Créez une clé et enregistrez le secret affiché dans la boîte de dialogue. La même clé fonctionne pour JSON-RPC et la Data API sur robinhood_mainnet.
Pour un agent IA utilisant HTTP sans navigateur, suivez le guide d'inscription programmatique pour vous inscrire avec une signature de portefeuille Ethereum et créer une clé ; ne demandez pas à l'utilisateur de coller la clé dans le chat.
3. Interroger l'activité des actions avec votre clé
Remplacez replace-with-your-key ci-dessous par votre clé enregistrée, puis exécutez la commande sur votre serveur ou dans un terminal local. Omettre day sélectionne le dernier jour enregistré ; limit=5 renvoie jusqu'à cinq actions ordonnées par activité de transfert décroissante.
export BLOCKVECTRA_API_KEY='replace-with-your-key'
curl -sS "https://api.blockvectra.com/v1/data/robinhood_mainnet/stocks?limit=5" \
-H "x-api-key: $BLOCKVECTRA_API_KEY"Lisez ces champs dans la réponse :
| Champ | Signification |
|---|---|
data[].day | Date UTC des métriques quotidiennes. |
data[].token | Adresse du contrat de token d'action renvoyée par la requête. |
data[].symbol | Symbole du jeton. |
data[].transfers | Nombre de transferts on-chain sur cette journée. |
data[].holder_count | Nombre total d'adresses détentrices. |
meta.as_of_block | Sommet indexé actuel, plutôt que la hauteur de bloc de l'instantané des métriques quotidiennes. |
meta.refreshed_at | Heure de mise à jour de l'instantané ; considérez les données comme obsolètes si ce champ est null. |
Un tableau data vide signifie qu'aucun enregistrement d'activité n'est disponible. Pour inspecter une action à partir du résultat, utilisez sa valeur token avec GET /robinhood_mainnet/stocks/{token} comme décrit ci-dessous.
Qu'est-ce que le jeu de données des actions tokenisées
La Data API de BlockVectra fournit des métriques quotidiennes on-chain et des métadonnées pour les actions tokenisées. Ce jeu de données agrège les transferts quotidiens, les émissions (mints), les destructions (burns), les variations nettes d'offre, la distribution des détenteurs et les métriques de trading sur les plateformes d'échange décentralisées (DEX), permettant aux développeurs de suivre l'activité publique des actions tokenisées.
Pour les chaînes proposant ce jeu de données, consultez la page des Chaînes prises en charge.
- URL de base :
https://api.blockvectra.com/v1/data— à l'exception deGET /chains, toutes les routes de la Data API sont préfixées par un identifiant de chaîne (ex.https://api.blockvectra.com/v1/data/{chain}/…) - Exemple de chaîne :
robinhood_mainnet(utilisé comme exemple de paramètre de chemin ; consultez les Chaînes prises en charge pour connaître toutes les chaînes proposant ce jeu de données) - Authentification : fournissez votre API key dans l'en-tête de requête
x-api-key: $BLOCKVECTRA_API_KEY - Facturation et couverture : mesuré en Compute Units (CU) ; seules les réponses réussies 2xx sont facturées. Si une chaîne ne dispose pas de couverture pour les actions, le point de terminaison renvoie HTTP
422 no_coverage(non facturé)
Classement quotidien (GET /{chain}/stocks)
Le point de terminaison GET /{chain}/stocks renvoie un classement de l'activité quotidienne des actions tokenisées pour une date UTC spécifiée, incluant les métadonnées d'affichage (symbole, nom, etc.), ordonnées par activité de transfert décroissante (jetons les plus actifs en premier).
Paramètres de requête
{chain}(paramètre de chemin, obligatoire) : identifiant de chaîne (par exemple,robinhood_mainnet).day(paramètre de requête, optionnel) : date du calendrier UTC au formatYYYY-MM-DD. En cas d'omission, correspond par défaut au dernier jour enregistré (si aucune activité n'est enregistrée, renvoie200avecdata: []). Si fourni mais non valide au format de calendrierYYYY-MM-DD, renvoie HTTP400(error.code = "bad_request").limit(paramètre de requête, optionnel) : plafonne le nombre d'enregistrements renvoyés. Par défaut à 50 ; les valeurs supérieures à 500 sont limitées à 500 ; passer0ou un nombre non entier renvoie HTTP400(error.code = "bad_request").
Comportement de pagination
Ce point de terminaison n'est pas paginé. Le paramètre limit plafonne le nombre maximal d'enregistrements renvoyés. Dans l'enveloppe globale StockDailyListEnvelope (data et meta), les points de terminaison des actions ne renvoient pas next_cursor (la clé est totalement absente, jamais null).
Exemples de code
Modèle de démarrage complet sur Robinhood Chain : blockvectra/robinhood-stock-tokens
curl -s "https://api.blockvectra.com/v1/data/robinhood_mainnet/stocks?day=2026-09-29&limit=10" \
-H "x-api-key: $BLOCKVECTRA_API_KEY"Structure de réponse
L'enveloppe de réponse est StockDailyListEnvelope, contenant data et meta :
data(tableau) : une liste d'enregistrements du classement quotidien (StockDaily), ordonnée par activité de transfert décroissante (jetons les plus actifs en premier). Chaque élément inclut les identifiants du jeton (token,symbol,name), l'activité de transfert (transfers,unique_senders,unique_receivers), les métriques d'offre (mint_raw_amount,burn_raw_amount,net_supply_change), les métriques de distribution (holder_count,top10_holder_share_bps), les métriques de trading DEX (dex_swap_count,dex_raw_volume) et l'horodatage de rafraîchissement (refreshed_at).meta(objet) : métadonnées de la chaîne (chain,chain_slug,chain_external_id,as_of_block,safe_block,finalized_block,coverage,refreshed_at).meta.refreshed_atpeut êtrenull:nullsignifie que l'heure de mise à jour de ces données est inconnue et qu'elles doivent être traitées comme obsolètes ; les points de terminaison basés sur les blocs renvoient toujours une valeur.
Obtenir une action tokenisée (GET /{chain}/stocks/{token})
Le point de terminaison GET /{chain}/stocks/{token} récupère les métadonnées et jusqu'à 30 jours de métriques quotidiennes récentes pour une action tokenisée spécifique via son adresse de jeton.
Paramètres de requête
{chain}(paramètre de chemin, obligatoire) : identifiant de chaîne (par exemple,robinhood_mainnet).{token}(paramètre de chemin, obligatoire) : adresse du contrat de jeton sur 20 octets ; le préfixe0xest optionnel et les majuscules/minuscules sont acceptées (les adresses renvoyées sont normalisées avec0xsuivi de 40 chiffres hexadécimaux minuscules). Un format d'adresse non valide renvoie HTTP400(error.code = "bad_request").- Si
{token}n'est pas une action tokenisée connue, renvoie HTTP404(error.code = "not_found"). Si{chain}est une chaîne inconnue, renvoie HTTP404(error.code = "unknown_chain").
Exemples de code
curl -s "https://api.blockvectra.com/v1/data/robinhood_mainnet/stocks/0x1111111111111111111111111111111111111111" \
-H "x-api-key: $BLOCKVECTRA_API_KEY"Structure de réponse
L'enveloppe de réponse est StockTokenEnvelope, contenant data et meta :
data(objet) : un objetStockTokencontenant les métadonnées du contrat de jeton (address,symbol,name,decimals,created_block,created_tx_hash,factory,creator,mint_address,burn_address,refreshed_at) et un tableau de métriques quotidiennes récentesdaily.daily(tableau) : un tableau de métriques quotidiennes récentes (StockDailyMetric), jusqu'à 30 jours, ordonné par date décroissante (plus récent en premier). Chaque élément quotidien partage le même schéma de métriques que le classement ci-dessus (sans les champs redondantstoken,symboletname).
meta(objet) : objet de métadonnées de chaîne conforme à la réponse du classement.
Explication des champs de retour clés
Champs des métriques quotidiennes (StockDaily et StockDailyMetric)
Le classement ainsi que les éléments quotidiens historiques d'un jeton unique incluent les champs principaux suivants :
| Champ | Type | Description |
|---|---|---|
day | string (date) | Date d'agrégation UTC formatée en YYYY-MM-DD. |
token | string (address) | Adresse du contrat de jeton (présente uniquement dans le classement StockDaily), 40 caractères hexadécimaux minuscules avec le préfixe 0x. |
symbol | string | Symbole du jeton (par exemple, "EXMPL"). |
name | string | Nom d'affichage du jeton ; chaîne vide "" lorsqu'aucune métadonnée de nom correspondante n'est disponible. |
transfers | integer (int64) | Nombre total de transferts on-chain au cours de cette journée UTC. |
unique_senders | integer (int64) | Nombre d'adresses d'expéditeurs uniques ayant initié des transferts ce jour-là. |
unique_receivers | integer (int64) | Nombre d'adresses de destinataires uniques ayant reçu des transferts ce jour-là. |
mint_raw_amount | string (decimal) | Montant brut total de jetons émis ce jour-là. |
burn_raw_amount | string (decimal) | Montant brut total de jetons détruits ce jour-là. |
net_supply_change | string (decimal) | Variation nette de l'offre ce jour-là (chaîne décimale signée, peut être négative). |
holder_count | integer (int64) | Nombre total d'adresses détentrices. |
top10_holder_share_bps | integer | Part des 10 principaux détenteurs en points de base (0–10000, 1 bps = 0,01%). |
dex_swap_count | integer (int64) | Nombre de swaps DEX impliquant ce jeton ce jour-là. |
dex_raw_volume | string (decimal) | Volume brut total d'échanges sur DEX ce jour-là. |
refreshed_at | string (timestamp) | Horodatage UTC ISO-8601 de la dernière mise à jour de cet enregistrement quotidien. |
Champs de métadonnées du jeton (StockToken)
Lors de l'interrogation d'un seul jeton, l'objet externe data contient les métadonnées du contrat et les métriques quotidiennes récentes :
| Champ | Type | Description |
|---|---|---|
address | string (address) | Adresse du contrat de jeton. |
symbol | string | Symbole du jeton. |
name | string | Nom complet du jeton. |
decimals | integer ou null | Décimales du jeton (0–255), ou null si non disponible. |
created_block | integer (int64) | Numéro de bloc dans lequel le contrat de jeton a été créé. |
created_tx_hash | string (hash) | Hash de transaction de création du contrat, 64 caractères hexadécimaux minuscules avec le préfixe 0x. |
factory | string (address) | Adresse du contrat factory. |
creator | string (address) ou null | Adresse du créateur, ou null si non disponible. |
mint_address | string (address) ou null | Adresse d'émission (mint), ou null si non disponible. |
burn_address | string (address) ou null | Adresse de destruction (burn), ou null si non disponible. |
daily | array | Tableau de métriques quotidiennes récentes (StockDailyMetric), jusqu'à 30 jours, ordonné par date décroissante (plus récent en premier). |
refreshed_at | string (timestamp) | Horodatage UTC ISO-8601 de la dernière mise à jour des métadonnées du jeton. |
Conventions d'encodage
L'API respecte des règles d'encodage strictes sur tous les points de terminaison afin de préserver la précision numérique et la cohérence :
- Sécurité financière (Money-safety) : toute valeur pouvant dépasser
2^53(entiers de 256 bits tels quemint_raw_amount,burn_raw_amount,net_supply_changeetdex_raw_volume) est sérialisée sous forme de chaîne décimale, jamais comme nombre JSON et jamais en notation scientifique ou hexadécimale. Cela évite les pertes de précision dans les environnements d'exécution tels que JavaScript. En JavaScript/TypeScript, analysez avecBigInt(str)(par exempleconst net = BigInt(body.data.daily[0].net_supply_change)) ; en Python, analysez avecint(str). Les compteurs restant bien en deçà de2^53(transfers,unique_senders,unique_receivers,holder_count,top10_holder_share_bps,dex_swap_count,created_block) sont de simples nombres JSON. - Valeurs binaires et hexadécimales : les adresses sont composées de
0xsuivi de 40 caractères hexadécimaux minuscules ; les hashs sont composés de0xsuivi de 64 caractères hexadécimaux minuscules. Toutes les valeurs hexadécimales renvoyées sont strictement en minuscules. - Horodatages et dates : les horodatages tels que
refreshed_atutilisentYYYY-MM-DDTHH:MM:SSZ(ISO-8601 UTC avec précision à la seconde). Les agrégats quotidiens (day) utilisent de simples dates de calendrier (YYYY-MM-DD).
Estimation de consommation (actualisation quotidienne de 50 tokens)
Les requêtes de la Data API consomment des Compute Units (CU) selon les pondérations de méthodes de la plateforme. L'estimation ci-dessous évalue un scénario où 50 jetons appellent chacun GET /{chain}/stocks/{token} une fois par jour, calculée par rapport aux pondérations de méthodes actives :
- Poids de la méthode par appel : Chaque appel
data.stockconsomme 15 CU (prix catalogue de $1.50 par million d'appels). - Actualisation quotidienne de 50 tokens (un appel
GET /{chain}/stocks/{token}par token, 50 appels/jour) : La consommation quotidienne est de 750 CU ; sur un cycle de 30 jours, cela totalise 1,500 appels consommant 22,500 CU, soit environ <0.1% du quota gratuit (30,000,000 CU). En cas de dépassement du quota gratuit ou sur un forfait payant, l'utilisation totale au prix catalogue est d'environ <$0.01/mois.
Démarrage et mise à niveau
Le quota gratuit est idéal pour le développement, les tests et les charges de travail légères. Lorsque votre trafic augmente et nécessite une concurrence plus élevée ou davantage d'unités de calcul, rechargez on-chain sur la page Facturation de la console ; une fois la transaction confirmée on-chain et créditée, le plafond d'appels par seconde au niveau du compte est supprimé. Chaque clé reste soumise aux limites de débit en CU et de burst, comme décrit dans la documentation JSON-RPC. Tous les crédits gratuits inutilisés restent dans vos crédits et peuvent toujours être utilisés. Pour connaître les tarifs et unités de facturation actuels, veuillez consulter la page Tarifs.
Étapes suivantes
- Parcourir le répertoire des jeux de données pour voir chaque jeu de données indexé par BlockVectra.
- Consulter le forfait gratuit et les tarifs pour vérifier ce que comprend votre compte.
- Se connecter à la console pour créer une API key.
Dernière mise à jour :
Multiplicateur de tokens d'actions
Comprenez le multiplicateur de tokens d'actions Robinhood Chain, convertissez les soldes en actions, lisez uiMultiplier via eth_call et suivez les détenteurs et l'activité quotidienne via la Data API.
Traces de transaction
Reconstruisez les arbres d'appels d'exécution d'une transaction : la méthode JSON-RPC debug_traceTransaction avec ses traceurs autorisés et ses garde-fous, et les points de terminaison getTransactionTrace et getBlockTraces de la Data API avec leurs limites de couverture.