For Salesforce Architects
Your Org Has Compliance Debt You Can't See.
Retention policies documented but not enforced. Sandboxes refreshed with live PII. DSAR logic built in Apex that nobody maintains. Cloud Compliance replaces the Apex with declarative policy automation your team actually owns.

Your Architecture Challenges
The Architecture Challenges We Solve
Salesforce objects typically involved in a RTBF cascade delete
A right-to-erasure request isn't just deleting a Contact record. It cascades across Opportunities, Cases, Activities, EmailMessages, field history, and custom objects. Without a sequenced deletion engine, referential integrity breaks. Privacy Rights Automation handles cascade RTBF with configurable object order and dependency resolution.
records DataMasker processes in 24 hours: governor-limit-safe
DataMasker uses Apex batch processing with configurable batch size and governor-limit-aware chunking. No CPU timeouts. No heap overflow. Processing 99M records in 24 hours isn't a benchmark edge case: it's RLA's production deployment. DataMasker's grouping and sequencing feature handles FSC row-locking without deadlocks.
CI/CD pipelines with native DataMasker integration: Copado, Gearset, GitLab
DataMasker exposes a REST API for automated masking jobs. Trigger a masking run post-sandbox-refresh from your Copado pipeline, Gearset post-deploy hook, or GitLab CI stage. No manual intervention. Sandboxes are masked before developers access them. Every time, automatically.
Design Patterns
Architecture Patterns for Compliance
Sandbox Refresh Strategy
Mask on every refresh, not on demand. Configure DataMasker as a post-refresh automation via REST API. Developers never access unmasked data. There's no window of exposure.
RTBF Across Related Objects
Configure Privacy Rights Automation with a dependency graph of your org's object relationships. Specify deletion order: child records before parents, junction objects before both. CC handles the cascade without custom Apex.
Salesforce Shield + DataMasker: Defense in Depth
Shield encrypts at rest. But authorized users still see real data. DataMasker replaces real data in sandboxes with realistic synthetic data. They solve different problems and work together: Shield for production security, DataMasker for non-production privacy.
Multi-Org Retention Policies
Data Retention Manager policies are metadata-driven: stored in a Salesforce custom object. Configure different retention schedules per country, object type, and data classification. One policy engine, multiple orgs. A global enterprise with 35 countries and 5 Salesforce orgs uses this pattern.
Integration
DevOps Integration
DataMasker's REST API accepts job configurations via JSON, can be triggered from any CI/CD platform, returns job status and masking statistics, and logs everything to Salesforce. Typical API trigger flow:
POST /services/apexrest/ccai/v1/gateway/execute Content-Type: application/json { "actionName": "DataMaskerMaskingJob", "jobConfig": { "maskingRules": [...], "objectsToMask": ["Contact", "Account"], "batchSize": 500, "runAsynchronously": true } } Response: { "jobId": "a0A2t000000XXXXX", "status": "queued", "estimatedRecords": 45000, "completionTime": "2024-02-26T14:30:00Z" }
Integrate this into your Copado pipeline post-refresh, Gearset deployment hooks, or any CI/CD system that can make HTTP requests. No manual intervention required.
Performance
Technical Specifications
107 regression tests per CC release
Checkmarx code scan: OWASP Top 10 clean
Bulk API 2.0 support for large-volume operations
Configurable batch size (200-2,000 records per batch)
Governor-limit-safe chunking with automatic retry
Key Takeaways
Zero integration complexity: 100% native Apex, no middleware, no outbound API calls, no firewall rules
Governor limit safe: Apex Batch processes in 200-record chunks, respects all Salesforce execution limits
Multi-org support: single masking or retention policy can be applied across 10+ Salesforce org instances
DevOps pipeline integration: invocable Apex actions callable from Copado, Flosum, or Jenkins
Cascade deletion handles complex parent-child relationships without orphaning business records
Schema-aware: DataMasker reads your org's field metadata at runtime, survives schema changes
Frequently Asked Questions
DataMasker processes records in configurable batches using Apex Batch, respecting CPU timeout and heap limits. For very large orgs, batch size is tunable (default 200 records, configurable up to 2,000). Processing 99M records in 24 hours is achieved by running multiple parallel batch jobs against different object subsets. No governor limits are hit. CC's batch architecture is specifically designed for high-volume Salesforce orgs.
Yes. DataMasker exposes a REST API endpoint that accepts masking job configurations in JSON format. You can trigger a full masking run via a POST request from any CI/CD platform: Copado, Gearset, GitHub Actions, GitLab CI, or custom scripts. The API returns a job ID for status polling. This enables fully automated masking on every sandbox refresh without manual intervention.
Privacy Rights Automation uses a configurable deletion dependency graph. You specify the deletion order (e.g., delete EmailMessages before Cases before Contacts) and the system executes in sequence. For complex org schemas with custom objects and lookup relationships, the dependency graph prevents referential integrity failures. CC handles all standard Salesforce cascade behaviors plus configurable custom object sequences.
Yes. DataMasker's grouping and sequencing feature specifically addresses FSC row-locking. When masking related FSC records (e.g., Person Accounts and their related Financial Accounts), CC groups records that would cause lock contention and sequences their processing to avoid deadlocks. This was developed from real FSC deployments: Resolution Life (125M records) is a production example.
Data Retention Manager stores policies in Salesforce custom objects (Retention_Policy__c). Each policy specifies: object type, retention period, jurisdiction, and deletion method. For multi-org strategies, deploy the same policy metadata to each org. Policies travel with your deployment pipeline. A single policy schema can handle different retention periods per country in the same org, or uniform policies across multiple orgs.
DataMasker uses Salesforce Apex Batch processing, which processes records in configurable chunks of up to 200 records per batch transaction. This respects Salesforce's governor limits, SOQL query limits, DML statement limits, and CPU time limits, by distributing the work across multiple asynchronous batch jobs. For orgs with 5M+ records, DataMasker chains multiple batch jobs and provides a progress dashboard. The 5M records/hour throughput is achieved through optimized batch configuration and parallel object processing. Customers with very large orgs receive custom batch configuration during implementation to match their org's specific size and complexity.
Deep Dives for Architects
How DataMasker Works
Governor-limit-safe batch masking. Cascade-aware field relationships. The technical architecture.
Multi-Org Compliance
Managing retention, masking, and privacy rights across 3+ Salesforce orgs simultaneously.
Data Retention Manager
Cascade-aware deletion logic that handles the complex relational integrity architects worry about.
Book a Technical Architecture Review
60-minute deep dive. We review your org's object relationships, sandbox refresh strategy, and compliance requirements. Then map Cloud Compliance to your architecture.