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

# Özelleştirme

> QR kodlarını API üzerinden biçimlendirin: nokta ve köşe şekilleri, renkler, çerçeveler ve logolar.

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

Bir QR kodunu oluştururken veya güncellerken isteğe bağlı `styles`, `frameOptions` ve `logoOptions` nesneleriyle biçimlendirin. Tüm alanlar isteğe bağlıdır ve göndermediğiniz her şey için varsayılan değerler uygulanır.

Aynı üç nesne [QR kodlarında](https://docs.getqr.com/tr/api/endpoints/qr-codes.md), [şablonlarda](https://docs.getqr.com/tr/api/endpoints/templates.md) ve [toplu oluşturmalarda](https://docs.getqr.com/tr/api/endpoints/bulk-qr-creations.md) çalışır. Bilinmeyen şekiller, çerçeveler veya logolar `422` ile reddedilir.

## Örnek tasarım nesnesi

```json theme={null}
{
  "styles": {
    "dotsOptions": { "type": "rounded", "color": "#000000" },
    "backgroundOptions": { "color": "#ffffff" },
    "cornersSquareOptions": { "type": "dot", "color": "#000000" },
    "cornersDotOptions": { "type": "dot", "color": "#000000" }
  },
  "frameOptions": { "id": "card", "text": "Scan me!", "color": "#000000", "textColor": "#ffffff" },
  "logoOptions": { "type": "suggested", "id": "logo-google", "scalePercent": 25 }
}
```

Bunu QR kodunun geri kalanıyla birlikte gönderin:

```bash theme={null}
curl -X POST "https://getqr.com/api/v1/qrs" \
  -H "Authorization: Bearer $GETQR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "qrType": "website",
    "data": "https://example.com",
    "styles": { "dotsOptions": { "type": "rounded", "color": "#1E40AF" } },
    "frameOptions": { "id": "card", "text": "Scan me!" },
    "logoOptions": { "type": "suggested", "id": "logo-website-3" }
  }'
```

## Stiller

`styles` nesnesi desen şekillerini ve renklerini belirler.

| Alan | Değerler |
| - | - |
| `dotsOptions.type` | Gövde noktalarının şekli: `square`, `dots`, `rounded`, `classy`, `classy-rounded`, `extra-rounded` |
| `cornersSquareOptions.type` | Köşe karesinin (göz çerçevesi) şekli: `square`, `rounded`, `dot`, `classy-rounded` |
| `cornersDotOptions.type` | Köşe noktasının (göz bebeği) şekli: `square`, `dot`, `dots`, `rounded`, `classy` |
| `dotsOptions.color` | Ön plan rengi. Varsayılanı `#000000`. |
| `backgroundOptions.color` | Arka plan rengi. Varsayılanı `#ffffff`. |
| `cornersSquareOptions.color`, `cornersDotOptions.color` | Kabul edilir ancak etkisi yoktur: köşeler her zaman `dotsOptions.color` kullanır. |

* **Renkler.** Yalnızca hex değerleri: `#RGB` veya `#RRGGBB`.
* **Hata düzeltme.** Her zaman `Q` olur ve girdi olarak alınmaz. `styles.qrOptions` göndermek `422` döndürür.
* **Markalı ve yapay zeka tasarımları.** API üzerinden ayarlanamaz. `styles.logoQrArt` göndermek `422` döndürür.
* **İçerik.** `styles.data` yok sayılır. Görsel her zaman QR kodunun içeriğini kodlar.

> [!TIP]
>
> Ön plan ve arka plan renkleri arasında yeterli kontrast bırakın; açık bir arka plan üzerinde koyu bir ön plan kullanın. Düşük kontrastlı kodlar taranamayabilir. Bkz. [Renkler](https://docs.getqr.com/tr/design/colors.md).

## Çerçeveler

`frameOptions` nesnesi, QR kodunun çevresine harekete geçirici mesaj içeren dekoratif bir çerçeve ekler.

| Alan | Açıklama |
| - | - |
| `id` | `frameOptions` gönderdiğinizde zorunludur. Aşağıdaki listelerden çerçeve türü. `none`, çerçeve yok demektir. |
| `text` | Harekete geçirici mesaj etiketi; en fazla 12 karakter. Varsayılanı `Scan me!`. |
| `color` | Çerçeve rengi, hex. |
| `textColor` | Etiket rengi, hex. Çerçeve bir etiket gösterdiğinde `color` değerinden farklı olmalıdır; çift, çerçevenin yerleşik renk ön ayarlarından biri değilse. |
| `borderColor` | Kenarlık rengi, hex. |
| `fingerPrintColor` | Çerçeve simgesinin vurgu rengi, hex. |

> [accordion] Genel çerçeveler
>
> `none`, `card`, `card-1`, `card-2`, `card-3`, `card-4`, `card-5`, `card-7`, `card-8`, `card-9`, `card-10`, `card-11`, `card-12`, `card-13`, `card-14`, `card-15`, `card-hor`, `wreath`, `envelope`, `waitress`, `coffee-cup`, `scooter`, `clipboard`
>
> `card-hor` etiket göstermez.

> [accordion] QR kodu türüne göre çerçeveler
>
> | Tür | Etiketli çerçeveler | Etiketsiz çerçeveler |
> | - | - | - |
> | Uygulama Bağlantısı | `app-3` | `app-1`, `app-2` |
> | vCard | `contact-1`, `contact-5` | `contact-2`, `contact-3`, `contact-4` |
> | E-posta | `email-1` | `email-2`, `email-3`, `email-4`, `email-5` |
> | Geri Bildirim | — | `feedback-1`, `feedback-2`, `feedback-3`, `feedback-4`, `feedback-5` |
> | Image | — | `image-1`, `image-2`, `image-3`, `image-4`, `image-5`, `image-6` |
> | Konum | `location-3` | `location-1`, `location-2`, `location-4`, `location-5`, `location-6` |
> | Çoklu Bağlantı | `multilink-3` | `multilink-1`, `multilink-2` |
> | Ödeme | — | `payment-1`, `payment-2`, `payment-3`, `payment-4`, `payment-5` |
> | PDF | `pdf-1` | `pdf-2`, `pdf-3`, `pdf-4` |
> | SMS | `sms-3`, `sms-5`, `sms-7` | `sms-1`, `sms-2`, `sms-4`, `sms-6` |
> | Social Media | `social-3` | `social-1`, `social-2`, `social-4` |
> | Video | `video-1`, `video-3` | `video-2`, `video-4`, `video-5`, `video-6` |
> | Website | `website-1` | `website-2`, `website-3`, `website-4`, `website-5` |
> | WhatsApp | `whatsapp-2` | `whatsapp-1`, `whatsapp-3`, `whatsapp-4` |
> | WiFi | — | `wifi-1`, `wifi-2`, `wifi-3`, `wifi-4` |
>
> Her çerçeve her QR kodu türüyle çalışır. Gruplandırma paneldekiyle aynıdır.

Etiketsiz çerçevelerin panelde harekete geçirici mesaj alanı yoktur ve `textColor` değerinin `color` değerinden farklı olması kuralı bunlara uygulanmaz.

## Logolar

`logoOptions` nesnesi QR kodunun ortasına bir logo yerleştirir. Logo türünü seçmek için `type` değerini ayarlayın.

### Önerilen logo

`type` değerini `suggested` olarak ayarlayın ve katalogdan bir `id` seçin. Logo istemiyorsanız `logo-none` kullanın.

```json theme={null}
{ "logoOptions": { "type": "suggested", "id": "logo-instagram", "scalePercent": 25 } }
```

> [accordion] Tüm önerilen logo kimlikleri
>
> `logo-none`, `logo-website-3`, `logo-website-4`, `logo-link`, `logo-pdf-1`, `logo-pdf-2`, `logo-pdf-3`, `logo-picture-1`, `logo-picture-2`, `logo-picture-3`, `logo-picture-5`, `logo-picture-7`, `logo-picture-8`, `logo-video-1`, `logo-video-5`, `logo-whatsapp-1`, `logo-whatsapp-2`, `logo-whatsapp`, `logo-wifi-1`, `logo-wifi-2`, `logo-wifi-3`, `logo-wifi`, `logo-airbnb`, `logo-apple`, `logo-binance`, `logo-bitcoin`, `logo-bolt-food`, `logo-booking`, `logo-facebook`, `logo-glovo`, `logo-google`, `logo-google-maps`, `logo-google-play`, `logo-instagram`, `logo-linkedin`, `logo-location`, `logo-mail`, `logo-paypal`, `logo-stripe`, `logo-venmo`, `logo-cashapp`, `logo-braintree`, `logo-square`, `logo-verifone`, `logo-google-pay`, `logo-apple-pay`, `logo-klarna`, `logo-ayden`, `logo-giropay`, `logo-cartes-bancaires`, `logo-restaurant`, `logo-scan-me`, `logo-tripadvisor`, `logo-trustpilot`, `logo-uber-eats`, `logo-youtube`, `logo-spotify`, `logo-spotify-black`

### Kendi logonuz

**1. Görseli yükleyin**

Görseli `"target": "logo"` ile [Dosyalar](https://docs.getqr.com/tr/api/endpoints/files.md) uç noktasında kaydedin, ardından dosyayı dönen `uploadUrl` adresine yükleyin.

**2. Dosyaya başvurun**

`type` değerini `uploaded`, `fileId` değerini de dönen `fileId` olarak ayarlayın. `fileId` zorunludur ve Files uç noktasının döndürdüğü bir kimlik olmalıdır.

```json theme={null}
{ "logoOptions": { "type": "uploaded", "fileId": "file_7bQ2xR9mKp", "scalePercent": 35 } }
```

Bilinmeyen bir dosya, tamamlanmamış bir yükleme veya başka bir hedef için yüklenmiş bir dosya reddedilir.

### Logo boyutu

`scalePercent`, logo boyutunu QR kodunun yüzdesi olarak belirler. 15 ile 45 arasında bir tam sayı alır. Varsayılanı 25'tir. `0.25` gibi oranlar dahil diğer değerler `422` döndürür.

## Tasarımı güncelleme

* **Kısmi güncellemeler.** [QR kodunu güncelleme](https://docs.getqr.com/tr/api/endpoints/qr-codes.md#qr-kodunu-güncelleme) sırasında `styles`, `frameOptions` ve `logoOptions` kayıtlı tasarımla birleştirilir. Kısmi bir nesne yalnızca belirttiği şeyleri değiştirir.
* **Logoyu değiştirme.** Başka bir logo seçmek kayıtlı logonun yerini alır ancak `scalePercent` değerini korur.
* **Şablonlar.** Oluştururken `templateId` gönderirseniz, gönderdiğiniz alanlar şablonun tasarımının üzerine birleştirilir. Bkz. [Şablonlar](https://docs.getqr.com/tr/api/endpoints/templates.md).
* **Markalı ve yapay zeka tasarımları.** `designKind` değeri `branded` veya `ai` olan bir QR kodu panelde oluşturulmuştur. API bunun görselini düzenleyemez ancak diğer alanları değiştirdiğinizde görseli korur.
* **Tasarımı okuma.** Yanıtlar kayıtlı tasarımı `design` altında, istek alanlarıyla aynı yapıda döndürür; böylece tasarımı geri gönderebilirsiniz.

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

> [accordion] 422 "Error correction is always Q and is not an input"
>
> `styles.qrOptions` alanını istekten kaldırın.

> [accordion] 422 "Frame caption is at most 12 characters"
>
> `frameOptions.text` değerini 12 karakter veya daha kısa olacak şekilde kısaltın.

> [accordion] 422 "Frame caption color must differ from the frame color"
>
> Etiket gösteren bir çerçevede `textColor` ve `color` aynı. Kontrast oluşturan bir `textColor` seçin.

> [accordion] 422 "Logo scale is a whole number from 15 to 45"
>
> `scalePercent` değerini `0.25` değil, `25` gibi tam bir yüzde olarak gönderin.

> [accordion] Köşe rengi değişmiyor
>
> Köşeler her zaman `dotsOptions.color` kullanır. `cornersSquareOptions.color` ve `cornersDotOptions.color` etkisizdir.

## Sırada ne var

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

> [card] [Şablonlar](https://docs.getqr.com/tr/api/endpoints/templates.md)

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

> [card] [Tasarıma genel bakış](https://docs.getqr.com/tr/design/overview.md)


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