> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tape.network/llms.txt
> Use this file to discover all available pages before exploring further.

# Tape Management

These commands manage tape reservations: creating them, inspecting them, and growing them along either dimension, capacity or time. The [tapes page](/protocol/architecture/tapes) covers the model behind them.

## create

Reserves a tape on-chain and saves its keypair locally. Defaults to 5 GiB for 100 epochs. Pass `--epochs <n>` for an exact number of epochs, counting the current one, or `--duration` (`12h`, `7d`, `4w`) to buy enough epochs to last that long from now at the network's current epoch duration. The new tape becomes the active tape for later commands unless you pass `--create-only`.

This command spends TAPE immediately. It first checks that the wallet holds the TAPE cost and enough SOL for rent and fees, and stops with the amount needed if not. `--dry-run` prints the cost, estimated expiry, and wallet balance without reserving anything.

```bash theme={null}
tape create --capacity 100m --duration 7d --create-only --out ./project.tape.json
```

```text Output theme={null}
tape address:     E79y5bh5zTLq9h7SgPGRsDpcmTB1oa7YGscFFFiojy2D
label:            yk5y3rg6cwclvyz7sv763kttt2d2sinpzdm3chuzw72th45s2c3a
capacity:         104857600 bytes
epochs:           active=241 expiry=410
epoch duration:   1h
expires:          ~2026-09-23 22:00 UTC (in 7d)
cost:             0.0161226 TAPE + ~0.00564372 SOL
active tape:      unchanged
```

The label is the address in a lowercase form, the bucket name S3 tools and subdomain serving use. The expiry time is an estimate from the current epoch duration. The TAPE cost is exact; the SOL figure estimates account rent and transaction fees.

Without `--out`, the keypair lands in `~/.tape/cassettes/<tape-address>.json`. Pass `--overwrite-key` to replace an existing file at the same path.

## list

Lists every tape owned by the current wallet.

```bash theme={null}
tape list
```

```text Output theme={null}
  ID  ADDRESS                                          USED      CAPACITY  TRACKS  ACTIV  EXPIR
   4  3fTapeAddressExampleBase58Value111111111111     87342    2147483648       1     12     24
   7  9qTapeAddressExampleBase58Value111111111111         0     104857600       0     12     16
```

## info

Shows a tape's on-chain state, including how many epochs remain and the estimated expiry time.

```bash theme={null}
tape info
```

```text Output theme={null}
tape address:      E79y5bh5zTLq9h7SgPGRsDpcmTB1oa7YGscFFFiojy2D
label:             yk5y3rg6cwclvyz7sv763kttt2d2sinpzdm3chuzw72th45s2c3a
id:                4077
authority:         5ywthAPoHfzWKhrVNSbo5GFdPDcJy7gbmkyZQ8zSKFzY
capacity:          104857600 bytes (562 used, 104857038 free)
tracks:            4
next track number: 4
epochs:            active=241 expiry=410 current=243 remaining=167
epoch duration:    1h
expires:           ~2026-09-23 22:00 UTC (in 6d 22h)
```

`remaining` counts epochs from the current one to expiry. Once the current epoch reaches the expiry epoch, `expires` reads `expired`.

## extend

Adds epochs to a tape's reservation, either `--epochs <n>` or enough epochs to add a `--duration` such as `7d`. Extension is permissionless: any wallet can pay to extend any tape, which is how data outlives its original owner ([more on expiry](/protocol/architecture/tapes)). An expired tape cannot be extended. `--dry-run` shows the cost and new expiry without spending.

```bash theme={null}
tape extend --duration 7d
```

```text Output theme={null}
tape address:     3fTapeAddressExampleBase58Value111111111111
added epochs:     168
new expiry epoch: 192
epoch duration:   1h
expires:          ~2026-09-24 08:00 UTC (in 7d 10h)
cost:             0.328237056 TAPE + ~0.000005 SOL
```

## resize

Grows a tape's capacity, either by a delta or to a target total. The added capacity is charged for the epochs the reservation has left. `--dry-run` shows the cost without spending.

```bash theme={null}
tape resize --add 100m
tape resize --to 4g
```

```text Output theme={null}
tape address:      3fTapeAddressExampleBase58Value111111111111
added capacity:    104857600 bytes
new capacity:      2252341248 bytes
cost:              0.0170766 TAPE + ~0.000005 SOL
```

## delegate

Sets the tape's write delegate: a second key allowed to register, certify, and delete tracks without owning the tape. This is how a hosted S3 gateway writes to your tape without ever holding your keypair ([delegation](/protocol/architecture/tapes#delegation)).

```bash theme={null}
tape delegate 9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM
```

```text Output theme={null}
tape address:     3fTapeAddressExampleBase58Value111111111111
delegate:         9WzDXwBbmkg8ZTbNMqUxvQRAyrZzDsGYdLVL9zYtAWWM
```

## revoke

Removes the tape's current write delegate.

```bash theme={null}
tape revoke
```

`info`, `extend`, `resize`, `delegate`, and `revoke` accept `--tape` to target a tape other than the active one; `create` always makes a new one.
