> For the complete documentation index, see [llms.txt](https://user.netmera.com/netmera-user-guide/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://user.netmera.com/netmera-user-guide/netmera-user-guide-tr/customer-data/granular-consent-management.md).

# Detaylı rıza yönetimi

Detaylı rıza yönetimi, kullanıcı rızasını her iletişim amacı ve kanal için ayrı ayrı uygular ve bunu bağımsız şekilde zorunlu kılar.

Detaylı onay yönetimi, kullanıcı izinlerini şu şekilde yönetmenizi sağlar: **iletişim amacı** ve **teslimat kanalı** aynı anda. Bir kullanıcı tanıtım amaçlı e-postaları kabul edebilir, tanıtım amaçlı push bildirimlerini reddedebilir ve güvenlik uyarılarını her kanalda açık tutabilir — ve Netmera, bu kararların her birini gönderim anında ayrı ayrı uygular.

Netmera'da iletişim amaçları şu şekilde temsil edilir: **Mesaj Kategorileri**. Her kategori hangi kanallara uygulandığını belirtir ve her kullanıcı her **kategori + kanal** çift için birbirinden bağımsız bir opt-in durumuna sahiptir. Bu durum kullanıcı tarafından (Mobile SDK ile oluşturulan uygulama içi tercih merkezi üzerinden) veya marka tarafından (örneğin Netmera Dashboard ya da REST API üzerinden, bir CRM'den, bir çağrı merkezinden veya abonelikten çıkış akışından) değiştirilebilir.

Örneğin şunları tanımlayabilirsiniz:

* `promo` — tanıtım amaçlı iletişim
* `order_tracking` — sipariş ve teslimat güncellemeleri
* `güvenlik` — hesap ve güvenlik bildirimleri

{% hint style="info" %}
Detaylı onay yönetimi, amaç ve kanala özgü izinler için teknik yapıyı sağlar. Kuruluşunuz, geçerli düzenlemeler kapsamında gerekli olan onay modelini, hukuki dayanağı ve ifadeleri belirlemekten sorumlu olmaya devam eder. Bu sayfadaki GDPR referansları yalnızca yol gösterme amaçlıdır ve hukuki tavsiye niteliği taşımaz.
{% endhint %}

### Yenilik: kanal bazlı kategori onayı

Kanal bazlı kategori onayı, tek bir "kategori başına aç / kapa" sınırlamasını ortadan kaldırır. Kullanıcılar yalnızca *neyi* aldıkları içeriği değil, aynı zamanda *nerede* aldıklarını da kontrol etmek istediklerinde kullanışlıdır.

| Özellik                                    | Önce                                                         | Şimdi                                                                                                                                |
| ------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ |
| Kategori kapsamı                           | Bir kategori tüm kanallara uygulanırdı                       | Bir kategori, seçilen bir veya daha fazla kanal için tanımlanır (Mobile Push, Email, SMS, WhatsApp, In-App, Web Push)                |
| Onay saklama                               | Kategori başına tek durum                                    | Çift başına tek **kategori + kanal** çift                                                                                            |
| Opt-out etkisi                             | Bir kategoriden opt-out yapmak onu tüm kanallarda durdururdu | Bir kanalda bir kategoriden opt-out yapmak, diğer kanallardaki aynı kategoriyi değiştirmez                                           |
| Kaydı olmayan kullanıcılar için varsayılan | —                                                            | Kategori bazında tarafından **Abonelik Türü** (Opt-in veya Opt-out)                                                                  |
| User Detail                                | Kategori başına bir anahtar                                  | Kategori ve kanal başına bir anahtar                                                                                                 |
| Hedefleme                                  | Kategori İznine Göre                                         | Kanal seçimiyle Kategori İzni üzerinden                                                                                              |
| Raporlama                                  | Kategori düzeyinde opt-in / opt-out sayıları                 | Kanal başına opt-in / opt-out sayıları                                                                                               |
| REST API ve SDK                            | Kategori düzeyinde okuma ve yazma                            | İsteğe bağlı `channel` kategori + kanal okuma ve yazma için parametre; kategori düzeyindeki çağrılar değişmeden çalışmaya devam eder |

Kanal seçimi eklenmeden önce oluşturulan kategoriler, tüm kanallarda geçerli kabul edilir. Herhangi bir taşıma işlemi gerekmez.

### Onay nasıl değerlendirilir

Bir mesajı göndermeden önce Netmera üç soruyu yanıtlar. Bunları ayırmak, "kullanıcıya nereden ulaşılabilir" sorusunu "mesaj neden gönderiliyor" ve "kullanıcı bu amacı bu kanalda kabul ediyor mu" sorularından ayrı tutar.

