PRV Privacy, explained simply.

Privacy Policy

Uplint holds the record of your files — identity, routing, events — while the bytes stay in storage you own. This policy explains what we collect about you and the people who use your product, why, and what you can do about it.

Effective
10 September 2026
Last updated
10 September 2026
Version
3.0
Reading time
6 min
01

What we collect#

In short

Account details, the record of each file (never its contents), usage logs, and billing handled by Stripe.

  • Email address and name for your account
  • File records: IDs, metadata, storage location and events — not the bytes
  • API and usage logs for debugging, rate limiting and abuse prevention
  • Payment details processed by Stripe and never stored by us

Account information

When you sign up we collect your email address (to identify the account and send important notices), your name (to address you) and a password, stored as a bcrypt hash we cannot reverse. If you sign in through a provider such as GitHub or Google we receive the identifier and email they share.

File records

For every file that passes through the API we keep a record: a stable file ID, the name, size and type you gave it, the storage target your policy chose, the bucket and key where the object landed, and an append-only log of events (uploaded, served, moved, deleted).

We do not keep the file's contents. Upload bodies stream through to the bucket you connected and are not retained once the write is confirmed. Reads are served from your storage with signed URLs and do not pass through Uplint.

Usage data

  • Pages you visit in the dashboard and features you use
  • API request logs — endpoint, status, timing, request ID, API key ID and the calling IP address
  • Error logs when something goes wrong
  • Browser and device type, so we can keep the dashboard working where you use it

Payment information

Payments are processed entirely by Stripe. We receive confirmation of payment and the billing details needed for an invoice; we never see or store card numbers.

Storage credentials

When you connect a bucket you give us a scoped credential for it. It is encrypted at rest, used only to act on your instructions, and can be rotated or revoked by you at any time — revocation ends our access immediately.

02

Why we collect it#

In short

To run the service, keep it safe, make it better, and tell you when something matters.

  • To route, serve and move your files on your instructions
  • To detect abuse, protect credentials and investigate incidents
  • To improve the product from how it is actually used
  • To send security notices, support replies and updates you opt into

To provide the service

  • Authenticate your applications and API keys
  • Resolve each file ID to the right bucket, region and credential
  • Generate signed URLs so your users can upload and read directly against your storage
  • Execute policy changes: moves, copies, lifecycle rules, deletions

To keep you safe

  • Rate-limit and detect abusive traffic
  • Alert you to unusual use of an API key or storage credential
  • Investigate and document security incidents

To improve Uplint

  • Understand which features matter and which sharp edges people hit
  • Find and fix bugs and performance problems
  • Plan changes from real usage rather than guesses

To communicate with you

  • Critical security and service notices (you cannot opt out of these)
  • Replies to support, sales and security conversations you start
  • Product updates and Dispatches — only if you opt in
03

How we protect it#

In short

Encryption everywhere, a small blast radius by design, and controls we publish rather than promise.

  • TLS 1.3 for every connection; the record store encrypted at rest
  • Storage credentials encrypted, scoped, and revocable by you
  • Hosted on infrastructure providers that hold SOC 2 Type II and ISO 27001
  • Least-privilege staff access, MFA everywhere, audited admin actions

The design that protects you most

Uplint is a control plane, not a data lake. Because file bytes never rest on our systems, a compromise of Uplint exposes metadata and routing — file names, sizes, bucket locations, events — not the files themselves. We state the worst case plainly on the security page.

Encryption

  • In transit: TLS 1.3 for API, dashboard and provider connections
  • At rest: the record store and event log are encrypted with AES-256; storage credentials are encrypted with a separate key
  • Keys: managed in our cloud provider's key management service with automatic rotation

Infrastructure

  • Hosted on cloud providers that hold SOC 2 Type II and ISO 27001; we inherit their physical and network controls
  • DDoS protection and a web application firewall in front of every endpoint
  • Redundant, encrypted backups of the record across availability zones

Access

  • Staff access on a need-to-know basis, with multi-factor authentication required
  • Every administrative action is logged and reviewed
  • Support access to a customer account is time-boxed and visible to you in the audit log

Testing

  • Continuous automated vulnerability scanning
  • Independent penetration testing
  • A responsible-disclosure process: security@uplint.dev, acknowledged within a day
04

Your rights#

In short

Access, export, correct or delete your data whenever you like. You are in control.

  • Request a complete copy of the data we hold about you
  • Correct anything inaccurate, directly or through us
  • Delete your account and every record with it
  • Export file records and event history in open formats

Right to access

Ask for a complete copy of what we hold: account details, file records, event logs, API usage and billing history. We provide it within 30 days, usually much faster.

Right to correction

Update your profile in the dashboard at any time, or write to us to correct anything else.

Right to deletion

Delete your account from the dashboard. When you do:

  • The account is deactivated immediately and API keys stop working
  • File records and event history are deleted within 24 hours
  • Backups are purged within 30 days
  • We keep only what the law requires us to keep, such as invoices

About the bytes. Deleting a file record removes it from Uplint. Whether the object is also removed from your bucket follows your policy — you can ask us to issue deletes, or keep the objects and simply stop tracking them. Either way, the storage is yours and remains yours.

Right to portability

Export file records and events as JSON or CSV from the dashboard or the API. There is nothing to migrate out of: your files are already in your buckets.

