1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
|
Commerce - Billing API
======================
Create the commerce client
----------------------------
The following code creates an instance of the management client.
You will need to provide your ``subscription_id`` which can be retrieved
from `your subscription list <https://manage.windowsazure.com/#Workspaces/AdminTasks/SubscriptionMapping>`__.
See :doc:`Resource Management Authentication <resourcemanagementauthentication>`
for details on getting a ``Credentials`` instance.
.. code:: python
from azure.mgmt.commerce import UsageManagementClient
# TODO: Replace this with your subscription id
subscription_id = '33333333-3333-3333-3333-333333333333'
# TODO: See above how to get a Credentials instance
credentials = ...
commerce_client = UsageManagementClient(
credentials,
subscription_id
)
Registration
------------
Some operations in the ARM APIs require a one-time registration of the
provider with your subscription.
Use the following code to do the registration. You can use the same
credentials you created in the previous section.
.. code:: python
from azure.mgmt.resource.resources import ResourceManagementClient
resource_client = ResourceManagementClient(
credentials,
subscription_id
)
resource_client.providers.register('Microsoft.Commerce')
Get rate card
-------------
.. code:: python
# OfferDurableID: https://azure.microsoft.com/en-us/support/legal/offer-details/
rate = self.commerce_client.rate_card.get(
"OfferDurableId eq 'MS-AZR-0062P' and Currency eq 'USD' and Locale eq 'en-US' and RegionInfo eq 'US'"
)
Get Usage
---------
.. code:: python
from datetime import date, timedelta
# Takes onky dates in full ISO8601 with 'T00:00:00Z'
usage_list = self.commerce_client.usage_aggregates.list(
str(date.today() - timedelta(days=1))+'T00:00:00Z',
str(date.today())+'T00:00:00Z'
)
|