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

# API'ye giriş

> QR kodlarını, şablonları, analizleri ve raporları kendi kodunuzdan yönetin.

> [!NOTE]
>
> GetQR API'si beta aşamasındadır ve seçili çalışma alanlarında kullanılabilir. Ayrıntılar genel sürümden önce değişebilir.

GetQR API'si, panelde yaptığınız işler için bir REST API'sidir: QR kodları oluşturup güncelleyin, görsellerini indirin, tarama analizlerini okuyun ve rapor dışa aktarın. Hesabınızın API anahtarıyla kimlik doğrulaması yapın ve `/api/v1` altındaki sürümlü uç noktaları çağırın.

## Neler yapabilirsiniz

> [card] [QR kodları](https://docs.getqr.com/tr/api/endpoints/qr-codes.md)
>
> QR kodlarını oluşturun, listeleyin, güncelleyin, duraklatın, çoğaltın, silin ve indirin.

> [card] [Analizler](https://docs.getqr.com/tr/api/endpoints/analytics.md)
>
> Tek bir QR kodu veya tüm çalışma alanı için tarama toplamları ve dağılımları.

> [card] [Raporlar](https://docs.getqr.com/tr/api/endpoints/reports.md)
>
> Tek seferlik bir rapor dışa aktarın veya düzenli rapor e-postaları zamanlayın.

> [card] [Şablonlar](https://docs.getqr.com/tr/api/endpoints/templates.md)
>
> Tasarımları kaydedin ve yeni QR kodlarına uygulayın.

> [card] [Toplu QR oluşturma](https://docs.getqr.com/tr/api/endpoints/bulk-qr-creations.md)
>
> JSON'dan veya bir CSV dosyasından tek seferde en fazla 100 QR kodu oluşturun.

> [card] [Dosyalar](https://docs.getqr.com/tr/api/endpoints/files.md)
>
> QR kodlarınız için PDF, görsel, video ve logo yükleyin.

> [card] [Durum](https://docs.getqr.com/tr/api/endpoints/health.md)
>
> API'nin çalıştığını kontrol edin. API anahtarı gerekmez.

## Kılavuzlar

> [card] [QR türleri](https://docs.getqr.com/tr/api/guides/qr-types.md)
>
> 16 QR türünün her biri için veri biçimi.

> [card] [Özelleştirme](https://docs.getqr.com/tr/api/guides/customization.md)
>
> Nokta stilleri, köşeler, renkler, çerçeveler ve logolar.

> [card] [Erişim kuralları](https://docs.getqr.com/tr/api/guides/access-rules.md)
>
> Zamanlamalar, tarama sınırları, parolalar, duraklatma ve silme.

## Temel URL

Tüm uç noktalar tek bir temel URL altında bulunur:

```text theme={null}
https://getqr.com/api/v1
```

## Sürümleme

API sürümü yolun bir parçasıdır: her uç nokta `/api/v1/` altında bulunur.

* Geriye dönük uyumsuz değişiklikler `/api/v2/` gibi yeni bir sürüm önekiyle yayımlanır ve `/api/v1/` çalışmaya devam eder.
* Yeni isteğe bağlı alanlar veya yeni uç noktalar gibi ekleme niteliğindeki değişiklikler v1 içinde gelebilir. Kodunuzun tanımadığı yanıt alanlarını yok sayın.

## Hızlı başlangıç

**1. API anahtarınızı alın**

Anahtarınızı hesap ayarlarınızda oluşturun veya görüntüleyin. Bkz. [Kimlik doğrulama](https://docs.getqr.com/tr/api/authentication.md).

**2. API'ye erişilebildiğini kontrol edin**

```bash theme={null}
curl https://getqr.com/api/v1/health
```

Yanıt `{ "status": "ok", "version": "v1" }` olur.

**3. İlk QR kodunuzu oluşturun**

```bash theme={null}
curl -X POST "https://getqr.com/api/v1/qrs" \
  -H "Authorization: Bearer $GETQR_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: first-qr-0001" \
  -d '{
    "qrType": "website",
    "data": "https://example.com",
    "title": "Landing page"
  }'
```

API, `id` ve `shortLink` değerleri dahil yeni QR koduyla birlikte `201` yanıtı verir.

**4. Görseli indirin**

```bash theme={null}
curl "https://getqr.com/api/v1/qrs/{qrId}/download?format=png&resolution=1024" \
  -H "Authorization: Bearer $GETQR_API_KEY" \
  --output qr-code.png
```

## İstekler ve yanıtlar

* **Biçim.** İstek gövdelerini `Content-Type: application/json` ile JSON olarak gönderin. İstisna, [toplu oluşturma](https://docs.getqr.com/tr/api/endpoints/bulk-qr-creations.md) için CSV yüklemesidir; bu yükleme `multipart/form-data` kullanır.
* **Yanıtlar.** Yanıtlar JSON biçimindedir. QR görselleri ve toplu ZIP arşivleri gibi indirmeler dosyanın kendisini döndürür.
* **Tarihler.** Tarihler UTC'de ISO 8601 dizeleridir; örneğin `2026-08-01T10:00:00.000Z`.
* **Sorgu parametreleri.** Boolean parametreler `true` veya `false` dizelerini alır.
* **Kısmi güncellemeler.** `PATCH` uç noktaları yalnızca gönderdiğiniz alanları değiştirir.
* **Gizli bilgiler.** Yanıtlar hiçbir zaman parola veya dahili tanımlayıcı içermez. Parola korumalı bir QR kodu yalnızca `passwordProtected: true` bildirir.
* **Çalışma alanı.** Her istek, API anahtarınızın ait olduğu çalışma alanında çalışır. Çalışma alanı kimliği göndermezsiniz. Bkz. [Erişim ve roller](https://docs.getqr.com/tr/api/authentication.md#erişim-ve-roller).
* **Hatalar.** Başarısız istekler, sabit bir `code` içeren bir `error` nesnesi döndürür. Bkz. [Hatalar](https://docs.getqr.com/tr/api/errors.md).

## Sayfalama

Liste uç noktaları (QR kodları, şablonlar ve zamanlanmış raporlar) iki sorgu parametresi alır:

| Parametre | Açıklama |
| - | - |
| `page` | Döndürülecek sayfa. Varsayılanı `1`. |
| `pageSize` | Sayfa başına sonuç; en fazla `100`. Varsayılanı `100`. |

Bir `data` dizisi ve bir `pagination` nesnesiyle yanıt verirler:

```json theme={null}
{
  "data": [ … ],
  "pagination": { "page": 1, "pageSize": 50, "total": 128, "hasMore": true }
}
```

| Alan | Açıklama |
| - | - |
| `page` | Aldığınız sayfa. |
| `pageSize` | Aldığınız sayfa boyutu. |
| `total` | Tüm sayfalardaki toplam sonuç sayısı. |
| `hasMore` | Bekleyen başka bir sayfa olduğu sürece `true`. |

`hasMore` değeri `true` olduğu sürece sonraki sayfayı isteyin. `100` değerini aşan bir `pageSize`, [`422`](https://docs.getqr.com/tr/api/errors#doğrulama-hataları) döndürür.

## Idempotency

Bir ağ hatası, isteğin işlenip işlenmediğinden emin olamamanıza neden olabilir. [QR kodu oluşturma](https://docs.getqr.com/tr/api/endpoints/qr-codes.md#qr-kodu-oluşturma) isteğini güvenle yeniden denemek için, seçtiğiniz benzersiz bir değerle `Idempotency-Key` başlığı gönderin:

```bash theme={null}
-H "Idempotency-Key: order-4821-qr"
```

* İsteği 24 saat içinde aynı anahtarla tekrarlamak, ikinci bir QR kodu oluşturmak yerine ilk yanıtı döndürür.
* `x-idempotent-replay` yanıt başlığı, tekrarlanan bir yanıt için `true`, yeni bir yanıt için `false` olur.
* Bu anahtarla gönderilen ilk istek hâlâ çalışıyorsa API `409 conflict` yanıtı verir. İstek tamamlandığında yeniden deneyin.
* Bir anahtarı farklı bir istek gövdesiyle yeniden kullanmak `422 unprocessable_entity` yanıtı döndürür.
* Başlık olmadan, 30 saniye içinde gönderilen aynı istek gövdesi kopya olarak değerlendirilir.

Toplu oluşturmalar bunun yerine istek gövdesinde bir `idempotencyKey` alanı alır. Bkz. [Toplu QR oluşturma](https://docs.getqr.com/tr/api/endpoints/bulk-qr-creations.md).

## İstek sınırları

Her API anahtarı dakikada en fazla 600 istek gönderebilir. Bkz. [İstek sınırları](https://docs.getqr.com/tr/api/rate-limits.md).

## Yakında

Baskıya hazır paketler sonraki bir sürüm için planlanmaktadır.

## Sırada ne var

> [card] [Kimlik doğrulama](https://docs.getqr.com/tr/api/authentication.md)

> [card] [QR kodları](https://docs.getqr.com/tr/api/endpoints/qr-codes.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.