NAME

WWW::Hetzner::Storage::API::StorageBoxes - Hetzner Storage Boxes API

VERSION

version 0.101

SYNOPSIS

my $boxes = $storage->storage_boxes;
my $box = $boxes->create(
    name             => 'my-box',
    location         => 'fsn1',
    storage_box_type => 'bx20',
    password         => 'secret',
);

DESCRIPTION

Manages Hetzner Storage Boxes and the actions performed on them.

list

my $boxes = $storage->storage_boxes->list(%query);

Returns one page of WWW::Hetzner::Storage::StorageBox objects. The API accepts name, label_selector, sort, page, and per_page.

get

my $box = $storage->storage_boxes->get($id);

Returns a WWW::Hetzner::Storage::StorageBox.

get_by_name

my $box = $storage->storage_boxes->get_by_name('my-box');

Returns the Storage Box of the supplied name, or undef when none exists.

create

my $box = $storage->storage_boxes->create(%params);

Creates a Storage Box. name, location, storage_box_type, and password are required. Returns a Storage Box with its creation action.

update

my $box = $storage->storage_boxes->update($id, %params);

Updates a Storage Box's name and/or labels. Returns the updated WWW::Hetzner::Storage::StorageBox, without an action.

delete

my $action = $storage->storage_boxes->delete($id);

Deletes a Storage Box and returns its WWW::Hetzner::Action.

folders

my $folders = $storage->storage_boxes->folders($id, path => '/');

Returns an arrayref of folder-name strings.

change_protection

my $action = $storage->storage_boxes->change_protection($id, delete => 1);

Changes delete protection and returns its action.

change_type

my $action = $storage->storage_boxes->change_type(
    $id, storage_box_type => 'bx11',
);

Changes the Storage Box type and returns its action.

reset_password

my $action = $storage->storage_boxes->reset_password($id, password => 'secret');

Resets a Storage Box password and returns its action.

update_access_settings

my $action = $storage->storage_boxes->update_access_settings($id, %settings);

Updates access settings and returns its action.

rollback_snapshot

my $action = $storage->storage_boxes->rollback_snapshot($id, snapshot => $snapshot_id);

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

enable_snapshot_plan

my $action = $storage->storage_boxes->enable_snapshot_plan($id, %schedule);

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

disable_snapshot_plan

my $action = $storage->storage_boxes->disable_snapshot_plan($id);

Disables a snapshot plan and returns its action.

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.