---
title: "Capacitor SDK'da kullanıcı özellikleri ayarlama"
description: "Adapty SDK ile Capacitor uygulamanızda kullanıcı özelliklerini ve profil verilerini nasıl güncelleyeceğinizi öğrenin."
---

Uygulamanızın kullanıcılarına e-posta, telefon numarası gibi isteğe bağlı özellikler atayabilirsiniz. Bu özellikleri kullanarak kullanıcı [segmentleri](segments) oluşturabilir ya da bunları CRM'de görüntüleyebilirsiniz.

### Kullanıcı özelliklerini ayarlama \{#setting-user-attributes\}

Kullanıcı özelliklerini ayarlamak için `.updateProfile()` metodunu çağırın:

```typescript showLineNumbers

const params = {
  email: 'email@email.com',
  phoneNumber: '+18888888888',
  firstName: 'John',
  lastName: 'Appleseed',
  gender: 'other',
  birthday: new Date().toISOString(),
};

try {
  await adapty.updateProfile(params);
  console.log('Profile updated successfully');
} catch (error) {
  console.error('Failed to update profile:', error);
}
```

`updateProfile` metoduyla daha önce ayarladığınız özelliklerin sıfırlanmayacağını unutmayın.

:::tip

Adapty SDK'nın bir mobil uygulamaya nasıl entegre edildiğini gerçek bir örnekle görmek ister misiniz? Tam kurulumu, paywall'ların gösterimini, satın alma işlemlerini ve diğer temel işlevleri içeren [örnek uygulamalarımıza](sample-apps) göz atın.

:::

### İzin verilen anahtarların listesi \{#the-allowed-keys-list\}

`AdaptyProfileParameters` için izin verilen anahtarlar ve değerleri aşağıda listelenmiştir:

| Anahtar | Değer |
|---|-----|
| **email** | String |
| **phoneNumber** | String |
| **firstName** | String |
| **lastName** | String |
| **gender** | Enum, izin verilen değerler: `'female'`, `'male'`, `'other'` |
| **birthday** | ISO formatında tarih dizesi |

### Özel kullanıcı özellikleri \{#custom-user-attributes\}

Kendi özel özelliklerinizi tanımlayabilirsiniz. Bunlar genellikle uygulamanızın kullanım alışkanlıklarıyla ilgilidir. Örneğin fitness uygulamalarında haftada yapılan egzersiz sayısı, dil öğrenme uygulamalarında kullanıcının bilgi seviyesi gibi veriler olabilir. Bu özellikleri segmentlerde kullanarak hedefli paywall'lar ve teklifler oluşturabilir; hangi ürün metriklerinin geliri en çok etkilediğini anlamak için analizlerde de yararlanabilirsiniz.

```typescript showLineNumbers

try {
  await adapty.updateProfile({
    codableCustomAttributes: {
      key_1: 'value_1',
      key_2: 2,
    },
  });
  console.log('Custom attributes updated successfully');
} catch (error) {
  console.error('Failed to update custom attributes:', error);
}
```

Mevcut anahtarları kaldırmak için değer olarak `null` gönderin:

```typescript showLineNumbers

try {
  // to remove keys, pass null as their values
  await adapty.updateProfile({
    codableCustomAttributes: {
      key_1: null,
      key_2: null,
    },
  });
  console.log('Custom attributes removed successfully');
} catch (error) {
  console.error('Failed to remove custom attributes:', error);
}
```

Bazen hangi özel özelliklerin daha önce ayarlandığını öğrenmeniz gerekebilir. Bunun için `AdaptyProfile` nesnesinin `customAttributes` alanını kullanın.

:::warning
`customAttributes` değerinin güncel olmayabileceğini göz önünde bulundurun; kullanıcı özellikleri farklı cihazlardan herhangi bir anda gönderilebileceğinden, sunucudaki özellikler son eşitlemeden bu yana değişmiş olabilir.
:::

### Sınırlamalar \{#limits\}

- Kullanıcı başına en fazla 30 özel özellik
- Anahtar adları en fazla 30 karakter uzunluğunda olabilir. Anahtar adları alfanümerik karakterler ve şunlardan herhangi birini içerebilir: `_`  `-` `.`
- Değer, en fazla 50 karakter uzunluğunda bir string veya float olabilir.