# Integração com Adapty

<Aside type="caution" icon="setting" title="Assistência do desenvolvedor necessária">
Você precisará da ajuda da sua equipe de desenvolvimento para configurar a integração. Compartilhe este guia com eles.
</Aside>

## Visão geral da integração e casos de uso

[Adapty](https://app.adapty.io/login) é uma plataforma de gerenciamento e monetização de assinaturas de aplicativos móveis.

Ao integrar o Adapty com o Pushwoosh, você pode passar quaisquer eventos relacionados a assinaturas e interações de paywall do Adapty para o Pushwoosh. Lá, você pode iniciar campanhas direcionadas para engajar sua base de usuários, promover upsells e estimular renovações.

Graças a esta integração, empresas de assinatura podem tornar suas comunicações mais eficientes e alcançar um aumento substancial de receita.

## Configurando a integração

1. **Comece na sua** [**conta Adapty**](https://app.adapty.io/login)

Navegue até a seção Integrações, selecione Pushwoosh, ative-o mudando o botão de desligado para ligado e, em seguida, preencha os campos necessários.

<img src="/integrations-adapty-integration-1.webp" alt="Integração Pushwoosh e Adapty - passo 1"/>

2. **Vá para o Pushwoosh para configurar as credenciais essenciais**

Estabeleça uma conexão entre suas contas Pushwoosh e Adapty configurando as credenciais. Isso requer seu ID de Aplicativo Pushwoosh e token de autenticação.

<img src="/integrations-adapty-integration-2.webp" alt="Integração Pushwoosh e Adapty - passo 2"/>

3. **Localize suas credenciais do Pushwoosh**

*   ID do Aplicativo: Encontrado no painel do Pushwoosh.
*   Token de Autenticação: Localizado na seção Acesso à API das Configurações do Pushwoosh.

<img src="/integrations-adapty-integration-3.webp" alt="Integração Pushwoosh e Adapty - passo 3"/>

4. **Configure Eventos e Tags**

Abaixo das configurações de credenciais, você encontrará opções para selecionar e renomear vários grupos de eventos do Adapty para enviar ao Pushwoosh. Revise e escolha os eventos que você precisa. Para uma lista completa de eventos disponíveis no Adapty, consulte [o guia detalhado deles](https://docs.adapty.io/docs/events).

O Adapty lida com a transmissão de eventos de assinatura para o Pushwoosh através de uma integração de servidor para servidor, permitindo total visibilidade desses eventos no seu Painel do Pushwoosh.

<img src="/integrations-adapty-integration-4.webp" alt="Integração Pushwoosh e Adapty - passo 4"/>

5. **Habilite tags personalizadas**

Aprimore sua integração do Pushwoosh com o Adapty utilizando tags personalizadas. Essas tags podem ser adaptadas às suas necessidades específicas, conforme descrito abaixo:

*   adapty\_customer\_user\_id: Um identificador de usuário único do Pushwoosh.
*   adapty\_profile\_id: ID de Perfil de Usuário Adapty único, visível no painel do Adapty.
*   environment: Identifica o ambiente do usuário, 'Sandbox' ou 'Production'.
*   store: Indica a loja de compra ('app\_store' ou 'play\_store').
*   vendor\_product\_id: O ID do produto na loja da Apple/Google.
*   subscription\_expires\_at: A data de expiração da assinatura mais recente, em um formato específico.
*   last\_event\_type: Tipo do evento mais recente do Adapty.
*   purchase\_date: Data da última transação, em um formato específico.
*   original\_purchase\_date: Data da primeira compra, em um formato específico.
*   active\_subscription: Indica o status da assinatura.
*   period\_type: Tipo do período mais recente da compra ou renovação.

Além disso, você pode integrar atributos personalizados para maior flexibilidade de rastreamento. Na página de integração do lado do Adapty, marque a caixa de seleção 'Enviar atributos personalizados do usuário' para transmissão automática para o Pushwoosh.

6. **Obrigatório: Configurar o SDK**

Para completar a integração, envie o valor do HWID do Pushwoosh para o Adapty:

<Tabs>
<TabItem label="Swift">
```
let params = AdaptyProfileParameters.Builder()
    .with(pushwooshHWID: Pushwoosh.sharedInstance().getHWID())
    .build()

Adapty.updateProfile(params: params) { error in
    // handle the error
}
```
</TabItem>

<TabItem label="Kotlin">
```
val params = AdaptyProfileParameters.Builder()
    .withPushwooshHwid(Pushwoosh.getInstance().hwid)
    .build()

Adapty.updateProfile(params) { error ->
    if (error != null) {
        // handle the error
    }
}
```
</TabItem>

<TabItem label="Java">
```
AdaptyProfileParameters params = new AdaptyProfileParameters.Builder()
    .withPushwooshHwid(Pushwoosh.getInstance().getHwid())
    .build();

Adapty.updateProfile(params, error -> {
    if (error != null) {
        // handle the error
    }
})
```
</TabItem>

<TabItem label="Flutter">
```
import 'package:pushwoosh/pushwoosh.dart';

final builder = AdaptyProfileParametersBuilder()
        ..setPushwooshHWID(
          await Pushwoosh.getInstance.getHWID,
        );
try {
    await adapty.updateProfile(builder.build());
} on AdaptyError catch (adaptyError) {
    // handle error
} catch (e) {}
```
</TabItem>

<TabItem label="TypeScript">
```
import { adapty } from 'react-native-adapty';
import Pushwoosh from 'pushwoosh-react-native-plugin';

// ...
try {
  await adapty.updateProfile({
    pushwooshHWID: hwid,
  });
} catch (error) {
  // handle `AdaptyError`
}
```
</TabItem>

<TabItem label="Unity">
```
var builder = new Adapty.ProfileParameters.Builder();
builder.SetPushwooshHWID(Pushwoosh.Instance.HWID);

Adapty.UpdateProfile(builder.Build(), (error) => {
    // handle error
});
```
</TabItem>
</Tabs>

<Aside type="note">
Leia mais sobre [possíveis casos de uso da integração Pushwoosh e Adapty](https://blog.pushwoosh.com/blog/adapty-integration/) em nosso blog
</Aside>