NAME
WebService::Linode - Perl Interface to the Linode.com API.
SYNOPSIS
my $api = WebService::Linode->new( apikey => 'your api key here');
print Dumper($api->linode_list);
$api->linode_reboot(linodeid=>242);
This module implements the Linode.com api methods. Linode methods have had dots replaced with underscores to generate the perl method name. All keys and parameters have been lower cased but returned data remains otherwise the same. For additional information see http://www.linode.com/api/
Constructor
For documentation of possible arguments to the constructor, see WebService::Linode::Base.
Batch requests
Each of the Linode API methods below may optionally be prefixed with QUEUE_ to add that request to a queue to be processed later in one or more batch requests which can be processed by calling send_queued_requests. For example:
my @linode_ids = () # Get your linode ids through normal methods
my @responses = map { $api->linode_ip_list( linodeid=>$_ ) } @linode_ids;
Can be reduced to a single request:
my @linode_ids = () # Get your linode ids through normal methods
$api->QUEUE_linode_ip_list( linodeid=>$_ ) for @linode_ids;
my @responses = $api->send_queued_requests; # One api request
See WebService::Linode::Base for additional queue management methods.
Methods from the Linode API
avail_datacenters
avail_nodebalancers
avail_distributions
Optional Parameters:
distributionid
avail_kernels
Optional Parameters:
isxen
kernelid
avail_linodeplans
Optional Parameters:
planid
avail_stackscripts
Optional Parameters:
distributionid
distributionvendor
keywords
domain_list
Optional Parameters:
domainid
domain_update
Required Parameters:
domainid
Optional Parameters:
axfr_ips
description
domain
expire_sec
lpm_displaygroup
master_ips
refresh_sec
retry_sec
soa_email
status
ttl_sec
type
domain_create
Required Parameters:
domain
type
Optional Parameters:
axfr_ips
description
expire_sec
lpm_displaygroup
master_ips
refresh_sec
retry_sec
soa_email
status
ttl_sec
domain_delete
Required Parameters:
domainid
domain_resource_update
Required Parameters:
resourceid
Optional Parameters:
domainid
name
port
priority
protocol
target
ttl_sec
weight
domain_resource_list
Required Parameters:
domainid
Optional Parameters:
resourceid
domain_resource_delete
Required Parameters:
domainid
resourceid
domain_resource_create
Required Parameters:
domainid
type
Optional Parameters:
name
port
priority
protocol
target
ttl_sec
weight
linode_resize
Required Parameters:
linodeid
planid
linode_list
Optional Parameters:
linodeid
linode_mutate
Required Parameters:
linodeid
linode_boot
Required Parameters:
linodeid
Optional Parameters:
configid
linode_create
Required Parameters:
datacenterid
planid
Optional Parameters:
paymentterm
linode_clone
Required Parameters:
datacenterid
linodeid
planid
Optional Parameters:
paymentterm
linode_update
Required Parameters:
linodeid
Optional Parameters:
alert_bwin_enabled
alert_bwin_threshold
alert_bwout_enabled
alert_bwout_threshold
alert_bwquota_enabled
alert_bwquota_threshold
alert_cpu_enabled
alert_cpu_threshold
alert_diskio_enabled
alert_diskio_threshold
backupweeklyday
backupwindow
label
lpm_displaygroup
ms_ssh_disabled
ms_ssh_ip
ms_ssh_port
ms_ssh_user
watchdog
linode_webconsoletoken
Required Parameters:
linodeid
linode_reboot
Required Parameters:
linodeid
Optional Parameters:
configid
linode_shutdown
Required Parameters:
linodeid
linode_delete
Required Parameters:
linodeid
Optional Parameters:
skipchecks
linode_config_delete
Required Parameters:
configid
linodeid
linode_config_create
Required Parameters:
kernelid
label
linodeid
Optional Parameters:
comments
devtmpfs_automount
disklist
helper_depmod
helper_disableupdatedb
helper_xen
ramlimit
rootdevicecustom
rootdevicenum
rootdevicero
runlevel
linode_config_update
Required Parameters:
configid
Optional Parameters:
comments
devtmpfs_automount
disklist
helper_depmod
helper_disableupdatedb
helper_xen
kernelid
label
linodeid
ramlimit
rootdevicecustom
rootdevicenum
rootdevicero
runlevel
linode_config_list
Required Parameters:
linodeid
Optional Parameters:
configid
linode_disk_createfromimage
Required Parameters:
imageid
linodeid
Optional Parameters:
rootpass
rootsshkey
size
linode_disk_duplicate
Required Parameters:
diskid
linodeid
linode_disk_update
Required Parameters:
diskid
Optional Parameters:
isreadonly
label
linodeid
linode_disk_createfromstackscript
Required Parameters:
distributionid
label
linodeid
rootpass
size
stackscriptid
stackscriptudfresponses
Optional Parameters:
rootsshkey
linode_disk_imagize
Required Parameters:
diskid
linodeid
Optional Parameters:
description
label
linode_disk_delete
Required Parameters:
diskid
linodeid
linode_disk_resize
Required Parameters:
diskid
linodeid
size
linode_disk_list
Required Parameters:
linodeid
Optional Parameters:
diskid
linode_disk_createfromdistribution
Required Parameters:
distributionid
label
linodeid
rootpass
size
Optional Parameters:
rootsshkey
linode_disk_create
Required Parameters:
label
linodeid
size
type
Optional Parameters:
fromdistributionid
isreadonly
rootpass
rootsshkey
linode_ip_setrdns
Required Parameters:
hostname
ipaddressid
linode_ip_swap
Required Parameters:
ipaddressid
Optional Parameters:
tolinodeid
withipaddressid
linode_ip_addprivate
Required Parameters:
linodeid
linode_ip_list
Required Parameters:
linodeid
Optional Parameters:
ipaddressid
linode_ip_addpublic
Required Parameters:
linodeid
linode_job_list
Required Parameters:
linodeid
Optional Parameters:
jobid
pendingonly
stackscript_list
Optional Parameters:
stackscriptid
stackscript_update
Required Parameters:
stackscriptid
Optional Parameters:
description
distributionidlist
ispublic
label
rev_note
script
stackscript_create
Required Parameters:
distributionidlist
label
script
Optional Parameters:
description
ispublic
rev_note
stackscript_delete
Required Parameters:
stackscriptid
nodebalancer_config_delete
Required Parameters:
configid
nodebalancerid
nodebalancer_config_create
Required Parameters:
nodebalancerid
Optional Parameters:
algorithm
check
check_attempts
check_body
check_interval
check_path
check_timeout
port
protocol
ssl_cert
ssl_key
stickiness
nodebalancer_config_update
Required Parameters:
configid
Optional Parameters:
algorithm
check
check_attempts
check_body
check_interval
check_path
check_timeout
port
protocol
ssl_cert
ssl_key
stickiness
nodebalancer_config_list
Required Parameters:
nodebalancerid
Optional Parameters:
configid
nodebalancer_node_create
Required Parameters:
address
configid
label
Optional Parameters:
mode
weight
nodebalancer_node_delete
Required Parameters:
nodeid
nodebalancer_node_list
Required Parameters:
configid
Optional Parameters:
nodeid
nodebalancer_node_update
Required Parameters:
nodeid
Optional Parameters:
address
label
mode
weight
user_getapikey
Required Parameters:
password
username
Optional Parameters:
expires
label
token
AUTHORS
Michael Greb,
<michael@thegrebs.com>
Stan "The Man" Schwertly
<stan@schwertly.com>
COPYRIGHT & LICENSE
Copyright 2008-2014 Michael Greb, all rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.