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

# Tercih merkezi

> Bildirim konularını, frekansları, kanalları ve veri gizliliği ayarlarını yönetmek için OneSignal API'lerini kullanarak uygulamanızda veya web sitenizde özel bir kullanıcı tercih merkezini nasıl uygulayacağınızı öğrenin.

## Tercih merkezi nedir?

Tercih Merkezi, kullanıcılarınızın sizden nasıl ve ne tür mesajlar almak istediklerini kontrol etmelerini sağlayan uygulamanız veya web sitenizdeki bir sayfadır. Daha fazla ayrıntı ve neden bir Tercih Merkezi oluşturmanız gerektiği için, [Kullanıcı Tercih Merkezleri Kılavuzu](https://onesignal.com/blog/a-guide-to-user-preference-centers)'na bakın.

Bu kılavuz, OneSignal'in API'lerini kullanarak uygulamanıza veya web sitenize bir kullanıcı tercih merkezi dahil etmek için gereken teknik kurulumu açıklar. Bu kılavuzda nasıl yapılacağını tartışıyoruz:

* [Veri Etiketleri](./add-user-data-tags) ile konular, kategoriler ve frekans kontrolleri atama
* yeni iletişim kanalları toplama (push bildirimleri, e-posta, SMS)
* kullanıcı kabul etmek istemiyorsa iletişim kanallarını devre dışı bırakma
* veri uyumluluğunu işleme
* kullanıcı verilerini silme

## Gereksinimler

* OneSignal'in Mobil SDK'ları sürüm 5+ ve/veya Web SDK 16+
* [External ID veya Alias](./users) ayarlama
* OneSignal, Tercih Merkezi düzenini oluşturmak için herhangi bir API sağlamaz, yalnızca Kullanıcıları ve Abonelikleri GET, PATCH ve DELETE için API'ler sağlar
  * Bir web siteniz varsa ve basit bir tercih merkezine ihtiyacınız varsa, [Kategori İstemi](./permission-requests)'mizi deneyin

### Ek önerilen okumalar

* [Kullanıcı Tercih Merkezleri Kılavuzu](https://onesignal.com/blog/a-guide-to-user-preference-centers)
* [OneSignal SDK Tarafından Toplanan Veriler](./data-collected-by-the-onesignal-sdk)
* [Kişisel Verileri İşleme](./handling-personal-data)

## Kurulum

Kullanıcı tercih merkezinize geldiğinde, ayarladığınız `external_id` veya özel bir alias'a göre kullanıcı için OneSignal verilerini çekmek üzere [View user](/reference/view-user) API'sini kullanın. Bu size kullanıcı `properties` ve `subscriptions` sağlayacaktır. Yararlı veriler şunları içerir ancak bunlarla sınırlı değildir:

* `properties`: kullanıcı verisi
  * `tags` - OneSignal'e gönderdiğiniz özel veri
  * `language` - kullanıcı için dil kodu
* `subscriptions`: mesajlaşma kanalları ve abonelik durumu
  * `id` - Subscription ID
  * `type` - `Email`, `SMS`, \*Push (`AndroidPush`, `iOSPush`, `ChromePush`, `SafariPush`, vb)
  * `enabled` - `true` abone olunduğu, `false` abone olunmadığı anlamına gelir
  * `token` - abonelik türüne bağlı olarak push token, e-posta adresi veya telefon numarası

<CodeGroup>
  ```json json theme={null}
  {
    "properties": {
      "tags": {
        "finance": "1",
        "tech": "1",
        "sports": "1",
        "breaking-news": "0",
        "entertainment": "0",
        "deals": "0",
        "newsletter-frequency": "weekly",
        "customer_status": "Enterprise",
        "event": "1693411710",
        "first_name": "Jon",
        "last_name": "F"
      },
      "language": "en"
    },
    "subscriptions": [
      {
        "id": "sub_id_1",
        "type": "Email",
        "token": "email@example.com",
        "enabled": true
      },
      {
        "id": "sub_id_2",
        "type": "SMS",
        "token": "1234567890",
        "enabled": true
      },
      {
        "id": "sub_id_3",
        "type": "ChromePush",
        "token": "some_token_here",
        "enabled": true
      }
    ]
  }
  ```
</CodeGroup>

Tercih merkezini gerektiği gibi doldurmak için sağlanan verileri kullanın.

## Kategoriler ve frekans kontrollerini atama

[Veri Etiketleri](./add-user-data-tags)'ne bakın. Etiketler, segmentlere ayırmak ve kişiselleştirmek için kullanılan anahtar-değer çiftleridir. Aralık tabanlı filtrelemeyi etkinleştirmek için dize kodlu tam sayılar veya zaman damgaları kullanın.

Kullanıcılar ilgi alanlarını değiştirebilir (örneğin, `sports: 1`) veya `newsletter-frequency: weekly` gibi frekans etiketleri ayarlayabilir. Bu verileri [Segmentler](./segmentation)'de veya filtrelerle [Create notification](/reference/create-message) API'sinde kullanın.

Bir etiketi güncellemek için [Update user](/reference/update-user) API'sini çağırın.

## Yeni iletişim kanalları toplama

Tür ve etkin durumu için `subscriptions`'ı kontrol edin. `token`'ı yalnızca e-posta/SMS için gösterin, push için değil.

<Warning>
  İletişim bilgileri sisteminizde varsa ancak henüz OneSignal'de yoksa, bunu görüntülemek için yedek olarak kendi DB'nizi kullanın.
</Warning>

### Email & SMS güncellemeleri

`addEmail`, `addSms` SDK yöntemlerini veya [Create subscription](/reference/create-subscription) ve [Update subscription](/reference/update-subscription) API'lerini kullanın. Güncellemeler için abonelik `id` gereklidir.

### Push güncellemeleri

Push etkin değilse, kullanıcıya istem gösterin.

* Mobil uygulamalar için: [Push İzinleri İçin İstem](./prompt-for-push-permissions)
* Web için: [Yerel Tarayıcı İstemi](./permission-requests) veya [Slide İstemi](./permission-requests) kullanın

## İletişim kanallarını devre dışı bırakma

`enabled`'ı `false` olarak ayarlamak için [Update subscription](/reference/update-subscription)'ı kullanın. Tekrar kabul etmek için `true` olarak değiştirin.

## Veri uyumluluğunu işleme

SDK init'i varsayılan olarak önleyin ve başlatmak için kullanıcı onayı gerektirin. [Kişisel Verileri İşleme](./handling-personal-data)'ye bakın.

## Kullanıcı verilerini silme

Bir kullanıcıyı OneSignal'den tamamen kaldırmak için [Delete user](/reference/delete-user) API'sini kullanın.

***
