Sincronizar contatos do Supabase com o Publiq

Mantenha os contatos do Publiq em sincronia com sua tabela de usuários do Supabase para usar atributos como variáveis.

Numa Edge Function acionada por mudanças na tabela, faça upsert do contato:

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');
});

Boas práticas

  • Chame o Publiq sempre do servidor — nunca exponha a API key no cliente.
  • Crie a instância do cliente uma vez e reutilize-a entre requisições.
  • Prefira templateKey a HTML inline para manter o conteúdo versionado.
  • Trate PubliqError (status/code); o SDK já retenta erros temporários com backoff.
  • Envie de um domínio verificado — veja Domínios.

Veja também

Sincronizar contatos do Supabase com o Publiq — Publiq Docs