> ## Documentation Index
> Fetch the complete documentation index at: https://documentation.onesignal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# BlueConic

> Sincronize dados do BlueConic para o OneSignal

## Visão geral

[Webhooks BlueConic](https://support.blueconic.com/hc/en-us/articles/115004431305-Webhook-Connection) permitem que você sincronize dados de perfil ou segmento para o OneSignal em tempo real sempre que eventos específicos ocorrem no seu site. Este guia demonstra como configurar o BlueConic para enviar dados ao OneSignal via API [Update user](/reference/update-user).

## Configuração

Para sincronizar dados de usuário entre BlueConic e OneSignal, um identificador comum deve existir para associar usuários em ambas as plataformas. O BlueConic gera um identificador único chamado BlueConic ID, que pode ser vinculado a um usuário no OneSignal para sincronizar dados.

### Script de atualização

Recomendamos criar um alias personalizado para identificar seus usuários usando seus IDs BlueConic. Antes de atribuir um novo alias, certifique-se de que o usuário está logado no OneSignal primeiro. O código a seguir fornece exemplos de associação de um BlueConic ID com um usuário OneSignal usando um Alias e um ID Externo.

<CodeGroup>
  ```javascript javascript theme={null}
  // Get the BlueConic ID
  const blueConicId = blueConicClient.profile.getProfile().getId();

  // Ensure the user is logged in
  // Logged in users will have an External ID
  if (!OneSignal.User.externalId) {
  await OneSignal.login("EXTERNAL_ID_FROM_YOUR_BACKENED");
  }

  // External ID must exist before calling this method
  OneSignal.User.addAlias('blueconic_profile_id', blueConicId);

  ```
</CodeGroup>

Se seu sistema usa IDs BlueConic como o identificador principal, passe-o para `OneSignal.login`.

<CodeGroup>
  ```javascript javascript theme={null}
  // Get the BlueConic ID
  const blueConicId = blueConicClient.profile.getProfile().getId();

  // Set OneSignal External ID to BlueConic ID
  OneSignal.login(blueConicId);
  ```
</CodeGroup>

### Adicionar webhooks

Use webhooks para sincronizar dados do BlueConic para o OneSignal com base em suas necessidades específicas. Os exemplos abaixo demonstram como usar a API [Update user](/reference/update-user) para conseguir isso.

**Detalhes da API**

|               |                                                                            |
| ------------- | -------------------------------------------------------------------------- |
| URL           | `https://api.onesignal.com/apps/<APP_ID>/users/by/alias_label/alias_value` |
| Method        | PATCH                                                                      |
| Authorization | Basic \<API\_KEY>                                                          |

Se seu sistema usa o BlueConic ID como o identificador principal...

Use a seguinte URL em vez disso:

`https://api.onesignal.com/apps/<APP_ID>/users/by/external_id/{{blueconic_profile_id}}`

### Sincronizando propriedades de perfil

Sincronize dados de perfil BlueConic para o OneSignal definindo [Tags](./add-user-data-tags) e outros dados de usuário.

<Frame caption="Exemplo de configuração para atualizar tags">
  <img src="https://mintcdn.com/onesignal/tc0EvmtSSX56SX0c/images/docs/924b855b7ab5f4626de59cd6146470e446ba41880c8f4b9a7a9c065ca8c0590f-Screenshot_2024-11-26_at_11.28.49_AM.png?fit=max&auto=format&n=tc0EvmtSSX56SX0c&q=85&s=1fec9fc3a9555005a21c6ef421a3f09f" width="3296" height="2780" data-path="images/docs/924b855b7ab5f4626de59cd6146470e446ba41880c8f4b9a7a9c065ca8c0590f-Screenshot_2024-11-26_at_11.28.49_AM.png" />
</Frame>

**Payload**

<CodeGroup>
  ```json json theme={null}
  {
    "properties": {
      "tags": {
        "tag_name_at_onesignal": "{{BLUECONIC_PROPERTY}}"
      }
    }
  }
  ```
</CodeGroup>

#### Sincronizando segmentos

Sincronize dados de segmento BlueConic para o OneSignal definindo [Tags](./add-user-data-tags). Use essas tags para criar segmentos diretamente dentro do OneSignal.

<Frame caption="Exemplo de configuração para manter segmentos sincronizados">
  <img src="https://mintcdn.com/onesignal/_KaXe4GQkxsEfa17/images/docs/3f5e229f8bc0a85ccee76fded108ec5407cedce9cf6f651b687de7802430a6b8-Screenshot_2024-11-26_at_11.23.52_AM.png?fit=max&auto=format&n=_KaXe4GQkxsEfa17&q=85&s=06f2ef40620798fca49cdba278f6c537" width="3298" height="2884" data-path="images/docs/3f5e229f8bc0a85ccee76fded108ec5407cedce9cf6f651b687de7802430a6b8-Screenshot_2024-11-26_at_11.23.52_AM.png" />
</Frame>

**Payload**

<CodeGroup>
  ```json json theme={null}
  {
    "properties": {
      "tags": {
        "early_bird": "Yes",
      }
    }
  }
  ```
</CodeGroup>

Você pode nomear tags com base em necessidades específicas, como **early\_bird** ou qualquer outro rótulo descritivo. No entanto, o valor atribuído à tag deve sempre ser codificado, como **Yes**, para consistência entre segmentos no BlueConic e OneSignal.

***
