I am trying to create a azure resource id in python script using information of provider and resourcegroup name. which will be used for rest api calls. But the problem is I have only name of subscription. How can I fetch subscriptionId in my prog?
            Asked
            
        
        
            Active
            
        
            Viewed 1,118 times
        
    0
            
            
        - 
                    You would need to get the list of all subscriptions and then find a matching subscription based on the subscription name. – Gaurav Mantri May 20 '22 at 15:19
 - 
                    To get the list of all subscriptions, you can use the SubscriptionClient in azure-mgmt-resource – Laurent Mazuel May 20 '22 at 21:26
 - 
                    +1 to Laurent, refer to https://learn.microsoft.com/en-us/python/api/azure-mgmt-resource/azure.mgmt.resource.subscriptions.subscriptionclient?view=azure-python-preview for more detial – Elendil Zheng-MSFT May 23 '22 at 06:57
 
1 Answers
-1
            
            
        You can achieve this by calling azcli in python to get the subscription details which follows
Here I am following github code to achieve your requirement
def list_subscriptions():
    log = logging.getLogger(__name__)
try:
    subClient = get_client_from_cli_profile(SubscriptionClient)
except CLIError:
    log.info("Not logged in, running az login")
_run_az_cli_login()
    subClient = get_client_from_cli_profile(SubscriptionClient)
    return [["Subscription_name", "Subscription ID"]] + [[sub.display_name, sub.subscription_id]
        for sub in sub_client.subscriptions.list()
    ]
Reference:
List subscriptions for a given Azure account
        SuryasriKamini-MT
        
- 771
 - 2
 - 5