CloudHealth::API - A REST API Client for the CloudHealth API
use CloudHealth::API; my $ch = CloudHealth::API->new; my $res = $ch->MetricsForSingleAsset( asset => $asset, ); print Dumper($res);
This module implements the CloudHealth REST API found in https://apidocs.cloudhealthtech.com/
Each method on the client corresponds to an API action. You can find a class in the CloudHealth::API::Call namespace that describes the parameters that the method call accepts:
CloudHealth::API::Call
CloudHealth::API::Call::EnableAWSAccount
$ch->EnableAWSAccount(authentication => { protocol => '..' }, ...);
CloudHealth::API::Call::AWSAccounts
$ch->AWSAccounts;
CloudHealth::API::Call::SingleAWSAccount
$ch->SingleAWSAccount(id => $id);
CloudHealth::API::Call::UpdateExistingAWSAccount
$ch->UpdateExistingAWSAccount(id => $id, authentication => { protocol => '..' }, ...);
CloudHealth::API::Call::GetExternalID
$ch->GetExternalID(id => $id)
CloudHealth::API::Call::MetricsForSingleAsset
$ch->MetricsForSingleAsset(asset => $id, from => '...', to => '...');
CloudHealth::API::Call::DeleteAWSAccount
CloudHealth::API::Call::RetrieveAllPerspectives
CloudHealth::API::Call::RetrievePerspectiveSchema
CloudHealth::API::Call::CreatePerspectiveSchema
CloudHealth::API::Call::UpdatePerspectiveSchema
CloudHealth::API::Call::DeletePerspectiveSchema
CloudHealth::API::Call::ListQueryableReports
CloudHealth::API::Call::ListReportsOfSpecificType
CloudHealth::API::Call::ListOfQueryableAssets
CloudHealth::API::Call::AttributesOfSingleAsset
CloudHealth::API::Call::SearchForAssets
CloudHealth::API::Call::UpdateTagsForSingleAsset
CloudHealth::API::Call::SpecificCustomerReport
CloudHealth::API::Call::AssetsForSpecificCustomer
CloudHealth::API::Call::CreatePartnerCustomer
CloudHealth::API::Call::ModifyExistingCustomer
CloudHealth::API::Call::DeleteExistingCustomer
CloudHealth::API::Call::GetSingleCustomer
CloudHealth::API::Call::GetAllCustomers
CloudHealth::API::Call::StatementForSingleCustomer
CloudHealth::API::Call::StatementsForAllCustomers
CloudHealth::API::Call::CreateAWSAccountAssignment
CloudHealth::API::Call::ReadAllAWSAccountAssignments
CloudHealth::API::Call::ReadSingleAWSAccountAssignment
CloudHealth::API::Call::UpdateAWSAccountAssignment
CloudHealth::API::Call::DeleteAWSAccountAssignment
As the documentation states, you need an API KEY to query the API. The default authentication mechanism expects to find that API key in the CLOUDHEALTH_APIKEY environment variable.
CLOUDHEALTH_APIKEY
You can also pass any object that implements an api_key method to the credentials attribute of the constructor
api_key
credentials
Results are returned as a Perl HashRef representing the JSON returned by the API.
https://apidocs.cloudhealthtech.com/
There is a CLI wrapper available as a CPAN module: App::CloudHealth
Jose Luis Martinez CPAN ID: JLMARTIN CAPSiDE jlmartinez@capside.com
The source code is located here: https://github.com/pplu/cloudhealth-api-perl/
Please report bugs to: https://github.com/pplu/cloudhealth-api-perl/issues
Copyright (c) 2018 by Jose Luis Martinez Torres
This code is distributed under the Apache 2 License. The full text of the license can be found in the LICENSE file included with this module.
To install CloudHealth::API, copy and paste the appropriate command in to your terminal.
cpanm
cpanm CloudHealth::API
CPAN shell
perl -MCPAN -e shell install CloudHealth::API
For more information on module installation, please visit the detailed CPAN module installation guide.