Skip to content
Docs

This page has not been translated yet — you are reading the Portuguese version. View in Portuguese

Preview

Conectores — catálogo por estado REAL

On this page (10)

Estado global: o produto inteiro está em Preview — sem SLA público e sem certificação de nuvem; nenhum conector é anunciado como disponibilidade geral. Métricas de nuvem: NÃO MEDIDO. Isso não significa que todo conector esteja com acesso restrito: a tabela abaixo diz, conector a conector, quais dá para cadastrar e usar hoje e quais o produto recusa configurar.

Fichas por conector: conectores/fichas.md — uma página por conector, com campos, credenciais, limites e erros comuns.

Leia antes: README.md (vocabulário de estado + template dos 9 campos). Esta página é o mapa de estados público dos conectores — o passo a passo operacional detalhado vive no runbook operacional interno, não é duplicado aqui.


Dois vocabulários, e por que os dois existem#

Confundir os dois foi o que produziu a contradição entre a página inicial e esta página: a primeira mostrava Disponível e a segunda dizia Preview para o mesmo conector. São eixos diferentes, e ambos continuam valendo.

EixoValoresO que responde
Estado público (o selo do site e da tela de conexões)Disponível · Acesso limitado · PlanejadoDá para eu usar isto hoje?
Maturidade (vocabulário interno de engenharia)GA-candidato · Preview · RoadmapQuanta prova existe por trás?

Regras que valem nas duas superfícies, sem exceção:

  • "Disponível" = usável hoje, no fluxo normal do produto, com a credencial da sua origem. Não quer dizer disponibilidade geral, SLA nem certificação: o teto de maturidade do produto é GA-candidato, e nada é anunciado como GA.
  • "Acesso limitado" sempre vem com a condição concreta escrita na página do conector — "acesso limitado" sem condição seria claim vazio.
  • "Planejado" é o que ainda não existe. Nenhuma superfície oferece botão de "usar hoje" para esses.

Estado do catálogo (a verdade do produto)#

O estado público de cada conector é derivado do catálogo, não redigitado. disponivel → Disponível; estrutura → Acesso limitado; roadmap → Planejado. A coluna "Configuração" diz se o produto recusa cadastrar a fonte hoje — e essa recusa é o único caso em que usar depende de falar com o suporte.

ConectoridEstado públicoMaturidadeConfiguraçãoAuth
PostgreSQLpostgresqlDisponívelGA-candidatoaceitausuário/senha (rede: IP, SSH, Cloud SQL, VPN)
MySQLmysqlDisponívelGA-candidatoaceitausuário/senha
SQL ServersqlserverDisponívelGA-candidatoaceitausuário/senha
OracleoracleDisponívelGA-candidatoaceitausuário/senha
BigQuerybigqueryDisponívelGA-candidatoaceitaconta de serviço
CSV · JSON · Parquetcsv json parquetDisponívelGA-candidatoaceitaenvio para a área de recebimento
Google Sheetsgoogle_sheetsDisponívelGA-candidatoaceitaconta de serviço
Meta Ads (Facebook/Instagram)meta_adsAcesso limitadoPreviewaceitaOAuth2
Google Adsgoogle_adsAcesso limitadoPreviewaceitaOAuth2
Omie ERPomieAcesso limitadoPreviewaceitaapiKey (App Key/Secret)
Tiny ERPtinyAcesso limitadoPreviewaceitatoken (API v2)
NF-e (SEFAZ)nfeAcesso limitadoPreviewaceitacertificado A1 (.pfx)
SalesforcesalesforceAcesso limitadoPreviewaceitaOAuth2
Bling ERPblingAcesso limitadoPreviewrecusada ¹OAuth2
Conta Azulconta_azulAcesso limitadoPreviewrecusada ¹OAuth2
HubSpothubspotAcesso limitadoPreviewrecusada ¹OAuth2/token
Azure Blob Storageazure_blobAcesso limitadoPreviewrecusada ²chave/SAS do container
Amazon S3s3PlanejadoRoadmaprecusada ³—
Google Cloud StoragegcsPlanejadoRoadmaprecusada ³—

¹ A rotação do refresh token (OAuth) não é persistida ponta a ponta; sem ela a conexão pararia na primeira renovação. O produto recusa salvar em vez de deixar quebrar depois. Fale com o suporte para participar da liberação.

² A leitura do container existe, mas ainda não está ligada ao fluxo de fontes.

