# Регистрация устройств в Pushwoosh и синхронизация данных с платформой

Для эффективного таргетинга и вовлечения пользователей через Pushwoosh крайне важно убедиться, что устройства пользователей правильно зарегистрированы, а ваши данные синхронизированы. Существует несколько методов регистрации устройств и синхронизации данных с Pushwoosh, в зависимости от ваших конкретных потребностей.

## SDK Pushwoosh

### Мобильные устройства

Для мобильных приложений интеграция Pushwoosh SDK является рекомендуемым методом для бесшовной регистрации устройств и синхронизации данных между приложением, системами Pushwoosh и, опционально, сторонними системами, которые клиенты могут использовать для конкретных конвейеров данных или рабочих процессов.

Интегрируя SDK, вы можете автоматизировать процесс регистрации устройств и обработки их push-токенов. SDK внутренне вызывает метод API registerDevice, обеспечивая регистрацию и синхронизацию каждого устройства с Pushwoosh без необходимости ручного вмешательства.

Кроме того, Pushwoosh SDK позволяет регистрировать номера телефонов для SMS- и WhatsApp-уведомлений. Вы можете использовать следующие методы:

#### Регистрация номера для SMS

##### iOS

```
- (void)registerSmsNumber:(NSString * _Nonnull)number;
```

**Пример**

```
Pushwoosh.sharedInstance().registerSmsNumber(@"+0000000000");
```

Замените `+0000000000` на фактический номер телефона в **формате E.164** (включая знак «+» и код страны).

##### Android

```
Pushwoosh.getInstance().registerSmsNumber(String number);
```

**Пример**

```
Pushwoosh.getInstance().registerSmsNumber("+0000000000");
```

Замените `+0000000000` на фактический номер телефона пользователя в формате E.164, включая «+» и код страны.

#### Регистрация номера для WhatsApp

##### iOS

```
- (void)registerWhatsappNumber:(NSString * _Nonnull)number;
```

**Пример**

```
Pushwoosh.sharedInstance().registerWhatsappNumber(@"+0000000000");
```

Замените `+0000000000` на фактический номер телефона в **формате E.164** (включая знак «+» и код страны).

##### Android

Чтобы зарегистрировать номер телефона пользователя для WhatsApp на Android, используйте следующий метод:

```
Pushwoosh.getInstance().registerWhatsappNumber(String number);
```

**Пример**

```
Pushwoosh.getInstance().registerWhatsappNumber("+0000000000");
```

Замените `+0000000000` на фактический номер телефона пользователя в формате E.164, включая «+» и код страны.

### Веб

Для регистрации устройств для веб-пушей используйте [Web Push SDK](/ru/developer/pushwoosh-sdk/web-push-notifications/web-push-sdk-30/).

<Aside type="tip">
Чтобы разрешить посетителям вашего сайта подписываться на push-уведомления, настройте на своем сайте кастомный или стандартный [запрос на подписку (Subscription Prompt)](/ru/developer/guides/messaging-channels/subscription-prompt/). Этот запрос вызывает нативный запрос на подписку в браузере, где пользователи могут разрешить или заблокировать веб-пуши для вашего сайта.
</Aside>
<video src="/start-with-your-project-subscribe-users-1.webm" title="Пример запроса на подписку на веб-пуши, показывающий запрос разрешения на уведомления в браузере" autoplay loop muted playsinline />

[Узнать больше о Pushwoosh SDK](/ru/developer/pushwoosh-sdk/pushwoosh-sdk-overview)

## API Pushwoosh

Также вы можете использовать **API Pushwoosh** для регистрации устройств и синхронизации данных. API предоставляет полную гибкость для более сложных сценариев.

### Мобильные устройства

