# Cloud Support Matrix

> Supported resource types, capabilities, and cloud provider coverage. AWS, GCP, and Azure breakdown with discoverable, schedulable, and executable counts.

Source: https://zop.dev/developer-docs/cloud-setup/cloud-support

---

Detailed breakdown of supported resource types, capabilities, and cloud provider coverage.

## Capability Levels

| Capability | Description |
|---|---|
| **Discovery** | Resource is automatically discovered from the cloud provider. Includes metadata like name, region, status, tags, and instance type. All resource types support discovery. |
| **Schedulable** | Resource can be attached to schedules and resource groups. The scheduler will generate start/stop intents for these resources when crons fire. |
| **Execution** | Resource supports direct start/stop execution via cloud provider APIs. The executor can call the cloud API to change the resource state. Resources without execution support are schedulable but require manual intervention. |

## Provider Summary

<div className="grid sm:grid-cols-3 gap-4 mb-8">
  <div className="rounded-lg border-l-4 p-4 border-amber-400 bg-amber-50">
    <h3 className="font-bold text-gray-900 text-lg">AWS</h3>
    <div className="mt-2 space-y-1 text-sm text-gray-700">
      <p><span className="font-medium">64</span> discoverable resource types</p>
      <p><span className="font-medium">19</span> schedulable</p>
      <p><span className="font-medium">16</span> with direct execution</p>
    </div>
  </div>
  <div className="rounded-lg border-l-4 p-4 border-blue-400 bg-blue-50">
    <h3 className="font-bold text-gray-900 text-lg">GCP</h3>
    <div className="mt-2 space-y-1 text-sm text-gray-700">
      <p><span className="font-medium">37</span> discoverable resource types</p>
      <p><span className="font-medium">7</span> schedulable</p>
      <p><span className="font-medium">7</span> with direct execution</p>
    </div>
  </div>
  <div className="rounded-lg border-l-4 p-4 border-cyan-400 bg-cyan-50">
    <h3 className="font-bold text-gray-900 text-lg">Azure</h3>
    <div className="mt-2 space-y-1 text-sm text-gray-700">
      <p><span className="font-medium">53</span> discoverable resource types</p>
      <p><span className="font-medium">8</span> schedulable</p>
      <p><span className="font-medium">8</span> with direct execution</p>
    </div>
  </div>
</div>

## Authentication Methods

| Provider | Auth Methods |
|---|---|
| **Amazon Web Services** | `static_keys`, `assume_role`, `temporary_credentials` |
| **Google Cloud Platform** | `service_account`, `oauth` |
| **Microsoft Azure** | `service_principal`, `workload_identity_federation` |

## AWS Resource Types

**Supported resource types: aws**

## GCP Resource Types

**Supported resource types: gcp**

## Azure Resource Types

**Supported resource types: azure**

## Region Discovery

| Provider | Region Model | Description |
|---|---|---|
| **AWS** | Region-specific | Resources are discovered per-region. Auto-detects enabled regions via EC2 DescribeRegions. |
| **GCP** | Global (Aggregated) | Uses AggregatedList API to discover resources across all zones in a single call. |
| **Azure** | Global (Aggregated) | Discovers resources across all regions within the subscription. |

## Pricing & Metrics

| Provider | Pricing Source | Metrics Source | Metric Granularity |
|---|---|---|---|
| **AWS** | Public Pricing API + fallback rates | CloudWatch | 1-hour, 14-day window |
| **GCP** | Cloud Billing Catalog API | Cloud Monitoring | 1-hour, 14-day window |
| **Azure** | Retail Pricing API | Azure Monitor | 1-hour, 14-day window |

**Info**

For each resource with monitoring support, ZopNight collects CPU utilization, network I/O (bytes in/out), and disk I/O (read/write). These metrics are used by the recommender to detect idle resources and suggest rightsizing.

## Complete Matrix

All resource types across all providers in a single view:
