Flat / XML hosting
XML hosting: share XML files with a source preview
Publish an XML file from your browser or the CLI. Send a source-reading link or an exact file URL to a recipient who needs the original XML.
Checking your upload limits... · Public · Limits
Drop your XML files here
or choose them from your device.
Select XML filesWhat readers see at your XML link
Flat shows XML elements, attributes, and text as highlighted source. The screenshot shows a small project-data document. Readers can wrap and copy the displayed text or download the original.
The viewer does not transform XML with XSLT or present it as a formatted document. Opening the exact XML URL uses the receiving browser or tool's own XML handling.
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.xml serves the original file, without changing its contents.
How to upload XML files and get a link
Prepare your file
Save the file as UTF-8 and keep its encoding declaration consistent with the bytes. Check matching tags, escaped characters, namespaces, and any schema rules required by the receiving system.
Use the CLI if related XML documents and schemas need a folder structure. Their presence does not cause the viewer to validate the document or run transformations.
Publish from your browser or terminal
In your browserGo to uploaderDrop, 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.
TerminalNode.js 20+One command. Files or folders.
npx -y @getflat/cli deploy ./project.xmlReplace the example path with your file. Pass a folder to publish related files with their relative paths intact. The CLI prints the published URL.
Check before sharing
Compare the source preview with your editor. Fetch the exact file URL with the intended XML consumer and validate against the schema your integration requires.
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 XML hosting
Integration payloads
Give a partner an exact XML example to inspect before importing it into their application.
Exported data packages
Share a fixed XML export alongside explanatory files, keeping the original structure for downstream tools.
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.
XML 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.
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.
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.
Does Flat validate an XSD or transform XML?
No. The viewer highlights source. Run schema validation or XSLT with your own tools before uploading. Publish the generated HTML separately if readers need a rendered document.
Can I host a finished XML feed?
You can publish a prepared XML file at its exact path. Check the feed consumer's format and access requirements. Flat does not generate feed entries or update a feed when content changes elsewhere.
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.
Another text format?
Find the guide for your text file.
Give your XML files a link.
Publish your file, check the preview, and share the URL.
Publish filesFree to start · View pricing
