API Reference Guide

You can now use CloudCheckr CMx access tokens when running API calls in our legacy product. You can still use your existing API access keys in the legacy product, but access tokens will provide better security, more consistent authorization management, and the ability to access multiple projects and accounts.
Please use these URLs when accessing the API in the following platforms:
  • US: https://api.cloudcheckr.com
  • AU: https://au.cloudcheckr.com
  • EU: https://eu.cloudcheckr.com
  • GOV: https://gov.cloudcheckr.com
  • FED: https://fed.cloudcheckr.com

This guide lists the API calls used in the Azure CloudCheckr environment.

CloudCheckr is revamping its API documentation to ensure that it reflects the best practices for REST and to improve overall consistency. We will restructure each call to include these sections:
Section Description
Input Parameters Options that you pass with the endpoint to influence a response.

Identifies if a parameter is required or optional, the data type, and the parameter description.

API Call URL Identifies the common path for the API (highlighted in yellow) and the end path of the endpoint (highlighted in light blue).

Request Example Includes a sample request that shows the endpoint and a few key parameters.

Formatted in curl since it’s language-agnostic.

Includes the header information and the method (GET or POST in most cases).

Response Example Shows a sample response for all of the parameters passed in the request example.

Includes examples in XML and JSON.


Add Azure CSP Account

The API method, “add_azure_csp_account”, is used to register an Azure Cloud Solution Provider (CSP) account with CloudCheckr. This method will return a unique ID to enhance security for the newly created account that can be used for the parameter “use_cc_account_id” when making calls to the admin-level API.

Note:

  • This call can only be made using an admin-level access key.
  • The HTTP method for this call is POST.
  • Azure parameters typically contain special characters. To submit as a parameter on the URL, you must URL encode it. See http://www.w3schools.com/tags/ref_urlencode.asp for more details or to URL encode an input parameter.

INPUT PARAMETERS:

Parameter Type Description
access_key string required; admin-level API key
account_name string optional; the name of the Azure account used to register with CloudCheckr
azure_ad_id string optional; Azure Active Directory ID
azure_ad_user_name string optional; Azure Active Directory username
azure_ad_user_password string optional; Azure Active Directory password
azure_app_id string optional; Azure Native App ID

OUTPUT PARAMETERS:

Parameter Type Description
account_status string indicates success or failure with creating the account
cc_account_id string unique account ID used in CloudCheckr
credential_status string status message indicating the result of validating the Azure credentials (if provided in the request)
role_account_id string role account ID

API CALL URL:

https://api.cloudcheckr.com/api/account.[json|xml]/add_azure_csp_account?access_key=your_admin_access_key

REQUEST EXAMPLE:

curl -X POST \
-- https://api.cloudcheckr.com/api/account.[json|xml]/add_azure_csp_account?access_key=your_admin_access_key\
-- header 'cache-control: no-cache' \
-- header 'content-type: application/[json|xml]' \
-- data '{
"account_name": "New Azure CSP Account",
}

RESPONSE EXAMPLE:
XML:

<AddAzureCSPAccountResponse xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
<account_status>Success</account_status>
<cc_account_id>9999</cc_account_id>
<credential_status>Azure credentials applied.</credential_status>
<role_account_id>CC-99999999999999999999999999999999</role_account_id>
</AddAzureCSPAccountResponse>

JSON:

{
"account_status":"Success",
"cc_account_id":9999,
"credential_status":"Azure credentials applied.",
"role_account_id":"CC-99999999999999999999999999999999",
"cc_external_id":null
}

Add Azure EA Account

The API method, “add_azure_ea_account”, is used to  register an Azure Enterprise Agreement (EA) account with CloudCheckr. This method will return a unique ID to enhance security for the newly created account that can be used for the parameter, “use_cc_account_id”, when making calls to the admin-level API.

Note:

  • This call can only be made using an admin-level access key
  • The HTTP method for this call is POST
  • Azure parameters typically contain special characters. In order to submit as a parameter on the URL, you must URL encode it. See http://www.w3schools.com/tags/ref_urlencode.asp for more details or to URL encode an input parameter.

INPUT PARAMETERS:

Parameter Type Description
access_key string required; admin-level API key
use_cc_account_id string required; the Account ID (Project ID) of the CloudCheckr account to update
azure_enrollment_number string required; Azure enrollment number associated with the CloudCheckr account
azure_api_access_key string required; Azure API access key (token)

API CALL URL:

https://api.cloudcheckr.com/api/account.[json|xml]/add_azure_ea_account?access_key=your_admin_access_key&use_cc_account_id=1234&azure_enrollment_number=[azure_enrollment_number]&azure_api_access_key=[azure_api_access_key]

REQUEST EXAMPLE:

curl -X POST \
-- https://api.cloudcheckr.com/api/account.[json|xml]/add_azure_ea_account?access_key=your_admin_access_key\
-- header 'cache-control: no-cache' \
-- header 'content-type: application/[json|xml]' \
-- data '{
"account_name": "New Azure EA Account",
}

RESPONSE EXAMPLE:
XML:

<AddAzureCSPAccountResponse xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
<account_status>Success</account_status>
<cc_account_id>9999</cc_account_id>
<credential_status>Azure credentials applied.</credential_status>
<role_account_id>CC-99999999999999999999999999999999</role_account_id>
</AddAzureCSPAccountResponse>

JSON:

{
"account_status": "Success",
"cc_account_id": 9999,
"credential_status": "Azure credentials applied.",
"role_account_id": "CC-99999999999999999999999999999999",
"cc_external_id": null
}

Add Azure Inventory Account

The API method, “add_azure_inventory_account”, is used to register an Azure Subscription account with CloudCheckr. This method will return a unique ID to enhance security for the newly created account that can be used for the parameter “use_cc_account_id” when making calls to the admin-level API.

Note:

  • This call can only be made using an admin-level access key.
  • The HTTP method for this call is POST.
  • Azure parameters typically contain special characters. In order to submit as a parameter on the URL, you must URL encode it. See http://www.w3schools.com/tags/ref_urlencode.asp for more details or to URL encode an input parameter.

INPUT PARAMETERS:

Parameter Type Description
access_key string required; admin-level API key
account_name string optional; the name of the Azure account used to register with CloudCheckr
azure_ad_id string optional; Azure Active Directory ID
azure_app_id string optional; Azure App ID
azure_api_access_key string optional; Azure API access key (token)
azure_subscription_id string optional; Azure Active Directory Subscription ID
azure_offer_id string optional; Azure Offer ID

OUTPUT PARAMETERS:

Parameter Type Description
account_status string indicates success or failure about creating the account
cc_account_id string unique account ID used in CloudCheckr
credential_status string status message indicating the result of validating the Azure credentials (if provided in the request)
role_account_id string role account ID

API CALL URL:

https://api.cloudcheckr.com/api/account.[json|xml]/add_azure_inventory_account?access_key=your_admin_access_key

REQUEST EXAMPLE:

curl -X POST \
-- https://api.cloudcheckr.com/api/account.[json|xml]/add_azure_inventory_account?access_key=your_admin_access_key\
-- header 'cache-control: no-cache' \
-- header 'content-type: application/[json|xml]' \
-- data '{
"account_name": "New Azure Inventory Account",
}

RESPONSE EXAMPLE:
XML:

<AddAzureInventoryAccountResponse xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
<account_status>Success</account_status>
<cc_account_id>9999</cc_account_id>
<credential_status>Azure credentials applied.</credential_status>
<role_account_id>CC-99999999999999999999999999999999</role_account_id>
</AddAzureInventoryAccountResponse>

JSON:

{
"account_status": "Success",
"cc_account_id": 9999,
"credential_status": "Azure credentials applied.",
"role_account_id": "CC-99999999999999999999999999999999",
"cc_external_id": null
}

Edit Azure CSP Credential

The API method, “edit_azure_csp_credential”, is used used to change the credentials on an Azure Cloud Solution Provider (CSP) account with CloudCheckr.

Note:

  • This call can only be made using an admin-level access key.
  • The HTTP method for this call is POST.

INPUT PARAMETERS:

Parameter Type Description
access_key string required; admin-level API key
use_cc_account_id string required; the Account ID (Project ID) of the CloudCheckr account to update
azure_ad_user_name string required; Azure Active Directory username
azure_ad_user_password string required; Azure Active Directory password
azure_app_id string required; Azure Native App ID

API CALL URL:

https://api.cloudcheckr.com/api/account.[json|xml]/edit_azure_csp_credential?access_key=your_admin_access_key&use_cc_account_id=cc_account_id&azure_ad_user_name=azure_ad_user_name&azure_ad_user_password=azure_ad_user_password&azure_app_id=azure_app_id

REQUEST EXAMPLE:

curl -X POST \
-- https://api.cloudcheckr.com/api/account.[json|xml]/edit_azure_csp_credential?access_key=your_admin_access_key&use_cc_account_id=cc_account_id&azure_ad_user_name=azure_ad_user_name&azure_ad_user_password=azure_ad_user_password&azure_app_id=azure_app_id\
-- header 'cache-control: no-cache' \
-- header 'content-type: application/[json|xml]' \
-- data '{
"use_cc_account_id": 111,
"azure_ad_user_name": [email protected],
"zure_ad_user_password": "Active Directory User Password",
"azure_app_id": f11g4042-5286-5d68-6b18-3623cd8f6cg5
}

RESPONSE EXAMPLE:
XML:

<EditAzureCSPCredentialResponse xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
<code>200</code>
<message>Azure credentials updated.</message>
</EditAzureCSPCredentialResponse>

JSON:

{
"code": "200",
"message": "Azure credentials updated."
}

Edit Azure EA Credential

The API method, "edit_azure_ea_credential", is used used to change the credentials on an Azure Enterprise Agreement (EA) account with CloudCheckr.

Note:

  • This call can only be made using an admin-level access key.
  • The HTTP method for this call is POST.

INPUT PARAMETERS:

Parameter Type Description
access_key string required; admin-level API key
use_cc_account_id string required; the Account ID (Project ID) of the CloudCheckr account to update
azure_enrollment_number string required; Azure enrollment number to associate with the CloudCheckr account
azure_api_access_key string required; Azure API access key (token)

API CALL URL:

https://api.cloudcheckr.com/api/account.[json|xml]/edit_azure_ea_credential?access_key=your_admin_access_key&use_cc_account_id=1234&azure_enrollment_number=[azure_enrollment_number]&azure_api_access_key=[azure_api_access_key]

REQUEST EXAMPLE:

curl -X POST \
-- https://api.cloudcheckr.com/api/account.[json|xml]/edit_azure_ea_credential?access_key=[access_key]&use_cc_account_id=1234&azure_enrollment_number=[azure_enrollment_number]&azure_api_access_key=[azure_api_access_key]\
-- header 'cache-control: no-cache' \
-- header 'content-type: application/[json|xml]' \
-- data '{
"use_cc_account_id": 111,
"azure_enrollment_number": "Azure Enrollment number",
"azure_api_access_key": "Azure API access key"
}

RESPONSE EXAMPLE:
XML:

<EditAzureEACredentialtResponse xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
<code>200</code>
<message>Azure credentials updated.</message>
</EditAzureEACredentialResponse>

JSON:

{
"code": "200",
"message": "Azure credentials updated."
}

Edit Azure Inventory Credential

The API method, “edit_azure_inventory_credential”, is used used to change the credentials on an Azure Subscription account with CloudCheckr.

Note:

  • This call can only be made using an admin-level access key.
  • The HTTP method for this call is POST.

INPUT PARAMETERS:

Parameter Type Description
access_key string required; admin-level API key
use_cc_account_id string required; the Account ID (Project ID) of the CloudCheckr account to update
azure_app_id string required; Azure Native App ID
azure_api_access_key string required; Azure API access key (token)

API CALL URL:

https://api.cloudcheckr.com/api/account.[json|xml]/edit_azure_inventory_credential?access_key=your_admin_access_key&use_cc_account_id=1234&azure_app_id=[azure_app_id]&azure_api_access_key=[azure_api_access_key]

REQUEST EXAMPLE:

curl -X POST \
-- https://api.cloudcheckr.com/api/account.[json|xml]/edit_azure_inventory_credential?access_key=your_admin_access_key&use_cc_account_id=1234&azure_app_id=[azure_app_id]&azure_api_access_key=[azure_api_access_key]\
-- header 'cache-control: no-cache' \
-- header 'content-type: application/[json|xml]' \
-- data '{
"use_cc_account_id": 111,
"azure_app_id": "Azure App ID",
"azure_api_access_key": "Azure API access key"
}

RESPONSE EXAMPLE:
XML:

<EditAzureInventoryAccountResponse xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
<code>200</code>
<message>Azure credentials updated.</message>
</EditAzureInventoryAccountResponse>

JSON:

{
"code": "200",
"message": "Azure credentials updated."
}

Get Best Practices V2

The API method “best_practice/get_best_practices_v2” is used to:

  • pull the list of best practice results from a CloudCheckr account
  • show ignored checks and the reasons for those ignored items
  • report back the CIS benchmark information associated with the BPC

INPUT PARAMETERS:

Parameter Type Description
access_key string required; account-level API key
include_compliance_checks boolean optional; will report back the CIS benchmark information associated with the BPC; accepts true or false
date DateTime optional; date to pull the list of Best Practice results; used to access historical data
category string optional; category of the Best Practice report to pull; accepts Security, Cost, Availability, and/or Usage
importance string optional; the importance level of the Best Practice checks to pull; accepts ShowAll, High, Medium, Low, Informational, InformationAndHigher, LowAndHigher, and MediumAndHigher
all_result boolean optional; allows you to pull all results from the Best Practice report even if there are no issues with the report; accepts true or false
azure_account_ids string optional/multi-account view (MAV) only; return statistics from these accounts
bpc_id string optional; allows you to pull results for a specific Best Practice ID number
include_advisor_bpcs string optional; when specified as yes , 1 , or true , the response will also include Azure Advisor BPCs

Note: To get a list of available ID numbers, pull a list of results without specifying an ID.

API CALL URL:

https://api.cloudcheckr.com/api/best_practice.[json|xml]/get_best_practices_v2?access_key=your_access_key

REQUEST EXAMPLE:

XML:

<GetBestPracticesResponseV2
            xmlns:xsd='http://www.w3.org/2001/XMLSchema'
            xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
<BestPracticeChecks>
<BestPracticeCheckV2>
<CheckId>441</CheckId>
<Name>Contact Details on AWS Accounts Are Not Up-To-Date</Name>
<Category>Security</Category>
<Importance>High</Importance>
<CountOfResults>1</CountOfResults>
<ScanResultId>423</ScanResultId>
<Results>
<Result>Contact Details: Not Updated</Result>
</Results>
<Ignored>false</Ignored>
<IgnoredReason></IgnoredReason>
<ComplianceFrameworks>
<ComplianceFramework>
<Name>CIS Benchmark</Name>
<ComplianceChecks>
<ComplianceCheck>
<ControlNumber>1.19</ControlNumber>
<ControlName>Maintain current contact details</ControlName>
</ComplianceCheck>
</ComplianceChecks>
</ComplianceFramework>
</ComplianceFrameworks>...
</BestPracticeCheckV2>
</BestPracticeChecks>
</GetBestPracticesResponseV2>

JSON:

{
"BestPracticeChecks": {
"BestPracticeCheckV2": {
"CheckId": "441",
"Name": "Contact Details on AWS Accounts Are Not Up-To-Date",
"Category": "Security",
"Importance": "High",
"CountOfResults": "1",
"ScanResultId": "423",
"Results": {
"Result": "Contact Details: Not Updated"
},
"Ignored": "false",
"IgnoredReason": "",
"ComplianceFrameworks": {
"ComplianceFramework": {
"Name": "CIS Benchmark",
"ComplianceChecks": {
"ComplianceCheck": {
"ControlNumber": "1.19",
"ControlName": "Maintain current contact details"
}
}
}
},
"__text": "..."
}
}
}

Add Tag Rule

The API method, “add_tag_rule”, is used to add a cost tag rule.

The preferred HTTP method for this call is POST.

To add a tag rule in the user interface, choose Cost > Tagging > Tagging Rules.

Once in the Tagging Rules report, click New Rule.

INPUT PARAMETERS:

Parameter Type Description
access_key string required; standard access key
name string required; name of the tag rule
tags string required; tag_key and tag_value
regions list<string> required; list of region(s) where the tag rule will be applied
azure_consumed_services list<string> required; the Azure resource(s)
azure_subscriptions list<string> required; the Azure subscription(s)

API CALL URL:

https://api.cloudcheckr.com/api/billing.[json|xml]/add_tag_rule

REQUEST EXAMPLE:

curl -X POST \
-- https://api.cloudcheckr.com/api/billing.[json|xml]/add_tag_rule?access_key=your_access_key
-- header 'cache-control: no-cache' \
-- header 'content-type: application/[json|xml]' \
-- data '{
"name": "Azure Tag Rule",
"tags": { "TagKey": "TagValue", "TagKey2": "*" },
"region": "US East",
"azure_consumed_service": "*",
"azure_subscriptions": [ "4dc76947-2789-4149-bc29-3b7bd45ce4a8", "b9e7ac32-fcba-4090-a249-d8a240d356ac" ]
}

