Objects
Objects are the files you store in Fil One. Each object consists of the file data, a key (the file path/name), and metadata.
Uploading objects
- App
- AWS CLI
- Python (boto3)
- Open a bucket from the dashboard.
- Click Upload.
- Select a file.
- Objects appear in the file list immediately after upload completes.
# Upload a single file
aws s3 cp my-file.txt s3://my-bucket/my-file.txt \
--endpoint-url https://eu-west-1.s3.fil.one
# Upload a directory
aws s3 sync ./local-folder s3://my-bucket/folder/ \
--endpoint-url https://eu-west-1.s3.fil.one
# Upload a file
s3.upload_file("my-file.txt", "my-bucket", "my-file.txt")
# Upload with metadata
s3.put_object(
Bucket="my-bucket",
Key="report.pdf",
Body=open("report.pdf", "rb"),
ContentType="application/pdf",
)
For files larger than 5 GB, use multipart upload.
Downloading objects
- App
- AWS CLI
- Python (boto3)
Click the file name to open its detail page, then select Download from the "..." menu. You can also click the download icon directly in the file list row.
aws s3 cp s3://my-bucket/my-file.txt ./my-file.txt \
--endpoint-url https://eu-west-1.s3.fil.one
s3.download_file("my-bucket", "my-file.txt", "my-file.txt")
Listing objects
aws s3 ls s3://my-bucket/ --endpoint-url https://eu-west-1.s3.fil.one
For programmatic listing with pagination:
paginator = s3.get_paginator("list_objects_v2")
for page in paginator.paginate(Bucket="my-bucket"):
for obj in page.get("Contents", []):
print(obj["Key"], obj["Size"])
Deleting objects
- App
- AWS CLI
Select one or more objects and click Delete. Confirm by typing delete.
aws s3 rm s3://my-bucket/my-file.txt \
--endpoint-url https://eu-west-1.s3.fil.one
Deletion is immediate from your Fil One account — the object disappears from the dashboard and API instantly. There is no recycle bin or soft-delete.
When you delete an object, it is immediately removed from your Fil One account and is no longer accessible. However, the underlying Filecoin storage deals persist until their natural expiration, which can be up to 180 days. This is a property of the Filecoin network's sealed sector model and does not affect your ability to manage your data in Fil One.
Presigned URLs
Generate a temporary URL that grants time-limited access to a specific object without requiring API credentials.
# Generate a download URL valid for 1 hour
url = s3.generate_presigned_url(
"get_object",
Params={"Bucket": "my-bucket", "Key": "shared-report.pdf"},
ExpiresIn=3600,
)
print(url)
Presigned URLs work for both GetObject (downloads) and PutObject (uploads).