# building-sf-integrations Creates comprehensive Salesforce integrations with 120-point scoring. Build secure Named Credentials, External Services, REST/SOAP callouts, Platform Events, and Change Data Capture patterns. ## Features - **Named Credentials**: OAuth 2.0, JWT Bearer, Certificate, API Key authentication patterns - **External Credentials**: Modern API 61+ credential architecture with Named Principals - **External Services**: Auto-generate Apex from OpenAPI/Swagger specs - **Callout Patterns**: Synchronous and asynchronous REST/SOAP implementations - **Event-Driven**: Platform Events and Change Data Capture subscribers - **120-Point Scoring**: Automated validation across 6 categories - **Automation Scripts**: Configure credentials without UI (ConnectApi) ## Quick Start ### 1. Invoke the skill ``` Skill: building-sf-integrations Request: "Create a Named Credential for Stripe API with OAuth" ``` ### 2. Answer requirements questions The skill will ask about: - Integration type (REST, SOAP, Event-driven) - Authentication method (OAuth, JWT, Certificate, API Key) - External system details (URL, rate limits) - Sync vs Async requirements ### 3. Deploy and configure ```bash # Deploy credential metadata sf project deploy start --metadata NamedCredential:StripeAPI --target-org MyOrg # Run automation script to set API key ./scripts/configure-named-credential.sh MyOrg ``` ## Scoring System (120 Points) | Category | Points | Focus | |----------|--------|-------| | Security | 30 | Named Credentials, no hardcoded secrets, OAuth scopes | | Error Handling | 25 | Retry logic, timeouts, specific exceptions | | Bulkification | 20 | Batch callouts, event batching | | Architecture | 20 | Async patterns, service separation | | Best Practices | 15 | Governor limits, idempotency | | Documentation | 10 | Clear intent, API versioning | **Thresholds**: ⭐⭐⭐⭐⭐ 90+ | ⭐⭐⭐⭐ 80-89 | ⭐⭐⭐ 70-79 | Block: <45% ## Helper Scripts Automate credential configuration without manual UI steps: | Script | Purpose | |--------|---------| | `configure-named-credential.sh` | Set API keys via ConnectApi (Enhanced NC) | | `set-api-credential.sh` | Store keys in Custom Settings (dev/test) | **Auto-run**: When you create credential files, Claude suggests running these scripts. ```bash # After deploying Named Credential metadata ./scripts/configure-named-credential.sh MyOrg # Enter API key when prompted (secure, hidden input) ``` ## Prerequisites - **Salesforce CLI v2+**: `sf` command - **Authenticated org**: `sf org login web -a ` - **API Version**: 62.0+ recommended for External Credentials ## Cross-Skill Integration | Skill | Integration | |-------|-------------| | configuring-connected-apps | Create OAuth Connected App for Named Credential | | generating-apex | Custom callout services beyond templates | | generating-flow | HTTP Callout Flow for Agentforce | | deploying-metadata | Deploy credentials and callout code | | developing-agentforce | Agent actions using External Services | ## Documentation - [SKILL.md](SKILL.md) - Complete skill reference - [references/named-credentials-automation.md](references/named-credentials-automation.md) - Script automation guide - [references/named-credentials-guide.md](references/named-credentials-guide.md) - Template reference - [references/callout-patterns.md](references/callout-patterns.md) - REST/SOAP patterns - [references/event-patterns.md](references/event-patterns.md) - Platform Events & CDC