RESPONSE EXAMPLE:
XML:

<AddTagRuleResponse xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
              <tag_rule>
<status>
<code>200</code>
<message>Successfully created Tag Rule.</message>
<tag_rule_id>94</tag_rule_id>
</status>
</tag_rule>
</AddTagRuleResponse>

JSON:

{
"code": 200,
"message": "Successfully created Tag Rule.",
"tag_rule_id": "94"
}

Add Custom Billing Charge - Fixed

The API method, “azure_add_custom_billing_charge_fixed”, is used to add a custom billing charge that applies a fixed charge or credit in an Azure account.

To add a fixed charge or credit, go to the left navigation pane, choose Cost > Azure Partner Tools > Configure > Custom Charges, click New Custom Charge, and select Add a fixed charge or credit.

INPUT PARAMETERS:

Parameter Type Description
access_key string required; admin-level API key
startDate DateTime required; start date for the custom billing charge
endDate DateTime required/optional; end date for the custom billing charge; custom billing charges with no end date will apply until the end of time
amount decimal required; sets the fixed charge (positive value) or credit (negative value) dollar amount
oneTime string *required/optional; applies the fixed charge or credit as a one-time occurence to the custom billing charge
monthlyRecurring string *required/optional; applies the fixed credit or charge as a monthly recurring amount to the custom billing charge
name string required; name of the custom billing charge
description string required; human-friendly description of the custom billing charge
subscriptions List<string> optional; comma-separated list of subscriptions that you can apply to the charges

Note: * = one of these parameters must be defined
Note: The end date is only required if you select the monthly recurring option.

API CALL URL:

https://api.cloudcheckr.com/api/billing/[json|xml]/azure_add_custom_billing_charge_fixed

RESPONSE EXAMPLE:

curl -X POST \
--'https://localhost/api/billing/[json|xml]
/azure_add_custom_billing_charge_fixed?access_key=46YI9Z8T5JQR353JU63BM88AK99T0FIL67T93QSPX76303C2H17HXS3316CL2N50&use_cc_account_id=3' \
--header 'cache-control: no-cache' \
--header 'content-type: application/[json|xml]' \
--data '{
"description": "example custom billing charge",
"name": "example name",
"charge_value": 111.5,
"subscriptions": ["71c1d715-a1ce-48d9-b77c-03c00b4463a71","4dc76947-2789-4149-bc29-3b7bd45ce4a8", "07d18ff4-0bea-44e8-bd86-82a7df2e91bc", "8cbaba05-bfe1-426f-b4f7-7378ea754c1e"],
"startdate": "1970-01-01",
"end_date": "2063-04-05",
"is_recurring": true }
}

RESPONSE EXAMPLE:
XML:

<AzureAddCustomBillingChargeFixedResponse xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
<code>200</code>
<message>OK</message>
</AzureAddCustomBillingChargeFixedResponse>

JSON:

{
"code": "200",
"message": "OK"
}

Azure Add Custom Billing Charge – Monthly Percentage

The API method, “azure_add_custom_billing_charge_monthly_percentage”, is used to create an additional single charge or credit that is a specific percentage of the monthly bill. The charge or credit gets applied to your billing report after Azure closes the billing month.

The preferred HTTP method for this call is POST.

INPUT PARAMETERS:

Parameter Type Description
access_key string required; admin-level access key
name string required; name of the custom billing charge
description string required; summary of the custom billing charge that allows you to easily distinguish it from other charges
charge_value decimal required; sets the percentage for a credit (negative value) or a charge (positive value)
minimum_charge decimal optional; applies a minimum charge/credit threshold to the custom billing charge
maximum_charge decimal optional; applies a maximum charge/credit threshold to the custom billing charge
tier List <Tier> optional; applies the custom billing charge to a monetary tier range that you set for your customers
is_recurring boolean optional; select if you want CloudCheckr to apply your custom billing charge every month
cost_baseline string optional; selects the cost type where you want CloudCheckr to apply the custom charge
subscriptions List<string> optional; select the subscriptions where you want CloudCheckr to apply the custom billing charge

The default option is all subscriptions.

regions List<string> optional; select the regions where you want CloudCheckr to apply the custom billing charge

The default option is all regions.

This parameter accepts region IDs as valid values.

consumed_services List<string> optional; select the consumed services where you want CloudCheckr to apply the custom billing charge

The default option is all consumed services.

categories List<string> optional; select the categories where you want CloudCheckr to apply the custom billing charge

The default option is all categories.

sub_categories List<string> optional; select the sub-categories where you want CloudCheckr to apply the custom billing charge

The default option is all sub-categories.

meter_names List<string> optional; select the meter names where you want CloudCheckr to apply the custom billing charge

The default option is all meter names.

tags List<string> optional; select the tag key/value pairs where you want CloudCheckr to apply the custom billing charge

The default option is all tags.

locations List<string> optional; select the locations where you want CloudCheckr to apply the custom billing charge

The default option is all locations.

azure_custom_charge_type List<string> optional; select the Azure custom charge type
start_date DateTime required; the date that you want CloudCheckr to begin to apply the custom billing charge
end_date DateTime optional; the date that you want CloudCheckr to stop applying the custom billing charge If you want the charges to continue indefinitely, do not choose an end date.

ENDPOINT URL:

https://api.cloudcheckr.com/api/billing.[json|xml]/azure_add_custom_billing_charge_monthly_percentage

REQUEST EXAMPLE:

curl -- X POST \
-- 'https://api.cloudcheckr.com/api/billing.[json|xml]/azure_add_custom_billing_charge_monthly_percentage?access_key=your_admin_access_key' \
-- header 'cache-control: no-cache' \
-- header 'content-type: application/[json|xml]' \
-- data '{
"name":"example custom billing charge name",
"description":"example custom billing charge description",
"charge_value":10.5,
"minimum_charge":5000,
"maximum_charge":10000,
"cost_baseline":["StandardCost","ListCost","RetailCost"],
"subscriptions":"example subscription",
"regions":["1","2"],
"consumed_services":["VirtualNetwork","Compute"],
"categories":["Networking"],
"sub_categories":["PublicIPAddresses"],
"meter_names":["StandardIOTableGB"],
"tags":["environment"],
"start_date":"1970-01-01",
"endDate":"2063-04-05"
}

RESPONSE EXAMPLE:

{
"code": "200",
"message": "OK"
}

Delete Tag Rule

The API method, “delete_tag_rule”, is used to delete a cost tag rule.

The preferred HTTP method for this call is POST.

INPUT PARAMETERS:

Parameter Type Description
access_key string required, standard access key
tag_rule_id string required; tag ID

API CALL URL:

https://api.cloudcheckr.com/api/billing.[json|xml]/delete_tag_rule

REQUEST EXAMPLE:

curl -X POST \
-- https://api.cloudcheckr.com/api/billing.[json|xml]/delete_tag_rule?access_key=your_standard_access_key&tag_rule_id=78
-- header 'cache-control: no-cache' \
-- header 'content-type: application/[json|xml]' \
-- data '{
"tag_rule_id": 78,
}

RESPONSE EXAMPLE:
XML:

<DeleteTagRuleResponse xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
<tag_rule>
<status>
<code>200</code>
<message>Successfully deleted Tag Rule.</message>
<tag_rule_id>78</tag_rule_id>
</status>
</tag_rule>
</DeleteTagRuleResponse>

JSON:

{
"code": 200,
"message": "Successfully deleted Tag Rule.",
"tag_rule_id": "78"
}

Get Detailed Billing Grouped PDF

The API method, get_billing_detailed_grouped_pdf, is used to provide a PDF version of an Advanced Grouping report.

To access the Advanced Grouping report, go to the left navigation pane and choose Cost > Azure Billing > Custom Reports > Advanced Grouping.
Note:

  • The HTTP method for this call is GET.

INPUT PARAMETERS:

Parameter Type Description
access_key string required; standard access key required for all API calls
saved_filter_name string required; name of the saved filter
start DateTime required; date that you want to start to pull cost data
end DateTime required; date that you want to stop pulling cost data

API CALL URL:

https://api.cloudcheckr.com/api/ReportPdfDownload.[json|xml]/get_billing_detailed_grouped_pdf

REQUEST EXAMPLE:

curl --request GET \
--'https://api.cloudcheckr.com/api/ReportPdfDownload.[json|xml]/get_billing_detailed_grouped_pdf?access_key=[project_api_access_key]&saved_filter_name=[saved_filter_name]&start=11/22/2017&end=12/06/2017'\
--header 'cache-control: no-cache' \
--header 'content-type: application/[json|xml]'

RESPONSE EXAMPLE:
XML:

<GetBillingDetailedGroupedPdfResponse xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
<code>200</code>
<message>OK</message>
</GetBillingDetailedGroupedPdfResponse>

JSON:

    {
"code": "200",
"message": "OK"
}

List Of Changes From Change Monitoring

The API method, “get_changes”, is used to pull the list of changes in your Azure account.

The HTTP method for this call can be either GET or POST.

INPUT PARAMETERS:

Parameter Type Description
access_key string required; standard access key required for all API calls
start DateTime refines your search so that it only returns results on or after the selected Start date
end DateTime refines your search so that it only returns results up to the selected End date
resource_id string optional; allows you to limit your search results to a specific resource such as an EC2 instance ID or an S3 bucket
When making a POST request, Start and End dates are required. When making a GET request, the Start and End dates are optional.
If you do not define the Start and End date, the API call will return data from the last 30 days.

XML call:

https://api.cloudcheckr.com/api/change_monitoring.xml/get_changes?access_key=[access_key]&start=2013-11-08&end=2013-11-15&resource_id=i-123456

JSON call:

https://api.cloudcheckr.com/api/change_monitoring.json/get_changes?access_key=[access_key]&start=2013-11-08&end=2013-11-15&resource_id=i-123456

OUTPUT

XML Example:

<GetChangesResponse xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Changes>
<Change>
<ChangeType>Modified</ChangeType>
<EntityType>CloudTrailTrail</EntityType>
<Identifier>Default</Identifier>
<ServiceType>CloudTrail</ServiceType>
<ChangeFound>2013-12-10T23:17:29</ChangeFound>
<Region>us-west-2</Region>
<OldState>[{"Key":"SnsTopicName","Value":""}]</OldState>
<NewState>[{"Key":"SnsTopicName","Value":"CloudTrailOregon"}]</NewState>
</Change>
<Change>
<ChangeType>Modified</ChangeType>
<EntityType>CloudTrailTrail</EntityType>
<Identifier>Default</Identifier>
<ServiceType>CloudTrail</ServiceType>
<ChangeFound>2013-12-16T23:16:01</ChangeFound>
<Region>us-east-1</Region>
<OldState>[{"Key":"TimeLoggingStarted","Value":"12\/6\/2013 6:27:57 PM"},{"Key":"TimeLoggingStopped","Value":"12\/5\/2013 12:03:27 AM"}]</OldState>
<NewState>[{"Key":"TimeLoggingStarted","Value":"12\/16\/2013 4:53:53 PM"},{"Key":"TimeLoggingStopped","Value":"12\/16\/2013 4:53:51 PM"}]</NewState>
</Change>
</Changes>
<FromDate>2013-11-17T00:00:00</FromDate>
<ToDate>2013-12-17T23:59:59</ToDate>
</GetChangesResponse>

JSON Example:

{
"Changes":[
{
"ChangeType":"Modified",
"EntityType":"CloudTrailTrail",
"Identifier":"Default",
"ServiceType":"CloudTrail",
"ChangeFound":"2013-12-10T23:17:29",
"Region":"us-west-2",
"OldState":"[{\"Key\":\"SnsTopicName\",\"Value\":\"\"}]",
"NewState":"[{\"Key\":\"SnsTopicName\",\"Value\":\"CloudTrailOregon\"}]"
},
{
"ChangeType":"Modified",
"EntityType":"CloudTrailTrail",
"Identifier":"Default",
"ServiceType":"CloudTrail",
"ChangeFound":"2013-12-16T23:16:01",
"Region":"us-east-1",
"OldState":"[{\"Key\":\"TimeLoggingStarted\",\"Value\":\"12\\/6\\/2013 6:27:57 PM\"},{\"Key\":\"TimeLoggingStopped\",\"Value\":\"12\\/5\\/2013 12:03:27 AM\"}]",
"NewState":"[{\"Key\":\"TimeLoggingStarted\",\"Value\":\"12\\/16\\/2013 4:53:53 PM\"},{\"Key\":\"TimeLoggingStopped\",\"Value\":\"12\\/16\\/2013 4:53:51 PM\"}]"
}
],
"FromDate":"2013-11-17T00:00:00",
"ToDate":"2013-12-17T23:59:59"
}

Get Detailed Billing with Grouping by Currency

The API call, “get_detailed_billing_with_grouping_by_currency”, is used to pull results from a saved filter in the Advanced Grouping report. It is identical to the “get_detailed_billing_with_grouping_v2” call but includes an additional grouping on currency.

INPUT PARAMETERS:

Parameter Type Description
access_key string required; standard access key required for all API calls
saved_filter_name string required; the name of the saved filter from which the API will pull the results
with_costs_by_group string optional; retrieves costs per group; accepts true/false; defaults to true if not specified
with_costs_by_time string optional; retrieves costs per time period; accepts true/false; defaults to true if not specified
start string optional; returns costs after the specified date
end string optional; returns costs before the specified date

If you do not define the Start and End dates, CloudCheckr will return the last 14 days.

API CALL URL:

https://api.cloudcheckr.com/api/billing.[json|xml]/get_detailed_billing_with_grouping_by_currency?access_key=your_access_key?saved_filter_name=my_saved_filter

CURL REQUEST EXAMPLE:

curl - X GET \
- https://api.cloudcheckr.com/api/billing.json/get_detailed_billing_with_grouping_by_currency?access_key=your_access_key?saved_filter_name=my_saved_filter \
- header 'cache-control: no-cache' \
- header 'content-type: application/[json|xml]' \

             <DetailedBillingWithGroupingByCurrency>
