# Blokzincir Data API referansı

> Source: https://docs.blockvectra.com/tr/api/data/

## Genel bakış

İndekslenmiş bloklar, işlemler, adresler, token'lar, NFT'ler, DEX aktivitesi, tokenlaştırılmış hisse senetleri ve veri kümesi güncelliği için REST istekleri oluşturmak üzere bu Blokzincir Data API referansını kullanın. Bir veri kümesi seçmek ve zincir kullanılabilirliğini kontrol etmek için [veri kümeleri dizini](https://docs.blockvectra.com/tr/datasets/) ile başlayın; cüzdan token bakiyeleri ve transfer geçmişi için [cüzdan varlıkları rehberini](https://docs.blockvectra.com/tr/guides/wallet-assets/) takip edin.

* **Temel URL**: `https://api.blockvectra.com/v1/data` — `/chains` dışındaki her rotanın başında bir zincir tanımlayıcısı bulunur (ör. `https://api.blockvectra.com/v1/data/{chain}/…`)
* **Protokol**: HTTP `GET` (`/{chain}/tokens:batch` adresindeki toplu token sorguları için ayrıca `POST`), JSON yanıtları
* **Kimlik Doğrulama**: API anahtarı gereklidir — anahtarınızı `x-api-key` istek başlığında iletin. İstekler ölçülür ve Compute Units (CU) cinsinden faturalandırılır; yalnızca 2xx başarılı yanıtlar faturalandırılır
* **Ethereum**: veri kapsamı, `GET /v1/data/chains` içindeki `coverage.from_block` ile belirlenir ve daha küçük bir veri kümesi grubunu kapsar — bkz. [Desteklenen Zincirler → Ethereum](https://docs.blockvectra.com/tr/chains/#ethereum)

Data API CU ağırlıkları [Fiyatlandırma](https://blockvectra.com/tr/pricing/) sayfasında listelenir ve `GET /v1/plans` tarafından döndürülür. Örnek istekler ve yanıt yapıları için [Hızlı Başlangıç → Data API'yi çağırın](https://docs.blockvectra.com/tr/quickstart/#4-call-the-data-api) bölümüne bakın. Yol sürümleme, geriye dönük uyumluluk kuralları ve SDK önerileri için [API sürümleme ve uyumluluk](https://docs.blockvectra.com/tr/api/versioning/) sayfasına bakın.

## Zincirler

Data API, her zincire özgü indekslenmiş verileri sunar: `https://api.blockvectra.com/v1/data/{chain}/…`.

Kullanılabilir veri kümeleri ve özellikler zincire göre değişiklik gösterir; tam yetenek matrisi için [Desteklenen Zincirler](https://docs.blockvectra.com/tr/chains/) sayfasına bakın. `GET https://api.blockvectra.com/v1/data/chains`, her zincirin `features`, `coverage`, `finality` ve `limits` değerlerini bildirir. Bir veri kümesinin kapsamı dışındaki istekler HTTP `422 no_coverage` döndürür (faturalandırılmaz); bilinmeyen veya herkese açık olmayan bir zincir `error.code` `not_found` ile HTTP `404` döndürür (faturalandırılmaz; zincir adları küçük harfli tam slug'lar olmalıdır).

## Hatalar

Her hata yanıtı `{"error":{"code","message"}}` şeklindedir; yalnızca `409 not_indexed_yet` yanıtı `indexed_through` (o zincirdeki en yüksek indekslenmiş blok) alanını ekleyebilir ve zincirde henüz indekslenmiş veri yoksa bu alan bulunmaz. Müşterilerin en sık karşılaştığı kodlar:

| Durum | `error.code`           | Anlam                                                                                                                                                                                                      | Eylem                                                                                                                                                                                                                                   |
| ----- | ---------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `402` | `insufficient_balance` | Ücretli bakiye veya ücretsiz kredi tükendi; bakiye bilindiğinde `error.data` alanı `balance_units` ve `balance_cu` değerlerini içerir (faturalandırılmaz)                                                  | Konsol [Faturalandırma sayfasından](https://console.blockvectra.com/billing/) zincir üstü bakiye yükleyin veya ücretsiz kotanın yenilenmesini bekleyin                                                                                  |
| `404` | `not_found`            | Bilinmeyen veya herkese açık olmayan `{chain}` ya da nesne mevcut değil                                                                                                                                    | İsteği düzeltin                                                                                                                                                                                                                         |
| `409` | `not_indexed_yet`      | İstek `as_of_block` ötesine ulaşıyor (en yeni tamamen yazılmış blok; `indexed_through` içerir), hash `as_of_block` üzerinde çözümleniyor veya zincirde henüz indekslenmiş veri yok (`indexed_through` yok) | `indexed_through` mevcutsa, bloğunuz veya `to_block` bu değere eşit veya altında olana kadar sorgulayın; mevcut değilse zincirin indekslemeye başlamasını bekleyin (`GET /v1/data/chains` içindeki `coverage.has_data` durumu gösterir) |
| `422` | `no_coverage`          | Kalıcı boşluk: zincir bu yeteneğe sahip değil veya blok, indekslenen/iz (trace) kapsamından önce                                                                                                           | İsteği değiştirin; yeniden denemek yardımcı olmaz                                                                                                                                                                                       |
| `429` | `rate_limited`         | Anahtar CU hız sınırı (yanıt `Retry-After` içerir) veya hesap çağrı hız sınırı (`Retry-After` içermez); faturalandırılmaz                                                                                  | `Retry-After` saniye sonra yeniden deneyin                                                                                                                                                                                              |
| `429` | `cost_exceeds_burst`   | Tek bir isteğin maliyeti anahtarın burst kapasitesini aşıyor; `Retry-After` içermez (faturalandırılmaz)                                                                                                    | İsteği bölün; gönderildiği haliyle yeniden denemek asla başarılı olmaz                                                                                                                                                                  |
| `503` | `unavailable`          | Geçici olarak kullanılamıyor; yanıt `Retry-After` taşır. Ayrıca `coverage.from_block` değeri şu anda `null` olan bir zincirdeki geçmiş istekleri için de döndürülür                                        | `Retry-After` saniye sonra yeniden deneyin                                                                                                                                                                                              |
| `503` | `gateway_overloaded`   | Hesabın tüm anahtarları ve zincirleri genelindeki eşzamanlılık sınırına ulaşıldı veya hizmet geçici olarak meşgul; `Retry-After: 1` (faturalandırılmaz)                                                    | Hesap genelindeki eşzamanlı istekleri azaltın ve yeniden denemeden önce `Retry-After` saniye bekleyin                                                                                                                                   |

## Uç nokta dizini

Aşağıdaki, orijinal İngilizce belirtimdir.

<div lang="en">

### Chain

- 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

- GET /{chain}/status/freshness — Freshness and lag per dataset

### Addresses

- 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

- 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

- GET /{chain}/nfts/{contract}/{token_id} — Get one NFT's owner/holders
- GET /{chain}/nfts — List NFTs owned by an address

### DEX

- GET /{chain}/dex/swaps — List DEX swaps by pool or token
- GET /{chain}/dex/prices — Daily DEX token prices

### Stocks

- GET /{chain}/stocks — Daily leaderboard of tokenized stocks
- GET /{chain}/stocks/{token} — Get one tokenized stock

### Traces

- 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

</div>
