rsc_get_workloads
Retrieve and filter workloads across clusters by object type, SLA domain, protection and compliance states, and backup activity to assess coverage and risk.
Instructions
List workloads with protection, compliance, usage, and backup status.
Each result includes:
Identity: fid, name, objectType
SLA: slaDomain (assigned SLA), protectionStatus (Protected/NoSla/DoNotProtect)
Compliance: complianceStatus (IN_COMPLIANCE, OUT_OF_COMPLIANCE, etc.)
Backup history: lastSnapshot, localSnapshots, missedSnapshots, totalSnapshots
Usage: physicalBytes, logicalBytes
Location: location (e.g. vCenter, host, or instance the workload lives on), cluster (Rubrik cluster managing the workload)
Args: object_type: Filter by workload type, e.g. "NutanixVirtualMachine", "VmwareVirtualMachine", "AzureNativeVm", "AwsNativeEc2Instance". Cannot be combined with excluded_object_types. protection_status: One of "Protected", "NoSla", "DoNotProtect". Omit to return all statuses. search_term: Filter by name substring. compliance_status: Filter by compliance state. One of: "IN_COMPLIANCE" — protected, active, no missed snapshots. "OUT_OF_COMPLIANCE" — protected, active, one or more missed snapshots. "UNPROTECTED" — no effective SLA assigned. "NOT_APPLICABLE" — protected but relic or archived; compliance not evaluated. "NOT_AVAILABLE" — protected and active but compliance could not be computed (SLA engine error or unmet precondition). "EMPTY" — report sync has not yet produced a value for this object; data is absent, not wrong. Indicates the cluster's report sync is lagging. Note: "NULL" also exists in the underlying store but is excluded from this filter — it indicates a workload with no compliance status object at all (distinct from EMPTY) and is not used in practice by the ETL pipeline. sla_time_range: Compliance window to evaluate. Defaults to the entire protection lifetime of each workload, which often overstates violations. Prefer a shorter window for actionable results. One of: "LAST_SNAPSHOT", "LAST_2_SNAPSHOTS", "LAST_3_SNAPSHOTS", "LAST_24_HOURS", "PAST_7_DAYS", "PAST_30_DAYS", "PAST_90_DAYS", "PAST_365_DAYS", "SINCE_PROTECTION". sla_id: Filter to workloads assigned to a specific SLA Domain ID. Use this to answer "list all VMs in SLA X" — pass the SLA's UUID. Matches on effective SLA (inherited or directly assigned). cluster_id: Filter to workloads managed by a specific Rubrik cluster UUID. object_fids: Filter to specific workload FIDs (list of UUIDs). Use to fetch details for a known set of workloads in a single call. object_state: Filter by lifecycle state. One of: "ACTIVE", "ARCHIVED", "RELIC", "NOT_SPECIFIED". Use "RELIC" to find decommissioned workloads that still have snapshots. org_id: Filter to workloads belonging to a specific organization UUID. is_local: True to return only local workloads; False for remote/replicated only. Omit to return both. excluded_object_types: List of workload types to exclude. Cannot be combined with object_type. sort_by: Field to sort by, e.g. "MissedSnapshots", "Name", "LastSnapshot", "ComplianceStatus", "SlaDomainName". sort_order: "ASC" or "DESC". limit: Maximum number of results to return. Omit for all results (bounded by the server-side record cap).
Returns:
A dict with:
- count: the true total matching the filter (the connection's count).
- returned: how many workloads are in this response.
- truncated: True when returned < count (more exist than returned,
because of limit or the record cap). Report count for
"how many" questions, not len(workloads).
- workloads: the list of workload records.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| org_id | No | ||
| sla_id | No | ||
| sort_by | No | ||
| is_local | No | ||
| cluster_id | No | ||
| sort_order | No | ||
| object_fids | No | ||
| object_type | No | ||
| search_term | No | ||
| object_state | No | ||
| sla_time_range | No | ||
| compliance_status | No | ||
| protection_status | No | ||
| excluded_object_types | No |