Salesforce workload

Understanding Salesforce history and approval history limitations

Overview

Salesforce does not support restoring either standard history objects or approval history. Both are intentionally designed as immutable audit trails and are restricted by Salesforce APIs to read-only access. This ensures the integrity of audit data but also means that history records cannot be recreated or restored once removed.

Quick reference table

Object type 

Examples 

Supported operations 

Limitation (Restore capability) 

Salesforce references 

Standard history objects 

AccountHistory, OpportunityHistory, CaseHistory 

describeSObjects(), query(), retrieve(), getDeleted(), getUpdated() 

API limitation – insert/update not supported 

EntityHistory ObjectAssociated History Objects 

Approval history objects 

ProcessInstance, ProcessInstanceStep, Workitem 

Query only (view approval records) 

API limitation – read-only, no restore supported 

ProcessInstanceProcessInstanceStep 

Understanding Salesforce history and approval history limitations

Standard history objects 

Examples: AccountHistory, OpportunityHistory, CaseHistory

  • Supported API operations: describeSObjects(), query(), retrieve(), getDeleted(), getUpdated()
  • Not supported: Insert or update operations
  • Result: These objects cannot be restored once removed

Salesforce references: 

Approval history objects 

Examples: ProcessInstance, ProcessInstanceStep, Workitem

  • Supported API operation: Query (view historical approval actions)
  • Not supported: Create or restore via API
  • Result: Approval history is read-only and cannot be recreated or restored

Salesforce references:

Why this limitation exists

This behavior is intentional. Salesforce enforces immutability on audit objects to protect compliance and audit integrity.

Customer options with our platform

Although Salesforce does not allow restoration of history objects, our platform provides these options:

  • Export for audit – Customers can view and export history tables into CSV format for archival, audit, or external analysis.
  • Custom history objects – Organizations may create custom history objects in Salesforce to capture and store change or approval data. These custom objects can be fully backed up and restored like any other Salesforce object.

Frequently Asked Questions

Q: Can I restore history records directly in Salesforce? 
A: No. Salesforce history and approval history objects are read-only by design. They can be viewed and queried but not restored or recreated.

Q: Why doesn’t Salesforce allow restoration of history data? 
A: Salesforce enforces immutability for audit records to preserve compliance and legal integrity. Allowing writes or restores would compromise the accuracy of the audit trail.

Q: What options do I have if I need to keep history data long-term? 
A: You can use our platform to export history tables into CSV format for archival or create custom history objects in Salesforce to capture the data you want to back up and restore.

Q: Can third-party tools bypass this Salesforce limitation? 
A: No. All backup and recovery tools rely on Salesforce APIs, which enforce the same restrictions. No tool can restore native history or approval records directly.