Azure Resource Inventory for PowerShell Azure Documentation
Azure Resource Inventory - It's a Powerful tool to create EXCEL inventory from Azure Resources with low effort
At a glance
- What is it?
- Azure Resource Inventory, or ARI, is a PowerShell module for generating Excel reports from accessible Azure environments. It targets administrators who need read-only inventory, network diagrams, tags, policy data, advisor data, and optional cost information.
- Who is it for?
- ARI fits cloud administrators and technical professionals who need a repeatable Excel artifact for an Azure environment they can read. It does not fit users who need a documented API or a continuously verified inventory service.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 6 days ago.
- What is it written in?
- Mainly PowerShell, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on October 23, 2026, and from our analysis. They are not legal advice.
Editorial analysis
What ARI Documents in Azure
Azure Resource Inventory addresses the need to turn Azure resource data into a report that administrators can review, store, and share. The README describes ARI as a PowerShell module that generates detailed Excel reports for an Azure environment to which the user has read access. Its intended users are Cloud Administrators and other technical professionals who need environment documentation.
The module focuses on reporting rather than deployment. Its documented operations are read-only and do not change Azure resources. The README identifies Windows, Linux, Mac, and Azure Cloud Shell as supported platforms. It also presents inventory at several scopes, including a tenant, one or more subscriptions, management groups, and resource groups. This is important for organizations where an account can read a broad tenant but the reporting requirement covers only selected services.
The report can include more than a resource list. ARI organizes resources by type and can add tags, network topology diagrams, Azure Advisor data, Azure Policy data, Security Center data, extra virtual machine details, and optional Azure Cost data. These categories make the workbook useful for architecture documentation, environment reviews, and technical handover. They also create permission and dependency requirements, so a successful basic run does not guarantee that every optional section will be available.
The repository is not archived. Its last push was on 2026-10-07. The listed releases include 3.6.15 from 2026-07-30, 3.6 from 2025-04-03, and 3.5 from 2024-09-02. The README does not publish a support policy, compatibility matrix, or upgrade procedure for these versions.
How Invoke-ARI Collects and Presents Data
The main command is `Invoke-ARI`. A basic execution imports the module and runs ARI without additional scope parameters. Scope can then be narrowed with `TenantID`, `SubscriptionID`, `ResourceGroup`, or `ManagementGroup`. Tag filtering is available through `TagKey` and `TagValue`, and `AzureEnvironment` selects a named Azure cloud environment.
The content controls determine what the report attempts to collect. `IncludeTags` adds resource tags. `SecurityCenter` requests Security Center data. `SkipPolicy`, `SkipAdvisory`, and `SkipVMDetails` omit selected categories. `IncludeCosts` requests subscription cost information and requires the `Az.CostManagement` module. These switches are useful when a report needs to stay focused or when an optional data source is unavailable.
Output is also configurable. `ReportName` changes the workbook name, while `ReportDir` changes the output directory. `Lite` uses lightweight Excel generation without charts. `SkipDiagram` prevents network diagram creation, and `DiagramFullEnvironment` includes all network components in the diagram. The repository contains `AzureResourceInventory.psm1`, `AzureResourceInventory.psd1`, a `Modules/` directory, and documentation under `docs/`. The README does not expose the internal API calls, workbook sheet names, or diagram algorithm, so those details remain undocumented.
Installing ARI from PowerShell Gallery
The following command installs the published module from PowerShell Gallery:
Install-Module -Name AzureResourceInventoryThe README does not specify a version pin, repository parameter, or uninstall command. If your environment has multiple PowerShell repositories or an existing module of the same name, check the active PowerShell configuration before relying on the installation result.
Running the First ARI Inventory
The first documented sequence is:
Import-Module AzureResourceInventory
Invoke-ARIThe basic command uses the current Azure context. For a tenant-specific run, the README provides:
Invoke-ARI -TenantID <Azure-Tenant-ID>To limit the report to a subscription, add `-SubscriptionID <Subscription-ID>`. To limit it to a resource group, the parameter reference lists `-ResourceGroup <NAME>`. The placeholder values are shown exactly as placeholders in the README; they must be replaced with real values from the target Azure environment.
Controlling ARI Report Scope and Contents
A small scope is preferable when the operator only needs documentation for one workload. Management group collection uses `-ManagementGroup <ID>`, while tenant and subscription parameters provide other boundaries. Tag filters can narrow the resource set with `-TagKey <NAME>` and `-TagValue <NAME>`. The README does not state whether these parameters accept multiple values, so command help should be checked before assuming array syntax.
Optional data changes the execution profile. `SecurityCenter` adds Security Center data. `SkipAdvisory` avoids Advisor collection, `SkipPolicy` avoids Policy collection, and `SkipVMDetails` avoids extra VM family details.
The report can be reduced further with `Lite` or `SkipDiagram`. The README does not publish runtime measurements, workbook size limits, or a complete table of Azure API permissions. Those limits are especially relevant when a tenant-wide inventory is attempted against a large environment.
Authentication and Automation Boundaries
The README lists interactive and service principal authentication parameters. `DeviceLogin` selects device login authentication. `AppId` and `Secret` identify an application and secret for service principal authentication, while `CertificatePath` supplies a certificate path. For automation, the module also documents `-Automation`, `-StorageAccount`, and `-StorageContainer`.
The README does not document secret storage, redaction, rotation, or retry behavior. A scheduled run that uses `-Secret` therefore requires an explicit review of how the value is supplied to PowerShell and who can access it. The linked Automation Guide is the relevant project document for the deployment details, but its steps are not reproduced in the README content available here.
The command is intended for read access, but read-only does not mean permission-free. Security Center, Policy, Advisor, VM details, and Cost data may depend on different Azure capabilities. A successful report for one subscription does not prove that the same options are available in another subscription or management group. Operators should test the selected scope and optional sections before scheduling recurring collection.
ARI Limitations and Manual Alternatives
The main limitation is that Excel output is not described as a machine-readable inventory contract. The README does not define a stable workbook schema, report version policy, export API, or automated check that every resource was captured. The workbook can document an environment, but a separate review is needed if it will serve as compliance evidence.
A network diagram is another bounded feature. `SkipDiagram` omits the diagram, and `DiagramFullEnvironment` expands it. The README does not identify the underlying graph components or explain how missing relationships are represented. The diagram should be checked as a generated view rather than treated as a complete dependency graph.
The direct alternative is manual inventory documentation. Manual work can produce a spreadsheet, but it does not use ARI's PowerShell command, scope filters, optional collectors, or Excel formatting. ARI is a better fit when an operator needs repeatable collection from live Azure access. It is a poorer fit when the requirement is a stable API response, a continuously verified inventory service, or a report consumed directly by another application. `-Lite` and the skip switches make ARI smaller, but they do not turn it into a different kind of inventory system.
Licensing and Adoption Checks
The project is distributed under the MIT license. The license notice and disclaimer should be retained as required by the license. This review does not provide legal interpretation for a particular organization or deployment.
For an initial adoption check, install the module, authenticate to the intended Azure scope, and run ARI against a representative subscription. Verify that resource types appear in the expected report sections. Then decide whether tags, Security Center, Advisor, Policy, VM details, Cost data, charts, and network diagrams are required. Remove optional collections that do not add value to the documentation.
The last push was on 2026-10-07, and the latest listed release is 3.6.15 from 2026-07-30. Before standardizing on a version, inspect the release notes for your own upgrade policy. ARI's concrete fit is a read-oriented Excel inventory module for accessible Azure environments, not a complete governance platform or an API-defined inventory service.
Editorial conclusion
ARI fits cloud administrators and technical professionals who need a repeatable Excel artifact for an Azure environment they can read. It does not fit users who need a documented API or a continuously verified inventory service. Check authentication, scope, permissions, optional modules, diagram output, and workbook contents first.
Frequently asked questions
What is Azure Resource Inventory used for?
Azure Resource Inventory generates Excel reports documenting Azure resources and related environment data for users with read access. The README positions it for Cloud Administrators and technical professionals.
How do I install Azure Resource Inventory?
The README specifies `Install-Module -Name AzureResourceInventory` and lists PowerShell 7.0 or later as a prerequisite.
How do I generate a basic Azure Resource Inventory report?
Run `Import-Module AzureResourceInventory`, then run `Invoke-ARI`. You can add documented scope and content parameters such as `TenantID`, `SubscriptionID`, `ResourceGroup`, `IncludeTags`, or `SkipDiagram`.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/microsoft-ari)Was this useful?