Skip to main content

S3-Compatible Endpoint

The Files.com S3-compatible endpoint lets S3 clients and SDKs upload, download, list, and delete files in your Files.com site. Use it when an application, device, CI pipeline, or backup tool already uses the S3 API and supports a custom endpoint.

This endpoint makes Files.com available to an S3 client. To make an existing Amazon S3 bucket available inside Files.com, configure an Amazon S3 Remote Server instead.

Getting Started

Create an S3-compatible API key associated with a Files.com user. Configure the client with the resulting Access Key ID and Secret Access Key, the Files.com endpoint URL, and the bucket name for your chosen addressing style. Connection Settings and Authentication provides those values, and AWS CLI Examples shows file operations.

The endpoint uses HTTPS on port 443 and AWS Signature Version 4 authentication. Requests follow Files.com permissions and access controls. Review their results in Inbound S3 Logs, and use S3 troubleshooting for authentication and path errors.

Automation and Workflow Integration

Files uploaded over S3 become available to the same Files.com workflows as other uploads. They can trigger Automations and Webhooks, participate in Syncs, and use Folder Settings.

An existing backup platform can also read Files.com through this endpoint and retain recovery copies in its own repository. Backups covers that approach, and Veeam Backups covers source configuration, jobs, and restores.

Listing Folders Recursively

A ListObjectsV2 request without a Delimiter parameter returns every object nested under the requested prefix, at any depth, not just the items directly inside it. Use this when a client needs the full folder tree in one pass, such as a data warehouse stage that reads every file under a folder without walking the structure itself.

Files.com pages through a recursive listing using the standard S3 continuation-token mechanism (NextContinuationToken and ContinuationToken), the same as any other multi-page S3 listing.

Include Delimiter=/ on the request to get a single-level listing instead: only the objects and common prefixes directly inside the targeted folder, with anything deeper left out. Many S3 clients and SDKs set Delimiter=/ by default when browsing a folder one level at a time, so that's the behavior you'll see unless a client is specifically configured to request a deep listing.

A recursive listing only includes what the user associated with the S3-compatible API key can already see. Any subfolder that user doesn't have permission to access, or that's marked hidden, is left out of the results rather than causing an error.

The legacy ListObjects (V1) API doesn't support this. See Limitations below.

Limitations

Only ListObjectsV2 requests can return a full recursive folder tree by omitting the Delimiter parameter. The older ListObjects (V1) API always returns a single-level, non-recursive listing regardless of the Delimiter parameter, unlike Amazon S3, where V1 supports the same delimiter-less recursion as V2.

Amazon S3 treats folders as logical prefixes, but Files.com maintains a true directory structure. The S3 protocol does not natively express this distinction, so Files.com returns listings that reflect the actual directory layout. Clients that depend on object-storage behaviors, such as inferring empty directories from key names, need to use standard folder listings for accuracy.