<element>
<Average>7.668917</Average>
<CostsByGroup>
<element>
<Cost>2.9006261455</Cost>
<FriendlyName />
<GroupName>Customer</GroupName>
<GroupValue>CloudCheckr CSP testing</GroupValue>
<NextLevel>
<element>
<Cost>0.0004649227</Cost>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue>Zone 1</GroupValue>
<NextLevel>
<element>
<Cost>0.0004649227</Cost>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Storage</GroupValue>
<NextLevel />
<UsageQuantity>0</UsageQuantity>
</element>
</NextLevel>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>2.8050000000</Cost>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue>US East</GroupValue>
<NextLevel>
<element>
<Cost>2.8050000000</Cost>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Compute</GroupValue>
<NextLevel />
<UsageQuantity>0</UsageQuantity>
</element>
</NextLevel>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0951612228</Cost>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue />
<NextLevel>
<element>
<Cost>0.0951612228</Cost>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Storage</GroupValue>
<NextLevel />
<UsageQuantity>0</UsageQuantity>
</element>
</NextLevel>
<UsageQuantity>0</UsageQuantity>
</element>
</NextLevel>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>50.7817047568</Cost>
<FriendlyName />
<GroupName>Customer</GroupName>
<GroupValue>CloudCheckr</GroupValue>
<NextLevel>
<element>
<Cost>0.0492180116</Cost>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue>Zone 1</GroupValue>
<NextLevel>
<element>
<Cost>0.0390125433</Cost>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Compute</GroupValue>
<NextLevel />
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0102054683</Cost>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Storage</GroupValue>
<NextLevel />
<UsageQuantity>0</UsageQuantity>
</element>
</NextLevel>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>6.2353597152</Cost>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue>US East</GroupValue>
<NextLevel>
<element>
<Cost>6.2353597152</Cost>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Compute</GroupValue>
<NextLevel />
<UsageQuantity>0</UsageQuantity>
</element>
</NextLevel>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>20.0471858352</Cost>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue>US Central</GroupValue>
<NextLevel>
<element>
<Cost>0.4578739200</Cost>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Compute</GroupValue>
<NextLevel />
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>19.5891000000</Cost>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Redis Cache</GroupValue>
<NextLevel />
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0002119152</Cost>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Storage</GroupValue>
<NextLevel />
<UsageQuantity>0</UsageQuantity>
</element>
</NextLevel>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0249019740</Cost>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue>Zone 2</GroupValue>
<NextLevel>
<element>
<Cost>0.0249019740</Cost>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Compute</GroupValue>
<NextLevel />
<UsageQuantity>0</UsageQuantity>
</element>
</NextLevel>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>11.7221393088</Cost>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue>JA East</GroupValue>
<NextLevel>
<element> <Cost>11.7221393088</Cost>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Compute</GroupValue>
<NextLevel />
<UsageQuantity>0</UsageQuantity>
</element>
</NextLevel>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>4.3398872408</Cost>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue>UK West</GroupValue>
<NextLevel>
<element>
<Cost>4.3398872408</Cost>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Compute</GroupValue>
<NextLevel />
<UsageQuantity>0</UsageQuantity>
</element>
</NextLevel>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>4.9237489272</Cost>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue />
<NextLevel>
<element>
<Cost>0.6225815221</Cost>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Compute</GroupValue>
<NextLevel />
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.8781208332</Cost>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>SQL Server</GroupValue>
<NextLevel />
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.5749075855</Cost>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Storage</GroupValue>
<NextLevel />
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>1.7404600000</Cost>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Virtual Network</GroupValue>
<NextLevel />
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>1.1076789864</Cost>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Recovery Services</GroupValue>
<NextLevel />
<UsageQuantity>0</UsageQuantity>
</element>
</NextLevel>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>3.4392637440</Cost>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue>US West 2</GroupValue>
<NextLevel>
<element>
<Cost>3.4392637440</Cost>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Compute</GroupValue>
<NextLevel />
<UsageQuantity>0</UsageQuantity>
</element>
</NextLevel>
<UsageQuantity>0</UsageQuantity>
</element>
</NextLevel>
<UsageQuantity>0</UsageQuantity>
</element>
</CostsByGroup>
<CostsByTime>
<element>
<CostDates>
<element>
<Cost>2.8152000000</Cost>
<Date>12/28/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>2.8152000000</Cost>
<Date>12/29/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>2.8152000000</Cost>
<Date>12/30/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>2.8152000000</Cost>
<Date>12/31/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>2.8152000000</Cost>
<Date>1/1/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>2.8152000000</Cost>
<Date>1/2/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>2.6979000000</Cost>
<Date>1/3/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
</CostDates>
<Groups>
<element>
<FriendlyName />
<GroupName>Customer</GroupName>
<GroupValue>CloudCheckr </GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue>US Central</GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Redis Cache</GroupValue>
</element>
</Groups>
</element>
<element>
<CostDates>
<element>
<Cost>0.0658022400</Cost>
<Date>12/28/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0658022400</Cost>
<Date>12/29/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0658022400</Cost>
<Date>12/30/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0658022400</Cost>
<Date>12/31/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0658022400</Cost>
<Date>1/1/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0658022400</Cost>
<Date>1/2/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0630604800</Cost>
<Date>1/3/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
</CostDates>
<Groups>
<element>
<FriendlyName />
<GroupName>Customer</GroupName>
<GroupValue>CloudCheckr CSP testing - Nada</GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue>US Central</GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Compute</GroupValue>
</element>
</Groups>
</element>
<element>
<CostDates>
<element>
<Cost>0.0000302736</Cost>
<Date>12/28/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0000214336</Cost>
<Date>12/29/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0000302736</Cost>
<Date>12/30/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0000302736</Cost>
<Date>12/31/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0000302736</Cost>
<Date>1/1/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0000302736</Cost>
<Date>1/2/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0000391136</Cost>
<Date>1/3/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
</CostDates>
<Groups>
<element>
<FriendlyName />
<GroupName>Customer</GroupName>
<GroupValue>CloudCheckr</GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue>US Central</GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Storage</GroupValue>
</element>
</Groups>
</element>
<element>
<CostDates>
<element>
<Cost>1.6945134336</Cost>
<Date>12/28/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>1.6945134336</Cost>
<Date>12/29/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>1.6945134336</Cost>
<Date>12/30/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>1.6945134336</Cost>
<Date>12/31/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>1.6945134336</Cost>
<Date>1/1/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>1.6945134336</Cost>
<Date>1/2/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>1.5550587072</Cost>
<Date>1/3/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
</CostDates>
<Groups>
<element>
<FriendlyName />
<GroupName>Customer</GroupName>
<GroupValue>CloudCheckr </GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue>JA East</GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Compute</GroupValue>
</element>
</Groups>
</element>
<element>
<CostDates>
<element>
<Cost>0.8957055744</Cost>
<Date>12/28/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.8957055744</Cost>
<Date>12/29/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.8957055744</Cost>
<Date>12/30/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.8957055744</Cost>
<Date>12/31/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.8957055744</Cost>
<Date>1/1/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.8957055744</Cost>
<Date>1/2/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.8611262688</Cost>
<Date>1/3/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
</CostDates>
<Groups>
<element>
<FriendlyName />
<GroupName>Customer</GroupName>
<GroupValue>CloudCheckr </GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue>US East</GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Compute</GroupValue>
</element>
</Groups>
</element>
<element>
<CostDates>
<element>
<Cost>0.2609500000</Cost>
<Date>12/28/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.2622250000</Cost>
<Date>12/29/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.2618000000</Cost>
<Date>12/30/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.2533850000</Cost>
<Date>12/31/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.2571250000</Cost>
<Date>1/1/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.2584000000</Cost>
<Date>1/2/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.1865750000</Cost>
<Date>1/3/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
</CostDates>
<Groups>
<element>
<FriendlyName />
<GroupName>Customer</GroupName>
<GroupValue>CloudCheckr </GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue />
</element>
<element>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Virtual Network</GroupValue>
</element>
</Groups>
</element>
<element>
<CostDates>
<element> <Cost>0.1582398552</Cost>
<Date>12/28/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.1582398552</Cost>
<Date>12/29/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.1582398552</Cost>
<Date>12/30/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.1582398552</Cost>
<Date>12/31/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.1582398552</Cost>
<Date>1/1/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.1582398552</Cost>
<Date>1/2/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.1582398552</Cost>
<Date>1/3/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
</CostDates>
<Groups>
<element>
<FriendlyName />
<GroupName>Customer</GroupName>
<GroupValue>CloudCheckr </GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue />
</element>
<element>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Recovery Services</GroupValue>
</element>
</Groups>
</element>
<element>
<CostDates>
<element>
<Cost>0.1368500000</Cost>
<Date>12/28/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.1368500000</Cost>
<Date>12/29/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.1368500000</Cost>
<Date>12/30/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.1368500000</Cost>
<Date>12/31/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.1368500000</Cost>
<Date>1/1/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.1368499999</Cost>
<Date>1/2/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0570208333</Cost>
<Date>1/3/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
</CostDates>
<Groups>
<element>
<FriendlyName />
<GroupName>Customer</GroupName>
<GroupValue>CloudCheckr </GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue />
</element>
<element>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>SQL Server</GroupValue>
</element>
</Groups>
</element>
<element>
<CostDates>
<element>
<Cost>0.0904352824</Cost>
<Date>12/28/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0905756174</Cost>
<Date>12/29/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0904266550</Cost>
<Date>12/30/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0901460275</Cost>
<Date>12/31/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0903426325</Cost>
<Date>1/1/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0906094049</Cost>
<Date>1/2/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0800459024</Cost>
<Date>1/3/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
</CostDates>
<Groups>
<element>
<FriendlyName />
<GroupName>Customer</GroupName>
<GroupValue>CloudCheckr </GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue />
</element>
<element>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Compute</GroupValue>
</element>
</Groups>
</element>
<element>
<CostDates>
<element>
<Cost>0.0826029966</Cost>
<Date>12/28/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0826012651</Cost>
<Date>12/29/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0826037514</Cost>
<Date>12/30/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0826072525</Cost>
<Date>12/31/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0826060464</Cost>
<Date>1/1/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0826036746</Cost>
<Date>1/2/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0792825989</Cost>
<Date>1/3/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
</CostDates>
<Groups>
<element>
<FriendlyName />
<GroupName>Customer</GroupName>
<GroupValue>CloudCheckr </GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue />
</element>
<element>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Storage</GroupValue>
</element>
</Groups>
</element>
<element>
<CostDates>
<element>
<Cost>0.6263837951</Cost>
<Date>12/28/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.6263837951</Cost>
<Date>12/29/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.6263837951</Cost>
<Date>12/30/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.6263837951</Cost>
<Date>12/31/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.6263837951</Cost>
<Date>1/1/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.6263837950</Cost>
<Date>1/2/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element> <Cost>0.5815844703</Cost>
<Date>1/3/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
</CostDates>
<Groups>
<element>
<FriendlyName />
<GroupName>Customer</GroupName>
<GroupValue>CloudCheckr </GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue>UK West</GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Compute</GroupValue>
</element>
</Groups>
</element>
<element>
<CostDates>
<element>
<Cost>0.4913233920</Cost>
<Date>12/28/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.4913233920</Cost>
<Date>12/29/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.4913233920</Cost>
<Date>12/30/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.4913233920</Cost>
<Date>12/31/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.4913233920</Cost>
<Date>1/1/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.4913233920</Cost>
<Date>1/2/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.4913233920</Cost>
<Date>1/3/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
</CostDates>
<Groups>
<element>
<FriendlyName />
<GroupName>Customer</GroupName>
<GroupValue>CloudCheckr </GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue>US West 2</GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Compute</GroupValue>
</element>
</Groups>
</element>
<element>
<CostDates>
<element>
<Cost>0.0058067757</Cost>
<Date>12/28/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0069838379</Cost>
<Date>12/29/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0059088267</Cost>
<Date>12/30/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0051658511</Cost>
<Date>12/31/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0046223926</Cost>
<Date>1/1/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0050415409</Cost>
<Date>1/2/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0054833184</Cost>
<Date>1/3/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
</CostDates>
<Groups>
<element>
<FriendlyName />
<GroupName>Customer</GroupName>
<GroupValue>CloudCheckr </GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue>Zone 1</GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Compute</GroupValue>
</element>
</Groups>
</element>
<element>
<CostDates>
<element>
<Cost>0.0015582741</Cost>
<Date>12/28/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0013454462</Cost>
<Date>12/29/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0012658759</Cost>
<Date>12/30/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0016972262</Cost>
<Date>12/31/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0013881892</Cost>
<Date>1/1/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0014032751</Cost>
<Date>1/2/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0015471816</Cost>
<Date>1/3/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
</CostDates>
<Groups>
<element>
<FriendlyName />
<GroupName>Customer</GroupName>
<GroupValue>CloudCheckr </GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue>Zone 1</GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Storage</GroupValue>
</element>
</Groups>
</element>
<element>
<CostDates>
<element>
<Cost>0.0036354840</Cost>
<Date>12/28/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0034879920</Cost>
<Date>12/29/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0036625140</Cost>
<Date>12/30/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0031587360</Cost>
<Date>12/31/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0037779780</Cost>
<Date>1/1/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0036813840</Cost>
<Date>1/2/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0034978860</Cost>
<Date>1/3/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
</CostDates>
<Groups>
<element>
<FriendlyName />
<GroupName>Customer</GroupName>
<GroupValue>CloudCheckr </GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue>Zone 2</GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Compute</GroupValue>
</element>
</Groups>
</element>
<element>
<CostDates>
<element>
<Cost>0.4080000000</Cost>
<Date>12/28/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.4080000000</Cost>
<Date>12/29/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.4080000000</Cost>
<Date>12/30/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.4080000000</Cost>
<Date>12/31/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.4080000000</Cost>
<Date>1/1/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.4080000000</Cost>
<Date>1/2/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.3570000000</Cost>
<Date>1/3/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
</CostDates>
<Groups>
<element>
<FriendlyName />
<GroupName>Customer</GroupName>
<GroupValue>CloudCheckr </GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue>US East</GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Compute</GroupValue>
</element>
</Groups>
</element>
<element>
<CostDates>
<element>
<Cost>0.0132805219</Cost>
<Date>12/28/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0132799100</Cost>
<Date>12/29/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0132805831</Cost>
<Date>12/30/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0132802771</Cost>
<Date>12/31/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0132807360</Cost>
<Date>1/1/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0154775406</Cost>
<Date>1/2/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0132816541</Cost>
<Date>1/3/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
</CostDates>
<Groups>
<element>
<FriendlyName />
<GroupName>Customer</GroupName>
<GroupValue>CloudCheckr</GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue />
</element>
<element>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Storage</GroupValue>
</element>
</Groups>
</element>
<element>
<CostDates>
<element>
<Cost>0.0000645582</Cost>
<Date>12/28/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0000663330</Cost>
<Date>12/29/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0000507296</Cost>
<Date>12/30/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0000840071</Cost>
<Date>12/31/2019 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0000661111</Cost>
<Date>1/1/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0000669246</Cost>
<Date>1/2/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
<element>
<Cost>0.0000662591</Cost>
<Date>1/3/2020 12:00:00 AM</Date>
<UsageQuantity>0</UsageQuantity>
</element>
</CostDates>
<Groups>
<element>
<FriendlyName />
<GroupName>Customer</GroupName>
<GroupValue>CloudCheckr </GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Meter Region</GroupName>
<GroupValue>Zone 1</GroupValue>
</element>
<element>
<FriendlyName />
<GroupName>Consumed Service</GroupName>
<GroupValue>Storage</GroupValue>
</element>
</Groups>
</element>
</CostsByTime>
<Currency>USD</Currency>
<Max>7.752605</Max>
<Min>7.192133</Min>
<Total>53.68233</Total>
</element>
</DetailedBillingWithGroupingByCurrency>
{
"Currency":"USD",
"Total":53.6823309023,
"Max":7.7526051255,
"Min":7.1921329209,
"Average":7.66891709470207,
"CostsByGroup":[
{
"GroupName":"Customer",
"GroupValue":"CloudCheckr CSP testing",
"FriendlyName":"",
"Cost":"2.9006261455",
"UsageQuantity":"0",
"NextLevel":[
{
"GroupName":"Meter Region",
"GroupValue":"Zone 1",
"FriendlyName":"",
"Cost":"0.0004649227",
"UsageQuantity":"0",
"NextLevel":[
{
"GroupName":"Consumed Service",
"GroupValue":"Storage",
"FriendlyName":"",
"Cost":"0.0004649227",
"UsageQuantity":"0",
"NextLevel":[
]
}
]
},
{
"GroupName":"Meter Region",
"GroupValue":"US East",
"FriendlyName":"",
"Cost":"2.8050000000",
"UsageQuantity":"0",
"NextLevel":[
{
"GroupName":"Consumed Service",
"GroupValue":"Compute",
"FriendlyName":"",
"Cost":"2.8050000000",
"UsageQuantity":"0",
"NextLevel":[
]
}
]
},
{
"GroupName":"Meter Region",
"GroupValue":"",
"FriendlyName":"",
"Cost":"0.0951612228",
"UsageQuantity":"0",
"NextLevel":[
{
"GroupName":"Consumed Service",
"GroupValue":"Storage",
"FriendlyName":"",
"Cost":"0.0951612228",
"UsageQuantity":"0",
"NextLevel":[
]
}
]
}
]
},
{
"GroupName":"Customer",
"GroupValue":"CloudCheckr CSP testing - Nada",
"FriendlyName":"",
"Cost":"50.7817047568",
"UsageQuantity":"0",
"NextLevel":[
{
"GroupName":"Meter Region",
"GroupValue":"Zone 1",
"FriendlyName":"",
"Cost":"0.0492180116",
"UsageQuantity":"0",
"NextLevel":[
{
"GroupName":"Consumed Service",
"GroupValue":"Compute",
"FriendlyName":"",
"Cost":"0.0390125433",
"UsageQuantity":"0",
"NextLevel":[
]
},
{
"GroupName":"Consumed Service",
"GroupValue":"Storage",
"FriendlyName":"",
"Cost":"0.0102054683",
"UsageQuantity":"0",
"NextLevel":[
]
}
]
},
{
"GroupName":"Meter Region",
"GroupValue":"US East",
"FriendlyName":"",
"Cost":"6.2353597152",
"UsageQuantity":"0",
"NextLevel":[
{
"GroupName":"Consumed Service",
"GroupValue":"Compute",
"FriendlyName":"",
"Cost":"6.2353597152",
"UsageQuantity":"0",
"NextLevel":[
]
}
]
},
{
"GroupName":"Meter Region",
"GroupValue":"US Central",
"FriendlyName":"",
"Cost":"20.0471858352",
"UsageQuantity":"0",
"NextLevel":[
{
"GroupName":"Consumed Service",
"GroupValue":"Compute",
"FriendlyName":"",
"Cost":"0.4578739200",
"UsageQuantity":"0",
"NextLevel":[
]
},
{
"GroupName":"Consumed Service",
"GroupValue":"Redis Cache",
"FriendlyName":"",
"Cost":"19.5891000000",
"UsageQuantity":"0",
"NextLevel":[
]
},
{
"GroupName":"Consumed Service",
"GroupValue":"Storage",
"FriendlyName":"",
"Cost":"0.0002119152",
"UsageQuantity":"0",
"NextLevel":[
]
}
]
},
{
"GroupName":"Meter Region",
"GroupValue":"Zone 2",
"FriendlyName":"",
"Cost":"0.0249019740",
"UsageQuantity":"0",
"NextLevel":[
{
"GroupName":"Consumed Service",
"GroupValue":"Compute",
"FriendlyName":"",
"Cost":"0.0249019740",
"UsageQuantity":"0",
"NextLevel":[
]
}
]
},
{
"GroupName":"Meter Region",
"GroupValue":"JA East",
"FriendlyName":"",
"Cost":"11.7221393088",
"UsageQuantity":"0",
"NextLevel":[
{
"GroupName":"Consumed Service",
"GroupValue":"Compute",
"FriendlyName":"",
"Cost":"11.7221393088",
"UsageQuantity":"0",
"NextLevel":[
]
}
]
},
{
"GroupName":"Meter Region",
"GroupValue":"UK West",
"FriendlyName":"",
"Cost":"4.3398872408",
"UsageQuantity":"0",
"NextLevel":[
{
"GroupName":"Consumed Service",
"GroupValue":"Compute",
"FriendlyName":"",
"Cost":"4.3398872408",
"UsageQuantity":"0",
"NextLevel":[
]
}
]
},
{
"GroupName":"Meter Region",
"GroupValue":"",
"FriendlyName":"",
"Cost":"4.9237489272",
"UsageQuantity":"0",
"NextLevel":[
{
"GroupName":"Consumed Service",
"GroupValue":"Compute",
"FriendlyName":"",
"Cost":"0.6225815221",
"UsageQuantity":"0",
"NextLevel":[
]
},
{
"GroupName":"Consumed Service",
"GroupValue":"SQL Server",
"FriendlyName":"",
"Cost":"0.8781208332",
"UsageQuantity":"0",
"NextLevel":[
]
},
{
"GroupName":"Consumed Service",
"GroupValue":"Storage",
"FriendlyName":"",
"Cost":"0.5749075855",
"UsageQuantity":"0",
"NextLevel":[
]
},
{
"GroupName":"Consumed Service",
"GroupValue":"Virtual Network",
"FriendlyName":"",
"Cost":"1.7404600000",
"UsageQuantity":"0",
"NextLevel":[
]
},
{
"GroupName":"Consumed Service",
"GroupValue":"Recovery Services",
"FriendlyName":"",
"Cost":"1.1076789864",
"UsageQuantity":"0",
"NextLevel":[
]
}
]
},
{
"GroupName":"Meter Region",
"GroupValue":"US West 2",
"FriendlyName":"",
"Cost":"3.4392637440",
"UsageQuantity":"0",
"NextLevel":[
{
"GroupName":"Consumed Service",
"GroupValue":"Compute",
"FriendlyName":"",
"Cost":"3.4392637440",
"UsageQuantity":"0",
"NextLevel":[
]
}
]
}
]
}
],
"CostsByTime":[
{
"Groups":[
{
"GroupName":"Customer",
"GroupValue":"CloudCheckr",
"FriendlyName":""
},
{
"GroupName":"Meter Region",
"GroupValue":"US Central",
"FriendlyName":""
},
{
"GroupName":"Consumed Service",
"GroupValue":"Redis Cache",
"FriendlyName":""
}
],
"CostDates":[
{
"Date":"12/28/2019 12:00:00 AM",
"Cost":"2.8152000000",
"UsageQuantity":"0"
},
{
"Date":"12/29/2019 12:00:00 AM",
"Cost":"2.8152000000",
"UsageQuantity":"0"
},
{
"Date":"12/30/2019 12:00:00 AM",
"Cost":"2.8152000000",
"UsageQuantity":"0"
},
{
"Date":"12/31/2019 12:00:00 AM",
"Cost":"2.8152000000",
"UsageQuantity":"0"
},
{
"Date":"1/1/2020 12:00:00 AM",
"Cost":"2.8152000000",
"UsageQuantity":"0"
},
{
"Date":"1/2/2020 12:00:00 AM",
"Cost":"2.8152000000",
"UsageQuantity":"0"
},
{
"Date":"1/3/2020 12:00:00 AM",
"Cost":"2.6979000000",
"UsageQuantity":"0"
}
]
},
{
"Groups":[
{
"GroupName":"Customer",
"GroupValue":"CloudCheckr",
"FriendlyName":""
},
{
"GroupName":"Meter Region",
"GroupValue":"US Central",
"FriendlyName":""
},
{
"GroupName":"Consumed Service",
"GroupValue":"Compute",
"FriendlyName":""
}
],
"CostDates":[
{
"Date":"12/28/2019 12:00:00 AM",
"Cost":"0.0658022400",
"UsageQuantity":"0"
},
{
"Date":"12/29/2019 12:00:00 AM",
"Cost":"0.0658022400",
"UsageQuantity":"0"
},
{
"Date":"12/30/2019 12:00:00 AM",
"Cost":"0.0658022400",
"UsageQuantity":"0"
},
{
"Date":"12/31/2019 12:00:00 AM",
"Cost":"0.0658022400",
"UsageQuantity":"0"
},
{
"Date":"1/1/2020 12:00:00 AM",
"Cost":"0.0658022400",
"UsageQuantity":"0"
},
{
"Date":"1/2/2020 12:00:00 AM",
"Cost":"0.0658022400",
"UsageQuantity":"0"
},
{
"Date":"1/3/2020 12:00:00 AM",
"Cost":"0.0630604800",
"UsageQuantity":"0"
}
]
},
{
"Groups":[
{
"GroupName":"Customer",
"GroupValue":"CloudCheckr",
"FriendlyName":""
},
{
"GroupName":"Meter Region",
"GroupValue":"US Central",
"FriendlyName":""
},
{
"GroupName":"Consumed Service",
"GroupValue":"Storage",
"FriendlyName":""
}
],
"CostDates":[
{
"Date":"12/28/2019 12:00:00 AM",
"Cost":"0.0000302736",
"UsageQuantity":"0"
},
{
"Date":"12/29/2019 12:00:00 AM",
"Cost":"0.0000214336",
"UsageQuantity":"0"
},
{
"Date":"12/30/2019 12:00:00 AM",
"Cost":"0.0000302736",
"UsageQuantity":"0"
},
{
"Date":"12/31/2019 12:00:00 AM",
"Cost":"0.0000302736",
"UsageQuantity":"0"
},
{
"Date":"1/1/2020 12:00:00 AM",
"Cost":"0.0000302736",
"UsageQuantity":"0"
},
{
"Date":"1/2/2020 12:00:00 AM",
"Cost":"0.0000302736",
"UsageQuantity":"0"
},
{
"Date":"1/3/2020 12:00:00 AM",
"Cost":"0.0000391136",
"UsageQuantity":"0"
}
]
},
{
"Groups":[
{
"GroupName":"Customer",
"GroupValue":"CloudCheckr",
"FriendlyName":""
},
{
"GroupName":"Meter Region",
"GroupValue":"JA East",
"FriendlyName":""
},
{
"GroupName":"Consumed Service",
"GroupValue":"Compute",
"FriendlyName":""
}
],
"CostDates":[
{
"Date":"12/28/2019 12:00:00 AM",
"Cost":"1.6945134336",
"UsageQuantity":"0"
},
{
"Date":"12/29/2019 12:00:00 AM",
"Cost":"1.6945134336",
"UsageQuantity":"0"
},
{
"Date":"12/30/2019 12:00:00 AM",
"Cost":"1.6945134336",
"UsageQuantity":"0"
},
{
"Date":"12/31/2019 12:00:00 AM",
"Cost":"1.6945134336",
"UsageQuantity":"0"
},
{
"Date":"1/1/2020 12:00:00 AM",
"Cost":"1.6945134336",
"UsageQuantity":"0"
},
{
"Date":"1/2/2020 12:00:00 AM",
"Cost":"1.6945134336",
"UsageQuantity":"0"
},
{
"Date":"1/3/2020 12:00:00 AM",
"Cost":"1.5550587072",
"UsageQuantity":"0"
}
]
},
{
"Groups":[
{
"GroupName":"Customer",
"GroupValue":"CloudCheckr",
"FriendlyName":""
},
{
"GroupName":"Meter Region",
"GroupValue":"US East",
"FriendlyName":""
},
{
"GroupName":"Consumed Service",
"GroupValue":"Compute",
"FriendlyName":""
}
],
"CostDates":[
{
"Date":"12/28/2019 12:00:00 AM",
"Cost":"0.8957055744",
"UsageQuantity":"0"
},
{
"Date":"12/29/2019 12:00:00 AM",
"Cost":"0.8957055744",
"UsageQuantity":"0"
},
{
"Date":"12/30/2019 12:00:00 AM",
"Cost":"0.8957055744",
"UsageQuantity":"0"
},
{
"Date":"12/31/2019 12:00:00 AM",
"Cost":"0.8957055744",
"UsageQuantity":"0"
},
{
"Date":"1/1/2020 12:00:00 AM",
"Cost":"0.8957055744",
"UsageQuantity":"0"
},
{
"Date":"1/2/2020 12:00:00 AM",
"Cost":"0.8957055744",
"UsageQuantity":"0"
},
{
"Date":"1/3/2020 12:00:00 AM",
"Cost":"0.8611262688",
"UsageQuantity":"0"
}
]
},
{
"Groups":[
{
"GroupName":"Customer",
"GroupValue":"CloudCheckr CSP testing - Nada",
"FriendlyName":""
},
{
"GroupName":"Meter Region",
"GroupValue":"",
"FriendlyName":""
},
{
"GroupName":"Consumed Service",
"GroupValue":"Virtual Network",
"FriendlyName":""
}
],
"CostDates":[
{
"Date":"12/28/2019 12:00:00 AM",
"Cost":"0.2609500000",
"UsageQuantity":"0"
},
{
"Date":"12/29/2019 12:00:00 AM",
"Cost":"0.2622250000",
"UsageQuantity":"0"
},
{
"Date":"12/30/2019 12:00:00 AM",
"Cost":"0.2618000000",
"UsageQuantity":"0"
},
{
"Date":"12/31/2019 12:00:00 AM",
"Cost":"0.2533850000",
"UsageQuantity":"0"
},
{
"Date":"1/1/2020 12:00:00 AM",
"Cost":"0.2571250000",
"UsageQuantity":"0"
},
{
"Date":"1/2/2020 12:00:00 AM",
"Cost":"0.2584000000",
"UsageQuantity":"0"
},
{
"Date":"1/3/2020 12:00:00 AM",
"Cost":"0.1865750000",
"UsageQuantity":"0"
}
]
},
{
"Groups":[
{
"GroupName":"Customer",
"GroupValue":"CloudCheckr",
"FriendlyName":""
},
{
"GroupName":"Meter Region",
"GroupValue":"",
"FriendlyName":""
},
{
"GroupName":"Consumed Service",
"GroupValue":"Recovery Services",
"FriendlyName":""
}
],
"CostDates":[
{
"Date":"12/28/2019 12:00:00 AM",
"Cost":"0.1582398552",
"UsageQuantity":"0"
},
{
"Date":"12/29/2019 12:00:00 AM",
"Cost":"0.1582398552",
"UsageQuantity":"0"
},
{
"Date":"12/30/2019 12:00:00 AM",
"Cost":"0.1582398552",
"UsageQuantity":"0"
},
{
"Date":"12/31/2019 12:00:00 AM",
"Cost":"0.1582398552",
"UsageQuantity":"0"
},
{
"Date":"1/1/2020 12:00:00 AM",
"Cost":"0.1582398552",
"UsageQuantity":"0"
},
{
"Date":"1/2/2020 12:00:00 AM",
"Cost":"0.1582398552",
"UsageQuantity":"0"
},
{
"Date":"1/3/2020 12:00:00 AM",
"Cost":"0.1582398552",
"UsageQuantity":"0"
}
]
},
{
"Groups":[
{
"GroupName":"Customer",
"GroupValue":"CloudCheckr",
"FriendlyName":""
},
{
"GroupName":"Meter Region",
"GroupValue":"",
"FriendlyName":""
},
{
"GroupName":"Consumed Service",
"GroupValue":"SQL Server",
"FriendlyName":""
}
],
"CostDates":[
{
"Date":"12/28/2019 12:00:00 AM",
"Cost":"0.1368500000",
"UsageQuantity":"0"
},
{
"Date":"12/29/2019 12:00:00 AM",
"Cost":"0.1368500000",
"UsageQuantity":"0"
},
{
"Date":"12/30/2019 12:00:00 AM",
"Cost":"0.1368500000",
"UsageQuantity":"0"
},
{
"Date":"12/31/2019 12:00:00 AM",
"Cost":"0.1368500000",
"UsageQuantity":"0"
},
{
"Date":"1/1/2020 12:00:00 AM",
"Cost":"0.1368500000",
"UsageQuantity":"0"
},
{
"Date":"1/2/2020 12:00:00 AM",
"Cost":"0.1368499999",
"UsageQuantity":"0"
},
{
"Date":"1/3/2020 12:00:00 AM",
"Cost":"0.0570208333",
"UsageQuantity":"0"
}
]
},
{
"Groups":[
{
"GroupName":"Customer",
"GroupValue":"CloudCheckr",
"FriendlyName":""
},
{
"GroupName":"Meter Region",
"GroupValue":"",
"FriendlyName":""
},
{
"GroupName":"Consumed Service",
"GroupValue":"Compute",
"FriendlyName":""
}
],
"CostDates":[
{
"Date":"12/28/2019 12:00:00 AM",
"Cost":"0.0904352824",
"UsageQuantity":"0"
},
{
"Date":"12/29/2019 12:00:00 AM",
"Cost":"0.0905756174",
"UsageQuantity":"0"
},
{
"Date":"12/30/2019 12:00:00 AM",
"Cost":"0.0904266550",
"UsageQuantity":"0"
},
{
"Date":"12/31/2019 12:00:00 AM",
"Cost":"0.0901460275",
"UsageQuantity":"0"
},
{
"Date":"1/1/2020 12:00:00 AM",
"Cost":"0.0903426325",
"UsageQuantity":"0"
},
{
"Date":"1/2/2020 12:00:00 AM",
"Cost":"0.0906094049",
"UsageQuantity":"0"
},
{
"Date":"1/3/2020 12:00:00 AM",
"Cost":"0.0800459024",
"UsageQuantity":"0"
}
]
},
{
"Groups":[
{
"GroupName":"Customer",
"GroupValue":"CloudCheckr",
"FriendlyName":""
},
{
"GroupName":"Meter Region",
"GroupValue":"",
"FriendlyName":""
},
{
"GroupName":"Consumed Service",
"GroupValue":"Storage",
"FriendlyName":""
}
],
"CostDates":[
{
"Date":"12/28/2019 12:00:00 AM",
"Cost":"0.0826029966",
"UsageQuantity":"0"
},
{
"Date":"12/29/2019 12:00:00 AM",
"Cost":"0.0826012651",
"UsageQuantity":"0"
},
{
"Date":"12/30/2019 12:00:00 AM",
"Cost":"0.0826037514",
"UsageQuantity":"0"
},
{
"Date":"12/31/2019 12:00:00 AM",
"Cost":"0.0826072525",
"UsageQuantity":"0"
},
{
"Date":"1/1/2020 12:00:00 AM",
"Cost":"0.0826060464",
"UsageQuantity":"0"
},
{
"Date":"1/2/2020 12:00:00 AM",
"Cost":"0.0826036746",
"UsageQuantity":"0"
},
{
"Date":"1/3/2020 12:00:00 AM",
"Cost":"0.0792825989",
"UsageQuantity":"0"
}
]
},
{
"Groups":[
{
"GroupName":"Customer",
"GroupValue":"CloudCheckr",
"FriendlyName":""
},
{
"GroupName":"Meter Region",
"GroupValue":"UK West",
"FriendlyName":""
},
{
"GroupName":"Consumed Service",
"GroupValue":"Compute",
"FriendlyName":""
}
],
"CostDates":[
{
"Date":"12/28/2019 12:00:00 AM",
"Cost":"0.6263837951",
"UsageQuantity":"0"
},
{
"Date":"12/29/2019 12:00:00 AM",
"Cost":"0.6263837951",
"UsageQuantity":"0"
},
{
"Date":"12/30/2019 12:00:00 AM",
"Cost":"0.6263837951",
"UsageQuantity":"0"
},
{
"Date":"12/31/2019 12:00:00 AM",
"Cost":"0.6263837951",
"UsageQuantity":"0"
},
{
"Date":"1/1/2020 12:00:00 AM",
"Cost":"0.6263837951",
"UsageQuantity":"0"
},
{
"Date":"1/2/2020 12:00:00 AM",
"Cost":"0.6263837950",
"UsageQuantity":"0"
},
{
"Date":"1/3/2020 12:00:00 AM",
"Cost":"0.5815844703",
"UsageQuantity":"0"
}
]
},
{
"Groups":[
{
"GroupName":"Customer",
"GroupValue":"CloudCheckr",
"FriendlyName":""
},
{
"GroupName":"Meter Region",
"GroupValue":"US West 2",
"FriendlyName":""
},
{
"GroupName":"Consumed Service",
"GroupValue":"Compute",
"FriendlyName":""
}
],
"CostDates":[
{
"Date":"12/28/2019 12:00:00 AM",
"Cost":"0.4913233920",
"UsageQuantity":"0"
},
{
"Date":"12/29/2019 12:00:00 AM",
"Cost":"0.4913233920",
"UsageQuantity":"0"
},
{
"Date":"12/30/2019 12:00:00 AM",
"Cost":"0.4913233920",
"UsageQuantity":"0"
},
{
"Date":"12/31/2019 12:00:00 AM",
"Cost":"0.4913233920",
"UsageQuantity":"0"
},
{
"Date":"1/1/2020 12:00:00 AM",
"Cost":"0.4913233920",
"UsageQuantity":"0"
},
{
"Date":"1/2/2020 12:00:00 AM",
"Cost":"0.4913233920",
"UsageQuantity":"0"
},
{
"Date":"1/3/2020 12:00:00 AM",
"Cost":"0.4913233920",
"UsageQuantity":"0"
}
]
},
{
"Groups":[
{
"GroupName":"Customer",
"GroupValue":"CloudCheckr",
"FriendlyName":""
},
{
"GroupName":"Meter Region",
"GroupValue":"Zone 1",
"FriendlyName":""
},
{
"GroupName":"Consumed Service",
"GroupValue":"Compute",
"FriendlyName":""
}
],
"CostDates":[
{
"Date":"12/28/2019 12:00:00 AM",
"Cost":"0.0058067757",
"UsageQuantity":"0"
},
{
"Date":"12/29/2019 12:00:00 AM",
"Cost":"0.0069838379",
"UsageQuantity":"0"
},
{
"Date":"12/30/2019 12:00:00 AM",
"Cost":"0.0059088267",
"UsageQuantity":"0"
},
{
"Date":"12/31/2019 12:00:00 AM",
"Cost":"0.0051658511",
"UsageQuantity":"0"
},
{
"Date":"1/1/2020 12:00:00 AM",
"Cost":"0.0046223926",
"UsageQuantity":"0"
},
{
"Date":"1/2/2020 12:00:00 AM",
"Cost":"0.0050415409",
"UsageQuantity":"0"
},
{
"Date":"1/3/2020 12:00:00 AM",
"Cost":"0.0054833184",
"UsageQuantity":"0"
}
]
},
{
"Groups":[
{ "GroupName":"Customer",
"GroupValue":"CloudCheckr",
"FriendlyName":""
},
{
"GroupName":"Meter Region",
"GroupValue":"Zone 1",
"FriendlyName":""
},
{
"GroupName":"Consumed Service",
"GroupValue":"Storage",
"FriendlyName":""
}
],
"CostDates":[
{
"Date":"12/28/2019 12:00:00 AM",
"Cost":"0.0015582741",
"UsageQuantity":"0"
},
{
"Date":"12/29/2019 12:00:00 AM",
"Cost":"0.0013454462",
"UsageQuantity":"0"
},
{
"Date":"12/30/2019 12:00:00 AM",
"Cost":"0.0012658759",
"UsageQuantity":"0"
},
{
"Date":"12/31/2019 12:00:00 AM",
"Cost":"0.0016972262",
"UsageQuantity":"0"
},
{
"Date":"1/1/2020 12:00:00 AM",
"Cost":"0.0013881892",
"UsageQuantity":"0"
},
{
"Date":"1/2/2020 12:00:00 AM",
"Cost":"0.0014032751",
"UsageQuantity":"0"
},
{
"Date":"1/3/2020 12:00:00 AM",
"Cost":"0.0015471816",
"UsageQuantity":"0"
}
]
},
{
"Groups":[
{
"GroupName":"Customer",
"GroupValue":"CloudCheckr",
"FriendlyName":""
},
{
"GroupName":"Meter Region",
"GroupValue":"Zone 2",
"FriendlyName":""
},
{
"GroupName":"Consumed Service",
"GroupValue":"Compute",
"FriendlyName":""
}
],
"CostDates":[
{
"Date":"12/28/2019 12:00:00 AM",
"Cost":"0.0036354840",
"UsageQuantity":"0"
},
{
"Date":"12/29/2019 12:00:00 AM",
"Cost":"0.0034879920",
"UsageQuantity":"0"
},
{
"Date":"12/30/2019 12:00:00 AM",
"Cost":"0.0036625140",
"UsageQuantity":"0"
},
{
"Date":"12/31/2019 12:00:00 AM",
"Cost":"0.0031587360",
"UsageQuantity":"0"
},
{
"Date":"1/1/2020 12:00:00 AM",
"Cost":"0.0037779780",
"UsageQuantity":"0"
},
{
"Date":"1/2/2020 12:00:00 AM",
"Cost":"0.0036813840",
"UsageQuantity":"0"
},
{
"Date":"1/3/2020 12:00:00 AM",
"Cost":"0.0034978860",
"UsageQuantity":"0"
}
]
},
{
"Groups":[
{
"GroupName":"Customer",
"GroupValue":"CloudCheckr",
"FriendlyName":""
},
{
"GroupName":"Meter Region",
"GroupValue":"US East",
"FriendlyName":""
},
{
"GroupName":"Consumed Service",
"GroupValue":"Compute",
"FriendlyName":""
}
],
"CostDates":[
{
"Date":"12/28/2019 12:00:00 AM",
"Cost":"0.4080000000",
"UsageQuantity":"0"
},
{
"Date":"12/29/2019 12:00:00 AM",
"Cost":"0.4080000000",
"UsageQuantity":"0"
},
{
"Date":"12/30/2019 12:00:00 AM",
"Cost":"0.4080000000",
"UsageQuantity":"0"
},
{
"Date":"12/31/2019 12:00:00 AM",
"Cost":"0.4080000000",
"UsageQuantity":"0"
},
{
"Date":"1/1/2020 12:00:00 AM",
"Cost":"0.4080000000",
"UsageQuantity":"0"
},
{
"Date":"1/2/2020 12:00:00 AM",
"Cost":"0.4080000000",
"UsageQuantity":"0"
},
{
"Date":"1/3/2020 12:00:00 AM",
"Cost":"0.3570000000",
"UsageQuantity":"0"
}
]
},
{
"Groups":[
{
"GroupName":"Customer",
"GroupValue":"CloudCheckr",
"FriendlyName":""
},
{
"GroupName":"Meter Region",
"GroupValue":"",
"FriendlyName":""
},
{
"GroupName":"Consumed Service",
"GroupValue":"Storage",
"FriendlyName":""
}
],
"CostDates":[
{
"Date":"12/28/2019 12:00:00 AM",
"Cost":"0.0132805219",
"UsageQuantity":"0"
},
{
"Date":"12/29/2019 12:00:00 AM",
"Cost":"0.0132799100",
"UsageQuantity":"0"
},
{
"Date":"12/30/2019 12:00:00 AM",
"Cost":"0.0132805831",
"UsageQuantity":"0"
},
{
"Date":"12/31/2019 12:00:00 AM",
"Cost":"0.0132802771",
"UsageQuantity":"0"
},
{
"Date":"1/1/2020 12:00:00 AM",
"Cost":"0.0132807360",
"UsageQuantity":"0"
},
{
"Date":"1/2/2020 12:00:00 AM",
"Cost":"0.0154775406",
"UsageQuantity":"0"
},
{
"Date":"1/3/2020 12:00:00 AM",
"Cost":"0.0132816541",
"UsageQuantity":"0"
}
]
},
{
"Groups":[
{
"GroupName":"Customer",
"GroupValue":"CloudCheckr",
"FriendlyName":""
},
{
"GroupName":"Meter Region",
"GroupValue":"Zone 1",
"FriendlyName":""
},
{
"GroupName":"Consumed Service",
"GroupValue":"Storage",
"FriendlyName":""
}
],
"CostDates":[
{
"Date":"12/28/2019 12:00:00 AM",
"Cost":"0.0000645582",
"UsageQuantity":"0"
},
{
"Date":"12/29/2019 12:00:00 AM",
"Cost":"0.0000663330",
"UsageQuantity":"0"
},
{
"Date":"12/30/2019 12:00:00 AM",
"Cost":"0.0000507296",
"UsageQuantity":"0"
},
{
"Date":"12/31/2019 12:00:00 AM",
"Cost":"0.0000840071",
"UsageQuantity":"0"
},
{
"Date":"1/1/2020 12:00:00 AM",
"Cost":"0.0000661111",
"UsageQuantity":"0"
},
{
"Date":"1/2/2020 12:00:00 AM",
"Cost":"0.0000669246",
"UsageQuantity":"0"
},
{
"Date":"1/3/2020 12:00:00 AM",
"Cost":"0.0000662591",
"UsageQuantity":"0"
}
]
}
]
}
]
}

