I want to use boto3 to get list of available aws services in a specific region. Is there any way to do this. I tried using Session object:
session = boto3.Session(region_name='ap-south-1').get_available_services()
but it is giving me all the AWS services. For eg: Cloudsearch is not present in ap-south-1, but this function still gives me the service in the output. Also, I don't want to use ssm service get_parameters_by_path function as I don't want to give ssm permission. Any other way?
To be frank, I reckon, your best bet actually is the
Systems Manager Parameter Store.For example, you can easily display a complete list of all available AWS services, sort them into alphabetical order, and, for the brevity, show the first 10.
Output:
And here's how to get the list of services that are available in a given region. Show first 10 and sorted.
But... if you want any other way you might want to try AWS Price List API.
This obviously can be narrowed down to a specific region. If there's a price, there is a service.