³ Puxar de um bucket seu não está implementado. O caminho hoje é enviar os arquivos para a área de recebimento do seu ambiente, que segue o mesmo fluxo de camadas.

Quatro conectores em Preview e dois Planejados têm a configuração RECUSADA pelo produto — a tela não deixa salvar e explica por quê. Os demais não dependem de nenhuma liberação caso a caso: dependem da credencial da sua origem e de o ambiente de nuvem do seu workspace estar configurado (sem ele a execução falha, com mensagem, em vez de fingir sucesso).

O runner R/Python de scripts continua indisponível por isolamento não provado. Ele não é um conector: é execução de script isolada.


Ficha por família (template dos 9 campos)#

Conectores ERP/Fiscal BR — Omie, Bling, Conta Azul, Tiny, NF-e

  1. Estado — Acesso limitado os cinco (maturidade Preview). Omie, Tiny e NF-e aceitam cadastro hoje; Bling e Conta Azul têm a configuração RECUSADA pelo produto enquanto a rotação do refresh token não for persistida. Nenhum deles é anunciado como disponibilidade geral.
  2. O que faz — extraem tabelas de negócio (pedidos, produtos, financeiro, NF-e) da API do ERP e carregam na camada Bronze do workspace.
  3. Como funciona — cada conector é só um adaptador sobre o SDK comum de conectores: auth normalizada, paginação com teto, checkpoint de retomada, retry com Retry-After, redaction e métricas vêm de graça. A mesma bateria de contrato roda contra os cinco.
  4. Plano · Permissão — núcleo do produto · verificação de acesso (workspace ativo) · chave de desligamento execução de ingestão por capacidade. Extração real exige credencial cifrada da fonte.
  5. Custo — extração em si é chamada de API do ERP (R$0 na plataforma); a carga Bronze consome processamento de carga no datalake (cobrável) — ver custo-limites-seguranca.md. Custo faturado real em nuvem = NÃO MEDIDO.
  6. Limites — paginação com teto duro (default 10.000 páginas / 5.000.000 linhas); carga SaaS default batchSize 5.000, maxRows 200.000.
  7. Segurança — segredo (App Secret, refresh token, senha do certificado) entra na redação de segredos; nenhum erro sai com token. Escopo por workspace na carga.
  8. Como validar — no console, em ETL/ELT → Conexões, use "Testar conexão" com a credencial da fonte e confirme que a descoberta lista as tabelas esperadas; após uma carga, verifique na camada Bronze do seu workspace as linhas ingeridas. O catálogo mostra o estado ("Preview até certificação com credencial real").
  9. Estado real / claim permitido — "<Conector> em Acesso limitado — a condição de uso está escrita na página do conector."

Conectores de Anúncios — Meta Ads e Google Ads

  1. Estado — Acesso limitado (maturidade Preview); os dois aceitam cadastro. Meta Ads depende de App Review Meta (ads_read) para uso amplo; Google Ads, do developer token basic→standard.
  2. O que faz — Meta Ads lê o endpoint de Insights (uma linha por dia, time_increment=1) em 3 tabelas Bronze (meta_ads_campanhas/_conjuntos/_anuncios). Google Ads lê relatórios de desempenho (campanha/grupo/palavra-chave).
  3. Como funciona — adaptadores sobre o SDK comum, com transporte com retry (429/5xx + Retry-After) e checkpoint. O Google Ads recusa a ingestão em produção enquanto o developer token não estiver aprovado (nunca finge sucesso).
  4. Plano · Permissão — núcleo · verificação de acesso · execução de ingestão.
  5. Custo — chamadas às APIs de Ads (R$0 plataforma) + carga Bronze cobrável. Métricas de nuvem = NÃO MEDIDO.
  6. Limites — janelas de data configuráveis (7/14/30/90 dias, mês atual/passado); mesmos tetos de paginação do SDK.
  7. Segurança — access token / client secret / developer token / refresh token redigidos em todo erro.
  8. Como validar — no console, conecte a conta de anúncios e rode "Testar conexão"; confirme que as tabelas de Insights/relatórios aparecem na descoberta e, após uma carga, na Bronze do seu workspace. Enquanto o app não é aprovado, a ingestão em produção é recusada com aviso claro.
  9. Estado real / claim permitido — Acesso limitado (maturidade Preview), o mesmo rótulo que a landing e o produto usam: não existe selo "em breve" em lugar nenhum. Subir de estado depende de App Review (Meta) e de developer token aprovado (Google).