Get Detailed Billing With Grouping V2

The API method, “get_detailed_billing_with_grouping_v2”, is used to pull the results from a saved filter in the Advanced Grouping (w/tags) report. Version 2 of the call includes two additional parameters.

This API call has been deprecated in favor of get_detailed_billing_with_grouping_by_currency.

INPUT PARAMETERS:

Parameter Type Description
access_key string required; standard access key required for all API calls
saved_filter_name string required; the name of the saved filter from which to pull the results
email list<string> optional; string list separated by comma: ”email@domain.com, email2@domain.com”
with_costs_by_group string optional; retrieves costs per group; accepts true/false; defaults to true if not specified
with_costs_by_time string optional; retrieves costs per time period; accepts true/false; defaults to true if not specified
start string optional; returns costs after the specified date
end string optional; returns costs before the specified date

Note: If the start and end are not defined, the application will return the last 14 days.

API CALL URL:

https://api.cloudcheckr.com/api/billing.[json|xml]/get_detailed_billing_with_grouping_v2?access_key=your_access_key&start=2013-11-08&end=2013-11-15&saved_filter_name=group2filter

REQUEST EXAMPLE:

curl -X GET \
-- https://api.cloudcheckr.com/api/billing.[json|xml]/get_detailed_billing_with_grouping_v2?access_key=your_access_key&start=2013-11-08&end=2013-11-15&saved_filter_name=group2filteraccess_key=your_admin_access_key&use_cc_account_id=1234'\
-- header 'cache-control: no-cache' \
-- header 'content-type: application/[json|xml]' \

