Skip to content

pplu/cloudhealth-api-perl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NAME

CloudHealth::API - A REST API Client for the CloudHealth API

SYNOPSIS

 use CloudHealth::API;
 my $ch = CloudHealth::API->new;
 
 my $res = $ch->MetricsForSingleAsset(
   asset => $asset,
 );
 print Dumper($res);

DESCRIPTION

This module implements the CloudHealth REST API found in https://apidocs.cloudhealthtech.com/

METHODS

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::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

AUTHENTICATION

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.

You can also pass any object that implements an api_key method to the credentials attribute of the constructor

RESULTS

Results are returned as a Perl HashRef representing the JSON returned by the API.

SEE ALSO

https://apidocs.cloudhealthtech.com/

There is a CLI wrapper available as a CPAN module: App::CloudHealth

AUTHOR

Jose Luis Martinez
CPAN ID: JLMARTIN
CAPSiDE
[email protected]

BUGS and SOURCE

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 and LICENSE

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.

About

Perl client for the CloudHealth REST API

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages