Commvault API Documentation

website·Indexed 41 days ago

https://api.commvault.com

API reference for Commvault SP40, providing endpoints for managing data protection, storage policies, cloud resource discovery, and backup operations. Includes guides for creating alert definitions, managing Office 365 OneDrive for Business content, configuring Sybase instances, and handling Splunk cluster restoration.

Tokens
1.5M
Snippets
5.3K
Records
10.3K
Agent score
62%

What's inside Commvault

  1. Overview of Commvault REST API

    The Commvault REST APIs allow developers to programmatically perform operations typically handled in the CommandCenter. Because they are implemented over the HTTP protocol, they can be integrated using any programming language or tool to create custom interfaces for specific user operations.
  2. Retrieve VM provisioning policy details

    Retrieve the full configuration details of a VM life cycle management policy using the policyId. This endpoint provides comprehensive information about the recovery target, including destination hypervisors, security options, network configurations, and provisioning quotas.
    # Example request structure
    GET /get-vm-provisioning-policy-details?policyId={policyId}
  3. Identify Backup Destination Copy Types and Storage Pools

    When retrieving server plan details, the backupDestinations object provides critical information about how data is replicated and stored:

    • copyType: Can be SYNCHRONOUS, SELECTIVE, or PRIMARY.
    • copyTypeName: Common values include MIRROR, VAULT_REPLICA, and SNAPSHOT_PRIMARY.
    • storagePool.type: Indicates the pool architecture, such as DEDUPLICATION, SECONDARY_COPY, NON_DEDUPLICATION, or SCALE_OUT.
    • deviceType.name: Specifies the physical or cloud storage medium (e.g., S3_COMPATIBLE_STORAGE, AZURE_DATA_LAKE_STORE_GEN2, LOCAL_FILE).
  4. Retrieve anomalous audits for a specific time range

    Use the 'get anomalous audits' endpoint to retrieve a list of audit operations that were flagged as anomalous between two epoch timestamps. The response returns an array of audit objects containing details about the operation, the user involved, the time window of the anomaly, the count of operations, and the associated message ID.
    GET /get-anomalous-audits?fromTime=1693193428&toTime=1693193901
  5. Retrieve Azure and On-Prem Active Directory clients and their file system state

    Use this API endpoint to retrieve a list of Azure and On-Prem Active Directory clients along with their current file system state and SLA status. The response includes detailed information about the application type, subclients, backup sets, and the overall SLA summary for the Active Directory environment.
    // Example Response Schema for adClients object
    {
      "adClients": [
        {
          "appTypeId": 139, // 139: Azure AD, 41: Granular AD, 33: File Server
          "isConfigured": true,
          "isDisabledClient": false,
          "slaStatus": "MET_SLA", // Possible: MET_SLA, MISSED_SLA, EXCLUDED_SLA, YET_TO_BE_PROTECTED, MIGHT_MISS_SLA, UNKNOWN
          "domainURL": "string",
          "applicationSize": 123456789,
          "numberOfItems": 100,
          "lastBackup": {
            "jobId": 123,
            "status": "COMPLETED", // Possible: COMPLETED, FAILED, NEVER_BACKED_UP, etc.
            "time": 1625097600, // Unix timestamp
            "failureReason": "string"
          },
          "slaSummary": {
            "totalEntities": 1000,
            "slaNotMetEntities": 10,
            "neverBackedupEntities": 5,
            "slaMetPercentage": 99.0
          }
        }
      ]
    }
  6. Retrieve recovery target details by ID

    Use this endpoint to get the full configuration details of a specific recovery target. The response includes information about the destination hypervisor, network options, provisioning limits, security groups, and cloud-specific destination settings.
    GET /recoveryTarget/{recoveryTargetId}
  7. Embed related resources in EC2 MSSQL database responses

    Use the embed query parameter to include detailed information about associated resources in the API response. Available embeddable links include:

    • read-policy-definition: Embeds the associated policy definition (omitted for unprotected resources).
    • read-aws-environment: Embeds AWS Environment details.
    • read-aws-ec2-instance: Embeds the associated AWS EC2 Instance details.
    GET /ec2-mssql-databases?embed=read-policy-definition
  8. Understand the DocumentDB instance properties response schema

    The API returns an instanceProperties object containing the following key metadata about the DocumentDB instance:

    • General Instance Info: clientName, instanceName, displayName, instanceId, instanceGUID, clientId, appName, and applicationId.
    • Status & Configuration: isDeleted (boolean), isSnapEnabled (boolean), autoDiscovered (boolean), and excludeFromSLA (boolean).
    • Cloud & Infrastructure:
      • amazonInstanceInfo: Contains accessKey and useIamRole.
      • cloudDBInstance: Contains overRideAccessNode and accessNodes.
      • generalCloudProperties: Contains regionEndPoints.
    • Entity & Company: companyId, companyName, and multiCommcellId.
    • Plan Details: planType, planName, planSubtype, and planId.
    • Credentials: credentialId and credentialName.
  9. Project Configuration Response Schema

    The project configuration response returns a JSON object containing the following key entities:

    • eDiscoveryClient: Details about the client, including clientId, clientName, and eDiscoveryClientInfo.
    • federatedDataSource: Information about the federated data source, including seaDataSourceId and seaDataSourceName.
    • inventoryDataSource: Details regarding the inventory data source, including seaDataSourceId and seaDataSourceName.
    • plan: The project plan details, including planId and planName.
    • indexServer: Server details including clientId, clientName, and appTypeIds.
    • owners: A list of users associated with the project, containing userId and userName.
    • userCapabilities: A list of capabilities assigned to users.
  10. Understand the response schema for retrieving a DynamoDB table backup

    When retrieving a DynamoDB table backup via the GET /backups/aws/dynamodb-tables/{backup_id} endpoint, the response includes detailed metadata about the table's configuration, encryption, and backup status. Key fields include:

    • Encryption Settings:
      • kms_key_type: The server-side encryption KMS key type. Possible values: DEFAULT, AWS_MANAGED, CUSTOMER_MANAGED.
      • kms_master_key_id: The AWS KMS customer master key (CMK) ARN. If null, the default AWS-owned CMK is used.
    • Backup Metadata:
      • start_timestamp: The backup start time in RFC-3339 format.
      • type: The backup type, either clumio_backup or aws_snapshot.
      • table_id: The Clumio-assigned ID of the table.
      • table_name: The name of the DynamoDB table.
      • table_class: The storage class, either STANDARD or STANDARD_INFREQUENT_ACCESS.
      • tags: An array of AWS tags (containing key and value) associated with the table at the time of backup.
    • Stream Configuration (stream_specification):
      • enabled: Boolean indicating if DynamoDB Streams is active.
      • view_type: Determines what is written to the stream. Valid values: KEYS_ONLY, NEW_IMAGE, OLD_IMAGE, or NEW_AND_OLD_IMAGES.
  11. Retrieve a compliance report configuration

    Returns a representation of a specified compliance report configuration. This includes the configuration's metadata, the parameters used for compliance evaluation (such as asset backup and policy controls), and details about the most recent report run.
    # Example request structure
    GET /compliance-report-configurations/{configuration_id}
  12. Retrieve a summary of plans

    Use the 'Get Summary of a Plan' API endpoint to retrieve a list of plans and their configurations. The response includes detailed information about plan types, associated entities, RPO, and status. For plans in an INCOMPLETE state, the missingEntities array provides a list of entities missing from the plan.
    // Example Response Schema
    {
      "plans": [
        {
          "id": 123,
          "name": "Daily Backup Plan",
          "planType": "Server", // e.g., Server, Laptop, Database, Office365
          "status": "ENABLED", // ENABLED, DISABLED, INCOMPLETE, HIDDEN, BACKUP_DISABLED
          "RPO": 1440, // RPO in minutes
          "numberOfCopies": 2,
          "associatedEntities": 10,
          "commcell": "commcell_name",
          "derivable": true,
          "description": "Standard daily backup"
        }
      ],
      "plansCount": 1
    }