NAME
WWW::Hetzner::Cloud::RRSet - Hetzner Cloud DNS RRSet object
VERSION
version 0.001
SYNOPSIS
my $record = $zone->rrsets->get('www', 'A');
# Read attributes
print $record->name, "\n";
print $record->type, "\n";
print $record->ttl, "\n";
# Get values
my $values = $record->values; # ['1.2.3.4']
# Update
$record->ttl(600);
$record->records([{ value => '5.6.7.8' }]);
$record->update;
# Delete
$record->delete;
DESCRIPTION
This class represents a Hetzner Cloud DNS RRSet (Resource Record Set). Objects are returned by WWW::Hetzner::Cloud::API::RRSets methods.
NAME
WWW::Hetzner::Cloud::RRSet - Hetzner Cloud DNS RRSet object
ATTRIBUTES
zone_id
Zone ID this record belongs to (read-only).
name
Record name, e.g. "www" or "@" for apex (read-only).
type
Record type: A, AAAA, CNAME, MX, TXT, etc. (read-only).
ttl
Time to live in seconds (read-write).
records
Arrayref of record values: [{ value = '1.2.3.4' }, ...]> (read-write).
METHODS
values
my $values = $record->values; # ['1.2.3.4', '5.6.7.8']
Returns an arrayref of just the record values (without the hash structure).
update
$record->ttl(600);
$record->records([{ value => '5.6.7.8' }]);
$record->update;
Saves changes to TTL and records back to the API.
delete
$record->delete;
Deletes the RRSet.
data
my $hashref = $record->data;
Returns all RRSet data as a hashref (for JSON serialization).
SUPPORT
Source Code
The code is open to the world, and available for you to hack on. Please feel free to browse it and play with it, or whatever. If you want to contribute patches, please send me a diff or prod me to pull from your repository :)
https://github.com/Getty/p5-www-hetzner
git clone https://github.com/Getty/p5-www-hetzner.git
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.