# FTP Push ve İçe Aktarımlar

Dosyaları FTP’ye bırakarak push bildirimleri gönderin ve kullanıcı verilerini Netmera’da güncelleyin.

API çağrıları olmadan basit, otomatik bir entegrasyon istediğinizde bunu kullanın.

### Başlamadan önce

Bunların hazır olması gerekir:

* Uygulamanız için Netmera tarafından FTP erişimi etkinleştirilmiş olmalı.
* FTP kimlik bilgileri alınmış olmalı.
* IP allowlisting kullanılıyorsa, şu bilgiyi Netmera ile paylaşın: **genel çıkış IP’niz** Netmera ile.

Eğer hedefiniz **rapor dışa aktarımları**ise, bunun için ayrı [Veri Dışa Aktarımı](/netmera-user-guide/netmera-user-guide-tr/raporlar-ve-analitik/raporlar/veri-disa-aktarimi.md) modülü kullanın.

### FTP ile push bildirimleri gönderin

{% stepper %}
{% step %}

#### FTP Push özelliğini etkinleştirin ve kimlik bilgilerini alın

FTP özelliklerine erişmek ve FTP host, port, path ve kimlik bilgilerini almak için Netmera veya DevOps ekiplerinizle çalışın.
{% endstep %}

{% step %}

#### CSV dosyasını hazırlayın

Bir **UTF-8** kodlamalı CSV dosyası oluşturun. Ayırıcı olarak **noktalı virgül (`;`)** ) kullanın.

Sütunlar şu sırada olmalıdır:

* `ExternalID`
* `Text`
* `Deeplink`

Satır başına format:

`ExternalID;Text;Deeplink`
{% endstep %}

{% step %}

#### Dosyayı FTP’ye yükleyin

CSV dosyasını DevOps tarafından sağlanan dizine yükleyin.

Netmera dosyayı işler ve bildirimleri gönderir.
{% endstep %}
{% endstepper %}

{% hint style="warning" %}
**Uyarı: Inbox Dahil FTP Push Bildirimleri**

FTP üzerinden gönderilen tüm push bildirimleri varsayılan olarak **Inbox** seçeneğini içerir. Uygulamanızda Inbox özelliği yoksa bu sizi etkilemez. Ancak uygulamanızda Inbox özelliği varsa, **FTP üzerinden gönderilen bildirimler** **Inbox içinde de görünür.**
{% endhint %}

{% hint style="info" %}
**CSV kuralları**

* Kullanın **satır başına bir push**.
* Değeri içinde `;` ifadesini **Text** tutmayın.
* Dosya adlarını benzersiz tutun (zaman damgası ekleyin).
  {% endhint %}

{% hint style="info" %}
**Örnek satırlar**

```
12345;Hoş geldiniz! Yeniliklere göz atın.;https://example.com/welcome
67890;Size özel fırsatlar.;https://example.com/offers
```

{% endhint %}

{% hint style="info" %}
**Push metninde satır sonları**

Kullanın `\n` karakterini `Text` alanı içinde satırları bölmek için kullanın.

```
Hoş geldiniz!\nEn yeni özelliklerimizi keşfetmenin keyfini çıkarın.
```

Görüntülendiğinde şu şekilde görünür:

```
Hoş geldiniz!  
En yeni özelliklerimizi keşfetmenin keyfini çıkarın.
```

{% endhint %}

{% file src="/files/6d6d1d95ec494a662da1bdea118d7777a0d0c55a" %}
FTP Push içe aktarma
{% endfile %}

### Profil özniteliklerini FTP üzerinden içe aktarın

Bunu mevcut kullanıcıların özniteliklerini toplu olarak güncellemek için kullanın.

#### 1) Panelde öznitelikleri oluşturun

Dosyadaki öznitelik adları paneldeki profil öznitelikleriyle eşleşmelidir.

Bknz. [Profil Öznitelikleri](/netmera-user-guide/netmera-user-guide-tr/musteri-verisi/profil-ozellikleri.md).

#### 2) FTP’de `Profile` klasörünü oluşturun

DevOps’tan bir `Profile` klasörünü FTP yolunuz altında oluşturmasını isteyin.

#### 3) .txt `.txt` dosyasını hazırlayın

İçe aktarma dosyası düz metin dosyası olmalıdır (`.txt`) ve her satır bir kullanıcı kaydını temsil etmelidir. Tüm dosya boyunca ayırıcı olarak `~` karakteri kullanılır.

Gerekli sıra:

* `extID` (zorunlu)
* `email` (isteğe bağlı)
* `deviceToken` (isteğe bağlı)
* `msisdn` (isteğe bağlı)
* güncellenecek bir veya daha fazla profil özniteliği

Örnek:

```
Exid~~~email~deviceToken~msisdn~profileattribute
ExtId1~~~email1~deviceToken1~+905XXXXXXXXX~membershipTier1
ExtId2~~~email2~deviceToken2~+905XXXXXXXXX~membershipTier2
ExtId3~~~email3~deviceToken3~+905XXXXXXXXX~membershipTier3
```

#### 4) Klasöre yükleyin `Profile` klasörüne

Dosyayı benzersiz bir dosya adıyla yükleyin (tarih-saat ekleyin).

Notlar:

* Dosyadaki öznitelik adları paneldeki profil öznitelikleriyle eşleşmelidir.
* Yüklemeden önce eksik öznitelikleri oluşturun.
* Kullanın `+` (E.164) için `msisdn`. Örnek: `+905XXXXXXXXX`.

{% hint style="info" %}
**İşlemin nasıl doğrulanacağı**

Dosya başarıyla işlendiğinde klasörden kaybolur; bu da işlemin tamamlandığını gösterir.
{% endhint %}

{% hint style="info" %}
**Ek öneriler:**

* **Büyük veri yüklemeleri için** (ör. 300.000’den fazla profilin özniteliklerini güncellemek), veriyi daha küçük dosyalara bölün ve bunları ayrı ayrı yükleyin.
* Her dosya için **benzersiz** **dosya adları** kullandığınızdan emin olun.
* Dosyaları yüklemenizi öneririz **iş saatleri** **sırasında** çünkü gece çalışan işleme görevleri müdahale edebilir.
  {% endhint %}

{% file src="/files/b1a96ad92f2bf690132605152e074a7081bb4401" %}
FTP Profile Attribute içe aktarma
{% endfile %}

### Sorun giderme

Bir dosya işlenmiyorsa:

* Ayırıcıyı ve sütun sırasını kontrol edin.
* Dosya kodlamasını kontrol edin (**UTF-8**).
* Profil içe aktarmaları için öznitelik adlarının mevcut olduğunu ve birebir eşleştiğini doğrulayın.
* Dosya adlarını benzersiz tutun. Aynı adı iki kez yüklemekten kaçının.

Hâlâ sorun görüyorsanız, dosya adını ve zaman damgasını destek ekibiyle paylaşın.


---

# Agent Instructions: Querying This Documentation

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

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://user.netmera.com/netmera-user-guide/netmera-user-guide-tr/mesajlasma-ozellikleri/ftp-push-ve-ice-aktarimlar.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
