Flat / JSON hosting

JSON hosting: publish a static JSON file with a URL

Publish a JSON snapshot from your browser or the CLI. Share the source viewer with people or the exact JSON file URL with a tool that reads static data.

Checking your upload limits... · Public · Limits

Drop your JSON files here

or choose them from your device.

Select JSON files

What readers see at your JSON link

Flat displays JSON source with syntax highlighting, line wrapping, and a copy action. The screenshot shows a sample project record. It is a source view, not an expandable object inspector.

The exact /project.json URL serves the uploaded file rather than the viewer page. Hosting does not add API methods, database writes, or per-request calculations.

A single file opens in the viewer. Several files open in the explorer, where readers can choose a file. Public links need no Flat account. Original downloads remain available if a preview cannot load.

The main link opens Flat's viewer. The exact path /project.json serves the original file, without changing its contents.

Flat's JSON viewer highlighting a sample project object and deliverables array with Wrap, Copy, and original-download controls.
project.json in Flat's source viewerView full-size screenshot

How to upload JSON files and get a link

  1. Prepare your file

    Validate the JSON in your editor or build process. Use double-quoted property names and strings, with no comments or trailing commas. Format it before uploading if people need to read the source.

    Publish a completed data snapshot. Use a version link to refer to that upload, or a reusable address for later snapshots. If the file intentionally contains comments, see JSONC hosting.

  2. Publish from your browser or terminal

    In your browser

    Drop, publish, copy the link.

    Drop your finished files into the uploader above, or select them from your device. Enter your email if signed out, then choose "Publish files".

    Selected files need unique names and publish at the top level. Use the CLI for folders; the browser uploader does not accept folders or extract ZIPs.

    Go to uploader
    TerminalNode.js 20+

    One command. Files or folders.

    npx -y @getflat/cli deploy ./project.json

    Replace the example path with your file. Pass a folder to publish related files with their relative paths intact. The CLI prints the published URL.

  3. Check before sharing

    Open the source preview, then fetch the exact JSON path with the receiving tool. Confirm it parses the original file and supports the upload's access settings.

    Signed-out uploads expire after 1 hour by default. Sign in before expiry to keep them online, or sign in before publishing for no default expiry.

What you can share with JSON hosting

Static data snapshots

Publish exported catalogue or project data for a tool that reads a complete JSON file, with a human-readable source link alongside it.

Integration examples

Share an example payload with developers before they wire up a real service. Keep it distinct from a live API endpoint.

Keep a version, or keep an address.

Share this version

Every upload gets its own link. Publishing revised files creates a new link and leaves the earlier version unchanged. Use the version link when someone needs to review a specific upload.

Update files at one address

Use a named onflat.page address or your own domain. Sign in, then publish with the CLI using --domain. Publish revised files with the same domain to point that address to the new upload.

Named addresses are included on Free. Adding your own domain requires a paid plan. The browser uploader does not set up or repoint these addresses.

JSON hosting questions

Is hosting free, and what are the limits?

Yes. Signed-in Free includes 5 MiB per upload, 1 GiB of storage, and 5 GiB of monthly transfer, with no default expiry. The per-upload limit covers all files in that upload. Paid plans raise these limits.

Compare hosting plans and limits

Do readers need a Flat account?

No. Public links open without a Flat account. Anyone with the link can open the uploaded files. Password-protected links also require the visitor password.

Can I password-protect my upload?

Yes. Password protection is available on every plan. Add --password YOUR_PASSWORD to your CLI deploy command. It protects access to the upload and its files, but does not prevent someone with access from saving a copy. The browser uploader creates public uploads.

Set a visitor password

Can I replace files without changing the link?

A version link always refers to its original upload. For same-address updates, use a named address or your own domain. Publish revised files with the same --domain value in the CLI to point that address to the new upload.

What happens when an upload expires?

Flat stops serving it. An expired upload cannot be recovered. Signed-out uploads expire after 1 hour by default. For browser uploads, use the sign-in link shown after publishing. For CLI uploads, run npx -y @getflat/cli login. Complete sign-in before expiry to keep the upload online. If you chose a shorter expiry in the CLI, that deadline stays in place.

Is JSON hosting a backend API?

No. The original URL returns a stored file. Flat does not provide database queries, mutations, custom request handlers, or a JSON editor. Publish a new file when the snapshot changes.

Does the viewer validate or reformat JSON?

No. Highlighting is for reading, not syntax or schema validation. Validate and format the source with your own tools before publishing. The original bytes stay unchanged.

How large can an upload be?

Upload allowances depend on your plan and cover all files in the upload. Compare current plan limits. Preview availability also depends on format and processing support. The original file remains available to download if a preview is unavailable.

Can I embed the viewer on another website?

Flat's generated viewer cannot be embedded in an iframe and keeps Flat branding on every plan. Link to the viewer for reading or to the exact file URL for the original.

Find the guide for your text file.

Give your JSON files a link.

Publish your file, check the preview, and share the URL.

Publish files

Free to start · View pricing

Compare text formats