RESPONSE EXAMPLE:

XML:

<GetDetailedBillingWithGroupingResponseV2
          xmlns:xsd='http://www.w3.org/2001/XMLSchema'
          xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
<Total>30.7983416200</Total>
<Max>30.7983416200</Max>
<Min>30.7983416200</Min>
<Average>30.798698086413034906518967198</Average>
<CostsByGroup>
<GroupingLevel>
<GroupName>Service</GroupName>
<GroupValue>AmazonS3</GroupValue>
<FriendlyName>S3</FriendlyName>
<Cost>0.1099985400</Cost>
<NextLevel>
<GroupingLevel>
<GroupName>aws:createdBy</GroupName>
<GroupValue>IAMUser:AIDAI5X7LBFKDHYABCDE:mikeb</GroupValue>
<FriendlyName />
<Cost>0.1083478400</Cost>
<NextLevel />
</GroupingLevel>
</NextLevel>
</GroupingLevel>
<GroupingLevel>
<GroupName>Service</GroupName>
<GroupValue>AmazonEC2</GroupValue>
<FriendlyName>EC2</FriendlyName>
<Cost>22.6078574000</Cost>
<NextLevel>
<GroupingLevel>
<GroupName>aws:createdBy</GroupName>
<GroupValue>IAMUser:AIDAI4NZVQK6IW45ABCDE:paul.vanw</GroupValue>
<FriendlyName />
<Cost>0.0750056100</Cost>
<NextLevel />
</GroupingLevel>
</NextLevel>
</GroupingLevel>
</CostsByGroup>
<CostsByTime>
<GroupingByTime>
<Groups>
<Grouping>
<GroupName>Service</GroupName>
<GroupValue>AmazonEC2</GroupValue>
<FriendlyName>EC2</FriendlyName>
</Grouping>
<Grouping>
<GroupName>aws:createdBy</GroupName>
<GroupValue>IAMUser:AIDAI4NZVQK6IW45ABCDE:paul.vanw</GroupValue>
<FriendlyName />
</Grouping>
</Groups>
<CostDates>
<GroupCostDate>
<Date>1/20/2017 12:00:00 AM</Date>
<Cost>0.0750056100</Cost>
<UsageQuantity>24.0000619600</UsageQuantity>
</GroupCostDate>
</CostDates>
</GroupingByTime>
<GroupingByTime>
<Groups>
<Grouping>
<GroupName>Service</GroupName>
<GroupValue>AmazonS3</GroupValue>
<FriendlyName>S3</FriendlyName>
</Grouping>
<Grouping>
<GroupName>aws:createdBy</GroupName>
<GroupValue>IAMUser:AIDAI5X7LBFKDHYFABCDE:mikeb</GroupValue>
<FriendlyName />
</Grouping>
</Groups>
<CostDates>
<GroupCostDate>
<Date>1/20/2017 12:00:00 AM</Date>
<Cost>0.1083478400</Cost>
<UsageQuantity>418.5352970600</UsageQuantity>
</GroupCostDate>
</CostDates>
</GroupingByTime>
</CostsByTime>
</GetDetailedBillingWithGroupingResponseV2>

JSON:

{
"Total": 30.79834162,
"Max": 30.79834162,
"Min": 30.79834162,
"Average": 30.798698086413037,
"CostsByGroup": [
{
"GroupName": "Service",
"GroupValue": "AmazonS3",
"FriendlyName": "S3",
"Cost": "0.1099985400",
"NextLevel": [
{
"GroupName": "aws:createdBy",
"GroupValue": "IAMUser:AIDAI5X7LBFKDHYFABCDE:mikeb",
"FriendlyName": "",
"Cost": "0.1083478400",
"NextLevel": []
}
]
},
{
"GroupName": "Service",
"GroupValue": "AmazonEC2",
"FriendlyName": "EC2",
"Cost": "22.6078574000",
"NextLevel": [
{
"GroupName": "aws:createdBy",
"GroupValue": "IAMUser:AIDAI4NZVQK6IW45ABCDE:paul.vanw",
"FriendlyName": "",
"Cost": "0.0750056100",
"NextLevel": []
}
]
}
],
"CostsByTime": [
{
"Groups": [
{
"GroupName": "Service",
"GroupValue": "AmazonEC2",
"FriendlyName": "EC2"
},
{
"GroupName": "aws:createdBy",
"GroupValue": "IAMUser:AIDAI4NZVQK6IW45ABCDE:paul.vanw",
"FriendlyName": ""
}
],
"CostDates": [
{
"Date": "1/20/2017 12:00:00 AM",
"Cost": "0.0750056100",
"UsageQuantity": "24.0000619600"
}
]
},
{
"Groups": [
{
"GroupName": "Service",
"GroupValue": "AmazonS3",
"FriendlyName": "S3"
},
{
"GroupName": "aws:createdBy",
"GroupValue": "IAMUser:AIDAI5X7LBFKDHYFABCDE:mikeb",
"FriendlyName": ""
}
],
"CostDates": [
{
"Date": "1/20/2017 12:00:00 AM",
"Cost": "0.1083478400",
"UsageQuantity": "418.5352970600"
}
]
}
]
}

Get Tag Rules

The API method, “get_tag_rules”, is used to retrieve a list of cost tag rules.

The preferred HTTP method for this call is GET.

INPUT PARAMETERS:

Parameter Type Description
access_key string required; standard access key

API CALL URL:

https://api.cloudcheckr.com/api/billing.[json|xml]/get_tag_rules

REQUEST EXAMPLE:

curl -X GET \
               -- https://api.cloudcheckr.com/api/billing.[json|xml]/get_tag_rules?access_key=your_admin_access_key
               -- header 'cache-control: no-cache' \
               -- header 'content-type: application/[json|xml]' \
          

RESPONSE EXAMPLE:
XML:

<GetTagRuleResponse xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
<tag_rules>
<TagRuleDto>
<tag_rule_id>79</tag_rule_id>
<name>Cost Center</name>
</TagRuleDto>
<TagRuleDto>
<tag_rule_id>80</tag_rule_id>
<name>Services</name>
</TagRuleDto>
</tag_rules>
</GetTagRuleResponse>

JSON:

{
"tag_rules": [
{
"tag_rule_id": 79,
"name": "Cost Center"
},
{
"tag_rule_id": 80,
"name": "Services"
}
]
}

Update Tag Rule

The API method, “update_tag_rule”, is used to modify an existing cost tag rule.

The preferred HTTP method for this call is POST.

To update a tag rule in the user interface, choose Cost > Tagging > Tagging Rules.

Once in the Tagging Rules report, click the tag rule that you want to modify.

INPUT PARAMETERS:

Parameter Type Description
access_key string required; standard access key
tag_rule_id string required; ID of the rule you want to modify
name string required; name of the tag rule
tags list<string> required; tag_key and tag_value
regions list<string> required; list of region(s) where the tag rule will be applied
azure_consumed_services list<string> required; the Azure resource(s)
azure_subscriptions list<string> required; the Azure subscription(s)

API CALL URL:

https://api.cloudcheckr.com/api/billing.[json|xml]/update_tag_rule

REQUEST EXAMPLE:

curl -X POST \
-- https://api.cloudcheckr.com/api/billing.[json|xml]/update_tag_rule?access_key=your_access_key
-- header 'cache-control: no-cache' \
-- header 'content-type: application/[json|xml]' \
-- data '{
"tag_rule_id": "94",
"name": "Azure Tag Rule",
"tags": {
"TagKey": "TagValue",
"TagKey2": "*"
},
"region": "US East",
"azure_consumed_service": "*",
"azure_subscriptions": [
"4dc76947-2789-4149-bc29-3b7bd45ce4a8",
"b9e7ac32-fcba-4090-a249-d8a240d356ac"
]
}

RESPONSE EXAMPLE:
XML:

<UpdateTagRuleResponse xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
<tag_rule>
<status>
<code>200</code>
<message>Rule updated.</message>
<tag_rule_id>94</tag_rule_id>
</status>
</tag_rule>
</UpdateTagRuleResponse>