Для регистрации мобильных устройств используйте метод API [`registerDevice`](/ru/developer/api-reference/device-api/#registerdevice).

### Email

Pushwoosh предоставляет встроенные формы подписки, которые вы можете разместить на своем сайте для сбора email-адресов. Узнайте, как [создать и встроить форму](/ru/product/audience-data-and-segmentation/subscription-forms/create-subscription-forms/#how-to-build-a-form) и [настроить виджет](/ru/product/audience-data-and-segmentation/subscription-forms/customize-widget/#customize-colors).

После сбора email-адресов используйте метод API [`registerEmail`](/ru/developer/api-reference/email-api#registeremail) для регистрации email-устройств. В качестве альтернативы можно использовать [`registerDevice`](/ru/developer/api-reference/device-api#registerdevice).

<Aside type="note">
Обратите внимание, что запрос [`registerEmailUser`](/ru/developer/api-reference/email-api#registeremailuser) не регистрирует email-адрес в вашей базе пользователей; его следует использовать только для присвоения User ID email-адресам, уже зарегистрированным вызовом registerEmail.
</Aside>

Чтобы связать пользователей вашего приложения или посетителей сайта с их email-адресами, используйте [User ID](/ru/developer/pushwoosh-knowledge-hub/users-userids/users-userids). Это позволит вам создавать кросс-канальные Customer Journeys и отправлять email-сообщения на основе действий пользователя в вашем приложении или на сайте. User ID также позволит вам просматривать историю сообщений и событий пользователя в User Explorer.

**1**. **Получите User ID.**

Каждое устройство, зарегистрированное в вашем проекте Pushwoosh, имеет свой User ID; по умолчанию он равен аппаратному ID устройства (HWID) и получается с помощью API-запроса [`registerDevice`](/ru/developer/api-reference/device-api#registerdevice).

Чтобы установить кастомный User ID, вызовите метод [`registerUser`](/ru/developer/api-reference/user-centric-api#registeruser).

**2. Присвойте User ID email-адресу.**

Используйте метод API [`registerEmail`](/ru/developer/api-reference/email-api#registeremail) или [`registerEmailUser`](/ru/developer/api-reference/email-api#registeremailuser), чтобы связать User ID с email-адресом.

[Узнать больше о User ID](/ru/developer/pushwoosh-knowledge-hub/users-userids/users-userids)

### SMS

Для регистрации SMS-устройств в Pushwoosh можно использовать метод API [`registerDevice`](/ru/developer/api-reference/device-api#registerdevice) или [`createSMSMessage`](/ru/developer/api-reference/sms#createsmsmessage). При использовании последнего убедитесь, что параметр `use_auto_registration` установлен в `true`, чтобы автоматически зарегистрировать номер телефона как SMS-устройство. [Узнать больше](/ru/developer/api-reference/sms#createsmsmessage)

### WhatsApp

Для регистрации WhatsApp-устройств в Pushwoosh можно использовать метод API [`registerDevice`](/ru/developer/api-reference/device-api#registerdevice) или [`createWhatsAppMessage`](/ru/developer/api-reference/whatsapp). При использовании последнего убедитесь, что параметр `use_auto_registration` установлен в `true`, чтобы автоматически зарегистрировать номер телефона как WhatsApp-устройство.

## Импорт существующей базы пользователей

Если вы работаете с большими наборами уже существующих данных, вы можете импортировать эти данные в Pushwoosh.

### Мобильные устройства

Чтобы перенести вашу базу подписчиков на мобильные push-уведомления, пожалуйста, свяжитесь с нами через [форму обратной связи](https://help.pushwoosh.com/hc/en-us/requests/new) и предоставьте образец вашей базы пользователей. Наша команда рассмотрит формат данных и оценит возможность миграции.

### Веб

Веб-пользователи не могут быть импортированы из-за технических ограничений. Разные push-провайдеры используют различные форматы полезной нагрузки и конфигурации платформ, что делает импорт веб-пользователей неэффективным. В результате импортированная база пользователей будет либо недействительной, либо будет получать неверный или пустой контент.

Однако веб-пользователи, которые уже дали разрешение на получение push-уведомлений для вашего сайта, могут быть подписаны заново. [Узнать больше](https://help.pushwoosh.com/hc/en-us/articles/360018326111-Migrate-your-userbase-to-Pushwoosh/?utm_content=docs&utm_term=post&utm_campaign=migrate-your-userbase-to-pushwoosh)

### Email

Чтобы [импортировать базу подписчиков email](/ru/product/messaging-channels/emails/get-email-subscribers/#import-email-list), загрузите файл **.csv** с email-адресами. Импортированные email-адреса будут зарегистрированы как подписчики на email-платформе. Вы также можете предоставить дополнительные данные для каждого email-адреса, такие как имя, пол или местоположение получателя, чтобы лучше сегментировать и персонализировать ваши email-рассылки.

[Импортировать email-адреса](https://app.pushwoosh.com/applications/AEE06-2F522/import-csv/import-emails)

### SMS

Импортируйте файл **.csv** с номерами телефонов для SMS-подписчиков. Вы можете предоставить дополнительные данные, такие как имя, пол или местоположение получателя, чтобы дополнительно сегментировать и персонализировать ваши SMS-рассылки.

[Импортировать SMS-контакты](https://app.pushwoosh.com/applications/AEE06-2F522/import-csv/import-sms)

### WhatsApp

Чтобы импортировать ваши контакты WhatsApp, загрузите файл .csv с контактами WhatsApp. Вы также можете предоставить дополнительные сведения, такие как имя, пол или местоположение получателя, чтобы персонализировать ваши сообщения в WhatsApp.

[Импортировать контакты WhatsApp](https://app.pushwoosh.com/applications/AEE06-2F522/import-csv/import-whatsapp)

### Viber

Чтобы импортировать ваши контакты Viber, загрузите файл .csv с контактами Viber. Вы также можете предоставить дополнительные сведения, такие как имя, пол или местоположение получателя, чтобы персонализировать ваши сообщения в Viber.

[Импортировать контакты Viber](https://app.pushwoosh.com/applications/AEE06-2F522/import-csv/import-viber)

## Использование сторонних интеграций для передачи данных

Помимо SDK и API, Pushwoosh предлагает несколько сторонних интеграций, которые помогут вам синхронизировать и передавать данные с других платформ, упрощая управление пользователями и данными в нескольких системах.

[Ознакомиться со всеми доступными интеграциями](/ru/product/integrations/)