Pular para o conteúdo

Compartilhar com segurança; créditos e guarda de custo

Aula 10 de 107 minOperarAtualizada em 2026-10-04

Vídeo em produção

A gravação desta aula está no lote de produção. O objetivo, o exercício e a documentação já valem. Duração-alvo: 7 min.

Objetivo: Escolher entre `/d`, `/painel`, `/r`, embed; explicar franquia e `maximumBytesBilled`

Selo de estado: Preview (teto atual do produto) · Curso ACD-100 — Fundamentos Ingestia · Aula 10 de 10 · Atualizado em 2026-10-04.

Objetivo#

Ao final desta aula você vai escolher entre /d, /painel, /r, embed; explicar franquia e maximumBytesBilled — decidir quanta exposição um painel merece e saber de onde sai o dinheiro de cada ação cara.

Vídeo#

Identificador no manifesto: acd-100-10-compartilhar-e-custos · duração-alvo 7 min · tela do produto: /billing.

Roteiro de gravação (6 capítulos):

#Minutagem-alvoCapítuloTela do produto
10:00–0:30Abertura: título + selo. As duas decisões que só o dono toma: exposição e dinheiro.painel em consulta
20:30–2:00Três portas em ordem de risco: 1 · Link secreto (/d, noindex) · 2 · Embed (token assinado; Preview; Business+) · 3 · Publicar na web (/painel, indexável, opt-in). E /r: snapshot imutável de relatório.painel → Compartilhar
32:00–3:00Regras: só o dono decide; exige painel publicado; link secreto não é controle de acesso; snapshot não consulta o BigQuery e fica no ar mesmo em atraso; /painel é 404 até ligar./d/<slug>
43:00–4:30Assinatura por e-mail com RLS por destinatário; entrega real de e-mail = Preview.painel → Compartilhar
54:30–6:00Dinheiro: créditos, franquia (uma vez por ciclo), recarga Pix, entitlements por plano; maximumBytesBilled; a regra do dinheiro (402)./billing · /costs
66:00–7:00Erros comuns e o "faça você mesmo": gerar um /d e localizar o saldo./billing

Conteúdo#

Três portas, em ordem de risco

Compartilhar é decisão do dono do workspace — quem não é dono vê "Só o dono do workspace decide como este painel é compartilhado." — e exige painel publicado. As portas aparecem em ordem de exposição:

PortaEndereçoIndexaçãoPara quem
1 · Link secreto/d/<slug> — endereço não-adivinhávelnoindex; o robots.txt manda os buscadores nem entrarem em /dMandar para alguém específico. É o padrão.
2 · Embed na sua aplicaçãoSDK JS com token assinado, eventos e filtrosdepende da sua aplicaçãoColocar o painel dentro do seu produto (Preview; a partir do Business)
3 · Publicar na web/painel/<slug>indexável e rastreávelQuem quer divulgar (prestação de contas, obras públicas)

E há um quarto endereço, que não é porta de painel: /r/<slug>, o snapshot de relatório — a versão pública imutável do relatório enviado. Renderiza o resultado congelado no envio e nunca re-consulta o BigQuery: "o número enviado é o número da página". É a mesma fonte do PDF, é noindex, e para visitante anônimo a PII é sempre mascarada.

Regras que não mudam

  • /painel/<slug> é 404 até o dono ligar explicitamente "Publicar na web" — mesmo que já exista link privado. Quando liga, /painel vira o endereço canônico e o /d antigo redireciona para lá (links já enviados continuam funcionando).
  • O link privado serve um snapshot: leitura barata, sem custo de BigQuery para o dono — por isso continua no ar mesmo se a assinatura estiver em atraso (não passa pela verificação de assinatura). Tem freio de abuso: acessos demais do mesmo endereço em um minuto recebem uma página de "muitos acessos".
  • /painel e /d passam por um canário de exposição (chave de desligamento painel público e embed): desligá-lo derruba o painel público antes de carregar qualquer dado. É ortogonal à inadimplência.

Link secreto não é controle de acesso

Um endereço difícil de adivinhar não substitui autenticação. Publicar na web torna o painel indexável. Pense na audiência antes de abrir a porta — e nunca mande um /d de painel com faturamento para um grupo aberto.

Assinatura por e-mail (com RLS)

Para envio recorrente, configure uma assinatura: destinatários, frequência e formato. O envio aplica RLS por destinatário — cada pessoa recebe apenas as linhas que pode ver — e gera um recibo de entrega no ledger (estado, retry, DLQ). O viewer pode assinar por conta própria o que já tem permissão de ver. Enviar relatório é ação cara (report_run), bloqueada em inadimplência. Os limites são do plano: relatórios com agenda ativa e destinatários por relatório (tabela abaixo).

O dinheiro: créditos, franquia, recarga, entitlements

  • Créditos de uso: saldo em R$ que cobre o consumo de nuvem (consultas no BigQuery, egress de IA).
  • Franquia mensal: os créditos inclusos do plano, creditados exatamente uma vez por ciclo (YYYY-MM). É idempotente (reprocessar não credita duas vezes), soma ao saldo único, sem expiração nem rollover. Enterprise/custom não tem franquia self-service.
  • Recarga: créditos adicionais via Pix, somados ao saldo.
  • Entitlements: limites por plano.
