NAME
WWW::Hetzner::Cloud::API::Certificates - Hetzner Cloud Certificates API
VERSION
version 0.002
SYNOPSIS
my $cloud = WWW::Hetzner::Cloud->new(token => $token);
# List certificates
my $certs = $cloud->certificates->list;
# Create managed certificate (Let's Encrypt)
my $cert = $cloud->certificates->create(
name => 'my-cert',
type => 'managed',
domain_names => ['example.com', 'www.example.com'],
);
# Create uploaded certificate
my $cert = $cloud->certificates->create(
name => 'my-cert',
type => 'uploaded',
certificate => $pem_cert,
private_key => $pem_key,
);
# Delete
$cloud->certificates->delete($cert->id);
DESCRIPTION
This module provides the API for managing Hetzner Cloud certificates. All methods return WWW::Hetzner::Cloud::Certificate objects.
list
my $certs = $cloud->certificates->list;
my $certs = $cloud->certificates->list(label_selector => 'env=prod');
Returns arrayref of WWW::Hetzner::Cloud::Certificate objects.
get
my $cert = $cloud->certificates->get($id);
Returns WWW::Hetzner::Cloud::Certificate object.
create
# Managed certificate (Let's Encrypt)
my $cert = $cloud->certificates->create(
name => 'my-cert', # required
type => 'managed', # required
domain_names => ['example.com'],# required for managed
labels => { ... }, # optional
);
# Uploaded certificate
my $cert = $cloud->certificates->create(
name => 'my-cert', # required
type => 'uploaded', # required
certificate => $pem_cert, # required for uploaded
private_key => $pem_key, # required for uploaded
labels => { ... }, # optional
);
Creates certificate. Returns WWW::Hetzner::Cloud::Certificate object.
update
$cloud->certificates->update($id, name => 'new-name', labels => { ... });
Updates certificate. Returns WWW::Hetzner::Cloud::Certificate object.
delete
$cloud->certificates->delete($id);
Deletes certificate.
retry
$cloud->certificates->retry($id);
Retry issuance of a managed certificate that failed.
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.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.