---
title: "Video: Storage Basics"
description: "Learn Edge Object Storage — S3-compatible, zero egress. Create buckets, upload files, generate access keys, use S3 SDKs, create presigned URLs, and connect to CDN."
url: https://edge.network/academy/video-storage-basics/
---

# Video: Storage Basics

[Back to Academy](https://edge.network/academy)
Video Tutorial
8 min watch

# Storage Basics

Edge Object Storage is S3-compatible with zero egress fees. Create buckets, upload files, integrate with your apps, and serve content via CDN.

Video coming soon

Follow the written guide below in the meantime

## What this tutorial covers

Follow along with the video or use this written guide to get started with [Edge Object Storage](https://edge.network/storage).

### Creating a Bucket

Buckets are containers for your objects. In the control panel, go to **Storage** →
**Create Bucket**. Give it a unique name — bucket names must be globally unique across
Edge and follow S3 naming rules.

Choose a region for your bucket. Content is stored and served from that region, though you can
connect it to CDN for global distribution.

### Uploading Files (CLI and Control Panel)

**Control panel:** Open your bucket and drag-and-drop files or use the upload button.
You can create folders for organisation — they're logical prefixes in object keys.

**CLI:** Use the AWS CLI with the Edge endpoint. Configure your credentials first:

# Upload a file
aws s3 cp ./my-file.jpg s3://my-bucket/ --endpoint-url https://storage.edge.network

# Sync a directory
aws s3 sync ./dist/ s3://my-bucket/ --endpoint-url https://storage.edge.network

### Generating Access Keys

For programmatic access, create access keys in **Storage** → **Access Keys**.
You'll get an Access Key ID and Secret Access Key — store the secret securely; it's only shown once.

Use these with any S3-compatible client. The endpoint is `https://storage.edge.network`.

### Using with S3 SDKs

Edge Storage works with the AWS SDK and other S3-compatible libraries. Point the client at
`https://storage.edge.network` and use
your access keys.

// JavaScript example with @aws-sdk/client-s3
const { S3Client, PutObjectCommand } = require('@aws-sdk/client-s3');
const client = new S3Client({
endpoint: 'https://storage.edge.network',
region: 'us-east-1',
credentials: { accessKeyId: '...', secretAccessKey: '...' }
});
await client.send(new PutObjectCommand({ Bucket: 'my-bucket', Key: 'file.jpg', Body: buffer }));

### Presigned URLs for Sharing

Generate temporary URLs that allow download or upload without exposing your credentials.
Presigned URLs expire after a set duration (e.g. 1 hour, 24 hours).

Use the SDK's `getSignedUrl` or
`GetObjectCommand` with presigning.
Share the URL with clients for time-limited access to private objects.

### Connecting to CDN as an Origin

Serve your bucket contents through [Edge CDN](https://edge.network/cdn) for fast global delivery and zero egress. In the CDN
deployment, add a custom origin and set the origin URL to your bucket's endpoint.

The format is typically `https:// .storage.edge.network`.
Configure cache rules to optimise TTLs for your content type.

### Monitoring Usage

The Storage dashboard shows bucket size, object count, and request metrics. Use these to track
growth and identify usage patterns.

Billing is based on storage used and requests — egress to Edge CDN is free. The first 5 GB
is free; beyond that, monitor your usage to keep costs predictable.

[Next: Caching Strategies Best practices for CDN caching](https://edge.network/academy/caching-strategies) [Storage Documentation Full reference docs](https://edge.network/docs/storage)
