How FilePost Keeps Your Files Secure: Infrastructure and Practices

April 3, 2026 · 10 min read

When you upload a file to a third-party API, you are trusting that service with your data. That is a reasonable concern, and it is one that deserves a transparent answer. This article explains every layer of security in FilePost's infrastructure, from how files travel over the network to where they are stored, who can access them, and how you can delete them permanently.

This is not a marketing page with vague claims about "enterprise-grade security." It is a concrete, technical breakdown of the tools and practices that protect your files.

HTTPS Everywhere

Every connection to FilePost is encrypted with TLS. There are no exceptions and no fallbacks to plain HTTP.

This means that when you upload a file, the data in transit is encrypted between your application and FilePost's servers. When someone downloads the file using the CDN URL, that transfer is also encrypted. At no point does file data travel over an unencrypted connection.

Authentication: API Key Model

FilePost uses API key authentication for all operations. Every request must include your API key in the X-API-Key header:

curl -X POST https://filepost.dev/v1/upload \
  -H "X-API-Key: your_api_key_here" \
  -F "file=@document.pdf"

Here is how the API key system works:

Best practices for API key management

Storage: Backblaze B2 with Redundancy

FilePost stores all uploaded files on Backblaze B2, an enterprise-grade object storage service. Backblaze was chosen for its combination of reliability, durability, and cost efficiency.

Durability

Backblaze B2 provides 99.999999999% (eleven nines) annual durability. This means that if you store 10 million files, you can statistically expect to lose less than one file every 10,000 years. Files are replicated across multiple drives and multiple servers within the data center.

Availability

Backblaze guarantees 99.9% availability for B2 storage. In practice, B2 has maintained higher uptime than this SLA. FilePost further improves availability by serving all file downloads through Cloudflare's CDN, which caches files at 300+ edge locations worldwide. Even if B2 experiences a temporary outage, cached files continue to be served from Cloudflare's edge.

Isolation

All FilePost user files are stored in a dedicated B2 bucket with server-side encryption. Files are organized by a hashed directory structure that prevents enumeration. Knowing one file's URL does not reveal the location or existence of any other file.

CDN: Cloudflare Network and DDoS Protection

Every file uploaded to FilePost is delivered through Cloudflare's global CDN network. This provides two critical benefits: performance and protection.

Performance

DDoS Protection

Cloudflare automatically mitigates DDoS attacks at the network edge. This is not an add-on feature; it is built into every Cloudflare plan. For FilePost, this means:

This architecture means that even if someone attempts to take FilePost offline, the CDN layer absorbs the attack while legitimate requests continue to be served from cached edge locations.

File Access Model: Public URLs with Unguessable Paths

FilePost generates public CDN URLs for uploaded files. This means anyone with the URL can access the file, similar to how an "unlisted" YouTube video works. The security model relies on the unguessability of the URL path.

Here is how file URLs are structured:

https://cdn.filepost.dev/file/filepost/uploads/a1/a1b2c3d4e5f6.pdf

The file path contains a unique, randomly generated identifier. These IDs are long enough that brute-force enumeration is computationally infeasible. There is no sequential numbering, no predictable pattern, and no directory listing.

When this model is appropriate

When to add your own access control

If your application requires authenticated file access (for example, only logged-in users can download a file), you should implement that access control in your own application layer. One common pattern: store the FilePost URL in your database, and only return it to authenticated users through your own API. The FilePost URL itself remains accessible, but only your app knows what it is.

No File Type Restrictions, Isolated Storage

FilePost accepts any file type: images, PDFs, documents, archives, binaries, configuration files, database exports, and anything else you need to host. There is no whitelist or blacklist of allowed file extensions.

The reason this is safe is storage isolation. Uploaded files are stored as inert objects in Backblaze B2 and served as static downloads through Cloudflare. They are never executed, parsed, or processed on the server. A file with a .exe extension is treated the same as a .txt file: it is stored and served, nothing more.

This is fundamentally different from a traditional web server where uploaded files might be executed (for example, a PHP file in a web root). FilePost's architecture eliminates this entire class of vulnerability because files never enter an execution context.

Data Deletion API

You can permanently delete any file you have uploaded through the API:

curl -X DELETE https://filepost.dev/v1/files/a1b2c3d4e5f6 \
  -H "X-API-Key: your_api_key_here"

When you delete a file:

This gives you full control over your data lifecycle. If a user requests deletion of their data, or if you need to remove a file for any reason, a single API call handles it completely.

Listing files before deletion

To see all files associated with your account:

curl https://filepost.dev/v1/files \
  -H "X-API-Key: your_api_key_here"

This returns a JSON array with each file's ID, URL, and size. You can use this to audit your uploaded files or build a bulk deletion script:

import requests

API_KEY = "your_api_key_here"
BASE = "https://filepost.dev/v1"

# List all files
files = requests.get(f"{BASE}/files", headers={"X-API-Key": API_KEY}).json()

# Delete all files (use with caution)
for f in files:
    requests.delete(f"{BASE}/files/{f['file_id']}", headers={"X-API-Key": API_KEY})
    print(f"Deleted: {f['file_id']}")

Payment Security: Stripe Integration

FilePost uses Stripe for all payment processing. This means:

The free tier requires no payment information at all. You can sign up with just an email address and start uploading immediately.

Disposable Email Blocking

To prevent abuse of the free tier, FilePost blocks signups from disposable email services (like Mailinator, Guerrilla Mail, and similar throwaway providers). This serves multiple security purposes:

The disposable email check happens at signup time. If you are using a legitimate email provider that is incorrectly flagged, contact support for a manual review.

Infrastructure Summary

Here is a complete overview of the security layers in FilePost's architecture:

Layer Technology What it protects
Transport encryption TLS 1.2+ via Cloudflare Data in transit (uploads and downloads)
Authentication Hashed API keys Unauthorized access to upload/list/delete operations
File storage Backblaze B2 (11 nines durability) Data loss and corruption
CDN and DDoS Cloudflare (300+ PoPs) Denial of service attacks, slow delivery
File isolation Static object storage Remote code execution via uploaded files
URL security Random, unguessable file paths Unauthorized file enumeration
Payment processing Stripe (PCI Level 1) Credit card data exposure
Abuse prevention Disposable email blocking Free tier abuse and spam uploads
Data deletion DELETE API endpoint Unwanted data retention

Secure File Hosting, Simple API

FilePost gives you 300 free uploads per month with HTTPS, CDN delivery, and Backblaze B2 redundancy. No credit card required.

Get Your Free API Key

Frequently Asked Questions

Can other users access my files?

Not through the API. The list and delete endpoints only return files uploaded with your API key. However, the CDN URLs themselves are public: anyone with the link can download the file. If you need authenticated access, implement that in your application layer.

Are files encrypted at rest?

Backblaze B2 encrypts all stored objects using server-side encryption (SSE-B2). This protects against physical drive theft or unauthorized access to the storage hardware.

What happens if Backblaze goes down?

Files that have already been accessed at least once are cached on Cloudflare's edge network. During a B2 outage, cached files continue to be served normally. New uploads would be temporarily unavailable until B2 recovers.

Can I delete all my data?

Yes. Use the list endpoint to get all your file IDs, then call the delete endpoint for each one. You can also contact support for a full account deletion, which removes your account, API key, and all associated files.

Is FilePost GDPR compliant?

FilePost stores minimal personal data (email address and hashed API key). Files can be deleted on demand through the API. For users who need complete data erasure, account deletion removes all stored data, files, and account records.

Do you scan uploaded files?

FilePost does not scan or inspect file contents. Files are stored and served as-is. The platform is designed for developers who need file hosting infrastructure, not for consumer file sharing with content moderation.

Pricing Tiers

All security features described in this article are included on every plan, including the free tier:

There are no separate security tiers. HTTPS, CDN delivery, Backblaze B2 storage, DDoS protection, and the data deletion API are available to every user.