mirror of
https://github.com/forcedotcom/afv-library.git
synced 2026-07-30 03:09:50 +08:00
96 lines
3.4 KiB
Markdown
96 lines
3.4 KiB
Markdown
|
|
# 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 <alias>`
|
||
|
|
- **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
|