NAME

WWW::Hetzner::Cloud::RRSet - Hetzner Cloud DNS RRSet object

VERSION

version 0.002

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.

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).

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.

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).

data

my $hashref = $record->data;

Returns all RRSet data as a hashref (for JSON serialization).

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.