sf-agent-framework
Version:
AI Agent Orchestration Framework for Salesforce Development - Two-phase architecture with 70% context reduction
499 lines (392 loc) • 10.4 kB
Markdown
# Salesforce Cloud-Specific Data Models & Architecture (Summer '25)
## Overview
This document provides a comprehensive breakdown of data models, objects, and
architectural patterns specific to each Salesforce Cloud, updated for Summer '25
with Data Cloud Native integration.
## 🔷 Sales Cloud Data Model
### Core Objects
```yaml
sales_cloud_objects:
Account:
purpose: 'Company/Organization records'
key_fields: [Name, Type, Industry, AnnualRevenue]
relationships: [Contacts, Opportunities, Cases]
Contact:
purpose: 'Individual person records'
key_fields: [FirstName, LastName, Email, Phone]
relationships: [Account, Opportunities, Cases]
Opportunity:
purpose: 'Sales deals and revenue tracking'
key_fields: [Name, Amount, CloseDate, StageName]
relationships: [Account, Contact, OpportunityLineItems]
Lead:
purpose: 'Unqualified prospects'
key_fields: [Name, Company, Email, Status]
conversion: [Account, Contact, Opportunity]
Quote:
purpose: 'Formal pricing proposals'
key_fields: [Name, ExpirationDate, Status, TotalPrice]
relationships: [Opportunity, QuoteLineItems]
```
### Sales Cloud Specific Features
```yaml
einstein_features:
- Opportunity Scoring
- Lead Scoring
- Account Insights
- Email Insights
- Activity Capture
sales_processes:
- Lead Assignment Rules
- Web-to-Lead
- Lead Conversion Process
- Opportunity Teams
- Split Revenue
- Forecasting
- Territory Management 2.0
```
### Best Practices
1. **Lead Management**
- Implement lead scoring with Einstein
- Use assignment rules for distribution
- Define clear conversion criteria
- Track lead sources meticulously
2. **Opportunity Management**
- Use Sales Path for guided selling
- Implement validation rules for stages
- Configure Products and Price Books
- Enable collaborative forecasting
## 🔶 Service Cloud Data Model
### Core Objects
```yaml
service_cloud_objects:
Case:
purpose: 'Customer service requests'
key_fields: [CaseNumber, Subject, Status, Priority]
relationships: [Account, Contact, Asset]
Asset:
purpose: 'Products owned by customers'
key_fields: [Name, SerialNumber, InstallDate, Status]
relationships: [Account, Contact, Cases]
Entitlement:
purpose: 'Service contracts and SLAs'
key_fields: [Name, StartDate, EndDate, Type]
relationships: [Account, Asset, ServiceContract]
ServiceContract:
purpose: 'Service agreements'
key_fields: [ContractNumber, StartDate, EndDate]
relationships: [Account, Entitlements]
Knowledge__kav:
purpose: 'Knowledge base articles'
key_fields: [Title, Summary, ArticleBody]
features: [Versioning, Translation, Approval]
```
### Service Cloud Features
```yaml
service_features:
- Omni-Channel Routing
- Service Console
- Knowledge Management
- Live Agent Chat
- Field Service Lightning
- Einstein Case Classification
- Einstein Article Recommendations
automation:
- Auto-Response Rules
- Assignment Rules
- Escalation Rules
- Milestone Tracking
- Entitlement Process
```
### Service Agent Force Integration
```yaml
service_agents:
- Customer Service Agent
- Technical Support Agent
- Field Service Agent
- Knowledge Agent
capabilities:
- Auto-resolve common issues
- Suggest knowledge articles
- Schedule appointments
- Update case status
- Escalate complex issues
```
## 🟣 Marketing Cloud Data Model
### Core Data Extensions
```yaml
marketing_cloud_de:
Subscribers:
purpose: 'Email subscriber list'
key_fields: [SubscriberKey, EmailAddress, Status]
Journey_Activity:
purpose: 'Customer journey tracking'
key_fields: [ContactKey, JourneyID, ActivityID]
Email_Analytics:
purpose: 'Email performance metrics'
key_fields: [JobID, Opens, Clicks, Bounces]
SMS_Subscribers:
purpose: 'Mobile messaging contacts'
key_fields: [MobileNumber, OptInStatus, Locale]
```
### Marketing Cloud Connect
```yaml
synchronized_objects:
from_sales_cloud:
- Lead
- Contact
- Account
- Campaign
- CampaignMember
to_sales_cloud:
- Email Send Results
- Journey Status
- Engagement Scores
```
### Einstein Features
```yaml
einstein_marketing:
- Send Time Optimization
- Content Selection
- Engagement Frequency
- Engagement Scoring
- Copy Insights
- Subject Line Testing
```
## 🟡 Commerce Cloud Data Model
### Core Entities
```yaml
commerce_objects:
Product:
purpose: 'Product catalog'
fields: [SKU, Name, Price, Inventory]
Category:
purpose: 'Product organization'
fields: [Name, ParentCategory, SortOrder]
Customer:
purpose: 'Shopper profiles'
fields: [Email, FirstName, LastName]
Order:
purpose: 'Purchase transactions'
fields: [OrderNumber, Total, Status]
Cart:
purpose: 'Shopping sessions'
fields: [SessionID, Items, Subtotal]
```
### Commerce Cloud Features
```yaml
b2c_features:
- Einstein Product Recommendations
- Einstein Search Dictionaries
- Dynamic Pricing
- Inventory Management
- Promotion Engine
b2b_features:
- Contract Pricing
- Quote Management
- Approval Workflows
- Reorder Capabilities
- Account Hierarchies
```
## 📊 Analytics Cloud (Tableau CRM) Data Model
### Core Objects
```yaml
analytics_objects:
Dataset:
purpose: 'Data storage for analytics'
types: [CSV, SFDC_Local, SFDC_Remote]
Lens:
purpose: 'Data exploration views'
features: [Filters, Groups, Measures]
Dashboard:
purpose: 'Visual analytics'
components: [Widgets, Filters, Layouts]
Dataflow:
purpose: 'ETL processes'
nodes: [Extract, Transform, Load]
```
### Einstein Analytics Features
```yaml
einstein_analytics:
- Smart Data Prep
- Auto-generated Insights
- Predictive Analytics
- What-If Analysis
- Natural Language Queries
- Conversational Analytics
```
## 🌐 Experience Cloud Data Model
### Core Components
```yaml
experience_cloud:
Network:
purpose: 'Community container'
fields: [Name, UrlPathPrefix, Status]
NetworkMember:
purpose: 'Community users'
relationships: [User, Contact, Account]
Topic:
purpose: 'Content categorization'
features: [Featured, Navigational]
FeedItem:
purpose: 'Community posts'
types: [TextPost, ContentPost, PollPost]
```
### Experience Features
```yaml
community_features:
- Custom Themes
- Page Variations
- Audience Targeting
- CMS Connect
- Knowledge Integration
- Case Deflection
- Peer-to-Peer Support
```
## 🔵 Platform & App Cloud Data Model
### Custom Object Framework
```yaml
custom_object_structure:
naming: 'ObjectName__c'
fields:
custom: 'FieldName__c'
standard: [CreatedBy, LastModifiedDate, OwnerId]
relationships:
lookup: 'RelatedObject__c'
master_detail: 'Parent__c'
junction: 'Object1__c + Object2__c'
```
### Platform Features
```yaml
platform_capabilities:
- Custom Objects
- Custom Apps
- Lightning Platform
- Apex Classes
- Visualforce Pages
- Lightning Web Components
- Platform Events
- Custom Metadata Types
```
## 🟢 Data Cloud Architecture (Summer '25)
### Unified Data Model
```yaml
data_cloud_objects:
Individual:
purpose: 'Unified person profile'
sources: [CRM, Marketing, Commerce, Service]
Unified_Event:
purpose: 'Cross-system events'
types: [Web, Mobile, Email, Transaction]
Calculated_Insight:
purpose: 'AI-derived metrics'
examples: [CLV, ChurnRisk, NextBestAction]
Segment:
purpose: 'Dynamic audiences'
activation: [Marketing, Sales, Service]
```
### Data Cloud Features
```yaml
native_capabilities:
- Zero-copy architecture
- Real-time streaming
- Identity resolution
- Calculated insights
- Audience activation
- Privacy compliance
- Data spaces
```
## 🔄 Cross-Cloud Integration Patterns
### Integration Architecture
```yaml
integration_patterns:
sales_to_service:
- Case creation from Opportunity
- Asset tracking from Orders
- Entitlement from Contracts
marketing_to_sales:
- Lead scoring synchronization
- Campaign influence tracking
- Engagement history
commerce_to_service:
- Order to Case automation
- Product registration
- Warranty tracking
platform_events:
- Real-time data synchronization
- Event-driven automation
- Microservices communication
```
### Best Practices for Cross-Cloud
1. **Data Governance**
- Single source of truth definition
- Master data management
- Duplicate prevention
- Data quality rules
2. **Integration Strategy**
- Use platform events for real-time
- Batch for large volume sync
- CDC for incremental updates
- APIs for on-demand access
3. **Performance Optimization**
- Selective field sync
- Archival strategies
- Caching patterns
- Async processing
## 📈 Data Volume Considerations
### Large Data Volume (LDV) Patterns
```yaml
ldv_strategies:
skinny_tables:
when: 'Frequent queries on few fields'
benefit: 'Faster query performance'
custom_indexes:
when: 'Specific query patterns'
benefit: 'Optimized data retrieval'
big_objects:
when: 'Historical data storage'
benefit: 'Cost-effective archival'
external_objects:
when: 'Data stays in external system'
benefit: 'Real-time access without storage'
```
### Performance Guidelines
```yaml
performance_thresholds:
standard_objects:
optimal: '< 5 million records'
careful: '5-10 million records'
architect: '> 10 million records'
custom_objects:
optimal: '< 2 million records'
careful: '2-5 million records'
architect: '> 5 million records'
```
## 🔐 Security Model by Cloud
### Access Control Patterns
```yaml
security_layers:
sales_cloud:
- Role hierarchy
- Sharing rules
- Team selling
- Territory management
service_cloud:
- Service territories
- Skill-based routing
- Article visibility
- Portal access
marketing_cloud:
- Business units
- User permissions
- Data extensions access
- Journey permissions
platform:
- Profiles
- Permission sets
- Custom permissions
- Apex sharing
```
_This guide provides cloud-specific data model knowledge for SF-Agent SF-Agent
Framework agents. Updated for Summer '25 release._