Conectando Klaviyo y BigQuery (ETL inverso)
La Plataforma de Datos Avanzada Klaviyo no está incluida en la aplicación de marketing estándar de Klaviyo, y se requiere una subscripción para acceder a la funcionalidad asociada. Visita nuestra guía de facturación para saber cómo contratar este plan.
Configuración del entorno y conexión
Descripción general: Sigue estos pasos para preparar BigQuery para Klaviyo. Crearás los esquemas necesarios (en un conjunto de datos/proyecto), configurarás una cuenta de servicio y una clave específicas, asignarás los privilegios mínimos necesarios, verificarás la configuración y conectarás BigQuery a Klaviyo.
Para obtener más información sobre cómo funciona Importación desde almacén de datos en Klaviyo, incluida la estructura del esquema, las tablas necesarias y las asignaciones de campos, consulta Cómo funciona Importación desde almacén de datos en Klaviyo.
1) Crear esquemas/conjuntos de datos necesarios
1) Crear esquemas/conjuntos de datos necesarios
En BigQuery, crea dos conjuntos de datos en el proyecto que vas a utilizar para Klaviyo.
CREA ESQUEMA `KLAVIYO_IMPORT_FROM_DWH`; CREA ESQUEMA `KLAVIYO_TMP`;
-
KLAVIYO_IMPORT_FROM_DWH: Las tablas y vistas creadas en este conjunto de datos estarán disponibles para que Klaviyo las lea o escriba. -
KLAVIYO_TMP: Datos temporales o provisionales utilizados durante las operaciones de sincronización.
2) Crea la cuenta Klaviyo Service y la clave.
2) Crea la cuenta Klaviyo Service y la clave.
Crea una cuenta de servicio de Google (por ejemplo, KLAVIYO_DATA_TRANSFER_USER) que Klaviyo utilizará exclusivamente para estas integraciones. Descarga una clave JSON para esta cuenta y guárdala en un lugar seguro.
- Ve a IAM & Administrador → Cuenta de servicio en la consola de GCP.
- Crea una nueva cuenta de servicio (o selecciona una existente dedicada a Klaviyo).
- En la pestaña Claves, crea una nueva clave de tipo JSON. Guarda este archivo clave en un lugar seguro, ya que lo necesitarás para configurar la conexión en Klaviyo.
3) Asignar los permisos necesarios
3) Asignar los permisos necesarios
Otorga a la cuenta de servicio las siguientes funciones, limitadas a los dos conjuntos de datos que has creado:
| Conjunto de datos | Funciones mínimas requeridas | Descripción |
|---|---|---|
KLAVIYO_TMP |
Editor de datos de BigQuery + Usuario de tareas de BigQuery
| Permite a Klaviyo crear y administrar tablas temporales, trabajos, etc. |
KLAVIYO_IMPORTAR_DESDE_DWH |
Visor de datos de BigQuery + Usuario de trabajos de BigQuery
| Permite a Klaviyo leer tus tablas. |
-- Ejemplos de comandos en la CLI de GCP (reemplaza los marcadores de posición): gcloud projects add-iam-policy-binding TU_ID_DE_PROYECTO \ --member="serviceAccount:KLAVIYO_DATA_TRANSFER_USER@YOUR_PROJECT_ID.iam.gserviceaccount.com" --role="roles/bigquery.dataEditor" --condition=None --dataset="KLAVIYO_TMP" gcloud projects add-iam-policy-binding TU_ID_DE_PROYECTO --member="serviceAccount:KLAVIYO_DATA_TRANSFER_USER@YOUR_PROJECT_ID.iam.gserviceaccount.com" --role="roles/bigquery.dataViewer" --condition=None --dataset="KLAVIYO_IMPORT_FROM_DWH"
4) Verifica tu configuración (opcional)
4) Verifica tu configuración (opcional)
4.1 Confirmar que los conjuntos de datos existen4.1 Confirmar que los conjuntos de datos existen
SELECT schema_name
FROM `YOUR_PROJECT_ID.INFORMATION_SCHEMA.SCHEMATA`
WHERE schema_name IN ('KLAVIYO_IMPORT_FROM_DWH','KLAVIYO_TMP');
4.2 Confirmar el acceso a la cuenta de servicio4.2 Confirmar el acceso a la cuenta de servicio
Usa la clave de cuenta de servicio para autenticarte con la CLI de BigQuery o la interfaz de programación de aplicaciones (API) y ejecuta una consulta sencilla:
bq --project_id=TU_ID_DE_PROYECTO \ --dataset_id=KLAVIYO_IMPORT_FROM_DWH \ query --use_legacy_sql=false \ 'SELECT COUNT(*) FROM `TU_ID_DE_PROYECTO.KLAVIYO_IMPORT_FROM_DWH.alguna_tabla` LIMIT 1'4.3 Verifica los permisos de cada conjunto de datos.
4.3 Verifica los permisos de cada conjunto de datos.
SELECT * FROM `TU_ID_DE_PROYECTO.KLAVIYO_IMPORT_FROM_DWH.INFORMATION_SCHEMA.OBJECT_PRIVILEGES` WHERE concesionario = 'KLAVIYO_DATA_TRANSFER_USER@YOUR_PROJECT_ID.iam.gserviceaccount.com';4.4 Opcional: validar las operaciones de creación/lectura.
4.4 Opcional: validar las operaciones de creación/lectura.
-- Prueba de creación en KLAVIYO_TMP CREATE TABLE `TU_ID_DE_PROYECTO.KLAVIYO_TMP.test_permissions` (id INT64); DROP TABLE `TU_ID_DE_PROYECTO.KLAVIYO_TMP.test_permissions`; -- Prueba de selección en KLAVIYO_IMPORT_FROM_DWH SELECCIONA * DE `TU_ID_DE_PROYECTO.KLAVIYO_IMPORT_FROM_DWH.alguna_tabla_existente` LÍMITE 1;
Consejo: Realiza estas comprobaciones utilizando la misma cuenta de servicio y clave que proporcionarás a Klaviyo. Guarda una copia de los resultados para su auditoría.
5) Conecta Klaviyo a BigQuery
5) Conecta Klaviyo a BigQuery
Una vez configurado tu entorno BigQuery, completa la conexión en Klaviyo.
- En Klaviyo, ve a Avanzado → Sincronización en la barra lateral izquierda.
- Haz clic en Crear sincronización.
- Selecciona Importar o exportar datos a tu almacén de datos.
- Elige BigQuery como tu almacén de datos.
- Haz clic en Conectar a BigQuery.
Cuando se te solicite, proporciona los siguientes detalles de configuración de conexión:
| Campo | Descripción | Dónde encontrarlo |
|---|---|---|
| ID del proyecto | Tu ID de proyecto de Google Cloud. | Se encuentra en la consola de GCP, en la parte superior de la página del proyecto. |
| Conjunto de datos | El conjunto de datos (esquema) que contiene tus tablas de Klaviyo (por ejemplo, KLAVIYO_IMPORT_FROM_DWH). | Utiliza el conjunto de datos que creaste en el paso 1. Selecciona ese conjunto de datos al configurar la conexión. |
| Clave de cuenta de servicio (JSON) | El archivo de clave JSON que descargaste para la cuenta de servicio. | Sube o pega el contenido del archivo de clave JSON que creaste en el paso 2. |
Después de conectarte: Klaviyo validará la conexión, comprobará el acceso a tus conjuntos de datos y, a continuación, te permitirá configurar las sincronizaciones, tanto para importar datos a Klaviyo como para exportar datos de Klaviyo a BigQuery.
Siguiente paso: una vez establecida la conexión, crea tu primera sincronización de importación o exportación en Klaviyo y comienza a transferir datos desde o hacia BigQuery.