infinity6i6 Builders Platform
Documentação

Primeiros passos

Solução de problemas

Sintomas comuns ao integrar o SDK web, com a causa e o que verificar em cada um.

5 min de leitura

Esta página reúne os sintomas mais comuns ao integrar o SDK web. As mensagens do SDK são as do bundle latest verificado em 28/09/2026 e podem mudar entre versões. As mensagens do navegador variam conforme o navegador. Quando a causa depende de configuração da plataforma, a página indica o que levar à infinity6.

I6Sdk is not defined

Sintoma: o console mostra I6Sdk is not defined ou window.I6Sdk is not a constructor.

Causa: o bundle ainda não tinha carregado quando o seu código rodou, ou não chegou a carregar.

O que verificar:

  • O <script src="..."> do bundle é um script clássico, sem async, e vem antes do <script type="module">.
  • Na aba Network, a requisição do bundle terminou com status 200.
  • Se a sua página define Content-Security-Policy, ela permite o endereço do bundle em script-src.

Failed to fetch

Sintoma: TypeError: Failed to fetch (Chrome), TypeError: NetworkError when attempting to fetch resource. (Firefox) ou TypeError: Load failed (Safari) ao chamar requireUser(), user() ou upload().

Causa: o navegador não completou a requisição à plataforma e não informa o motivo no erro. Causas comuns: a origem da sua página não está liberada para CORS com credenciais na plataforma; falta de conexão; extensão do navegador bloqueando a requisição.

O que verificar:

  • No console, procure uma mensagem sobre CORS junto do erro.
  • Na aba Network, veja se a chamada aparece bloqueada ou sem resposta.
  • Se for CORS, peça à infinity6 a liberação da origem exata da sua página, com https:// e porta, se houver. Veja Cookies e CORS.

SyntaxError: is not valid JSON

Sintoma: um SyntaxError ao chamar user() ou requireUser(). No Chrome a mensagem termina em is not valid JSON ou é Unexpected end of JSON input (corpo vazio); no Firefox começa com JSON.parse:; no Safari é JSON Parse error.

Causa: user() lê a resposta de api/auth/me como JSON, e a resposta recebida não era JSON. Nesse caso requireUser() rejeita a promessa e não chega a redirecionar ao login.

O que verificar: na aba Network, abra a chamada api/auth/me e veja o status e o corpo da resposta. Leve esses dois dados à infinity6.

file must be a single File

Sintoma: Error: file must be a single File. ao chamar upload().

Causa: o valor de file não é um objeto File. Acontece ao passar o elemento <input>, a lista input.files ou undefined (nenhum arquivo escolhido).

O que verificar: passe input.files[0] e confira que ele existe antes (if (!file) return;). Veja ingest().

Get upload URL failed with status

Sintoma: Error: Get upload URL failed with status seguido de um número.

Causa: o passo em que o SDK pede à plataforma o endereço de envio recebeu uma resposta de erro. O número é o status HTTP devolvido pela plataforma.

O que verificar: na aba Network, a chamada POST para api/ingest/get-url/dataset/<seu-dataset>: o status, o corpo da resposta e o corpo enviado (table e partitions). Confira também se os valores de dataset, table e partitions são os do seu ambiente.

Get upload URL returned no upload URL

Sintoma: Error: Get upload URL returned no upload URL.

Causa: a plataforma respondeu com sucesso, mas a resposta não trouxe o endereço de envio esperado.

O que verificar: na aba Network, o corpo da resposta da mesma chamada. Leve-o à infinity6.

Upload failed with status

Sintoma: Error: Upload failed with status seguido de um número.

Causa: o envio do arquivo ao endereço assinado recebeu uma resposta de erro. Esse envio vai direto ao endereço assinado devolvido pela plataforma, sem passar pela API da plataforma e sem levar o cookie de sessão.

O que verificar: na aba Network, a requisição PUT: o status e o corpo da resposta. Guarde o status, o horário e o nome do dataset.

Network error occurred during upload

Sintoma: Error: Network error occurred during upload.

Causa: o envio do arquivo não foi concluído. O navegador dispara esse erro quando a requisição PUT não completa, o que inclui queda de conexão e também bloqueio do navegador por CORS no destino do envio.

O que verificar: no console, uma mensagem de CORS; na aba Network, o PUT bloqueado ou cancelado; a conexão. Se for CORS no destino, leve à infinity6 a origem da sua página e a mensagem exata do console.

A página volta ao login em repetição

Sintoma: depois de fazer login, a página redireciona ao login de novo, ou user() não devolve o perfil.

Causa: o cookie de sessão não está sendo guardado ou enviado. O cookie da plataforma é SameSite=None; Secure. Causas a verificar:

  • A sua página é servida em HTTP. O cookie só trafega em HTTPS.
  • O navegador bloqueia ou isola cookies de terceiros. Em geral, a sua página e a plataforma são de sites diferentes, então o cookie de sessão é tratado como de terceiros. O Safari bloqueia por padrão; o Firefox isola esses cookies por site por padrão; no Chrome depende da configuração do usuário.
  • A origem não está liberada para CORS com credenciais (nesse caso o erro costuma ser Failed to fetch, descrito acima).

O que verificar: se a página está em HTTPS; repita o teste em outro navegador ou perfil sem bloqueio de cookies de terceiros; na aba Application (Cookies), veja se o cookie da plataforma aparece.

Não encontrou o seu caso? Reúna o status e o corpo da resposta da aba Network, a mensagem do console e o horário do erro.