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/chainsist mit einer Chain-Kennung vorangestellt (z. B.https://api.blockvectra.com/v1/data/{chain}/…) - Protokoll: HTTP
GET(plusPOSTfü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_blockinGET /v1/data/chainsbestimmt 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:
| Status | error.code | Bedeutung | Maßnahme |
|---|---|---|---|
402 | insufficient_balance | Bezahltes 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 |
404 | not_found | Unbekannte oder nicht-öffentliche {chain}, oder das Objekt existiert nicht | Korrigieren Sie die Anfrage |
409 | not_indexed_yet | Anfrage 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) |
422 | no_coverage | Dauerhafte 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 |
429 | rate_limited | CU-Ratenlimit des API-Schlüssels (Antwort enthält Retry-After) oder Aufruf-Ratenlimit des Kontos (kein Retry-After); wird nicht abgerechnet | Nach Retry-After Sekunden erneut versuchen |
429 | cost_exceeds_burst | Eine 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 |
503 | unavailable | Vorü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 ist | Nach Retry-After Sekunden erneut versuchen |
503 | gateway_overloaded | Die 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
| Methode | Pfad | Übersicht |
|---|---|---|
| GET | /chains | List 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}/transactions | List a block's transactions |
| GET | /{chain}/transactions/{hash} | Get a transaction by hash |
Status
| Methode | Pfad | Übersicht |
|---|---|---|
| GET | /{chain}/status/freshness | Freshness and lag per dataset |
Addresses
| Methode | Pfad | Übersicht |
|---|---|---|
| GET | /{chain}/addresses/{address}/transactions | List an address's transactions |
| GET | /{chain}/addresses/{address}/transfers | List an address's token transfers |
| GET | /{chain}/addresses/{address}/balances | List an address's ERC-20 balances |
Tokens
| Methode | Pfad | Übersicht |
|---|---|---|
| GET | /{chain}/tokens/{token}/transfers | List a token contract's transfers |
| GET | /{chain}/tokens/{token}/holders | List a token's holders |
| GET | /{chain}/tokens/{token} | Get token metadata |
| POST | /{chain}/tokens:batch | Batch get token metadata |
NFTs
| Methode | Pfad | Übersicht |
|---|---|---|
| GET | /{chain}/nfts/{contract}/{token_id} | Get one NFT's owner/holders |
| GET | /{chain}/nfts | List NFTs owned by an address |
DEX
| Methode | Pfad | Übersicht |
|---|---|---|
| GET | /{chain}/dex/swaps | List DEX swaps by pool or token |
| GET | /{chain}/dex/prices | Daily DEX token prices |
Stocks
| Methode | Pfad | Übersicht |
|---|---|---|
| GET | /{chain}/stocks | Daily leaderboard of tokenized stocks |
| GET | /{chain}/stocks/{token} | Get one tokenized stock |
Traces
| Methode | Pfad | Übersicht |
|---|---|---|
| GET | /{chain}/blocks/{number}/traces | Historical callTracer trace tree for a whole block |
| GET | /{chain}/transactions/{hash}/trace | Historical callTracer trace tree for one transaction |
Nachfolgend finden Sie die englische Originalspezifikation.
Zuletzt aktualisiert:
Versionierung & Kompatibilität
BlockVectra API-Pfadversionierung, Definitionen abwärtskompatibler Änderungen sowie Chain- und Methodenverfügbarkeit.
JSON-RPC
Unterstützte JSON-RPC-Methoden, CU-Gewichte und Fehlercodes. Endpunkt einrichten, Chain auswählen und Methodenverfügbarkeit, Preise und Abrechnungsregeln prüfen.