Private files that only your apps can read

Some files should never have a public link: source recordings, transcripts, exports with customer data, licensed material. Upload them to Stow (usestow.com) as private and they get no link at all. Your apps read them back with their own keys.

A link can’t be taken back

  • Many file hosts hand back a public URL by default, and a link that has been shared or logged can’t be recalled.
  • A signed link still works for anyone who has it until it expires.
  • With public and private files mixed in one place, one wrong setting can expose both.

How Stow handles it

No link at all

A private file’s public_url is null. There’s no address to share, guess or leak.

Read with your keys

Your apps read a private file with GET /v1/assets/:id/content and a key from your account. Any other account gets a 404.

Kept apart

Private files are stored separately from public ones, and no public address serves them. They’re sent with Cache-Control: private, no-store.

Decided once

Visibility is set at upload and can’t be changed, so a private file can’t be made public by a later mistake.

Private by default for agents

Uploads through the Stow MCP server are private unless the agent asks for public, and public uploads that look like they contain a secret are refused.

What it looks like

Upload a private file, then read it back with the same account’s key.
# Upload: no public link is created
curl -X POST https://api.usestow.com/v1/assets \
  -H "Authorization: Bearer $STOW_API_KEY" \
  -F file=@customers-export.csv \
  -F visibility=private
# → { "id": "…", "visibility": "private", "public_url": null, … }

# Read it back with a key from your account
curl https://api.usestow.com/v1/assets/$ASSET_ID/content \
  -H "Authorization: Bearer $STOW_API_KEY" \
  -o customers-export.csv

More in the docs: Private files · Authentication · MCP server

Questions

Can I make a private file public later?
No. Visibility is set when you upload. To publish a copy, upload the file again as public; Stow keeps the public and private copies as separate files.
Who can read a private file?
Only requests made with a key from the account that owns it, or that account’s signed-in dashboard. Other accounts get a 404, and there’s no public link to open.
Can my AI agent read private files?
Yes, with your key: over the API with GET /v1/assets/:id/content, or with the stow_get_content tool in the Stow MCP server.
Are private files on the free plan?
Yes. Every plan can upload private files; they count toward the same file and storage limits.

Try Stow free

The free plan holds 500 files for up to 2 apps, with no card needed. Upgrade when you want more room, or automatic transcripts, summaries and tags.

More use cases