NAME

Net::CloudStack - Bindings for the CloudStack API

VERSION

Version 0.01005

SYNOPSIS

use Net::CloudStack;
my $api = Net::CloudStack->new(
    base_url        => 'http://...',
    api_path        => 'client/api?',
    api_key         => '<your api key>',
    secret_key      => '<your secret key>',
    xml_json        => 'json', #response format.you can select json or xml. xml is default.
    send_request    => 'yes',  #yes or no.
                               #When you select yes,you can get response.
                               #If you don't want to get response(only generating url),please input no. 
);

# CloudStack API Methods
$api->proc($cmd, $opt);
$api->proc("listVirtualMachines");
$api->proc("listVirtualMachines","id=123");

$api->proc("deployVirtualMachine","serviceofferingid=1&templateid=1&zoneid=1"); # some IDs are depend on your environment.

# Original Methods
print $api->url;      # print generated url
print $api->response; # print API response

METHODS

This module supports all CloudStack commands,basically you can use methods as following,

$api->some_command("parm1=$parm1&parm2=$parm2")

Please refer API Reference in following Developer's Guide:CloudStack.

http://docs.cloud.com/CloudStack_Documentation/Developer%27s_Guide%3A_CloudStack

Followings are some examples for API command,

listVirtualMachines

$api->proc("listVirtualMachines")
$api->proc("listVirtualMachines","id=$id")

deployVirtualMachine

$api->proc("deployVirtualMachine","serviceoffeingid=$serviceoffeingid&templateid=$templateid&zoneid=$zoneid")

startVirtualMachine/stopVirtualMachine

$api->proc("startVirtualMachine","id=$id")
$api->proc("stopVirtualMachine","id=$id")

Followings are some examples for original command,

test

$api->test()

This method prints each defined attributes(base_url,api_path,api_key,secret_key,send_request,xml_json).

url

$api->url()

This method prints generated URL that is send to CloudStack API.

test

$api->response()

This method prints response from CloudStack API.

AUTHOR

Shugo Numano, <snumano at cpan.org>

@shugonumano

BUGS

Please report any bugs or feature requests to bug-net-cloudstack at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Net-CloudStack. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

perldoc Net::CloudStack

You can also look for information at:

ACKNOWLEDGEMENTS

LICENSE AND COPYRIGHT

Copyright 2011 Shugo Numano.

This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.