> ## Documentation Index
> Fetch the complete documentation index at: https://docs.orbitflare.com/llms.txt
> Use this file to discover all available pages before exploring further.

# getBlockProduction

> Mevcut veya önceki dönemden son blok üretim bilgilerini döndürür

## Parametreler

<ParamField query="config" type="object" optional>
  Aşağıdaki isteğe bağlı alanları içeren yapılandırma nesnesi:

  <Expandable title="config fields">
    <ParamField query="commitment" type="string" optional>
      Kullanılacak onay seviyesi:

      * `processed`: En son blok (onaylanmamış)
      * `confirmed`: Süper çoğunluk tarafından onaylanmış
      * `finalized`: Süper çoğunluk tarafından sonuçlandırılmış
    </ParamField>

    <ParamField query="range" type="object" optional>
      Blok üretim bilgilerinin döndürüleceği slot aralığı:

      * `firstSlot`: number - Bilgi döndürülecek ilk slot (dahil)
      * `lastSlot`: number - Bilgi döndürülecek son slot (dahil)
    </ParamField>

    <ParamField query="identity" type="string" optional>
      Yalnızca bu doğrulayıcı kimliği için sonuçları döndürün (base-58 kodlu)
    </ParamField>
  </Expandable>
</ParamField>

## Yanıt

<ResponseField name="result" type="object">
  <Expandable title="result fields">
    <ResponseField name="context" type="object">
      <ResponseField name="slot" type="number">
        İsteğin işlendiği slot
      </ResponseField>
    </ResponseField>

    <ResponseField name="value" type="object">
      <ResponseField name="byIdentity" type="object">
        Her biri şunları içeren doğrulayıcı kimlikleri sözlüğü:

        * `leader_slots`: number - Lider olarak atanan slotlar
        * `blocks_produced`: number - Bu dönemde üretilen bloklar
      </ResponseField>

      <ResponseField name="range" type="object">
        <ResponseField name="firstSlot" type="number">
          Blok üretim bilgisinin ilk slotu (dahil)
        </ResponseField>

        <ResponseField name="lastSlot" type="number">
          Blok üretim bilgisinin son slotu (dahil)
        </ResponseField>
      </ResponseField>
    </ResponseField>
  </Expandable>
</ResponseField>

## Kod Örnekleri

### Temel İstek

```bash theme={null}
curl https://fra.rpc.orbitflare.com?api_key=YOUR-API-KEY -X POST -H "Content-Type: application/json" -d '{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "getBlockProduction"
}'
```

### Aralık ve Kimlikle İstek

```bash theme={null}
curl https://fra.rpc.orbitflare.com?api_key=YOUR-API-KEY -X POST -H "Content-Type: application/json" -d '{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "getBlockProduction",
  "params": [
    {
      "range": {
        "firstSlot": 100000000,
        "lastSlot": 100000100
      },
      "identity": "GH7ome3EiwEr17v3Fn6XY4RjS1YERxYzwXSW8kZ8kBYq"
    }
  ]
}'
```

### web3.js Kullanımı

```typescript theme={null}
import { Connection } from '@solana/web3.js';

const connection = new Connection('https://fra.rpc.orbitflare.com?api_key=YOUR-API-KEY');

const blockProduction = await connection.getBlockProduction();
console.log('Block production:', blockProduction);

// Get production for specific range and validator
const config = {
  range: {
    firstSlot: 100000000,
    lastSlot: 100000100
  },
  identity: 'GH7ome3EiwEr17v3Fn6XY4RjS1YERxYzwXSW8kZ8kBYq'
};
const specificProduction = await connection.getBlockProduction(config);
```

## Notlar

1. Parametresiz, mevcut dönemdeki tüm doğrulayıcılar için üretimi döndürür
2. `range` parametresi birden fazla dönemi kapsayabilir
3. Blok üretim istatistikleri, doğrulayıcı performansını izlemek için kullanılır
4. Sonuçlar hem atanan lider slotlarını hem de fiilen üretilen blokları içerir

## En İyi Uygulamalar

1. Geçmiş bilgi sorgularken veriyi sınırlamak için `range` kullanın
2. Belirli doğrulayıcı performansını izlemek için `identity` kullanın
3. Doğrulayıcı güvenilirliğini değerlendirmek için `leader_slots`'u `blocks_produced` ile karşılaştırın
4. RPC yükünü azaltmak için uygun durumlarda sonuçları önbelleğe alın

## Yaygın Hatalar

| Kod    | Mesaj                                    | Çözüm                                                    |
| ------ | ---------------------------------------- | -------------------------------------------------------- |
| -32602 | Invalid param: WrongSize                 | Doğrulayıcı kimliğinin geçerli olduğunu doğrulayın       |
| -32602 | Invalid param: not base58 encoded string | Doğrulayıcı kimliğinin base58 kodlu olduğundan emin olun |
| -32602 | Invalid param: slot range too large      | Slot aralığı boyutunu küçültün                           |
| -32007 | Block production not available           | Düğüm başlatılıyor veya aralık çok eski olabilir         |
