Skip to content

Resource Inventory: See Every Cloud Resource Across AWS, Azure & GCP

import { Steps } from ‘@astrojs/starlight/components’;

Xplorr automatically discovers and tracks every cloud resource across your connected AWS, Azure, and GCP accounts. The inventory syncs alongside your billing data, so you always have a current view of what’s running and where.

Your cloud bill is a sum of resources. If you can’t see the resources, you can’t control the cost. Common problems the inventory solves:

  • Forgotten resources — A staging database nobody uses, still running at $180/month.
  • Orphaned volumes — EBS volumes detached from terminated instances, costing $0.10/GB/month each.
  • Region sprawl — Resources scattered across regions you didn’t intend to use.
  • Tag gaps — Resources missing required tags, making cost allocation impossible.

EC2 instances, EBS volumes, VPCs, subnets, security groups, NAT gateways, internet gateways, load balancers, RDS instances, RDS clusters, Lambda functions, DynamoDB tables, ElastiCache clusters, and S3 buckets.

All ARM resource types via the Resource Management API — virtual machines, disks, SQL databases, AKS clusters, Cosmos DB accounts, and more.

30+ resource types via the Cloud Asset API — Compute Engine instances, Cloud SQL, GKE clusters, BigQuery datasets, Cloud Storage buckets, and Cloud Run services.

Resource inventory is collected during every cost sync. When Xplorr syncs billing data from your cloud accounts, it also queries resource APIs to discover current resources:

  1. AWS — Uses EC2 DescribeInstances, RDS DescribeDBInstances, EBS DescribeVolumes, etc.
  2. Azure — Uses the ARM Resource Management API to list all resources in the subscription.
  3. GCP — Uses the Cloud Asset API to list resources across projects.

Each resource is upserted by its unique (cloud_account_id, resource_id) pair. New resources get a discovered_at timestamp. Existing resources get their metadata updated.

Navigate to Inventory in the left sidebar of your console.

Use the filter bar at the top to narrow results:

FilterOptions
ProviderAWS, Azure, GCP
AccountAny connected cloud account
RegionAll regions discovered in your accounts
Resource typeEC2 Instance, EBS Volume, RDS Instance, etc.
StatusRunning, Stopped, Available, etc.
SearchFree-text search across resource name and ID

The Filters dropdown auto-populates with distinct values from your actual resources, so you only see options that exist in your infrastructure.

Results are paginated (up to 100 per page). Use the page controls at the bottom to navigate.

  • Admins see all resources across all accounts.
  • Members and Viewers only see resources from accounts they’ve been granted access to via the team management settings.

Click Export CSV to download up to 50,000 resources. The export includes:

ColumnDescription
AccountCloud account name
Provideraws, azure, or gcp
Resource TypeE.g., EC2 Instance, RDS Instance
NameResource name or identifier
IDCloud-native resource ID (e.g., i-0a3f...)
RegionE.g., us-east-1, westus2, us-central1
StatusRunning, Stopped, Available, etc.
TagsJSON object of all tags
Discovered AtWhen Xplorr first saw this resource
Updated AtLast time metadata was refreshed

The inventory powers several recommendation types:

  • Idle resources — EC2 instances, RDS databases, and EBS volumes with low utilization are flagged.
  • Orphaned volumes — EBS volumes in “Available” status (not attached to any instance).
  • Rightsizing — Over-provisioned instances identified by comparing resource metadata with cost data.

When you see a recommendation in the Recommendations page, you can cross-reference it with the inventory to see the full resource details.

The inventory is the data source for tagging policy enforcement. When you define required tags, Xplorr checks every resource in the inventory for compliance. Resources missing required tags appear as violations.

Query the inventory programmatically:

Terminal window
# List resources with filters
curl -H "Authorization: Bearer $TOKEN" \
"https://api.xplorr.io/api/v1/inventory?provider=aws&type=EC2%20Instance&status=Running&limit=50"
# Get filter options
curl -H "Authorization: Bearer $TOKEN" \
"https://api.xplorr.io/api/v1/inventory/filters"
# Export as CSV
curl -H "Authorization: Bearer $TOKEN" \
"https://api.xplorr.io/api/v1/inventory/export" -o inventory.csv
  • Check inventory after every sync to spot newly launched resources before they accumulate cost.
  • Filter by status “Stopped” to find resources you’re still paying storage costs on (EBS volumes attached to stopped instances).
  • Use the search bar to quickly find a specific resource by name or ID when investigating an anomaly.
  • Combine with tagging policies to enforce governance — if a resource shows up untagged, you’ll know about it immediately.