SLA Domains
What are SLA Domains?
Rubrik SLA Domains are data protection policies that define:
- The object types for which the policy can be applied
- The frequency of the backups
- The retention of the backups
- The replication destination of the backups
- The archival location of the backups
- Object specific settings based on the type (e.g. MSSQL Database)
Retrieve All SLAs
query {
slaDomains {
nodes {
id
name
... on GlobalSlaReply {
isDefault
description
snapshotSchedule {
minute {
basicSchedule {
frequency
retention
retentionUnit
}
}
hourly {
basicSchedule {
frequency
retention
retentionUnit
}
}
daily {
basicSchedule {
frequency
retention
retentionUnit
}
}
weekly {
basicSchedule {
frequency
retention
retentionUnit
}
dayOfWeek
}
monthly {
basicSchedule {
frequency
retention
retentionUnit
}
dayOfMonth
}
quarterly {
basicSchedule {
frequency
retention
retentionUnit
}
dayOfQuarter
quarterStartMonth
}
yearly {
basicSchedule {
frequency
retention
retentionUnit
}
dayOfYear
yearStartMonth
}
}
archivalSpecs {
threshold
thresholdUnit
storageSetting {
id
name
groupType
}
archivalTieringSpec {
coldStorageClass
minAccessibleDurationInSeconds
isInstantTieringEnabled
}
}
backupWindows {
durationInHours
startTimeAttributes {
hour
minute
}
}
firstFullBackupWindows {
durationInHours
startTimeAttributes {
dayOfWeek {
day
}
hour
minute
}
}
replicationSpecsV2 {
replicationLocalRetentionDuration {
duration
unit
}
cascadingArchivalSpecs {
archivalTieringSpec {
coldStorageClass
shouldTierExistingSnapshots
minAccessibleDurationInSeconds
isInstantTieringEnabled
}
archivalLocation {
id
name
targetType
... on RubrikManagedAwsTarget {
immutabilitySettings {
lockDurationDays
}
}
... on RubrikManagedAzureTarget {
immutabilitySettings {
lockDurationDays
}
}
... on RubrikManagedNfsTarget {
host
}
... on CdmManagedAwsTarget {
immutabilitySettings {
lockDurationDays
}
}
... on CdmManagedAzureTarget {
immutabilitySettings {
lockDurationDays
}
}
}
frequency
archivalThreshold {
duration
unit
}
}
retentionDuration {
duration
unit
}
cluster {
id
name
}
targetMapping {
id
name
}
awsTarget {
accountId
accountName
region
}
azureTarget {
region
}
}
localRetentionLimit {
duration
unit
}
objectSpecificConfigs {
sapHanaConfig {
incrementalFrequency {
duration
unit
}
differentialFrequency {
duration
unit
}
logRetention {
duration
unit
}
}
awsRdsConfig {
logRetention {
duration
}
}
vmwareVmConfig {
logRetentionSeconds
}
}
clusterToSyncStatusMap {
clusterUuid
slaSyncStatus
}
objectTypes
upgradeInfo {
eligibility {
isEligible
ineligibilityReason
}
latestUpgrade {
status
msg
}
}
allOrgsHavingAccess {
id
name
}
ownerOrg {
id
name
}
isRetentionLockedSla
}
... on ClusterSlaDomain {
cdmId
name
cluster {
name
version
}
snapshotSchedule {
minute {
basicSchedule {
frequency
retention
retentionUnit
}
}
hourly {
basicSchedule {
frequency
retention
retentionUnit
}
}
daily {
basicSchedule {
frequency
retention
retentionUnit
}
}
weekly {
basicSchedule {
frequency
retention
retentionUnit
}
dayOfWeek
}
monthly {
basicSchedule {
frequency
retention
retentionUnit
}
dayOfMonth
}
quarterly {
basicSchedule {
frequency
retention
retentionUnit
}
dayOfQuarter
quarterStartMonth
}
yearly {
basicSchedule {
frequency
retention
retentionUnit
}
dayOfYear
yearStartMonth
}
}
backupWindows {
durationInHours
startTimeAttributes {
hour
minute
}
}
firstFullBackupWindows {
durationInHours
startTimeAttributes {
dayOfWeek {
day
}
hour
minute
}
}
archivalSpec {
threshold
thresholdUnit
archivalLocationName
archivalLocationId
archivalTieringSpec {
coldStorageClass
minAccessibleDurationInSeconds
isInstantTieringEnabled
}
}
replicationSpecsV2 {
retentionDuration {
duration
unit
}
cluster {
id
name
}
targetMapping {
id
name
}
awsTarget {
accountId
accountName
region
}
azureTarget {
region
}
}
localRetentionLimit {
duration
unit
}
upgradeInfo {
eligibility {
isEligible
ineligibilityReason
}
latestUpgrade {
status
msg
}
}
ownerOrg {
id
name
}
isRetentionLockedSla
}
}
pageInfo {
endCursor
hasNextPage
}
}
}
Retrieve an SLA by Name
Generally, the name of the SLA may be known, but not the ID. The slaDomains
query allows filtering on several fields, including NAME
.
query {
slaDomains(filter: {field: NAME text: "foo"}) {
nodes {
id
name
... on GlobalSlaReply {
isDefault
description
snapshotSchedule {
minute {
basicSchedule {
frequency
retention
retentionUnit
}
}
hourly {
basicSchedule {
frequency
retention
retentionUnit
}
}
daily {
basicSchedule {
frequency
retention
retentionUnit
}
}
weekly {
basicSchedule {
frequency
retention
retentionUnit
}
dayOfWeek
}
monthly {
basicSchedule {
frequency
retention
retentionUnit
}
dayOfMonth
}
quarterly {
basicSchedule {
frequency
retention
retentionUnit
}
dayOfQuarter
quarterStartMonth
}
yearly {
basicSchedule {
frequency
retention
retentionUnit
}
dayOfYear
yearStartMonth
}
}
archivalSpecs {
threshold
thresholdUnit
storageSetting {
id
name
groupType
}
archivalTieringSpec {
coldStorageClass
minAccessibleDurationInSeconds
isInstantTieringEnabled
}
}
backupWindows {
durationInHours
startTimeAttributes {
hour
minute
}
}
firstFullBackupWindows {
durationInHours
startTimeAttributes {
dayOfWeek {
day
}
hour
minute
}
}
replicationSpecsV2 {
replicationLocalRetentionDuration {
duration
unit
}
cascadingArchivalSpecs {
archivalTieringSpec {
coldStorageClass
shouldTierExistingSnapshots
minAccessibleDurationInSeconds
isInstantTieringEnabled
}
archivalLocation {
id
name
targetType
... on RubrikManagedAwsTarget {
immutabilitySettings {
lockDurationDays
}
}
... on RubrikManagedAzureTarget {
immutabilitySettings {
lockDurationDays
}
}
... on RubrikManagedNfsTarget {
host
}
... on CdmManagedAwsTarget {
immutabilitySettings {
lockDurationDays
}
}
... on CdmManagedAzureTarget {
immutabilitySettings {
lockDurationDays
}
}
}
frequency
archivalThreshold {
duration
unit
}
}
retentionDuration {
duration
unit
}
cluster {
id
name
}
targetMapping {
id
name
}
awsTarget {
accountId
accountName
region
}
azureTarget {
region
}
}
localRetentionLimit {
duration
unit
}
objectSpecificConfigs {
sapHanaConfig {
incrementalFrequency {
duration
unit
}
differentialFrequency {
duration
unit
}
logRetention {
duration
unit
}
}
awsRdsConfig {
logRetention {
duration
}
}
vmwareVmConfig {
logRetentionSeconds
}
}
clusterToSyncStatusMap {
clusterUuid
slaSyncStatus
}
objectTypes
upgradeInfo {
eligibility {
isEligible
ineligibilityReason
}
latestUpgrade {
status
msg
}
}
allOrgsHavingAccess {
id
name
}
ownerOrg {
id
name
}
isRetentionLockedSla
}
... on ClusterSlaDomain {
cdmId
name
cluster {
name
version
}
snapshotSchedule {
minute {
basicSchedule {
frequency
retention
retentionUnit
}
}
hourly {
basicSchedule {
frequency
retention
retentionUnit
}
}
daily {
basicSchedule {
frequency
retention
retentionUnit
}
}
weekly {
basicSchedule {
frequency
retention
retentionUnit
}
dayOfWeek
}
monthly {
basicSchedule {
frequency
retention
retentionUnit
}
dayOfMonth
}
quarterly {
basicSchedule {
frequency
retention
retentionUnit
}
dayOfQuarter
quarterStartMonth
}
yearly {
basicSchedule {
frequency
retention
retentionUnit
}
dayOfYear
yearStartMonth
}
}
backupWindows {
durationInHours
startTimeAttributes {
hour
minute
}
}
firstFullBackupWindows {
durationInHours
startTimeAttributes {
dayOfWeek {
day
}
hour
minute
}
}
archivalSpec {
threshold
thresholdUnit
archivalLocationName
archivalLocationId
archivalTieringSpec {
coldStorageClass
minAccessibleDurationInSeconds
isInstantTieringEnabled
}
}
replicationSpecsV2 {
retentionDuration {
duration
unit
}
cluster {
id
name
}
targetMapping {
id
name
}
awsTarget {
accountId
accountName
region
}
azureTarget {
region
}
}
localRetentionLimit {
duration
unit
}
upgradeInfo {
eligibility {
isEligible
ineligibilityReason
}
latestUpgrade {
status
msg
}
}
ownerOrg {
id
name
}
isRetentionLockedSla
}
}
pageInfo {
endCursor
hasNextPage
}
}
}
Note
Name filtering in slaDomains
is partial matching. If you provide the name "bronze", it will also return any other SLA domain with that name (e.g. "super-bronze").
Retrieve an Individual SLA
query {
slaDomain(id: "0CC22D1B-B761-4EF3-BC5B-82706D97FB05") {
id
name
... on GlobalSlaReply {
isDefault
description
snapshotSchedule {
minute {
basicSchedule {
frequency
retention
retentionUnit
}
}
hourly {
basicSchedule {
frequency
retention
retentionUnit
}
}
daily {
basicSchedule {
frequency
retention
retentionUnit
}
}
weekly {
basicSchedule {
frequency
retention
retentionUnit
}
dayOfWeek
}
monthly {
basicSchedule {
frequency
retention
retentionUnit
}
dayOfMonth
}
quarterly {
basicSchedule {
frequency
retention
retentionUnit
}
dayOfQuarter
quarterStartMonth
}
yearly {
basicSchedule {
frequency
retention
retentionUnit
}
dayOfYear
yearStartMonth
}
}
archivalSpecs {
threshold
thresholdUnit
archivalLocationToClusterMapping {
cluster {
id
name
}
location {
id
name
targetType
}
}
storageSetting {
id
name
groupType
}
archivalTieringSpec {
coldStorageClass
minAccessibleDurationInSeconds
isInstantTieringEnabled
}
frequencies
}
archivalLocationsUpgradeInfo {
locationId
upgradeStatus
upgradeUnsupportedReason
}
backupWindows {
durationInHours
startTimeAttributes {
hour
minute
}
}
firstFullBackupWindows {
durationInHours
startTimeAttributes {
dayOfWeek {
day
}
hour
minute
}
}
replicationSpecsV2 {
replicationPairs {
sourceCluster {
id
name
}
targetCluster {
id
name
version
clusterInfo {
... on LocalClusterInfo {
isIsolated: isAirGapped
isConnected
}
... on CrossAccountClusterInfo {
originAccount
isConnected
}
}
}
}
replicationLocalRetentionDuration {
duration
unit
}
cascadingArchivalSpecs {
archivalTieringSpec {
coldStorageClass
shouldTierExistingSnapshots
minAccessibleDurationInSeconds
isInstantTieringEnabled
}
archivalLocationToClusterMapping {
cluster {
id
name
version
clusterInfo {
... on LocalClusterInfo {
isIsolated: isAirGapped
isConnected
}
... on CrossAccountClusterInfo {
originAccount
isConnected
}
}
}
location {
id
name
targetType
... on RubrikManagedAwsTarget {
storageClass
immutabilitySettings {
lockDurationDays
}
}
... on RubrikManagedAzureTarget {
immutabilitySettings {
lockDurationDays
}
}
... on CdmManagedAwsTarget {
storageClass
immutabilitySettings {
lockDurationDays
}
}
... on CdmManagedAzureTarget {
immutabilitySettings {
lockDurationDays
}
}
... on RubrikManagedRcsTarget {
immutabilityPeriodDays
syncStatus
tier
}
... on RubrikManagedS3CompatibleTarget {
immutabilitySetting {
bucketLockDurationDays
}
}
}
}
archivalLocation {
id
name
targetType
... on RubrikManagedAwsTarget {
storageClass
immutabilitySettings {
lockDurationDays
}
}
... on RubrikManagedAzureTarget {
immutabilitySettings {
lockDurationDays
}
}
... on CdmManagedAwsTarget {
storageClass
immutabilitySettings {
lockDurationDays
}
}
... on CdmManagedAzureTarget {
immutabilitySettings {
lockDurationDays
}
}
... on RubrikManagedRcsTarget {
immutabilityPeriodDays
syncStatus
tier
}
... on RubrikManagedS3CompatibleTarget {
immutabilitySetting {
bucketLockDurationDays
}
}
}
frequency
archivalThreshold {
duration
unit
}
}
retentionDuration {
duration
unit
}
cluster {
id
name
version
clusterInfo {
... on LocalClusterInfo {
isIsolated: isAirGapped
isConnected
}
... on CrossAccountClusterInfo {
originAccount
isConnected
}
}
}
targetMapping {
id
name
targets {
id
name
cluster {
id
name
}
}
}
awsTarget {
accountId
accountName
region
}
azureTarget {
region
}
}
localRetentionLimit {
duration
unit
}
objectSpecificConfigs {
awsRdsConfig {
logRetention {
duration
unit
}
}
sapHanaConfig {
incrementalFrequency {
duration
unit
}
differentialFrequency {
duration
unit
}
logRetention {
duration
unit
}
}
db2Config {
incrementalFrequency {
duration
unit
}
differentialFrequency {
duration
unit
}
logRetention {
duration
unit
}
}
mongoConfig {
logFrequency {
duration
unit
}
logRetention {
duration
unit
}
}
mssqlConfig {
frequency {
duration
unit
}
logRetention {
duration
unit
}
}
oracleConfig {
frequency {
duration
unit
}
logRetention {
duration
unit
}
hostLogRetention {
duration
unit
}
}
vmwareVmConfig {
logRetentionSeconds
}
azureSqlDatabaseDbConfig {
logRetentionInDays
}
azureSqlManagedInstanceDbConfig {
logRetentionInDays
}
}
clusterToSyncStatusMap {
clusterUuid
slaSyncStatus
}
objectTypes
upgradeInfo {
eligibility {
isEligible
ineligibilityReason
}
latestUpgrade {
status
msg
}
}
allOrgsHavingAccess {
id
name
}
isRetentionLockedSla
retentionLockMode
}
}
}