<table><thead><tr><th width="260">Kontrol</th><th>Soru</th></tr></thead><tbody><tr><td><strong>1. Kanal izni</strong></td><td>Kullanıcı bu kanalda genel olarak erişilebilir ve izinli mi (örneğin, push izni, e-posta izni, SMS izni)?</td></tr><tr><td><strong>2. Kategori + kanal tercihi</strong></td><td>Kullanıcı bu iletişim amacını bu belirli kanalda kabul etti mi?</td></tr><tr><td><strong>3. Kategori varsayılanı</strong></td><td>Kategori + kanal çifti için hiçbir tercih kaydı yoksa, kategorinin Abonelik Türü ne diyor?</td></tr></tbody></table>

Bir mesaj yalnızca geçerli tüm kontroller geçtiğinde teslim edilir.

<table><thead><tr><th width="230">Genel kanal izni</th><th width="260">Kategori + kanal tercihi</th><th>Sonuç</th></tr></thead><tbody><tr><td>AÇIK</td><td>AÇIK ya da opt-in kategoride kayıt yok</td><td>Gönderildi</td></tr><tr><td>AÇIK</td><td>Opt-out kategoride kayıt yok</td><td>Kullanıcı opt-in yapana kadar engellenir</td></tr><tr><td>AÇIK</td><td>KAPALI</td><td>Yalnızca bu kanalda bu kategori için engellendi</td></tr><tr><td>KAPALI</td><td>Herhangi</td><td>Engellendi</td></tr></tbody></table>

Bir SMS kampanyasında `promo` kategori için kullanıcının SMS izni olmalı **ve** geçerli bir `promo` + SMS izni. Kullanıcının `promo` + E-posta durumu bu kampanyayı etkilemez.

{% hint style="info" %}
Kategori düzeyinde yapılan bir opt-out, genel kanal iznini asla değiştirmez. Kapatmak `promo` Mobil Push'ta, kullanıcının genel push iznini ve diğer tüm push kategorilerini değiştirmeden bırakır. Genel kanal izni kapatılıp sonra yeniden açılırsa, saklanan kategori + kanal tercihleri yine de uygulanır.
{% endhint %}

#### Kanallar ve API değerleri

Aynı altı kanal panelde, REST API'de ve Mobile SDK'de kullanılabilir.

| Panel kanalı | REST API / SDK değeri |
| ------------ | --------------------- |
| Mobil Push   | `MOBILE`              |
| E-posta      | `EMAIL`               |
| SMS          | `SMS`                 |
| WhatsApp     | `WHATS_APP`           |
| Uygulama içi | `IN_APP`              |
| Web Push     | `WEB`                 |

### Detaylı onayı yapılandırın

1. İletişim amaçlarınızı tanımlayın.
2. Her amaç için bir Message Category oluşturun ve kanallarını ile Abonelik Türünü seçin.
3. Her kampanya için uygun kategoriyi atayın.
4. Kategori + kanal tercihlerini SDK, REST API veya Dashboard üzerinden toplayın ve güncelleyin.
5. SMS veya e-posta onayını İYS yönetiyorsa İYS'yi yapılandırın.
6. Tercihleri, hedeflemeyi ve kampanya uygunluğunu doğrulayın.

### 1. Adım: İletişim amaçlarını tanımlayın

Bu adım, iletişim planınızı küçük ve sabit bir amaç listesine dönüştürür. Net bir amaç listesi, onay isteklerini kullanıcılar için anlaşılır kılar ve ekibiniz için raporlamayı anlamlı hale getirir.

Her kanal için bir kategori değil, her amaç için bir kategori oluşturun.

| Amaç                               | Mesaj Kategorisi | Tipik kanallar            |
| ---------------------------------- | ---------------- | ------------------------- |
| Tanıtım amaçlı iletişim            | `promo`          | Mobile Push, E-posta, SMS |
| Sipariş ve teslimat güncellemeleri | `order_tracking` | Mobile Push, E-posta, SMS |
| Hesap ve güvenlik bildirimleri     | `güvenlik`       | Mobile Push, E-posta, SMS |
| Tek kullanımlık parolalar          | `sms_otp`        | SMS                       |

Kategori Kimliklerini kısa, sabit ve anlamlı tutun. Entegrasyonlarınız ve tercih merkeziniz bu kimliklere dayanır.

### 2. Adım: Message Categories oluşturun

Kategoriler, amacın, kanallarının ve varsayılan onay davranışının tanımlandığı yerdir. Bu yapılandırmayı doğru yapmak, sonraki her onay kararının nasıl değerlendirileceğini belirler.

Netmera Dashboard'da, şunu seçin **Ayarlar** → **Mesajlaşma ve İçerik** → **Mesaj Kategorileri** ve her amaç için bir kategori oluşturun.

