Pular para o conteúdo principal

Tabelas para consultas sql

O comando sql`…` faz parte do Server SDK: ele lê dados diretamente do banco de dados do Qubix e está disponível em scripts, regras automáticas Britva e handlers de sites. Esta é uma referência de quais tabelas e colunas você pode acessar e por quais regras.

Como o acesso funciona

  • Somente leitura. Apenas consultas que começam com SELECT, WITH, SHOW, DESCRIBE ou EXPLAIN são permitidas. Qualquer alteração de dados (INSERT, UPDATE, DELETE) e acesso a fontes externas a partir de dentro da consulta são bloqueados.
  • Parâmetros seguros. Valores passados por ${…} sempre vão como parâmetros de consulta, não emendados ao texto. Você não precisa escapar nada manualmente e a substituição de consultas é impossível.
  • Você vê apenas seus próprios dados. A consulta é executada dentro das permissões da sua função: você obtém exatamente as linhas que tem permissão de ver nos relatórios. Os dados de outras pessoas não são acessíveis.
  • Um limite de tamanho. Uma única consulta retorna no máximo alguns milhares de linhas (o administrador define o limite exato). Para seleções grandes, agregue diretamente na consulta — count(), sum(), GROUP BY.

O nome da tabela é escrito sem prefixo de banco de dados — apenas qubix_events.

qubix_events — o fluxo de eventos

A tabela principal: uma linha por evento do visitante e por ação de conversão. Por meio dela você pode ver tudo o que acontece com o tráfego — da primeira visita ao depósito e à entrega do push.

Evento e identidade

ColunaO que é
eventO tipo de evento (valores na tabela abaixo)
event_timeO horário do evento
piuidO id do visitante (persistente entre visitas)
pwa_idO PWA ao qual o evento pertence
domainO domínio em que o evento ocorreu
urlO endereço da página

Geo e dispositivo

ColunaO que é
geo, countryO país do visitante (por GeoIP)
cityA cidade
languageO idioma do navegador
uaO User-Agent
ipO endereço IP
deviceDados do dispositivo (JSON)

Rastreamento e atribuição

ColunaO que é
click_idO id de clique do tracker
campaign_idA campanha do tracker
ad_idO anúncio
sub_id_1sub_id_16Tags personalizadas do tracker
fbc, fbp, fbclidParâmetros de atribuição do Facebook
gclid, ttclidAtribuição do Google / TikTok
source_clidO id de clique original
pixelO id do pixel
paramsTodos os parâmetros de endereço (um mapa "chave → valor")

Oferta

ColunaO que é
offer_idA oferta
offer_urlO link da oferta

Push

ColunaO que é
push_campaign_idA campanha de push
subscription_idA inscrição de push do visitante
message_idO id da mensagem enviada
push_title, push_bodyO texto do push

Conversão

ColunaO que é
statusO status da conversão
revenueA receita do evento
currencyA moeda
response_codeO código de resposta (para eventos do lado do servidor)
error_messageO texto de erro, se houver
external_idUm identificador externo
extraDados adicionais do evento (JSON)

Valores de event

Os principais tipos de eventos que você verá no fluxo:

GrupoValores
Visitas e visualizaçõescampaign_visit, render, white_page
Instalação do PWAinstall_accepted, install_rejected, install_blocked, installed, launch_pwa, install_fallback_redirect
Pushpush_prompt_shown, push_allow, push_deny, push_ignored, push_subscribe, push_sent, push_shown, push_click, push_dismiss, push_expired
Conversõesreg (registro), dep (depósito)

Os valores de eventos de inscrição e instalação correspondem aos eventos do Browser SDK — o que o window.sdk envia do navegador chega diretamente aqui.

Exemplo

Quantos visitantes de cada país permitiram o push no último dia:

JavaScript
const rows = sql`
SELECT geo, count() AS allowed
FROM qubix_events
WHERE event = 'push_allow'
AND event_time >= now() - INTERVAL 1 DAY
GROUP BY geo
ORDER BY allowed DESC`
for (const row of rows) console.log(row.geo, row.allowed)

Outras tabelas

TabelaO que contém
pwa_appsConfigurações do aplicativo PWA: pwa_id, name, status, country, category, rating, downloads, push_placement e outros campos do construtor
push_subscriptionsInscrições de push: subscription_id, pwa_id, geo_country, active, subscribed_at
push_campaignsCampanhas de push: push_campaign_id, name, status, target_geo

As métricas de relatório prontas (spend, revenue, ROAS, conversões por anúncio) são mais fáceis de obter não do fluxo bruto, mas dos campos do objeto ad — a lista completa está em Métricas e colunas.

Atenção

Segredos de serviço não são acessíveis a partir de consultas — por exemplo, as chaves privadas para push não podem ser lidas. Uma consulta sempre funciona em modo somente leitura e apenas dentro das permissões da sua função.

O que vem a seguir