> ## 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.

# Şablonlar

> Yeniden kullanılabilir QR kodu tasarımlarını kaydedin ve yeni QR kodlarına uygulayın.

> [!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.

Şablon, yeniden kullanılabilir bir tasarımı saklar: `styles`, `frameOptions` ve `logoOptions`. Hiçbir zaman içerik veya bağlantı taşımaz. Şablonlar çalışma alanındaki herkesle paylaşılır.

| Yöntem | Yol | Açıklama |
| - | - | - |
| `GET` | `/api/v1/templates` | [Şablonları listeleme](#şablonları-listeleme) |
| `POST` | `/api/v1/templates` | [Şablon oluşturma](#şablon-oluşturma) |
| `GET` | `/api/v1/templates/{templateId}` | [Şablon alma](#şablon-alma) |
| `PATCH` | `/api/v1/templates/{templateId}` | [Şablonu güncelleme](#şablonu-güncelleme) |
| `DELETE` | `/api/v1/templates/{templateId}` | [Şablonu silme](#şablonu-silme) |
| `POST` | `/api/v1/templates/{templateId}/duplicate` | [Şablonu çoğaltma](#şablonu-çoğaltma) |

## Şablon uygulayın

[QR kodu oluştururken](https://docs.getqr.com/tr/api/endpoints/qr-codes.md) `templateId` gönderin. Şablonun tasarımı yeni QR koduna uygulanır. Aynı istekte gönderdiğiniz üç tasarım nesnesinden herhangi biri bunun üzerine birleştirilir.

* **Bağlanmaz, kopyalanır.** QR kodu tasarımın kendi kopyasını saklar. Şablonu daha sonra düzenlemek veya silmek onu değiştirmez.
* **Yalnızca özel tasarımlar.** `designKind` değeri `branded` veya `ai` olan bir şablon API üzerinden uygulanamaz ve `422` (`art_template_unsupported`) döndürür.
* **Yalnızca çalışma alanınız.** Bilinmeyen veya başka bir çalışma alanına ait bir şablon `404` döndürür.

## Başlıklar

**Authorization** `string` *required*

`Bearer` ve ardından API anahtarınız. Bkz. [Kimlik doğrulama](https://docs.getqr.com/tr/api/authentication.md).

**Content-Type** `string`

`application/json`. Gövdesi olan isteklerde zorunludur.

## Şablon nesnesi

**id** `string`

Şablonun kimliği; örneğin `qrt_8Hs2mQvKpLd4RtYw`.

**name** `string`

Şablon seçilirken gösterilen ad.

**designKind** `string`

Salt okunur. `custom`, API'nin tamamen düzenleyebildiği bir tasarımdır. `branded` ve `ai`, panelde oluşturulmuş bir markalı tasarım veya yapay zeka tasarımıdır: görseli API üzerinden düzenlenemez ve diğer tasarım alanlarını değiştirdiğinizde korunur.

**design** `object`

Kayıtlı tasarım. Her alan, aynı adlı istek alanıyla aynı yapıya sahiptir; böylece tasarımı geri gönderebilirsiniz.

**properties**

**styles** `object | null`

Nokta ve köşe şekilleri ve renkleri.

**frameOptions** `object | null`

QR kodunun çevresindeki çerçeve ve harekete geçirici mesaj metni.

**logoOptions** `object | null`

Ortadaki logo.

**createdAt** `string`

Oluşturulma tarihi, ISO 8601.

**updatedAt** `string`

Son güncelleme tarihi, ISO 8601.

## Şablonları listeleme

`GET /api/v1/templates`

Çalışma alanınızın şablonlarını en yeniden başlayarak döndürür. Liste sayfalıdır: bkz. [Sayfalama](https://docs.getqr.com/tr/api/introduction.md#sayfalama).

**page** `integer` (default: 1)

Döndürülecek sayfa; 1 veya daha büyük.

**pageSize** `integer` (default: 100)

Sayfa başına sonuç; 1 ile 100 arası.

```bash cURL theme={null}
curl "https://getqr.com/api/v1/templates?page=1&pageSize=100" \
  -H "Authorization: Bearer $GETQR_API_KEY"
```

```json 200 theme={null}
{
  "data": [
    {
      "id": "qrt_8Hs2mQvKpLd4RtYw",
      "name": "Brand blue",
      "designKind": "custom",
      "design": {
        "styles": {
          "dotsOptions": { "type": "rounded", "color": "#1E40AF" },
          "backgroundOptions": { "color": "#FFFFFF" }
        },
        "frameOptions": null,
        "logoOptions": null
      },
      "createdAt": "2026-07-20T09:12:00.000Z",
      "updatedAt": "2026-07-20T09:12:00.000Z"
    }
  ],
  "pagination": { "page": 1, "pageSize": 100, "total": 1, "hasMore": false }
}
```

## Şablon oluşturma

`POST /api/v1/templates`

Yeni bir tasarım kaydeder. `201 Created` ile yanıt verir. Tasarım alanları [Özelleştirme](https://docs.getqr.com/tr/api/guides/customization.md) sayfasındaki kataloglara göre kontrol edilir; bu nedenle bilinmeyen bir şekil, çerçeve veya logo `422` ile reddedilir.

**name** `string` *required*

Şablon seçilirken gösterilen ad; 1 ile 40 karakter arası.

**styles** `object`

Nokta ve köşe şekilleri ve renkleri. Bkz. [Özelleştirme](https://docs.getqr.com/tr/api/guides/customization.md).

**frameOptions** `object`

QR kodunun çevresine çizilen çerçeve ve harekete geçirici mesaj metni. Bkz. [Özelleştirme](https://docs.getqr.com/tr/api/guides/customization.md).

**logoOptions** `object`

Ortaya yerleştirilen logo: önerilen bir logo veya [Dosyalar](https://docs.getqr.com/tr/api/endpoints/files.md) uç noktasının `logo` hedefiyle yüklenmiş kendi dosyanız. Bkz. [Özelleştirme](https://docs.getqr.com/tr/api/guides/customization.md).

```bash cURL theme={null}
curl -X POST "https://getqr.com/api/v1/templates" \
  -H "Authorization: Bearer $GETQR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Brand blue",
    "styles": {
      "dotsOptions": { "type": "rounded", "color": "#1E40AF" },
      "backgroundOptions": { "color": "#FFFFFF" }
    }
  }'
```

```json 201 theme={null}
{
  "id": "qrt_8Hs2mQvKpLd4RtYw",
  "name": "Brand blue",
  "designKind": "custom",
  "design": {
    "styles": {
      "dotsOptions": { "type": "rounded", "color": "#1E40AF" },
      "backgroundOptions": { "color": "#FFFFFF" }
    },
    "frameOptions": null,
    "logoOptions": null
  },
  "createdAt": "2026-07-20T09:12:00.000Z",
  "updatedAt": "2026-07-20T09:12:00.000Z"
}
```

## Şablon alma

`GET /api/v1/templates/{templateId}`

**templateId** `string` *required*

Şablonun kimliği. Liste veya oluşturma yanıtından alın.

```bash cURL theme={null}
curl "https://getqr.com/api/v1/templates/qrt_8Hs2mQvKpLd4RtYw" \
  -H "Authorization: Bearer $GETQR_API_KEY"
```

```json 200 theme={null}
{
  "id": "qrt_8Hs2mQvKpLd4RtYw",
  "name": "Brand blue",
  "designKind": "custom",
  "design": {
    "styles": {
      "dotsOptions": { "type": "rounded", "color": "#1E40AF" },
      "backgroundOptions": { "color": "#FFFFFF" }
    },
    "frameOptions": null,
    "logoOptions": null
  },
  "createdAt": "2026-07-20T09:12:00.000Z",
  "updatedAt": "2026-07-20T09:12:00.000Z"
}
```

## Şablonu güncelleme

`PATCH /api/v1/templates/{templateId}`

Yalnızca değiştirmek istediğiniz alanları gönderin. Tasarım nesneleri kayıtlı tasarımla birleştirilir; bu nedenle kısmi bir `styles` geri kalanını korur. Şablondan önceden oluşturulmuş QR kodları, oluşturuldukları tasarımı korur.

**templateId** `string` *required*

Şablonun kimliği.

**name** `string`

Yeni ad; 1 ile 40 karakter arası.

**styles** `object`

Stil değişiklikleri; kayıtlı `styles` ile birleştirilir.

**frameOptions** `object`

Çerçeve değişiklikleri; kayıtlı çerçeveyle birleştirilir.

**logoOptions** `object`

Logo değişiklikleri; kayıtlı logoyla birleştirilir.

```bash cURL theme={null}
curl -X PATCH "https://getqr.com/api/v1/templates/qrt_8Hs2mQvKpLd4RtYw" \
  -H "Authorization: Bearer $GETQR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "name": "Brand blue (2026)" }'
```

```json 200 theme={null}
{
  "id": "qrt_8Hs2mQvKpLd4RtYw",
  "name": "Brand blue (2026)",
  "designKind": "custom",
  "design": {
    "styles": {
      "dotsOptions": { "type": "rounded", "color": "#1E40AF" },
      "backgroundOptions": { "color": "#FFFFFF" }
    },
    "frameOptions": null,
    "logoOptions": null
  },
  "createdAt": "2026-07-20T09:12:00.000Z",
  "updatedAt": "2026-08-14T09:00:00.000Z"
}
```

## Şablonu silme

`DELETE /api/v1/templates/{templateId}`

Şablonu siler. Ondan oluşturulan QR kodları tasarımlarını korur.

**templateId** `string` *required*

Şablonun kimliği.

```bash cURL theme={null}
curl -X DELETE "https://getqr.com/api/v1/templates/qrt_8Hs2mQvKpLd4RtYw" \
  -H "Authorization: Bearer $GETQR_API_KEY"
```

```json 200 theme={null}
{ "id": "qrt_8Hs2mQvKpLd4RtYw", "deleted": true }
```

## Şablonu çoğaltma

`POST /api/v1/templates/{templateId}/duplicate`

`<name> copy` adında, kendi kimliğine ve serbestçe düzenleyebileceğiniz bağımsız bir tasarıma sahip bir kopya oluşturur. İstek gövdesi almaz. `201 Created` ile yanıt verir.

**templateId** `string` *required*

Kopyalanacak şablonun kimliği.

```bash cURL theme={null}
curl -X POST "https://getqr.com/api/v1/templates/qrt_8Hs2mQvKpLd4RtYw/duplicate" \
  -H "Authorization: Bearer $GETQR_API_KEY"
```

```json 201 theme={null}
{
  "id": "qrt_2Kd9pLm4Xs7BnVcQ",
  "name": "Brand blue copy",
  "designKind": "custom",
  "design": {
    "styles": {
      "dotsOptions": { "type": "rounded", "color": "#1E40AF" },
      "backgroundOptions": { "color": "#FFFFFF" }
    },
    "frameOptions": null,
    "logoOptions": null
  },
  "createdAt": "2026-08-14T09:30:00.000Z",
  "updatedAt": "2026-08-14T09:30:00.000Z"
}
```

## Sık karşılaşılan sorunlar

> [accordion] 404 "QR template not found."
>
> `templateId`, çalışma alanınızdaki hiçbir şablonla eşleşmiyor. Değeri [Şablonları listeleme](#şablonları-listeleme) yanıtından alın.

> [accordion] Şablon oluştururken veya güncellerken 422
>
> Bir tasarım alanı kataloglarla eşleşmiyor; örneğin bilinmeyen bir nokta türü, çerçeve veya önerilen logo. Mesaj alanın adını verir. Bkz. [Özelleştirme](https://docs.getqr.com/tr/api/guides/customization.md).

> [accordion] QR kodu oluştururken 422 art\_template\_unsupported
>
> Şablon markalı bir tasarım veya yapay zeka tasarımı kullanıyor. Bunun yerine `designKind` değeri `custom` olan bir şablon uygulayın.

## Sırada ne var

> [card] [Özelleştirme](https://docs.getqr.com/tr/api/guides/customization.md)

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

> [card] [Uygulamada şablonlar](https://docs.getqr.com/tr/templates/save-template.md)

> [card] [Dosyalar](https://docs.getqr.com/tr/api/endpoints/files.md)


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