UNPKG

@itentialopensource/adapter-rubrik

Version:

This adapter integrates with system described as: rubrikRestApi.

1,175 lines 50 kB
openapi: 3.0.0 info: title: Rubrik REST API description: "\nCopyright © 2017-2021 Rubrik Inc. [Legal](#section/Legal)\n\n# Introduction\n\nWelcome to the Rubrik™ REST API documentation.\n\nThe Rubrik REST API provides a RESTful interface for working with Rubrik clusters and Rubrik Edge virtual appliances. The Rubrik REST API can be used to query, configure, and control nearly all of the operations of the Rubrik software.\n\nThrough authenticated and encrypted interaction with the Rubrik REST API server, perform any of the operations that are available through the Rubrik web UI and many bulk-type operations that might otherwise be difficult or impossible to perform.\n\nThis documentation provides reference information and examples of typical workflows for the Rubrik REST API. For more detailed information about working with Rubrik clusters and Rubrik Edge virtual appliances refer to the *Rubrik User Guide*.\n\nA quick way to become familiar with the Rubrik REST API, is to use the Rubrik REST API Explorer. [OpenAPI](#section/OpenAPI) describes this tool.\n\nRefer to the [changelog](#section/Changelog) to see information about changes within this version of the Rubrik REST API.\n\n# Changelog\n\nRevisions are listed with the most recent revision first.\n\n## Changes to V3 API in Rubrik Version 8.0.0\n### Feature additions/improvements\n * Added new field `frequencies` to `ArchivalSpec` to specify the snapshots to\n be archived based on the frequencies at which the snapshots are taken.\n * Added new field `cloudStorageTiers` to `BaseSnapshotSummary`, this field will\n have only those archival location entries where `cloudStorageTier` is\n applicable.\n\n## Changes to V3 API in Rubrik Version 7.0.0\n### Feature additions/improvements\n* Added `OracleDatabase` and `Mssql` as two new keys in\n `LogConfigMap` for storing Oracle and MSSQL log SLA\n configuration in the SLA definition.\n\n## Changes to V3 API in Rubrik Version 6.0.0\n### New features and improvements\n* Added new field `primaryClusterSlaVersion` and an optional field\n `replicationTargetSlaVersion` in `SlaDomainSummaryV2` to return sla version\n of primary cluster and replication target in\n get, list, create and edit sla rest api responses.\n* Added new optional parameter `should_apply_to_non_policy_snapshots`\n in `PATCH /sla_domain/{id}`.\n\n## Changes to V3 API in Rubrik Version 5.2.0\n### Deprecation\n### New features and improvements\n \n\n# OpenAPI\nThe Rubrik REST API specification conforms to the OpenAPI 2.0 Specification. Tools that work with the OpenAPI 2.0 Specification can be used with the Rubrik REST API specification.\n\nDevelopment releases (pre-1.0) of the Rubrik REST API specification made reference to 'swagger'. The previous release of the OpenAPI 2.0 Specification was named the Swagger 1.2 Specification.\n\nDownload the Rubrik REST API specification for your tools. [Download](./api-docs)\n\n## Rubrik REST API Explorer\nThe Rubrik REST API Explorer is a browser-based API client hosted by the Rubrik cluster. The Explorer has the Rubrik REST API specification built in. You can use the Explorer to try out Rubrik REST API calls and view the responses.\n\n**IMPORTANT:** The Explorer interacts with the Rubrik cluster through the API calls you make. Use care when making calls that modify or delete configurations and data.\n\nTo access the Rubrik REST API Explorer, click: [Rubrik REST API Explorer](./playground/)\n\n# SLA Domains\n\nRubrik clusters provide automated data management and protection through SLA Domains.\nAn SLA Domain defines the data management and protection policies for their assigned snappables (virtual machines, file systems, and applications).\n\nTo provide policy based management and protection of a snappable, add the snappable to an SLA Domain, or to multiple SLA Domains.\n## Patching SLA Domains\n\nTo patch the attributes of an SLA domain, send a PATCH request to\n[`/sla_domain/{id}`](#operation/patchSlaDomainV3). Include in the request body\nonly the attributes that needs to be patched.\n\n**Example:** Patching the daily backup SLA Domain\n\nPatch the SLA Domain that was created in [Creating SLA Domains](#section/SLA-Domains/Creating-SLA-Domains) to change the archival specifications.\n\n```bash\ncurl -X PATCH \\\n -d '{\n \"archivalSpecs\": [\n {\n \"locationId\": \"some-valid-archived-location-id\",\n \"archivalThreshold\": 14\n }\n ]}' \\\n \"https://$cluster_address/api/v3/sla_domain/$sla_id\"\n```\nThe response confirms the new attribute and also includes the other\nattributes that were not changed.\n\n```bash\n{\n \"patchedSlaDomainSummary\" : [\n {\n id\": \"$sla_id\",\n \"name\": \"Daily SLA\",\n \"primaryClusterSlaVersion\": 2,\n \"frequencies\": [\n \"daily\": {\n \"frequency\": 1,\n \"retention\": 7\n }\n ],\n \"archivalSpecs\": [\n {\n \"locationId\": \"some-valid-archived-location-id\",\n \"archivalThreshold\": 14\n }\n ],\n \"allowedBackupWindows\": [],\n \"firstFullAllowedBackupWindows\": []\n }\n ],\n \"batchAsyncRequestStatus\" : [\n {\n \"responses\": [\n {\n \"id\": \"string\",\n \"status\": \"string\",\n \"progress\": 0,\n \"startTime\": \"2019-10-29T22:11:35.256Z\",\n \"endTime\": \"2019-10-29T22:11:35.256Z\",\n \"nodeId\": \"string\",\n \"error\": {\n \"message\": \"string\"\n },\n \"links\": [\n {\n \"href\": \"string\",\n \"rel\": \"string\"\n }\n ]\n }\n ]\n }\n ]\n}\n```\n\nThe Rubrik REST API server responds with HTTP response code 200 and the\nresponse body containing the details of the async request.\n\n# Legal\n\n## Copyright\n\nRubrik REST API - Copyright © 2017-2021 Rubrik Inc.\nAll rights reserved.\n\nThis documentation may be used free of charge. Selling without prior written consent is prohibited.\nObtain permission before redistributing. In all cases, this copyright notice and disclaimer must remain\nintact.\n\n\n## Disclaimer\n\nTHE CONTENTS OF THIS DOCUMENTATION ARE PROVIDED \"AS IS,\" AND COPYRIGHT HOLDERS MAKE NO\nREPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,\nWARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, OR\nTITLE; THAT THE CONTENTS OF THE DOCUMENTATION ARE SUITABLE FOR ANY PURPOSE; THAT THE\nIMPLEMENTATION OF SUCH CONTENTS WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS,\nTRADEMARKS OR OTHER RIGHTS.\nCOPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL\nDAMAGES ARISING OUT OF ANY USE OF THE DOCUMENTATION OR THE PERFORMANCE OR IMPLEMENTATION OF\nTHE CONTENTS THEREOF.\n\n## Trademarks\n\nRubrik, the Rubrik logo, Rubrik Envision, and Rubrik Edge are trademarks or registered trademarks of Rubrik, Inc. in the U.S. and/or other countries. All other trademarks are the property of their respective owners.\n" contact: {} version: '3' servers: - url: https://{defaultHost} variables: defaultHost: default: www.example.com/api/v3 paths: /sla_domain/{id}: patch: tags: - /sla_domain summary: patchSlaDomainV3 description: Update the properties of an SLA Domain. operationId: patchSlaDomainV3 parameters: - name: id in: path description: The ID of the SLA Domain. required: true style: simple schema: type: string - name: should_apply_to_non_policy_snapshots in: query description: Determines if the new configuration value keeps existing, non-policy snapshots of data sources retained by this SLA Domain. The value is 'false' by default. This configuration value takes effect only if 'should_apply_to_existing_snapshots' is set to true. style: form explode: true schema: type: boolean default: false - name: should_apply_to_existing_snapshots in: query description: Determines whether the new configuration retains existing snapshots of data sources that are currently retained by this SLA Domain. required: true style: form explode: true schema: type: boolean requestBody: description: Object containing the fields to edit for SLA Domain. The SLA Domain accepts two backup windows, one for a regular backup or snapshot and one for the first full backup or snapshot. Specify times using the Rubrik cluster timezone. Remote SLA Domains only support edits to the archival specification. content: application/json: schema: allOf: - $ref: '#/components/schemas/SlaDomainPatchDefinitionV2' - description: Object containing the fields to edit for SLA Domain. The SLA Domain accepts two backup windows, one for a regular backup or snapshot and one for the first full backup or snapshot. Specify times using the Rubrik cluster timezone. Remote SLA Domains only support edits to the archival specification. required: true responses: '202': description: Object containing updated SLA Domain along with queued asynchronous requests for assigning the patched SLA domain to affected objects. headers: {} content: application/json: schema: $ref: '#/components/schemas/SlaDomainUpdateSummary' deprecated: false components: schemas: NutanixVmSlaObjectCount: title: NutanixVmSlaObjectCount type: object properties: numNutanixVms: type: integer description: The number of Nutanix virtual machines protected under this SLA domain. format: int32 CloudStorageColdTier: title: CloudStorageColdTier enum: - AzureArchive - Glacier - GlacierDeepArchive type: string description: The set of storage classes that support Cold tiering during smart or instant tiering. CloudStorageRehydrationSpeed: title: CloudStorageRehydrationSpeed enum: - AwsBulk - AwsStandard - AwsExpedited - AzureStandard - AzureHighPriority type: string description: Specifies the retrieval speed option when retrieving data from the cold storage tier to the hot storage tier for restore purposes. Rubrik cannot directly restore data from the cold storage tier and the data must be first retrieved into the hot storage tier. This is applicable only for AWS S3 and Azure archival locations. For AWS, three speed options are supported -- AwsExpedited, AwsStandard, and AwsBulk. AwsBulk is the cheapest and slowest. AwsExpedited is the fastest and most expensive. AwsStandard is the recommended default value. For Azure, the options are AzureStandard and AzureHighPriority. AzureHighPriority is more expensive and faster than AzureStandard. The default value is AzureStandard. AwsEc2InstanceSlaObjectCount: title: AwsEc2InstanceSlaObjectCount type: object properties: numEc2Instances: type: integer description: The number of EC2 instances protected under this SLA Domain. format: int32 HypervVmSlaObjectCount: title: HypervVmSlaObjectCount type: object properties: numHypervVms: type: integer description: The number of Hyper-V virtual machines protected under this SLA domain. format: int32 Link: title: Link required: - href - rel type: object properties: href: type: string description: The destination of the link. rel: type: string description: The relation of the destination of this link to the current resource. ManagedVolumeSlaObjectCount: title: ManagedVolumeSlaObjectCount type: object properties: numManagedVolumes: type: integer description: The number of Managed volumes protected under this SLA Domain. format: int32 MssqlDbSlaObjectCount: title: MssqlDbSlaObjectCount type: object properties: numDbs: type: integer description: The number of actively protected databases under this SLA domain. format: int32 AdvancedUiConfigAttributes: title: AdvancedUiConfigAttributes required: - timeUnit - retentionType type: object properties: timeUnit: $ref: '#/components/schemas/SlaTimeUnit' retentionType: $ref: '#/components/schemas/SlaTimeUnit' ArchivalSpecV2: title: ArchivalSpecV2 required: - archivalThreshold type: object properties: locationId: type: string locationName: type: string polarisManagedId: type: string description: The Polaris managed ID of an archival location. At least one of the parameters locationId and polarisManagedId must be defined to correctly refer to an archival location. archivalThreshold: type: integer description: Amount of time, in seconds, after which the snapshot must be uploaded. format: int64 frequencies: type: array items: $ref: '#/components/schemas/SlaTimeUnit' description: Frequencies for identifying snapshots to be archived. If frequencies are not specified, snapshots taken at all frequencies are archived as per the SLA Domain configuration. archivalTieringSpec: $ref: '#/components/schemas/ArchivalTieringSpec' isPassthroughSupported: type: boolean description: Boolean value that indicates if the archival location type supports direct archive backups. ArchivalTieringSpec: title: ArchivalTieringSpec required: - isInstantTieringEnabled type: object properties: isInstantTieringEnabled: type: boolean description: A Boolean value that determines whether to immediately tier uploaded snapshots to cold storage. When this value is 'true,' uploaded snapshots are immediately tiered to cold storage. When this value is 'false,' snapshots are marked as eligible for tiering to cold storage after their time on the archival location exceeds the configured minimum accessible duration. minAccessibleDurationInSeconds: type: integer description: Specifies an interval in seconds. Uploaded snapshots are accessible for instant recovery for the duration of the specified interval. This value is ignored when Instant Tiering is enabled. format: int64 coldStorageClass: $ref: '#/components/schemas/CloudStorageColdTier' shouldTierExistingSnapshots: type: boolean description: Indicates if existing snapshots for all objects protected by the SLA should be tiered. If not specified, this defaults to false. Only the snapshots that exist in the archival location associated with the SLA will be tiered. BackupWindow: title: BackupWindow required: - startTimeAttributes - durationInHours type: object properties: startTimeAttributes: $ref: '#/components/schemas/SlaStartTimeAttributes' durationInHours: type: integer format: int32 BulkSlaDomainAssignmentInfo: title: BulkSlaDomainAssignmentInfo required: - assignmentInfos type: object properties: assignmentInfos: type: array items: $ref: '#/components/schemas/PerSlaDomainAssignmentInfo' description: '' ConfiguredSlaType: title: ConfiguredSlaType enum: - ProtectionSla - RetentionSla type: string description: Specifies whether the SLA Domain is used for protection or retention. Db2DeltaFrequency: title: Db2DeltaFrequency required: - frequency - timeUnit type: object properties: frequency: type: integer description: Frequency value for delta backup of Db2 databases. format: int32 timeUnit: $ref: '#/components/schemas/Db2DeltaFrequencyType' Db2DeltaFrequencyType: title: Db2DeltaFrequencyType enum: - Minutely - Hourly - Daily type: string description: Units for delta backup frequency. Db2IncrementalFrequency: title: Db2IncrementalFrequency required: - frequency - timeUnit type: object properties: frequency: type: integer description: Frequency value for incremental backup of Db2 databases. format: int32 timeUnit: $ref: '#/components/schemas/Db2IncrementalFrequencyType' Db2IncrementalFrequencyType: title: Db2IncrementalFrequencyType enum: - Minutely - Hourly - Daily type: string description: Units for incremental backup frequency. DeltaFrequencyMap: title: DeltaFrequencyMap type: object properties: Db2Database: $ref: '#/components/schemas/Db2DeltaFrequency' DifferentialFrequencyMap: title: DifferentialFrequencyMap type: object properties: SapHanaDatabase: $ref: '#/components/schemas/SapHanaDifferentialFrequency' EffectiveSlaHolder: title: EffectiveSlaHolder required: - effectiveSlaDomainId - effectiveSlaDomainName type: object properties: effectiveSlaDomainId: type: string description: The ID of the SLA Domain that controls the protection of the Rubrik object. effectiveSlaDomainName: type: string description: The name of the SLA Domain that controls the protection of the Rubrik object. isEffectiveSlaDomainRetentionLocked: type: boolean description: Indicates whether the effective SLA Domain is Retention Locked. When this value is 'true', the effective SLA domain is a Retention Lock SLA Domain. effectiveSlaDomainPolarisManagedId: type: string description: Optional. This field contains the managed ID of of the Polaris-managed effective SLA Domain. effectiveSlaSourceObjectId: type: string description: The ID of the parent of the Rubrik object from which the SLA Domain that controls the protection of Rubrik object is inherited. effectiveSlaSourceObjectName: type: string description: The name of the parent of the Rubrik object from which the SLA Domain that controls the protection of Rubrik object is inherited. ExistingSnapshotRetention: title: ExistingSnapshotRetention enum: - RetainSnapshots - KeepForever - ExpireImmediately type: string description: Specifies the retention policy to apply to existing snapshots when unprotecting an object. FrequencyConfig: title: FrequencyConfig required: - frequency - retention type: object properties: frequency: type: integer format: int32 retention: type: integer format: int32 IncrementalFrequencyMap: title: IncrementalFrequencyMap type: object properties: SapHanaDatabase: $ref: '#/components/schemas/SapHanaIncrementalFrequency' Db2Database: $ref: '#/components/schemas/Db2IncrementalFrequency' LogConfigMap: title: LogConfigMap type: object properties: SapHanaDatabase: $ref: '#/components/schemas/SlaLogConfiguration' VmwareVirtualMachine: $ref: '#/components/schemas/SlaLogConfiguration' OracleDatabase: $ref: '#/components/schemas/OracleSlaLogConfiguration' Mssql: $ref: '#/components/schemas/SlaLogConfiguration' Db2Database: $ref: '#/components/schemas/SlaLogConfiguration' LogFrequencyType: title: LogFrequencyType enum: - Continuous - Minute type: string description: Defines the frequency of taking log backups. ManagedObjectPendingSlaInfo: title: ManagedObjectPendingSlaInfo required: - objectId - pendingSlaDomainId - pendingSlaDomainName type: object properties: objectId: type: string description: Managed ID of the object. pendingSlaDomainId: type: string pendingSlaDomainName: type: string isPendingSlaDomainRetentionLocked: type: boolean MissedSnapshotDayOfTimeUnit: title: MissedSnapshotDayOfTimeUnit enum: - Monday - Tuesday - Wednesday - Thursday - Friday - Saturday - Sunday - FirstDay - Fifteenth - LastDay type: string description: Units for missed snapshot dayOfTime. MonthlyConfig: title: MonthlyConfig required: - frequency - retention - dayOfMonth type: object properties: frequency: type: integer format: int32 retention: type: integer format: int32 dayOfMonth: $ref: '#/components/schemas/SlaDayOfMonth' OracleSlaLogConfiguration: title: OracleSlaLogConfiguration type: object properties: slaLogFrequencyConfig: $ref: '#/components/schemas/SlaLogFrequencyConfig' hostLogRetentionInMinutes: type: integer description: Specifies an interval in minutes, which governs the retention of redo logs. The next log snapshot job deletes archived Oracle redo log files whose 'nextTime' field specifies a time that occurs before the current time minus the specifed number of minutes. To immediately delete archived redo log files regardless of age, specify an interval of -1. To preserve all archived redo log files, specify an interval of -2. format: int32 PerSlaDomainAssignmentInfo: title: PerSlaDomainAssignmentInfo required: - slaDomainId - assignmentInfo type: object properties: slaDomainId: type: string assignmentInfo: $ref: '#/components/schemas/SlaDomainAssignmentInfo' QuarterlyConfig: title: QuarterlyConfig required: - frequency - retention - firstQuarterStartMonth - dayOfQuarter type: object properties: frequency: type: integer format: int32 retention: type: integer format: int32 firstQuarterStartMonth: $ref: '#/components/schemas/SlaMonth' dayOfQuarter: $ref: '#/components/schemas/SlaDayOfQuarter' ReplicationSpecV2: title: ReplicationSpecV2 required: - retentionLimit type: object properties: locationId: type: string locationName: type: string polarisManagedId: type: string description: This refers to the Polaris managed ID of an archival location. At least one of the params locationId and polarisManagedId should be defined to correctly refer to an archival location. If locationId is provided, then polarisManagedId will be ignored. retentionLimit: type: integer description: Specifies a time duration in seconds. Snapshots will be retained on the replication target location until the duration has passed. format: int64 logRetentionLimit: type: integer description: Specifies an interval in seconds. Logs are retained at the replication location until the specified interval expires. format: int64 replicationType: $ref: '#/components/schemas/ReplicationType' ReplicationType: title: ReplicationType enum: - REPLICATION_TO_CLUSTER - REPLICATION_TO_CLOUD_LOCATION type: string description: The type of replication for an SLA Domain. SapHanaDifferentialFrequency: title: SapHanaDifferentialFrequency required: - frequency - timeUnit type: object properties: frequency: type: integer description: Frequency value for differential backup of SAP HANA databases. format: int32 timeUnit: $ref: '#/components/schemas/SapHanaDifferentialFrequencyType' SapHanaDifferentialFrequencyType: title: SapHanaDifferentialFrequencyType enum: - Minutely - Hourly - Daily type: string description: Units for differential backup frequency. SapHanaIncrementalFrequency: title: SapHanaIncrementalFrequency required: - frequency - timeUnit type: object properties: frequency: type: integer description: Frequency value for incremental backup of SAP HANA databases. format: int32 timeUnit: $ref: '#/components/schemas/Db2IncrementalFrequencyType' SapHanaIncrementalFrequencyType: title: SapHanaIncrementalFrequencyType enum: - Minutely - Hourly - Daily type: string description: Units for incremental backup frequency. SlaAssignable: title: SlaAssignable required: - id - name - configuredSlaDomainId - configuredSlaDomainName - primaryClusterId type: object properties: id: type: string description: The ID of the Rubrik object. name: type: string description: The name of the Rubrik object. configuredSlaDomainId: type: string description: The ID of the SLA Domain configured directly on the Rubrik object. configuredSlaDomainName: type: string description: The name of the SLA Domain configured directly on the Rubrik object. configuredSlaDomainType: $ref: '#/components/schemas/ConfiguredSlaType' primaryClusterId: type: string description: The ID of the cluster that manages the Rubrik object. isConfiguredSlaDomainRetentionLocked: type: boolean description: Indicates whether the configured SLA Domain is Retention Locked. When this value is 'true', the configured SLA Domain is a Retention Lock SLA Domain. slaLastUpdateTime: type: string description: The UTC time when the SLA Domain was last updated. format: date-time SlaDayOfMonth: title: SlaDayOfMonth enum: - FirstDay - Fifteenth - LastDay type: string description: The day of the month when snapshot will be taken. SlaDayOfQuarter: title: SlaDayOfQuarter enum: - FirstDay - LastDay type: string description: The day of the quarter when snapshot will be taken. SlaDayOfWeek: title: SlaDayOfWeek enum: - Monday - Tuesday - Wednesday - Thursday - Friday - Saturday - Sunday type: string description: The day of the week when snapshot will be taken. SlaDayOfYear: title: SlaDayOfYear enum: - FirstDay - LastDay type: string description: The day of the year when snapshot will be taken. SlaDomainAssignmentInfo: title: SlaDomainAssignmentInfo required: - managedIds type: object properties: managedIds: type: array items: type: string description: '' existingSnapshotRetention: $ref: '#/components/schemas/ExistingSnapshotRetention' shouldApplyToExistingSnapshots: type: boolean description: A Boolean that specifies whether to retain existing snapshots of assigned objects with the configuration of a specified SLA Domain. The default value is 'true'. If objects are unprotected, the retention of existing snapshots will be determined by the value of parameter 'existingSnapshotRetention'. This field should be kept empty in such cases. When an SLA Domain assignment is cleared from an object, the retention strategy described in this field is used only when the object can inherit a protection SLA Domain from an ancestor object. shouldApplyToNonPolicySnapshots: type: boolean description: A Boolean which if set to true specifies that the retention changes corresponding to the new SLA should be applied to non-policy snapshots in addition to existing policy based snapshots. SlaDomainPatchDefinitionV2: title: SlaDomainPatchDefinitionV2 type: object properties: name: type: string frequencies: $ref: '#/components/schemas/SlaFrequencyV2' logConfig: $ref: '#/components/schemas/SlaLogConfiguration' allowedBackupWindows: type: array items: $ref: '#/components/schemas/BackupWindow' description: '' firstFullAllowedBackupWindows: type: array items: $ref: '#/components/schemas/BackupWindow' description: '' localRetentionLimit: type: integer format: int64 archivalSpecs: type: array items: $ref: '#/components/schemas/ArchivalSpecV2' description: '' replicationSpecs: type: array items: $ref: '#/components/schemas/ReplicationSpecV2' description: '' showAdvancedUi: type: boolean advancedUiConfig: type: array items: $ref: '#/components/schemas/AdvancedUiConfigAttributes' description: '' isRetentionLocked: type: boolean description: Boolean value that identifies a Retention Lock SLA Domain. Value is true when an SLA Domain is Retention Locked and false when it is not. incrementalFrequency: $ref: '#/components/schemas/IncrementalFrequencyMap' differentialFrequency: $ref: '#/components/schemas/DifferentialFrequencyMap' deltaFrequency: $ref: '#/components/schemas/DeltaFrequencyMap' logConfigs: $ref: '#/components/schemas/LogConfigMap' SlaDomainSummaryV2: title: SlaDomainSummaryV2 required: - id - primaryClusterId - name - primaryClusterSlaVersion - frequencies - allowedBackupWindows - firstFullAllowedBackupWindows - maxLocalRetentionLimit - isDefault - showAdvancedUi - advancedUiConfig type: object properties: numNutanixVms: type: integer description: The number of Nutanix virtual machines protected under this SLA domain. format: int32 numEc2Instances: type: integer description: The number of EC2 instances protected under this SLA Domain. format: int32 numHypervVms: type: integer description: The number of Hyper-V virtual machines protected under this SLA domain. format: int32 numManagedVolumes: type: integer description: The number of Managed volumes protected under this SLA Domain. format: int32 numDbs: type: integer description: The number of actively protected databases under this SLA domain. format: int32 numVcdVapps: type: integer description: The number of vApps protected under this SLA Domain. format: int32 numOracleDbs: type: integer description: The number of actively protected oracle databases under this SLA Domain. format: int32 numFilesets: type: integer description: The number of filesets protected under this SLA Domain. format: int32 numStorageArrayVolumeGroups: type: integer description: The number of storage array volume groups protected under this SLA Domain. format: int32 numWindowsVolumeGroups: type: integer description: The number of Windows volume groups protected under this SLA Domain. format: int32 numLinuxHosts: type: integer description: The number of Linux servers with filesets protected under this SLA Domain. format: int32 numShares: type: integer description: The number of shares protected under this SLA Domain. format: int32 numWindowsHosts: type: integer description: The number of Windows servers with filesets protected under this SLA Domain. format: int32 numVms: type: integer format: int32 numProtectedObjects: type: integer description: The total number of protected ojects under this SLA Domain. format: int32 id: type: string primaryClusterId: type: string name: type: string primaryClusterSlaVersion: type: integer description: Specifies the version of the SLA that is incremented for every user SLA Domain edit. For remote SLA Domains, this specifies the version of SLA Domain used by the source cluster. format: int32 replicationTargetSlaVersion: type: integer description: Specifies the version of the remote SLA Domain that is incremented for every user SLA Domain on the replication target. format: int32 polarisManagedId: type: string description: Optional field containing Polaris managed ids of the Polaris managed SLAs. This field will be set only if the SLA is Polaris managed. frequencies: $ref: '#/components/schemas/SlaFrequencyV2' logConfig: $ref: '#/components/schemas/SlaLogConfiguration' allowedBackupWindows: type: array items: $ref: '#/components/schemas/BackupWindow' description: '' firstFullAllowedBackupWindows: type: array items: $ref: '#/components/schemas/BackupWindow' description: '' localRetentionLimit: type: integer description: The retention limit for snapshots on the local Rubrik system. When no limit is specified, snapshots are retained up to the limit specified by the SLA. format: int64 maxLocalRetentionLimit: type: integer description: The maximum retention limit for snapshots on the local Rubrik system. For snapshots operating under a local SLA, this limit is the longest period specified in the SlaFrequencyV2 object. For snapshots under a remote SLA, this limit is the value of the retentionLimit variable set at the replication target location. format: int64 archivalSpecs: type: array items: $ref: '#/components/schemas/ArchivalSpecV2' description: Specification for archival locations on this SLA. replicationSpecs: type: array items: $ref: '#/components/schemas/ReplicationSpecV2' description: Specification for the replication locations on this SLA. isDefault: type: boolean uiColor: type: string showAdvancedUi: type: boolean advancedUiConfig: type: array items: $ref: '#/components/schemas/AdvancedUiConfigAttributes' description: '' isRetentionLocked: type: boolean description: Boolean value that identifies a Retention Lock SLA Domain. Value is true when an SLA Domain is Retention Locked and false when it is not. isPaused: type: boolean description: A Boolean value that specifies whether protection for all the snappables that are protected by the specified SLA Domain is paused. When the value is 'true' protection is paused. incrementalFrequency: $ref: '#/components/schemas/IncrementalFrequencyMap' differentialFrequency: $ref: '#/components/schemas/DifferentialFrequencyMap' deltaFrequency: $ref: '#/components/schemas/DeltaFrequencyMap' logConfigs: $ref: '#/components/schemas/LogConfigMap' SlaDomainUpdateSummary: title: SlaDomainUpdateSummary required: - patchedSlaDomainSummary type: object properties: patchedSlaDomainSummary: $ref: '#/components/schemas/SlaDomainSummaryV2' batchAsyncRequestStatus: $ref: '#/components/schemas/BatchAsyncRequestStatus' SlaFrequencyV2: title: SlaFrequencyV2 type: object properties: minute: $ref: '#/components/schemas/FrequencyConfig' hourly: $ref: '#/components/schemas/FrequencyConfig' daily: $ref: '#/components/schemas/FrequencyConfig' weekly: $ref: '#/components/schemas/WeeklyConfig' monthly: $ref: '#/components/schemas/MonthlyConfig' quarterly: $ref: '#/components/schemas/QuarterlyConfig' yearly: $ref: '#/components/schemas/YearlyConfig' SlaLogConfig: title: SlaLogConfig type: object properties: slaLogFrequencyConfig: $ref: '#/components/schemas/SlaLogFrequencyConfig' description: (Deprecated) Log backup configuration for VMware virtual machines only. To track log backup configuration by object type, use **logConfigs** instead. SlaLogConfiguration: title: SlaLogConfiguration type: object properties: slaLogFrequencyConfig: $ref: '#/components/schemas/SlaLogFrequencyConfig' SlaLogFrequencyConfig: title: SlaLogFrequencyConfig required: - retention - logFrequencyType type: object properties: retention: type: integer format: int32 logFrequencyType: $ref: '#/components/schemas/LogFrequencyType' frequency: type: integer format: int32 SlaMonth: title: SlaMonth enum: - January - February - March - April - May - June - July - August - September - October - November - December type: string description: The month of the year when snapshot will be taken. SlaObjectCounts: title: SlaObjectCounts type: object properties: numNutanixVms: type: integer description: The number of Nutanix virtual machines protected under this SLA domain. format: int32 numEc2Instances: type: integer description: The number of EC2 instances protected under this SLA Domain. format: int32 numHypervVms: type: integer description: The number of Hyper-V virtual machines protected under this SLA domain. format: int32 numManagedVolumes: type: integer description: The number of Managed volumes protected under this SLA Domain. format: int32 numDbs: type: integer description: The number of actively protected databases under this SLA domain. format: int32 numVcdVapps: type: integer description: The number of vApps protected under this SLA Domain. format: int32 numOracleDbs: type: integer description: The number of actively protected oracle databases under this SLA Domain. format: int32 numFilesets: type: integer description: The number of filesets protected under this SLA Domain. format: int32 numStorageArrayVolumeGroups: type: integer description: The number of storage array volume groups protected under this SLA Domain. format: int32 numWindowsVolumeGroups: type: integer description: The number of Windows volume groups protected under this SLA Domain. format: int32 numLinuxHosts: type: integer description: The number of Linux servers with filesets protected under this SLA Domain. format: int32 numShares: type: integer description: The number of shares protected under this SLA Domain. format: int32 numWindowsHosts: type: integer description: The number of Windows servers with filesets protected under this SLA Domain. format: int32 numVms: type: integer format: int32 numProtectedObjects: type: integer description: The total number of protected ojects under this SLA Domain. format: int32 SlaStartTimeAttributes: title: SlaStartTimeAttributes required: - minutes - hour type: object properties: minutes: type: integer format: int32 hour: type: integer format: int32 dayOfWeek: type: integer format: int32 SlaTimeUnit: title: SlaTimeUnit enum: - Minute - Hourly - Daily - Weekly - Monthly - Quarterly - Yearly type: string description: Units for frequency and retention. Accepted values are Minute, Hourly, Daily, Weekly, Monthly, Quarterly, and Yearly. Snappable: title: Snappable required: - id - name - configuredSlaDomainId - configuredSlaDomainName - primaryClusterId - effectiveSlaDomainId - effectiveSlaDomainName - slaAssignment type: object properties: id: type: string description: The ID of the Rubrik object. name: type: string description: The name of the Rubrik object. configuredSlaDomainId: type: string description: The ID of the SLA Domain configured directly on the Rubrik object. configuredSlaDomainName: type: string description: The name of the SLA Domain configured directly on the Rubrik object. configuredSlaDomainType: $ref: '#/components/schemas/ConfiguredSlaType' primaryClusterId: type: string description: The ID of the cluster that manages the Rubrik object. isConfiguredSlaDomainRetentionLocked: type: boolean description: Indicates whether the configured SLA Domain is Retention Locked. When this value is 'true', the configured SLA Domain is a Retention Lock SLA Domain. slaLastUpdateTime: type: string description: The UTC time when the SLA Domain was last updated. format: date-time effectiveSlaDomainId: type: string description: The ID of the SLA Domain that controls the protection of the Rubrik object. effectiveSlaDomainName: type: string description: The name of the SLA Domain that controls the protection of the Rubrik object. isEffectiveSlaDomainRetentionLocked: type: boolean description: Indicates whether the effective SLA Domain is Retention Locked. When this value is 'true', the effective SLA domain is a Retention Lock SLA Domain. effectiveSlaDomainPolarisManagedId: type: string description: Optional. This field contains the managed ID of of the Polaris-managed effective SLA Domain. effectiveSlaSourceObjectId: type: string description: The ID of the parent of the Rubrik object from which the SLA Domain that controls the protection of Rubrik object is inherited. effectiveSlaSourceObjectName: type: string description: The name of the parent of the Rubrik object from which the SLA Domain that controls the protection of Rubrik object is inherited. slaAssignment: $ref: '#/components/schemas/SlaAssignment' retentionSlaDomainId: type: string description: The ID of the SLA Domain whose retention policy is in use. WeeklyConfig: title: WeeklyConfig required: - frequency - retention - dayOfWeek type: object properties: frequency: type: integer format: int32 retention: type: integer format: int32 dayOfWeek: $ref: '#/components/schemas/SlaDayOfWeek' YearlyConfig: title: YearlyConfig required: - frequency - retention - yearStartMonth - dayOfYear type: object properties: frequency: type: integer format: int32 retention: type: integer format: int32 yearStartMonth: $ref: '#/components/schemas/SlaMonth' dayOfYear: $ref: '#/components/schemas/SlaDayOfYear' AsyncRequestStatus: title: AsyncRequestStatus required: - id - status - links type: object properties: id: type: string description: The ID of the request object used to poll the status. status: type: string description: Status of the ID. progress: type: number description: The current percentage progress of the asynchronous request. startTime: type: string description: The start time of the request. format: date-time endTime: type: string description: The end time of the request. format: date-time nodeId: type: string description: The ID of the node where the job ran. error: $ref: '#/components/schemas/RequestErrorInfo' links: type: array items: $ref: '#/components/schemas/Link' description: References to any related objects. BatchAsyncRequest: title: BatchAsyncRequest required: - ids type: object properties: ids: type: array items: type: string description: Batch of the request object IDs used to poll the status. BatchAsyncRequestStatus: title: BatchAsyncRequestStatus required: - responses type: object properties: responses: type: array items: $ref: '#/components/schemas/AsyncRequestStatus' description: The asynchronous request status of a batch request. RequestErrorInfo: title: RequestErrorInfo required: - message type: object properties: message: type: string description: The error message for failed IDs. RequestFailedException: title: RequestFailedException required: - errorType - message type: object properties: errorType: type: string message: type: string code: type: string param: type: string StringResponse: title: StringResponse required: - response type: object properties: response: type: string VcdVappSlaObjectCount: title: VcdVappSlaObjectCount type: object properties: numVcdVapps: type: integer description: The number of vApps protected under this SLA Domain. format: int32 SlaAssignment: title: SlaAssignment enum: - Derived - Direct - Unassigned type: string description: The SLA assignment type. Direct SLA assignment means that a SLA Domain was configured directly on the Rubrik object by the user. Derived SLA assignment means that the Rubrik object inherits an SLA Domain from its parent Rubrik object. securitySchemes: BasicAuth: type: http scheme: basic Bearer: type: apiKey name: Authorization in: header security: - BasicAuth: [] - Bearer: [] tags: - name: Endpoint reference - name: /sla_domain descr