Skip to main content
Connect Fileloom to Supabase Storage to keep generated PDFs alongside your application data.

Prerequisites

Before connecting Supabase to Fileloom, you need:
  1. A Supabase project
  2. Storage enabled on your project
  3. A storage bucket created
  4. Service role key (for server-side access)

Setting Up Supabase Storage

1

Open Supabase Dashboard

2

Enable Storage

Navigate to Storage in the sidebar.
3

Create Bucket

Click New bucket and configure:
  • Name: fileloom-pdfs (or your preference)
  • Public: Off (recommended)
4

Get Credentials

Go to SettingsAPI to find your project URL and service key.

Getting Your Credentials

Project URL

Found in SettingsAPIProject URL:

Service Role Key

Found in SettingsAPIService role key (secret):
The service role key bypasses Row Level Security. Keep it secret and never expose it in client-side code.

Connecting Supabase to Fileloom

1

Open Workspace Settings

Click the settings icon in your workspace sidebar to open Workspace Settings.
2

Go to Integrations

Select Integrations from the left menu.
3

Click Connect on Supabase Storage

In the Storage Integrations section, find Supabase Storage and click the Connect button.
4

Fill Out the Connection Form

Enter your Supabase credentials and configuration (see fields below).
5

Click Connect

Click Connect to save. Fileloom automatically runs a connection test to verify your credentials and bucket access.
6

Connection Enabled

If the test passes, your Supabase connection is approved and you’ll see a Connected badge next to Supabase Storage.

Connection Form Fields

Configure Storage Mode

After connecting Supabase, configure how Fileloom uses it:
  1. In the Settings section below your connections, find Save on
  2. Choose your preferred mode:

Path Pattern Examples

Organize files in your bucket:

URL Format

Files are accessible via Supabase Storage URLs: Private bucket (signed URL):
Public bucket:

Bucket Policies

For private access, no additional policies needed. Files accessed via signed URLs.

Public Bucket

If you need public access, create the bucket as public or add a policy:
  1. Go to StoragePolicies
  2. Click New Policy on your bucket
  3. Select For full customization
  4. Add policy:

Row Level Security

Supabase Storage supports RLS for fine-grained access control.

Example: User-specific folders

For Fileloom integration, the service role key bypasses RLS, so files are always uploaded successfully.

Managing Your Connection

After connecting, you can manage your Supabase integration from the Integrations page:
  • Primary badge — If you have multiple storage connections, the primary one is used first
  • Connected / Inactive — Shows current connection status
  • Actions menu (⋮) — Edit credentials, run a new connection test, or disconnect

Troubleshooting

Connection Failed

Symptoms: Connection test fails Solutions:
  • Verify project URL is correct (no trailing slash)
  • Check service role key is the full key, not truncated
  • Ensure bucket exists with exact name
  • Verify project is not paused

Upload Failed

Symptoms: PDFs not appearing in bucket Solutions:
  • Check bucket name matches exactly (case-sensitive)
  • Verify service role key has not been regenerated
  • Check Supabase project is on a plan with sufficient storage
  • Review path pattern for invalid characters

Access Denied

Symptoms: 403 errors when accessing files Solutions:
  • For private buckets, ensure you’re using signed URLs
  • For public buckets, verify bucket is set to public
  • Check RLS policies aren’t blocking access

File Not Found

Symptoms: 404 errors for uploaded files Solutions:
  • Verify path pattern doesn’t create deeply nested folders
  • Check for special characters in filename
  • Ensure file wasn’t deleted by Supabase lifecycle rules

Storage Limits

Supabase storage limits by plan:

Best Practices

Use Private Buckets

Keep buckets private and use signed URLs for access

Organize by Date

Use date-based paths for easier management and cleanup

Monitor Storage

Set up alerts before hitting storage limits

Backup Keys

Store service role key securely; regenerating invalidates the old one

Integration with Your App

Since files are in your Supabase project, you can access them directly:

JavaScript/TypeScript

List Files

Delete Files