Blockchain Data API-Referenz

Blockchain Data API-Anfragereferenz: REST-Endpunkte, API-Schlüssel-Authentifizierung, Parameter, Antwortschemata, Fehler und CU-Gewichte für indizierte Chain-Daten.

Übersicht

Nutzen Sie diese Blockchain Data API-Referenz zum Erstellen von REST-Anfragen für indizierte Blöcke, Transaktionen, Adressen, Token, NFTs, DEX-Aktivitäten, tokenisierte Aktien und die Aktualität von Datensätzen. Um einen Datensatz auszuwählen und die Chain-Verfügbarkeit zu prüfen, beginnen Sie mit dem Datensatzverzeichnis; für Wallet-Token-Guthaben und den Transferverlauf folgen Sie dem Wallet-Assets-Leitfaden.

  • Basis-URL: https://api.blockvectra.com/v1/data — jeder Pfad außer /chains ist mit einer Chain-Kennung vorangestellt (z. B. https://api.blockvectra.com/v1/data/{chain}/…)
  • Protokoll: HTTP GET (plus POST für Batch-Token-Abfragen unter /{chain}/tokens:batch), JSON-Antworten
  • Authentifizierung: API-Schlüssel erforderlich — übergeben Sie Ihren Schlüssel im Anfrage-Header x-api-key. Anfragen werden in Compute Units (CU) gemessen und abgerechnet; nur erfolgreiche 2xx-Antworten werden abgerechnet
  • Ethereum: Die Datenabdeckung wird durch coverage.from_block in GET /v1/data/chains bestimmt und umfasst eine kleinere Auswahl an Datensätzen — siehe Unterstützte Chains → Ethereum

CU-Gewichte der Data API sind auf der Seite Preise aufgeführt und werden von GET /v1/plans zurückgegeben. Siehe Schnellstart → Die Data API aufrufen für Beispielanfragen und Antwortformate. Informationen zur Pfadversionierung, Abwärtskompatibilitätsregeln und SDK-Empfehlungen finden Sie unter API-Versionierung und Kompatibilität.

Chains

Die Data API stellt indizierte Daten bezogen auf die jeweilige Chain bereit: https://api.blockvectra.com/v1/data/{chain}/….

Verfügbare Datensätze und Funktionen variieren je nach Chain; die vollständige Funktionsmatrix finden Sie unter Unterstützte Chains. GET https://api.blockvectra.com/v1/data/chains gibt für jede Chain features, coverage, finality und limits zurück. Anfragen außerhalb der Abdeckung eines Datensatzes geben HTTP 422 no_coverage zurück (wird nicht abgerechnet); eine unbekannte oder nicht-öffentliche Chain gibt HTTP 404 mit error.code not_found zurück (wird nicht abgerechnet; Chain-Namen müssen exakte Kleinbuchstaben-Slugs sein).

Fehler

Jede Fehlerantwort lautet {"error":{"code","message"}}; nur 409 not_indexed_yet kann zusätzlich indexed_through enthalten (der höchste indizierte Block auf dieser Chain), und dieses Feld fehlt, wenn die Chain noch keine indizierten Daten aufweist. Fehlercodes, auf die Kunden am häufigsten stoßen:

Statuserror.codeBedeutungMaßnahme
402insufficient_balanceBezahltes Guthaben oder kostenloses Kontingent aufgebraucht; wenn das Guthaben bekannt ist, enthält error.data die Felder balance_units und balance_cu (wird nicht abgerechnet)Laden Sie On-Chain über die Abrechnungsseite der Konsole auf oder warten Sie, bis das kostenlose Kontingent wieder aufgefüllt wird
404not_foundUnbekannte oder nicht-öffentliche {chain}, oder das Objekt existiert nichtKorrigieren Sie die Anfrage
409not_indexed_yetAnfrage reicht über as_of_block hinaus (neuester vollständig geschriebener Block; enthält indexed_through), Hash verweist auf einen Block über as_of_block, oder die Chain hat noch keine indizierten Daten (kein indexed_through)Mit indexed_through abfragen, bis Ihr Block oder to_block kleiner oder gleich diesem ist; ohne dieses Feld warten, bis die Chain mit der Indizierung beginnt (coverage.has_data in GET /v1/data/chains zeigt den Zustand)
422no_coverageDauerhafte Lücke: Der Chain fehlt diese Fähigkeit, oder der Block liegt vor der Index-/Trace-AbdeckungÄndern Sie die Anfrage; ein erneuter Versuch hilft nicht
429rate_limitedCU-Ratenlimit des API-Schlüssels (Antwort enthält Retry-After) oder Aufruf-Ratenlimit des Kontos (kein Retry-After); wird nicht abgerechnetNach Retry-After Sekunden erneut versuchen
429cost_exceeds_burstEine einzelne Anfrage kostet mehr als die Burst-Kapazität des API-Schlüssels; kein Retry-After (wird nicht abgerechnet)Teilen Sie die Anfrage auf; ein erneuter Versuch im aktuellen Zustand ist niemals erfolgreich
503unavailableVorübergehend nicht verfügbar; die Antwort enthält Retry-After. Wird auch für historische Anfragen auf einer Chain zurückgegeben, deren coverage.from_block derzeit null istNach Retry-After Sekunden erneut versuchen
503gateway_overloadedDie kontoweite Nebenläufigkeitsbegrenzung über alle API-Schlüssel und Chains hinweg ist erreicht, oder der Dienst ist vorübergehend ausgelastet; Retry-After: 1 (wird nicht abgerechnet)Reduzieren Sie gleichzeitige Anfragen über das gesamte Konto und warten Sie vor dem erneuten Versuch Retry-After Sekunden

Endpunkt-Index

Nachfolgend finden Sie die englische Originalspezifikation.

Chain

MethodePfadÜbersicht
GET/chainsList supported chains
GET/{chain}/blocks/{number}Get a block by number
GET/{chain}/blocks/hash/{hash}Get a block by hash
GET/{chain}/blocks/{number}/transactionsList a block's transactions
GET/{chain}/transactions/{hash}Get a transaction by hash

Status

MethodePfadÜbersicht
GET/{chain}/status/freshnessFreshness and lag per dataset

Addresses

MethodePfadÜbersicht
GET/{chain}/addresses/{address}/transactionsList an address's transactions
GET/{chain}/addresses/{address}/transfersList an address's token transfers
GET/{chain}/addresses/{address}/balancesList an address's ERC-20 balances

Tokens

MethodePfadÜbersicht
GET/{chain}/tokens/{token}/transfersList a token contract's transfers
GET/{chain}/tokens/{token}/holdersList a token's holders
GET/{chain}/tokens/{token}Get token metadata
POST/{chain}/tokens:batchBatch get token metadata

NFTs

MethodePfadÜbersicht
GET/{chain}/nfts/{contract}/{token_id}Get one NFT's owner/holders
GET/{chain}/nftsList NFTs owned by an address

DEX

MethodePfadÜbersicht
GET/{chain}/dex/swapsList DEX swaps by pool or token
GET/{chain}/dex/pricesDaily DEX token prices

Stocks

MethodePfadÜbersicht
GET/{chain}/stocksDaily leaderboard of tokenized stocks
GET/{chain}/stocks/{token}Get one tokenized stock

Traces

MethodePfadÜbersicht
GET/{chain}/blocks/{number}/tracesHistorical callTracer trace tree for a whole block
GET/{chain}/transactions/{hash}/traceHistorical callTracer trace tree for one transaction

Nachfolgend finden Sie die englische Originalspezifikation.

Zuletzt aktualisiert:

Auf dieser Seite