How to exercise your rights

Most actions are available in the dashboard. For anything else email privacy@uplint.dev from your account address; we verify identity and respond within 30 days.

05

Cookies and tracking#

In short

Essential cookies only by default. Analytics only with your consent. No advertising trackers, ever.

  • Essential cookies for sign-in, security and preferences
  • Privacy-preserving analytics only if you opt in
  • No third-party advertising cookies, no cross-site tracking
  • Change your choice at any time in settings

Essential cookies (always on)

  • Session — keeps you signed in
  • CSRF token — protects against cross-site request forgery
  • Preferences — remembers your theme and settings

Analytics (opt-in only)

With your consent we use Plausible, a privacy-focused analytics service that collects no personal data and sets no cross-site cookies. It tells us which pages and features are used; it cannot tell us who you are. Opt out at any time in settings.

What we never do

  • No advertising cookies or pixels
  • No tracking across other websites
  • No sharing of behavioural data with ad networks

Managing cookies

Adjust your preferences in account settings, or block and clear cookies in your browser — you will be signed out, and the service will otherwise keep working.

06

Third parties#

In short

A short list of providers we need to run the service — and the storage providers you choose, which are yours.

  • Infrastructure and billing providers, bound by data-processing terms
  • Your storage providers are your relationship, not ours
  • File contents are never shared with anyone — we do not hold them
  • No data sold or shared for advertising

Providers we use

Provider Purpose Data involved
Amazon Web Services Hosting the control plane, record store and logs Account data, file records, events
Cloudflare DNS, CDN and DDoS protection Request metadata
Stripe Payments and invoicing Billing information
Postmark Transactional email Email address, notification content
Plausible Opt-in analytics Anonymous, aggregated usage

Every provider must hold SOC 2 or an equivalent attestation, sign data-processing terms, use data only for the stated purpose and delete it when no longer needed. The current list is also published in our Data Processing Agreement.

The storage providers you connect

Amazon S3, Azure Blob Storage, Google Cloud Storage, Cloudflare R2 or any S3-compatible store you route files to is your provider under your contract. Uplint writes to and reads from it only on your instruction, with the credential you gave us. They are not Uplint sub-processors, and we never copy objects out of them for our own purposes.

What we never share

  • File contents — we do not hold them, so we cannot
  • Personal data with advertisers or data brokers
  • Anything for a purpose you have not agreed to

Legal requests

We disclose data only when legally compelled, we notify you unless prohibited, and we push back on requests that are overbroad. Because the bytes are in your buckets, a request for file contents goes to you and your provider, not to us.

07

Data retention#

In short

We keep records while your account is active and remove them when you leave.

  • File records and events kept until you delete them
  • API logs kept 30 days; usage logs 90 days
  • Deleted data gone within 24 hours, backups within 30 days
  • Invoices kept as long as tax law requires

While your account is active

Data Kept for
File records and event history Until you delete them
Account data Until you close the account
API request logs 30 days
Usage and error logs 90 days
Storage credentials Until you rotate or revoke them

When you delete something

What Gone from Uplint
A file record Within 24 hours
Your account Deactivated immediately
All records and events Within 24 hours
Backups Within 30 days

Objects in your buckets follow your policy and your provider's lifecycle rules, not this table.

Legal requirements

  • Invoices and tax records: 7 years
  • Security incident records: 1 year
  • Data under legal hold: as long as the hold requires
08

International data#

In short

The record is hosted in the United States with EU-approved safeguards. Your file bytes live wherever your policy puts them.

  • Control plane hosted in AWS us-east-1, backups in us-west-2
  • File bytes stay in the regions and clouds you choose
  • EU Standard Contractual Clauses for transfers of personal data
  • GDPR, UK GDPR and CCPA rights honoured for everyone

Where the record lives

  • Primary: AWS US-East (Virginia)
  • Backups: AWS US-West (Oregon)
  • Edge: Cloudflare's global network, request metadata only

Where your files live

Wherever your policy routes them. Residency is a routing rule, not a plan tier: a tenant flagged eu can be pinned to a Frankfurt bucket, a healthcare app to a bucket in the region its regulator approved. Uplint enforces the rule and records the placement; the bytes never leave the region you chose. The regulated software page shows how.

For EU and EEA users (GDPR)

  • EU Standard Contractual Clauses (2021), Module 2, included in our DPA
  • Technical measures — encryption, access controls, minimal data on our side
  • A signed Data Processing Agreement available to every paid plan

For UK users

UK GDPR and the International Data Transfer Addendum apply.

For California users (CCPA / CPRA)

We do not sell personal information, we honour deletion and access requests, and we never treat you differently for exercising your rights.

Data Processing Agreement

Read it at /dpa, or request a countersigned copy from your dashboard.

09

Changes to this policy#

In short

We will tell you before anything material changes, and keep the old versions available.

  • Material changes announced by email at least 30 days ahead
  • Every version dated and archived
  • Continued use after the effective date is acceptance

We update this policy when the product or the law changes. For material changes we email the account owner at least 30 days before the effective date and note the change at the top of this page. Previous versions are available on request. If you disagree with a change you can close your account before it takes effect.

QUESTIONS

Prefer a form? Every inbox is on the contact page. Postal address: Uplint, 548 Market Street, Suite 35000, San Francisco, CA 94104, United States.