Set up and validate backups for HubSpot.
Service provider configurations
Before onboarding HubSpot backups, service providers must complete the following configurations:
- Prepare a MediaAgent to receive data via S3 protocol
- Add an access node
- Create a workload resource pool for SaaS applications
For instructions, see Configure SaaS applications for service providers.
Onboard HubSpot
Onboard a HubSpot instance to begin protecting your HubSpot data. During onboarding, you connect to HubSpot, choose the content to protect, assign a backup plan, and create the backup configuration.
Start the configuration
- From the Command Center navigation pane, go to Protect → SaaS Applications.
- Click Add SaaS Application.
- Select HubSpot, and then click Next.
Specify credentials
Cloud App Connection Details
- In the Name field, provide a display name for this HubSpot backup configuration.
Configure Credential
- Portal ID: Enter the numeric HubSpot portal ID (for example,
12345678). Find this in HubSpot Settings → Account → Integrations. - Access Token: Enter the HubSpot service key (starts with
pat-na1-orpat-eu1-). This is the token you copied when creating the service key.
Choose the backup content
- Click the pencil (edit) icon next to Content.
- Choose either: select the hubs shown in the browse tree, or define rules to select content for the subclient.
The browse tree displays the nine HubSpot product hubs: CRM, Marketing, Content, Sales, Commerce, Service, Automation, Data Management, and Reporting.
Select a backup plan
- Select an existing backup plan, or click + to create a new one.
- After you create a backup plan, you can select it when you onboard additional HubSpot instances.
Important: Use any backup plan whose Primary Copy MediaAgents have the CVS3Service package installed.
Review summary
- Review the instance name, plan name, schedule, and backup content.
- Click Submit.
Run a backup
- From the Command Center navigation pane, go to Protect → SaaS Applications.
- For the application that you want to back up, click the action button
, and then click Back up now to run a Full backup. - Monitor job progress in the Jobs view.
HubSpot enforces a 10 requests/second rate limit. The workload automatically applies a 100ms delay between API calls, and the HubSpot SDK handles 429 (rate limit exceeded) responses with automatic retry. Full backups of large accounts may take longer than other SaaS workloads — a typical test account with moderate data completes in approximately 40 seconds.
Validate the backup
Verify the configuration
After you assign the backup plan, confirm that:
- The HubSpot instance appears in the SaaS Applications list with the name you specified during onboarding.
- The browse tree displays the nine HubSpot product hubs (CRM, Marketing, Content, Sales, Commerce, Service, Automation, Data Management, Reporting), confirming that the credential was accepted and the portal structure was read successfully.
Confirm that the backup completed successfully
- From the Command Center navigation pane, go to Monitor > Jobs.
- Locate the completed backup job.
- Verify that the job status is Completed.
- Check the job details to confirm:
- Approximately 93 tasks were backed up (one per hub and object type).
- Storage used is proportional to the size of your HubSpot data (a typical test account uses approximately 7 MB).
- The job duration is reasonable given the API rate limits (approximately 40 seconds for a test account with moderate data).
Test a restore
- From the Jobs view, select the completed backup job.
- Click Restore.
- Select the content to restore (for example, a single CRM object type or a complete hub).
- Confirm the restore destination (the same HubSpot portal).
- Click Submit.
- Verify that the restore completes with status Completed and that the data matches the original.
For complete restore procedures, see Restore HubSpot data.
Common causes of failures and what to check first
Configuration and permission issues
- Forbidden or Insufficient permissions error: Verify that all required scopes are granted in the service key's Scopes tab. See Configure HubSpot user and permissions for the complete list.
- Invalid credentials error: Confirm that the access token is copied correctly into the Commvault credential password field (including the
pat-na1-orpat-eu1-prefix) and that the portal ID is entered correctly as the credential username. - API access not enabled: Verify that your HubSpot account has API access enabled. API access is not available on all free-tier plans.
- Service key deleted or revoked: Check that the service key has not been deleted or revoked in HubSpot. If it has, create a new service key and update the Commvault credential.
Backup job failures
- Rate limit exceeded (429) errors: HubSpot enforces a 10 requests/second rate limit. The workload automatically handles 429 responses with retry logic, but if backup jobs consistently fail with rate limit errors, avoid running multiple concurrent backup jobs for the same HubSpot portal, and schedule backups during off-peak hours.
- Timeout or slow backup performance: Full backups of large accounts may take longer than other SaaS workloads due to API rate limits. Verify that the access node has sufficient CPU and network bandwidth, and that the MediaAgent hosting the Primary Copy has enough CPU and memory to handle indexing workloads.
- Empty or incomplete browse tree: If the browse tree does not display the nine HubSpot product hubs, verify that the credential is valid and that the portal ID is correct. Run a test backup to confirm that the credential can read data from the HubSpot API.
Restore failures
- Write permission denied: Verify that the service key has the required write scopes for the object types being restored. See Configure HubSpot user and permissions for the complete list of restore scopes.
- Dependency order failures: HubSpot requires that objects be restored in dependency order (schemas and properties first, then records, then associations). The workload automatically handles dependency ordering, but if restore jobs fail with dependency errors, verify that the service key has write access to all dependent object types.
- Meeting links or sales sequences not fully restored: Meeting link definitions and sales sequence definitions are backed up but not fully restorable due to HubSpot API limitations. Meeting links lack a public upsert API, and sales sequences require live user context for enrollment. These objects are noted in the restore job log but are not created on the target portal.