Sincronizar contactos de Supabase con Publiq

Mantén los contactos de Publiq sincronizados con tu tabla de usuarios de Supabase para usar atributos como variables.

En una Edge Function activada por cambios en la tabla, haz upsert del contacto:

import { Publiq } from 'npm:publiq';
const publiq = new Publiq(Deno.env.get('PUBLIQ_API_KEY'));

Deno.serve(async (req) => {
  const { record } = await req.json();
  await publiq.contacts.create({
    email: record.email,
    attributes: { first_name: record.name, plan: record.plan },
  });
  return new Response('ok');
});

Buenas prácticas

  • Llama a Publiq siempre desde el servidor — nunca expongas la API key en el cliente.
  • Crea la instancia del cliente una vez y reutilízala entre peticiones.
  • Prefiere templateKey sobre HTML inline para mantener el contenido versionado.
  • Maneja PubliqError (status/code); el SDK ya reintenta errores transitorios con backoff.
  • Envía desde un dominio verificado — ver Dominios.

Ver también

Sincronizar contactos de Supabase con Publiq — Publiq Docs