JSON:

{
"code": 200,
"message": "Rule updated.",
"tag_rule_id": "94"
}

Get All Tag Mappings

The API method, “get_all_tag_mappings”, is used to retrieve a list of cost tag mappings.

The preferred HTTP method for this call is GET.

INPUT PARAMETERS:

Parameter Type Description
access_key string required; standard access key
max_results int required
next_token string optional

API CALL URL:

https://api.cloudcheckr.com/api/billing.[json|xml]/get_all_tag_mappings?access_key=your_access_key&max_results=100

Get Tag Mapping

The API method, “get_tag_mapping”, is used to retrieve a cost tag mapping with a specified Key and Value.

The preferred HTTP method for this call is GET.

INPUT PARAMETERS:

Parameter Type Description
access_key string required; standard access key
key_to_map string required
value_to_map string required

API CALL URL:

https://api.cloudcheckr.com/api/billing.[json|xml]/get_tag_mapping?access_key=your_access_key&key_to_map=Tagkey1&value_to_map=Tagvalue1

Add Tag Mapping

The API method, “add_tag_mapping”, is used to add a cost tag mapping with a specified Key and Value.

The preferred HTTP method for this call is POST.

INPUT PARAMETERS:

Parameter Type Description
access_key string required; standard access key
Customer string required
Subscription string required
Subscription Friendly Name string required
Paying Account int required
Charge Model string required
Cost Source string required
Resource Group string required
Consumed Service string required
Meter Category string required
Meter Sub Category string required
Meter Region string required
Meter Name string required
Tag Key string required
Tag Value string required

API CALL URL:

https://api.cloudcheckr.com/api/billing.[json|xml]/add_tag_mapping?access_key=your_access_key

Delete Tag Mapping

The API method, “delete_tag_mapping”, is used to retrieve a cost tag mapping with a specified Key and Value.

The preferred HTTP method for this call is GET.

INPUT PARAMETERS:

Parameter Type Description
access_key string required; standard access key
map_to_tag_key string required
map_to_tag_value string required

API CALL URL:

https://api.cloudcheckr.com/api/billing.[json|xml]/delete_tag_mapping?access_key=your_access_key&map_to_tag_key=Tagkey1&map_to_tag_value=Tagvalue1

Get Resources Virtual Machine Details

The API method, “get_resources_virtual_machine_details”, is used to to pull the data for the list of Virtual Machines report from CloudCheckr.

INPUT PARAMETERS:

Parameter Type Description
access_key string required; standard access key required
use_cc_account_id string required/optional; unique account ID used in CloudCheckr; must be a payer account in CloudCheckr

Note: Required if the access key represents an administrator account.

date string optional; return report from this date; if date is not defined, the most recent report will be returned; recommended date format is mm/dd/yyyy.

API CALL URL:

https://api.cloudcheckr.com/api/inventory.json/get_resources_virtual_machine_details?access_key=your_access_key&use_cc_account_id=1234

REQUEST EXAMPLE:

curl -X GET \
-- https://api.cloudcheckr.com/api/account.[json|xml]/add_account_v3?access_key=your_admin_access_key&use_cc_account_id=1234'\
-- header 'cache-control: no-cache' \
-- header 'content-type: application/[json|xml]' \

RESPONSE EXAMPLE:
XML:

<GetResourcesVirtualMachineDetailsResponse xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
<DateOfResults>2017-09-26T15:36:43</DateOfResults>
<TotalCount>1</TotalCount>
<Count>1</Count>
<VirtualMachines>
<SubscriptionId>11111111-2222-3333-4444-555555555555</SubscriptionId>
<LocationName>East US</LocationName>
<Name>ManagedDisk</Name>
<State>Running</State>
<Url>/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/CLOUDCHECKR/providers/Microsoft.Compute/virtualMachines/ManagedDisk</Url>
<LicenseType />
<VmSize>Basic_A0</VmSize>
<Offer>WindowsServer</Offer>
<Sku />
<Version />
<OsType>Windows</OsType>
<DiskName>ManagedDisk_OsDisk_1_72e7bb21920e486aa9ddc5da4532980e</DiskName>
<DiskUri />
<DiskCaching>ReadWrite</DiskCaching>
<DiskCreateOption>FromImage</DiskCreateOption>
<ComputerName>ManagedDisk</ComputerName>
<PrivateDnsName />
<PrivateIpAddress />
<PublicDnsName />
<PublicIpAddress />
<SubnetId />
<AvgCpuForLast7Days>1.9828732800284399</AvgCpuForLast7Days>
<AvgCpuForLast30Days />
<AvgCpuForLast90Days />
<HighCpuPercent>90</HighCpuPercent>
<LowCpuPercent>5</LowCpuPercent>
<AvgNetworkInLast30Days />
<AvgNetworkOutLast30Days />
<HoursCpuUtilAbove80>0</HoursCpuUtilAbove80>
<HoursCpuUtilBelow80>0</HoursCpuUtilBelow80>
<HoursCpuUtilBelow60>0</HoursCpuUtilBelow60>
<HoursCpuUtilBelow40>0</HoursCpuUtilBelow40>
<HoursCpuUtilBelow20>0</HoursCpuUtilBelow20>
<HoursHighCpuLast7Days>0</HoursHighCpuLast7Days>
<HoursHighCpuLast30Days>0</HoursHighCpuLast30Days>
<HoursHighCpuLast90Days />
<HoursLowCpuLast7Days>0</HoursLowCpuLast7Days>
<HoursLowCpuLast30Days>0</HoursLowCpuLast30Days>
<HoursLowCpuLast90Days />
<HoursRunningLast7Days />
<HoursRunningLast30Days />
<HoursRunningLast90Days />
<MinimumCpuUtilization />
<MinimumCpuUtilizationDateTime />
<PeakCpuUtilization />
<PeakCpuUtilizationDateTime />
<ScaleSets>ScaleSetName</ScaleSets>
<Tags>
<TagName>Creator</TagName>
<TagValue>John Doe</TagValue>
</Tags>
</VirtualMachines>
<HasNext>false</HasNext>
<NextToken></NextToken>
</GetResourcesVirtualMachineDetailsResponse>

JSON:

{
"DateOfResults": "2017-09-26T15:36:43",
"TotalCount": 1,
"Count": 1,
"VirtualMachines": [
{
"SubscriptionId": "11111111-2222-3333-4444-555555555555",
"LocationName": "East US",
"Name": "ManagedDisk",
"State": "Running",
"Url": "/subscriptions/11111111-2222-3333-4444-555555555555/resourceGroups/CLOUDCHECKR/providers/Microsoft.Compute/virtualMachines/ManagedDisk",
"LicenseType": null,
"VmSize": "Basic_A0",
"Offer": "WindowsServer",
"Sku": null,
"Version": null,
"OsType": "Windows",
"DiskName": "ManagedDisk_OsDisk_1_72e7bb21920e486aa9ddc5da4532980e",
"DiskUri": null,
"DiskCaching": "ReadWrite",
"DiskCreateOption": "FromImage",
"ComputerName": "ManagedDisk",
"PrivateDnsName": null,
"PrivateIpAddress": null,
"PublicDnsName": null,
"PublicIpAddress": null,
"SubnetId": null,
"AvgCpuForLast7Days": 1.9828732800284399,
"AvgCpuForLast30Days": null,
"AvgCpuForLast90Days": null,
"HighCpuPercent": 90,
"LowCpuPercent": 5,
"AvgNetworkInLast30Days": null,
"AvgNetworkOutLast30Days": null,
"HoursCpuUtilAbove80": 0,
"HoursCpuUtilBelow80": 0,
"HoursCpuUtilBelow60": 0,
"HoursCpuUtilBelow40": 0,
"HoursCpuUtilBelow20": 0,
"HoursHighCpuLast7Days": 0,
"HoursHighCpuLast30Days": 0,
"HoursHighCpuLast90Days": null,
"HoursLowCpuLast7Days": 0,
"HoursLowCpuLast30Days": 0,
"HoursLowCpuLast90Days": null,
"HoursRunningLast7Days": null,
"HoursRunningLast30Days": null,
"HoursRunningLast90Days": null,
"MinimumCpuUtilization": null,
"MinimumCpuUtilizationDateTime": null,
"PeakCpuUtilization": null,
"PeakCpuUtilizationDateTime": null,
"ScaleSets": ScaleSetName,
"Tags": [
{
"TagName": "Creator",
"TagValue": "John Doe"
}
]
}
],
"HasNext": false,
"NextToken": ""
}

Create Subscription Family

The API method, “create_subscription_family”, is used to create a new subscription family for a selected Azure project.

The preferred HTTP method for this call is POST.

INPUT PARAMETERS:

Parameter

Type

Description

access_key

string

required; account-level API key

family_id

integer

required if not using name; unique ID associated with the subscription family

use_cc_account_id

integer

required; unique account ID used in CloudCheckr

name

string

required; name for the subscription family

subscriptions

string

comma-separated list of Azure subscription IDs to add to the subscription family;

See Call Example

email

string

email associated with the subscription family

invoice_id

string

custom invoice id

address

string

mailing address associated with the subscription family

additional_info

string

text in the Additional Info text field

project_code

string

a customer’s internal project code

payment_term

string

payment terms for the subscription family used to populate a due date when creating invoices; requires two numeric values or may be left blank

The following parameters are optional and if not configured, these fields will be blank:
  • email
  • invoice_id
  • address
  • additional_info
  • project_code
  • payment_term

API CALL URL:

https://api.cloudcheckr.com/api/billing.[json|xml]/create_subscription_family?access_key=your_access_key

JSON/XML CALL EXAMPLE:

curl --request POST \
'https://api.cloudcheckr.com/api/billing.[json|xml]/create_subscription_family?access_key=your_access_key'\
--header 'cache-control: no-cache' \
--header 'content-type: application/[json|xml]' \
--data' {
"name": "Subscription family name"
"use_cc_account_id": 111,
"subscription": "11111111-1111-1111-11111111, 22222222-2222-2222-22222222",
"name": "My new subscription family name"
}

SUCCESSFUL JSON/XML RESPONSE:

{
"Code": 200,
"Message": "OK"
}

Modify Subscription Family

The API method, “modify_subscription_family”, is used to edit the existing subscription family configuration for a selected Azure project.

The preferred HTTP method for this call is POST.

INPUT PARAMETERS:

Parameter

Type

Description

access_key

string

required; account-level API key

family_id

integer

required if not using name; unique ID associated with the subscription family

name

string

required if not using family_id; name of the subscription family

use_cc_account_id

integer

required; unique account ID used in CloudCheckr

subscriptions_to_add

string

comma-separated list of Azure subscription IDs to link to the subscription family;

See Call Example

subscriptions_to_remove

string

comma-separated list of Azure subscription IDs to unlink from the subscription family;

See Call Example

new_name

string

required; new name for the subscription family

email

string

email associated with the subscription family

invoice_id

string

custom invoice id

address

string

mailing address associated with the subscription family

additional_info

string

text in the Additional Info text field

project_code

string

a customer’s internal project code

payment_term

string

payment terms for the subscription family used to populate a due date when creating invoices; requires two numeric values or may be left blank

The following parameters are optional and if not configured, these fields will be blank:
  • email
  • invoice_id
  • address
  • additional_info
  • project_code
  • payment_term

API CALL URL:

https://api.cloudcheckr.com/api/billing.[json|xml]/modify_subscription_family?access_key=your_access_key

JSON/XML CALL EXAMPLE:

curl --request POST \
'https://api.cloudcheckr.com/api/billing.[json|xml]/modify_subscription_family?access_key=your_access_key'\
--header 'cache-control: no-cache' \
--header 'content-type: application/[json|xml]' \
--data' {
"name": "Subscription family name"
"use_cc_account_id": 111,
"subscriptions_to_add": "11111111-1111-1111-11111111, 22222222-2222-2222-22222222",
"subscriptions_to_remove": "33333333-3333-3333-33333333, 44444444-4444-4444-44444444",
"new_name": "My new subscription family name"
}

SUCCESSFUL JSON/XML RESPONSE:

{
"Code": 200,
"Message": "OK"
}

Delete Subscription Family

The API method, “delete_subscription_family”, is used to delete an existing subscription family configuration for a selected Azure project.

The preferred HTTP method for this call is POST.

INPUT PARAMETERS:

Parameter

Type

Description

access_key

string

required; account-level API key

family_id

integer

required if not using name; unique ID associated with the subscription family

name

string

required if not using family_id; name of the subscription family

use_cc_account_id

integer

required; unique account ID used in CloudCheckr

API CALL URL:

https://api.cloudcheckr.com/api/billing.[json|xml]/delete_subscription_family?access_key=your_access_key

JSON/XML CALL EXAMPLE:

curl --request POST \
'https://api.cloudcheckr.com/api/billing.[json|xml]/delete_subscription_family?access_key=your_access_key'\
--header 'cache-control: no-cache' \
--header 'content-type: application/[json|xml]' \
--data' {
"name": "Subscription family name"
"use_cc_account_id": 111,
"family_id": "1",
"name": "subscription family name"
}

SUCCESSFUL JSON/XML RESPONSE:

{
"Code": 200,
"Message": "Family Subscription 'Test' was deleted (ID: 1)."
}

Get Azure Cost Savings Reports

The API method, “get_cost_saving_azure”, is used to retrieve results from the Azure Cost Savings report.

The preferred HTTP method for this call is GET.

INPUT PARAMETERS:

Parameter

Type

Description

access_key

string

required; admin-level or an account-level access key

date

DateTime

optional; identifies the date range for the report
CloudCheckr will return the latest report if you don't define a date.

groupby

string

optional; indicates if you want CloudCheckr to group results by account or by Best Practice check

The two values accepted for this parameter are ByCheck and ByAccount, both of which are case-insensitive.

By default, your response will group your results by Best Practice check for standard and Multi Account View (MAV) accounts. If your request is associated with a MAV, you can also choose to group by account.

use_account

string

*optional/required; the name of the CloudCheckr account you are making the call for

*If you use an admin-level access key, you are required to add this parameter to your request.

use_cc_account_id

integer

*optional/required; the CloudCheckr ID of the account you are making the call for

*If you use an admin-level access key, you are required to add this parameter to your request.

API CALL URL:

https://api.cloudcheckr.com/api/billing.[json|xml]/get_cost_saving_azure?access_key=[your_access_key]

REQUEST EXAMPLE:

curl -- request GET \
-- 'https://api.cloudcheckr.com/api/billing.[json|xml]/get_cost_saving_azure?access_key=[your_access_key]\
-- header 'cache-control: no-cache' \
-- header 'content-type: application/[json|xml]' \

RESPONSE EXAMPLES:

<Accounts>
<Account>
<Name>Pricing Job Inventory (a390c94b-0023-4b4a-b109-51705643a051)</Name>
<IdleResources>
<ResourceType>
<Name>Idle Virtual Machines</Name>
<Detail />
<TotalCount>0</TotalCount>
<TotalSaving>0</TotalSaving>
</ResourceType>
<ResourceType>
<Name>Idle Redis Caches</Name>
<Detail />
<TotalCount>0</TotalCount>
<TotalSaving>0</TotalSaving>
</ResourceType>
<ResourceType>
<Name>Idle SQL Databases</Name>
<Detail />
<TotalCount>0</TotalCount>
<TotalSaving>0</TotalSaving>
</ResourceType>
</IdleResources>
<UnusedResources>
<ResourceType>
<Name>Unattached Managed Disks</Name>
<Detail />
<TotalCount>0</TotalCount>
<TotalSaving>0</TotalSaving>
</ResourceType>
<ResourceType>
<Name>Deallocated Virtual Machines with Managed Disks Attached</Name>
<Detail />
<TotalCount>0</TotalCount>
<TotalSaving>0</TotalSaving>
</ResourceType>
<ResourceType>
<Name>Stopped Virtual Machines</Name>
<Detail />
<TotalCount>0</TotalCount>
<TotalSaving>0</TotalSaving>
</ResourceType>
<ResourceType>
<Name>Unused App Service Plans</Name>
<Detail />
<TotalCount>0</TotalCount>
<TotalSaving>0</TotalSaving>
</ResourceType>
</UnusedResources>
<TotalSaving>0</TotalSaving>
</Account>
<Account>
<Name>Azure Inventory (xxxxxxxxxxxx)</Name>
<IdleResources>
<ResourceType>
<Name>Idle Virtual Machines</Name>
<Detail />
<TotalCount>0</TotalCount>
<TotalSaving>0</TotalSaving>
</ResourceType>
<ResourceType>
<Name>Idle Redis Caches</Name>
<Detail />
<TotalCount>0</TotalCount>
<TotalSaving>0</TotalSaving>
</ResourceType>
<ResourceType>
<Name>Idle SQL Databases</Name>
<Detail />
<TotalCount>0</TotalCount>
<TotalSaving>0</TotalSaving>
</ResourceType>
</IdleResources>
<UnusedResources>
<ResourceType>
<Name>Unattached Managed Disks</Name>
<Detail>
<Resource>
<Name>Daig-Unattached-Disk</Name>
<SubscriptionName>Azure Inventory (xxxxxxxxxxxx)</SubscriptionName>
<Saving>135.1700000000</Saving>
</Resource>
<Resource>
<Name>Tag-Test_OsDisk_1_xxxxxxxxxxxx</Name>
<SubscriptionName>Azure Inventory (xxxxxxxxxxxx)</SubscriptionName>
<Saving>29.5650000000</Saving>
</Resource>
<Resource>
<Name>DataDisk</Name>
<SubscriptionName>Azure Inventory (xxxxxxxxxxxx)</SubscriptionName>
<Saving>21.7600000000</Saving>
</Resource>
<Resource>
<Name>AMIDemo_OsDisk_1_xxxxxxxxxxxx</Name>
<SubscriptionName>Azure Inventory (xxxxxxxxxxxx)</SubscriptionName>
<Saving>9.6000000000</Saving>
</Resource>
<Resource>
<Name>CloudCheckr_OsDisk_1_xxxxxxxxxxxx</Name>
<SubscriptionName>Azure Inventory (xxxxxxxxxxxx)</SubscriptionName>
<Saving>5.8880000000</Saving>
</Resource>
<Resource>
<Name>ccrlinux_disk1_xxxxxxxxxxxx</Name>
<SubscriptionName>Azure Inventory (xxxxxxxxxxxx)</SubscriptionName>
<Saving>5.2795000000</Saving>
</Resource>
<Resource>
<Name>ccrlinux4_OsDisk_1_xxxxxxxxxxxx</Name>
<SubscriptionName>Azure Inventory (xxxxxxxxxxxx)</SubscriptionName>
<Saving>2.4000000000</Saving>
</Resource>
<Resource>
<Name>TempDisk_HasMoreThan65CharName_ENG-31060_AAAAAAAAAAAAAAAAAAAAAAAAA</Name>
<SubscriptionName>Azure Inventory (xxxxxxxxxxxx)</SubscriptionName>
<Saving>1.5360000000</Saving>
</Resource>
</Detail>
<TotalCount>8</TotalCount>
<TotalSaving>211.1985000000</TotalSaving>
</ResourceType>
<ResourceType>
<Name>Deallocated Virtual Machines with Managed Disks Attached</Name>
<Detail>
<Resource>
<Name>TestImage</Name>
<SubscriptionName>Azure Inventory (xxxxxxxxxxxx)</SubscriptionName>
<Saving>144.7650000000</Saving>
</Resource>
<Resource>
<Name>SupportVM</Name>
<SubscriptionName>Azure Inventory (xxxxxxxxxxxx)</SubscriptionName>
<Saving>100.0900000000</Saving>
</Resource>
<Resource>
<Name>ccrwindows</Name>
<SubscriptionName>Azure Inventory (xxxxxxxxxxxx)</SubscriptionName>
<Saving>19.7100000000</Saving>
</Resource>
<Resource>
<Name>ManagedDisk</Name>
<SubscriptionName>Azure Inventory (xxxxxxxxxxxx)</SubscriptionName>
<Saving>5.8880000000</Saving>
</Resource>
<Resource>
<Name>ccrlinux3</Name>
<SubscriptionName>Azure Inventory (xxxxxxxxxxxx)</SubscriptionName>
<Saving>1.5360000000</Saving>
</Resource>
</Detail>
<TotalCount>5</TotalCount>
<TotalSaving>271.9890000000</TotalSaving>
</ResourceType>
<ResourceType>
<Name>Stopped Virtual Machines</Name>
<Detail />
<TotalCount>0</TotalCount>
<TotalSaving>0</TotalSaving>
</ResourceType>
<ResourceType>
<Name>Unused App Service Plans</Name>
<Detail />
<TotalCount>0</TotalCount>
<TotalSaving>0</TotalSaving>
</ResourceType>
</UnusedResources>
<TotalSaving>483.1875000000</TotalSaving>
</Account>
</Accounts>
<TotalSaving>483.1875000000</TotalSaving>
</Accounts>
{
"Accounts":[
{
"Name":"Pricing Job Inventory (xxxxxxxxxxxx)",
"IdleResources":[
{
"Name":"Idle Virtual Machines",
"Detail":[
],
"TotalCount":0,
"TotalSaving":0.0
},
{
"Name":"Idle Redis Caches",
"Detail":[
],
"TotalCount":0,
"TotalSaving":0.0
},
{
"Name":"Idle SQL Databases",
"Detail":[
],
"TotalCount":0,
"TotalSaving":0.0
}
],
"UnusedResources":[
{
"Name":"Unattached Managed Disks",
"Detail":[
],
"TotalCount":0,
"TotalSaving":0.0
},
{
"Name":"Deallocated Virtual Machines with Managed Disks Attached",
"Detail":[
],
"TotalCount":0,
"TotalSaving":0.0
},
{
"Name":"Stopped Virtual Machines",
"Detail":[
],
"TotalCount":0,
"TotalSaving":0.0
},
{
"Name":"Unused App Service Plans",
"Detail":[
],
"TotalCount":0,
"TotalSaving":0.0
}
],
"TotalSaving":0.0
},
{
"Name":"Azure Inventory (xxxxxxxxxxxx)",
"IdleResources":[
{
"Name":"Idle Virtual Machines",
"Detail":[
],
"TotalCount":0,
"TotalSaving":0.0
},
{
"Name":"Idle Redis Caches",
"Detail":[
],
"TotalCount":0,
"TotalSaving":0.0
},
{
"Name":"Idle SQL Databases",
"Detail":[
],
"TotalCount":0,
"TotalSaving":0.0
}
],
"UnusedResources":[
{
"Name":"Unattached Managed Disks",
"Detail":[
{
"Name":"Daig-Unattached-Disk",
"SubscriptionName":"Azure Inventory (xxxxxxxxxxxx)",
"Saving":135.1700000000
},
{
"Name":"Tag-Test_OsDisk_1_502427db13164daa8953c6ee8c38f088",
"SubscriptionName":"Azure Inventory (xxxxxxxxxxxx)",
"Saving":29.5650000000
},
{
"Name":"DataDisk",
"SubscriptionName":"Azure Inventory (xxxxxxxxxxxx)",
"Saving":21.7600000000
},
{
"Name":"AMIDemo_OsDisk_1_daad6156adfd494294500149c027a5cc",
"SubscriptionName":"Azure Inventory (xxxxxxxxxxxx)",
"Saving":9.6000000000
},
{
"Name":"CloudCheckr_OsDisk_1_f6c78de5b0174192968d82b8556f27b5",
"SubscriptionName":"Azure Inventory (xxxxxxxxxxxx)",
"Saving":5.8880000000
},
{
"Name":"ccrlinux_disk1_727f3dac6da7485eba841c8c07812299",
"SubscriptionName":"Azure Inventory (xxxxxxxxxxxx)",
"Saving":5.2795000000
},
{
"Name":"ccrlinux4_OsDisk_1_ec275cf0f9d5406fbb0b75d5c5cd4e39",
"SubscriptionName":"Azure Inventory (xxxxxxxxxxxx)",
"Saving":2.4000000000
},
{
"Name":"TempDisk_HasMoreThan65CharName_ENG-31060_AAAAAAAAAAAAAAAAAAAAAAAAA",
"SubscriptionName":"Azure Inventory (xxxxxxxxxxxx)",
"Saving":1.5360000000
}
],
"TotalCount":8,
"TotalSaving":211.1985000000
},
{
"Name":"Deallocated Virtual Machines with Managed Disks Attached",
"Detail":[
{
"Name":"TestImage",
"SubscriptionName":"Azure Inventory (xxxxxxxxxxxx)",
"Saving":144.7650000000
},
{
"Name":"SupportVM",
"SubscriptionName":"Azure Inventory (xxxxxxxxxxxx)",
"Saving":100.0900000000
},
{
"Name":"ccrwindows",
"SubscriptionName":"Azure Inventory (xxxxxxxxxxxx)",
"Saving":19.7100000000
},
{
"Name":"ManagedDisk",
"SubscriptionName":"Azure Inventory (xxxxxxxxxxxx)",
"Saving":5.8880000000
},
{
"Name":"ccrlinux3",
"SubscriptionName":"Azure Inventory (xxxxxxxxxxxx)",
"Saving":1.5360000000
}
],
"TotalCount":5,
"TotalSaving":271.9890000000
},
{
"Name":"Stopped Virtual Machines",
"Detail":[
],
"TotalCount":0,
"TotalSaving":0.0
},
{
"Name":"Unused App Service Plans",
"Detail":[
],
"TotalCount":0,
"TotalSaving":0.0
}
],
"TotalSaving":483.1875000000
}
],
"TotalSaving":483.1875000000
}
<Resources>
<IdleResources>
<ResourceType>
<Name>Idle Virtual Machines</Name>
<Detail />
<TotalCount>0</TotalCount>
<TotalSaving>0</TotalSaving>
</ResourceType>
<ResourceType>
<Name>Idle Redis Caches</Name>
<Detail />
<TotalCount>0</TotalCount>
<TotalSaving>0</TotalSaving>
</ResourceType>
<ResourceType>
<Name>Idle SQL Databases</Name>
<Detail />
<TotalCount>0</TotalCount>
<TotalSaving>0</TotalSaving>
</ResourceType>
</IdleResources>
<UnusedResources>
<ResourceType>
<Name>Unattached Managed Disks</Name>
<Detail>
<Resource>
<Name>Daig-Unattached-Disk</Name>
<Saving>135.1700000000</Saving>
</Resource>
<Resource>
<Name>Tag-Test_OsDisk_1_xxxxxxxxxxxx</Name>
<Saving>29.5650000000</Saving>
</Resource>
<Resource>
<Name>DataDisk</Name>
<Saving>21.7600000000</Saving>
</Resource>
<Resource>
<Name>AMIDemo_OsDisk_1_xxxxxxxxxxxx</Name>
<Saving>9.6000000000</Saving>
</Resource>
<Resource>
<Name>CloudCheckr_OsDisk_1_xxxxxxxxxxxx</Name>
<Saving>5.8880000000</Saving>
</Resource>
<Resource>
<Name>ccrlinux_disk1_xxxxxxxxxxxx</Name>
<Saving>5.2795000000</Saving>
</Resource>
<Resource>
<Name>ccrlinux4_OsDisk_1_xxxxxxxxxxxx</Name>
<Saving>2.4000000000</Saving>
</Resource>
<Resource>
<Name>TempDisk_HasMoreThan65CharName_ENG-31060_AAAAAAAAAAAAAAAAAAAAAAAAA</Name>
<Saving>1.5360000000</Saving>
</Resource>
</Detail>
<TotalCount>8</TotalCount>
<TotalSaving>211.1985000000</TotalSaving>
</ResourceType>
<ResourceType>
<Name>Deallocated Virtual Machines with Managed Disks Attached</Name>
<Detail>
<Resource>
<Name>TestImage</Name>
<Saving>144.7650000000</Saving>
</Resource>
<Resource>
<Name>SupportVM</Name>
<Saving>100.0900000000</Saving>
</Resource>
<Resource>
<Name>ccrwindows</Name>
<Saving>19.7100000000</Saving>
</Resource>
<Resource>
<Name>ManagedDisk</Name>
<Saving>5.8880000000</Saving>
</Resource>
<Resource>
<Name>ccrlinux3</Name>
<Saving>1.5360000000</Saving>
</Resource>
</Detail>
<TotalCount>5</TotalCount>
<TotalSaving>271.9890000000</TotalSaving>
</ResourceType>
<ResourceType>
<Name>Stopped Virtual Machines</Name>
<Detail />
<TotalCount>0</TotalCount>
<TotalSaving>0</TotalSaving>
</ResourceType>
<ResourceType>
<Name>Unused App Service Plans</Name>
<Detail />
<TotalCount>0</TotalCount>
<TotalSaving>0</TotalSaving>
</ResourceType>
</UnusedResources>
<TotalSaving>483.1875000000</TotalSaving>
<TotalIdleResourcesSaving>0</TotalIdleResourcesSaving>
<TotalUnusedResourcesSaving>483.1875000000</TotalUnusedResourcesSaving>
</Resources>
{
"IdleResources":[
{
"Name":"Idle Virtual Machines",
"Detail":[
],
"TotalCount":0,
"TotalSaving":0.0
},
{
"Name":"Idle Redis Caches",
"Detail":[
],
"TotalCount":0,
"TotalSaving":0.0
},
{
"Name":"Idle SQL Databases",
"Detail":[
],
"TotalCount":0,
"TotalSaving":0.0
}
],
"UnusedResources":[
{
"Name":"Unattached Managed Disks",
"Detail":[
{
"Name":"Daig-Unattached-Disk",
"SubscriptionName":null,
"Saving":135.1700000000
},
{
"Name":"Tag-Test_OsDisk_1_xxxxxxxxxxxx",
"SubscriptionName":null,
"Saving":29.5650000000
},
{
"Name":"DataDisk",
"SubscriptionName":null,
"Saving":21.7600000000
},
{
"Name":"AMIDemo_OsDisk_1_xxxxxxxxxxxx",
"SubscriptionName":null,
"Saving":9.6000000000
},
{
"Name":"CloudCheckr_OsDisk_1_xxxxxxxxxxxx",
"SubscriptionName":null,
"Saving":5.8880000000
},
{
"Name":"ccrlinux_disk1_xxxxxxxxxxxx",

"SubscriptionName":null,
"Saving":5.2795000000
},
{
"Name":"ccrlinux4_OsDisk_1_xxxxxxxxxxxx",
"SubscriptionName":null,
"Saving":2.4000000000
},
{
"Name":"TempDisk_HasMoreThan65CharName_ENG-31060_AAAAAAAAAAAAAAAAAAAAAAAAA",
"SubscriptionName":null,
"Saving":1.5360000000
}
],
"TotalCount":8,
"TotalSaving":211.1985000000
},
{
"Name":"Deallocated Virtual Machines with Managed Disks Attached",
"Detail":[
{
"Name":"TestImage",
"SubscriptionName":null,
"Saving":144.7650000000
},
{
"Name":"SupportVM",
"SubscriptionName":null,
"Saving":100.0900000000
},
{
"Name":"ccrwindows",
"SubscriptionName":null,
"Saving":19.7100000000
},
{
"Name":"ManagedDisk",
"SubscriptionName":null,
"Saving":5.8880000000
},
{
"Name":"ccrlinux3",
"SubscriptionName":null,
"Saving":1.5360000000
}
],
"TotalCount":5,
"TotalSaving":271.9890000000
},
{
"Name":"Stopped Virtual Machines",
"Detail":[
],
"TotalCount":0,
"TotalSaving":0.0
},
{
"Name":"Unused App Service Plans",
"Detail":[
],
"TotalCount":0,
"TotalSaving":0.0
}
],
"TotalSaving":483.1875000000,
"TotalIdleResourcesSaving":0.0,
"TotalUnusedResourcesSaving":483.1875000000
}

Get Resources Azure Load Balancers Details

The API method, “get_resources_azure_load_balancer_details”, is used to retrieve results from the Azure List of Load Balancers report.

The preferred HTTP method for this call is GET.

INPUT PARAMETERS:

Parameter

Type

Description

access_key

string

required; admin-level or an account-level access key

date

DateTime

optional; identifies the date range for the report
CloudCheckr will return the latest report if you don't define a date.

detailed

Boolean

optional; indicates if you want CloudCheckr to include load balancer details or only a summary in the response

Select true if you want to include load balancer details and select false if you only want to include a load balancer summary.

use_account

string

*optional/required; the name of the CloudCheckr account you are making the call for

*If you use an admin-level access key, you are required to add this parameter to your request.

use_cc_account_id

integer

*optional/required; the CloudCheckr ID of the account you are making the call for

*If you use an admin-level access key, you are required to add this parameter to your request.

API CALL URL:

https://api.cloudcheckr.com/api/billing.[json|xml]/get_resources_azure_load_balancer_details?access_key=[your_access_key]&date=[a_date]

REQUEST EXAMPLE:

curl -- request GET \
-- 'https://api.cloudcheckr.com/api/billing.[json|xml]/get_resources_azure_load_balancer_details?access_key=[your_access_key]&date=[a_date]\
-- header 'cache-control: no-cache' \
-- header 'content-type: application/[json|xml]' \

RESPONSE EXAMPLES:

<AzureLoadBalancers>
<HasNext>true</HasNext>
<NextToken>H4sIAAAAAAAEAKWOMQrCQBBFj7Rok2ZYiBHSCIaQCwzxGxaWHd2ZaXJ6Q-y0TPV5Dx58al9p4CUVtiTl_uxhI1S8ztB29Yqb8OPCmcuMqlcYp6wj3g61SFuJeKKwL22hZ9MBdeczhR9Dkxjnr-zEi8WGwp-jcOTTB-wUJ-TRAAAA0</NextToken>
<DateOfResults>2021-03-08T17:41:41</DateOfResults>
<TotalCount>7</TotalCount>
<LoadBalancers>
<LoadBalancer>
<ResourceGuid>yyyyyyyyyyyyyyy</ResourceGuid>
<ResourceGroupName>Api-Default-Central-US</ResourceGroupName>
<Name>CaseT42410</Name>
<LocationName>West US</LocationName>
<ProvisioningState>Succeeded</ProvisioningState>
<Url>/subscriptions/xxxxxxxxxxxx/resourceGroups/Api-Default-Central-US/providers/Microsoft.Network/loadBalancers/CaseT42410</Url>
<BackendAddressPools>
<BackendAddressPool>
<Name>BackendCaseT</Name>
<ProvisioningState>Succeeded</ProvisioningState>
<Url>/subscriptions/xxxxxxxxxxxx/resourceGroups/Api-Default-Central-US/providers/Microsoft.Network/loadBalancers/CaseT42410/backendAddressPools/BackendCaseT</Url>
</BackendAddressPool>
</BackendAddressPools>
<FrontEndConfigurations>
<FrontEndConfiguration>
<Name>LoadBalancerFrontEnd</Name>
<ProvisioningState>Succeeded</ProvisioningState>
<Url>/subscriptions/xxxxxxxxxxxx/resourceGroups/Api-Default-Central-US/providers/Microsoft.Network/loadBalancers/CaseT42410/frontendIPConfigurations/LoadBalancerFrontEnd</Url>
<PrivateIpAllocationMethod>Dynamic</PrivateIpAllocationMethod>
<PublicIpAllocationMethod>Dynamic</PublicIpAllocationMethod>
<PublicIpAddressVersion>IPv4</PublicIpAddressVersion>
<IdleTimeoutInMinutes>4</IdleTimeoutInMinutes>
<IsInternalFrontend>false</IsInternalFrontend>
</FrontEndConfiguration>
</FrontEndConfigurations>
<LoadBalancingRules />
<LoadBalancerProbes />
<InboundNatRules />
</LoadBalancer>
<LoadBalancer>
<ResourceGuid>xxxxxxxxxxxx</ResourceGuid>
<ResourceGroupName>CloudCheckrAppTest</ResourceGroupName>
<Name>WebFrontEnd</Name>
<LocationName>East US</LocationName>
<ProvisioningState>Succeeded</ProvisioningState>
<Url>/subscriptions/xxxxxxxxxxxx/resourceGroups/CloudCheckrAppTest/providers/Microsoft.Network/loadBalancers/WebFrontEnd</Url>
<BackendAddressPools>
<BackendAddressPool>
<Name>WebAppPool</Name>
<ProvisioningState>Succeeded</ProvisioningState>
<Url>/subscriptions/xxxxxxxxxxxx/resourceGroups/CloudCheckrAppTest/providers/Microsoft.Network/loadBalancers/WebFrontEnd/backendAddressPools/WebAppPool</Url>
</BackendAddressPool>
</BackendAddressPools>
<FrontEndConfigurations>
<FrontEndConfiguration>
<Name>LoadBalancerFrontEnd</Name>
<ProvisioningState>Succeeded</ProvisioningState>
<Url>/subscriptions/xxxxxxxxxxxx/resourceGroups/CloudCheckrAppTest/providers/Microsoft.Network/loadBalancers/WebFrontEnd/frontendIPConfigurations/LoadBalancerFrontEnd</Url>
<PrivateIpAllocationMethod>Dynamic</PrivateIpAllocationMethod>
<PublicIpAllocationMethod>Dynamic</PublicIpAllocationMethod>
<PublicIpAddressVersion>IPv4</PublicIpAddressVersion>
<IdleTimeoutInMinutes>4</IdleTimeoutInMinutes>
<IsInternalFrontend>false</IsInternalFrontend>
</FrontEndConfiguration>
</FrontEndConfigurations>
<LoadBalancingRules>
<LoadBalancingRule>
<Name>HTTPS</Name>
<ProvisioningState>Succeeded</ProvisioningState>
<Url>/subscriptions/xxxxxxxxxxxx/resourceGroups/CloudCheckrAppTest/providers/Microsoft.Network/loadBalancers/WebFrontEnd/loadBalancingRules/HTTPS</Url>
<Protocol>Tcp</Protocol>
<LoadDistribution>Default</LoadDistribution>
<FrontendPort>443</FrontendPort>
<BackendPort>443</BackendPort>
<IdleTimeoutInMinutes>4</IdleTimeoutInMinutes>
<EnableFloatingIp>false</EnableFloatingIp>
</LoadBalancingRule>
</LoadBalancingRules>
<LoadBalancerProbes>
<LoadBalancerProbe>
<Name>https</Name>
<Url>/subscriptions/xxxxxxxxxxxx/resourceGroups/CloudCheckrAppTest/providers/Microsoft.Network/loadBalancers/WebFrontEnd/probes/https</Url>
<ProvisioningState>Succeeded</ProvisioningState>
<Protocol>Tcp</Protocol>
<Port>443</Port>
<IntervalInSeconds>5</IntervalInSeconds>
<NumberOfProbes>2</NumberOfProbes>
</LoadBalancerProbe>
</LoadBalancerProbes>
<InboundNatRules />
</LoadBalancer>
</LoadBalancers>
</AzureLoadBalancers>
{
"DateOfResults": "2021-03-08T17:41:41",
"TotalCount": 7,
"Count": 2,
"LoadBalancers": [
{
"ResourceGuid": "xxxxxxxxxxxx",
"ResourceGroupName": "Api-Default-Central-US",
"Name": "CaseT42410",
"LocationName": "West US",
"ProvisioningState": "Succeeded",
"Url": "/subscriptions/xxxxxxxxxxxx/resourceGroups/Api-Default-Central-US/providers/Microsoft.Network/loadBalancers/CaseT42410",
"BackendAddressPools": [
{
"Name": "BackendCaseT",
"ProvisioningState": "Succeeded",
"Url": "/subscriptions/xxxxxxxxxxxx/resourceGroups/Api-Default-Central-US/providers/Microsoft.Network/loadBalancers/CaseT42410/backendAddressPools/BackendCaseT"
}
],
"FrontEndConfigurations": [
{
"Name": "LoadBalancerFrontEnd",
"ProvisioningState": "Succeeded",
"Url": "/subscriptions/xxxxxxxxxxxx/resourceGroups/Api-Default-Central-US/providers/Microsoft.Network/loadBalancers/CaseT42410/frontendIPConfigurations/LoadBalancerFrontEnd",
"SubnetId": null,
"SubnetName": null,
"AddressPrefix": null,
"SubnetProvisioningState": null,
"PrivateIpAddress": null,
"PrivateIpAllocationMethod": "Dynamic",
"PublicIpAllocationMethod": "Dynamic",
"PublicIpAddressVersion": "IPv4",
"DnsSettingsDomainNameLabel": null,
"IpAddress": null,
"IdleTimeoutInMinutes": 4,
"IsInternalFrontend": false
}
],
"LoadBalancingRules": [],
"LoadBalancerProbes": [],
"InboundNatRules": []
},
{
"ResourceGuid": "yyyyyyyyyyyyyyy",
"ResourceGroupName": "CloudCheckrAppTest",
"Name": "WebFrontEnd",
"LocationName": "East US",
"ProvisioningState": "Succeeded",
"Url": "/subscriptions/xxxxxxxxxxxx/resourceGroups/CloudCheckrAppTest/providers/Microsoft.Network/loadBalancers/WebFrontEnd",
"BackendAddressPools": [
{
"Name": "WebAppPool",
"ProvisioningState": "Succeeded",
"Url": "/subscriptions/xxxxxxxxxxxx/resourceGroups/CloudCheckrAppTest/providers/Microsoft.Network/loadBalancers/WebFrontEnd/backendAddressPools/WebAppPool"
}
],
"FrontEndConfigurations": [
{
"Name": "LoadBalancerFrontEnd",
"ProvisioningState": "Succeeded",
"Url": "/subscriptions/xxxxxxxxxxxx/resourceGroups/CloudCheckrAppTest/providers/Microsoft.Network/loadBalancers/WebFrontEnd/frontendIPConfigurations/LoadBalancerFrontEnd",
"SubnetId": null,
"SubnetName": null,
"AddressPrefix": null,
"SubnetProvisioningState": null,
"PrivateIpAddress": null,
"PrivateIpAllocationMethod": "Dynamic",
"PublicIpAllocationMethod": "Dynamic",
"PublicIpAddressVersion": "IPv4",
"DnsSettingsDomainNameLabel": null,
"IpAddress": null,
"IdleTimeoutInMinutes": 4,
"IsInternalFrontend": false
}
],
"LoadBalancingRules": [
{
"Name": "HTTPS",
"ProvisioningState": "Succeeded",
"Url": "/subscriptions/xxxxxxxxxxxx/resourceGroups/CloudCheckrAppTest/providers/Microsoft.Network/loadBalancers/WebFrontEnd/loadBalancingRules/HTTPS",
"Protocol": "Tcp",
"LoadDistribution": "Default",
"FrontendPort": 443,
"BackendPort": 443,
"IdleTimeoutInMinutes": 4,
"EnableFloatingIp": false
}
],
"LoadBalancerProbes": [
{
"Name": "https",
"Url": "/subscriptions/xxxxxxxxxxxx/resourceGroups/CloudCheckrAppTest/providers/Microsoft.Network/loadBalancers/WebFrontEnd/probes/https", "ProvisioningState": "Succeeded",
"Protocol": "Tcp",
"Port": 443,
"IntervalInSeconds": 5,
"NumberOfProbes": 2,
"RequestPath": null
}
],
"InboundNatRules": []
}
],
"HasNext": true,
"NextToken": "H4sIAAAAAAAEAKWOMQrCQBBFj7Rok2ZYiBHSCIaQCwzxGxaWHd2ZaXJ6Q-y0TPV5Dx58al9p4CUVtiTl_uxhI1S8ztB29Yqb8OPCmcuMqlcYp6wj3g61SFuJeKKwL22hZ9MBdeczhR9Dkxjnr-zEi8WGwp-jcOTTB-wUJ-TRAAAA0"
}
<AzureLoadBalancers>
<HasNext>true</HasNext>
<NextToken>H4sIAAAAAAAEAKWOMQrCQBBFj7Rok2ZYiBHSCIaQCwzxGxaWHd2ZaXJ6Q-y0TPV5Dx58al9p4CUVtiTl_uxhI1S8ztB29Yqb8OPCmcuMqlcYp6wj3g61SFuJeKKwL22hZ9MBdeczhR9Dkxjnr-zEi8WGwp-jcOTTB-wUJ-TRAAAA0</NextToken>
<DateOfResults>2021-03-08T17:41:41</DateOfResults>
<TotalCount>7</TotalCount>
<LoadBalancers>
<LoadBalancer>
<ResourceGuid>yyyyyyyyyyyyyy</ResourceGuid>
<ResourceGroupName>Api-Default-Central-US</ResourceGroupName>
<Name>CaseT42410</Name>
<LocationName>West US</LocationName>
<ProvisioningState>Succeeded</ProvisioningState>
<Url>/subscriptions/xxxxxxxxxxxx/resourceGroups/Api-Default-Central-US/providers/Microsoft.Network/loadBalancers/CaseT42410</Url>
</LoadBalancer>
<LoadBalancer>
<ResourceGuid>xxxxxxxxxxxx</ResourceGuid>
<ResourceGroupName>CloudCheckrAppTest</ResourceGroupName>
<Name>WebFrontEnd</Name>
<LocationName>East US</LocationName>
<ProvisioningState>Succeeded</ProvisioningState>
<Url>/subscriptions/xxxxxxxxxxxx/resourceGroups/CloudCheckrAppTest/providers/Microsoft.Network/loadBalancers/WebFrontEnd</Url>
</LoadBalancer>
</LoadBalancers>
</AzureLoadBalancers>
{
"DateOfResults": "2021-03-08T17:41:41",
"TotalCount": 7,
"Count": 2,
"LoadBalancers": [
{
"ResourceGuid": "xxxxxxxxxxxx",
"ResourceGroupName": "Api-Default-Central-US",
"Name": "CaseT42410",
"LocationName": "West US",
"ProvisioningState": "Succeeded",
"Url": "/subscriptions/xxxxxxxxxxxx/resourceGroups/Api-Default-Central-US/providers/Microsoft.Network/loadBalancers/CaseT42410",
"BackendAddressPools": null,
"FrontEndConfigurations": null,
"LoadBalancingRules": null,
"LoadBalancerProbes": null,
"InboundNatRules": null
},
{
"ResourceGuid": "yyyyyyyyyyyyy",
"ResourceGroupName": "CloudCheckrAppTest",
"Name": "WebFrontEnd",
"LocationName": "East US",
"ProvisioningState": "Succeeded",
"Url": "/subscriptions/xxxxxxxxxxxx/resourceGroups/CloudCheckrAppTest/providers/Microsoft.Network/loadBalancers/WebFrontEnd",
"BackendAddressPools": null,
"FrontEndConfigurations": null,
"LoadBalancingRules": null,
"LoadBalancerProbes": null,
"InboundNatRules": null
}
],
"HasNext": true,
"NextToken": "H4sIAAAAAAAEAKWOMQrCQBBFj7Rok2ZYiBHSCIaQCwzxGxaWHd2ZaXJ6Q-y0TPV5Dx58al9p4CUVtiTl_uxhI1S8ztB29Yqb8OPCmcuMqlcYp6wj3g61SFuJeKKwL22hZ9MBdeczhR9Dkxjnr-zEi8WGwp-jcOTTB-wUJ-TRAAAA0"
}
}

Azure Billing Report Get Status

The API method, "azure_billing_report_get_status", is used to retrieve the information with the report rows on the reprocess billing reports page.

The preferred HTTP method for this call is GET.

INPUT PARAMETERS

Parameter Type Description
access_key string required; account-level or admin-level access key
billing_month string optional; retrieve a specific or the last 18 months of billing files and their status
use_cc_account_id string *optional/required; account ID of the account in CloudCheckr where the custom billing charge can be applied (must be a payer account)

API CALL URL

https://api.cloudcheckr.com/api/billing.json/azure_billing_report_get_status?access_key=[access_key]

EXAMPLE REQUEST

curl -- request POST \
-- 'https://api.cloudcheckr.com/api/billing.json/azure_billing_report_get_status' \
-- header 'access_key: [access key]' \
-- header 'content-type: application/json' \
-- data '{
"billing_month": "2023-01",
"use_cc_account_id": "15"
}

OUTPUT & RESPONSE

{
"UsageReport": [
{
"Type": "CspPortal",
"FileNames": "CspPortal-Invoice-2023-01-USD",
"Currencies": "USD",
"Month": "2023-01-01T00:00:00",
"StartDate": "2022-12-28T00:00:00",
"EndDate": "2023-01-27T23:59:59",
"LastUpdate": "2023-01-29T00:00:00",
"LastProcessedDate": "2023-01-29T15:57:43",
"ProcessState": "Processed",
"FullReset": false,
"Locked": true
}
],
"CustomerId": 12345,
"ProjectId": 12,
"Code": 200,
"Message": "OK"
}

Azure Billing Report Unlock Month

The API method, "azure_billing_report_unlock_month", is used to unlock billing months.

The preferred HTTP method for this call is POST.

INPUT PARAMETERS

Parameter Type Description
access_key string required; account-level or admin-level access key
lock_month boolean required; false to unlock the month, true to lock the month
change_reseller_files boolean optional; included parameter to change the status of associated L2 accounts. True to unlock the month, false to lock the month.
billing_month string required; specify the billing month in yyyy-mm format
use_cc_account_id string *optional/required; account ID of the account in CloudCheckr where the custom billing charge can be applied (must be a payer account)

API CALL URL

https://api.cloudcheckr.com/api/billing.json/azure_billing_report_unlock_month?access_key=[access_key]

EXAMPLE REQUEST

curl -- request POST \
-- 'https://api.cloudcheckr.com/api/billing.json/azure_billing_report_unlock_month' \
-- header 'access_key: [access key]' \
-- header 'content-type: application/json' \
-- data '{
"lock_month": "false",
"change_reseller_files": "false",
"billing_month": "2023-01",
"use_cc_account_id": "3"
}

OUTPUT & RESPONSE

{
"CustomerId": 1234,
"ProjectId": 1234,
"Code": 200,
"Message": "Billing period 2023-01 was unlocked"
}

Azure Billing Report Reprocess Month

The API method, "azure_billing_report_reprocess_month", is used to trigger a reload for the specified, unlocked billing files.

The preferred HTTP method for this call is POST.

INPUT PARAMETERS

Parameter Type Description
access_key string required; account-level or admin-level access key
billing_month string required; the billing month to reload, in yyyy-mm format
use_cc_account_id string *optional/required; account ID of the account in CloudCheckr where the custom billing charge can be applied (must be a payer account)

API CALL URL

https://api.cloudcheckr.com/api/billing.json/azure_billing_report_reprocess_month?access_key=[access_key]

EXAMPLE REQUEST

curl -- request POST \
-- 'https://api.cloudcheckr.com/api/billing.json/azure_billing_report_reprocess_month' \
-- header 'access_key: [access key]' \
-- header 'content-type: application/json' \
-- data '{
"billing_month": "2023-01",
"use_cc_account_id": "3"
}

OUTPUT & RESPONSE

{
"CustomerId": 123,
"ProjectId": 123,
"Code": 200,
"Message": "Billing period 2023-01 was set to reprocess."
}

How did we do?