NAME
WWW::Hetzner::Cloud::API::ISOs - Hetzner Cloud ISOs API
VERSION
version 0.101
SYNOPSIS
use WWW::Hetzner::Cloud;
my $cloud = WWW::Hetzner::Cloud->new(token => $ENV{HETZNER_API_TOKEN});
# List ISOs
my $isos = $cloud->isos->list;
# List only ARM ISOs
my $arm = $cloud->isos->list(architecture => 'arm');
# Get by ID
my $iso = $cloud->isos->get(4711);
# Get by name (the name is what attach_iso takes)
my $netboot = $cloud->isos->get_by_name('netboot.xyz-arm64.iso');
DESCRIPTION
This module provides access to Hetzner Cloud ISO images. ISOs can be attached to a server with $cloud->servers->attach_iso($server_id, $name). All methods return WWW::Hetzner::Cloud::ISO objects.
ISOs are read-only resources.
list
my $isos = $cloud->isos->list;
my $isos = $cloud->isos->list(architecture => 'x86');
my $isos = $cloud->isos->list(name => 'netboot.xyz.iso');
Returns an arrayref of WWW::Hetzner::Cloud::ISO objects.
Supported parameters are name, architecture, include_architecture_wildcard, page and per_page. Without per_page the API returns its default page size, which is smaller than the number of available public ISOs -- filter, or page through the result.
list_all
my $entities = $controller->list_all(per_page => 50, %filters);
Returns a combined arrayref. Inherited from "list_all" in WWW::Hetzner::Role::Pagination. Unlike "list", which fetches one page, it follows every subsequent page starting at page 1 or the supplied page. It carries per_page, filters, and sort values to every request.
get
my $iso = $cloud->isos->get($id);
Returns a WWW::Hetzner::Cloud::ISO object.
get_by_name
my $iso = $cloud->isos->get_by_name('netboot.xyz.iso');
Returns a WWW::Hetzner::Cloud::ISO object. Returns undef if not found.
Unlike the other read-only resources this filters server-side (the ISO list is paginated and long), so the lookup is exact rather than a scan.
SEE ALSO
WWW::Hetzner::Cloud - Main Cloud API client
WWW::Hetzner::Cloud::ISO - ISO entity class
WWW::Hetzner::CLI::Cmd::Iso - ISO CLI commands
WWW::Hetzner::Cloud::API::Servers - Servers API (attach_iso, detach_iso)
WWW::Hetzner - Main umbrella module
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.