NAME

WWW::Hetzner::Robot - Perl client for Hetzner Robot API (Dedicated Servers)

VERSION

version 0.002

SYNOPSIS

use WWW::Hetzner::Robot;

my $robot = WWW::Hetzner::Robot->new(
    user     => $ENV{HETZNER_ROBOT_USER},
    password => $ENV{HETZNER_ROBOT_PASSWORD},
);

# List servers
my $servers = $robot->servers->list;

# Get server details
my $server = $robot->servers->get(123456);
print $server->name, "\n";
print $server->product, "\n";

# Reset server
$robot->reset->execute(123456, 'sw');  # software reset
$robot->reset->execute(123456, 'hw');  # hardware reset

# Manage SSH keys
my $keys = $robot->keys->list;
$robot->keys->create(
    name => 'my-key',
    data => 'ssh-ed25519 AAAA...',
);

DESCRIPTION

This module provides access to the Hetzner Robot API for managing dedicated servers, IPs, SSH keys, and server resets.

Uses HTTP Basic Auth (user/password) instead of Bearer tokens.

RESOURCES

  • servers - Dedicated server management

  • keys - SSH key management

  • ips - IP address management

  • reset - Server reset (software/hardware)

  • traffic - Traffic statistics

user

Robot webservice username. Defaults to HETZNER_ROBOT_USER environment variable.

password

Robot webservice password. Defaults to HETZNER_ROBOT_PASSWORD environment variable.

base_url

Base URL for the Robot API. Defaults to https://robot-ws.your-server.de.

_set_auth

Override for Basic Auth instead of Bearer token authentication.

servers

Returns a WWW::Hetzner::Robot::API::Servers instance for managing dedicated servers.

keys

Returns a WWW::Hetzner::Robot::API::Keys instance for managing SSH keys.

ips

Returns a WWW::Hetzner::Robot::API::IPs instance for managing IP addresses.

reset

Returns a WWW::Hetzner::Robot::API::Reset instance for server reset operations.

traffic

Returns a WWW::Hetzner::Robot::API::Traffic instance for traffic statistics.

ENVIRONMENT

  • HETZNER_ROBOT_USER - Robot webservice username

  • HETZNER_ROBOT_PASSWORD - Robot webservice password

SEE ALSO

WWW::Hetzner, https://robot.hetzner.com/doc/webservice/en.html

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.