* **Kanallar:** Amacın uygulandığı kanalları seçin. En az bir kanal gereklidir. Yalnızca seçilen kanallar tercih kayıtlarını kabul eder ve kampanya kategori listelerinde görünür.
* **Abonelik Türü:** Seçin **Opt-in** (kaydı olmayan kullanıcılar abonedir) varsayılan olarak kullanıcıların beklediği amaçlar için, örneğin sipariş takibi gibi. Şunu seçin **Opt-out** (kaydı olmayan kullanıcılar abone değildir) ilk gönderimden önce açık onay gerektiren amaçlar için, örneğin önceden onayın gerekli olduğu bölgelerde pazarlama gibi.
* **Kategori Kimliği:** Oluşturulduktan sonra değiştirilemez. Bir amaç kullanın, kanal değil.

{% hint style="warning" %}
Mevcut bir kategorinin Abonelik Türünü değiştirmek, saklanan kayıtların anlamı tersine döndüğü için o kategoriye ait tüm saklanan kanal izinlerini siler. Tercihleri toplamadan önce Abonelik Türüne karar verin.
{% endhint %}

Daha fazla bilgi için [Mesaj Kategorileri](/netmera-user-guide/netmera-user-guide-tr/panel-settings/settings/messaging-and-content/message-categories.md).

<figure><img src="https://1642824329-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FX6uilbEAw42gqsudlclY%2Fuploads%2FrKPXXpfkoLxofB1tawCS%2FScreenshot%202026-02-19%20at%2012.06.20.png?alt=media&#x26;token=bb6c801d-d13c-4e24-b076-dc86d6aad899" alt="Message Categories settings page with the option to create a category."><figcaption><p>Ayarlar'da bir kategori oluşturun</p></figcaption></figure>

### 3. Adım: Kampanyalara bir kategori atayın

Kampanya kategorisi, Netmera'ya hangi onay kaydının kontrol edileceğini söyler. Bu olmadan amaç bazlı zorunlu uygulama kampanyaya uygulanamaz.

Bir kampanya oluştururken mesaj amacına uyan kategoriyi atayın. Kampanya düzenleyicisindeki kategori listesi, yalnızca kampanyanın kanalında aktif olan kategorileri ve eski kategorileri gösterir.

| Mesaj                        | Kanal      | Mesaj Kategorisi | Kontrol edilen onay kaydı |
| ---------------------------- | ---------- | ---------------- | ------------------------- |
| Yeni ürün tanıtımı           | Mobil Push | `promo`          | `promo` + Mobile Push     |
| İndirim duyurusu             | E-posta    | `promo`          | `promo` + E-posta         |
| Sipariş gönderildi bildirimi | SMS        | `order_tracking` | `order_tracking` + SMS    |
| Şüpheli giriş uyarısı        | Mobil Push | `güvenlik`       | `güvenlik` + Mobile Push  |

{% hint style="info" %}
Bir kampanyayı yayınlamadan önce, Message Category'sinin iletişim amacına uyduğunu doğrulayın.
{% endhint %}

<figure><img src="https://1642824329-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FX6uilbEAw42gqsudlclY%2Fuploads%2Fcsd65N8vyV20Sb4Ifxcm%2FScreenshot%202026-02-19%20at%2012.08.02.png?alt=media&#x26;token=decc21f4-2764-47e4-803c-0aa96bc8d4f1" alt="Campaign creation flow with a Message Category selector."><figcaption><p>Kampanya akışında bir kategori seçin</p></figcaption></figure>

#### Kampanya düzenleyici örnekleri

Her kanal kendi kampanya düzenleyicisini kullanır, ancak kategori seçimi aynı amaca hizmet eder.

<figure><img src="https://1642824329-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FX6uilbEAw42gqsudlclY%2Fuploads%2FjX0EchxRqth5uYz6AGmN%2FScreenshot%202026-02-19%20at%2012.09.28.png?alt=media&#x26;token=a7faaa3d-4745-4cf2-ba29-846964c39c84" alt="Channel-specific campaign editor showing the Message Category selection."><figcaption><p>Kampanya düzenleyicisinde mesaj kategorisini seçin.</p></figcaption></figure>

<figure><img src="https://1642824329-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FX6uilbEAw42gqsudlclY%2Fuploads%2FHrRqpnQKCyhhwv0RcnmP%2FScreenshot%202026-02-19%20at%2012.10.21.png?alt=media&#x26;token=fe99df27-d532-4938-8f39-eebc8cd9b5fe" alt="Channel-specific campaign editor showing the Message Category selection."><figcaption><p>Mesaj amacına uyan kategoriyi seçin.</p></figcaption></figure>

<figure><img src="https://1642824329-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FX6uilbEAw42gqsudlclY%2Fuploads%2FTjAcBS14xvbmImK608ej%2FScreenshot%202026-02-19%20at%2012.09.54.png?alt=media&#x26;token=f7061355-5a7f-477a-b12e-6af7951c0e9a" alt="Channel-specific campaign editor showing the Message Category selection."><figcaption><p>Kampanya kurulumunu tamamlamadan önce kategoriyi onaylayın.</p></figcaption></figure>

### 4. Adım: Tercihleri toplayın ve güncelleyin

Kategori + kanal tercihleri üç kaynaktan yazılabilir. Bu, onay durumunun kararın verildiği her yerde kullanıcının peşinden gitmesini sağlar — uygulama içinde, arka uç sistemlerinizde veya operasyon ekibiniz tarafından — ve Netmera tek, uygulanabilir bir kayıt tutar.

| Kaynak         | Tercihi kim değiştirir | Tipik tetikleyici                                                                                                                                   |
| -------------- | ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Mobile SDK** | Kullanıcı              | Uygulama içi tercih merkezi veya bildirim ayarları ekranı                                                                                           |
| **REST API**   | Marka, kullanıcı adına | CRM veya izin yönetimi platformu eşitlemesi, web tercih merkezi, e-posta abonelikten çıkma sayfası, SMS anahtar kelime yanıtı, çağrı merkezi talebi |
| **Dashboard**  | Marka                  | şuradaki manuel düzeltme veya destek talebi: **User Detail**                                                                                        |

Her kaynak yalnızca hedeflediği kategori + kanal çiftini günceller. Kullanıcının genel kanal iznini, kategorinin diğer kanallarını veya diğer kategorileri değiştirmez.

#### Mobile SDK

