Back to Docs

Storage Setup Guides

Configure your cloud storage to work with Verity.

Before You Begin

You'll need an account with at least one cloud storage provider. We recommend setting up two or more destinations for redundancy.

Storage Options

Verity supports two types of cloud storage: developer-focused object storage (S3, B2, GCS) and consumer cloud drives (Google Drive, Dropbox). Choose based on your needs:

Object Storage (S3, B2, GCS)

  • + Lowest cost at scale
  • + More control over access policies
  • + No file size limits
  • - Requires technical setup (API keys, IAM)

Consumer Drives (Google Drive, Dropbox)

  • + Easy OAuth sign-in
  • + Free tiers available
  • + Familiar interface for viewing files
  • - May have storage limits on free plans

Storage Cost Comparison

ProviderStorage Cost1 Hour @ 720pNotes
Backblaze B2$0.005/GB/mo~$0.003Best value
Amazon S3$0.023/GB/mo~$0.015Most reliable
Google Cloud Storage$0.020/GB/mo~$0.013Good integration
Google DriveFree (15GB) / $1.99/mo (100GB)Free*Easiest setup
DropboxFree (2GB) / $11.99/mo (2TB)Free*Popular choice

* Estimated for 720p video at ~500MB-1GB per hour. Actual costs depend on video quality settings and egress charges. Free tier limits apply.


Amazon S3 Setup

1. Create an S3 Bucket

  1. Log into the AWS S3 Console
  2. Click "Create bucket"
  3. Choose a unique bucket name (e.g., my-verity-recordings)
  4. Select your preferred region (closer is faster)
  5. Keep "Block all public access" enabled (recommended)
  6. Click "Create bucket"

2. Create IAM Credentials

  1. Go to IAM Console
  2. Navigate to Users → Create user
  3. Name it something like verity-uploader
  4. Select "Access key - Programmatic access"
  5. Attach a policy with these permissions (replace YOUR_BUCKET):
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:PutObject",
        "s3:GetObject"
      ],
      "Resource": "arn:aws:s3:::YOUR_BUCKET/*"
    }
  ]
}
  1. Complete user creation and save the Access Key ID and Secret Access Key

3. Configure in Verity

In the app, add a new S3 destination with:

  • Bucket: Your bucket name
  • Region: e.g., us-east-1
  • Access Key ID: From IAM
  • Secret Access Key: From IAM

Backblaze B2 Setup

1. Create a B2 Bucket

  1. Log into Backblaze B2
  2. Click "Create a Bucket"
  3. Choose a unique bucket name
  4. Select "Private" for file visibility
  5. Disable object lock (optional)
  6. Click "Create a Bucket"

2. Create Application Key

  1. Go to "App Keys" in the B2 console
  2. Click "Add a New Application Key"
  3. Name it (e.g., verity-upload)
  4. Restrict to your bucket (recommended)
  5. Allow: Write only (or Read and Write if you want to download)
  6. Click "Create New Key"
  7. Save the Application Key ID and Application Key immediately (key is shown only once)

3. Configure in Verity

Add a new B2 destination with:

  • Bucket: Your bucket name
  • Application Key ID: From B2
  • Application Key: From B2

Google Cloud Storage Setup

1. Create a GCS Bucket

  1. Go to Google Cloud Console
  2. Click "Create bucket"
  3. Choose a globally unique name
  4. Select your preferred region
  5. Choose "Standard" storage class
  6. Use "Uniform" access control (recommended)
  7. Click "Create"

2. Create Service Account

  1. Go to IAM & Admin → Service Accounts
  2. Click "Create Service Account"
  3. Name it (e.g., verity-uploader)
  4. Grant the role: "Storage Object Creator"
  5. Click "Done"
  6. Click on the new service account
  7. Go to "Keys" tab → Add Key → Create new key
  8. Choose JSON format and download the key file

3. Configure in Verity

Add a new GCS destination with:

  • Bucket: Your bucket name
  • Client Email: From the JSON key file
  • Private Key: From the JSON key file

Google Drive Setup

No API keys required

Google Drive uses OAuth sign-in. Just tap "Sign in with Google" in the app.

What Permissions We Request

Transparency is important to us. Here's exactly what Verity asks for when you connect Google Drive:

1
drive.file

Create and modify files the app creates. This lets Verity upload video chunks to your Drive. We can only access files that Verity itself created—we cannot see or access any of your other files.

2
drive.metadata.readonly

View folder names to let you pick a destination. This allows the folder picker to show you your folder structure. We only read folder names—we cannot see file contents.

What We Cannot Do

  • Access files we didn't create (your documents, photos, etc.)
  • Delete any files
  • Share files or change sharing settings
  • Access your email or profile information

Setup Steps

  1. In Verity, tap Add Destination → Google Drive
  2. Tap "Sign in with Google"
  3. Review the permissions and approve
  4. Select the folder where you want recordings stored
  5. Name your destination (e.g., "My Drive - Recordings")

Revoking Access

You can revoke Verity's access at any time from your Google Account permissions page.


Dropbox Setup

Secure app folder access

Verity uses Dropbox's "App folder" permission. We can only access a dedicated Apps/Verity folder—we cannot see or access any other files in your Dropbox.

What Permissions We Request

Transparency is important to us. Here's exactly what Verity asks for when you connect Dropbox:

★
App folder

Dedicated Verity folder only. Verity can only access the Apps/Verity folder in your Dropbox. We cannot see, read, or write to any other location in your account. This is the most restrictive permission Dropbox offers.

1
files.content.write

Upload recordings. Save video chunks to the Verity folder.

2
files.metadata.read

List folder contents. See recordings and subfolders within the Verity folder.

What We Cannot Do

  • Access any files outside the Apps/Verity folder
  • See your other Dropbox folders or files
  • Delete any files
  • Share files or create shared links
  • Access your account settings

Setup Steps

  1. In Verity, tap Add Destination → Dropbox
  2. Tap "Sign in with Dropbox"
  3. Review the permissions and approve
  4. Dropbox automatically creates an Apps/Verity folder for your recordings
  5. Optionally create subfolders to organize your recordings
  6. Name your destination (e.g., "Dropbox - Evidence")

Revoking Access

You can revoke Verity's access at any time from your Dropbox Connected Apps page.


OAuth Security

For Google Drive and Dropbox, Verity uses OAuth 2.0 with PKCE (Proof Key for Code Exchange), the industry standard for secure mobile authentication:

  • Your password is never shared with us. You sign in directly with Google/Dropbox.
  • Tokens are stored securely. Access tokens are stored in your device's secure keychain (iOS) or encrypted storage (Android).
  • Tokens auto-refresh. We request offline access to refresh tokens automatically without requiring you to sign in again.
  • You can revoke anytime. Revoking access immediately invalidates all tokens.

Testing Your Setup

After configuring a destination in Verity, use the "Test Upload" button to verify everything is working:

  • A small test file is uploaded to your bucket
  • We verify the upload succeeded
  • The test file is deleted

If the test fails, double-check your credentials and bucket permissions.