DNS-Hetzner
view release on metacpan or search on metacpan
lib/DNS/Hetzner/API/Zones.pm view on Meta::CPAN
package DNS::Hetzner::API::Zones;
$DNS::Hetzner::API::Zones::VERSION = '0.05';
# ABSTRACT: Zones
# ---
# This class is auto-generated by bin/get_hetzner_info.pl
# ---
use v5.24;
use Moo;
use Types::Standard qw(:all);
use Mojo::Base -strict, -signatures;
extends 'DNS::Hetzner::APIBase';
with 'MooX::Singleton';
use DNS::Hetzner::Schema;
has endpoint => ( is => 'ro', isa => Str, default => sub { 'zones' } );
sub list ($self, %params) {
return $self->_do( 'GetZones', \%params, '', { type => 'get' } );
}
sub create ($self, %params) {
return $self->_do( 'CreateZone', \%params, '', { type => 'post' } );
}
sub validate_file_plain ($self, %params) {
return $self->_do( 'ValidateZoneFilePlain', \%params, '/file/validate', { type => 'post' } );
}
sub delete ($self, %params) {
return $self->_do( 'DeleteZone', \%params, '/:ZoneID', { type => 'delete' } );
}
sub get ($self, %params) {
return $self->_do( 'GetZone', \%params, '/:ZoneID', { type => 'get' } );
}
sub update ($self, %params) {
return $self->_do( 'UpdateZone', \%params, '/:ZoneID', { type => 'put' } );
}
sub export_file ($self, %params) {
return $self->_do( 'ExportZoneFile', \%params, '/:ZoneID/export', { type => 'get' } );
}
sub import_file_plain ($self, %params) {
return $self->_do( 'ImportZoneFilePlain', \%params, '/:ZoneID/import', { type => 'post' } );
}
1;
__END__
=pod
=encoding UTF-8
=head1 NAME
DNS::Hetzner::API::Zones - Zones
=head1 VERSION
version 0.05
=head1 SYNOPSIS
use DNS::Hetzner;
my $api_key = '1234abc';
my $dns = DNS::Hetzner->new(
token => $api_key,
);
$dns->records->create(
);
=head1 ATTRIBUTES
=over 4
=item * endpoint
=back
=head1 METHODS
=head2 list
Returns paginated zones associated with the user. Limited to 100 zones per request.
$dns->zones->list();
=head2 create
Creates a new zone.
( run in 2.025 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )