infinity6i6 Builders Platform
Documentation

Getting started

Troubleshooting

Common symptoms when integrating the web SDK, with cause and verification steps for each.

4 min read

This page gathers the most common symptoms when integrating the web SDK. The SDK messages are from the latest bundle verified on 09/28/2026 and may change across versions. Browser messages vary according to the browser. When the cause depends on platform configuration, the page indicates what to bring to infinity6.

I6Sdk is not defined

Symptom: the console shows I6Sdk is not defined or window.I6Sdk is not a constructor.

Cause: the bundle had not loaded yet when your code executed, or failed to load.

What to verify:

  • The bundle's <script src="..."> is a classic script, without async, and appears before the <script type="module">.
  • In the Network tab, the bundle request finished with status 200.
  • If your page defines Content-Security-Policy, it allows the bundle URL in script-src.

Failed to fetch

Symptom: TypeError: Failed to fetch (Chrome), TypeError: NetworkError when attempting to fetch resource. (Firefox) or TypeError: Load failed (Safari) when calling requireUser(), user() or upload().

Cause: the browser did not complete the request to the platform and provides no specific reason in the error. Common causes: your page origin is not allowed for CORS with credentials on the platform; no network connection; a browser extension blocking the request.

What to verify:

  • In the console, look for a CORS message alongside the error.
  • In the Network tab, check if the call appears blocked or unanswered.
  • If it is CORS, ask infinity6 to allow the exact origin of your page, including https:// and port if applicable. See Cookies and CORS.

SyntaxError: is not valid JSON

Symptom: a SyntaxError when calling user() or requireUser(). In Chrome the message ends in is not valid JSON or is Unexpected end of JSON input (empty body); in Firefox it begins with JSON.parse:; in Safari it is JSON Parse error.

Cause: user() reads the api/auth/me response as JSON, and the received response was not JSON. In this case requireUser() rejects the promise and does not reach the login redirect.

What to verify: in the Network tab, open the api/auth/me request and inspect the status and response body. Bring both to infinity6.

file must be a single File

Symptom: Error: file must be a single File. when calling upload().

Cause: the value of file is not a File object. Occurs when passing the <input> element, the input.files list, or undefined (no file selected).

What to verify: pass input.files[0] and ensure it exists beforehand (if (!file) return;). See ingest().

Get upload URL failed with status

Symptom: Error: Get upload URL failed with status followed by a number.

Cause: the step where the SDK requests the upload target from the platform received an error response. The number is the HTTP status returned by the platform.

What to verify: in the Network tab, the POST call to api/ingest/get-url/dataset/<your-dataset>: the status, response body, and payload sent (table and partitions). Also verify whether the dataset, table, and partitions values match your environment.

Get upload URL returned no upload URL

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

Cause: the platform responded with success, but the response did not contain the expected upload target.

What to verify: in the Network tab, the response body of that same request. Bring it to infinity6.

Upload failed with status

Symptom: Error: Upload failed with status followed by a number.

Cause: uploading the file to the signed URL received an error response. This upload goes directly to the signed URL returned by the platform, bypassing the platform API and carrying no session cookie.

What to verify: in the Network tab, the PUT request: status and response body. Note the status, timestamp, and dataset name.

Network error occurred during upload

Symptom: Error: Network error occurred during upload.

Cause: the file upload did not complete. The browser triggers this error when the PUT request fails to complete, including connection drops and browser CORS blocking at the upload destination.

What to verify: in the console, a CORS message; in the Network tab, the blocked or canceled PUT; the connection. If it is CORS at the destination, bring your page origin and the exact console message to infinity6.

The page loops back to login

Symptom: after logging in, the page redirects to login again, or user() does not return the profile.

Cause: the session cookie is not being stored or sent. The platform cookie is SameSite=None; Secure. Causes to verify:

  • Your page is served over HTTP. The cookie only travels over HTTPS.
  • The browser blocks or partitions third-party cookies. In general, your page and the platform belong to different sites, so the session cookie is treated as third-party. Safari blocks them by default; Firefox isolates these cookies per site by default; in Chrome it depends on user settings.
  • The origin is not allowed for CORS with credentials (in this case the error is usually Failed to fetch, described above).

What to verify: ensure the page is on HTTPS; repeat the test in another browser or profile without third-party cookie blocking; in the Application tab (Cookies), check if the platform cookie is present.

Didn't find your case? Gather the status and response body from the Network tab, the console message, and the error timestamp.