EntitlementStarterGrowthBusinessScale
Relatórios com agenda ativa110ilimitado*ilimitado*
Destinatários por relatório31050200
Narrativa executiva por IA—✓✓✓
PDF anexo no relatório——✓✓
Alertas inteligentes——✓✓
Modos de atualizaçãobatchbatch, near_rtbatch, near_rtbatch, near_rt

* "ilimitado" = teto muito alto (999). Modo ao vivo (rt) só com nuvem própria (BYOC), fora do plano.

Guarda de custo e regra do dinheiro

  • maximumBytesBilled é o teto de bytes por consulta: evita fatura-surpresa. "Consulta cortada por custo" significa que o teto foi atingido — reduza o escopo. O ledger de IA é atômico (reserva → liquidação): consumo nunca vaza o teto. Budgets por workload são advisory e fail-closed — a plataforma nunca troca o modo de execução sozinha.
  • Regra do dinheiro: mesmo com o papel certo, uma ação cara (refresh, export, IA, relatório) é bloqueada se a assinatura estiver em atraso (402). A página pública de snapshot não passa por essa verificação — por isso o /d continua servindo.
  • Gerir créditos, recargas e plano é ação de owner (billing.manage).

Onde ver no produto

  • Administração → Créditos (/billing): saldo e extrato. O extrato distingue franquia (franquia:<ws>:<ciclo>), recarga (id do pagamento) e storage, cada um no seu bucket. Recarga via Pix.
  • Administração → Custos (/costs): a estimativa mensal — assinatura fixa + consumo de infraestrutura previsto, com composição e projeção de 6 meses. É área do dono e não é a fatura.

Exemplo: a Comércio Aurora

Maria compartilha "Aurora — Vendas" por link secreto com a diretoria e agenda uma assinatura semanal para os gerentes: cada um recebe o e-mail já filtrado pela sua filial — o gerente de Campinas não vê Sorocaba. No plano Growth, a Aurora recebe R$ 150 de franquia no início do ciclo; num mês de pico, Maria recarrega R$ 300 via Pix, e o extrato mostra "Franquia mensal do plano Growth — ciclo 2026-09" e a recarga em linhas separadas.

Erros comuns

SintomaCausa provávelO que fazer
/painel/<slug> dá 404"Publicar na web" não foi ligadoligue em Compartilhar (o padrão é privado)
Compartilhamento negadonão é dono, ou painel não publicadopeça ao dono; publique antes
E-mail não chegaentrega real é Preview (domínio não verificado)esperado em preview/demo
Destinatário vê linhas demaisRLS não configuradadefina o atributo por destinatário
Ação cara bloqueadasaldo esgotado ou assinatura em atrasorecarregue; regularize em Planos
Consulta cortada por custoatingiu maximumBytesBilledreduza o escopo
Snapshot /r com número "velho"é imutável por designgere um novo envio

Estado

Assinatura com RLS no envio é GA-candidato; recibo real de e-mail, embed/web público, PDF/PPTX e WhatsApp são Preview (dependem de infraestrutura paga, allowlist e verificação de domínio). Franquia, ledger e entitlements são determinísticos (GA-candidato); custo faturado em BRL e escala real não foram medidos — todo valor em R$ no produto é projeção.

Faça você mesmo#

No workspace de treino Aurora Varejo, como dona:

  1. Abra o painel Aurora — Vendas (aula 8) e confirme que está Publicado — Compartilhar exige isso.
  2. Em Detalhes — selos, datas, versões e compartilhamento, use compartilhar e escolha 1 · Link secreto. Copie o endereço /d/<slug>.
  3. Abra o /d numa janela anônima: deve abrir o snapshot sem login. Troque /d/ por /painel/ no endereço e confirme o 404 — você não ligou "Publicar na web".
  4. Não ligue a web aberta. Escreva uma frase para cada porta dizendo para quem você a usaria: /d, embed, /painel — e uma para /r.
  5. Abra Administração → Créditos (/billing): localize o saldo e, no extrato, a linha de franquia do ciclo atual (franquia:<ws>:<ciclo>) separada das recargas.
  6. Abra Administração → Custos (/costs) e compare a estimativa mensal com o saldo. Explique em uma frase a diferença: previsão × dinheiro.
  7. Na tabela de entitlements, marque o que o plano Growth permite (10 relatórios agendados, 10 destinatários, narrativa por IA) e o que não permite (PDF anexo, alertas inteligentes).

Você terminou quando tem um /d abrindo sem login, o /painel ainda em 404, o saldo e a linha de franquia localizados — e consegue explicar maximumBytesBilled e a regra do dinheiro em uma frase cada.

Checagem rápida#

Três perguntas no final da aula, corrigidas no servidor. A aula só conta como concluída depois da checagem.

Documentação relacionada#

Capacidades ensinadas#

C00.6 — o selo exibido na aula é sempre o estado mais conservador entre as capacidades citadas; nada aqui é "GA".

Carregando seu progresso…