Connector docs — Azure
Exactly what CostMon asks for to read Azure
CostMon calls Azure Cost Management's Query API once per sync, daily granularity, grouped by service name and region, scoped to one subscription.
What CostMon calls
The literal API surface, nothing more
- Cost Management — Query API
- POST /subscriptions/<id>/providers/Microsoft.CostManagement/query, ActualCost type, daily granularity, grouped by ServiceName and ResourceLocation.
What you supply
Credential and config fields
tenant_idTenant IDrequired
client_idClient IDrequired
client_secretClient secretsecretrequired
subscription_idSubscription IDrequired
Minimum permission
Copy this, not a broader role
Scope of access
What Azure access can't reach
- Virtual machines, storage accounts, or any other Azure resource
- Any subscription other than the one you scope the app registration to
- Any Azure Resource Manager API besides Cost Management's query endpoint
Troubleshooting
Setup errors and what they mean
- subscription_id is required
- The connector config is missing a subscription ID. Add the subscription you registered the app against.
- tenant_id, client_id, and client_secret are all required
- One of the three app-registration values is missing. All three are required together; there's no partial-credential state.
FAQ
Common questions about the Azure connector
Does CostMon get access to my VMs or storage through this app registration?
No. Cost Management Reader only grants read access to billing data. It carries no permission to read or change any actual Azure resource.
Can one connector cover multiple subscriptions?
No, one connector is scoped to one subscription_id. Connect each subscription you want visibility into separately.
A rate you looked up will change again.
Provider pricing pages change without notice. CostMon tracks the bill that pays for it.