Kanal bazlı kategori tercih yöntemleri aşağıdaki yerel SDK sürümlerini gerektirir (17 Eylül 2026'da yayımlanmıştır):

| Platform    | Minimum sürüm | Tercihleri al                                                                              | Tercihleri güncelle                                                       |
| ----------- | ------------- | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------- |
| Android     | **4.21.0**    | `Netmera.getUserCategoryPreferenceList(filter, callback)` ile `NMCategoryPreferenceFilter` | `Netmera.setUserCategoryPreference(NMCategoryPreferenceUpdate, callback)` |
| iOS (Swift) | **4.26.0**    | `Netmera.getUserCategoryPreferenceList(categoryIds:channels:)`                             | `Netmera.setUserCategoryPreference(categoryId:categoryEnabled:channel:)`  |

Android örneği — kullanıcıyı kategoriden çıkarın `42` yalnızca SMS'te:

```kotlin
val channelPreference = NMCategoryPreferenceUpdate(
    categoryId = 42,
    categoryEnabled = false,
    channel = NMCategoryChannel.SMS
)

Netmera.setUserCategoryPreference(channelPreference, object : NMCategoryPreferenceSetCallback {
    override fun onSuccess() { /* arayüzü güncelle */ }
    override fun onFailure(error: String?) { /* hatayı işle */ }
})
```

iOS örneği — kullanıcının kategoriler için E-posta ve SMS tercihlerini okuyun `42` ve `43`:

```swift
Netmera.getUserCategoryPreferenceList(
    categoryIds: [42, 43],
    channels: [.sms, .email]
) { result in
    // category.categoryEnabled: herhangi bir kanalda etkinse true
    // category.channelPreferences: kanal bazında döküm
}
```

* Bu `channel` argüman isteğe bağlıdır. Bu olmadan, güncelleme kategorinin her kanalına uygulanır; bu, önceki SDK sürümlerinin davranışıdır.
* Toplam durum (`optInStatus` Android'de, `categoryEnabled` iOS'ta) şudur `true` kategori herhangi bir kanalda etkin olduğunda **herhangi bir** kanal. Kanal bazlı ayrımı (`channelPreferences`) kanal anahtarlarını göstermek için kullanın.
* Android'de, `Netmera.setUserCategoryPreference(categoryId, categoryEnabled, listener)` kullanımdan kaldırılmıştır ve kanalsız yeni yöntem gibi davranır.
* SDK kanal değerleri: `MOBILE`, `SMS`, `EMAIL`, `WHATS_APP`, `IN_APP`, `WEB`.

Tam referans için Geliştirici Kılavuzu'na bakın: [Android — Mesaj Kategorileri](https://user.netmera.com/netmera-developer-guide/platforms/android/push-inbox#message-categories) ve [iOS — Push Bildirim Kategorilerini Yönetme](https://user.netmera.com/netmera-developer-guide/platforms/ios/new-ios-swift/push-inbox#manage-push-notification-categories).

#### REST API

Her iki kategori tercihi uç noktası da isteğe bağlı bir kanal parametresini kabul eder. Bu parametre belirtilmezse, çağrı kanal bazlı tercihler tanıtılmadan öncekiyle tamamen aynı şekilde davranır; böylece mevcut entegrasyonlar çalışmaya devam eder.

| Uç Nokta                                | Amaç                                                   | Kanal parametresi                         |
| --------------------------------------- | ------------------------------------------------------ | ----------------------------------------- |
| `POST /rest/3.0/setCategoryPreferences` | Bir kullanıcıyı bir kategoriye dahil etme veya çıkarma | `channel` (isteğe bağlı, her giriş için)  |
| `GET /rest/3.0/getCategoryPreferences`  | Bir kullanıcının kategori tercihlerini okuma           | `channels` (isteğe bağlı, liste filtresi) |
| `GET /rest/3.0/getPushCategories`       | Uygulama için tanımlanan kategorileri listeleme        | —                                         |

Kanal değerleri: `MOBILE`, `SMS`, `EMAIL`, `WHATS_APP`, `IN_APP`, `WEB` (büyük/küçük harfe duyarlı değildir).

Bir kullanıcının aboneliğini şu kategoriden çıkarın `Promosyon` yalnızca E-posta'da ve şu kategoriden de `Shopping` her kanalda:

```bash
curl -X POST https://restapi.netmera.com/rest/3.0/setCategoryPreferences \\
  -H "X-netmera-api-key: your_rest_api_key" \\
  -H "Content-Type: application/json" \\
  -d '[
    { "extId": "id1", "category": "Promotion", "enable": false, "channel": "EMAIL" },
    { "extId": "id1", "category": "Shopping",  "enable": false }
  ]'
```

Kullanıcının Mobile Push ve E-posta tercihlerini okuyun:

```bash
curl -G "https://restapi.netmera.com/rest/3.0/getCategoryPreferences" \\
  -H "X-netmera-api-key: your_rest_api_key" \\
  --data-urlencode 'externalId=id1' \\
  --data-urlencode 'channels=MOBILE,EMAIL'
```

```json
{
  "categoryPreferences": { "Promotion": true },
  "categoryChannelPreferences": {
    "Promotion": { "MOBILE": true, "EMAIL": false }
  }
}
```

* `categoryPreferences` geriye dönük uyumluluk için korunur ve `true` kullanıcının kategorinin kanallarından herhangi birinde izni olduğunda. The `channels` filtre bunu etkilemez.
* `categoryChannelPreferences` kanal bazlı durumu döndürür. Kanal düzeyindeki kararlar için kullanın.
* Tanınmayan bir değere sahip bir giriş `channel` atılır ve kaydedilir; kalan girişler işlenir. Bir yazım hatası, her kanalı güncellemek yerine o tercihi değiştirilmeden bırakır.

Bakın [Geliştirici Kılavuzu — Kategori Tercihleri](https://user.netmera.com/netmera-developer-guide/api-documentation/rest-api/user-and-device-management#category-preferences) tüm parametreler için.

#### Dashboard

Bir kullanıcıyı **User Detail** her kategori ve kanal için bir anahtar görmek üzere açın. Yalnızca kategorinin tanımlı olduğu kanallar düzenlenebilir. Saklı kaydı olmayan bir anahtar, kategorinin Abonelik Türünü yansıtır.

### Kullanım durumları

Aşağıdaki senaryolar, kanal bazlı kategori onayının yaygın iş ve uyumluluk gereksinimlerini nasıl desteklediğini gösterir.

#### 1. Uygulama içi tercih merkezi

Bir perakende uygulaması, her kategori için bir satır ve her kanal için bir anahtarla bir ayarlar ekranı gösterir. Kullanıcı **Promotions** E-posta'da açık tutar, Mobil Push ve SMS'de kapatır ve **Sipariş Güncellemeleri** her kanalda açık tutar.

* **Uygulama:** `getUserCategoryPreferenceList` ile `channelPreferences` ekranı oluşturmak için; `setUserCategoryPreference` ile `channel` her anahtar için.
* **Sonuç:** Tanıtım amaçlı push ve SMS kampanyaları kullanıcıyı atlar; tanıtım e-postaları ve tüm sipariş güncellemeleri yine de teslim edilir.
* **GDPR referansı:** Madde 7(3) — onayın geri alınması, verilmesi kadar kolay olmalıdır. Gerekçe 43 — farklı işleme faaliyetleri için ayrı onay.

#### 2. Bir e-posta veya SMS'den kanala özgü abonelikten çıkma

Bir kullanıcı tanıtım e-postasındaki abonelikten çık bağlantısına tıklar veya tanıtım SMS'ine abonelikten çıkma anahtar sözcüğüyle yanıt verir. Kullanıcı, tüm iletişime değil, o kanaldaki o mesaj türüne itiraz eder.

* **Uygulama:** Abonelikten çıkma sayfanız veya SMS anahtar sözcüğü işleyiciniz `setCategoryPreferences` ile `"channel": "EMAIL"` veya `"channel": "SMS"` ve `"enable": false`.
* **Sonuç:** Yalnızca `promo` + E-posta (veya `promo` + SMS) kapatılır. Tanıtım push mesajları, sipariş takibi ve güvenlik mesajları, onaylandığı şekilde gönderilmeye devam eder.
* **GDPR referansı:** Madde 21(2)–(3) — doğrudan pazarlamaya istediğiniz zaman itiraz etme hakkı; bu hak kullanıldıktan sonra veriler artık bu amaçla işlenmemelidir. Madde 7(3) — onayın geri alınması.

#### 3. Başka bir sistemde toplanan onay (CRM, CMP, web, çağrı merkezi)

Onay, uygulama dışında — web kaydı sırasında, bir onay yönetim platformunda veya bir çağrı merkezi temsilcisi tarafından — alınır ve Netmera bunu yansıtmalıdır.

* **Uygulama:** Arka uç sisteminiz değişiklikleri `setCategoryPreferences`, her kategori + kanal çifti için bir giriş göndererek senkronize eder. Bunun için `getCategoryPreferences` durumları uzlaştırmak için kullanın.
* **Sonuç:** Netmera, kullanıcının başka bir yerde verdiği aynı kararı bir uygulama oturumu beklemeden uygular.
* **GDPR referansı:** Madde 7(1) — veri sorumlusu onayı ispatlayabilmelidir; amaç ve kanal başına tek bir uygulanabilir kayıt tutmak bunu destekler. Madde 5(1)(d) — doğruluk.

#### 4. İlk pazarlama mesajından önce açık onay

Bazı pazarlar veya iç politikalar, kullanıcı açıkça kabul edene kadar hiçbir pazarlama mesajı gönderilmemesini gerektirir.

* **Uygulama:** Pazarlama kategorisini Subscription Type ile oluşturun **Opt-out**. Kaydı olmayan kullanıcılar abone değildir. Yalnızca kullanıcı belirli bir kanalda kabul ettikten sonra bir opt-in kaydı yazın.
* **Sonuç:** Yeni kullanıcılar, o kanalda opt-in yapana kadar hiçbir kanalda pazarlama almaz.
* **GDPR referansı:** Madde 4(11) ve Madde 6(1)(a) — onay, açık bir olumlu eylem olmalıdır. Madde 25(2) — varsayılan olarak veri koruma. ePrivacy Direktifi Madde 13 — elektronik doğrudan pazarlama için önceden onay.

#### 5. Hizmet mesajlarını pazarlamadan ayrı tutmak

Bir kullanıcı tüm tanıtım kanallarından çıkar ancak yine de sipariş ve güvenlik bildirimlerini almalıdır.

* **Uygulama:** Tutun `order_tracking` ve `güvenlik` şu kategorilerden ayrı kategoriler olarak `promo`,
* **Sonuç:** Bir pazarlama abonelikten çıkışı hiçbir zaman hizmet mesajlarını engellemez ve görünür bir kategori uyumsuzluğu olmadan hizmet kanalları tanıtım içeriği için yeniden kullanılamaz.
* **GDPR referansı:** Madde 5(1)(b) — amaç sınırlaması. Madde 7(2) — bir onay talebi, diğer konulardan açıkça ayırt edilebilir olmalıdır. Gerekçe 32 — onay tüm amaçları kapsamalıdır; işlemenin birden fazla amacı varsa, her biri için onay verilmelidir.

#### 6. Amaçla sınırlı SMS kategorileri

Bir OTP kategorisi yalnızca SMS için tanımlanır.

* **Uygulama:** Oluşturma `sms_otp` yalnızca SMS seçili olarak. Diğer kanalların kampanya editörlerinde görünmez ve diğer kanallarda bunun için tercih kaydı oluşturulamaz.
* **Sonuç:** Amaç, toplandığı kanal ile sınırlıdır.
* **GDPR referansı:** Madde 5(1)(b) — amaç sınırlaması; Madde 5(1)(c) — veri minimizasyonu.

### GDPR referans özeti

| Madde           | İlke                                              | Detaylı onay yönetimi bunu nasıl destekler                                                           |
| --------------- | ------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| Madde 4(11)     | Onay, belirli, bilgilendirilmiş ve açık olmalıdır | Her kategori + kanal çifti ayrı ve belirli bir karardır                                              |
| Madde 5(1)(b)   | Amaç sınırlaması                                  | Kategoriler amaçları temsil eder; kampanyalar bir amaç belirtmelidir                                 |
| Madde 5(1)(c)   | Veri minimizasyonu                                | Kategoriler, amacın gerektirdiği kanallarla sınırlandırılabilir                                      |
| Madde 5(1)(d)   | Doğruluk                                          | REST ve SDK, Netmera kaydını diğer sistemlerde verilen kararlara uyumlu tutar                        |
| Madde 6(1)(a)   | Hukuki dayanak olarak onay                        | Opt-out Subscription Type, açık bir opt-in olmadan gönderimi engeller                                |
| Madde 7(1)      | Onayı ispatlayabilme                              | Kanal bazlı durumlar Kullanıcı Detayı'nda görünür ve üzerinden alınabilir `getCategoryPreferences`   |
| Madde 7(2)      | Onay talebi açıkça ayırt edilebilir               | Pazarlama ve hizmet mesajları için ayrı kategoriler                                                  |
| Madde 7(3)      | Geri çekmenin, onay vermek kadar kolay olması     | Tek bir anahtar veya tek bir API çağrısı, tek bir kanalda tek bir amaç için verilen onayı geri çeker |
| Madde 21(2)–(3) | Doğrudan pazarlamaya itiraz etme hakkı            | Bir kanaldaki pazarlama abonelikten çıkışı, bir sonraki gönderimde uygulanır                         |
| Madde 25(2)     | Varsayılan olarak veri koruma                     | Opt-out Subscription Type, yeni kullanıcıları varsayılan olarak abone olmayan olarak ayarlar         |
| Gerekçe 32, 43  | Amaç başına onay; ayrı işlemler için ayrı onay    | Onay, kategori ve kanal bazında saklanır                                                             |

{% hint style="warning" %}
Türkiye'de SMS, e-posta ve aramalar üzerinden gönderilen ticari elektronik iletiler İYS'ye de tabidir. İYS onayı ve Message Category tercihleri farklı izinleri yönetir; her ikisini de yapılandırın. 5. Adıma bakın.
{% endhint %}

### Yaygın uygulama deseni

```
İletişim amacı
        ↓
Mesaj Kategorisi (kanallar ve Abonelik Türü ile)
        ↓
Kategori + kanal başına kullanıcı tercihi (SDK, REST API, Dashboard)
        ↓
Kampanya kategorisi ve kampanya kanalı
        ↓
Kanal izni + kategori/kanal izni
        ↓
Mesaj teslimatı
```

Bir tanıtım e-posta kampanyası için:

```
Promosyon
  ↓
promo (Mobile Push, E-posta, SMS)
  ↓
Kullanıcı: promo + E-posta = AÇIK, promo + Mobile Push = KAPALI
  ↓
E-posta kampanyası promo kullanır
  ↓
Kullanıcıda e-posta izni var
  ↓
Teslimat için uygundur (bir push kampanyası promo ile engellenirdi)
```

### Önerilen kategori yapısı

Aynı amaç için ayrı kategoriler oluşturmayın:

* `push_promo`
* `sms_promo`
* `email_promo`

Tek bir `promo` kategori kullanın ve geçerli olduğu kanalları seçin. Kanal düzeyindeki izin, o tek kategori altında saklanır; böylece kullanıcılar ve raporlar, kanal bazında kırılımı olan tek bir amacı görür.

Kullanın `order_tracking`, `güvenlik`, ve `account_updates` kullanın; ayrı amaçlar için. Bu, kanallar ekledikçe kategori yönetimini sürdürülebilir kılar.

### 5. Adım: Uygunsa İYS'yi yapılandırın

İYS SMS veya e-posta onayını yönetiyorsa, entegrasyonu yapılandırmadan önce onay kayıtlarının hangi sisteme ait olduğuna karar verin.

#### İYS entegratör modu

Netmera onay bilgilerini toplar ve ilgili güncellemeleri İYS'ye gönderir.

#### İYS senkronizasyon modu

Netmera onay bilgilerini İYS'den alır. İYS, onay kaynağı olmaya devam eder.

Onay yönetimi sürecinize uyan modu seçin.

* [İYS İzinleri](/netmera-user-guide/netmera-user-guide-tr/customer-data/iys-permissions.md)
* [İYS Senkronizasyon Modu](/netmera-user-guide/netmera-user-guide-tr/customer-data/iys-permissions/iys-sync-mode.md)
* [İYS Entegratör Modu](/netmera-user-guide/netmera-user-guide-tr/customer-data/iys-permissions/iys-integrator-mode.md)

{% hint style="warning" %}
İYS onay yönetimi ve Message Categories farklı iletişim izinlerini yönetir. Onay ve yönetişim modeliniz için her ikisini de yapılandırın.
{% endhint %}

### 6. Adım: Tercihleri ve uygunluğu doğrulayın

Doğrulama, bir kullanıcı için kaydedilen onayın, bir kampanya üretime geçmeden önce beklediğiniz teslimat sonucunu verip vermediğini teyit eder.

#### Kullanıcı Ayrıntılarını Kontrol Edin

Açın [Kişiler](/netmera-user-guide/netmera-user-guide-tr/targeting/people.md) ve kullanıcının kanal bazındaki kategori anahtarlarını inceleyin.

#### Hedeflemeyi kontrol edin

Altında **Hedefleme** → **Kişileri Bul**, kullanın **Kategori İznine Göre** belirli bir kategori + kanal durumuna sahip kullanıcıları saymak için kanal seçimiyle. Kanal seçilmeden, koşul kampanyanın kanalını veya kampanya bağlamı yoksa kategorinin kendi kanallarını değerlendirir.

#### Kanal Erişilebilirliğini Kontrol Edin

Kullanın [Kanal Erişilebilirliği](/netmera-user-guide/netmera-user-guide-tr/reports-and-analytics/reports/audience-and-growth/channel-reachability.md) amaç ve kanal bazında izin kapsamını gözden geçirmek için. Message Categories listesi, her kanal için opt-in ve opt-out sayılarını gösterir; tek bir kategori düzeyi sayısı yoktur, çünkü bir kullanıcı her kanalda farklı bir durum taşıyabilir.

#### Test senaryoları

Yeni bir kategori için, test kullanıcısıyla en az aşağıdakileri test edin:

| Senaryo                                              | Beklenen sonuç                                                   |
| ---------------------------------------------------- | ---------------------------------------------------------------- |
| Kanal izni AÇIK, kategori + kanal AÇIK               | Gönderildi                                                       |
| Kanal izni AÇIK, yalnızca bu kanalda kategori KAPALI | Bu kanalda engellendi; diğer kanallardaki aynı kategori iletilir |
| Kanal izni AÇIK, kayıt yok, Opt-in kategori          | Gönderildi                                                       |
| Kanal izni AÇIK, kayıt yok, Opt-out kategori         | Engellendi                                                       |
| Kanal izni KAPALI, kategori + kanal AÇIK             | Engellendi                                                       |

<figure><img src="https://1642824329-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FX6uilbEAw42gqsudlclY%2Fuploads%2FvJSoowa2ftWcyWcDmnyy%2FScreenshot%202024-10-24%20at%2013.33.03.png?alt=media&#x26;token=5fea1b5b-f3eb-4a6d-b856-9205b736578f" alt="Channel Reachability report showing permission data by messaging channel."><figcaption><p>İzin kapsamını kanal bazında gözden geçirin.</p></figcaption></figure>

<figure><img src="https://1642824329-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FX6uilbEAw42gqsudlclY%2Fuploads%2FvpJTVu2QF8nIrUVVtF1V%2FScreenshot%202024-10-24%20at%2013.35.18.png?alt=media&#x26;token=3aed7143-8b80-4c72-88a2-b6b5f82dc949" alt="Message category report with opt-in and opt-out user counts."><figcaption><p>Mesaj kategorisine göre opt-in ve opt-out kullanıcılar</p></figcaption></figure>

### İlgili sayfalar

* [Mesaj Kategorileri](/netmera-user-guide/netmera-user-guide-tr/panel-settings/settings/messaging-and-content/message-categories.md)
* [İYS İzinleri](/netmera-user-guide/netmera-user-guide-tr/customer-data/iys-permissions.md)
* [İYS Senkronizasyon Modu](/netmera-user-guide/netmera-user-guide-tr/customer-data/iys-permissions/iys-sync-mode.md)
* [İYS Entegratör Modu](/netmera-user-guide/netmera-user-guide-tr/customer-data/iys-permissions/iys-integrator-mode.md)
* [İletişim Yükleme](/netmera-user-guide/netmera-user-guide-tr/targeting/contact-upload.md)
* [Kanal Erişilebilirliği](/netmera-user-guide/netmera-user-guide-tr/reports-and-analytics/reports/audience-and-growth/channel-reachability.md)
* [Kişiler](/netmera-user-guide/netmera-user-guide-tr/targeting/people.md)
* [Opt-out](/netmera-user-guide/netmera-user-guide-tr/reports-and-analytics/analytics/user-and-audience/opt-out.md)
* [Geliştirici Kılavuzu — REST API Kategori Tercihleri](https://user.netmera.com/netmera-developer-guide/api-documentation/rest-api/user-and-device-management#category-preferences)
* [Geliştirici Kılavuzu — Android Mesaj Kategorileri](https://user.netmera.com/netmera-developer-guide/platforms/android/push-inbox#message-categories)
* [Geliştirici Kılavuzu — iOS Mesaj Kategorileri](https://user.netmera.com/netmera-developer-guide/platforms/ios/new-ios-swift/push-inbox#manage-push-notification-categories)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://user.netmera.com/netmera-user-guide/netmera-user-guide-tr/customer-data/granular-consent-management.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
