> ## 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.

# AlloyDB

> Sincronice eventos personalizados desde Google AlloyDB a OneSignal para activar Journeys automatizados y campañas de mensajería personalizadas basadas en el comportamiento del usuario.

export const PLATFORM_0 = "AlloyDB"

export const DATA_TYPE_0 = "table columns"

export const COLUMN_HEADER_0 = "AlloyDB Column"

export const PROPERTIES_DESCRIPTION_0 = "Event metadata as JSON object"

## Descripción general

La integración de OneSignal + Google AlloyDB habilita la sincronización automática de eventos personalizados desde su base de datos AlloyDB directamente a la API de eventos personalizados de OneSignal. Esto le permite activar Journeys automatizados y campañas de mensajería personalizadas basadas en el comportamiento real del usuario almacenado en su base de datos.

Puede sincronizar eventos como compras, vistas de productos, cambios de suscripción o cualquier acción de usuario personalizada para activar automáticamente secuencias de incorporación, campañas de reactivación, mensajes transaccionales y promociones dirigidas a través de notificaciones push, correo electrónico, mensajes en la aplicación y SMS.

***

## Requisitos

* Access to [Event Streams](/docs/en/event-streams) for outbound message events (Plan limitations and overages apply)
* Access to [Custom Events](/docs/en/custom-events) for inbound event syncing (Plan limitations and overages apply)
* [Updated Account Plan](https://onesignal.com/pricing) (not available on free apps)

### Google AlloyDB

* Cuenta de **Google Cloud Platform** con instancia de AlloyDB
* **Auth Proxy** configurado según lo requerido por Google Cloud
* **Permisos de base de datos** para crear usuarios y otorgar acceso
* **Acceso de red** a su instancia de AlloyDB

***

## Configuración

### Configurar permisos de AlloyDB

OneSignal necesita leer datos de eventos desde su base de datos AlloyDB. Recomendamos crear una cuenta de usuario `ONESIGNAL` dedicada con acceso de solo lectura a sus tablas de eventos.

<Steps>
  <Step title="Crear usuario de base de datos OneSignal">
    Cree una cuenta de usuario dedicada con una contraseña fuerte y única:

    ```sql theme={null}
    -- Crear el usuario de OneSignal
    CREATE USER ONESIGNAL WITH PASSWORD '<contraseña fuerte y única>';
    ```
  </Step>

  <Step title="Otorgar acceso al esquema">
    Otorgue al usuario de OneSignal acceso para leer desde su esquema de datos de eventos:

    ```sql theme={null}
    -- Permitir que el usuario de OneSignal vea su esquema de eventos
    GRANT USAGE ON SCHEMA "<your_event_schema>" TO ONESIGNAL;

    -- Permitir que el usuario de OneSignal lea todas las tablas existentes en este esquema
    GRANT SELECT ON ALL TABLES IN SCHEMA "<your_event_schema>" TO ONESIGNAL;

    -- Permitir que el usuario de OneSignal lea cualquier tabla nueva agregada a este esquema
    ALTER DEFAULT PRIVILEGES IN SCHEMA "<your_event_schema>" GRANT SELECT ON TABLES TO ONESIGNAL;
    ```

    <Info>
      Reemplace `<your_event_schema>` con el esquema real que contiene sus tablas de eventos.
    </Info>
  </Step>

  <Step title="Otorgar permisos de función (si es necesario)">
    Si usa procedimientos almacenados o funciones para datos de eventos:

    ```sql theme={null}
    -- Permitir que el usuario de OneSignal ejecute funciones en este esquema
    GRANT EXECUTE ON ALL FUNCTIONS IN SCHEMA "<your_event_schema>" TO ONESIGNAL;

    -- Permitir que el usuario de OneSignal ejecute cualquier función nueva agregada a este esquema
    ALTER DEFAULT PRIVILEGES IN SCHEMA "<your_event_schema>" GRANT EXECUTE ON FUNCTIONS TO ONESIGNAL;
    ```
  </Step>
</Steps>

### Configurar Auth Proxy

<Steps>
  <Step title="Configurar Auth Proxy">
    AlloyDB requiere un Auth Proxy para conexiones de terceros. Siga la [documentación de Auth Proxy de Google](https://cloud.google.com/alloydb/docs/auth-proxy/overview) para configurar esto.

    <Warning>
      El Auth Proxy es requerido: OneSignal no puede conectarse directamente a AlloyDB sin él.
    </Warning>
  </Step>

  <Step title="Anotar detalles de conexión">
    Guarde la siguiente información de conexión:

    * **Host**: Endpoint de Auth Proxy
    * **Port**: Puerto de Auth Proxy (típicamente 5432)
    * **Database**: Nombre de su base de datos AlloyDB
    * **Username**: `ONESIGNAL` (creado anteriormente)
    * **Password**: La contraseña que estableció
  </Step>
</Steps>

### Configurar conexión de OneSignal a AlloyDB

<Steps>
  <Step title="Navegar a integraciones">
    In OneSignal, go to **Data > Integrations** and click **Add Integration**.
  </Step>

  <Step title="Seleccionar Google AlloyDB">
    Elija **Google AlloyDB** de la lista de integraciones disponibles.
  </Step>

  <Step title="Ingresar detalles de conexión">
    Proporcione la información de conexión de AlloyDB:

    * **Host**: Su endpoint de Auth Proxy
    * **Port**: Puerto de Auth Proxy
    * **Database**: Nombre de base de datos AlloyDB
    * **Username**: `ONESIGNAL`
    * **Password**: Contraseña de usuario
    * **SSL**: Habilitado (recomendado)
  </Step>

  <Step title="Probar la conexión">
    Haga clic en **Test Connection** para verificar que OneSignal puede acceder a su instancia de AlloyDB.
  </Step>
</Steps>

***

## Mapeo de datos de eventos

Una vez conectado, deberá mapear las columnas de su tabla AlloyDB a los campos de eventos personalizados de OneSignal:

<Steps>
  <Step title="Seleccionar tablas de eventos">
    Elija las tablas que contienen sus datos de eventos que desea sincronizar con OneSignal.
  </Step>

  <Step title="Mapear campos de eventos requeridos">
    Mapee los campos requeridos para eventos personalizados:

    * **Event Name**: Columna que contiene el tipo de evento (por ejemplo, "purchase", "signup")
    * **User Identifier**: Columna de External User ID, Email o Phone Number
    * **Event Timestamp**: Cuándo ocurrió el evento (opcional)
  </Step>

  <Step title="Mapear datos de carga útil del evento">
    Mapee columnas adicionales a propiedades de carga útil del evento:

    * Propiedades de evento personalizadas (product\_id, price, category, etc.)
    * Datos contextuales (source, campaign, etc.)
    * Métricas de comportamiento (value, quantity, etc.)
  </Step>

  <Step title="Configurar ajustes de sincronización">
    Establezca su frecuencia de procesamiento de eventos y preferencias de entrega.
  </Step>
</Steps>

***

### Event data mapping

Map your {PLATFORM_0} {DATA_TYPE_0} to OneSignal's custom events format:

| OneSignal Field | {COLUMN_HEADER_0} | Description                | Required |
| --------------- | ----------------- | -------------------------- | -------- |
| `name`          | `event_name`      | Event identifier           | Yes      |
| `external_id`   | `user_id`         | User identifier            | Yes      |
| `timestamp`     | `event_timestamp` | When event occurred        | No       |
| `properties`    | `event_data`      | {PROPERTIES_DESCRIPTION_0} | No       |

***

## Configuración de red avanzada

### Listas de permitidos de direcciones IP

Si su instancia de AlloyDB usa listas de permitidos de IP, agregue las direcciones IP de OneSignal. Puede encontrar los rangos de IP actuales en su panel de OneSignal en **Data > Integrations > Network Access**.

### Túnel SSH

OneSignal admite la conexión a AlloyDB a través de túneles SSH para seguridad adicional:

<Steps>
  <Step title="Crear usuario SSH">
    Cree una cuenta de usuario dedicada para OneSignal en su servidor host SSH.
  </Step>

  <Step title="Configurar túnel SSH">
    En la configuración de conexión de OneSignal AlloyDB, habilite **Use SSH Tunnel** y proporcione:

    * SSH Host
    * SSH Port
    * SSH Username
  </Step>

  <Step title="Agregar clave SSH">
    OneSignal generará un par de claves SSH. Copie la clave pública al archivo `authorized_keys` de su host SSH para el usuario de OneSignal.
  </Step>
</Steps>

***

## Limitaciones

* **Rendimiento**: Evite conectarse a bases de datos de producción durante el uso pico
* **Permisos**: OneSignal requiere acceso de solo lectura a tablas de eventos
* **Auth Proxy**: Requerido para todas las conexiones de AlloyDB

***

## Preguntas frecuentes

### ¿Qué sucede si cambia la estructura de mi tabla de eventos?

OneSignal detectará cambios de esquema y puede requerir un nuevo mapeo de campos. Actualice sus mapeos de campos en la configuración de integración.

### ¿Con qué frecuencia sincroniza OneSignal los eventos?

OneSignal verifica nuevos eventos según su frecuencia de sincronización configurada, con un intervalo mínimo de 15 minutos.

***

## ¿Necesita ayuda?

Contacte a nuestro equipo de soporte en `support@onesignal.com` o use el chat en la aplicación para obtener ayuda con la configuración de su integración de AlloyDB.
