UNPKG

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
# 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._