Google Sheets

  1. Estado — Disponível (maturidade GA-candidato): dá para cadastrar e usar hoje, sem liberação caso a caso. Como todo o produto, ainda sem SLA público nem certificação de nuvem.
  2. O que faz — lê abas de uma planilha (colunas reais, cabeçalho configurável) e carrega na Bronze.
  3. Como funciona — adaptador com paginação por janela de linhas e checkpoint ({linha, columns}); "Testar conexão" indica o e-mail da conta de serviço a autorizar.
  4. Plano · Permissão — núcleo · verificação de acesso · execução de ingestão.
  5. Custo — leitura da planilha R$0; carga Bronze cobrável. Nuvem = NÃO MEDIDO.
  6. Limites — tetos do SDK; uma aba renomeada não derruba as demais (erro fica na tabela, o laço segue).
  7. Segurança — JSON da conta de serviço (e sua private_key) redigidos; escopo por workspace.
  8. Como validar — no console, autorize o e-mail da conta de serviço na planilha, rode "Testar conexão" e confirme que as abas/colunas aparecem; após a carga, veja as linhas na Bronze.
  9. Estado real / claim permitido — "Google Sheets Disponível — cadastro e extração no fluxo normal; sem SLA público."

Salesforce · HubSpot · Azure Blob

  1. Estado — Acesso limitado (maturidade Preview). Salesforce aceita cadastro; HubSpot e Azure Blob têm a configuração RECUSADA hoje (HubSpot pela rotação de refresh token, Azure Blob porque a extração ainda não está ligada ao fluxo de fontes).
  2. O que faz — Salesforce/HubSpot leem objetos/entidades do CRM; Azure Blob lê arquivos de um container.
  3. Como funciona — adaptadores sobre o SDK comum (Azure Blob tem retomada por nome de blob: blob ≤ último processado é pulado, não reprocessa).
  4. Plano · Permissão — núcleo · verificação de acesso · execução de ingestão.
  5. Custo — API/leitura R$0; carga Bronze cobrável. Nuvem = NÃO MEDIDO.
  6. Limites — tetos do SDK.
  7. Segurança — credenciais redigidas; escopo por workspace.
  8. Como validar — no console, conecte a fonte, rode "Testar conexão" e confirme a descoberta das entidades/arquivos; após a carga, veja as linhas na Bronze do seu workspace.
  9. Estado real / claim permitido — "<Conector> em Acesso limitado — a condição de uso está escrita na página do conector."

O SDK comum (por que "novo conector = adaptador + suíte de contrato")#

O SDK comum de conectores é puro (sem I/O próprio; o transporte de rede é injetado). Um conector novo só escreve testar/descobrir/extrair; o resto vem da fábrica de adaptadores:

PeçaGarantia
Authcredencial normalizada; o SDK sabe extrair o material sensível para redigir
Paginaçãogenerator com teto duro e guarda anti-loop (cursor que não avança encerra)
Checkpointcontrato injetável; lê antes de extrair, grava a cada lote, limpa ao concluir (próxima execução recomeça do zero)
Retrybackoff exponencial + jitter determinístico, respeita Retry-After; re-tenta só 429/5xx e erro de rede
Redactiontodo erro/log passa pela redação de segredos (cru, URL-encoded, JSON)
Métricasuma linha de telemetria por operação (linhas/bytes/ms/ok) — telemetria nunca derruba a extração

Contract suite: a mesma bateria prova, para cada adaptador, que erro lançado é sempre redigido, métricas sempre emitidas e checkpoint retoma sem duplicar nem perder linha.

Schema drift e observabilidade#

  • Schema drift: compara baseline salvo × schema descoberto. Coluna/tabela nova → info; coluna removida / tipo mudado / tabela removida → atencao (quebra o mart). É lógica pura; onde o baseline é persistido é decisão do chamador.
  • Observabilidade: agrega os eventos em execuções, taxa de erro, p50/p95, freshness. Limiares: erro ≥ 20% → degradado; p95 > 30 s → degradado; sem rodar > 26 h → degradado, > 72 h → parado.

Certificação (o "GA nunca é automático")#

A certificação roda sondas vivas (transporte injetado, sem rede) contra o adaptador real: status honesto no catálogo · adaptador conformante · discover com ≥1 tabela · redaction ativa (planta um segredo-sentinela e exige que não vaze) · checkpoint suportado. Os itens humanos (30 dias com credencial real, reconciliação contra relatórios do provedor, rotação de token, quotas com tráfego real) são sempre pendentes — por isso a prontidão para GA é sempre false.

Related links