NAME

WWW::Hetzner::Storage::StorageBox - Hetzner Storage Box object

VERSION

version 0.101

SYNOPSIS

my $box = $storage->storage_boxes->get($id);
$box->name('renamed-box');
my $updated = $box->update;

my $subaccounts = $box->subaccounts;
my $snapshots = $box->snapshots;

DESCRIPTION

Represents a Hetzner Storage Box returned by WWW::Hetzner::Storage::API::StorageBoxes.

id

Storage Box ID (read-only).

name

Storage Box name (read-write).

storage_box_type

Storage Box Type data (read-only).

location

Location data (read-only).

access_settings

Access settings data (read-only).

snapshot_plan

Snapshot-plan data, or undef when no plan is configured (read-only).

protection

Protection settings data (read-only).

labels

Labels hashref (read-write).

status

Storage Box status (read-only).

username

Storage Box username, or undef (read-only).

server

Storage Box server data, or undef (read-only).

system

Storage Box system data, or undef (read-only).

stats

Storage Box statistics data (read-only).

created

Creation timestamp (read-only).

update

my $updated = $box->update;

Saves the object's current name and labels. Returns the updated Storage Box.

delete

my $action = $box->delete;

Deletes this Storage Box and returns its action.

folders

my $folders = $box->folders(path => '/');

Returns an arrayref of folder-name strings.

actions

my $actions = $box->actions->list;

Returns an WWW::Hetzner::Storage::API::Actions controller bound to this Storage Box.

subaccounts

my $subaccounts = $box->subaccounts;

Returns an WWW::Hetzner::Storage::API::Subaccounts controller bound to this Storage Box.

snapshots

my $snapshots = $box->snapshots;

Returns an WWW::Hetzner::Storage::API::Snapshots controller bound to this Storage Box.

change_protection

my $action = $box->change_protection(delete => 1);

Changes delete protection and returns its action.

change_type

my $action = $box->change_type(storage_box_type => 'bx11');

Changes the Storage Box type and returns its action.

reset_password

my $action = $box->reset_password(password => 'secret');

Resets a Storage Box password and returns its action.

update_access_settings

my $action = $box->update_access_settings(%settings);

Updates access settings and returns its action.

rollback_snapshot

my $action = $box->rollback_snapshot(snapshot => $snapshot_id);

Rolls a Storage Box back to a snapshot and returns its action.

enable_snapshot_plan

my $action = $box->enable_snapshot_plan(%schedule);

Enables a snapshot plan and returns its action. max_snapshots, minute, and hour are required.

disable_snapshot_plan

my $action = $box->disable_snapshot_plan;

Disables a snapshot plan and returns its action.

data

my $hashref = $box->data;

Returns the complete Storage Box representation returned by the API.

SEE ALSO

SUPPORT

Issues

Please report bugs and feature requests on GitHub at https://github.com/Getty/p5-www-hetzner/issues.

IRC

Join #kubernetes on irc.perl.org or message Getty directly.

CONTRIBUTING

Contributions are welcome! Please fork the repository and submit a pull request.

AUTHOR

Torsten Raudssus <torsten@raudssus.de>

COPYRIGHT AND LICENSE

This software is copyright (c) 2026 by Torsten Raudssus <torsten@raudssus.de> https://raudssus.de/.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.